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: Mon, 14 Nov 2016 22:12:04 +0530 Message-ID: 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> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2753E89FA0 for ; Mon, 14 Nov 2016 16:42:09 +0000 (UTC) In-Reply-To: <20161114162041.GZ31595@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: =?UTF-8?B?VmlsbGUgU3lyasOkbMOk?= 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 UmVnYXJkcwoKU2hhc2hhbmsKCgpPbiAxMS8xNC8yMDE2IDk6NTAgUE0sIFZpbGxlIFN5cmrDpGzD pCB3cm90ZToKPiBPbiBNb24sIE5vdiAxNCwgMjAxNiBhdCAwOTozNzoxOFBNICswNTMwLCBTaGFy bWEsIFNoYXNoYW5rIHdyb3RlOgo+PiBSZWdhcmRzCj4+Cj4+IFNoYXNoYW5rCj4+Cj4+Cj4+IE9u IDExLzE0LzIwMTYgOToxOSBQTSwgVmlsbGUgU3lyasOkbMOkIHdyb3RlOgo+Pj4gT24gTW9uLCBO b3YgMTQsIDIwMTYgYXQgMDg6MTQ6MzRQTSArMDUzMCwgU2hhcm1hLCBTaGFzaGFuayB3cm90ZToK Pj4+PiBSZWdhcmRzCj4+Pj4gU2hhc2hhbmsKPj4+Pj4gdGhlIHJldmVydDoKPj4+Pj4KPj4+Pj4g ICAgIEhETUkyIGNvbm5lY3RlZCAxOTIweDEwODArMCswIChub3JtYWwgbGVmdCBpbnZlcnRlZCBy aWdodCB4IGF4aXMgeSBheGlzKSA3MDBtbSB4IDM5MG1tCj4+Pj4+IC0gICAxOTIweDEwODAgICAg IDYwLjAwKisKPj4+Pj4gLSAgIDE5MjB4MTA4MGkgICAgNjAuMDAgICAgNTAuMDAKPj4+Pj4gKyAg IDE5MjB4MTA4MCAgICAgNjAuMDAqKyAgNTAuMDAgICAgNTkuOTQgICAgMzAuMDAgICAgMjUuMDAg ICAgMjQuMDAgICAgMjkuOTcgICAgMjMuOTgKPj4+Pj4gKyAgIDE5MjB4MTA4MGkgICAgNjAuMDAg ICAgNTAuMDAgICAgNTkuOTQKPj4+Pj4gICAgICAgIDE2MDB4MTIwMCAgICAgNjAuMDAKPj4+Pj4g ICAgICAgIDE2ODB4MTA1MCAgICAgNTkuODgKPj4+Pj4gICAgICAgIDEyODB4MTAyNCAgICAgNzUu MDIgICAgNjAuMDIKPj4+Pj4gQEAgLTEzLDMwICsxMywyOSBAQAo+Pj4+PiAgICAgICAgMTM2MHg3 NjggICAgICA2MC4wMgo+Pj4+PiAgICAgICAgMTI4MHg4MDAgICAgICA1OS45MQo+Pj4+PiAgICAg ICAgMTE1Mng4NjQgICAgICA3NS4wMAo+Pj4+PiAtICAgMTI4MHg3MjAgICAgICA2MC4wMCAgICA1 MC4wMAo+Pj4+PiArICAgMTI4MHg3MjAgICAgICA2MC4wMCAgICA1MC4wMCAgICA1OS45NAo+Pj4+ PiAgICAgICAgMTAyNHg3NjggICAgICA3NS4wMyAgICA3MC4wNyAgICA2MC4wMAo+Pj4+PiAgICAg ICAgODMyeDYyNCAgICAgICA3NC41NQo+Pj4+PiAgICAgICAgODAweDYwMCAgICAgICA3Mi4xOSAg ICA3NS4wMCAgICA2MC4zMgo+Pj4+PiAtICAgNjQweDQ4MCAgICAgICA3NS4wMCAgICA3Mi44MSAg ICA2Ni42NyAgICA1OS45NAo+Pj4+PiArICAgNzIweDU3NiAgICAgICA1MC4wMAo+Pj4+PiArICAg NzIweDQ4MCAgICAgICA2MC4wMCAgICA1OS45NAo+Pj4+PiArICAgNjQweDQ4MCAgICAgICA3NS4w MCAgICA3Mi44MSAgICA2Ni42NyAgICA2MC4wMCAgICA1OS45NAo+Pj4+PiAgICAgICAgNzIweDQw MCAgICAgICA3MC4wOAo+Pj4+IE5vbmUgb2YgdGhlc2UgYXNwZWN0IHJhdGlvcyBhcmUgbmV3IG1v ZGVzIC8gbmV3IGFzcGVjdCByYXRpb3MgZnJvbSBIRE1JCj4+Pj4gMi4wL0NFQS04NjEtRgo+Pj4+ IFRoZXNlIGFyZSB0aGUgZXhpc3RpbmcgbW9kZXMsIGFuZCBzaG91bGQgYmUgaW5kZXBlbmRlbnQg b2YgcmV2ZXJ0ZWQKPj4+PiBwYXRjaGVzLgo+Pj4gVGhleSdyZSBhZmZlY3RlZCBiZWNhdXNlIHlv dXIgcGF0Y2hlcyBjaGFuZ2VkIHRoZW0gYnkgYWRkaW5nIHRoZSBhc3BlY3QKPj4+IHJhdGlvIGZs YWdzIHRvIHRoZW0uCj4+IFllcywgQnV0IHRoZXkgYXJlIGluZGVwZW5kZW50IG9mIHJldmVydGVk IHBhdGNoLCB3aGljaCBhZGRzIGFzcGVjdCByYXRpbwo+PiBmb3IgSERNSSAyLjAgcmF0aW9zICg2 NDoyNyBhbmQgMjU2OjEzNSkKPiBUaGUgc2Vjb25kIHBhdGNoIGhhZCB0byBiZSByZXZlcnRlZCBz byB0aGF0IHRoZSBmaXJzdCBwYXRjaCB3b3VsZCByZXZlcnQKPiBjbGVhbmx5Lgo+Cj4+Pj4+IFRo aXMgd2FzIHdpdGggc25hLCB3aGljaCBkb2VzIHRoaXM6Cj4+Pj4+ICAgICAjZGVmaW5lIEtOT1dO X01PREVfRkxBR1MgKCgxPDwxNCktMSkKPj4+Pj4gICAgIGlmIChtb2RlLT5zdGF0dXMgPT0gTU9E RV9PSyAmJiBrbW9kZS0+ZmxhZ3MgJiB+S05PV05fTU9ERV9GTEFHUykKPj4+Pj4gICAgIAltb2Rl LT5zdGF0dXMgPSBNT0RFX0JBRDsgLyogdW5rbm93biBmbGFncyA9PiB1bmhhbmRsZWQgKi8KPj4+ Pj4gc28gYWxsIHRoZSBtb2RlcyB3aXRoIGFuIGFzcGVjdCByYXRpbyBqdXN0IHZhbmlzaGVkLgo+ Pj4+Pgo+Pj4+PiAtbW9kZXNldHRpbmcgYW5kIC1hdGkgb24gdGhlIG90aGVyIGhhbmQganVzdCBj b3B5IG92ZXIgdGhlIHVua25vd24KPj4+Pj4gYml0cyBpbnRvIHRoZSB4cmFuZHIgbW9kZSBzdHJ1 Y3R1cmUsIHdoaWNoIHNvdW5kcyBkdWJpb3VzIGF0IGJlc3Q6Cj4+Pj4+ICAgICBtb2RlLT5GbGFn cyA9IGttb2RlLT5mbGFnczsgLy8mIEZMQUdfQklUUzsKPj4+Pj4gSSd2ZSBub3QgY2hlY2tlZCB3 aGF0IGRhbWFnZSBpdCBjYW4gYWN0dWFsbHkgY2F1c2UuCj4+Pj4+Cj4+Pj4+Cj4+Pj4+IEl0IGxv b2tzIGxpa2UgYSBmZXcgbW9kZXMgZGlzYXBwZWFyZWQgZnJvbSB0aGUga2VybmVsJ3MgbW9kZSBs aXN0Cj4+Pj4+IGFzIHdlbGwsIHByZXN1bWFibHkgYmVjYXVzZSBzb21lIGNlYSBtb2RlcyBpbiB0 aGUgbGlzdCBvcmlnaW5hdGVkIGZyb20KPj4+Pj4gRFREcyBhbmQgd2hhbm90IHNvIHRoZXkgZG9u J3QgaGF2ZSBhbiBhc3BlY3QgcmF0aW8gYW5kIHRoYXQgY2F1c2VzCj4+Pj4+IGFkZF9hbHRlcm5h dGVfY2VhX21vZGVzKCkgdG8gaWdub3JlIHRoZW0uIFNvIG5vdCBwb3B1bGF0aW5nIGFuIGFzcGVj dAo+Pj4+PiByYXRpbyBmb3IgY2VhIG1vZGVzIG9yaWdpbmF0aW5nIGZyb20gYSBzb3VyY2Ugb3Ro ZXIgdGhhbgo+Pj4+PiBlZGlkX2NlYV9tb2Rlc1tdIGxvb2tzIGxpa2UgYW5vdGhlciBidWcgdG8g bWUgYXMgd2VsbC4KPj4+PiBJIGFtIHdyaXRpbmcgYSBwYXRjaCBzZXJpZXMgdG8gY2FwIHRoZSBh c3BlY3QgcmF0aW8gaW1wbGVtZW50YXRpb24gdW5kZXIKPj4+PiBhIGRybV9jYXBfaGRtaTJfYXNw ZWN0X3JhdGlvcwo+Pj4+IFRoaXMgaXMgaG93IGl0cyBnb2luZyB0byB3b3JrIChpbnNwaXJlZCBm cm9tIHRoZSAyRC9zdGVyZW8gc2VyaWVzIGZyb20KPj4+PiBkYW1pZW4gTCkKPj4+Pgo+Pj4+IC0g QWRkIGEgbmV3IGNhcGFiaWxpdHkgaGRtaTJfYXIKPj4+IEl0IHNob3VsZCBiZSBqdXN0IGEgZ2Vu ZXJpYyAiZXhwb3NlIGFzcGVjdCByYXRpbyBmbGFncyB0byB1c2Vyc3BhY2U/Igo+PiBNYWtlcyBz ZW5zZSwgaW4gdGhpcyB3YXkgd2UgY2FuIGV2ZW4gcmV2ZXJ0IHRoZSBhc3BlY3RfcmF0aW8gcHJv cGVydHkKPj4gZm9yIEhETUkgY29ubmVjdG9yLCBhcyBkaXNjdXNzZWQgZHVyaW5nCj4+IHRoZSBj b2RlIHJldmlldyBzZXNzaW9ucyBvZiB0aGlzIHBhdGNoIHNlcmllcy4gSW4gdGhpcyB3YXksIHdo ZW4ga2VybmVsCj4+IHdpbGwgZXhwb3NlIHRoZSBhc3BlY3QgcmF0aW9zLCBpdCB3aWxsIGVpdGhl cgo+PiBkbyB0aGUgYXNwZWN0IHJhdGlvcyBhcyBwZXIgRURJRCwgb3Igd29udC4KPj4+PiAtIGJ5 IGRlZmF1bHQgcGFyc2luZyB0aGUgbmV3IGhkbWkgMi4wIGFzcGVjdCByYXRpbyB3aWxsIGJlIGRp c2FibGVkCj4+Pj4gdW5kZXIgY2hlY2sgb2YgdGhpcyBjYXAKPj4+PiAtIGR1cmluZyBib290dXAg dGltZSwgd2hpbGUgaW5pdGlhbGl6aW5nIHRoZSBkaXNwbGF5LCBhIHVzZXJzcGFjZSBjYW4KPj4+ PiBnZXRfY2FwIG9uIHRoZSBoZG1pMl9hc3BlY3RfcmF0aW8KPj4+PiAtIElmIGl0IHdhbnRzIEhE TUkgMi4wIGFzcGVjdCByYXRpbyBzdXBwb3J0LCBpdCB3aWxsIHNldCB0aGUgY2FwLCBhbmQKPj4+ PiBrZXJuZWwgd2lsbCBleHBvc2UgdGhlc2UgYXNwZWN0IHJhdGlvcwo+Pj4+PiBBbm90aGVyIGJ1 ZyBJIHRoaW5rIG1pZ2h0IGJlIHRoZSBvcmRlcmluZyBvZiB0aGUgbW9kZXMgd2l0aCBhc3BlY3Qg cmF0aW8KPj4+Pj4gc3BlY2lmaWVkLiBJSVJDIHRoZSBzcGVjIHNheXMgdGhhdCB0aGUgcHJlZmVy cmVkIGFzcGVjdCByYXRpbyBzaG91bGQgYmUKPj4+Pj4gbGlzdGVkIGZpcnN0IGluIHRoZSBFRElE LCBidXQgSSBkb24ndCB0aGluayB3ZSBwcmVzZXJ2ZSB0aGF0IG9yZGVyaW5nCj4+Pj4+IGluIHRo ZSBmaW5hbCBtb2RlIGxpc3QuIEkgZ3Vlc3Mgd2UgY291bGQgZml4IHRoYXQgYnkgc29tZWhvdyBu b3RpbmcKPj4+Pj4gd2hpY2ggYXNwZWN0IHJhdGlvIGlzIHByZWZlcnJlZCBhbmQgc29ydCBiYXNl ZCBvbiB0aGF0LCBvciB3ZSB0cnkgdG8KPj4+Pj4gcHJlc2VydmUgdGhlIG9yZGVyIGZyb20gdGhl IEVESUQgdW50aWwgd2UncmUgcmVhZHkgdG8gc29ydCwgYW5kIHRoZW4gZG8KPj4+Pj4gdGhlIHNv cnRpbmcgd2l0aCBhIHN0YWJsZSBhbGdvcml0aG0uCj4+Pj4gQUZBSUsgVGhlIG1vZGUgb3JkZXIg YW5kIHByaW9yaXR5IGlzIGRlY2lkZWQgYW5kIGFycmFuZ2VkIGluIHVzZXJzcGFjZSwKPj4+PiBi YXNlZCBvbiB2YXJpb3VzIGZhY3RvcnMgbGlrZQo+Pj4+IC0gcHJlZmVycmVkIG1vZGUuCj4+Pj4g LSBwcmV2aW91c2x5IGFwcGxpZWQgbW9kZSBpbiBwcmV2aW91cyBzZXNzaW9ucyAobGlrZSBmb3Ig YW5kcm9pZCB0dnMpCj4+Pj4gLSBCaWdnZXIgaC93IHZzIGJldHRlciByZWZyZXNoIHJhdGUgPwo+ Pj4+IC0gWHNlcnZlciBhcHBsaWVzIGl0cyBvd24gYWxnb3JpdGhtcyB0byBkZWNpZGUgd2hpY2gg bW9kZSBzaG91bGQgYmUKPj4+PiBzaG93biBmaXJzdC4KPj4+IFhvcmcgZG9lcyBzb3J0IG9uIGl0 cyBvd24uIEJ1dCBzaW5jZSBpdCBkb2Vzbid0IGtub3cgYW55dGhpbmcgYWJvdXQKPj4+IGFzcGVj dCByYXRpb3MgYW5kIHdoYXRub3QgSSB3b3VsZG4ndCByZWx5IG9uIHRoYXQgZm9yIGFueXRoaW5n LiBJCj4+PiBhbHNvIHdvdWxkbid0IGV4cGVjdCBlZy4gd2F5bGFuZCBjb21wb3NpdG9ycyB0byBk byB0aGVpciBvd24gc29ydGluZy4KPj4+IEFuZCB5ZWFoLCBsb29rcyBsaWtlIHdlc3RvbiBhdCBs ZWFzdCBkb2Vzbid0IGRvIGFueSBzb3J0aW5nIHdoYXRzb2V2ZXIuCj4+Pgo+Pj4+IEkgZG9udCB0 aGluayBrZXJuZWwgbmVlZHMgdG8gYm90aGVyIGFib3V0IGl0Lgo+Pj4gU28gSSdtIGdvaW5nIHRv IHNheSB0aGF0IHdlIGluIGZhY3QgZG8gbmVlZCB0byBib3RoZXIuCj4+Pgo+PiBJTUhPLCBtYWtp bmcgcG9saWNpZXMgZm9yIFVJIGlzIG5vdCBhIHBhcnQgb2Yga2VybmVsIGRlc2lnbiwgYSBVSQo+ PiBtYW5hZ2VyIChIYXJkd2FyZSBjb21wb3NlZCwgWCBvciBXYXlsYW5kKSBzaG91bGQgdGFrZSBj YXJlIG9mIGl0LCBhcwo+PiB0aGV5IGhhdmUgYWNjZXNzIHRvIG11Y2ggaW5mb3JtYXRpb24gKExp a2UgcHJldmlvdXNseSBhcHBsaWVkIG1vZGUsIHVzZXIKPj4gcHJlZmVyZW5jZSBldGMpLiBXaGVu IGl0IGNvbWVzIHRvIHNvcnRpbmcgb2YgbW9kZXMsIHRoZSBvbmx5IGdlbmVyYWwgcnVsZQo+PiBh Y3Jvc3MgZHJpdmVycyBsaWtlIEZCLCBWNEwyLCBJIGhhdmUgc2VlbiBpcyB0aGUgZmlyc3QgbW9k ZSBpbiB0aGUgbGlzdAo+PiBzaG91bGQgYmUgcHJlZmVycmVkIG1vZGUsIHdoaWNoIHdlIGFyZSBz dGlsbCBrZWVwaW5nLiBBbmQgYWZ0ZXIgdGhhdCBvdXIKPj4gcHJvYmVkX21vZGVzIHdlcmUKPj4g YW55d2F5cyBub3Qgc29ydGVkIG5vdywgc28gaXQgZG9lc24ndCBtYXR0ZXIgZnVydGhlci4KPiBI YXZpbmcgdXNlcnNwYWNlIGJlIHJlc3BvbnNpYmxlIGZvciBzb3J0aW5nIHRoZSBhc3BlY3QgcmF0 aW9zIHdvdWxkCj4gcGVyaGFwcyByZXF1aXJlIHRoYXQgdXNlcnNwYWNlIHBhcnNlcyB0aGUgRURJ RCwgd2hpY2ggaXMgcHJldHR5IGNyYXp5LgpXaHkgPwp1c2Vyc3BhY2UgaGFzIHRvIGp1c3Qgc2V0 IGNhcCBmb3IgYXNwZWN0IHJhdGlvLCBhbmQga2VybmVsIGNhbiByZWFkIApFRElELCBwYXJzZSB0 aGUgQ0VBIGJsb2NrLCBwb3B1bGF0ZSB0aGUgYXNwZWN0IHJhdGlvcyBmbGFncwphbmQgYWRkIHRo ZSBtb2RlcyAoSnVzdCB3aGF0IHRoaXMgcGF0Y2ggd2FzIGRvaW5nLCBleGNlcHQgdGhlIGNhcCBw YXJ0KQpPbmNlIHVzZXJzcGFjZSBoYXMgdGhlIGdldFJlc291cmNlcy9nZXRDb25uZWN0b3IgY2Fs bCBmaWxsZWQsIGl0IGNhbiAKYWNjZXNzIGFsbCB0aGUgbW9kZXMgKHdpdGggYW5kIHdpdGhvdXQg YXNwZWN0KSBhbmQgZG8gdGhlIHNvcnRpbmcKaW4gYW55IHdheSBpdCB3YW50cy4KPiBJIGd1ZXNz IGl0IGNvdWxkIHRyeSB0byBkZWR1Y2Ugc29tZXRoaW5nIGZyb20gdGhlIHBoeXNpY2FsIGFzcGVj dCByYXRpbwo+IG9mIHRoZSBkaXNwbGF5LCBidXQgSSdtIG5vdCBzdXJlIHRoYXQncyBxdWl0ZSB3 aGF0IHdlIHdhbnQgZWl0aGVyLgo+Cj4gQWxzbyB3ZSBhbHJlYWR5IHNvcnQgdGhlIG1vZGVzIGlu IHRoZSBrZXJuZWwgYW55d2F5LCBzbyBpdCdzIG5vdCBsaWtlCj4gd2UnZCBiZSBkb2luZyBzb21l dGhpbmcgbmV3IGJ5IGFsc28gY29uc2lkZXJpbmcgdGhlIGFzcGVjdCByYXRpb3MuCj4gSSB3b3Vs ZCBhdCB0aGUgdmVyeSBsZWFzdCB3YW50IHRvIGF2b2lkIGEgdG90YWxseSByYW5kb20gb3JkZXIg YmV0d2Vlbgo+IG1vZGVzIHRoYXQgZGlmZmVyIG9ubHkgYnkgdGhlIGFzcGVjdCByYXRpby4KUGF0 aDogZ2V0X2Nvbm5lY3RvciAtPiBwcm9iZV9zaW5nbGVfY29ubmVjdG9yX21vZGUgLT4gZHJtX2Fk ZF9lZGlkX21vZGVzCkFnYWluLCBJTUhPLCB3ZSBkb24ndCBzb3J0IHRoZSBtb2RlcyBpbiBrZXJu ZWwsIHdlIHBvcHVsYXRlIG1vZGVzIGluIGEgCnBhcnRpY3VsYXIgb3JkZXIsIHdoaWNoIGlzOgoo RnJvbSBkcm1fZWRpZC5jOjpkcm1fYWRkX2VkaWRfbW9kZXMpCiMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi8qCiAgICAgICogRURJ RCBzcGVjIHNheXMgbW9kZXMgc2hvdWxkIGJlIHByZWZlcnJlZCBpbiB0aGlzIG9yZGVyOgogICAg ICAqIC0gcHJlZmVycmVkIGRldGFpbGVkIG1vZGUKICAgICAgKiAtIG90aGVyIGRldGFpbGVkIG1v ZGVzIGZyb20gYmFzZSBibG9jawogICAgICAqIC0gZGV0YWlsZWQgbW9kZXMgZnJvbSBleHRlbnNp b24gYmxvY2tzCiAgICAgICogLSBDVlQgMy1ieXRlIGNvZGUgbW9kZXMKICAgICAgKiAtIHN0YW5k YXJkIHRpbWluZyBjb2RlcwogICAgICAqIC0gZXN0YWJsaXNoZWQgdGltaW5nIGNvZGVzCiAgICAg ICogLSBtb2RlcyBpbmZlcnJlZCBmcm9tIEdURiBvciBDVlQgcmFuZ2UgaW5mb3JtYXRpb24KICAg ICAgKgogICAgICAqIFdlIGdldCB0aGlzIHByZXR0eSBtdWNoIHJpZ2h0LgogICAgICAqCiAgICAg ICogWFhYIG9yZGVyIGZvciBhZGRpdGlvbmFsIG1vZGUgdHlwZXMgaW4gZXh0ZW5zaW9uIGJsb2Nr cz8KICAgICAgKi8KICAgICBudW1fbW9kZXMgKz0gYWRkX2RldGFpbGVkX21vZGVzKGNvbm5lY3Rv ciwgZWRpZCwgcXVpcmtzKTsKICAgICBudW1fbW9kZXMgKz0gYWRkX2N2dF9tb2Rlcyhjb25uZWN0 b3IsIGVkaWQpOwogICAgIG51bV9tb2RlcyArPSBhZGRfc3RhbmRhcmRfbW9kZXMoY29ubmVjdG9y LCBlZGlkKTsKICAgICBudW1fbW9kZXMgKz0gYWRkX2VzdGFibGlzaGVkX21vZGVzKGNvbm5lY3Rv ciwgZWRpZCk7CiAgICAgbnVtX21vZGVzICs9IGFkZF9jZWFfbW9kZXMoY29ubmVjdG9yLCBlZGlk KTsKICAgICBudW1fbW9kZXMgKz0gYWRkX2FsdGVybmF0ZV9jZWFfbW9kZXMoY29ubmVjdG9yLCBl ZGlkKTsKICAgICBudW1fbW9kZXMgKz0gYWRkX2Rpc3BsYXlpZF9kZXRhaWxlZF9tb2Rlcyhjb25u ZWN0b3IsIGVkaWQpOwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMKCkhlcmUgdGhlIG1vZGVzIGFyZSBhZGRlZCBpbiB0aGUgY29u bmVjdG9yLCBpbiB0aGUgc2FtZSBvcmRlciB0aGV5IGFyZSAKYXJyYW5nZWQgaW50byB0aGVpciBy ZXNwZWN0aXZlIGJsb2NrcyBpbiBFRElELgpCdXQgdGhlIG9yZGVyIHRvIHJlYWQgdGhlIGJsb2Nr IGlzIGEgcHJlZmVycmVkIG9yZGVyIChubyBzb3J0aW5nKS4KCk5vdywgaW4gdGhpcyBwYXRjaCBz ZXJpZXMsIHdlIGFyZSBhZGRpbmcgYXNwZWN0IHJhdGlvIGluZm9ybWF0aW9uIGluIAplZGlkX2Nl YV9tb2RlcyBkYiwgd2hpY2ggaXMgZ29pbmcgdG8gYWZmZWN0IG9ubHkgCmFkZF9jZWEvYWx0ZXJu YXRlX2NlYV9tb2RlcygpIGNhbGwsIGFuZCB0aGUgbW9kZXMgYWNjb3JkaW5nbHkuClBsZWFzZSBs ZXQgbWUga25vdyBpZiBJIG1pc3VuZGVyc3Rvb2Qgc29tZXRoaW5nIGhlcmUuCgpSZWdhcmRzClNo YXNoYW5rCj4+IElmIFggc2VydmVyIGRvZXNuJ3Qga25vdyB3aGF0IHRvIGRvIHdpdGggYXNwZWN0 IHJhdGlvIGZsYWdzLCBpdCBjYW4KPj4gY2hvc2Ugbm90IHRvIHNldCB0aGUgY2FwLCBhbmQgaWYg SFdDIGtub3dzLCBpdCBjYW4gY2hvc2UgdG8gc2V0LiBUaGlzIGlzCj4+IHRoZSBzYW1lIHNpdHVh dGlvbiBhcyAyRCBzdGVyZW8gbW9kZXMKPj4gd2hpY2ggYXJlIGV4aXN0aW5nIGFscmVhZHkuCj4+ Cj4+IFJlZ2FyZHMKPj4gU2hhc2hhbmsKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2RyaS1kZXZlbAo=