From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v4 2/4] drm: Add aspect ratio parsing in DRM layer Date: Mon, 17 Oct 2016 18:00:43 +0300 Message-ID: <20161017150043.GV4329@intel.com> References: <1476705880-15600-1-git-send-email-shashank.sharma@intel.com> <1476705880-15600-3-git-send-email-shashank.sharma@intel.com> <20161017123159.GP4329@intel.com> <4244f1c9-e6cb-3fbb-c119-cd667fb4570d@intel.com> <20161017140612.GR4329@intel.com> <61e861d5-282e-7860-e125-d75b563a3285@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <61e861d5-282e-7860-e125-d75b563a3285@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Sharma, Shashank" Cc: Jose.Abreu@synopsys.com, Daniel Vetter , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, tomi.valkeinen@ti.com, daniel.vetter@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBPY3QgMTcsIDIwMTYgYXQgMDg6MjE6MjFQTSArMDUzMCwgU2hhcm1hLCBTaGFzaGFu ayB3cm90ZToKPiBSZWdhcmRzCj4gCj4gU2hhc2hhbmsKPiAKPiAKPiBPbiAxMC8xNy8yMDE2IDc6 MzYgUE0sIFZpbGxlIFN5cmrDpGzDpCB3cm90ZToKPiA+IE9uIE1vbiwgT2N0IDE3LCAyMDE2IGF0 IDA3OjEwOjQyUE0gKzA1MzAsIFNoYXJtYSwgU2hhc2hhbmsgd3JvdGU6Cj4gPj4gUmVnYXJkcwo+ ID4+Cj4gPj4gU2hhc2hhbmsKPiA+Pgo+ID4+Cj4gPj4gT24gMTAvMTcvMjAxNiA2OjAxIFBNLCBW aWxsZSBTeXJqw6Rsw6Qgd3JvdGU6Cj4gPj4+IE9uIE1vbiwgT2N0IDE3LCAyMDE2IGF0IDA1OjM0 OjM4UE0gKzA1MzAsIFNoYXNoYW5rIFNoYXJtYSB3cm90ZToKPiA+Pj4+IEN1cnJlbnQgRFJNIGxh eWVyIGZ1bmN0aW9ucyBkb24ndCBwYXJzZSBhc3BlY3QgcmF0aW8gaW5mb3JtYXRpb24KPiA+Pj4+ IHdoaWxlIGNvbnZlcnRpbmcgYSB1c2VyIG1vZGUtPmtlcm5lbCBtb2RlIG9yIHZpY2UgdmVyc2Eu IFRoaXMKPiA+Pj4+IGNhdXNlcyBtb2Rlc2V0IHRvIHBpY2sgbW9kZSB3aXRoIHdyb25nIGFzcGVj dCByYXRpbywgZXZlbnR1YWxseQo+ID4+Pj4gY2F1c2luZyBmYWlsdXJlcyBpbiBIRE1JIGNvbXBs aWFuY2UgdGVzdCBjYXNlcywgZHVlIHRvIHdyb25nIFZJQy4KPiA+Pj4+Cj4gPj4+PiBUaGlzIHBh dGNoIGFkZHMgYXNwZWN0IHJhdGlvIGluZm9ybWF0aW9uIGluIERSTSdzIG1vZGUgY29udmVyc2lv bgo+ID4+Pj4gYW5kIG1vZGUgY29tcGFyaXNpb24gZnVuY3Rpb25zLCB0byBtYWtlIHN1cmUga2Vy bmVsIHBpY2tzIG1vZGUKPiA+Pj4+IHdpdGggcmlnaHQgYXNwZWN0IHJhdGlvIChhcyBwZXIgdGhl IFZJQykuCj4gPj4+Pgo+ID4+Pj4gU2lnbmVkLW9mZi1ieTogU2hhc2hhbmsgU2hhcm1hIDxzaGFz aGFuay5zaGFybWFAaW50ZWwuY29tPgo+ID4+Pj4gU2lnbmVkLW9mZi1ieTogTGluLCBKaWEgPGxp bi5hLmppYUBpbnRlbC5jb20+Cj4gPj4+PiBTaWduZWQtb2ZmLWJ5OiBBa2FzaGRlZXAgU2hhcm1h IDxha2FzaGRlZXAuc2hhcm1hQGludGVsLmNvbT4KPiA+Pj4+IFJldmlld2VkLWJ5OiBKaW0gQnJp ZGUgPGppbS5icmlkZUBsaW51eC5pbnRlbC5jb20+Cj4gPj4+PiBSZXZpZXdlZC1ieTogSm9zZSBB YnJldSA8Sm9zZS5BYnJldUBzeW5vcHN5cy5jb20+Cj4gPj4+PiBDYzogRGFuaWVsIFZldHRlciA8 ZGFuaWVsLnZldHRlckBmZndsbC5jaD4KPiA+Pj4+IENjOiBFbWlsIFZlbGlrb3YgPGVtaWwubC52 ZWxpa292QGdtYWlsLmNvbT4KPiA+Pj4+Cj4gPj4+PiBWMjogQWRkcmVzc2VkIHJldmlldyBjb21t ZW50cyBmcm9tIFNlYW46Cj4gPj4+PiAtIEZpeCBzcGVsbGluZ3MvdHlwbwo+ID4+Pj4gLSBObyBu ZWVkIHRvIGhhbmRsZSBhc3BlY3QgcmF0aW8gbm9uZQo+ID4+Pj4gLSBBZGQgYSBicmVhaywgZm9y IGRlZmF1bHQgY2FzZSB0b28KPiA+Pj4+IFYzOiBSZWJhc2UKPiA+Pj4+IFY0OiBBZGRlZCByLWIg ZnJvbSBKb3NlCj4gPj4+PiAtLS0KPiA+Pj4+ICAgIGRyaXZlcnMvZ3B1L2RybS9kcm1fbW9kZXMu YyB8IDMxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiA+Pj4+ICAgIDEgZmlsZSBj aGFuZ2VkLCAzMSBpbnNlcnRpb25zKCspCj4gPj4+Pgo+ID4+Pj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fbW9kZXMuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fbW9kZXMuYwo+ID4+ Pj4gaW5kZXggNTNmMDdhYy4uZmRlOTI3YSAxMDA2NDQKPiA+Pj4+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9kcm1fbW9kZXMuYwo+ID4+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9tb2Rlcy5j Cj4gPj4+PiBAQCAtOTk3LDYgKzk5Nyw3IEBAIGJvb2wgZHJtX21vZGVfZXF1YWxfbm9fY2xvY2tz X25vX3N0ZXJlbyhjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZTEsCj4gPj4+PiAg ICAJICAgIG1vZGUxLT52c3luY19lbmQgPT0gbW9kZTItPnZzeW5jX2VuZCAmJgo+ID4+Pj4gICAg CSAgICBtb2RlMS0+dnRvdGFsID09IG1vZGUyLT52dG90YWwgJiYKPiA+Pj4+ICAgIAkgICAgbW9k ZTEtPnZzY2FuID09IG1vZGUyLT52c2NhbiAmJgo+ID4+Pj4gKwkgICAgbW9kZTEtPnBpY3R1cmVf YXNwZWN0X3JhdGlvID09IG1vZGUyLT5waWN0dXJlX2FzcGVjdF9yYXRpbyAmJgo+ID4+Pj4gICAg CSAgICAobW9kZTEtPmZsYWdzICYgfkRSTV9NT0RFX0ZMQUdfM0RfTUFTSykgPT0KPiA+Pj4+ICAg IAkgICAgIChtb2RlMi0+ZmxhZ3MgJiB+RFJNX01PREVfRkxBR18zRF9NQVNLKSkKPiA+Pj4+ICAg IAkJcmV0dXJuIHRydWU7Cj4gPj4+PiBAQCAtMTQ5OSw2ICsxNTAwLDIxIEBAIHZvaWQgZHJtX21v ZGVfY29udmVydF90b191bW9kZShzdHJ1Y3QgZHJtX21vZGVfbW9kZWluZm8gKm91dCwKPiA+Pj4+ ICAgIAlvdXQtPnZyZWZyZXNoID0gaW4tPnZyZWZyZXNoOwo+ID4+Pj4gICAgCW91dC0+ZmxhZ3Mg PSBpbi0+ZmxhZ3M7Cj4gPj4+PiAgICAJb3V0LT50eXBlID0gaW4tPnR5cGU7Cj4gPj4+PiArCW91 dC0+ZmxhZ3MgJj0gfkRSTV9NT0RFX0ZMQUdfUElDX0FSX01BU0s7Cj4gPj4+PiArCj4gPj4+PiAr CXN3aXRjaCAoaW4tPnBpY3R1cmVfYXNwZWN0X3JhdGlvKSB7Cj4gPj4+PiArCWNhc2UgSERNSV9Q SUNUVVJFX0FTUEVDVF80XzM6Cj4gPj4+PiArCQlvdXQtPmZsYWdzIHw9IERSTV9NT0RFX0ZMQUdf UElDX0FSXzRfMzsKPiA+Pj4+ICsJCWJyZWFrOwo+ID4+Pj4gKwljYXNlIEhETUlfUElDVFVSRV9B U1BFQ1RfMTZfOToKPiA+Pj4+ICsJCW91dC0+ZmxhZ3MgfD0gRFJNX01PREVfRkxBR19QSUNfQVJf MTZfOTsKPiA+Pj4+ICsJCWJyZWFrOwo+ID4+Pj4gKwljYXNlIEhETUlfUElDVFVSRV9BU1BFQ1Rf UkVTRVJWRUQ6Cj4gPj4+PiArCWRlZmF1bHQ6Cj4gPj4+PiArCQlvdXQtPmZsYWdzIHw9IERSTV9N T0RFX0ZMQUdfUElDX0FSX05PTkU7Cj4gPj4+PiArCQlicmVhazsKPiA+Pj4+ICsJfQo+ID4+Pj4g Kwo+ID4+Pj4gICAgCXN0cm5jcHkob3V0LT5uYW1lLCBpbi0+bmFtZSwgRFJNX0RJU1BMQVlfTU9E RV9MRU4pOwo+ID4+Pj4gICAgCW91dC0+bmFtZVtEUk1fRElTUExBWV9NT0RFX0xFTi0xXSA9IDA7 Cj4gPj4+PiAgICB9Cj4gPj4+PiBAQCAtMTU0NCw2ICsxNTYwLDIxIEBAIGludCBkcm1fbW9kZV9j b252ZXJ0X3Vtb2RlKHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICpvdXQsCj4gPj4+PiAgICAJc3Ry bmNweShvdXQtPm5hbWUsIGluLT5uYW1lLCBEUk1fRElTUExBWV9NT0RFX0xFTik7Cj4gPj4+PiAg ICAJb3V0LT5uYW1lW0RSTV9ESVNQTEFZX01PREVfTEVOLTFdID0gMDsKPiA+Pj4+ICAgIAo+ID4+ Pj4gKwkvKiBDbGVhcmluZyBwaWN0dXJlIGFzcGVjdCByYXRpbyBiaXRzIGZyb20gb3V0IGZsYWdz ICovCj4gPj4+PiArCW91dC0+ZmxhZ3MgJj0gfkRSTV9NT0RFX0ZMQUdfUElDX0FSX01BU0s7Cj4g Pj4+PiArCj4gPj4+PiArCXN3aXRjaCAoaW4tPmZsYWdzICYgRFJNX01PREVfRkxBR19QSUNfQVJf TUFTSykgewo+ID4+Pj4gKwljYXNlIERSTV9NT0RFX0ZMQUdfUElDX0FSXzRfMzoKPiA+Pj4+ICsJ CW91dC0+cGljdHVyZV9hc3BlY3RfcmF0aW8gfD0gSERNSV9QSUNUVVJFX0FTUEVDVF80XzM7Cj4g Pj4+PiArCQlicmVhazsKPiA+Pj4+ICsJY2FzZSBEUk1fTU9ERV9GTEFHX1BJQ19BUl8xNl85Ogo+ ID4+Pj4gKwkJb3V0LT5waWN0dXJlX2FzcGVjdF9yYXRpbyB8PSBIRE1JX1BJQ1RVUkVfQVNQRUNU XzE2Xzk7Cj4gPj4+PiArCQlicmVhazsKPiA+Pj4+ICsJZGVmYXVsdDoKPiA+Pj4+ICsJCW91dC0+ cGljdHVyZV9hc3BlY3RfcmF0aW8gPSBIRE1JX1BJQ1RVUkVfQVNQRUNUX05PTkU7Cj4gPj4+PiAr CQlicmVhazsKPiA+Pj4+ICsJfQo+ID4+PiBIbW0uIFNvIG5vdyB3ZSBoYXZlIHRoZSBtb2RlIGFz cGVjdCByYXRpbyBpbmZyb21hdGlvbiBkdXBsaWNhdGVkCj4gPj4+IGluIHR3byBkaWZmZXJlbnQg cGxhY2VzLiBOb3Qgc3VyZSB0aGF0IHdvbid0IGxlYWQgdG8gc29tZSBjb25mdXNpb24uCj4gPj4g SW4gZHJtIGxheWVyLCB0aGlzIGlzIHRoZSBvbmx5IHBsYWNlLiBBY3R1YWxseSB0aWxsIG5vdywg RFJNIGxheWVyIGRpbnQKPiA+PiBoYXZlIHRoZSBzdXBwb3J0IGZvciBhc3BlY3QgcmF0aW8gYXQg YWxsLiBUaGlzIHdhcyBjYXVzaW5nCj4gPj4gSERNSSBjb21wbGlhbmNlIHRlc3RzIGxpa2UgNy0y NyBmYWlsLCB3aGljaCBleHBlY3QgYSBwYXJ0aWN1bGFyIHVuaXF1ZQo+ID4+IFZJQyBpbiBBVkkg aW5mb2ZyYW1lIG9uIG1vZGVzZXQuCj4gPj4KPiA+PiBJIGhhdmUgZ2l2ZW4gc29tZSBkZXRhaWxz IGFib3V0IHRoaXMgaW4gY292ZXItbGV0dGVyLgo+ID4+PiBBbHRob3VnaCB3ZSBkbyB3YW50IHRo ZSB1c2VyIHRvIGJlIGFibGUgdG8gb3ZlcnJpZGUgdmlhIHRoZSBwcm9wZXJ0eSBJCj4gPj4+IHN1 cHBvc2UsIHNvIHdlJ2QgaGF2ZSB0byBjaGFuZ2UgdGhhdCAoKyB0aGUgaW5mb3JmcmFtZSBjb2Rl KSB0bwo+ID4+PiBsb29rIGF0IHRoZSBtb2RlIGZsYWdzIGluc3RlYWQgaWYgd2Ugd291bGQgZWxp bWluYXRlCj4gPj4+ICdwaWN0dXJlX2FzcGVjdF9yYXRpbycuCj4gPj4gSSBoYWQgYSBzbWFsbCBk aXNjdXNzaW9uIG9uIHRoaXMgd2l0aCBEYW5pZWwsIGFuZCB3ZSBkaXNjdXNzZWQgdGhhdCBpdAo+ ID4+IGRvZXNudCBtYWtlIHNlbnNlIHRvIG92ZXJyaWRlIGp1c3QgdGhlIGFzcGVjdCByYXRpbyBp ZiB0aGUgbW9uaXRvcgo+ID4+IGRvZXNuJ3QgZXZlbiBzdXBwb3J0IHRoYXQgYXNwZWN0IHJhdGlv Lgo+ID4+IEFuZCBjdXJyZW50bHkgdGhlIHdhcyBob3cgdGhpcyBwcm9wZXJ0eSBpcyBpbXBsZW1l bnRlZCBpcywgd2UganVzdAo+ID4+IG92ZXJyaWRlIHRoZSBhc3BlY3QgcmF0aW8gd2l0aG91dCBh bnkgdmFsaWRpdHkgY2hlY2suCj4gPj4KPiA+PiBOb3cgYXMgd2UgaGF2ZSBhbGwgdGhlIHN1cHBv cnRlZCBhc3BlY3QgcmF0aW8gYWRkZWQgcHJvcGVybHkgaW4gdGhlIG1vZGUKPiA+PiBpbmZvIGl0 c2VsZiwgd2UgbmVlZCBub3QgdG8gaGF2ZSB0aGlzIHByb3BlcnR5IGF0IGFsbCwgU28gRGFuaWVs Cj4gPj4gc3VnZ2VzdGVkIG1lIHRvIHJlbW92ZSB0aGF0IHByb3BlcnR5IHRvby4KPiA+Pj4gQW5k IHRoYXQgYnJpbmdzIG1lIHRvIHRoZSBvdGhlciBwb2ludC4gQXQgbGVhc3QgaTkxNSB3aWxsIHNp bXBseQo+ID4+PiBvdmVycmlkZSB0aGUgbW9kZSdzIGFzcGVjdCByYXRpb24gd2l0aCB0aGUgcHJv cGVydHkuIFNvIHRoaXMgbG9va3MgbGlrZQo+ID4+PiBhIGJpZyBuby1vcCBmb3Igbm93IG9uIGk5 MTUuCj4gPj4gWWVzLCBUaGlzIGlzIGEgYnVnIGluIEk5MTUuIFdoZW4gSSBwdWJsaXNoZWQgdGhl IGZpcnN0IHZlcnNpb24gb2YgdGhpcwo+ID4+IHNlcmllcywgSSBoYWQgb25lIHBhdGNoLCB3aGlj aCB3YXMgb3ZlcnJpZGluZyB0aGUgdmFsdWUgb25seSB3aGVuIHRoZQo+ID4+IHByb3BlcnR5IGlz IHNldC4KPiA+PiBUaGlzIHNob3VsZCBiZSB0aGUgcmlnaHQgY2FzZS4gQW5kIHRoZW4gRGFuaWVs IHN1Z2dlc3RlZCB0byByZW1vdmUgdGhlCj4gPj4gcHJvcGVydHkgYWxsIHRvZ2V0aGVyIChhbmQg aXQgbWFrZXMgc2Vuc2UgYXMgd2UgaGF2ZSBwcm9wZXIgYXNwZWN0Cj4gPj4gcmF0aW9zIGluIG1v ZGUgaW5mb3JtYXRpb24KPiA+PiBpdHNlbGYpIFNvIEkga2VwdCB0aGF0IHBhdGNoIHNlcGFyYXRl LCB0byBiZSBtZXJnZWQgc2VwYXJhdGVseS4KPiA+IFllYWgsIHJlbW92aW5nIHRoZSBwcm9wZXJ0 eSBlbnRpcmVseSBzZWVtcyBsaWtlIGFuIE9LaXNoIHNvbHV0aW9uIHNpbmNlCj4gPiB1c2Vyc3Bh Y2UgY2FuIGp1c3Qgc3R1ZmYgdGhhdCBpbmZvcm1hdGlvbiBpbnRvIHRoZSBtb2RlIGZsYWdzIGlu c3RlYWQuCj4gPiBUaGUgb25seSBzbGlnaHQgY29uY2VybiBpcyB0aGF0IHNvbWVvbmUncyBzZXR1 cCBtaWdodCBkZXBlbmQgb24gdGhlCj4gPiBwcm9wZXJ0eSwgYW5kIG5vdyB3ZSdyZSByZW1vdmlu ZyBpdC4KPiBUaGFua3MsIHdpbGwgc2VuZCB0aGUgcGF0Y2ggZm9yIGl0IHNvb24sIGFkZGluZyB5 b3UgaW4gdGhlIG1haWwgY2hhaW4uCj4gPj4+ICAgIEl0J3MgbG9va2luZyBsaWtlIHdlIG1pZ2h0 IG5lZWQgYSBuZXcKPiA+Pj4gcHJvcGV0dHkgdmFsdWUgdG8gZGlmZmVyZW50aWF0ZSBiZXR3ZWVu ICJhdXRvIiBhbmQgIm5vbmUiIGZvciByZWFsLgo+ID4+IE5vdyB3ZSBoYXZlIHRoZSBleGFjdCBh c3BlY3QgcmF0aW8gZ2l2ZW4gYnkgbW9uaXRvciBFRElELCBzbyBJTUhPIGl0Cj4gPj4gd291bGQg YmUgYmV0dGVyIGlmIHdlIGNhbiBqdXN0IGhhdmUgcmVhbCBhc3BlY3QuCj4gPiBXZWxsLCAicmVh bCIgaXNuJ3QgcXVpdGUgdGhlIHJpZ2h0IHRlcm0uIEl0J3Mgc3RpbGwgYSB1c2VyIHNwZWNpZmll ZAo+ID4gdGhpbmcsIHdoaWNoIG1lYW5zIHRoZSB1c2VyIGNhbiBhc2sgZm9yIHNvbWVodGluZyB0 aGUgZGlzcGxheSBkaWRuJ3QKPiA+IGV2ZW4gYWR2ZXJ0aXNlLiBXaGljaCBpcyBmaW5lIGFzIHN1 Y2gsIGhvd2V2ZXIgc2luY2UgdGhlIEFWSSBpbmZvZnJhbWUKPiA+IGxhY2tzIHRoZSBjYXBhYmls aXR5IHRvIHRyYW5zbWl0IHRoZXNlIG5ldyBhc3BlY3QgcmF0aW9zIHdlIGhhdmUgYSBiaXQKPiA+ IG9mIHByb2JsZW0gb24gb3VyIGhhbmRzIGlmIHRoZSB1c2VyIGFza3MgZm9yIHNvbWV0aGluZyB3 ZSBjYW4ndCBldmVuCj4gPiB0ZWxsIHRoZSBkaXNwbGF5IHRvIGRvLiBJIGd1ZXNzIHdlIHdvdWxk IGp1c3QgbmVlZCB0byByZXR1cm4gYW4gZXJyb3IKPiA+IHRvIHRoZSB1c2VyIGluIHRoYXQgY2Fz ZS4KPiBUaGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiB3aGljaCB3ZSBoYXZlIGluIGFuZG9yb2lk LCBpcyBoYXJkd2FyZSAKPiBjb21wb3NlciBzaG93cyB0aGUgd2hvbGUgbW9kZSBpbiB0aGUgbGlz dCBsaWtlOgo+IC0gMTkyMHgxMDgwQDYwIDE2OjkgICAgLyogRnJvbSBDRUEgYmxvY2sgb2YgRURJ RCAqLwo+IC0gMTkyMHgxMDgwQDYwIDA6MCAgICAgICAgLyogRnJvbSBkZXRhaWxlZCBkZXNjcmlw dG9yIGJsb2NrIG9mIEVESUQgKi8KPiAtIDEyODB4NzIwQDYwIDQ6MyAgICAgICAgICAvKiBGcm9t IENFQSBibG9jayBvZiBFRElEICovCj4gLWV0Ywo+IFRoZXNlIG1vZGUgaXMgdGhlIGNvbm5lY3Rv ci0+cHJvYmVkX21vZGVzIHdoaWNoIHdlIHBvcHVsYXRlZCB3aGlsZSAKPiBwYXJzaW5nIHRoZSBF RElELgo+IE5vdywgd2hlbiB1c2VyIHNlbGVjdHMgdGhlIG1vZGUsIGl0cyBhIGNvbXBsZXRlIHNl dCBvZiByZXNvbHV0aW9uICsgCj4gcmVmcmVzaCByYXRlICsgYXNwZWN0IHJhdGlvLCBzbyB1c2Vy IGNhbiBvbmx5IHBpY2sgd2hhdAo+IHdlIGFyZSBzaG93aW5nIHRvIGl0LiBJbiB0aGlzIGNhc2Us IHRoZXJlIGlzIG5vIG9wdGlvbiB3aGljaCB3ZSBjYW50IAo+IHN1cHBvcnQuCj4gCj4gRG8geW91 IHRoaW5rIHRoYXQgdGhlcmUgd291bGQgYmUgc29tZSBvdGhlciBtb2RlbCBvZiB1c2UgY2FzZSwg d2hlcmUgd2UgCj4gY2FuIG1peCBzb21ldGhpbmcgYW1vbmcgdGhlc2U/CgpZb3UgY2FuJ3QgYXNz dW1lIHRoZSB1c2VyIGp1c3QgcGlja3MgdGhlIG1vZGUgb2ZmIHRoZSBsaXN0LiBUaGV5IGNhbgpz dHVmZiB3aGF0ZXZlciByYW5kb20gZ2FyYmFnZSBpbnRvIHRoZSBtb2RlIGlmIHRoZXkgd2lzaC4K Ci0tIApWaWxsZSBTeXJqw6Rsw6QKSW50ZWwgT1RDCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2ludGVsLWdmeAo=