From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: Re: [PATCH v6 6/6] drm/i915: Add NV12 as supported format for sprite plane Date: Mon, 7 May 2018 10:25:23 +0200 Message-ID: <351d6369-2407-a1d0-d171-cc1efe4d1255@linux.intel.com> References: <1525628685-24554-1-git-send-email-vidya.srinivas@intel.com> <1525628685-24554-7-git-send-email-vidya.srinivas@intel.com> <40dcab43-10d0-e759-324f-9dd198c5e54b@linux.intel.com> <75c168f9-1cd0-f320-0ae3-41447de9c6ca@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 17E0D6E0CF for ; Mon, 7 May 2018 08:26:59 +0000 (UTC) In-Reply-To: Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Srinivas, Vidya" , "intel-gfx@lists.freedesktop.org" List-Id: intel-gfx@lists.freedesktop.org T3AgMDctMDUtMTggb20gMTA6MjAgc2NocmVlZiBTcmluaXZhcywgVmlkeWE6Cj4KPj4gLS0tLS1P cmlnaW5hbCBNZXNzYWdlLS0tLS0KPj4gRnJvbTogU3Jpbml2YXMsIFZpZHlhCj4+IFNlbnQ6IE1v bmRheSwgTWF5IDcsIDIwMTggMTo0NiBQTQo+PiBUbzogJ01hYXJ0ZW4gTGFua2hvcnN0JyA8bWFh cnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwuY29tPjsgaW50ZWwtCj4+IGdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKPj4gU3ViamVjdDogUkU6IFtJbnRlbC1nZnhdIFtQQVRDSCB2NiA2LzZdIGRy bS9pOTE1OiBBZGQgTlYxMiBhcyBzdXBwb3J0ZWQKPj4gZm9ybWF0IGZvciBzcHJpdGUgcGxhbmUK Pj4KPj4KPj4KPj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tCj4+PiBGcm9tOiBNYWFydGVu IExhbmtob3JzdCBbbWFpbHRvOm1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNvbV0KPj4+ IFNlbnQ6IE1vbmRheSwgTWF5IDcsIDIwMTggMTo0NCBQTQo+Pj4gVG86IFNyaW5pdmFzLCBWaWR5 YSA8dmlkeWEuc3Jpbml2YXNAaW50ZWwuY29tPjsgaW50ZWwtCj4+PiBnZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCj4+PiBTdWJqZWN0OiBSZTogW0ludGVsLWdmeF0gW1BBVENIIHY2IDYvNl0gZHJt L2k5MTU6IEFkZCBOVjEyIGFzCj4+PiBzdXBwb3J0ZWQgZm9ybWF0IGZvciBzcHJpdGUgcGxhbmUK Pj4+Cj4+PiBPcCAwNy0wNS0xOCBvbSAxMDoxMSBzY2hyZWVmIFNyaW5pdmFzLCBWaWR5YToKPj4+ Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KPj4+Pj4gRnJvbTogTWFhcnRlbiBMYW5raG9y c3QgW21haWx0bzptYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb21dCj4+Pj4+IFNlbnQ6 IE1vbmRheSwgTWF5IDcsIDIwMTggMTozOCBQTQo+Pj4+PiBUbzogU3Jpbml2YXMsIFZpZHlhIDx2 aWR5YS5zcmluaXZhc0BpbnRlbC5jb20+OyBpbnRlbC0KPj4+Pj4gZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZwo+Pj4+PiBTdWJqZWN0OiBSZTogW0ludGVsLWdmeF0gW1BBVENIIHY2IDYvNl0gZHJt L2k5MTU6IEFkZCBOVjEyIGFzCj4+Pj4+IHN1cHBvcnRlZCBmb3JtYXQgZm9yIHNwcml0ZSBwbGFu ZQo+Pj4+Pgo+Pj4+PiBPcCAwNi0wNS0xOCBvbSAxOTo0NCBzY2hyZWVmIFZpZHlhIFNyaW5pdmFz Ogo+Pj4+Pj4gRnJvbTogQ2hhbmRyYSBLb25kdXJ1IDxjaGFuZHJhLmtvbmR1cnVAaW50ZWwuY29t Pgo+Pj4+Pj4KPj4+Pj4+IFRoaXMgcGF0Y2ggYWRkcyBOVjEyIHRvIGxpc3Qgb2Ygc3VwcG9ydGVk IGZvcm1hdHMgZm9yIHNwcml0ZSBwbGFuZS4KPj4+Pj4+Cj4+Pj4+PiB2MjogUmViYXNlZCAobWUp Cj4+Pj4+Pgo+Pj4+Pj4gdjM6IFJldmlldyBjb21tZW50cyBieSBWaWxsZSBhZGRyZXNzZWQKPj4+ Pj4+IC0gUmVtb3ZlZCBza2xfcGxhbmVfZm9ybWF0c193aXRoX252MTIgYW5kIGFkZGVkCj4+Pj4+ PiBOVjEyIGNhc2UgaW4gZXhpc3Rpbmcgc2tsX3BsYW5lX2Zvcm1hdHMKPj4+Pj4+IC0gQWRkZWQg dGhlIDEwYnBjIFJHQiBmb3JtYXRzCj4+Pj4+Pgo+Pj4+Pj4gdjQ6IEFkZHJlc3NlZCByZXZpZXcg Y29tbWVudHMgZnJvbSBDbGludG9uIEEgVGF5bG9yICJXaHkgYXJlIHdlCj4+Pj4+IGFkZGluZwo+ Pj4+Pj4gMTAgYml0IFJHQiBmb3JtYXRzIHdpdGggdGhlIE5WMTIgc2VyaWVzIHBhdGNoZXM/Cj4+ Pj4+PiBUcnlpbmcgdG8gc2V0IFhSMzAgb3IgQUIzMCByZXN1bHRzIGluIGVycm9yIHJldHVybmVk IGV2ZW4gdGhvdWdoCj4+Pj4+PiB0aGUgbW9kZXMgYXJlIGFkdmVydGlzZWQgZm9yIHRoZSBwbGFu ZXMiCj4+Pj4+PiAtIFJlbW92ZWQgMTBiaXQgUkdCIGZvcm1hdHMgYWRkZWQgcHJldmlvdXNseSB3 aXRoIE5WMTIgc2VyaWVzCj4+Pj4+Pgo+Pj4+Pj4gdjU6IE1pc3NlZCB0aGUgVGVzdGVkLWJ5L1Jl dmlld2VkLWJ5IGluIHRoZSBwcmV2aW91cyBzZXJpZXMgQWRkaW5nCj4+Pj4+PiB0aGUgc2FtZSB0 byBjb21taXQgbWVzc2FnZSBpbiB0aGlzIHZlcnNpb24uCj4+Pj4+PiBBZGRyZXNzZWQgcmV2aWV3 IGNvbW1lbnRzIGZyb20gQ2xpbnRvbiBBIFRheWxvciAiV2h5IGFyZSB3ZQo+PiBhZGRpbmcKPj4+ Pj4+IDEwIGJpdCBSR0IgZm9ybWF0cyB3aXRoIHRoZSBOVjEyIHNlcmllcyBwYXRjaGVzPwo+Pj4+ Pj4gVHJ5aW5nIHRvIHNldCBYUjMwIG9yIEFCMzAgcmVzdWx0cyBpbiBlcnJvciByZXR1cm5lZCBl dmVuIHRob3VnaAo+Pj4+Pj4gdGhlIG1vZGVzIGFyZSBhZHZlcnRpc2VkIGZvciB0aGUgcGxhbmVz Igo+Pj4+Pj4gLSBQcmV2aW91cyB2ZXJzaW9uIGhhcyAxMGJpdCBSR0IgZm9ybWF0IHJlbW92ZWQg ZnJvbSBWTFYgZm9ybWF0cwo+Pj4+Pj4gYnkgbWlzdGFrZS4gRml4aW5nIHRoYXQgaW4gdGhpcyB2 ZXJzaW9uLgo+Pj4+Pj4gUmVtb3ZlZCAxMGJpdCBSR0IgZm9ybWF0cyBhZGRlZCBwcmV2aW91c2x5 IHdpdGggTlYxMiBzZXJpZXMgZm9yCj4+IFNLTC4KPj4+Pj4+IHY2OiBBZGRyZXNzZWQgcmV2aWV3 IGNvbW1lbnRzIGJ5IFZpbGxlIFJlc3RyaWN0aW5nIHRoZSBOVjEyIHRvIEJYVAo+Pj4+Pj4gYW5k IFBJUEUgQSBhbmQgQgo+Pj4+Pj4KPj4+Pj4+IHY3OiBSZWJhc2VkIChtZSkKPj4+Pj4+Cj4+Pj4+ PiB2ODogUmViYXNlZCAobWUpCj4+Pj4+PiBSZXN0cmljdGluZyBOVjEyIGNoYW5nZXMgdG8gQlhU IGFuZCBLQkwgUmVzdHJpY3RpbmcgTlYxMiBjaGFuZ2VzCj4+Pj4+PiBmb3IgcGxhbmUgMCAob3Zl cmxheSkKPj4+Pj4+Cj4+Pj4+PiB2OTogUmViYXNlZCAobWUpCj4+Pj4+Pgo+Pj4+Pj4gdjEwOiBB ZGRyZXNzZWQgcmV2aWV3IGNvbW1lbnRzIGZyb20gTWFhcnRlbi4KPj4+Pj4+IEFkZGluZyBOVjEy IHRvIHNrbF9wbGFuZV9mb3JtYXRzIGl0c2VsZi4KPj4+Pj4+Cj4+Pj4+PiB2MTE6IEFkZHJlc3Nl ZCByZXZpZXcgY29tbWVudHMgZnJvbSBTaGFzaGFuayBTaGFybWEKPj4+Pj4+Cj4+Pj4+PiB2MTI6 IEFkZHJlc3NlZCByZXZpZXcgY29tbWVudHMgZnJvbSBTaGFzaGFuayBTaGFybWEgTWFkZSB0aGUK Pj4+Pj4gY29uZGl0aW9uCj4+Pj4+PiBpbiBpbnRlbF9zcHJpdGVfcGxhbmVfY3JlYXRlIHNpbXBs ZSBhbmQgZWFzeSB0byByZWFkIGFzIHN1Z2dlc3RlZC4KPj4+Pj4+Cj4+Pj4+PiB2MTM6IEFkZGlu ZyByZXZpZXdlZCBieSB0YWcgZnJvbSBTaGFzaGFuayBTaGFybWEgQWRkcmVzc2VkIHJldmlldwo+ Pj4+Pj4gY29tbWVudHMgZnJvbSBKdWhhLVBla2thIEhlaWtraWxhCj4+Pj4+PiAiTlYxMiBub3Qg dG8gYmUgc3VwcG9ydGVkIGJ5IFNLTCIKPj4+Pj4+Cj4+Pj4+PiB2MTQ6IEFkZHJlc3NlZCByZXZp ZXcgY29tbWVudHMgZnJvbSBWaWxsZSBBZGRlZAo+PiBza2xfcGxhbmFyX2Zvcm1hdHMKPj4+Pj4+ IHRvIGluY2x1ZGUgTlYxMiBhbmQgYSBjaGVjayBza2xfcGxhbmVfaGFzX3BsYW5hciBpbiBzcHJp dGUgY3JlYXRlCj4+Pj4+PiBBZGRlZAo+Pj4+Pj4gTlYxMiBmb3JtYXQgdG8gc2tsX21vZF9zdXBw b3J0ZWQuIFRoZXNlIHdlcmUgcmV2aWV3IGNvbW1lbnRzCj4+PiBmcm9tCj4+Pj4+PiBLcmlzdGlh biBIw7hnc2JlcmcgPGhvZWdzYmVyZ0BnbWFpbC5jb20+Cj4+Pj4+Pgo+Pj4+Pj4gdjE1OiBBZGRl ZCByZXZpZXdlZCBieSBmcm9tIEp1aGEtUGVra2EgSGVpa2tpbGEKPj4+Pj4+Cj4+Pj4+PiB2MTY6 IFJlYmFzZWQgdGhlIHNlcmllcwo+Pj4+Pj4KPj4+Pj4+IHYxNzogQWRkZWQgYWxsIHRpbGluZyB1 bmRlciBtb2Qgc3VwcG9ydGVkIGZvciBOVjEyIENyZWRpdHMgdG8KPj4+Pj4+IE1lZ2hhIEFnZ2Fy d2FsCj4+Pj4+Pgo+Pj4+Pj4gdjE4OiBBZGRlZCBSQiBieSBNYWFydGVuIGFuZCBLcmlzdGlhbgo+ Pj4+Pj4KPj4+Pj4+IENyZWRpdHMtdG86IE1lZ2hhIEFnZ2Fyd2FsIDxtZWdoYS5hZ2dhcndhbEBp bnRlbC5jb20+Cj4+Pj4+PiBDcmVkaXRzLXRvOiBLcmlzdGlhbiBIw7hnc2JlcmcgPGhvZWdzYmVy Z0BnbWFpbC5jb20+Cj4+Pj4+PiBSZXZpZXdlZC1ieTogS3Jpc3RpYW4gSMO4Z3NiZXJnIDxob2Vn c2JlcmdAZ21haWwuY29tPgo+Pj4+Pj4gUmV2aWV3ZWQtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0Cj4+ IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+Cj4+Pj4+PiBUZXN0ZWQtYnk6IENs aW50b24gVGF5bG9yIDxjbGludG9uLmEudGF5bG9yQGludGVsLmNvbT4KPj4+Pj4+IFJldmlld2Vk LWJ5OiBKdWhhLVBla2thIEhlaWtraWxhIDxqdWhhcGVra2EuaGVpa2tpbGFAZ21haWwuY29tPgo+ Pj4+Pj4gUmV2aWV3ZWQtYnk6IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsuc2hhcm1hQGludGVs LmNvbT4KPj4+Pj4+IFJldmlld2VkLWJ5OiBDbGludG9uIFRheWxvciA8Y2xpbnRvbi5hLnRheWxv ckBpbnRlbC5jb20+Cj4+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBDaGFuZHJhIEtvbmR1cnUgPGNoYW5k cmEua29uZHVydUBpbnRlbC5jb20+Cj4+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBOYWJlbmR1IE1haXRp IDxuYWJlbmR1LmJpa2FzaC5tYWl0aUBpbnRlbC5jb20+Cj4+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBW aWR5YSBTcmluaXZhcyA8dmlkeWEuc3Jpbml2YXNAaW50ZWwuY29tPgo+Pj4+Pj4gLS0tCj4+Pj4+ PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMgfCAyOQo+Pj4+Pj4gKysrKysr KysrKysrKysrKysrKysrKysrKysrLS0KPj4+Pj4+ICAxIGZpbGUgY2hhbmdlZCwgMjcgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKPj4+Pj4+Cj4+Pj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKPj4+Pj4+IGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfc3ByaXRlLmMKPj4+Pj4+IGluZGV4IGM3MzU1M2EuLmNkY2FlOWUgMTAwNjQ0Cj4+ Pj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYwo+Pj4+Pj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKPj4+Pj4+IEBAIC0xMTgwLDYg KzExODAsMTkgQEAgc3RhdGljIHVpbnQzMl90IHNrbF9wbGFuZV9mb3JtYXRzW10gPSB7Cj4+Pj4+ PiAgCURSTV9GT1JNQVRfVllVWSwKPj4+Pj4+ICB9Owo+Pj4+Pj4KPj4+Pj4+ICtzdGF0aWMgdWlu dDMyX3Qgc2tsX3BsYW5hcl9mb3JtYXRzW10gPSB7Cj4+Pj4+PiArCURSTV9GT1JNQVRfUkdCNTY1 LAo+Pj4+Pj4gKwlEUk1fRk9STUFUX0FCR1I4ODg4LAo+Pj4+Pj4gKwlEUk1fRk9STUFUX0FSR0I4 ODg4LAo+Pj4+Pj4gKwlEUk1fRk9STUFUX1hCR1I4ODg4LAo+Pj4+Pj4gKwlEUk1fRk9STUFUX1hS R0I4ODg4LAo+Pj4+Pj4gKwlEUk1fRk9STUFUX1lVWVYsCj4+Pj4+PiArCURSTV9GT1JNQVRfWVZZ VSwKPj4+Pj4+ICsJRFJNX0ZPUk1BVF9VWVZZLAo+Pj4+Pj4gKwlEUk1fRk9STUFUX1ZZVVksCj4+ Pj4+PiArCURSTV9GT1JNQVRfTlYxMiwKPj4+Pj4+ICt9Owo+Pj4+Pj4gKwo+Pj4+Pj4gIHN0YXRp YyBjb25zdCB1aW50NjRfdCBza2xfcGxhbmVfZm9ybWF0X21vZGlmaWVyc19ub2Njc1tdID0gewo+ Pj4+Pj4gIAlJOTE1X0ZPUk1BVF9NT0RfWWZfVElMRUQsCj4+Pj4+PiAgCUk5MTVfRk9STUFUX01P RF9ZX1RJTEVELAo+Pj4+Pj4gQEAgLTEyNzcsNiArMTI5MCwxMiBAQCBzdGF0aWMgYm9vbCBza2xf bW9kX3N1cHBvcnRlZCh1aW50MzJfdAo+Pj4+PiBmb3JtYXQsIHVpbnQ2NF90IG1vZGlmaWVyKQo+ Pj4+Pj4gIAkJaWYgKG1vZGlmaWVyID09IEk5MTVfRk9STUFUX01PRF9ZZl9USUxFRCkKPj4+Pj4+ ICAJCQlyZXR1cm4gdHJ1ZTsKPj4+Pj4+ICAJCS8qIGZhbGwgdGhyb3VnaCAqLwo+Pj4+Pj4gKwlj YXNlIERSTV9GT1JNQVRfTlYxMjoKPj4+Pj4+ICsJCWlmIChtb2RpZmllciA9PSBEUk1fRk9STUFU X01PRF9MSU5FQVIgfHwKPj4+Pj4+ICsJCSAgICBtb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0Rf WF9USUxFRCB8fAo+Pj4+Pj4gKwkJICAgIG1vZGlmaWVyID09IEk5MTVfRk9STUFUX01PRF9ZX1RJ TEVEIHx8Cj4+Pj4+PiArCQkgICAgbW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lmX1RJTEVE KQo+Pj4+Pj4gKwkJCXJldHVybiB0cnVlOwo+Pj4+PiBPbiBwYXRjaCA1IGFuZCA2OiB0aGlzIGlz IGEgdGFkIG92ZXJraWxsLCBqdXN0IHB1dCBpdCBiZWxvdwo+Pj4+PiBEUk1fRk9STUFUX1ZZVVkg YW5kIGxldCBpdCBmYWxsIHRocm91Z2guIEl0J3Mgbm90IGRpZmZlcmVudCBmcm9tCj4+Pj4+IHRo ZSBvdGhlciBmb3JtYXRzLiA6KSBPdGhlcndpc2UgbG9va3MgZ29vZCwgSSdsbCB3YWl0IHVudGls IHRoZQo+Pj4+PiBjaGFuZ2VzIGZyb20gZHJtLW1pc2MtIG5leHQgYXJlIG1lcmdlZCBpbnRvIGRy bS1pbnRlbC1uZXh0LXF1ZXVlZAo+Pj4+PiB0aGVuIHRoaXMgc2VyaWVzIGNhbiBiZSBhcHBsaWVk IHdpdGggdGhlIG1pbm9yIGZpeHVwLgo+Pj4+IFN1cmUsIHRoYW5rIHlvdS4gSSdsbCBtYWtlIHRo ZSBjaGFuZ2UuIEkgZGlkIHRoaXMgdG8gZml4IGEgcmV2aWV3Cj4+Pj4gY29tbWVudCAtIHdoaWNo IHNhaWQgYWxsIG1vZGlmaWVycyBhcmVu4oCZdCBDb3ZlcmVkIGZvciBOVjEyIC0gd2hlbiB3ZQo+ Pj4gZWFybGllciBoYWQgaXQgdW5kZXIgVllVVi4gV291bGQgdGhhdCBiZSBzdGlsbCBva2F5Pwo+ Pj4gU2VlbXMgb25seSBDQ1MgaXNuJ3QgY292ZXJlZCwgc28gcHV0dGluZyBpdCB0aGVyZSBzaG91 bGQgYmUgZmluZS4gOikKPj4gT2ggb2theSAtIHN1cmUgdGhhbmsgeW91LiBXaWxsIG1ha2UgdGhl IGNoYW5nZSBhbmQgZmxvYXQgdGhlIHNlcmllcy4KPiBTb3JyeSB0byBhc2sgLSB1bmRlciBWWVVW IG9ubHkgWWZfVElMRUQgcmV0dXJucyB0cnVlLiBEb27igJl0IHdlIG5lZWQgdG8KPiBhZGQgdGhl IG90aGVyIG1vZGlmaWVycyBsaWtlIE1PRF9MSU5FQVIsIE1PRF9YX1RJTEVEIGFuZCBNT0RfWV9U SUxFRD8KPj4gUmVnYXJkcwo+PiBWaWR5YQoKVGhpcyBpcyBhIEMgc3dpdGNoLCB1bmxlc3MgdGhl cmUgaXMgYSBicmVhayBpdCB3aWxsIGNvbnRpbnVlLCBzbyBpdCB3b3JrcyBhcyBpbnRlbmRlZC4g OikKCkZvciBleGFtcGxlIGZvcm1hdCBVWVZZIGlmIG1vZGlmaWVyID09IFlmX1RJTEVEX0NDUywg aXQgd2lsbCBpZ25vcmUgYWxsIAp0aGUgbGluZXMgd2l0aCBjYXNlIGFuZCBkZWZhdWx0LCBhbmQg Y29udGludWUgdG8gdGhlIGVuZCBvZiB0aGUgc3dpdGNoIApzdGF0ZW1lbnQsIG9yIHVudGlsIGl0 IGhpdHMgYSAnYnJlYWsnIHNvIHRoZSBiZWxvdzoKCgoJY2FzZSBEUk1fRk9STUFUX1VZVlk6Cglj YXNlIERSTV9GT1JNQVRfVllVWToKCQlpZiAobW9kaWZpZXIgPT0gSTkxNV9GT1JNQVRfTU9EX1lm X1RJTEVEKQoJCQlyZXR1cm4gdHJ1ZTsKCQkvKiBmYWxsIHRocm91Z2ggKi8KCWNhc2UgRFJNX0ZP Uk1BVF9DODoKCQlpZiAobW9kaWZpZXIgPT0gRFJNX0ZPUk1BVF9NT0RfTElORUFSIHx8CgkJICAg IG1vZGlmaWVyID09IEk5MTVfRk9STUFUX01PRF9YX1RJTEVEIHx8CgkJICAgIG1vZGlmaWVyID09 IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEKQoJCQlyZXR1cm4gdHJ1ZTsKCQkvKiBmYWxsIHRocm91 Z2ggKi8KCWRlZmF1bHQ6CgkJcmV0dXJuIGZhbHNlOwp9Cgpmb3IgVVlWWSBlbmRzIHVwIGJlaW5n IHRoZSBzYW1lIGFzOgoKaWYgKGZvcm1hdCA9PSBEUk1fRk9STUFUX1VZVlkpIHsKCWlmIChtb2Rp ZmllciA9PSBJOTE1X0ZPUk1BVF9NT0RfWWZfVElMRUQpCgkJcmV0dXJuIHRydWU7CglpZiAobW9k aWZpZXIgPT0gRFJNX0ZPUk1BVF9NT0RfTElORUFSIHx8CgkgICAgbW9kaWZpZXIgPT0gSTkxNV9G T1JNQVRfTU9EX1hfVElMRUQgfHwKCSAgICBtb2RpZmllciA9PSBJOTE1X0ZPUk1BVF9NT0RfWV9U SUxFRCkKCQlyZXR1cm4gdHJ1ZTsKCXJldHVybiBmYWxzZTsKfQoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==