From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 2/2] tests/kms_fbc_crc: Fill entire target framebuffer to adds crc FIXMES Date: Thu, 26 Mar 2015 09:35:10 +0200 Message-ID: <20150326073509.GI17419@intel.com> References: <1427314535-15329-1-git-send-email-daniel.vetter@ffwll.ch> <1427314535-15329-2-git-send-email-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 9B26E6E3E5 for ; Thu, 26 Mar 2015 00:35:14 -0700 (PDT) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Paulo Zanoni Cc: Daniel Vetter , Intel Graphics Development List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBNYXIgMjUsIDIwMTUgYXQgMDY6NDc6MjFQTSAtMDMwMCwgUGF1bG8gWmFub25pIHdy b3RlOgo+IDIwMTUtMDMtMjUgMTc6MTUgR01ULTAzOjAwIERhbmllbCBWZXR0ZXIgPGRhbmllbC52 ZXR0ZXJAZmZ3bGwuY2g+Ogo+ID4gQW5kIHVzZSB0aGUgc2FtZSBjb2xvcnMgZm9yIGJvdGggZmxp cCBhbmQgZmlsbHMgc28gdGhhdCB3ZSBjYW4gcmV1c2UKPiA+IGNyY3MuIFNvbWUgZGV0YWlsczoK PiA+IC0gRm9yIHRoZSBmbGlwX2FuZF9mb28gdGVzdHMgZmxpcCB0d2ljZSBzbyB0aGF0IHdlIGFn YWluIHN0YXJ0IHdpdGgKPiA+ICAgdGhlIGJsYWNrIGZyYW1lYnVmZmVyIGFuZCBoZW5jZSBoYXZl IGEgcmVhbCBjaGFuZ2Ugd2hlbiBwYWludGluZyBpdAo+ID4gICB3aGl0ZS4KPiAKPiBCdXQgeW91 IGRvbid0IHJlYWxseSBjaGVjayB0aGUgQ1JDIGFmdGVyIHRoZSBmaXJzdCBmbGlwLCBzbyBpZiBp dCdzCj4gY29tcGxldGVseSBpZ25vcmVkIGJ5IHRoZSBkaXNwbGF5IGVuZ2luZSwgd2Ugd29uJ3Qg a25vdy4gVGhhdCBzdGlsbAo+IGxvb2tzIGxpa2UgYSByZWdyZXNzaW9uIGZyb20gdGhlIHByZXZp b3VzIGNvZGUgd2UgaGFkLgo+IAo+ID4gLSBUaGUgdXBsb2FkIGZvciB0aGUgcmVuZGVyY29weSBz b3VyY2UgaXNuJ3QgZmFzdCwgYnV0IGhleSBJJ20gbGF6eS4KPiAKPiBZb3UncmUgYWxzbyBjaGFu Z2luZyBldmVyeXRoaW5nIGZvcm0gc2luZ2xlLXBpeGVsIHdyaXRlIHRvIGZ1bGwtZmIKPiB3cml0 ZSwgd2hpY2ggaXMgbm90IG5lY2Vzc2FyaWx5IGEgYmFkIHRoaW5nIChhbHRob3VnaCBzbG93ZXIp LCBidXQKPiBjb3VsZCBhdCBsZWFzdCBiZSBvbiB0aGUgY2hhbmdlbG9nLgoKVGhlIHJlYXNvbiBJ IHJpZ2luYWxseSB1c2VkIHZlcnkgc21hbGwgb3BlcmF0aW9ucyB3YXMgdG8gbWFrZSBzdXJlIHRo ZQpoYXJkd2FyZSBjYXRjaGVzIHByZWNpY2VzbHkgc3VjaCBzbWFsbCBvcGVyYXRpb25zLiBJZiB3 ZSBqdXN0IGJsYXN0CmF3YXkgdGhlIGVudGlyZSB0aGluZyB3ZSBjYW4ndCB0ZWxsIGlmIHRoZSBo YXJkd2FyZSB3b3VsZCBldmVuIG5vdGljZQphIHNtYWxsIGNoYW5nZS4gQWx0aG91Z2ggc2luY2Ug aGFyZHdhcmUgdHJhY2tpbmcgd2FzIGRlY2xhcmVkIHRvIGJlCnRoZSBldmlsIHRoYXQgbWF5IG5v dCBtYXR0ZXIgc28gbXVjaCwgZXhjZXB0IHBlb3BsZSBzdGlsbCB3YW50IHRvIHVzZQp0aGUgR1RU IHRyYWNraW5nIGZvciBzb21lIHJlYXNvbi4KCj4gUm9kcmlnbyBzZW50IGEgcGF0Y2ggYSB3aGls ZSBhZ28KPiB0byB0cmFuc2Zvcm0gdGhlc2UgaW50byB2aXNpYmxlIHJlY3RhbmdsZXMgYW5kIGFk ZAo+IGlndF9kZWJ1Z193YWl0X2Zvcl9rZXlwcmVzcygpLiBJIGFsc28gaGF2ZSBpbiBteSBwbGFu cyB0byBhZGQgYSBzbWFsbAo+IGxpYnJhcnkgZm9yIHRoZXNlIGRyYXcgb3BlcmF0aW9ucywgc28g d2UgZG9uJ3QgbmVlZCB0byByZWltcGxlbWVudAo+ICJ3cml0ZSBhIGNvbG9yZWQgcmVjdGFuZ2xl IHVzaW5nIGJsdC9yZW5kZXIvbW1hcC9ldGMiIGluIGV2ZXJ5IHRlc3QuCj4gSSdsbCBzZW5kIHNv bWUgcGF0Y2hlcyBmb3IgeW91IHRvIHRha2UgYSBsb29rLgo+IAo+ID4KPiA+IFNpZ25lZC1vZmYt Ynk6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+Cj4gPiAtLS0KPiA+ICB0 ZXN0cy9rbXNfZmJjX2NyYy5jIHwgNTIgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQo+ID4gIDEgZmlsZSBjaGFuZ2VkLCAyNyBpbnNlcnRpb25zKCsp LCAyNSBkZWxldGlvbnMoLSkKPiA+Cj4gPiBkaWZmIC0tZ2l0IGEvdGVzdHMva21zX2ZiY19jcmMu YyBiL3Rlc3RzL2ttc19mYmNfY3JjLmMKPiA+IGluZGV4IDQyNTZmZWRlMGZiNS4uMzE0Zjk0ZDg3 OWQ0IDEwMDY0NAo+ID4gLS0tIGEvdGVzdHMva21zX2ZiY19jcmMuYwo+ID4gKysrIGIvdGVzdHMv a21zX2ZiY19jcmMuYwo+ID4gQEAgLTkxLDcgKzkxLDcgQEAgc3RhdGljIGNvbnN0IGNoYXIgKnRl c3RfbW9kZV9zdHIoZW51bSB0ZXN0X21vZGUgbW9kZSkKPiA+ICBzdGF0aWMgdm9pZCBmaWxsX2Js dChkYXRhX3QgKmRhdGEsCj4gPiAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBoYW5kbGUs Cj4gPiAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgaWd0X2ZiICpmYiwKPiA+IC0gICAgICAg ICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgY29sb3IpCj4gPiArICAgICAgICAgICAgICAgICAg ICB1aW50MzJfdCBjb2xvcikKPiA+ICB7Cj4gPiAgICAgICAgIGRybV9pbnRlbF9ibyAqZHN0ID0g Z2VtX2hhbmRsZV90b19saWJkcm1fYm8oZGF0YS0+YnVmbWdyLAo+ID4gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtPmRybV9mZCwKPiA+IEBA IC0xMjUsMTIgKzEyNSwxMyBAQCBzdGF0aWMgdm9pZCBmaWxsX2JsdChkYXRhX3QgKmRhdGEsCj4g PiAgICAgICAgIGdlbV9ib19idXN5KGRhdGEtPmRybV9mZCwgaGFuZGxlKTsKPiA+ICB9Cj4gPgo+ ID4gLXN0YXRpYyB2b2lkIHNjcmF0Y2hfYnVmX2luaXQoc3RydWN0IGlndF9idWYgKmJ1ZiwgZHJt X2ludGVsX2JvICpibykKPiA+ICtzdGF0aWMgdm9pZCBzY3JhdGNoX2J1Zl9pbml0KHN0cnVjdCBp Z3RfYnVmICpidWYsIGRybV9pbnRlbF9ibyAqYm8sCj4gPiArICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHN0cnVjdCBpZ3RfZmIgKmZiKQo+ID4gIHsKPiA+ICAgICAgICAgYnVmLT5ibyA9IGJv Owo+ID4gLSAgICAgICBidWYtPnN0cmlkZSA9IDQwOTY7Cj4gPiArICAgICAgIGJ1Zi0+c3RyaWRl ID0gZmItPnN0cmlkZTsKPiA+ICAgICAgICAgYnVmLT50aWxpbmcgPSBJOTE1X1RJTElOR19YOwo+ ID4gLSAgICAgICBidWYtPnNpemUgPSA0MDk2Owo+ID4gKyAgICAgICBidWYtPnNpemUgPSBmYi0+ c2l6ZTsKPiA+ICB9Cj4gPgo+ID4gIHN0YXRpYyB2b2lkIGV4ZWNfbm9wKGRhdGFfdCAqZGF0YSwg dWludDMyX3QgaGFuZGxlLCBkcm1faW50ZWxfY29udGV4dCAqY29udGV4dCkKPiA+IEBAIC0xNzAs MTkgKzE3MSwyMSBAQCBzdGF0aWMgdm9pZCBmaWxsX3JlbmRlcihkYXRhX3QgKmRhdGEsIHVpbnQz Ml90IGhhbmRsZSwKPiA+ICAgICAgICAgZHN0ID0gZ2VtX2hhbmRsZV90b19saWJkcm1fYm8oZGF0 YS0+YnVmbWdyLCBkYXRhLT5kcm1fZmQsICIiLCBoYW5kbGUpOwo+ID4gICAgICAgICBpZ3RfYXNz ZXJ0KGRzdCk7Cj4gPgo+ID4gLSAgICAgICBzcmMgPSBkcm1faW50ZWxfYm9fYWxsb2MoZGF0YS0+ YnVmbWdyLCAiIiwgNDA5NiwgNDA5Nik7Cj4gPiArICAgICAgIHNyYyA9IGRybV9pbnRlbF9ib19h bGxvYyhkYXRhLT5idWZtZ3IsICIiLCBkYXRhLT5mYlswXS5zaXplLCA0MDk2KTsKPiA+ICAgICAg ICAgaWd0X2Fzc2VydChzcmMpOwo+ID4KPiA+IC0gICAgICAgZ2VtX3dyaXRlKGRhdGEtPmRybV9m ZCwgc3JjLT5oYW5kbGUsIDAsIGJ1ZiwgNCk7Cj4gPiArICAgICAgIGZvciAoaW50IGkgPSAwOyBp IDwgZGF0YS0+ZmJbMF0uc2l6ZS80OyBpKyspCj4gPiArICAgICAgICAgICAgICAgZ2VtX3dyaXRl KGRhdGEtPmRybV9mZCwgc3JjLT5oYW5kbGUsIGkqNCwgYnVmLCA0KTsKPiA+Cj4gPiAtICAgICAg IHNjcmF0Y2hfYnVmX2luaXQoJnNyY19idWYsIHNyYyk7Cj4gPiAtICAgICAgIHNjcmF0Y2hfYnVm X2luaXQoJmRzdF9idWYsIGRzdCk7Cj4gPiArICAgICAgIHNjcmF0Y2hfYnVmX2luaXQoJnNyY19i dWYsIHNyYywgZGF0YS0+ZmIpOwo+ID4gKyAgICAgICBzY3JhdGNoX2J1Zl9pbml0KCZkc3RfYnVm LCBkc3QsIGRhdGEtPmZiKTsKPiA+Cj4gPiAgICAgICAgIGJhdGNoID0gaW50ZWxfYmF0Y2hidWZm ZXJfYWxsb2MoZGF0YS0+YnVmbWdyLCBkYXRhLT5kZXZpZCk7Cj4gPiAgICAgICAgIGlndF9hc3Nl cnQoYmF0Y2gpOwo+ID4KPiA+ICAgICAgICAgcmVuZGVyY29weShiYXRjaCwgY29udGV4dCwKPiA+ IC0gICAgICAgICAgICAgICAgICAmc3JjX2J1ZiwgMCwgMCwgMSwgMSwKPiA+ICsgICAgICAgICAg ICAgICAgICAmc3JjX2J1ZiwgMCwgMCwKPiA+ICsgICAgICAgICAgICAgICAgICBkYXRhLT5mYlsw XS53aWR0aCwgZGF0YS0+ZmJbMF0uaGVpZ2h0LAo+ID4gICAgICAgICAgICAgICAgICAgICZkc3Rf YnVmLCAwLCAwKTsKPiA+Cj4gPiAgICAgICAgIGludGVsX2JhdGNoYnVmZmVyX2ZyZWUoYmF0Y2gp Owo+ID4gQEAgLTIxMywxMiArMjE2LDE3IEBAIHN0YXRpYyB2b2lkIHRlc3RfY3JjKGRhdGFfdCAq ZGF0YSwgZW51bSB0ZXN0X21vZGUgbW9kZSkKPiA+ICAgICAgICAgaWd0X2Fzc2VydChmYmNfZW5h YmxlZChkYXRhKSk7Cj4gPgo+ID4gICAgICAgICBpZiAobW9kZSA+PSBURVNUX1BBR0VfRkxJUF9B TkRfTU1BUF9DUFUpIHsKPiA+IC0gICAgICAgICAgICAgICBoYW5kbGUgPSBkYXRhLT5oYW5kbGVb MV07Cj4gPiAgICAgICAgICAgICAgICAgaWd0X2Fzc2VydChkcm1Nb2RlUGFnZUZsaXAoZGF0YS0+ ZHJtX2ZkLCBjcnRjX2lkLAo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGRhdGEtPmZiX2lkWzFdLCAwLCBOVUxMKSA9PSAwKTsKPiA+ICAgICAgICAgICAgICAg ICB1c2xlZXAoMzAwMDAwKTsKPiA+Cj4gPiAgICAgICAgICAgICAgICAgaWd0X2Fzc2VydChmYmNf ZW5hYmxlZChkYXRhKSk7Cj4gPiArCj4gPiArICAgICAgICAgICAgICAgaWd0X2Fzc2VydChkcm1N b2RlUGFnZUZsaXAoZGF0YS0+ZHJtX2ZkLCBjcnRjX2lkLAo+ID4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtPmZiX2lkWzBdLCAwLCBOVUxMKSA9PSAwKTsK PiA+ICsgICAgICAgICAgICAgICB1c2xlZXAoMzAwMDAwKTsKPiA+ICsKPiA+ICsgICAgICAgICAg ICAgICBpZ3RfYXNzZXJ0KGZiY19lbmFibGVkKGRhdGEpKTsKPiA+ICAgICAgICAgfQo+ID4KPiA+ ICAgICAgICAgc3dpdGNoIChtb2RlKSB7Cj4gPiBAQCAtMjI5LDE4ICsyMzcsMTggQEAgc3RhdGlj IHZvaWQgdGVzdF9jcmMoZGF0YV90ICpkYXRhLCBlbnVtIHRlc3RfbW9kZSBtb2RlKQo+ID4gICAg ICAgICAgICAgICAgIGJyZWFrOwo+ID4gICAgICAgICBjYXNlIFRFU1RfTU1BUF9DUFU6Cj4gPiAg ICAgICAgIGNhc2UgVEVTVF9QQUdFX0ZMSVBfQU5EX01NQVBfQ1BVOgo+ID4gLSAgICAgICAgICAg ICAgIHB0ciA9IGdlbV9tbWFwX19jcHUoZGF0YS0+ZHJtX2ZkLCBoYW5kbGUsIDAsIDQwOTYsIFBS T1RfV1JJVEUpOwo+ID4gKyAgICAgICAgICAgICAgIHB0ciA9IGdlbV9tbWFwX19jcHUoZGF0YS0+ ZHJtX2ZkLCBoYW5kbGUsIDAsIGRhdGEtPmZiWzBdLnNpemUsIFBST1RfV1JJVEUpOwo+ID4gICAg ICAgICAgICAgICAgIGdlbV9zZXRfZG9tYWluKGRhdGEtPmRybV9mZCwgaGFuZGxlLCBJOTE1X0dF TV9ET01BSU5fQ1BVLCBJOTE1X0dFTV9ET01BSU5fQ1BVKTsKPiA+IC0gICAgICAgICAgICAgICBt ZW1zZXQocHRyLCAweGZmLCA0KTsKPiA+IC0gICAgICAgICAgICAgICBtdW5tYXAocHRyLCA0MDk2 KTsKPiA+ICsgICAgICAgICAgICAgICBtZW1zZXQocHRyLCAweGZmLCBkYXRhLT5mYlswXS5zaXpl KTsKPiA+ICsgICAgICAgICAgICAgICBtdW5tYXAocHRyLCBkYXRhLT5mYlswXS5zaXplKTsKPiA+ ICAgICAgICAgICAgICAgICBnZW1fc3dfZmluaXNoKGRhdGEtPmRybV9mZCwgaGFuZGxlKTsKPiA+ ICAgICAgICAgICAgICAgICBicmVhazsKPiA+ICAgICAgICAgY2FzZSBURVNUX01NQVBfR1RUOgo+ ID4gICAgICAgICBjYXNlIFRFU1RfUEFHRV9GTElQX0FORF9NTUFQX0dUVDoKPiA+IC0gICAgICAg ICAgICAgICBwdHIgPSBnZW1fbW1hcF9fZ3R0KGRhdGEtPmRybV9mZCwgaGFuZGxlLCA0MDk2LCBQ Uk9UX1dSSVRFKTsKPiA+ICsgICAgICAgICAgICAgICBwdHIgPSBnZW1fbW1hcF9fZ3R0KGRhdGEt PmRybV9mZCwgaGFuZGxlLCBkYXRhLT5mYlswXS5zaXplLCBQUk9UX1dSSVRFKTsKPiA+ICAgICAg ICAgICAgICAgICBnZW1fc2V0X2RvbWFpbihkYXRhLT5kcm1fZmQsIGhhbmRsZSwgSTkxNV9HRU1f RE9NQUlOX0dUVCwgSTkxNV9HRU1fRE9NQUlOX0dUVCk7Cj4gPiAtICAgICAgICAgICAgICAgbWVt c2V0KHB0ciwgMHhmZiwgNCk7Cj4gPiAtICAgICAgICAgICAgICAgbXVubWFwKHB0ciwgNDA5Nik7 Cj4gPiArICAgICAgICAgICAgICAgbWVtc2V0KHB0ciwgMHhmZiwgZGF0YS0+ZmJbMF0uc2l6ZSk7 Cj4gPiArICAgICAgICAgICAgICAgbXVubWFwKHB0ciwgZGF0YS0+ZmJbMF0uc2l6ZSk7Cj4gPiAg ICAgICAgICAgICAgICAgYnJlYWs7Cj4gPiAgICAgICAgIGNhc2UgVEVTVF9CTFQ6Cj4gPiAgICAg ICAgIGNhc2UgVEVTVF9QQUdFX0ZMSVBfQU5EX0JMVDoKPiA+IEBAIC0yNjcsMTAgKzI3NSw3IEBA IHN0YXRpYyB2b2lkIHRlc3RfY3JjKGRhdGFfdCAqZGF0YSwgZW51bSB0ZXN0X21vZGUgbW9kZSkK PiA+ICAgICAgICAgaWd0X3BpcGVfY3JjX3N0YXJ0KHBpcGVfY3JjKTsKPiA+ICAgICAgICAgaWd0 X3BpcGVfY3JjX2dldF9jcmNzKHBpcGVfY3JjLCAxLCAmY3Jjcyk7Cj4gPiAgICAgICAgIGlndF9w aXBlX2NyY19zdG9wKHBpcGVfY3JjKTsKPiA+IC0gICAgICAgaWYgKG1vZGUgPT0gVEVTVF9QQUdF X0ZMSVApCj4gPiAtICAgICAgICAgICAgICAgaWd0X2Fzc2VydF9jcmNfZXF1YWwoJmNyY3NbMF0s ICZkYXRhLT5yZWZfY3JjWzFdKTsKPiA+IC0gICAgICAgZWxzZQo+ID4gLSAgICAgICAgICAgICAg IDsvKiBGSVhNRTogbWlzc2luZyByZWZlcmVuY2UgQ1JDcyAqLwo+ID4gKyAgICAgICBpZ3RfYXNz ZXJ0X2NyY19lcXVhbCgmY3Jjc1swXSwgJmRhdGEtPnJlZl9jcmNbMV0pOwo+ID4gICAgICAgICBm cmVlKGNyY3MpOwo+ID4KPiA+ICAgICAgICAgLyoKPiA+IEBAIC0yODQsMTAgKzI4OSw3IEBAIHN0 YXRpYyB2b2lkIHRlc3RfY3JjKGRhdGFfdCAqZGF0YSwgZW51bSB0ZXN0X21vZGUgbW9kZSkKPiA+ ICAgICAgICAgaWd0X3BpcGVfY3JjX3N0YXJ0KHBpcGVfY3JjKTsKPiA+ICAgICAgICAgaWd0X3Bp cGVfY3JjX2dldF9jcmNzKHBpcGVfY3JjLCAxLCAmY3Jjcyk7Cj4gPiAgICAgICAgIGlndF9waXBl X2NyY19zdG9wKHBpcGVfY3JjKTsKPiA+IC0gICAgICAgaWYgKG1vZGUgPT0gVEVTVF9QQUdFX0ZM SVApCj4gPiAtICAgICAgICAgICAgICAgaWd0X2Fzc2VydF9jcmNfZXF1YWwoJmNyY3NbMF0sICZk YXRhLT5yZWZfY3JjWzFdKTsKPiA+IC0gICAgICAgZWxzZQo+ID4gLSAgICAgICAgICAgICAgIDsv KiBGSVhNRTogbWlzc2luZyByZWZlcmVuY2UgQ1JDcyAqLwo+ID4gKyAgICAgICBpZ3RfYXNzZXJ0 X2NyY19lcXVhbCgmY3Jjc1swXSwgJmRhdGEtPnJlZl9jcmNbMV0pOwo+ID4gICAgICAgICBmcmVl KGNyY3MpOwo+ID4gIH0KPiA+Cj4gPiBAQCAtMzI4LDcgKzMzMCw3IEBAIHN0YXRpYyBib29sIHBy ZXBhcmVfdGVzdChkYXRhX3QgKmRhdGEsIGVudW0gdGVzdF9tb2RlIHRlc3RfbW9kZSkKPiA+ICAg ICAgICAgZGF0YS0+ZmJfaWRbMV0gPSBpZ3RfY3JlYXRlX2NvbG9yX2ZiKGRhdGEtPmRybV9mZCwg bW9kZS0+aGRpc3BsYXksIG1vZGUtPnZkaXNwbGF5LAo+ID4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgRFJNX0ZPUk1BVF9YUkdCODg4OCwKPiA+ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExPQ0FMX0k5MTVfRk9STUFUX01P RF9YX1RJTEVELAo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgMC4xLCAwLjEsIDAuMSwKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIDEuMCwgMS4wLCAxLjAsCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAmZGF0YS0+ZmJbMV0pOwo+ID4gICAgICAgICBpZ3RfYXNzZXJ0KGRh dGEtPmZiX2lkWzFdKTsKPiA+Cj4gPiAtLQo+ID4gMS45LjMKPiA+Cj4gPiBfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ID4gSW50ZWwtZ2Z4IG1haWxpbmcg bGlzdAo+ID4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+ID4gaHR0cDovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo+IAo+IAo+IAo+IC0t IAo+IFBhdWxvIFphbm9uaQo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKPiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaW50ZWwtZ2Z4CgotLSAKVmlsbGUgU3lyasOkbMOkCkludGVsIE9UQwpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0 CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=