From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Sharma, Shashank" Subject: Re: [PATCH 1/2] Revert "drm: Add and handle new aspect ratios in DRM layer" Date: Tue, 15 Nov 2016 14:30:47 +0530 Message-ID: <14e3f177-cd11-cf98-4f2d-0b2b1b4906a2@intel.com> References: <1478176304-6743-1-git-send-email-ville.syrjala@linux.intel.com> <20161111170017.GM31595@intel.com> <69c7ad2d-be85-b7c5-4a89-3fa4f37f44e2@intel.com> <20161114154937.GY31595@intel.com> <20161114162041.GZ31595@intel.com> <20161114164518.GA31595@intel.com> <20161115085135.ejys6afkqqz5ojyk@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id B8A816E56D for ; Tue, 15 Nov 2016 09:00:51 +0000 (UTC) In-Reply-To: <20161115085135.ejys6afkqqz5ojyk@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter Cc: Jose Abreu , "Jia, Lin A" , Akashdeep Sharma , Emil Velikov , dri-devel@lists.freedesktop.org, Daniel Vetter , Jim Bride List-Id: dri-devel@lists.freedesktop.org UmVnYXJkcwoKU2hhc2hhbmsKCgpPbiAxMS8xNS8yMDE2IDI6MjEgUE0sIERhbmllbCBWZXR0ZXIg d3JvdGU6Cj4gT24gTW9uLCBOb3YgMTQsIDIwMTYgYXQgMTA6MjY6MDhQTSArMDUzMCwgU2hhcm1h LCBTaGFzaGFuayB3cm90ZToKPj4gT24gMTEvMTQvMjAxNiAxMDoxNSBQTSwgVmlsbGUgU3lyasOk bMOkIHdyb3RlOgo+Pj4gT24gTW9uLCBOb3YgMTQsIDIwMTYgYXQgMTA6MTI6MDRQTSArMDUzMCwg U2hhcm1hLCBTaGFzaGFuayB3cm90ZToKPj4+PiBSZWdhcmRzCj4+Pj4KPj4+PiBTaGFzaGFuawo+ Pj4+Cj4+Pj4KPj4+PiBPbiAxMS8xNC8yMDE2IDk6NTAgUE0sIFZpbGxlIFN5cmrDpGzDpCB3cm90 ZToKPj4+Pj4gT24gTW9uLCBOb3YgMTQsIDIwMTYgYXQgMDk6Mzc6MThQTSArMDUzMCwgU2hhcm1h LCBTaGFzaGFuayB3cm90ZToKPj4+Pj4+IFJlZ2FyZHMKPj4+Pj4+Cj4+Pj4+PiBTaGFzaGFuawo+ Pj4+Pj4KPj4+Pj4+Cj4+Pj4+PiBPbiAxMS8xNC8yMDE2IDk6MTkgUE0sIFZpbGxlIFN5cmrDpGzD pCB3cm90ZToKPj4+Pj4+PiBPbiBNb24sIE5vdiAxNCwgMjAxNiBhdCAwODoxNDozNFBNICswNTMw LCBTaGFybWEsIFNoYXNoYW5rIHdyb3RlOgo+Pj4+Pj4+PiBSZWdhcmRzCj4+Pj4+Pj4+IFNoYXNo YW5rCj4+Pj4+Pj4+PiB0aGUgcmV2ZXJ0Ogo+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+ICAgICAgIEhETUky IGNvbm5lY3RlZCAxOTIweDEwODArMCswIChub3JtYWwgbGVmdCBpbnZlcnRlZCByaWdodCB4IGF4 aXMgeSBheGlzKSA3MDBtbSB4IDM5MG1tCj4+Pj4+Pj4+PiAtICAgMTkyMHgxMDgwICAgICA2MC4w MCorCj4+Pj4+Pj4+PiAtICAgMTkyMHgxMDgwaSAgICA2MC4wMCAgICA1MC4wMAo+Pj4+Pj4+Pj4g KyAgIDE5MjB4MTA4MCAgICAgNjAuMDAqKyAgNTAuMDAgICAgNTkuOTQgICAgMzAuMDAgICAgMjUu MDAgICAgMjQuMDAgICAgMjkuOTcgICAgMjMuOTgKPj4+Pj4+Pj4+ICsgICAxOTIweDEwODBpICAg IDYwLjAwICAgIDUwLjAwICAgIDU5Ljk0Cj4+Pj4+Pj4+PiAgICAgICAgICAxNjAweDEyMDAgICAg IDYwLjAwCj4+Pj4+Pj4+PiAgICAgICAgICAxNjgweDEwNTAgICAgIDU5Ljg4Cj4+Pj4+Pj4+PiAg ICAgICAgICAxMjgweDEwMjQgICAgIDc1LjAyICAgIDYwLjAyCj4+Pj4+Pj4+PiBAQCAtMTMsMzAg KzEzLDI5IEBACj4+Pj4+Pj4+PiAgICAgICAgICAxMzYweDc2OCAgICAgIDYwLjAyCj4+Pj4+Pj4+ PiAgICAgICAgICAxMjgweDgwMCAgICAgIDU5LjkxCj4+Pj4+Pj4+PiAgICAgICAgICAxMTUyeDg2 NCAgICAgIDc1LjAwCj4+Pj4+Pj4+PiAtICAgMTI4MHg3MjAgICAgICA2MC4wMCAgICA1MC4wMAo+ Pj4+Pj4+Pj4gKyAgIDEyODB4NzIwICAgICAgNjAuMDAgICAgNTAuMDAgICAgNTkuOTQKPj4+Pj4+ Pj4+ICAgICAgICAgIDEwMjR4NzY4ICAgICAgNzUuMDMgICAgNzAuMDcgICAgNjAuMDAKPj4+Pj4+ Pj4+ICAgICAgICAgIDgzMng2MjQgICAgICAgNzQuNTUKPj4+Pj4+Pj4+ICAgICAgICAgIDgwMHg2 MDAgICAgICAgNzIuMTkgICAgNzUuMDAgICAgNjAuMzIKPj4+Pj4+Pj4+IC0gICA2NDB4NDgwICAg ICAgIDc1LjAwICAgIDcyLjgxICAgIDY2LjY3ICAgIDU5Ljk0Cj4+Pj4+Pj4+PiArICAgNzIweDU3 NiAgICAgICA1MC4wMAo+Pj4+Pj4+Pj4gKyAgIDcyMHg0ODAgICAgICAgNjAuMDAgICAgNTkuOTQK Pj4+Pj4+Pj4+ICsgICA2NDB4NDgwICAgICAgIDc1LjAwICAgIDcyLjgxICAgIDY2LjY3ICAgIDYw LjAwICAgIDU5Ljk0Cj4+Pj4+Pj4+PiAgICAgICAgICA3MjB4NDAwICAgICAgIDcwLjA4Cj4+Pj4+ Pj4+IE5vbmUgb2YgdGhlc2UgYXNwZWN0IHJhdGlvcyBhcmUgbmV3IG1vZGVzIC8gbmV3IGFzcGVj dCByYXRpb3MgZnJvbSBIRE1JCj4+Pj4+Pj4+IDIuMC9DRUEtODYxLUYKPj4+Pj4+Pj4gVGhlc2Ug YXJlIHRoZSBleGlzdGluZyBtb2RlcywgYW5kIHNob3VsZCBiZSBpbmRlcGVuZGVudCBvZiByZXZl cnRlZAo+Pj4+Pj4+PiBwYXRjaGVzLgo+Pj4+Pj4+IFRoZXkncmUgYWZmZWN0ZWQgYmVjYXVzZSB5 b3VyIHBhdGNoZXMgY2hhbmdlZCB0aGVtIGJ5IGFkZGluZyB0aGUgYXNwZWN0Cj4+Pj4+Pj4gcmF0 aW8gZmxhZ3MgdG8gdGhlbS4KPj4+Pj4+IFllcywgQnV0IHRoZXkgYXJlIGluZGVwZW5kZW50IG9m IHJldmVydGVkIHBhdGNoLCB3aGljaCBhZGRzIGFzcGVjdCByYXRpbwo+Pj4+Pj4gZm9yIEhETUkg Mi4wIHJhdGlvcyAoNjQ6MjcgYW5kIDI1NjoxMzUpCj4+Pj4+IFRoZSBzZWNvbmQgcGF0Y2ggaGFk IHRvIGJlIHJldmVydGVkIHNvIHRoYXQgdGhlIGZpcnN0IHBhdGNoIHdvdWxkIHJldmVydAo+Pj4+ PiBjbGVhbmx5Lgo+Pj4+Pgo+Pj4+Pj4+Pj4gVGhpcyB3YXMgd2l0aCBzbmEsIHdoaWNoIGRvZXMg dGhpczoKPj4+Pj4+Pj4+ICAgICAgICNkZWZpbmUgS05PV05fTU9ERV9GTEFHUyAoKDE8PDE0KS0x KQo+Pj4+Pj4+Pj4gICAgICAgaWYgKG1vZGUtPnN0YXR1cyA9PSBNT0RFX09LICYmIGttb2RlLT5m bGFncyAmIH5LTk9XTl9NT0RFX0ZMQUdTKQo+Pj4+Pj4+Pj4gICAgICAgCW1vZGUtPnN0YXR1cyA9 IE1PREVfQkFEOyAvKiB1bmtub3duIGZsYWdzID0+IHVuaGFuZGxlZCAqLwo+Pj4+Pj4+Pj4gc28g YWxsIHRoZSBtb2RlcyB3aXRoIGFuIGFzcGVjdCByYXRpbyBqdXN0IHZhbmlzaGVkLgo+Pj4+Pj4+ Pj4KPj4+Pj4+Pj4+IC1tb2Rlc2V0dGluZyBhbmQgLWF0aSBvbiB0aGUgb3RoZXIgaGFuZCBqdXN0 IGNvcHkgb3ZlciB0aGUgdW5rbm93bgo+Pj4+Pj4+Pj4gYml0cyBpbnRvIHRoZSB4cmFuZHIgbW9k ZSBzdHJ1Y3R1cmUsIHdoaWNoIHNvdW5kcyBkdWJpb3VzIGF0IGJlc3Q6Cj4+Pj4+Pj4+PiAgICAg ICBtb2RlLT5GbGFncyA9IGttb2RlLT5mbGFnczsgLy8mIEZMQUdfQklUUzsKPj4+Pj4+Pj4+IEkn dmUgbm90IGNoZWNrZWQgd2hhdCBkYW1hZ2UgaXQgY2FuIGFjdHVhbGx5IGNhdXNlLgo+Pj4+Pj4+ Pj4KPj4+Pj4+Pj4+Cj4+Pj4+Pj4+PiBJdCBsb29rcyBsaWtlIGEgZmV3IG1vZGVzIGRpc2FwcGVh cmVkIGZyb20gdGhlIGtlcm5lbCdzIG1vZGUgbGlzdAo+Pj4+Pj4+Pj4gYXMgd2VsbCwgcHJlc3Vt YWJseSBiZWNhdXNlIHNvbWUgY2VhIG1vZGVzIGluIHRoZSBsaXN0IG9yaWdpbmF0ZWQgZnJvbQo+ Pj4+Pj4+Pj4gRFREcyBhbmQgd2hhbm90IHNvIHRoZXkgZG9uJ3QgaGF2ZSBhbiBhc3BlY3QgcmF0 aW8gYW5kIHRoYXQgY2F1c2VzCj4+Pj4+Pj4+PiBhZGRfYWx0ZXJuYXRlX2NlYV9tb2RlcygpIHRv IGlnbm9yZSB0aGVtLiBTbyBub3QgcG9wdWxhdGluZyBhbiBhc3BlY3QKPj4+Pj4+Pj4+IHJhdGlv IGZvciBjZWEgbW9kZXMgb3JpZ2luYXRpbmcgZnJvbSBhIHNvdXJjZSBvdGhlciB0aGFuCj4+Pj4+ Pj4+PiBlZGlkX2NlYV9tb2Rlc1tdIGxvb2tzIGxpa2UgYW5vdGhlciBidWcgdG8gbWUgYXMgd2Vs bC4KPj4+Pj4+Pj4gSSBhbSB3cml0aW5nIGEgcGF0Y2ggc2VyaWVzIHRvIGNhcCB0aGUgYXNwZWN0 IHJhdGlvIGltcGxlbWVudGF0aW9uIHVuZGVyCj4+Pj4+Pj4+IGEgZHJtX2NhcF9oZG1pMl9hc3Bl Y3RfcmF0aW9zCj4+Pj4+Pj4+IFRoaXMgaXMgaG93IGl0cyBnb2luZyB0byB3b3JrIChpbnNwaXJl ZCBmcm9tIHRoZSAyRC9zdGVyZW8gc2VyaWVzIGZyb20KPj4+Pj4+Pj4gZGFtaWVuIEwpCj4+Pj4+ Pj4+Cj4+Pj4+Pj4+IC0gQWRkIGEgbmV3IGNhcGFiaWxpdHkgaGRtaTJfYXIKPj4+Pj4+PiBJdCBz aG91bGQgYmUganVzdCBhIGdlbmVyaWMgImV4cG9zZSBhc3BlY3QgcmF0aW8gZmxhZ3MgdG8gdXNl cnNwYWNlPyIKPj4+Pj4+IE1ha2VzIHNlbnNlLCBpbiB0aGlzIHdheSB3ZSBjYW4gZXZlbiByZXZl cnQgdGhlIGFzcGVjdF9yYXRpbyBwcm9wZXJ0eQo+Pj4+Pj4gZm9yIEhETUkgY29ubmVjdG9yLCBh cyBkaXNjdXNzZWQgZHVyaW5nCj4+Pj4+PiB0aGUgY29kZSByZXZpZXcgc2Vzc2lvbnMgb2YgdGhp cyBwYXRjaCBzZXJpZXMuIEluIHRoaXMgd2F5LCB3aGVuIGtlcm5lbAo+Pj4+Pj4gd2lsbCBleHBv c2UgdGhlIGFzcGVjdCByYXRpb3MsIGl0IHdpbGwgZWl0aGVyCj4+Pj4+PiBkbyB0aGUgYXNwZWN0 IHJhdGlvcyBhcyBwZXIgRURJRCwgb3Igd29udC4KPj4+Pj4+Pj4gLSBieSBkZWZhdWx0IHBhcnNp bmcgdGhlIG5ldyBoZG1pIDIuMCBhc3BlY3QgcmF0aW8gd2lsbCBiZSBkaXNhYmxlZAo+Pj4+Pj4+ PiB1bmRlciBjaGVjayBvZiB0aGlzIGNhcAo+Pj4+Pj4+PiAtIGR1cmluZyBib290dXAgdGltZSwg d2hpbGUgaW5pdGlhbGl6aW5nIHRoZSBkaXNwbGF5LCBhIHVzZXJzcGFjZSBjYW4KPj4+Pj4+Pj4g Z2V0X2NhcCBvbiB0aGUgaGRtaTJfYXNwZWN0X3JhdGlvCj4+Pj4+Pj4+IC0gSWYgaXQgd2FudHMg SERNSSAyLjAgYXNwZWN0IHJhdGlvIHN1cHBvcnQsIGl0IHdpbGwgc2V0IHRoZSBjYXAsIGFuZAo+ Pj4+Pj4+PiBrZXJuZWwgd2lsbCBleHBvc2UgdGhlc2UgYXNwZWN0IHJhdGlvcwo+Pj4+Pj4+Pj4g QW5vdGhlciBidWcgSSB0aGluayBtaWdodCBiZSB0aGUgb3JkZXJpbmcgb2YgdGhlIG1vZGVzIHdp dGggYXNwZWN0IHJhdGlvCj4+Pj4+Pj4+PiBzcGVjaWZpZWQuIElJUkMgdGhlIHNwZWMgc2F5cyB0 aGF0IHRoZSBwcmVmZXJyZWQgYXNwZWN0IHJhdGlvIHNob3VsZCBiZQo+Pj4+Pj4+Pj4gbGlzdGVk IGZpcnN0IGluIHRoZSBFRElELCBidXQgSSBkb24ndCB0aGluayB3ZSBwcmVzZXJ2ZSB0aGF0IG9y ZGVyaW5nCj4+Pj4+Pj4+PiBpbiB0aGUgZmluYWwgbW9kZSBsaXN0LiBJIGd1ZXNzIHdlIGNvdWxk IGZpeCB0aGF0IGJ5IHNvbWVob3cgbm90aW5nCj4+Pj4+Pj4+PiB3aGljaCBhc3BlY3QgcmF0aW8g aXMgcHJlZmVycmVkIGFuZCBzb3J0IGJhc2VkIG9uIHRoYXQsIG9yIHdlIHRyeSB0bwo+Pj4+Pj4+ Pj4gcHJlc2VydmUgdGhlIG9yZGVyIGZyb20gdGhlIEVESUQgdW50aWwgd2UncmUgcmVhZHkgdG8g c29ydCwgYW5kIHRoZW4gZG8KPj4+Pj4+Pj4+IHRoZSBzb3J0aW5nIHdpdGggYSBzdGFibGUgYWxn b3JpdGhtLgo+Pj4+Pj4+PiBBRkFJSyBUaGUgbW9kZSBvcmRlciBhbmQgcHJpb3JpdHkgaXMgZGVj aWRlZCBhbmQgYXJyYW5nZWQgaW4gdXNlcnNwYWNlLAo+Pj4+Pj4+PiBiYXNlZCBvbiB2YXJpb3Vz IGZhY3RvcnMgbGlrZQo+Pj4+Pj4+PiAtIHByZWZlcnJlZCBtb2RlLgo+Pj4+Pj4+PiAtIHByZXZp b3VzbHkgYXBwbGllZCBtb2RlIGluIHByZXZpb3VzIHNlc3Npb25zIChsaWtlIGZvciBhbmRyb2lk IHR2cykKPj4+Pj4+Pj4gLSBCaWdnZXIgaC93IHZzIGJldHRlciByZWZyZXNoIHJhdGUgPwo+Pj4+ Pj4+PiAtIFhzZXJ2ZXIgYXBwbGllcyBpdHMgb3duIGFsZ29yaXRobXMgdG8gZGVjaWRlIHdoaWNo IG1vZGUgc2hvdWxkIGJlCj4+Pj4+Pj4+IHNob3duIGZpcnN0Lgo+Pj4+Pj4+IFhvcmcgZG9lcyBz b3J0IG9uIGl0cyBvd24uIEJ1dCBzaW5jZSBpdCBkb2Vzbid0IGtub3cgYW55dGhpbmcgYWJvdXQK Pj4+Pj4+PiBhc3BlY3QgcmF0aW9zIGFuZCB3aGF0bm90IEkgd291bGRuJ3QgcmVseSBvbiB0aGF0 IGZvciBhbnl0aGluZy4gSQo+Pj4+Pj4+IGFsc28gd291bGRuJ3QgZXhwZWN0IGVnLiB3YXlsYW5k IGNvbXBvc2l0b3JzIHRvIGRvIHRoZWlyIG93biBzb3J0aW5nLgo+Pj4+Pj4+IEFuZCB5ZWFoLCBs b29rcyBsaWtlIHdlc3RvbiBhdCBsZWFzdCBkb2Vzbid0IGRvIGFueSBzb3J0aW5nIHdoYXRzb2V2 ZXIuCj4+Pj4+Pj4KPj4+Pj4+Pj4gSSBkb250IHRoaW5rIGtlcm5lbCBuZWVkcyB0byBib3RoZXIg YWJvdXQgaXQuCj4+Pj4+Pj4gU28gSSdtIGdvaW5nIHRvIHNheSB0aGF0IHdlIGluIGZhY3QgZG8g bmVlZCB0byBib3RoZXIuCj4+Pj4+Pj4KPj4+Pj4+IElNSE8sIG1ha2luZyBwb2xpY2llcyBmb3Ig VUkgaXMgbm90IGEgcGFydCBvZiBrZXJuZWwgZGVzaWduLCBhIFVJCj4+Pj4+PiBtYW5hZ2VyIChI YXJkd2FyZSBjb21wb3NlZCwgWCBvciBXYXlsYW5kKSBzaG91bGQgdGFrZSBjYXJlIG9mIGl0LCBh cwo+Pj4+Pj4gdGhleSBoYXZlIGFjY2VzcyB0byBtdWNoIGluZm9ybWF0aW9uIChMaWtlIHByZXZp b3VzbHkgYXBwbGllZCBtb2RlLCB1c2VyCj4+Pj4+PiBwcmVmZXJlbmNlIGV0YykuIFdoZW4gaXQg Y29tZXMgdG8gc29ydGluZyBvZiBtb2RlcywgdGhlIG9ubHkgZ2VuZXJhbCBydWxlCj4+Pj4+PiBh Y3Jvc3MgZHJpdmVycyBsaWtlIEZCLCBWNEwyLCBJIGhhdmUgc2VlbiBpcyB0aGUgZmlyc3QgbW9k ZSBpbiB0aGUgbGlzdAo+Pj4+Pj4gc2hvdWxkIGJlIHByZWZlcnJlZCBtb2RlLCB3aGljaCB3ZSBh cmUgc3RpbGwga2VlcGluZy4gQW5kIGFmdGVyIHRoYXQgb3VyCj4+Pj4+PiBwcm9iZWRfbW9kZXMg d2VyZQo+Pj4+Pj4gYW55d2F5cyBub3Qgc29ydGVkIG5vdywgc28gaXQgZG9lc24ndCBtYXR0ZXIg ZnVydGhlci4KPj4+Pj4gSGF2aW5nIHVzZXJzcGFjZSBiZSByZXNwb25zaWJsZSBmb3Igc29ydGlu ZyB0aGUgYXNwZWN0IHJhdGlvcyB3b3VsZAo+Pj4+PiBwZXJoYXBzIHJlcXVpcmUgdGhhdCB1c2Vy c3BhY2UgcGFyc2VzIHRoZSBFRElELCB3aGljaCBpcyBwcmV0dHkgY3JhenkuCj4+Pj4gV2h5ID8K Pj4+PiB1c2Vyc3BhY2UgaGFzIHRvIGp1c3Qgc2V0IGNhcCBmb3IgYXNwZWN0IHJhdGlvLCBhbmQg a2VybmVsIGNhbiByZWFkCj4+Pj4gRURJRCwgcGFyc2UgdGhlIENFQSBibG9jaywgcG9wdWxhdGUg dGhlIGFzcGVjdCByYXRpb3MgZmxhZ3MKPj4+PiBhbmQgYWRkIHRoZSBtb2RlcyAoSnVzdCB3aGF0 IHRoaXMgcGF0Y2ggd2FzIGRvaW5nLCBleGNlcHQgdGhlIGNhcCBwYXJ0KQo+Pj4+IE9uY2UgdXNl cnNwYWNlIGhhcyB0aGUgZ2V0UmVzb3VyY2VzL2dldENvbm5lY3RvciBjYWxsIGZpbGxlZCwgaXQg Y2FuCj4+Pj4gYWNjZXNzIGFsbCB0aGUgbW9kZXMgKHdpdGggYW5kIHdpdGhvdXQgYXNwZWN0KSBh bmQgZG8gdGhlIHNvcnRpbmcKPj4+PiBpbiBhbnkgd2F5IGl0IHdhbnRzLgo+Pj4+PiBJIGd1ZXNz IGl0IGNvdWxkIHRyeSB0byBkZWR1Y2Ugc29tZXRoaW5nIGZyb20gdGhlIHBoeXNpY2FsIGFzcGVj dCByYXRpbwo+Pj4+PiBvZiB0aGUgZGlzcGxheSwgYnV0IEknbSBub3Qgc3VyZSB0aGF0J3MgcXVp dGUgd2hhdCB3ZSB3YW50IGVpdGhlci4KPj4+Pj4KPj4+Pj4gQWxzbyB3ZSBhbHJlYWR5IHNvcnQg dGhlIG1vZGVzIGluIHRoZSBrZXJuZWwgYW55d2F5LCBzbyBpdCdzIG5vdCBsaWtlCj4+Pj4+IHdl J2QgYmUgZG9pbmcgc29tZXRoaW5nIG5ldyBieSBhbHNvIGNvbnNpZGVyaW5nIHRoZSBhc3BlY3Qg cmF0aW9zLgo+Pj4+PiBJIHdvdWxkIGF0IHRoZSB2ZXJ5IGxlYXN0IHdhbnQgdG8gYXZvaWQgYSB0 b3RhbGx5IHJhbmRvbSBvcmRlciBiZXR3ZWVuCj4+Pj4+IG1vZGVzIHRoYXQgZGlmZmVyIG9ubHkg YnkgdGhlIGFzcGVjdCByYXRpby4KPj4+PiBQYXRoOiBnZXRfY29ubmVjdG9yIC0+IHByb2JlX3Np bmdsZV9jb25uZWN0b3JfbW9kZSAtPiBkcm1fYWRkX2VkaWRfbW9kZXMKPj4+PiBBZ2FpbiwgSU1I Tywgd2UgZG9uJ3Qgc29ydCB0aGUgbW9kZXMgaW4ga2VybmVsLCB3ZSBwb3B1bGF0ZSBtb2RlcyBp biBhCj4+Pj4gcGFydGljdWxhciBvcmRlciwgd2hpY2ggaXM6Cj4+Pj4gKEZyb20gZHJtX2VkaWQu Yzo6ZHJtX2FkZF9lZGlkX21vZGVzKQo+Pj4+ICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCj4+Pj4gLyoKPj4+PiAgICAgICAgICog RURJRCBzcGVjIHNheXMgbW9kZXMgc2hvdWxkIGJlIHByZWZlcnJlZCBpbiB0aGlzIG9yZGVyOgo+ Pj4+ICAgICAgICAgKiAtIHByZWZlcnJlZCBkZXRhaWxlZCBtb2RlCj4+Pj4gICAgICAgICAqIC0g b3RoZXIgZGV0YWlsZWQgbW9kZXMgZnJvbSBiYXNlIGJsb2NrCj4+Pj4gICAgICAgICAqIC0gZGV0 YWlsZWQgbW9kZXMgZnJvbSBleHRlbnNpb24gYmxvY2tzCj4+Pj4gICAgICAgICAqIC0gQ1ZUIDMt Ynl0ZSBjb2RlIG1vZGVzCj4+Pj4gICAgICAgICAqIC0gc3RhbmRhcmQgdGltaW5nIGNvZGVzCj4+ Pj4gICAgICAgICAqIC0gZXN0YWJsaXNoZWQgdGltaW5nIGNvZGVzCj4+Pj4gICAgICAgICAqIC0g bW9kZXMgaW5mZXJyZWQgZnJvbSBHVEYgb3IgQ1ZUIHJhbmdlIGluZm9ybWF0aW9uCj4+Pj4gICAg ICAgICAqCj4+Pj4gICAgICAgICAqIFdlIGdldCB0aGlzIHByZXR0eSBtdWNoIHJpZ2h0Lgo+Pj4+ ICAgICAgICAgKgo+Pj4+ICAgICAgICAgKiBYWFggb3JkZXIgZm9yIGFkZGl0aW9uYWwgbW9kZSB0 eXBlcyBpbiBleHRlbnNpb24gYmxvY2tzPwo+Pj4+ICAgICAgICAgKi8KPj4+PiAgICAgICAgbnVt X21vZGVzICs9IGFkZF9kZXRhaWxlZF9tb2Rlcyhjb25uZWN0b3IsIGVkaWQsIHF1aXJrcyk7Cj4+ Pj4gICAgICAgIG51bV9tb2RlcyArPSBhZGRfY3Z0X21vZGVzKGNvbm5lY3RvciwgZWRpZCk7Cj4+ Pj4gICAgICAgIG51bV9tb2RlcyArPSBhZGRfc3RhbmRhcmRfbW9kZXMoY29ubmVjdG9yLCBlZGlk KTsKPj4+PiAgICAgICAgbnVtX21vZGVzICs9IGFkZF9lc3RhYmxpc2hlZF9tb2Rlcyhjb25uZWN0 b3IsIGVkaWQpOwo+Pj4+ICAgICAgICBudW1fbW9kZXMgKz0gYWRkX2NlYV9tb2Rlcyhjb25uZWN0 b3IsIGVkaWQpOwo+Pj4+ICAgICAgICBudW1fbW9kZXMgKz0gYWRkX2FsdGVybmF0ZV9jZWFfbW9k ZXMoY29ubmVjdG9yLCBlZGlkKTsKPj4+PiAgICAgICAgbnVtX21vZGVzICs9IGFkZF9kaXNwbGF5 aWRfZGV0YWlsZWRfbW9kZXMoY29ubmVjdG9yLCBlZGlkKTsKPj4+PiAjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKPj4+Pgo+Pj4+ IEhlcmUgdGhlIG1vZGVzIGFyZSBhZGRlZCBpbiB0aGUgY29ubmVjdG9yLCBpbiB0aGUgc2FtZSBv cmRlciB0aGV5IGFyZQo+Pj4+IGFycmFuZ2VkIGludG8gdGhlaXIgcmVzcGVjdGl2ZSBibG9ja3Mg aW4gRURJRC4KPj4+PiBCdXQgdGhlIG9yZGVyIHRvIHJlYWQgdGhlIGJsb2NrIGlzIGEgcHJlZmVy cmVkIG9yZGVyIChubyBzb3J0aW5nKS4KPj4+Pgo+Pj4+IE5vdywgaW4gdGhpcyBwYXRjaCBzZXJp ZXMsIHdlIGFyZSBhZGRpbmcgYXNwZWN0IHJhdGlvIGluZm9ybWF0aW9uIGluCj4+Pj4gZWRpZF9j ZWFfbW9kZXMgZGIsIHdoaWNoIGlzIGdvaW5nIHRvIGFmZmVjdCBvbmx5Cj4+Pj4gYWRkX2NlYS9h bHRlcm5hdGVfY2VhX21vZGVzKCkgY2FsbCwgYW5kIHRoZSBtb2RlcyBhY2NvcmRpbmdseS4KPj4+ PiBQbGVhc2UgbGV0IG1lIGtub3cgaWYgSSBtaXN1bmRlcnN0b29kIHNvbWV0aGluZyBoZXJlLgo+ Pj4gV2UgZXhwbGljaXRseSBzb3J0IHRoZSBtb2RlcyBhZnRlciB0aGlzLgo+PiBJbiBhbnkgY2Fz ZSwgSSBndWVzcyBhZGRpdGlvbiBvZiBhIGNhcCBmb3IgYXNwZWN0IHJhdGlvIHNob3VsZCBmaXgg dGhlCj4+IGN1cnJlbnQgb2JqZWN0aW9ucyBmb3IgdGhpcyBpbXBsZW1lbnRhdGlvbi4KPj4KPj4g QW5kIEkgd2lsbCBrZWVwIGl0IDAgYnkgZGVmYXVsdCwgc28gdGhhdCBubyBhc3BlY3QgcmF0aW8g aW5mb3JtYXRpb24gaXMKPj4gYWRkZWQgdW50aWwgdXNlcnNwYWNlIHNldHMgdGhlIGNhcCB0byAx IG9uIGl0cyBvd24uCj4gTm90ZSB0aGF0IGNhcCA9IG5lZWRzIG5ldyB1c2Vyc3BhY2UuCj4gLURh bmllbApJIGd1ZXNzIHlvdSBtZWFuIGEgbmV3IGxpYmRybSwgc28geWVzLCBJIHdpbGwgYWRkIHRo aXMgbmV3IGNhcCBpbiBsaWJkcm0uCklzIHRoYXQgd2hhdCB5b3UgbWVhbiA/Cgo+Pgo+PiBSZWdh cmRzCj4+Cj4+IFNoYXNoYW5rCj4+Cj4+Pj4gUmVnYXJkcwo+Pj4+IFNoYXNoYW5rCj4+Pj4+PiBJ ZiBYIHNlcnZlciBkb2Vzbid0IGtub3cgd2hhdCB0byBkbyB3aXRoIGFzcGVjdCByYXRpbyBmbGFn cywgaXQgY2FuCj4+Pj4+PiBjaG9zZSBub3QgdG8gc2V0IHRoZSBjYXAsIGFuZCBpZiBIV0Mga25v d3MsIGl0IGNhbiBjaG9zZSB0byBzZXQuIFRoaXMgaXMKPj4+Pj4+IHRoZSBzYW1lIHNpdHVhdGlv biBhcyAyRCBzdGVyZW8gbW9kZXMKPj4+Pj4+IHdoaWNoIGFyZSBleGlzdGluZyBhbHJlYWR5Lgo+ Pj4+Pj4KPj4+Pj4+IFJlZ2FyZHMKPj4+Pj4+IFNoYXNoYW5rCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1k ZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK