From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ilia Mirkin Subject: Re: [PATCH] Add Option "DRI3" to allow to disable DRI3 under EXA. Date: Fri, 24 Jul 2015 11:40:11 -0400 Message-ID: References: <1435635043-3738-1-git-send-email-mario.kleiner.de@gmail.com> <55A48575.5060100@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <55A48575.5060100-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: Mario Kleiner Cc: "nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" , Emil Velikov , Ben Skeggs List-Id: nouveau.vger.kernel.org SGVyZSdzIGFuIGV4YW1wbGUgb2Ygd2hhdCBoYXBwZW5zIHdpdGggRFJJMzoKaHR0cHM6Ly9idWdz LmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTE0NDUKCkknbSBub3QgZXF1aXBwZWQg dG8gZmlndXJlIG91dCB3aHkuCgpPbiBNb24sIEp1bCAxMywgMjAxNSBhdCAxMTo0MyBQTSwgTWFy aW8gS2xlaW5lcgo8bWFyaW8ua2xlaW5lci5kZUBnbWFpbC5jb20+IHdyb3RlOgo+IE9uIDA3LzA3 LzIwMTUgMDk6NTEgUE0sIElsaWEgTWlya2luIHdyb3RlOgo+Pgo+PiBMYXN0bHksIGZyb20gc29t ZSBkaXNjdXNzaW9ucyB3aXRoIGFqYXggb24gSVJDLCBpdCBhcHBlYXJzIHRoYXQgRFJJMwo+PiBp cyBoYWxmLWJha2VkIGF0IGJlc3Qgd3J0IHN5bmMgYmV0d2VlbiBzZXJ2ZXIgYW5kIGNsaWVudC4g SSB0aGluayB3ZQo+PiBzaG91bGQganVzdCBkaXNhYmxlIGl0IGJ5IGRlZmF1bHQgZm9yIG5vdywg dW50aWwgaXNzdWVzIGFyZSBpcm9uZWQKPj4gb3V0LiAoUmF0aGVyIHRoYW4gd2hhdCB0aGlzIHBh dGNoIGhhcywgd2hpY2ggaXMgZGVmYXVsdC1vbiBmb3IgWG9yZyA+Cj4+IHNvbWUgdmVyc2lvbi4p Cj4KPgo+IFdoYXQgYXJlIHRoZSByZW1haW5pbmcga25vd24gdHJvdWJsZSBzcG90cyB3cnQuIHN5 bmM/IEl0IHNlZW1zIHRvIHdvcmsKPiBwcmV0dHkgd2VsbCBhdCBsZWFzdCBmb3Igc2luZ2xlIGdw dSArIHVucmVkaXJlY3RlZCBmdWxsc2NyZWVuIHdpbmRvd3MgKD09Cj4ga21zIHBhZ2UgZmxpcHBp bmcgY2FuIGJlIHVzZWQgZm9yIFByZXNlbnRzLiBUaGF0J3MgdGhlIHVzZSBjYXNlIGkgdXN1YWxs eQo+IHRlc3QgdmVyeSBvYnNlc3NpdmVseSwgYXMgaXQgbWF0dGVycyB2ZXJ5IG11Y2ggZm9yIG15 IHR5cGUgb2YgYXBwbGljYXRpb25zLAo+IGJ1dCBvdGhlciB0aGFuIHRoYXQgaSBvbmx5IGxpZ2h0 bHkgInRlc3QiIGl0IHZpYSByZWd1bGFyIGRlc2t0b3AgdXNlLCBzbwo+IG1heWJlIHRoYXQncyB3 ZXJlIHByb2JsZW1zIHJlbWFpbj8KPgo+IFdlIGNhbiBkaXNhYmxlIGl0IGJ5IGRlZmF1bHQgb24g ZXhhIC0gaW50ZWwgYW5kIGFtZC9yYWRlb24gZHJpdmVycyBhbHNvCj4gZGlzYWJsZSBieSBkZWZh dWx0LiBIb3dldmVyLCBvbiBncHVzID49IG1heHdlbGwgb25seSBnbGFtb3IgYWNjZWwgaXMKPiBz dXBwb3J0ZWQgYW5kIGdsYW1vciBvbiBub3V2ZWF1IGlzIGVpdGhlciBkcmkzL3ByZXNlbnQgb3Ig bm8gaHcgYWNjZWwgYXQgYWxsCj4gYWZhaWNzLgo+Cj4gQnR3LiB0aGVyZSBhcmUgYWxzbyBhIGZl dyBwYXRjaGVzIG1hZGUgYnkgQ2hyaXMgV2lsc29uIGZsb2F0aW5nIG9uIHRoZQo+IG1haWxpbmcg bGlzdCBzaW5jZSBhcm91bmQgamFudWFyeSwgc29tZSBhcmUgcmV2aWV3ZWQgYW5kIHRlc3RlZCBi eSBteXNlbGYsCj4gYnV0IG5vdCBpbmNsdWRlZCBpbiB4b3JnIG1hc3Rlci4gTWlnaHQgYmUgZ29v ZCBmb3IgcGVvcGxlIHRvIGhhdmUgYSBsb29rIGF0Cj4gdGhlbSBhbmQgbWF5YmUgZ2V0IHRoZW0g aW50byB4b3JnIDEuMTg/Cj4KPj4KPj4gT24gU2F0LCBKdWwgNCwgMjAxNSBhdCAzOjAzIFBNLCBF bWlsIFZlbGlrb3YgPGVtaWwubC52ZWxpa292QGdtYWlsLmNvbT4KPj4gd3JvdGU6Cj4+Pgo+Pj4g VGhlIERSSSBvcHRpb24gd2l0aCB0aGUgaW50ZWwgZGR4IGNhbiBiZSB1c2VkIHRvIGluZGljYXRl IHRoZSBmb2xsb3dpbmcKPj4+ICAgLSB3aGV0aGVyIGRyaSBpcyBkaXNhYmxlZAo+Pj4gICAtIHRo ZSBkcmkgInZlcnNpb24iIC0gZHJpMSwgZHJpMiwgZHJpMwo+Pj4gICAtIHRoZSBkcmkgbW9kdWxl IG5hbWUgLSBkb29fZHJpLnNvIGJhcl9kcmkuc28KPj4+Cj4+PiBJJ20gbm90IHN1cmUgaG93IGV4 YWN0bHkgaXQncyBzdXBwb3NlZCB0byB3b3JrL3dvcmtzLCBhbmQgSSBiZWxpZXZlCj4+PiBtb3N0 IG9mIHRoYXQgaXMgZHVlIHRvIGxlZ2FjeSByZWFzb25zLiBJJ20ganVzdCBzYXlpbmcgbGV0J3Mg bm90IGRvCj4+PiB0aGUgd2hvbGUgdGhpbmcgLSBqdXN0IHRoZSBkcmkgInZlcnNpb24iIHdvdWxk IGJlIGdyZWF0IChhcyB5b3UKPj4+IHN1Z2dlc3RlZCkuCj4KPgo+IEkgY2FuIGNoYW5nZSB0aGF0 IHRvIGFsbG93IHNlbGVjdGlvbiBiZXR3ZWVuICIyIiBhbmQgIjMiIC0gYXQgbGVhc3QgZm9yIGV4 YSwKPiBvbiBnbGFtb3IgdGhlIHBhcmFtZXRlciAiMiIgd291bGQgZWl0aGVyIG5lZWQgdG8gZ2V0 IGlnbm9yZWQgb3IgaXQgd291bGQKPiBjb21wbGV0ZWx5IGRpc2FibGUgaHcgYWNjZWxlcmF0aW9u LiBJIHdlbnQgZm9yIGNvbnNpc3RlbmN5IHdpdGggdGhlIGF0aSBkZHgKPiBiZWNhdXNlIGkgZm91 bmQgdGhlIGludGVsIHZhcmlhbnQgdG9vIGNvbmZ1c2luZy4gSSB0aGluayBpdCBjaGFuZ2VkIG11 bHRpcGxlCj4gdGltZXMgZHVyaW5nIHRoZSBsYXN0IHllYXIuCj4KPiB0aGFua3MsCj4gLW1hcmlv Cj4KPj4+Cj4+PiAtRW1pbAo+Pj4KPj4+Cj4+PiBPbiA0IEp1bHkgMjAxNSBhdCAxOToyOCwgSWxp YSBNaXJraW4gPGltaXJraW5AYWx1bS5taXQuZWR1PiB3cm90ZToKPj4+Pgo+Pj4+IEVybSwgdGhh dCdzIG51dHMuIEkgYWxzbyBkb24ndCByZWFsbHkgdW5kZXJzdGFuZCB3aGF0IHRoZXkncmUgdGFs a2luZwo+Pj4+IGFib3V0IHRoZXJlLi4uIGk5MTVnIHZzIGk5MTU/IEFueXdheXMsIEkganVzdCBt ZWFudCB0aGUgdmVyc2lvbgo+Pj4+IG51bWJlcnMgOikKPj4+Pgo+Pj4+IE9uIFNhdCwgSnVsIDQs IDIwMTUgYXQgMjoyMyBQTSwgRW1pbCBWZWxpa292IDxlbWlsLmwudmVsaWtvdkBnbWFpbC5jb20+ Cj4+Pj4gd3JvdGU6Cj4+Pj4+Cj4+Pj4+IFRoYXQgd291bGQgYmUgZ3JlYXQsIGFzIGxvbmcgYXMg aXQgZG9lcyBvbmx5IHRoYXQgYW5kIGRvZXMgbm90IGdvIGludG8KPj4+Pj4gdGhlICJkcml2ZXJu YW1lIiB0ZXJyaXRvcnkuIEFzIHRoZSBzYWlkIGRyaXZlciA7LSkKPj4+Pj4KPj4+Pj4gIkEgZHJp dmVyIG5hbWUgdG8gdXNlIGNhbiBiZSBwcm92aWRlZCBpbnN0ZWFkCj4+Pj4+IG9mIHNpbXBsZSBi b29sZWFuIHZhbHVlLCB3aGljaCB3aWxsIGJlIHBhc3NlZCB0byB0aGUgR0wgaW1wbGVtZW50YXRp b24KPj4+Pj4gZm9yCj4+Pj4+IGl0IHRvIGxvYWQgdGhlIGFwcHJvcHJpYXRlIGJhY2tlbmQuIgo+ Pj4+Pgo+Pj4+PiAtRW1pbAo+Pj4+Pgo+Pj4+PiBPbiA0IEp1bHkgMjAxNSBhdCAxODoxNywgSWxp YSBNaXJraW4gPGltaXJraW5AYWx1bS5taXQuZWR1PiB3cm90ZToKPj4+Pj4+Cj4+Pj4+PiBJTU8g aXQnZCBiZSBuaWNlIHRvIGtlZXAgdGhpcyBjb21wYXRpYmxlIHdpdGggdGhlIGludGVsIGRyaXZl ciwgd2hpY2gKPj4+Pj4+IGhhcyBhICJEUkkiIG9wdGlvbiwgd2hpY2ggY2FuIHRha2UgdGhlIHZh bHVlcyAxLCAyLCAzLiBPYnZpb3VzbHkgZm9yCj4+Pj4+PiBub3V2ZWF1LCAxIG1ha2VzIG5vIHNl bnNlIGFzIHRoYXQgd2FzIGRyb3BwZWQgcXVpdGUgc29tZSB0aW1lIGFnby4KPj4+Pj4+Cj4+Pj4+ PiBTZWUKPj4+Pj4+IGh0dHA6Ly9jZ2l0LmZyZWVkZXNrdG9wLm9yZy94b3JnL2RyaXZlci94Zjg2 LXZpZGVvLWludGVsL3RyZWUvbWFuL2ludGVsLm1hbiNuNjgKPj4+Pj4+Cj4+Pj4+PiBPbiBNb24s IEp1biAyOSwgMjAxNSBhdCAxMTozMCBQTSwgTWFyaW8gS2xlaW5lcgo+Pj4+Pj4gPG1hcmlvLmts ZWluZXIuZGVAZ21haWwuY29tPiB3cm90ZToKPj4+Pj4+Pgo+Pj4+Pj4+IFgtU2VydmVyIHZlcnNp b25zIG9sZGVyIHRoYW4gMS4xNi4zIGhhdmUgYnVncyBpbiB0aGVpcgo+Pj4+Pj4+IERSSTMvUHJl c2VudCBpbXBsZW1lbnRhdGlvbiB3aGljaCBpbXBhaXIgbm91dmVhdSwgc28KPj4+Pj4+PiBpdCBp cyBiZXR0ZXIgdG8gc3RpY2sgdG8gZ29vZCBvbGQgRFJJMiBieSBkZWZhdWx0IG9uCj4+Pj4+Pj4g c3VjaCBzZXJ2ZXJzLiBFLmcuLCBwYWdlIGZsaXBwaW5nIGRvZXNuJ3Qgd29yayBhdCBhbGwKPj4+ Pj4+PiB1bmRlciBEUkkzL1ByZXNlbnQgd2l0aCBvbGRlciBzZXJ2ZXJzLCBhbmQgdXNlIG9mCj4+ Pj4+Pj4gZXh0ZW5zaW9ucyBsaWtlIE9NTF9zeW5jX2NvbnRyb2wsIFNHSV92aWRlb19zeW5jIG9y Cj4+Pj4+Pj4gSU5URUxfc3dhcF9ldmVudHMgYWxzbyBjYXVzZXMgZmFpbHVyZSBvZiBQcmVzZW50 Lgo+Pj4+Pj4+Cj4+Pj4+Pj4gbm91dmVhdSdzIGdsYW1vciBhY2NlbCBiYWNrZW5kIGN1cnJlbnRs eSBkb2Vzbid0IHdvcmsgdW5kZXIKPj4+Pj4+PiBEUkkyLCBzbyBjb250aW51ZSB0byB1c2UgRFJJ MyB3aGVuZXZlciBpdCBpcyBzdXBwb3J0ZWQuCj4+Pj4+Pj4KPj4+Pj4+PiBVbmRlciB0aGUgZXhh IGFjY2VsIGJhY2tlbmQsIERSSTIgd29ya3MganVzdCBmaW5lLCBzbwo+Pj4+Pj4+IGRpc2FibGUg RFJJMyBhbmQgY2hvb3NlIERSSTIgYnkgZGVmYXVsdCB3aGVuIG5vdXZlYXUKPj4+Pj4+PiBpcyBi dWlsdCBmb3IgWC1TZXJ2ZXIgPCAxLjE2LjMsIGFuZCBlbmFibGUgRFJJMyBpZgo+Pj4+Pj4+IGJ1 aWxkaW5nIG9uIGxhdGVyIFgtU2VydmVycyB3aGljaCB3b3JrIHJlYXNvbmFibHkgd2VsbAo+Pj4+ Pj4+IHVuZGVyIERSSTMvUHJlc2VudC4KPj4+Pj4+Pgo+Pj4+Pj4+IEEgbmV3IGJvb2xlYW4geG9y Zy5jb25mIE9wdGlvbiAiRFJJMyIgYWxsb3dzIHRvIGVuZm9yY2Ugb3IKPj4+Pj4+PiBwcmV2ZW50 IHVzZSBvZiBEUkkzL1ByZXNlbnQgdW5kZXIgRVhBIGFjY2VsZXJhdGlvbiBmb3IKPj4+Pj4+PiB0 ZXN0aW5nLgo+Pj4+Pj4+Cj4+Pj4+Pj4gQWxzbyBhZGQgYSBiaXQgbW9yZSBvdXRwdXQgYWJvdXQg c3RhdHVzIG9mIFByZXNlbnQgYW5kCj4+Pj4+Pj4gRFJJMyB0byBhaWQgZGVidWdnaW5nLgo+Pj4+ Pj4+Cj4+Pj4+Pj4gU2lnbmVkLW9mZi1ieTogTWFyaW8gS2xlaW5lciA8bWFyaW8ua2xlaW5lci5k ZUBnbWFpbC5jb20+Cj4+Pj4+Pj4KPj4+Pj4+PiAtLS0KPj4+Pj4+PiAgIG1hbi9ub3V2ZWF1Lm1h biAgICB8ICA2ICsrKysrKwo+Pj4+Pj4+ICAgc3JjL25vdXZlYXVfZHJpMi5jIHwgMTEgKysrKysr KysrKy0KPj4+Pj4+PiAgIHNyYy9udl9jb25zdC5oICAgICB8ICAyICsrCj4+Pj4+Pj4gICBzcmMv bnZfZHJpdmVyLmMgICAgfCAxNyArKysrKysrKysrKysrKystLQo+Pj4+Pj4+ICAgNCBmaWxlcyBj aGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQo+Pj4+Pj4+Cj4+Pj4+Pj4g ZGlmZiAtLWdpdCBhL21hbi9ub3V2ZWF1Lm1hbiBiL21hbi9ub3V2ZWF1Lm1hbgo+Pj4+Pj4+IGlu ZGV4IDEyOWJiN2YuLjEyY2ZiYzAgMTAwNjQ0Cj4+Pj4+Pj4gLS0tIGEvbWFuL25vdXZlYXUubWFu Cj4+Pj4+Pj4gKysrIGIvbWFuL25vdXZlYXUubWFuCj4+Pj4+Pj4gQEAgLTEyNSw2ICsxMjUsMTIg QEAgdGhhdCByZWxpZXMgb24gY29ycmVjdCBwcmVzZW50YXRpb24gdGltaW5nCj4+Pj4+Pj4gYmVo YXZpb3VyIGFzIGRlZmluZWQgaW4gdGhhdAo+Pj4+Pj4+ICAgc3BlY2lmaWNhdGlvbi4KPj4+Pj4+ PiAgIC5icgo+Pj4+Pj4+ICAgRGVmYXVsdDogMS4KPj4+Pj4+PiArLlRQCj4+Pj4+Pj4gKy5CSSAi T3B0aW9uIFwqcURSSTNcKnEgXCpxIiBib29sZWFuIFwqcQo+Pj4+Pj4+ICtFbmFibGUgdGhlIERS STMgZXh0ZW5zaW9uIHVuZGVyIGV4YSBhY2NlbGVyYXRpb24gaWYgc3VwcG9ydGVkIGJ5Cj4+Pj4+ Pj4gc2VydmVyLgo+Pj4+Pj4+ICtBIHNldHRpbmcgb2YgIm9mZiIgd2lsbCBvbmx5IHVzZSBEUkky IGluc3RlYWQuIFVuZGVyIGdsYW1vcgo+Pj4+Pj4+IGFjY2VsZXJhdGlvbiwKPj4+Pj4+PiArRFJJ MyBpcyBhbHdheXMgZW5hYmxlZCBpZiBzdXBwb3J0ZWQuIERlZmF1bHQ6IG9uIGZvciBYT3JnID49 IDEuMTYuMywKPj4+Pj4+PiBvZmYgZm9yCj4+Pj4+Pj4gK2VhcmxpZXIgdmVyc2lvbnMuCj4+Pj4+ Pj4gICAuU0ggIlNFRSBBTFNPIgo+Pj4+Pj4+ICAgX194c2VydmVybmFtZV9fKF9fYXBwbWFuc3Vm Zml4X18pLAo+Pj4+Pj4+IF9feGNvbmZpZ2ZpbGVfXyhfX2ZpbGVtYW5zdWZmaXhfXyksIFhzZXJ2 ZXIoX19hcHBtYW5zdWZmaXhfXyksCj4+Pj4+Pj4gWChfX21pc2NtYW5zdWZmaXhfXykKPj4+Pj4+ PiAgIC5TSCBBVVRIT1JTCj4+Pj4+Pj4gZGlmZiAtLWdpdCBhL3NyYy9ub3V2ZWF1X2RyaTIuYyBi L3NyYy9ub3V2ZWF1X2RyaTIuYwo+Pj4+Pj4+IGluZGV4IGYyMmUzMTkuLmQ4MTg5NzYgMTAwNjQ0 Cj4+Pj4+Pj4gLS0tIGEvc3JjL25vdXZlYXVfZHJpMi5jCj4+Pj4+Pj4gKysrIGIvc3JjL25vdXZl YXVfZHJpMi5jCj4+Pj4+Pj4gQEAgLTExMzAsNyArMTEzMCwxNiBAQCBub3V2ZWF1X2RyaTNfc2Ny ZWVuX2luaXQoU2NyZWVuUHRyIHNjcmVlbikKPj4+Pj4+PiAgICAgICAgICBpZiAoYnVmICYmIHN0 YXQoYnVmLCAmcmVuZGVyKSA9PSAwICYmCj4+Pj4+Pj4gICAgICAgICAgICAgIG1hc3Rlci5zdF9t b2RlID09IHJlbmRlci5zdF9tb2RlKSB7Cj4+Pj4+Pj4gICAgICAgICAgICAgICAgICBwTnYtPnJl bmRlcl9ub2RlID0gYnVmOwo+Pj4+Pj4+IC0gICAgICAgICAgICAgICByZXR1cm4gZHJpM19zY3Jl ZW5faW5pdChzY3JlZW4sCj4+Pj4+Pj4gJm5vdXZlYXVfZHJpM19zY3JlZW5faW5mbyk7Cj4+Pj4+ Pj4gKyAgICAgICAgICAgICAgIGlmIChkcmkzX3NjcmVlbl9pbml0KHNjcmVlbiwKPj4+Pj4+PiAm bm91dmVhdV9kcmkzX3NjcmVlbl9pbmZvKSkgewo+Pj4+Pj4+ICsgICAgICAgICAgICAgICAgICAg ICAgIHhmODZEcnZNc2cocFNjcm4tPnNjcm5JbmRleCwgWF9JTkZPLAo+Pj4+Pj4+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIkRSSTMgb24gRVhBIGVuYWJsZWRcbiIpOwo+Pj4+ Pj4+ICsgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBUUlVFOwo+Pj4+Pj4+ICsgICAgICAg ICAgICAgICB9Cj4+Pj4+Pj4gKyAgICAgICAgICAgICAgIGVsc2Ugewo+Pj4+Pj4+ICsgICAgICAg ICAgICAgICAgICAgICAgIHhmODZEcnZNc2cocFNjcm4tPnNjcm5JbmRleCwgWF9XQVJOSU5HLAo+ Pj4+Pj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkRSSTMgb24gRVhBIGlu aXRpYWxpemF0aW9uCj4+Pj4+Pj4gZmFpbGVkXG4iKTsKPj4+Pj4+PiArICAgICAgICAgICAgICAg ICAgICAgICByZXR1cm4gRkFMU0U7Cj4+Pj4+Pj4gKyAgICAgICAgICAgICAgIH0KPj4+Pj4+PiAg ICAgICAgICB9IGVsc2UKPj4+Pj4+PiAgICAgICAgICAgICAgICAgIGZyZWUoYnVmKTsKPj4+Pj4+ PiAgICNlbmRpZgo+Pj4+Pj4+IGRpZmYgLS1naXQgYS9zcmMvbnZfY29uc3QuaCBiL3NyYy9udl9j b25zdC5oCj4+Pj4+Pj4gaW5kZXggZjFiNGU5Yi4uZGYxZTM5OCAxMDA2NDQKPj4+Pj4+PiAtLS0g YS9zcmMvbnZfY29uc3QuaAo+Pj4+Pj4+ICsrKyBiL3NyYy9udl9jb25zdC5oCj4+Pj4+Pj4gQEAg LTE4LDYgKzE4LDcgQEAgdHlwZWRlZiBlbnVtIHsKPj4+Pj4+PiAgICAgICBPUFRJT05fU1dBUF9M SU1JVCwKPj4+Pj4+PiAgICAgICBPUFRJT05fQVNZTkNfQ09QWSwKPj4+Pj4+PiAgICAgICBPUFRJ T05fQUNDRUxNRVRIT0QsCj4+Pj4+Pj4gKyAgICBPUFRJT05fRFJJMywKPj4+Pj4+PiAgIH0gTlZP cHRzOwo+Pj4+Pj4+Cj4+Pj4+Pj4KPj4+Pj4+PiBAQCAtMzQsNiArMzUsNyBAQCBzdGF0aWMgY29u c3QgT3B0aW9uSW5mb1JlYyBOVk9wdGlvbnNbXSA9IHsKPj4+Pj4+PiAgICAgICB7IE9QVElPTl9T V0FQX0xJTUlULCAgICAgICAiU3dhcExpbWl0IiwgICAgT1BUVl9JTlRFR0VSLCAgIHswfSwKPj4+ Pj4+PiBGQUxTRSB9LAo+Pj4+Pj4+ICAgICAgIHsgT1BUSU9OX0FTWU5DX0NPUFksICAgICAgICJB c3luY1VUU0RGUyIsICBPUFRWX0JPT0xFQU4sICAgezB9LAo+Pj4+Pj4+IEZBTFNFIH0sCj4+Pj4+ Pj4gICAgICAgeyBPUFRJT05fQUNDRUxNRVRIT0QsICAgICAgIkFjY2VsTWV0aG9kIiwgIE9QVFZf U1RSSU5HLCAgICB7MH0sCj4+Pj4+Pj4gRkFMU0UgfSwKPj4+Pj4+PiArICAgIHsgT1BUSU9OX0RS STMsICAgICAgICAgICAgICJEUkkzIiwgICAgICAgICBPUFRWX0JPT0xFQU4sICAgezB9LAo+Pj4+ Pj4+IEZBTFNFIH0sCj4+Pj4+Pj4gICAgICAgeyAtMSwgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsICAgICAgICAgICBPUFRWX05PTkUsCj4+Pj4+Pj4gezB9LCBGQUxTRSB9Cj4+Pj4+Pj4gICB9 Owo+Pj4+Pj4+Cj4+Pj4+Pj4gZGlmZiAtLWdpdCBhL3NyYy9udl9kcml2ZXIuYyBiL3NyYy9udl9k cml2ZXIuYwo+Pj4+Pj4+IGluZGV4IDhlMmFlMDMuLjMyZjA0ZDggMTAwNjQ0Cj4+Pj4+Pj4gLS0t IGEvc3JjL252X2RyaXZlci5jCj4+Pj4+Pj4gKysrIGIvc3JjL252X2RyaXZlci5jCj4+Pj4+Pj4g QEAgLTE0NzAsNyArMTQ3MCwxMyBAQCBOVlNjcmVlbkluaXQoU0NSRUVOX0lOSVRfQVJHU19ERUNM KQo+Pj4+Pj4+Cj4+Pj4+Pj4gICAgICAgICAgeGY4NlNldEJsYWNrV2hpdGVQaXhlbHMocFNjcmVl bik7Cj4+Pj4+Pj4KPj4+Pj4+PiAtICAgICAgIG5vdXZlYXVfcHJlc2VudF9pbml0KHBTY3JlZW4p Owo+Pj4+Pj4+ICsgICAgICAgaWYgKG5vdXZlYXVfcHJlc2VudF9pbml0KHBTY3JlZW4pIDw9IDAp Cj4+Pj4+Pj4gKyAgICAgICAgICAgICAgIHhmODZEcnZNc2cocFNjcm4tPnNjcm5JbmRleCwgWF9J TkZPLAo+Pj4+Pj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICJIYXJkd2FyZSBzdXBwb3J0 IGZvciBQcmVzZW50Cj4+Pj4+Pj4gZGlzYWJsZWRcbiIpOwo+Pj4+Pj4+ICsgICAgICAgZWxzZQo+ Pj4+Pj4+ICsgICAgICAgICAgICAgICB4Zjg2RHJ2TXNnKHBTY3JuLT5zY3JuSW5kZXgsIFhfSU5G TywKPj4+Pj4+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAiSGFyZHdhcmUgc3VwcG9ydCBm b3IgUHJlc2VudCBlbmFibGVkXG4iKTsKPj4+Pj4+PiArCj4+Pj4+Pj4gICAgICAgICAgbm91dmVh dV9zeW5jX2luaXQocFNjcmVlbik7Cj4+Pj4+Pj4gICAgICAgICAgbm91dmVhdV9kcmkyX2luaXQo cFNjcmVlbik7Cj4+Pj4+Pj4gICAgICAgICAgaWYgKHBOdi0+QWNjZWxNZXRob2QgPT0gR0xBTU9S KSB7Cj4+Pj4+Pj4gQEAgLTE0NzgsNyArMTQ4NCwxNCBAQCBOVlNjcmVlbkluaXQoU0NSRUVOX0lO SVRfQVJHU19ERUNMKQo+Pj4+Pj4+ICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gRkFM U0U7Cj4+Pj4+Pj4gICAgICAgICAgfSBlbHNlCj4+Pj4+Pj4gICAgICAgICAgaWYgKHBOdi0+QWNj ZWxNZXRob2QgPT0gRVhBKSB7Cj4+Pj4+Pj4gLSAgICAgICAgICAgICAgIGlmICghbm91dmVhdV9k cmkzX3NjcmVlbl9pbml0KHBTY3JlZW4pKQo+Pj4+Pj4+ICsgICAgICAgICAgICAgICAvKiBEZWZh dWx0IHRvIERSSTMvUHJlc2VudCBvbiBYT3JnID49IDEuMTYuMywgRFJJMiBvbgo+Pj4+Pj4+IG9s ZGVyCj4+Pj4+Pj4gKyAgICAgICAgICAgICAgICAqIHNlcnZlcnMsIGFzIG9sZGVyIHNlcnZlcnMg aGF2ZSBEUkkzL1ByZXNlbnQgYnVncwo+Pj4+Pj4+IGFmZmVjdGluZwo+Pj4+Pj4+ICsgICAgICAg ICAgICAgICAgKiBub3V2ZWF1Lgo+Pj4+Pj4+ICsgICAgICAgICAgICAgICAgKi8KPj4+Pj4+PiAr ICAgICAgICAgICAgICAgcmV0ID0geGY4NlJldHVybk9wdFZhbEJvb2wocE52LT5PcHRpb25zLCBP UFRJT05fRFJJMywKPj4+Pj4+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgWE9SR19WRVJTSU9OX0NVUlJFTlQgPj0KPj4+Pj4+PiArCj4+Pj4+Pj4gWE9SR19WRVJT SU9OX05VTUVSSUMoMSwxNiwzLDAsMCkpOwo+Pj4+Pj4+ICsgICAgICAgICAgICAgICBpZiAocmV0 ICYmICFub3V2ZWF1X2RyaTNfc2NyZWVuX2luaXQocFNjcmVlbikpCj4+Pj4+Pj4gICAgICAgICAg ICAgICAgICAgICAgICAgIHJldHVybiBGQUxTRTsKPj4+Pj4+Pgo+Pj4+Pj4+ICAgICAgICAgICAg ICAgICAgaWYgKCFub3V2ZWF1X2V4YV9pbml0KHBTY3JlZW4pKQo+Pj4+Pj4+IC0tCj4+Pj4+Pj4g MS45LjEKPj4+Pj4+Pgo+Pj4+Pj4+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCj4+Pj4+Pj4gTm91dmVhdSBtYWlsaW5nIGxpc3QKPj4+Pj4+PiBOb3V2ZWF1 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+Pj4+Pj4+IGh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9ub3V2ZWF1Cj4+Pj4+Pgo+Pj4+Pj4gX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPj4+Pj4+IE5vdXZlYXUgbWFpbGluZyBs aXN0Cj4+Pj4+PiBOb3V2ZWF1QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+Pj4+Pj4gaHR0cDovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL25vdXZlYXUKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTm91dmVhdSBtYWlsaW5nIGxpc3QK Tm91dmVhdUBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL25vdXZlYXUK