From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michel Thierry Subject: Re: [Mesa-dev] [PATCH v4 1/2] intel: 48b ppgtt support (EXEC_OBJECT_SUPPORTS_48B_ADDRESS flag) Date: Wed, 14 Oct 2015 13:11:33 +0100 Message-ID: <561E4675.3050004@intel.com> References: <1441290239-31462-1-git-send-email-michel.thierry@intel.com> <1441290239-31462-2-git-send-email-michel.thierry@intel.com> <20150914135403.GA8219@mwiniars-desk1.igk.intel.com> <56128342.2070407@intel.com> <5613C8DB.9090403@intel.com> <561CF60B.7080507@intel.com> <561D1B6D.6080608@intel.com> <20151014071947.GT26718@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20151014071947.GT26718@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: =?UTF-8?Q?Kristian_H=c3=b8gsberg?= Cc: Emil Velikov , dri-devel , mesa-dev List-Id: dri-devel@lists.freedesktop.org T24gMTAvMTQvMjAxNSA4OjE5IEFNLCBEYW5pZWwgVmV0dGVyIHdyb3RlOgo+IE9uIFR1ZSwgT2N0 IDEzLCAyMDE1IGF0IDAyOjUxOjM2UE0gLTA3MDAsIEtyaXN0aWFuIEjDuGdzYmVyZyB3cm90ZToK Pj4gT24gVHVlLCBPY3QgMTMsIDIwMTUgYXQgNzo1NSBBTSwgTWljaGVsIFRoaWVycnkKPj4gPG1p Y2hlbC50aGllcnJ5QGludGVsLmNvbT4gd3JvdGU6Cj4+PiBPbiAxMC8xMy8yMDE1IDM6MTMgUE0s IEVtaWwgVmVsaWtvdiB3cm90ZToKPj4+Pgo+Pj4+IE9uIDEzIE9jdG9iZXIgMjAxNSBhdCAxMzox NiwgTWljaGVsIFRoaWVycnkgPG1pY2hlbC50aGllcnJ5QGludGVsLmNvbT4KPj4+PiB3cm90ZToK Pj4+Pj4KPj4+Pj4gT24gMTAvNi8yMDE1IDI6MTIgUE0sIE1pY2hlbCBUaGllcnJ5IHdyb3RlOgo+ Pj4+Pj4KPj4+Pj4+Cj4+Pj4+PiBPbiAxMC81LzIwMTUgNzowNiBQTSwgS3Jpc3RpYW4gSMO4Z3Ni ZXJnIHdyb3RlOgo+Pj4+Pj4+Cj4+Pj4+Pj4KPj4+Pj4+PiBPbiBNb24sIE9jdCA1LCAyMDE1IGF0 IDc6MDMgQU0sIE1pY2hlbCBUaGllcnJ5Cj4+Pj4+Pj4gPG1pY2hlbC50aGllcnJ5QGludGVsLmNv bT4gd3JvdGU6Cj4+Pj4+Pj4+Cj4+Pj4+Pj4+Cj4+Pj4+Pj4+IE9uIDkvMTQvMjAxNSAyOjU0IFBN LCBNaWNoYcWCIFdpbmlhcnNraSB3cm90ZToKPj4+Pj4+Pj4+Cj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4K Pj4+Pj4+Pj4+IE9uIFRodSwgU2VwIDAzLCAyMDE1IGF0IDAzOjIzOjU4UE0gKzAxMDAsIE1pY2hl bCBUaGllcnJ5IHdyb3RlOgo+Pj4+Pj4+Pj4+Cj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+Pgo+Pj4+Pj4+ Pj4+IEdlbjgrIHN1cHBvcnRzIDQ4LWJpdCB2aXJ0dWFsIGFkZHJlc3NlcywgYnV0IHNvbWUgb2Jq ZWN0cyBtdXN0Cj4+Pj4+Pj4+Pj4gYWx3YXlzIGJlCj4+Pj4+Pj4+Pj4gYWxsb2NhdGVkIGluc2lk ZSB0aGUgMzItYml0IGFkZHJlc3MgcmFuZ2UuCj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+PiBJbiBzcGVj aWZpYywgYW55IHJlc291cmNlIHVzZWQgd2l0aCBmbGF0L2hlYXBsZXNzCj4+Pj4+Pj4+Pj4gKDB4 MDAwMDAwMDAtMHhmZmZmZjAwMCkKPj4+Pj4+Pj4+PiBHZW5lcmFsIFN0YXRlIEhlYXAgKEdTSCkg b3IgSW5zdHJ1Y3Rpb24gU3RhdGUgSGVhcCAoSVNIKSBtdXN0IGJlIGluCj4+Pj4+Pj4+Pj4gYQo+ Pj4+Pj4+Pj4+IDMyLWJpdCByYW5nZSwgYmVjYXVzZSB0aGUgR2VuZXJhbCBTdGF0ZSBPZmZzZXQg YW5kIEluc3RydWN0aW9uIFN0YXRlCj4+Pj4+Pj4+Pj4gT2Zmc2V0Cj4+Pj4+Pj4+Pj4gYXJlIGxp bWl0ZWQgdG8gMzItYml0cy4KPj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+IFRoZSBpOTE1IGRyaXZlciBo YXMgYmVlbiBtb2RpZmllZCB0byBwcm92aWRlIGEgZmxhZyB0byBzZXQgd2hlbiB0aGUKPj4+Pj4+ Pj4+PiA0R0IKPj4+Pj4+Pj4+PiBsaW1pdCBpcyBub3QgbmVjZXNzYXJ5IGluIGEgZ2l2ZW4gYm8K Pj4+Pj4+Pj4+PiAoRVhFQ19PQkpFQ1RfU1VQUE9SVFNfNDhCX0FERFJFU1MpLgo+Pj4+Pj4+Pj4+ IDQ4LWJpdCByYW5nZSB3aWxsIG9ubHkgYmUgdXNlZCB3aGVuIGV4cGxpY2l0bHkgcmVxdWVzdGVk Lgo+Pj4+Pj4+Pj4+Cj4+Pj4+Pj4+Pj4gQ2FsbGVycyB0byB0aGUgZXhpc3RpbmcgZHJtX2ludGVs X2JvX2VtaXRfcmVsb2MgZnVuY3Rpb24gc2hvdWxkIHNldAo+Pj4+Pj4+Pj4+IHRoZQo+Pj4+Pj4+ Pj4+IHVzZV80OGJfYWRkcmVzc19yYW5nZSBmbGFnIGJlZm9yZWhhbmQsIGluIG9yZGVyIHRvIHVz ZSBmdWxsIHBwZ3R0Cj4+Pj4+Pj4+Pj4gcmFuZ2UuCj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+PiB2Mjog TWFrZSBzZXQvY2xlYXIgZnVuY3Rpb25zIG5vcHMgb24gcHJlLWdlbjggcGxhdGZvcm1zLCBhbmQg dXNlCj4+Pj4+Pj4+Pj4gdGhlbQo+Pj4+Pj4+Pj4+ICAgICAgICAgaW50ZXJuYWxseSBpbiBlbWl0 X3JlbG9jIGZ1bmN0aW9ucyAoQmVuKQo+Pj4+Pj4+Pj4+ICAgICAgICAgcy80OEJBRERSRVNTLzQ4 Ql9BRERSRVNTLyAoRGF2ZSkKPj4+Pj4+Pj4+PiB2MzogS2VlcCBzZXQvY2xlYXIgZnVuY3Rpb25z IGludGVybmFsLCBuby1vbmUgbmVlZHMgdG8gdXNlIHRoZW0KPj4+Pj4+Pj4+PiBkaXJlY3RseS4K Pj4+Pj4+Pj4+PiB2NDogRG9uJ3Qgc2V0IDQ4Yml0LXN1cHBvcnQgZmxhZyBpbiBlbWl0IHJlbG9j LCBjaGVjayBmb3IgcHBndHQgdHlwZQo+Pj4+Pj4+Pj4+ICAgICAgICAgYmVmb3JlIGVuYWJsaW5n IHNldC9jbGVhciBmdW5jdGlvbiwgcHJpbnQgZnVsbCBvZmZzZXRzIGluCj4+Pj4+Pj4+Pj4gZGVi dWcKPj4+Pj4+Pj4+PiAgICAgICAgIHN0YXRlbWVudHMsIHVzaW5nIHBvcnQgb2YgbG93ZXJfMzJf Yml0cyBhbmQgdXBwZXJfMzJfYml0cwo+Pj4+Pj4+Pj4+IGZyb20gbGludXgKPj4+Pj4+Pj4+PiAg ICAgICAgIGtlcm5lbCAoTWljaGHFgikKPj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+IFJlZmVyZW5jZXM6 Cj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+PiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL2FyY2hp dmVzL2ludGVsLWdmeC8yMDE1LUp1bHkvMDcyNjEyLmh0bWwKPj4+Pj4+Pj4+PiBDYzogQmVuIFdp ZGF3c2t5IDxiZW5AYndpZGF3c2submV0Pgo+Pj4+Pj4+Pj4+IENjOiBNaWNoYcWCIFdpbmlhcnNr aSA8bWljaGFsLndpbmlhcnNraUBpbnRlbC5jb20+Cj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4KPj4+Pj4+ Pj4+Cj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4gK0tyaXN0aWFuCj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4gTEdU TS4KPj4+Pj4+Pj4+IEFja2VkLWJ5OiBNaWNoYcWCIFdpbmlhcnNraSA8bWljaGFsLndpbmlhcnNr aUBpbnRlbC5jb20+Cj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+IFNpZ25lZC1vZmYtYnk6IE1pY2hlbCBU aGllcnJ5IDxtaWNoZWwudGhpZXJyeUBpbnRlbC5jb20+Cj4+Pj4+Pj4+Cj4+Pj4+Pj4+Cj4+Pj4+ Pj4+Cj4+Pj4+Pj4+Cj4+Pj4+Pj4+Cj4+Pj4+Pj4+IEhpIEtyaXN0aWFuLAo+Pj4+Pj4+Pgo+Pj4+ Pj4+PiBNb3JlIGNvbW1lbnRzIG9uIHRoaXM/Cj4+Pj4+Pj4+IEkndmUgcmVzZW50IHRoZSBtZXNh IHBhdGNoIHdpdGggdGhlIGxhc3QgY2hhbmdlcwo+Pj4+Pj4+Pgo+Pj4+Pj4+Pgo+Pj4+Pj4+PiAo aHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9hcmNoaXZlcy9kcmktZGV2ZWwvMjAxNS1PY3Rv YmVyLzA5MTc1Mi5odG1sKS4KPj4+Pj4+Pj4KPj4+Pj4+Pj4KPj4+Pj4+Pj4gTWljaGHFgiBoYXMg YWdyZWVkIHdpdGggdGhlIGludGVyZmFjZSBhbmQgd2lsbCB1c2UgaXQgZm9yIGhpcyB3b3JrLgo+ Pj4+Pj4+PiBJZiBtZXNhIGRvZXNuJ3QgcGxhbiB0byB1c2UgdGhpcyBmb3Igbm93LCBpdCdzIG9r LiBUaGUga2VybmVsIGNoYW5nZXMKPj4+Pj4+Pj4gaGF2ZQo+Pj4+Pj4+PiBiZWVuIGRvbmUgdG8g cHJldmVudCBhbnkgcmVncmVzc2lvbnMgd2hlbiB0aGUgc3VwcG9ydCA0OC1iaXQgZmxhZyBpcwo+ Pj4+Pj4+PiBub3QKPj4+Pj4+Pj4gc2V0Lgo+Pj4+Pj4+Cj4+Pj4+Pj4KPj4+Pj4+Pgo+Pj4+Pj4+ IEkgZGlkbid0IGdldCBhbnkgcmVwbGllcyB0byBteSBsYXN0IGNvbW1lbnRzIG9uIHRoaXM6Cj4+ Pj4+Pj4KPj4+Pj4+PiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL2FyY2hpdmVzL21lc2Et ZGV2LzIwMTUtQXVndXN0LzA5MTM5OC5odG1sCj4+Pj4+Pj4KPj4+Pj4+PiBCYXNpY2FsbHksIEkg dHJpZWQgZXhwbGljaXRseSBwbGFjaW5nIGJ1ZmZlcnMgYWJvdmUgOEcgYW5kIGRpZG4ndCBzZWUK Pj4+Pj4+PiB0aGUgSFcgcHJvYmxlbSBkZXNjcmliZWQgKGllIGl0IGFsbCB3b3JrZWQgZmluZSku ICBJIHN0aWxsIHRoaW5rCj4+Pj4+Pj4gdGhlcmUncyBzb21lIGNvbmZ1c2lvbiBhcyB0byB3aGF0 IHRoZSBXL0EgaXMgYWJvdXQuCj4+Pj4+Pj4KPj4+Pj4+PiBIZXJlJ3MgbXkgdGFrZTogdGhlIFcv QSBpcyBhIFNXLW9ubHkgd29ya2Fyb3VuZCB0byBoYW5kbGUgdGhlIGNhc2VzCj4+Pj4+Pj4gd2hl cmUgYSBkcml2ZXIgdXNlcyBoZWFwbGVzcyBhbmQgNDgtYml0IHBwZ3R0LiBUaGUgcHJvYmxlbSBp cyB0aGF0IHRoZQo+Pj4+Pj4+IGhlYXBzIGFyZSBsaW1pdGVkIHRvIDRHIGJ1dCB3aXRoIDQ4Yml0 IHBwZ3R0IGEgYnVmZmVyIGNhbiBiZSBwbGFjZWQKPj4+Pj4+PiBhbnl3aGVyZSBpdCB0aGUgNDgg Yml0IGFkZHJlc3Mgc3BhY2UuIElmIHRoYXQgaGFwcGVucyBpdCdzIGNvbnNpZGVyZWRkCj4+Pj4+ Pj4gb3V0LW9mLWJvdW5kcyBmb3IgdGhlIGhlYXAgYW5kIGFjY2VzcyBmYWlscy4gVG8gcHJldmVu dCB0aGlzIHdlIG5lZWQKPj4+Pj4+PiB0byBtYWtlIHN1cmUgdGhlIGJvcyB3ZSBhZGRyZXNzIGlu IGEgaGVhcGxlc3MgZmFzaGlvbiBhcmUgcGxhY2VkIGJlbG93Cj4+Pj4+Pj4gNGcuCj4+Pj4+Pj4K Pj4+Pj4+PiBGb3IgbWVzYSwgd2Ugb25seSBjb25maWd1cmUgZ2VuZXJhbCBzdGF0ZSBiYXNlIGFz IGhlYXAtbGVzcywgd2hpY2gKPj4+Pj4+PiBhZmZlY3RzIHNjcmF0Y2ggYm9zLiBXaGF0IHRoaXMg Ym9pbHMgZG93biB0byBpcyB0aGF0IHdlIG5lZWQgdGhlIDRHCj4+Pj4+Pj4gcmVzdHJpY3Rpb24g b25seSBmb3IgdGhlIHNjcmF0Y2ggYm9zIHNldCB1cCBvbiAzRFNUQVRFX1ZTLCAzRFNUQVRFX0dT Cj4+Pj4+Pj4gYW5kIDNEU1RBVEVfUFMgKGFuZCB0ZXNzZWxhdGlvbiBzdGFnZSBldmVudHVhbGx5 KS4gTG9vayBmb3IgdGhlCj4+Pj4+Pj4gT1VUX1JFTE9DNjQgZm9yIHN0YWdlLT5zY3JhdGNoX2Jv IGluIGdlbjhfdnNfc3RhdGUuYywgZ2VuOF9nc19zdGF0ZS5jCj4+Pj4+Pj4gYW5kIGdlbjhfcHNf c3RhdGUuYwo+Pj4+Pj4KPj4+Pj4+Cj4+Pj4+Pgo+Pj4+Pj4gSSB0aGluayBpdCBhbHNvIGFmZmVj dHMgXzNEU1RBVEVfVklFV1BPUlRfU1RBVEVfUE9JTlRFUlNfQ0MsIG1heWJlIGl0Cj4+Pj4+PiBp c24ndCBleGNsdXNpdmUgdG8gdGhlIHNjcmF0Y2ggYm9zICh0aGUgZXJyb3Igc3RhdGUgcG9pbnRz IHRvIHRoYXQKPj4+Pj4+IGluc3RydWN0aW9uKS4KPj4+Pj4+Cj4+Pj4+Pgo+Pj4+Pgo+Pj4+PiBI aSwKPj4+Pj4KPj4+Pj4gQW55bW9yZSBpbnB1dHMgYWJvdXQgdGhpcyBwYXRjaD8KPj4+Pj4gQUZB SUssIGlmIGNoYW5nZXMgYXJlIHJlcXVpcmVkIGJhc2VkIG9uIGZ1cnRoZXIgY29tbWVudHMgZnJv bSBLcmlzdGlhbiwKPj4+Pj4gdGhlc2Ugd2lsbCBiZSBpbiB0aGUgbWVzYSBwYXRjaFsxXSwgbm90 IGxpYmRybS4gQWxzbywgTWljaGHFgiB3aWxsIHVzZQo+Pj4+PiB0aGlzCj4+Pj4+IGZsYWcgaW4g YW5vdGhlciBwcm9qZWN0Lgo+Pj4+Pgo+Pj4+IFRoZSBjb21tZW50IHNlZW1zIHF1aXRlIGJyaWVm IGFuZCBJJ20gbm90IHN1cmUgaXQgZnVsbHkgYWRkcmVzc2VzCj4+Pj4gS3Jpc3RpYW4ncyBjb25j ZXJuLiBJJ2Qgc3VzcGVjdCB0aGF0IHByb3ZpZGluZyByZWZlcmVuY2UgdG8gdGhlIEhXCj4+Pj4g ZG9jdW1lbnRhdGlvbiAoY29uZmlybWluZyB5b3VyIGFzc3VtcHRpb24pIG1pZ2h0IGJlIGJlbmVm aWNpYWwuCj4+Pj4KPj4+Cj4+PiBTdXJlLCBhdHRhY2hlZCBpcyB0aGUgaGFuZyBJIGdldCBpZiBJ IGRvbid0IHNldCB0aGUgcmVzdHJpY3Rpb24gaW4KPj4+IGdlbjhfbWlzY19zdGF0ZS5jIGFuZCB0 cnkgdG8gdXNlIHRoZSBmdWxsIDQ4LWJpdCByYW5nZQo+Pj4gKGk5MTVfZXJyb3Jfc3RhdGVfbm93 YS50eHQpLiBUaGlzIGlzIGp1c3QgcnVubmluZyBnZnhiZW5jaCB0LXJleC4KPj4+Cj4+PiBJIHNl ZSB0aGUgc2FtZSBoYW5nIHNpZ25hdHVyZSB3aGVuIGl0IGlzIG9ubHkgYXBwbGllZCB0byB0aGUg c2NyYXRjaCBib3MgKGluCj4+PiBnZW44X3ZzX3N0YXRlLmMsIGdlbjhfZ3Nfc3RhdGUuYyBhbmQg Z2VuOF9wc19zdGF0ZS5jIC0KPj4+IGk5MTVfZXJyb3Jfc3RhdGVfc2NyYXRjaGJvLnR4dCkuCj4+ Pgo+Pj4gM0RTVEFURV9WSUVXUE9SVF9TVEFURV9QT0lOVEVSU19DQyAoMHg3ODIzMDAwMCkgaXMg ZGVmaW5lZCBoZXJlOgo+Pj4gaHR0cHM6Ly8wMS5vcmcvc2l0ZXMvZGVmYXVsdC9maWxlcy9kb2N1 bWVudGF0aW9uL2ludGVsLWdmeC1wcm0tb3NyYy1iZHctdm9sMDJhLWNvbW1hbmRyZWZlcmVuY2Ut aW5zdHJ1Y3Rpb25zXzAucGRmCj4+PiAocGFnZSAyNTYpCj4+Cj4+IEkgYXBwbGllZCB5b3VyIG1l c2EgYW5kIGxpYmRybSBwYXRjaGVzIGFuZCB0aGVuIGJhY2tlZCBvdXQgdGhlIDRHCj4+IHJlc3Ry aWN0aW9uIGluIHRoZSBTVEFURV9CQVNFX0FERFJFU1MgcmVsb2NhdGlvbnMuICBJIHdhcyBub3Qg YWJsZSB0bwo+PiByZXByb2R1Y2UgYW55IGhhbmcgd2l0aCB0cmV4IG9yIGdseGdlYXJzLiBJIGNv bmZpcm1lZCAodXNpbmcKPj4gSU5URUxfREVCVUc9YmF0KSB0aGF0IGdlbSBhY3R1YWxseSBwbGFj ZWQgQk9zIGFib3ZlIHRoZSA0RyBtYXJrIGFuZAo+PiBnb3QgdGhpczoKPj4KPj4gICAwOiA4IEAg MHhmZmZmZmZmOTAwMDAgKG1pcHRyZWUpCj4+ICAgMTogOSBAIDB4ZmZmZmZmZjc4MDAwIChoaXop Cj4+ICAgMjogNCBAIDB4ZmZmZmZmZjc3MDAwIChwaXBlX2NvbnRyb2wgd29ya2Fyb3VuZCkKPj4g ICAzOiA1IEAgMHhmZmZmZmZmNzYwMDAgKHByb2dyYW0gY2FjaGUpCj4+ICAgNDogMTIgQCAweDAw MDAwMDAwMDAwMCAobWlwdHJlZSkKPj4gICA1OiA3IEAgMHgwMDAwMDAwMDEwMDAgKGltYWdlKQo+ PiAgIDY6IDEwIEAgMHhmZmZmZmZmNWEwMDAgKG1pcHRyZWUpCj4+ICAgNzogMTMgQCAweGZmZmZm ZmY1OTAwMCAoYnVmZmVyb2JqKQo+PiAgIDg6IDExIEAgMHhmZmZmZmZmNTEwMDAgKGJ1ZmZlcm9i aikKPj4gICA5OiAxNCBAIDB4ZmZmZmZmZjUwMDAwIChidWZmZXJvYmopCj4+IDEwOiAxNSBAIDB4 ZmZmZmZmZjQwMDAwIChiYXRjaGJ1ZmZlcilAMHgwMDAwMDAwMCAwMDAwMDAyMCAtPiA4Cj4+ICht aXB0cmVlKUAweDAwMDBmZmZmIGZmZjkwMDAwICsgMHgwMDAwMDAwMAo+PiAxMDogMTUgQCAweGZm ZmZmZmY0MDAwMCAoYmF0Y2hidWZmZXIpQDB4MDAwMDAwMDAgMDAwMDAwNDAgLT4gOQo+PiAoaGl6 KUAweDAwMDBmZmZmIGZmZjc4MDAwICsgMHgwMDAwMDAwMAo+PiAxMDogMTUgQCAweGZmZmZmZmY0 MDAwMCAoYmF0Y2hidWZmZXIpQDB4MDAwMDAwMDAgMDAwMDAwOTggLT4gNAo+PiAocGlwZV9jb250 cm9sIHdvcmthcm91bmQpQDB4MDAwMGZmZmYgZmZmNzcwMDAgKyAweDAwMDAwMDAwCj4+IC4uLgo+ Pgo+PiBJbiBwYXJ0aWN1bGFyLCB0aGUgbWVzYSBiYXRjaGJ1ZmZlciBpcyBwbGFjZWQgYXQgMHhm ZmZmZmZmNDAwMDAsIGFuZAo+PiBhbGwgdGhlIFNUQVRFX0JBU0VfQUREUkVTUyBoZWFwcyBhcmUg aW4gdGhhdCBiby4gSW4gb3RoZXIgd29yZHMsIGFsbAo+PiBoZWFwIGJhc2VzIGFyZSBzZXQgdG8g MHhmZmZmZmZmNDAwMDAuCj4+Cj4+IFRoZSBvZmZzZXQgaW4gM0RTVEFURV9WSUVXUE9SVF9TVEFU RV9QT0lOVEVSU19DQyBpcyBpbmRlZWQgb25seSAzMgo+PiBiaXRzLCBidXQgdGhhdCBvbmx5IGFm ZmVjdHMgaG93IGZhciBmcm9tIHRoZSBkeW5hbWljIHN0YXRlIGJhc2UKPj4gYWRkcmVzcyB3ZSBj YW4gcGxhY2UgdGhhdC4gSW4gbWVzYXMgY2FzZSwgaXQncyBhbHdheXMgaW5zaWRlIHRoZSBiYXRj aAo+PiBidWZmZXIsIHdoaWNoIGlzIGF0IG1vc3QgMzJrLCBzbyB0aGF0J3MgbmV2ZXIgYSBwcm9i bGVtLiBJZiBhIGRyaXZlcgo+PiB1c2VzIGR5bmFtaWMgc3RhdGUgaW4gYSBoZWFwbGVzcyBmYXNo aW9uLCB0aGVuIHlvdSBuZWVkIHRvIGJlIGNhcmVmdWwKPj4gdG8gcGxhY2UgdGhlIENDIHZpZXdw b3J0IHN0YXRlIGJlbG93IDRnLgo+Pgo+PiBXaGF0IEkgd2FzIGFibGUgIHRvIGNvbmZpcm0gaXMg dGhhdCBzY3JhdGNoIGJ1ZmZlciBJL08gKHdoaWNoIHdlIHVzZQo+PiBmb3Igc3BpbGxpbmcpIGRv ZXMgYnJlYWsgd2l0aCA0OCBiaXQgcHBndHQuIElmIHlvdSBydW4gZ2x4Z2VhcnMgd2l0aAo+PiBJ TlRFTF9ERUJVRz1zcGlsbF9mcyBzZXQsIHlvdSBjYW4gc2VlIGxvdHMgb2YgcmVuZGVyaW5nIGFy dGlmYWN0cyBhcwo+PiB0aGUgNEcgbGltaXQgb24gdGhlIGdlbmVyYWwgc3RhdGUgaGVhcCBjYXBz IGF0dGVtcHRzIHRvIHNwaWxsIGFuZCBmaWxsCj4+IGZyb20gdGhlIHZlcnRleCBzaGFkZXIuIFVz aW5nIE9VVF9SRUxPQzY0X0lOU0lERV80RygpIHdoZW4gc2V0dGluZyB1cAo+PiB0aGUgc2NyYXRj aCBCT3MgaW4gM0RTVEFURV9WUyBhbmQgM0RTVEFURV9QUyBmaXhlcyB0aGUgcHJvYmxlbS4KPgo+ IE9rLCBzbyB3ZSBkbyBzdGlsbCBuZWVkIHRoZSA0RyBsaW1pdCBiaXQgKGkuZS4gSSBkb24ndCBo YXZlIHRvIHJldmVydCB0aGUKPiBrZXJuZWwgc2lkZSBmb3IgbGFjayBvZiBvcGVuLXNvdXJjZSB1 c2Vyc3BhY2UpLCBqdXN0IG5vdCBhdCB0aGUgcGxhY2Ugd2UKPiBvcmlnaW5hbGx5IHRob3VnaHQu IEkgZ3Vlc3MgbGVzc29uIGxlYXJuZWQgaXMgdG8gYWN0dWFsbHkgdGVzdCBzdHVmZiBmaXJzdAo+ IGJlZm9yZSBJIHB1bGwgaW4gdGhlIGtlcm5lbCBzaWRlLiBNaWNoZWwsIGRpZCB5b3Ugbm90IHNl ZSB0aGUgc3BpbGxpbmcKPiBjb3JydXB0aW9ucyB3aGVuIHRlc3RpbmcgdGhlIG1lc2EgcGF0Y2hl cz8gS3Jpc3RpYW4sIGRvZXMgdGhpcyBhbHNvIGJsb3cKPiB1cCB3aXRoIGp1c3QgYSBwaWdsaXQg cnVuPwo+CgpUaGVyZSdzIG11c3QgYmUgc29tZXRoaW5nIGVsc2Ugd2UgaGF2ZSBkaWZmZXJlbnQg aW4gb3VyIHN5c3RlbXMuCgpLcmlzdGlhbiBkb2Vzbid0IGdldCB0aGUgaGFuZywgYW5kIGlmIEkg YmFjayBvdXQgdGhlIDRHIHJlc3RyaWN0aW9uIGluIAp0aGUgU1RBVEVfQkFTRV9BRERSRVNTLCBJ IGRvbid0IHNlZSBhbnkgY29ycnVwdGlvbiB3aGlsZSBydW5uaW5nCklOVEVMX0RFQlVHPXNwaWxs X2ZzIGdseGdlYXJzLgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2 ZWwK