From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: Re: [PATCH] drm/i915: Use SSE4.1 movntdqa to accelerate reads from WC memory Date: Mon, 18 Jul 2016 14:48:33 +0100 Message-ID: <578CDE31.8080302@intel.com> References: <20160718100111.GD21839@nuc-i3427.alporthouse.com> <1468836434-29107-1-git-send-email-chris@chris-wilson.co.uk> <578CBA54.40107@linux.intel.com> <20160718113501.GH21839@nuc-i3427.alporthouse.com> <578CC415.202@intel.com> <578CD214.8070703@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTP id E3F3C6E428 for ; Mon, 18 Jul 2016 13:48:36 +0000 (UTC) In-Reply-To: <578CD214.8070703@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: Tvrtko Ursulin , Chris Wilson , intel-gfx@lists.freedesktop.org, Akash Goel , Mika Kuoppala List-Id: intel-gfx@lists.freedesktop.org T24gMTgvMDcvMTYgMTM6NTYsIFR2cnRrbyBVcnN1bGluIHdyb3RlOgo+Cj4gT24gMTgvMDcvMTYg MTI6NTcsIERhdmUgR29yZG9uIHdyb3RlOgo+PiBPbiAxOC8wNy8xNiAxMjozNSwgQ2hyaXMgV2ls c29uIHdyb3RlOgo+Pj4gT24gTW9uLCBKdWwgMTgsIDIwMTYgYXQgMTI6MTU6MzJQTSArMDEwMCwg VHZydGtvIFVyc3VsaW4gd3JvdGU6Cj4+Pj4gSSBhbSBub3Qgc3VyZSBhYm91dCB0aGlzLCBidXQg bG9va2luZyBhdCB0aGUgcmFpZDYgZm9yIGV4YW1wbGUsIGl0Cj4+Pj4gaGFzIGEgbG90IG1vcmUg YW5ub3RhdGlvbnMgaW4gY2FzZXMgbGlrZSB0aGlzLgo+Pj4+Cj4+Pj4gSXQgc2VlbXMgdG8gYmUg dGVsbGluZyB0aGUgY29tcGlsZXIgd2hpY2ggbWVtb3J5IHJhbmdlcyBkb2VzIGVhY2gKPj4+PiBp bnN0cnVjdGlvbiBhY2Nlc3MsIGFuZCBhbHNvIHVzZXMgImFzbSB2b2xhdGlsZSIgLSB3aGV0aGVy IG9yIG5vdAo+Pj4+IHRoYXQgaXMgcmVhbGx5IG5lZWRlZCBJIGRvbid0IGtub3cuCj4+Pj4KPj4+ PiBGb3IgZXhhbXBsZToKPj4+PiAgICAgICAgICAgICAgICAgICBhc20gdm9sYXRpbGUoIm1vdmRx YSAlMCwlJXhtbTQiIDo6ICJtIiAoZHB0clt6MF1bZF0pKTsKPj4+Pgo+Pj4+IEFuZDoKPj4+PiAg ICAgICAgICAgICAgICAgICBhc20gdm9sYXRpbGUoIm1vdmRxYSAlJXhtbTQsJTAiIDogIj1tIiAo cVtkXSkpOwo+Pj4+Cj4+Pj4gRWFjaCBvbmUgaXMgdGVsbGluZyB0aGUgY29tcGlsZXIgdGhlIGlu c3RydWN0aW9uIGlzIGVpdGhlciByZWFkaW5nCj4+Pj4gb3Igd3JpdGluZyByZXNwZWN0aXZlbHkg ZnJvbSBhIGNlcnRhaW4gbWVtb3J5IGFkZHJlc3MuCj4+Pj4KPj4+PiBZb3UgZG9uJ3QgaGF2ZSBh bnkgb2YgdGhhdCwgYW5kIGRvbid0IGV2ZW4gc3BlY2lmeSBub3RoaW5nIGFzIGFuCj4+Pj4gb3V0 cHV0IHBhcmFtZXRlciBzbyBJIGFtIG5vdCBzdXJlIGlmIHlvdXIgY29kZSBpcyBzYWZlLgo+Pj4K Pj4+IFRoZSBhc20gaXMgY29ycmVjdC4gV2UgZG8gbm90IG1vZGlmeSBlaXRoZXIgb2YgdGhlIHR3 byBwb2ludGVycyB3aGljaCB3ZQo+Pj4gcGFzcyBpbiB2aWEgcmVnaXN0ZXIgaW5wdXRzLCBidXQg dGhlIG1lbW9yeSBiZWhpbmQgdGhlbSAtIGhlbmNlIHRoZQo+Pj4gbWVtb3J5Cj4+PiBjbG9iYmVy Lgo+Pgo+PiBUaGlzIGlzIGEgY2hvaWNlIG9mIGhvdyBtdWNoIHdlIGxldCB0aGUgY29tcGlsZXIg ZGVjaWRlIGFib3V0Cj4+IGFkZHJlc3NpbmcsIGFuZCBob3cgbXVjaCB3ZSB0ZWxsIGl0IGFib3V0 IHdoYXQgdGhlIGFzbSBjb2RlIHJlYWxseSBkb2VzLgo+PiBUaGUgZXhhbXBsZXMgYWJvdmUgZ2V0 IHRoZSBjb21waWxlciB0byBnZW5lcmF0ZSAqYW55KiBzdWl0YWJsZQo+PiBhZGRyZXNzaW5nIG1v ZGUgZm9yIGVhY2ggc3BlY2lmaWMgbG9jYXRpb24gaW52b2x2ZWQgaW4gdGhlIHRyYW5zZmVycywg c28KPj4gdGhlIGNvbXBpbGVyIGtub3dzIGEgbG90IGFib3V0IHdoYXQncyBoYXBwZW5pbmcgYW5k IGNhbiB0cmFjayB3aGVyZSBlYWNoCj4+IGRhdHVtIGNvbWVzIGZyb20gYW5kIGdvZXMgdG8uCj4+ Cj4+IE9UT0ggQ2hyaXMnIGNvZGUKPj4KPj4gKyAgICAgICAgYXNtKCJtb3ZudGRxYSAgICglMCks ICUleG1tMFxuIgo+PiArICAgICAgICAgICAgIm1vdm50ZHFhIDE2KCUwKSwgJSV4bW0xXG4iCj4+ ICsgICAgICAgICAgICAibW92bnRkcWEgMzIoJTApLCAlJXhtbTJcbiIKPj4gKyAgICAgICAgICAg ICJtb3ZudGRxYSA0OCglMCksICUleG1tM1xuIgo+PiArICAgICAgICAgICAgIm1vdmFwcyAlJXht bTAsICAgKCUxKVxuIgo+PiArICAgICAgICAgICAgIm1vdmFwcyAlJXhtbTEsIDE2KCUxKVxuIgo+ PiArICAgICAgICAgICAgIm1vdmFwcyAlJXhtbTIsIDMyKCUxKVxuIgo+PiArICAgICAgICAgICAg Im1vdmFwcyAlJXhtbTMsIDQ4KCUxKVxuIgo+PiArICAgICAgICAgICAgOjogInIiIChzcmMpLCAi ciIgKGRzdCkgOiAibWVtb3J5Iik7Cj4+Cj4+IC0gZG9lc24ndCBuZWVkICJ2b2xhdGlsZSIgYmVj YXVzZSBhc20gc3RhdGVtZW50cyB0aGF0IGhhdmUgbm8gb3V0cHV0Cj4+IG9wZXJhbmRzIGFyZSBp bXBsaWNpdGx5IHZvbGF0aWxlLgo+Pgo+PiAtIG1ha2VzIHRoZSBjb21waWxlciBnaXZlIHVzIHRo ZSBzb3VyY2UgYW5kIGRlc3RpbmF0aW9uICphZGRyZXNzZXMqIGluIGEKPj4gcmVnaXN0ZXIgZWFj aDsgYmV5b25kIHRoYXQsIGl0IGRvZXNuJ3Qga25vdyB3aGF0IHdlJ3JlIGRvaW5nIHdpdGggdGhl bSwKPj4gc28gdGhlIHRoaXJkICgiY2xvYmJlcnMiKSBwYXJhbWV0ZXIgaGFzIHRvIHNheSAibWVt b3J5IiBpLmUuIHRyZWF0ICphbGwqCj4+IG1lbW9yeSBjb250ZW50cyBhcyB1bmtub3duIGFmdGVy IHRoaXMuCj4+Cj4+IFtbRnJvbSBHQ0MgZG9jczogVGhlICJtZW1vcnkiIGNsb2JiZXIgdGVsbHMg dGhlIGNvbXBpbGVyIHRoYXQgdGhlCj4+IGFzc2VtYmx5IGNvZGUgcGVyZm9ybXMgbWVtb3J5IHJl YWRzIG9yIHdyaXRlcyB0byBpdGVtcyBvdGhlciB0aGFuIHRob3NlCj4+IGxpc3RlZCBpbiB0aGUg aW5wdXQgYW5kIG91dHB1dCBvcGVyYW5kcyAoZm9yIGV4YW1wbGUsIGFjY2Vzc2luZyB0aGUKPj4g bWVtb3J5IHBvaW50ZWQgdG8gYnkgb25lIG9mIHRoZSBpbnB1dCBwYXJhbWV0ZXJzKS4gVG8gZW5z dXJlIG1lbW9yeQo+PiBjb250YWlucyBjb3JyZWN0IHZhbHVlcywgR0NDIG1heSBuZWVkIHRvIGZs dXNoIHNwZWNpZmljIHJlZ2lzdGVyIHZhbHVlcwo+PiB0byBtZW1vcnkgYmVmb3JlIGV4ZWN1dGlu ZyB0aGUgYXNtLiBGdXJ0aGVyLCB0aGUgY29tcGlsZXIgZG9lcyBub3QKPj4gYXNzdW1lIHRoYXQg YW55IHZhbHVlcyByZWFkIGZyb20gbWVtb3J5IGJlZm9yZSBhbiBhc20gcmVtYWluIHVuY2hhbmdl ZAo+PiBhZnRlciB0aGF0IGFzbTsgaXQgcmVsb2FkcyB0aGVtIGFzIG5lZWRlZC4gVXNpbmcgdGhl ICJtZW1vcnkiIGNsb2JiZXIKPj4gZWZmZWN0aXZlbHkgZm9ybXMgYSByZWFkL3dyaXRlIG1lbW9y eSBiYXJyaWVyIGZvciB0aGUgY29tcGlsZXIuXV0KPj4KPj4gQlRXLCBzaG91bGQgd2Ugbm90IHRl bGwgaXQgd2UndmUgKmFsc28qIGNsb2JiZXJlZCAleG1tWzAtM10/Cj4+Cj4+IFNvIHRoZXkncmUg Ym90aCBjb3JyZWN0LCBqdXN0IHRha2luZyBkaWZmZXJlbnQgYXBwcm9hY2hlcy4gSSBkb24ndCBr bm93Cj4+IHdoaWNoIHdvdWxkIGdpdmUgdGhlIGJlc3QgcGVyZm9ybWFuY2UgZm9yIHRoaXMgc3Bl Y2lmaWMgY2FzZS4KPgo+IENvb2wsIGxlYXJuIHNvbWV0aGluZyBuZXcgZXZlcnkgZGF5LiA6KQo+ Cj4gSSd2ZSB0cmllZCB3cml0aW5nIGl0IGFzOgo+Cj4gc3RydWN0IHF3MiB7Cj4gCXU2NAlxWzJd Owo+IH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7Cj4KPiBzdGF0aWMgdm9pZCBfX21lbWNweV9u dGRxYShzdHJ1Y3QgcXcyICpkc3QsIGNvbnN0IHN0cnVjdCBxdzIgKnNyYywgdW5zaWduZWQgbG9u ZyBsZW4pCj4gewo+IAlrZXJuZWxfZnB1X2JlZ2luKCk7Cj4KPiAJbGVuID4+PSA0Owo+IAl3aGls ZSAobGVuID49IDQpIHsKPiAJCWFzbSgibW92bnRkcWEgICAoJTApLCAlJXhtbTAiIDo6ICJyIiAo c3JjKSwgIm0iIChzcmNbMF0pKTsKPiAJCWFzbSgibW92bnRkcWEgMTYoJTApLCAlJXhtbTEiIDo6 ICJyIiAoc3JjKSwgIm0iIChzcmNbMV0pKTsKCkNvdWxkbid0IHRoaXMgYmUganVzdDoKCQlhc20o Im1vdm50ZHFhICUxLCAlJXhtbTEiIDo6ICJyIiAoc3JjKSwgIm0iIChzcmNbMV0pKTsKdGh1cyBs ZXR0aW5nIHRoZSBjb21waWxlciBzdXBwbHkgdGhlIG9mZnNldD8KCkRvZXMgdGhlIGNvbXBpbGVy IGtub3cgYWJvdXQgJXhtbSogcmVnaXN0ZXJzPyBJZiBzbyB5b3UgY291bGQgbWF5YmUgZ2V0IApp dCB0byBjaG9vc2Ugd2hpY2ggdG8gdXNlIGluIGVhY2ggaW5zdHJ1Y3Rpb24sIG9yIHNob3VsZCBh dCBsZWFzdCB0ZWxsIAppdCB3aGljaCBvbmVzIGFyZSBiZWluZyBjbG9iYmVyZWQuCgo+IAkJYXNt KCJtb3ZudGRxYSAzMiglMCksICUleG1tMiIgOjogInIiIChzcmMpLCAibSIgKHNyY1syXSkpOwo+ IAkJYXNtKCJtb3ZudGRxYSA0OCglMCksICUleG1tMyIgOjogInIiIChzcmMpLCAibSIgKHNyY1sz XSkpOwo+IAkJYXNtKCJtb3ZhcHMgJSV4bW0wLCAgICglMSkiIDogIj1tIiAoZHN0WzBdKSA6ICJy IiAoZHN0KSk7Cj4gCQlhc20oIm1vdmFwcyAlJXhtbTEsIDE2KCUxKSIgOiAiPW0iIChkc3RbMV0p IDogInIiIChkc3QpKTsKPiAJCWFzbSgibW92YXBzICUleG1tMiwgMzIoJTEpIiA6ICI9bSIgKGRz dFsyXSkgOiAiciIgKGRzdCkpOwo+IAkJYXNtKCJtb3ZhcHMgJSV4bW0zLCA0OCglMSkiIDogIj1t IiAoZHN0WzNdKSA6ICJyIiAoZHN0KSk7Cj4gCQlzcmMgKz0gNDsKPiAJCWRzdCArPSA0Owo+IAkJ bGVuIC09IDQ7Cj4gCX0KPiAJd2hpbGUgKGxlbi0tKSB7Cj4gCQlhc20oIm1vdm50ZHFhICglMCks ICUleG1tMCIgOjogInIiIChzcmMpLCAibSIgKHNyY1swXSkpOwo+IAkJYXNtKCJtb3ZhcHMgJSV4 bW0wLCAoJTEpIiA6ICI9bSIgKGRzdFswXSkgOiAiciIgKGRzdCkpOwo+IAkJc3JjKys7Cj4gCQlk c3QrKzsKPiAJfQo+Cj4gCWtlcm5lbF9mcHVfZW5kKCk7Cj4gfQo+Cj4gVGhhdCBhcHBlYXJzIHRv IGFsbG93IEdDQyB0byBpbnRlcmxlYXZlIFNTRSBhbmQgbm9ybWFsIGluc3RydWN0aW9ucywKPiBw cmVzdW1hYmx5IHRoYXQgbWVhbnMgaXQgaXMgdHJ5aW5nIHRvIHV0aWxpemUgdGhlIGV4ZWN1dGlv biB1bml0cyBiZXR0ZXI/Cj4KPiBJIHdvbmRlciBpZiBpdCBtYWtlcyBhIGRpZmZlcmVuY2UgaW4g c3BlZWQ/Cj4KPiBPbGQgY29kZSBtYWluIGxvb3AgYXNzZW1ibHkgbG9va3MgbGlrZToKPgo+ICAg IDU4OiAgIDY2IDBmIDM4IDJhIDAwICAgICAgICAgIG1vdm50ZHFhICglcmF4KSwleG1tMAo+ICAg IDVkOiAgIDY2IDBmIDM4IDJhIDQ4IDEwICAgICAgIG1vdm50ZHFhIDB4MTAoJXJheCksJXhtbTEK PiAgICA2MzogICA2NiAwZiAzOCAyYSA1MCAyMCAgICAgICBtb3ZudGRxYSAweDIwKCVyYXgpLCV4 bW0yCj4gICAgNjk6ICAgNjYgMGYgMzggMmEgNTggMzAgICAgICAgbW92bnRkcWEgMHgzMCglcmF4 KSwleG1tMwo+ICAgIDZmOiAgIDBmIDI5IDAxICAgICAgICAgICAgICAgIG1vdmFwcyAleG1tMCwo JXJjeCkKPiAgICA3MjogICAwZiAyOSA0OSAxMCAgICAgICAgICAgICBtb3ZhcHMgJXhtbTEsMHgx MCglcmN4KQo+ICAgIDc2OiAgIDBmIDI5IDUxIDIwICAgICAgICAgICAgIG1vdmFwcyAleG1tMiww eDIwKCVyY3gpCj4gICAgN2E6ICAgMGYgMjkgNTkgMzAgICAgICAgICAgICAgbW92YXBzICV4bW0z LDB4MzAoJXJjeCkKPiAgICA3ZTogICA0OSA4MyBlOCAwNCAgICAgICAgICAgICBzdWIgICAgJDB4 NCwlcjgKPiAgICA4MjogICA0OCA4MyBjMCA0MCAgICAgICAgICAgICBhZGQgICAgJDB4NDAsJXJh eAo+ICAgIDg2OiAgIDQ4IDgzIGMxIDQwICAgICAgICAgICAgIGFkZCAgICAkMHg0MCwlcmN4Cj4g ICAgOGE6ICAgNDkgODMgZjggMDMgICAgICAgICAgICAgY21wICAgICQweDMsJXI4Cj4gICAgOGU6 ICAgNzcgYzggICAgICAgICAgICAgICAgICAgamEgICAgIDU4IDxpOTE1X21lbWNweV9mcm9tX3dj KzB4NTg+Cj4KPiBXaGlsZSB0aGUgYWJvdmUgdmVyc2lvbiBnZW5lcmF0ZXM6Cj4KPiAgICA1ODog ICA2NiAwZiAzOCAyYSAwMCAgICAgICAgICBtb3ZudGRxYSAoJXJheCksJXhtbTAKPiAgICA1ZDog ICA2NiAwZiAzOCAyYSA0OCAxMCAgICAgICBtb3ZudGRxYSAweDEwKCVyYXgpLCV4bW0xCj4gICAg NjM6ICAgNjYgMGYgMzggMmEgNTAgMjAgICAgICAgbW92bnRkcWEgMHgyMCglcmF4KSwleG1tMgo+ ICAgIDY5OiAgIDY2IDBmIDM4IDJhIDU4IDMwICAgICAgIG1vdm50ZHFhIDB4MzAoJXJheCksJXht bTMKPiAgICA2ZjogICA0OSA4MyBlOCAwNCAgICAgICAgICAgICBzdWIgICAgJDB4NCwlcjgKPiAg ICA3MzogICA0OCA4MyBjMCA0MCAgICAgICAgICAgICBhZGQgICAgJDB4NDAsJXJheAo+ICAgIDc3 OiAgIDBmIDI5IDAxICAgICAgICAgICAgICAgIG1vdmFwcyAleG1tMCwoJXJjeCkKPiAgICA3YTog ICAwZiAyOSA0OSAxMCAgICAgICAgICAgICBtb3ZhcHMgJXhtbTEsMHgxMCglcmN4KQo+ICAgIDdl OiAgIDBmIDI5IDUxIDIwICAgICAgICAgICAgIG1vdmFwcyAleG1tMiwweDIwKCVyY3gpCj4gICAg ODI6ICAgMGYgMjkgNTkgMzAgICAgICAgICAgICAgbW92YXBzICV4bW0zLDB4MzAoJXJjeCkKPiAg ICA4NjogICA0OCA4MyBjMSA0MCAgICAgICAgICAgICBhZGQgICAgJDB4NDAsJXJjeAo+ICAgIDhh OiAgIDQ5IDgzIGY4IDAzICAgICAgICAgICAgIGNtcCAgICAkMHgzLCVyOAo+ICAgIDhlOiAgIDc3 IGM4ICAgICAgICAgICAgICAgICAgIGphICAgICA1OCA8aTkxNV9tZW1jcHlfZnJvbV93YysweDU4 PgoKUGVyaGFwcyBtYXJnaW5hbGx5IGJldHRlciBhcyBpdCBzZXBhcmF0ZXMgdGhlIGxvYWQgYW5k IHN0b3JlIG1vcmUsIGJ1dCBJIApkb24ndCB0aGluayBhIGNvdXBsZSBvZiBpbnRlZ2VyIG9wZXJh dGlvbnMgb24gcmVnaXN0ZXJzIGFyZSBhY3R1YWxseSAKZ29pbmcgdG8gbWFrZSBhbnkgZGlmZmVy ZW5jZS4KCj4gSW50ZXJlc3RpbmdseSwgaW4gYm90aCBjYXNlcyBHQ0MgZG9lcyBzb21lIGluIG15 IG1pbmQgZnV0aWxlCj4gc2h1ZmZsaW5nIGFyb3VuZyBiZXR3ZWVuIHRoZSB0d28gbG9vcHMuIElu c3RlYWQgb2YganVzdAo+IGNhcnJ5aW5nIG9uIHdpdGggc3JjIGFuZCBkc3QgYW5kIGxlbiBob3cg dGhleSBhcmUsIGl0IGdvZXMKPiB0byB1c2UgYSBkaWZmZXJlbnQgcmVnaXN0ZXIgc2V0IGZvciB0 aGUgc2Vjb25kIGxvb3A6Cj4KPiBTbyB0aGlzIHJlc2h1ZmZsaW5nOgo+Cj4gICAgOTA6ICAgNDgg OGQgNDIgZmMgICAgICAgICAgICAgbGVhICAgIC0weDQoJXJkeCksJXJheAo+ICAgIDk0OiAgIDgz IGUyIDAzICAgICAgICAgICAgICAgIGFuZCAgICAkMHgzLCVlZHgKPiAgICA5NzogICA0OCBjMSBl OCAwMiAgICAgICAgICAgICBzaHIgICAgJDB4MiwlcmF4Cj4gICAgOWI6ICAgNDggODMgYzAgMDEg ICAgICAgICAgICAgYWRkICAgICQweDEsJXJheAo+ICAgIDlmOiAgIDQ4IGMxIGUwIDA2ICAgICAg ICAgICAgIHNobCAgICAkMHg2LCVyYXgKPiAgICBhMzogICA0OCAwMSBjNiAgICAgICAgICAgICAg ICBhZGQgICAgJXJheCwlcnNpCj4gICAgYTY6ICAgNDggMDEgYzcgICAgICAgICAgICAgICAgYWRk ICAgICVyYXgsJXJkaQo+ICAgIGE5OiAgIDQ4IDhkIDQyIGZmICAgICAgICAgICAgIGxlYSAgICAt MHgxKCVyZHgpLCVyYXgKPiAgICBhZDogICA0OCA4NSBkMiAgICAgICAgICAgICAgICB0ZXN0ICAg JXJkeCwlcmR4Cj4gICAgYjA6ICAgNzQgMWEgICAgICAgICAgICAgICAgICAgamUgICAgIGNjIDxp OTE1X21lbWNweV9mcm9tX3djKzB4Y2M+CgpTdHJhbmdlIC4uLiBtb3JlIGludmVzdGlnYXRpb24g cmVxdWlyZWQhCgouRGF2ZS4KCj4gQW5kIHRoZW4gdGhlIHNlY29uZCBsb29wOgo+Cj4gICAgYjI6 ICAgNjYgMGYgMzggMmEgMDYgICAgICAgICAgbW92bnRkcWEgKCVyc2kpLCV4bW0wCj4gICAgYjc6 ICAgNDggODMgZTggMDEgICAgICAgICAgICAgc3ViICAgICQweDEsJXJheAo+ICAgIGJiOiAgIDQ4 IDgzIGM2IDEwICAgICAgICAgICAgIGFkZCAgICAkMHgxMCwlcnNpCj4gICAgYmY6ICAgMGYgMjkg MDcgICAgICAgICAgICAgICAgbW92YXBzICV4bW0wLCglcmRpKQo+ICAgIGMyOiAgIDQ4IDgzIGM3 IDEwICAgICAgICAgICAgIGFkZCAgICAkMHgxMCwlcmRpCj4gICAgYzY6ICAgNDggODMgZjggZmYg ICAgICAgICAgICAgY21wICAgICQweGZmZmZmZmZmZmZmZmZmZmYsJXJheAo+ICAgIGNhOiAgIDc1 IGU2ICAgICAgICAgICAgICAgICAgIGpuZSAgICBiMiA8aTkxNV9tZW1jcHlfZnJvbV93YysweGIy Pgo+Cj4gQW55IHRob3VnaHRzIG9uIHRoaXM/Cj4KPiBSZWdhcmRzLAo+IFR2cnRrbwoKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWls aW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=