From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jike Song Subject: Re: [Announcement] 2014-Q4 release of XenGT - a Mediated Graphics Passthrough Solution from Intel Date: Mon, 12 Jan 2015 11:04:06 +0800 Message-ID: <54B339A6.5010904@intel.com> References: <53D215D3.50608@intel.com> <547FCAAD.2060406@intel.com> <54AF967B.3060503@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id 31CD06E410 for ; Sun, 11 Jan 2015 19:07:57 -0800 (PST) In-Reply-To: <54AF967B.3060503@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: xen-devel@lists.xen.org, intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: "White, Michael L" , "Dong, Eddie" , "Li, Susie" , "Cowperthwaite, David J" , "Zhou, Chao" , "Haron, Sandra" , "Zhu, Libo" , "Wang, Hongbo" List-Id: intel-gfx@lists.freedesktop.org V2hvb3BzLiBDaGFuZ2VkIHRoZSB0aXRsZSBmcm9tICIyMDE1LVExIiB0byBiZSAiMjAxNC1RNCIg OikKCi0tClRoYW5rcywKSmlrZQoKCk9uIDAxLzA5LzIwMTUgMDQ6NTEgUE0sIEppa2UgU29uZyB3 cm90ZToKPiBIaSBhbGwsCj4KPiAgICAgV2UncmUgcGxlYXNlZCB0byBhbm5vdW5jZSBhIHB1Ymxp YyB1cGRhdGUgdG8gSW50ZWwgR3JhcGhpY3MgVmlydHVhbGl6YXRpb24gVGVjaG5vbG9neSAoSW50 ZWwgR1ZULWcsIGZvcm1lcmx5IGtub3duIGFzIFhlbkdUKS4gSW50ZWwgR1ZULWcgaXMgYSBjb21w bGV0ZSB2R1BVIHNvbHV0aW9uIHdpdGggbWVkaWF0ZWQgcGFzcy10aHJvdWdoLCBzdXBwb3J0ZWQg dG9kYXkgb24gNHRoIGdlbmVyYXRpb24gSW50ZWwgQ29yZShUTSkgcHJvY2Vzc29ycyB3aXRoIElu dGVsIEdyYXBoaWNzIHByb2Nlc3NvcnMuIEEgdmlydHVhbCBHUFUgaW5zdGFuY2UgaXMgbWFpbnRh aW5lZCBmb3IgZWFjaCBWTSwgd2l0aCBwYXJ0IG9mIHBlcmZvcm1hbmNlIGNyaXRpY2FsIHJlc291 cmNlcyBkaXJlY3RseSBhc3NpZ25lZC4gVGhlIGNhcGFiaWxpdHkgb2YgcnVubmluZyBuYXRpdmUg Z3JhcGhpY3MgZHJpdmVyIGluc2lkZSBhIFZNLCB3aXRob3V0IGh5cGVydmlzb3IgaW50ZXJ2ZW50 aW9uIGluIHBlcmZvcm1hbmNlIGNyaXRpY2FsIHBhdGhzLCBhY2hpZXZlcyBhIGdvb2QgYmFsYW5j ZSBhbW9uZyBwZXJmb3JtYW5jZSwgZmVhdHVyZSwgYW5kIHNoYXJpbmcgY2FwYWJpbGl0eS4gVGhv dWdoIHdlIG9ubHkgc3VwcG9ydCBYZW4gb24gSW50ZWwgUHJvY2Vzc29yIEdyYXBoaWNzIHNvIGZh ciwgdGhlIGNvcmUgbG9naWMgY2FuIGJlIGVhc2lseSBwb3J0ZWQgdG8gb3RoZXIgaHlwZXJ2aXNv cnMuICAgVGhlIFhlbkdUIHByb2plY3Qgc2hvdWxkIGJlIGNvbnNpZGVyZWQgYSB3b3JrIGluIHBy b2dyZXNzLCBBcyBzdWNoIGl0IGlzIG5vdCBhIGNvbXBsZXRlIHByb2R1Y3Qgbm9yIHNob3VsZCBp dCBiZSBjb25zaWRlcmVkIG9uZS4sIEV4dHJhIGNhcmUgc2hvdWxkIGJlIHRha2VuIHdoZW4gdGVz dGluZyBhbmQgY29uZmlndXJpbmcgYSBzeXN0ZW0gdG8gdXNlIHRoZSBYZW5HVCBwcm9qZWN0Lgo+ Cj4gVGhlIG5ld3Mgb2YgdGhpcyB1cGRhdGU6Cj4KPiAJLSBrZXJuZWwgdXBkYXRlIGZyb20gMy4x NC4xIHRvIGRybS1pbnRlbCAzLjE3LjAuCj4gCS0gV2UgcGxhbiB0byBpbnRlZ3JhdGUgSW50ZWwg R1ZULWcgYXMgYSBmZWF0dXJlIGluIGk5MTUgZHJpdmVyLiBUaGF0IGVmZm9ydCBpcyBzdGlsbCB1 bmRlciByZXZpZXcsIG5vdCBpbmNsdWRlZCBpbiB0aGlzIHVwZGF0ZSB5ZXQuCj4gCS0gTmV4dCB1 cGRhdGUgd2lsbCBiZSBhcm91bmQgZWFybHkgQXByLCAyMDE1Lgo+Cj4gVGhpcyB1cGRhdGUgY29u c2lzdHMgb2Y6Cj4KPiAJLSBJbmNsdWRpbmcgc29tZSBidWcgZml4ZXMgYW5kIHN0YWJpbGl0eSBl bmhhbmNlbWVudC4KPiAJLSBNYWtpbmcgWGVuR1QgZGV2aWNlIG1vZGVsIHRvIGJlIGF3YXJlIG9m IEJyb2Fkd2VsbC4gSW4gdGhpcyB2ZXJzaW9uIEJEVyBpcyBub3QgeWV0IGZ1bmN0aW9uaW5nLgo+ IAktIEF2YWlsYWJsZSBGZW5jZSByZWdpc3RlcnMgbnVtYmVyIGlzIGNoYW5nZWQgdG8gMzIgZnJv bSAxNiB0byBhbGlnbiB3aXRoIEhTVyBoYXJkd2FyZS4KPiAJLSBOZXcgY2FzY2FkZSBpbnRlcnJ1 cHQgZnJhbWV3b3JrIGZvciBzdXBwb3J0aW5nIGludGVycnVwdCB2aXJ0dWFsaXphdGlvbiBvbiBi b3RoIEhhc3dlbGwgYW5kIEJyb2Fkd2VsbC4KPiAJLSBBZGQgYmFjayB0aGUgZ2VtX3ZndGJ1ZmZl ci4gVGhlIHByZXZpb3VzIHJlbGVhc2UgZGlkIG5vdCBidWlsZCB0aGF0IG1vZHVsZSBmb3IgMy4x NCBrZXJuZWwuIEluIHRoaXMgcmVsZWFzZSwgdGhlIG1vZHVsZSBpcyBiYWNrIGFuZCByZWJhc2Vk IHRvIDMuMTcuCj4gCS0gRW5hYmxlIHRoZSBpcnEgYmFzZWQgY29udGV4dCBzd2l0Y2ggaW4gdmd0 IGRyaXZlciwgd2hpY2ggd2lsbCBoZWxwIHJlZHVjZSB0aGUgY3B1IHV0aWxpemF0aW9uIHdoaWxl IGRvaW5nIGNvbnRleHQgc3dpdGNoLCBpdCBpcyBlbmFibGVkIGJ5IGRlZmF1bHQsIGFuZCBjYW4g YmUgdHVybiBvZmYgYnkga2VybmVsIGZsYWcgaXJxX2Jhc2VkX2N0eF9zd2l0Y2guCj4KPgo+IFBs ZWFzZSByZWZlciB0byB0aGUgbmV3IHNldHVwIGd1aWRlLCB3aGljaCBwcm92aWRlcyBzdGVwLXRv LXN0ZXAgZGV0YWlscyBhYm91dCBidWlsZGluZy9jb25maWd1cmluZy9ydW5uaW5nIEludGVsIEdW VC1nOgo+Cj4gCWh0dHBzOi8vZ2l0aHViLmNvbS8wMW9yZy9YZW5HVC1QcmV2aWV3LWtlcm5lbC9i bG9iL21hc3Rlci9YZW5HVF9TZXR1cF9HdWlkZS5wZGYKPgo+IFRoZSBuZXcgc291cmNlIGNvZGVz IGFyZSBhdmFpbGFibGUgYXQgdGhlIHVwZGF0ZWQgZ2l0aHViIHJlcG9zOgo+Cj4gCUxpbnV4OiBo dHRwczovL2dpdGh1Yi5jb20vMDFvcmcvWGVuR1QtUHJldmlldy1rZXJuZWwuZ2l0Cj4gCVhlbjog aHR0cHM6Ly9naXRodWIuY29tLzAxb3JnL1hlbkdULVByZXZpZXcteGVuLmdpdAo+IAlRZW11OiBo dHRwczovL2dpdGh1Yi5jb20vMDFvcmcvWGVuR1QtUHJldmlldy1xZW11LmdpdAo+Cj4KPiBNb3Jl IGluZm9ybWF0aW9uIGFib3V0IEludGVsIEdWVC1nIGJhY2tncm91bmQsIGFyY2hpdGVjdHVyZSwg ZXRjIGNhbiBiZSBmb3VuZCBhdDoKPgo+Cj4gCWh0dHBzOi8vd3d3LnVzZW5peC5vcmcvY29uZmVy ZW5jZS9hdGMxNC90ZWNobmljYWwtc2Vzc2lvbnMvcHJlc2VudGF0aW9uL3RpYW4KPiAJaHR0cDov L2V2ZW50cy5saW51eGZvdW5kYXRpb24ub3JnL3NpdGVzL2V2ZW50cy9maWxlcy9zbGlkZXMvWGVu R1QtWGVuJTIwU3VtbWl0LXY3XzAucGRmCj4gCWh0dHBzOi8vMDEub3JnL3hlbi9ibG9ncy9zcmNs YXJreC8yMDEzL2dyYXBoaWNzLXZpcnR1YWxpemF0aW9uLXhlbmd0Cj4KPgo+Cj4gVGhlIHByZXZp b3VzIHVwZGF0ZSBjYW4gYmUgZm91bmQgaGVyZToKPgo+Cj4gCWh0dHA6Ly9saXN0cy54ZW4ub3Jn L2FyY2hpdmVzL2h0bWwveGVuLWRldmVsLzIwMTQtMTIvbXNnMDA0NzQuaHRtbAo+Cj4KPgo+IEFw cHJlY2lhdGUgeW91ciBjb21tZW50cyEKPgo+Cj4KPiAtLQo+IFRoYW5rcywKPiBKaWtlCj4KPgo+ IE9uIDEyLzA0LzIwMTQgMTA6NDUgQU0sIEppa2UgU29uZyB3cm90ZToKPj4gSGkgYWxsLAo+Pgo+ PiBXZSdyZSBwbGVhc2VkIHRvIGFubm91bmNlIGEgcHVibGljIHJlbGVhc2UgdG8gSW50ZWwgR3Jh cGhpY3MgVmlydHVhbGl6YXRpb24gVGVjaG5vbG9neSAoSW50ZWwgR1ZULWcsIGZvcm1lcmx5IGtu b3duIGFzIFhlbkdUKS4gSW50ZWwgR1ZULWcgaXMgYSBjb21wbGV0ZSB2R1BVIHNvbHV0aW9uIHdp dGggbWVkaWF0ZWQgcGFzcy10aHJvdWdoLCBzdXBwb3J0ZWQgdG9kYXkgb24gNHRoIGdlbmVyYXRp b24gSW50ZWwgQ29yZShUTSkgcHJvY2Vzc29ycyB3aXRoIEludGVsIEdyYXBoaWNzIHByb2Nlc3Nv cnMuIEEgdmlydHVhbCBHUFUgaW5zdGFuY2UgaXMgbWFpbnRhaW5lZCBmb3IgZWFjaCBWTSwgd2l0 aCBwYXJ0IG9mIHBlcmZvcm1hbmNlIGNyaXRpY2FsIHJlc291cmNlcyBkaXJlY3RseSBhc3NpZ25l ZC4gVGhlIGNhcGFiaWxpdHkgb2YgcnVubmluZyBuYXRpdmUgZ3JhcGhpY3MgZHJpdmVyIGluc2lk ZSBhIFZNLCB3aXRob3V0IGh5cGVydmlzb3IgaW50ZXJ2ZW50aW9uIGluIHBlcmZvcm1hbmNlIGNy aXRpY2FsIHBhdGhzLCBhY2hpZXZlcyBhIGdvb2QgYmFsYW5jZSBhbW9uZyBwZXJmb3JtYW5jZSwg ZmVhdHVyZSwgYW5kIHNoYXJpbmcgY2FwYWJpbGl0eS4gVGhvdWdoIHdlIG9ubHkgc3VwcG9ydCBY ZW4gb24gSW50ZWwgUHJvY2Vzc29yIEdyYXBoaWNzIHNvIGZhciwgdGhlIGNvcmUgbG9naWMgY2Fu IGJlIGVhc2lseSBwb3J0ZWQgdG8gb3RoZXIgaHlwZXJ2aXNvcnMuCj4+Cj4+Cj4+IFRoZSBuZXdz IG9mIHRoaXMgdXBkYXRlOgo+Pgo+Pgo+PiAJLSBrZXJuZWwgdXBkYXRlIGZyb20gMy4xMS42IHRv IDMuMTQuMQo+Pgo+PiAJLSBXZSBwbGFuIHRvIGludGVncmF0ZSBJbnRlbCBHVlQtZyBhcyBhIGZl YXR1cmUgaW4gaTkxNSBkcml2ZXIuIFRoYXQgZWZmb3J0IGlzIHN0aWxsIHVuZGVyIHJldmlldywg bm90IGluY2x1ZGVkIGluIHRoaXMgdXBkYXRlIHlldAo+Pgo+PiAJLSBOZXh0IHVwZGF0ZSB3aWxs IGJlIGFyb3VuZCBlYXJseSBKYW4sIDIwMTUKPj4KPj4KPj4gVGhpcyB1cGRhdGUgY29uc2lzdHMg b2Y6Cj4+Cj4+IAktIFdpbmRvd3MgSFZNIHN1cHBvcnQgd2l0aCBkcml2ZXIgdmVyc2lvbiAxNS4z My4zOTEwCj4+Cj4+IAktIFN0YWJpbGl0eSBmaXhlcywgZS5nLiBzdGFiaWxpemUgR1BVLCB0aGUg R1BVIGhhbmcgb2NjdXJyZW5jZSByYXRlIGJlY29tZXMgcmFyZSBub3cKPj4KPj4gCS0gSGFyZHdh cmUgTWVkaWEgQWNjZWxlcmF0aW9uIGZvciBEZWNvZGluZy9FbmNvZGluZy9UcmFuc2NvZGluZywg VkMxLCBIMjY0IGV0Yy4gZm9ybWF0IHN1cHBvcnRpbmcKPj4KPj4gCS0gRGlzcGxheSBlbmhhbmNl bWVudHMsIGUuZy4gRFAgdHlwZSBpcyBzdXBwb3J0ZWQgZm9yIHZpcnR1YWwgUE9SVAo+Pgo+PiAJ LSBEaXNwbGF5IHBvcnQgY2FwYWJpbGl0eSB2aXJ0dWFsaXphdGlvbjogd2l0aCB0aGlzIGZlYXR1 cmUsIGRvbTAgbWFuYWdlciBjb3VsZCBmcmVlbHkgYXNzaWduIHZpcnR1YWwgRERJIHBvcnRzIHRv IFZNLCBub3QgbmVjZXNzYXJ5IHRvIGNoZWNrIHdoZXRoZXIgdGhlIGNvcnJlc3BvbmRpbmcgcGh5 c2ljYWwgRERJIHBvcnRzIGFyZSBhdmFpbGFibGUKPj4KPj4KPj4KPj4gUGxlYXNlIHJlZmVyIHRv IHRoZSBuZXcgc2V0dXAgZ3VpZGUsIHdoaWNoIHByb3ZpZGVzIHN0ZXAtdG8tc3RlcCBkZXRhaWxz IGFib3V0IGJ1aWxkaW5nL2NvbmZpZ3VyaW5nL3J1bm5pbmcgSW50ZWwgR1ZULWc6Cj4+Cj4+Cj4+ IAlodHRwczovL2dpdGh1Yi5jb20vMDFvcmcvWGVuR1QtUHJldmlldy1rZXJuZWwvYmxvYi9tYXN0 ZXIvWGVuR1RfU2V0dXBfR3VpZGUucGRmCj4+Cj4+Cj4+Cj4+IFRoZSBuZXcgc291cmNlIGNvZGVz IGFyZSBhdmFpbGFibGUgYXQgdGhlIHVwZGF0ZWQgZ2l0aHViIHJlcG9zOgo+Pgo+Pgo+PiAJTGlu dXg6IGh0dHBzOi8vZ2l0aHViLmNvbS8wMW9yZy9YZW5HVC1QcmV2aWV3LWtlcm5lbC5naXQKPj4K Pj4gCVhlbjogaHR0cHM6Ly9naXRodWIuY29tLzAxb3JnL1hlbkdULVByZXZpZXcteGVuLmdpdAo+ Pgo+PiAJUWVtdTogaHR0cHM6Ly9naXRodWIuY29tLzAxb3JnL1hlbkdULVByZXZpZXctcWVtdS5n aXQKPj4KPj4KPj4gTW9yZSBpbmZvcm1hdGlvbiBhYm91dCBJbnRlbCBHVlQtZyBiYWNrZ3JvdW5k LCBhcmNoaXRlY3R1cmUsIGV0YyBjYW4gYmUgZm91bmQgYXQ6Cj4+Cj4+Cj4+IAlodHRwczovL3d3 dy51c2VuaXgub3JnL2NvbmZlcmVuY2UvYXRjMTQvdGVjaG5pY2FsLXNlc3Npb25zL3ByZXNlbnRh dGlvbi90aWFuCj4+Cj4+IAlodHRwOi8vZXZlbnRzLmxpbnV4Zm91bmRhdGlvbi5vcmcvc2l0ZXMv ZXZlbnRzL2ZpbGVzL3NsaWRlcy9YZW5HVC1YZW4lMjBTdW1taXQtdjdfMC5wZGYKPj4KPj4gCWh0 dHBzOi8vMDEub3JnL3hlbi9ibG9ncy9zcmNsYXJreC8yMDEzL2dyYXBoaWNzLXZpcnR1YWxpemF0 aW9uLXhlbmd0Cj4+Cj4+Cj4+IFRoZSBwcmV2aW91cyB1cGRhdGUgY2FuIGJlIGZvdW5kIGhlcmU6 Cj4+Cj4+Cj4+IAlodHRwOi8vbGlzdHMueGVuLm9yZy9hcmNoaXZlcy9odG1sL3hlbi1kZXZlbC8y MDE0LTA3L21zZzAzMjQ4Lmh0bWwKPj4KPj4KPj4gQXBwcmVjaWF0ZSB5b3VyIGNvbW1lbnRzIQo+ Pgo+Pgo+PiAtLQo+PiBUaGFua3MsCj4+IEppa2UKPj4KPj4gT24gMDcvMjUvMjAxNCAwNDozMSBQ TSwgSmlrZSBTb25nIHdyb3RlOgo+Pj4gSGkgYWxsLAo+Pj4KPj4+IFdlJ3JlIHBsZWFzZWQgdG8g YW5ub3VuY2UgYW4gdXBkYXRlIHRvIEludGVsIEdyYXBoaWNzIFZpcnR1YWxpemF0aW9uIFRlY2hu b2xvZ3kgKEludGVsIEdWVC1nLCBmb3JtZXJseSBrbm93biBhcyBYZW5HVCkuIEludGVsIEdWVC1n IGlzIGEgY29tcGxldGUgdkdQVSBzb2x1dGlvbiB3aXRoIG1lZGlhdGVkIHBhc3MtdGhyb3VnaCwg c3VwcG9ydGVkIHRvZGF5IG9uIDR0aCBnZW5lcmF0aW9uIEludGVsIENvcmUoVE0pIHByb2Nlc3Nv cnMgd2l0aCBJbnRlbCBHcmFwaGljcyBwcm9jZXNzb3JzLiBBIHZpcnR1YWwgR1BVIGluc3RhbmNl IGlzIG1haW50YWluZWQgZm9yIGVhY2ggVk0sIHdpdGggcGFydCBvZiBwZXJmb3JtYW5jZSBjcml0 aWNhbCByZXNvdXJjZXMgZGlyZWN0bHkgYXNzaWduZWQuIFRoZSBjYXBhYmlsaXR5IG9mIHJ1bm5p bmcgbmF0aXZlIGdyYXBoaWNzIGRyaXZlciBpbnNpZGUgYSBWTSwgd2l0aG91dCBoeXBlcnZpc29y IGludGVydmVudGlvbiBpbiBwZXJmb3JtYW5jZSBjcml0aWNhbCBwYXRocywgYWNoaWV2ZXMgYSBn b29kIGJhbGFuY2UgYW1vbmcgcGVyZm9ybWFuY2UsIGZlYXR1cmUsIGFuZCBzaGFyaW5nIGNhcGFi aWxpdHkuIFRob3VnaCB3ZSBvbmx5IHN1cHBvcnQgWGVuIG9uIEludGVsIFByb2Nlc3NvciBHcmFw aGljcyBzbyBmYXIsIHRoZSBjb3JlIGxvZ2ljIGNhbiBiZSBlYXNpbHkgcG9ydGVkIHRvIG90aGVy IGh5cGVydmlzb3JzLgo+Pj4KPj4+IFRoZSBuZXdzIG9mIHRoaXMgdXBkYXRlOgo+Pj4KPj4+IAkt IFByb2plY3QgY29kZSBuYW1lIGlzICJYZW5HVCIsIG5vdyBvZmZpY2lhbCBuYW1lIGlzIEludGVs IEdyYXBoaWNzIFZpcnR1YWxpemF0aW9uIFRlY2hub2xvZ3kgKEludGVsIEdWVC1nKQo+Pj4gCS0g Q3VycmVudGx5IEludGVsIEdWVC1nIHN1cHBvcnRzIEludGVsIFByb2Nlc3NvciBHcmFwaGljcyBi dWlsdCBpbnRvIDR0aCBnZW5lcmF0aW9uIEludGVsIENvcmUgcHJvY2Vzc29ycyAtIEhhc3dlbGwg cGxhdGZvcm0KPj4+IAktIE1vdmluZyBmb3J3YXJkLCBYZW5HVCB3aWxsIGNoYW5nZSB0byBxdWFy dGVybHkgcmVsZWFzZSBjYWRlbmNlLiBOZXh0IHVwZGF0ZSB3aWxsIGJlIGFyb3VuZCBlYXJseSBP Y3RvYmVyLCAyMDE0Lgo+Pj4KPj4+IFRoaXMgdXBkYXRlIGNvbnNpc3RzIG9mOgo+Pj4KPj4+IAkt IFN0YWJpbGl0eSBmaXhlcywgZS5nLiBzdGFibGUgRFAgc3VwcG9ydAo+Pj4gCS0gRGlzcGxheSBl bmhhbmNlbWVudHMsIGUuZy4gdmlydHVhbCBtb25pdG9yIHN1cHBvcnQuIFVzZXJzIGNhbiBkZWZp bmUgYSB2aXJ0dWFsIG1vbml0b3IgdHlwZSB3aXRoIGN1c3RvbWl6ZWQgRURJRCBmb3IgdmlydHVh bCBtYWNoaW5lcywgbm90IG5lY2Vzc2FyaWx5IHRoZSBzYW1lIGFzIHBoeXNpY2FsIG1vbml0b3Jz Lgo+Pj4gCS0gSW1wcm92ZWQgc3VwcG9ydCBmb3IgR1BVIHJlY292ZXJ5Cj4+PiAJLSBFeHBlcmlt ZW50YWwgV2luZG93cyBIVk0gc3VwcG9ydC4gVG8gZG93bmxvYWQgdGhlIGV4cGVyaW1lbnRhbCB2 ZXJzaW9uLCBzZWUgc2V0dXAgZ3VpZGUgZm9yIGRldGFpbHMKPj4+IAktIEV4cGVyaW1lbnRhbCBI YXJkd2FyZSBNZWRpYSBBY2NlbGVyYXRpb24gZm9yIGRlY29kaW5nLgo+Pj4KPj4+Cj4+PiBQbGVh c2UgcmVmZXIgdG8gdGhlIG5ldyBzZXR1cCBndWlkZSwgd2hpY2ggcHJvdmlkZXMgc3RlcC10by1z dGVwIGRldGFpbHMgYWJvdXQgYnVpbGRpbmcvY29uZmlndXJpbmcvcnVubmluZyBJbnRlbCBHVlQt ZzoKPj4+Cj4+PiAJaHR0cHM6Ly9naXRodWIuY29tLzAxb3JnL1hlbkdULVByZXZpZXcta2VybmVs L2Jsb2IvbWFzdGVyL1hlbkdUX1NldHVwX0d1aWRlLnBkZgo+Pj4KPj4+Cj4+PiBUaGUgbmV3IHNv dXJjZSBjb2RlcyBhcmUgYXZhaWxhYmxlIGF0IHRoZSB1cGRhdGVkIGdpdGh1YiByZXBvczoKPj4+ Cj4+PiAJTGludXg6IGh0dHBzOi8vZ2l0aHViLmNvbS8wMW9yZy9YZW5HVC1QcmV2aWV3LWtlcm5l bC5naXQKPj4+IAlYZW46IGh0dHBzOi8vZ2l0aHViLmNvbS8wMW9yZy9YZW5HVC1QcmV2aWV3LXhl bi5naXQKPj4+IAlRZW11OiBodHRwczovL2dpdGh1Yi5jb20vMDFvcmcvWGVuR1QtUHJldmlldy1x ZW11LmdpdAo+Pj4KPj4+Cj4+PiBNb3JlIGluZm9ybWF0aW9uIGFib3V0IEludGVsIEdWVC1nIGJh Y2tncm91bmQsIGFyY2hpdGVjdHVyZSwgZXRjIGNhbiBiZSBmb3VuZCBhdDoKPj4+Cj4+PiAJaHR0 cHM6Ly93d3cudXNlbml4Lm9yZy9jb25mZXJlbmNlL2F0YzE0L3RlY2huaWNhbC1zZXNzaW9ucy9w cmVzZW50YXRpb24vdGlhbgo+Pj4gCWh0dHA6Ly9ldmVudHMubGludXhmb3VuZGF0aW9uLm9yZy9z aXRlcy9ldmVudHMvZmlsZXMvc2xpZGVzL1hlbkdULVhlbiUyMFN1bW1pdC12N18wLnBkZgo+Pj4g CWh0dHBzOi8vMDEub3JnL3hlbi9ibG9ncy9zcmNsYXJreC8yMDEzL2dyYXBoaWNzLXZpcnR1YWxp emF0aW9uLXhlbmd0Cj4+Pgo+Pj4gVGhlIHByZXZpb3VzIHVwZGF0ZSBjYW4gYmUgZm91bmQgaGVy ZToKPj4+Cj4+PiAJaHR0cDovL2xpc3RzLnhlbi5vcmcvYXJjaGl2ZXMvaHRtbC94ZW4tZGV2ZWwv MjAxNC0wMi9tc2cwMTg0OC5odG1sCj4+Pgo+Pj4gQXBwcmVjaWF0ZSB5b3VyIGNvbW1lbnRzIQo+ Pj4KPj4+Cj4+Pgo+Pj4KPj4+IC0tCj4+PiBUaGFua3MsCj4+PiBKaWtlCj4+PgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=