From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jike Song Subject: Re: [Announcement] 2015-Q1 release of XenGT - a Mediated Graphics Passthrough Solution from Intel Date: Fri, 10 Apr 2015 21:23:16 +0800 Message-ID: <5527CEC4.9080700@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 C45576E05D for ; Fri, 10 Apr 2015 06:29:31 -0700 (PDT) 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 SGkgYWxsLAoKV2UncmUgcGxlYXNlZCB0byBhbm5vdW5jZSBhIHB1YmxpYyB1cGRhdGUgdG8gSW50 ZWwgR3JhcGhpY3MgVmlydHVhbGl6YXRpb24gVGVjaG5vbG9neSAoSW50ZWwgR1ZULWcsIGZvcm1l cmx5IGtub3duIGFzIFhlbkdUKS4gSW50ZWwgR1ZULWcgaXMgYSBjb21wbGV0ZSB2R1BVIHNvbHV0 aW9uIHdpdGggbWVkaWF0ZWQgcGFzcy10aHJvdWdoLCBzdXBwb3J0ZWQgdG9kYXkgb24gNHRoIGdl bmVyYXRpb24gSW50ZWwgQ29yZShUTSkgcHJvY2Vzc29ycyB3aXRoIEludGVsIEdyYXBoaWNzIHBy b2Nlc3NvcnMuIEEgdmlydHVhbCBHUFUgaW5zdGFuY2UgaXMgbWFpbnRhaW5lZCBmb3IgZWFjaCBW TSwgd2l0aCBwYXJ0IG9mIHBlcmZvcm1hbmNlIGNyaXRpY2FsIHJlc291cmNlcyBkaXJlY3RseSBh c3NpZ25lZC4gVGhlIGNhcGFiaWxpdHkgb2YgcnVubmluZyBuYXRpdmUgZ3JhcGhpY3MgZHJpdmVy IGluc2lkZSBhIFZNLCB3aXRob3V0IGh5cGVydmlzb3IgaW50ZXJ2ZW50aW9uIGluIHBlcmZvcm1h bmNlIGNyaXRpY2FsIHBhdGhzLCBhY2hpZXZlcyBhIGdvb2QgYmFsYW5jZSBhbW9uZyBwZXJmb3Jt YW5jZSwgZmVhdHVyZSwgYW5kIHNoYXJpbmcgY2FwYWJpbGl0eS4gVGhvdWdoIHdlIG9ubHkgc3Vw cG9ydCBYZW4gb24gSW50ZWwgUHJvY2Vzc29yIEdyYXBoaWNzIHNvIGZhciwgdGhlIGNvcmUgbG9n aWMgY2FuIGJlIGVhc2lseSBwb3J0ZWQgdG8gb3RoZXIgaHlwZXJ2aXNvcnMuCgpUaXAgb2YgcmVw b3NpdG9yaWVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiAgICAgICAgICBLZXJuZWw6IGEw MTFjOWY5NTNlLCBCcmFuY2g6IG1hc3Rlci0yMDE1UTEtMy4xOC4wCiAgICAgICAgICBRZW11OiAy YTc1YmJmZjYyYzEsIEJyYW5jaDogbWFzdGVyCiAgICAgICAgICBYZW46IDM4YzM2ZjBmNTExYjEs IEJyYW5jaDogbWFzdGVyLTIwMTVRMS00LjUKClN1bW1hcnkgdGhpcyB1cGRhdGUKLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQoJLSBQcmVsaW1pbmFyeSBCcm9hZHdlbGwgc3VwcG9ydC4KCS0ga2Vy bmVsIHVwZGF0ZSBmcm9tIGRybS1pbnRlbCAzLjE3LjAgdG8gZHJtLWludGVsIDMuMTguMCh0YWc6 IGRybS1pbnRlbC1uZXh0LWZpeGVzLTIwMTQtMTItMTcsIG5vdGljZSB0aGF0IGk5MTUgZHJpdmVy IGNvZGUgaXMgbXVjaCBuZXdlciB0aGFuIGtlcm5lbCBzdGFibGUgdmVyc2lvbikuCgktIE5leHQg dXBkYXRlIHdpbGwgYmUgYXJvdW5kIGVhcmx5IEp1bHksIDIwMTUuCgktIEtWTSBzdXBwb3J0IGlz IHN0aWxsIGluIGEgc2VwYXJhdGUgYnJhbmNoIGFzIHByb3RvdHlwZSB3b3JrLiBXZSBwbGFuIHRv IGludGVncmF0ZSBLVk0vWGVuIHN1cHBvcnQgdG9nZXRoZXIgaW4gZnV0dXJlIHJlbGVhc2VzLgoK VGhpcyB1cGRhdGUgY29uc2lzdHMgb2Y6CgktIGd2dC1nIGNvcmUgbG9naWMgY29kZSB3YXMgbW92 ZWQgaW50byBpOTE1IGRyaXZlciBkaXJlY3RvcnkuCgktIEhvc3QgbWVkaWF0aW9uIGlzIHVzZWQg Zm9yIGRvbTAgaTkxNSBkcml2ZXIgYWNjZXNzLCBpbnN0ZWFkIG9mIGRlLXByaXZpbGVnZWQgZG9t MC4KCS0gVGhlIFhlbi1zcGVjaWZpYyBjb2RlIHdhcyBzZXBhcmF0ZWQgZnJvbSB2Z3QgY29yZSBs b2dpYyBpbnRvIGEgbmV3IGZpbGUgImRyaXZlci94ZW4veGVuZ3QuYyIuCgktIEJyb2Fkd2VsbCBp cyBwcmVsaW1pbmFyaWx5IHN1cHBvcnRlZCBpbiB0aGlzIHJlbGVhc2UuIFVzZXJzIGNvdWxkIHN0 YXJ0IG11bHRpcGxlIGxpbnV4L3dpbmRvd3MgNjQtYml0IHZpcnR1YWwgbWFjaGluZXMgc2ltdWx0 YW5lb3VzbHksIGFuZCBwZXJmb3JtIGRpc3BsYXkgc3dpdGNoIGFtb25nIHRoZW0uCgpOb3RpY2Ug dGhhdCBpdCBpcyBzdGlsbCBwcmVsaW1pbmFyeSByZWxlYXNlIGZvciBCRFcsIHdoaWNoIGlzIG5v dCB5ZXQgaW4gdGhlIHNhbWUgbGV2ZWwgb2YgSFNXIHJlbGVhc2UuIERpZmZlcmVuY2VzIGluY2x1 ZGU6CiAgICAgICAgICAgICAgICAgKiBQb3dlci9wZXJmb3JtYW5jZSB0dW5pbmcgb24gQkRXIGlz IG5vdCB5ZXQgZG9uZS4KCSAqIFN0YWJpbGl0eSBuZWVkcyB0byBiZSBpbXByb3ZlZC4KICAgICAg ICAgICAgICAgICAqIE5vIDMyLWJpdCBndWVzdCBPUyBzdXBwb3J0LgogICAgICAgICAgICAgICAg ICogTXVsdGktbW9uaXRvciBzY2VuYXJpbyBpcyBub3QgZnVsbHkgdGVzdGVkLCB3aGlsZSBzaW5n bGUgbW9uaXRvciBvZiBWR0EvSERNSS9EUC9lRFAgc2hvdWxkIGp1c3Qgd29yay4KCgpXaGVyZSB0 byBnZXQ6Ci0tLS0tLS0tLS0tLS0tLS0tCiAgICAgICAgICAgICAgICAga2VyZW5sOiBodHRwczov L2dpdGh1Yi5jb20vMDFvcmcvWGVuR1QtUHJldmlldy1rZXJuZWwuZ2l0CiAgICAgICAgICAgICAg ICAgWGVuOiBodHRwczovL2dpdGh1Yi5jb20vMDFvcmcvWGVuR1QtUHJldmlldy14ZW4uZ2l0CiAg ICAgICAgICAgICAgICAgUWVtdTogaHR0cHM6Ly9naXRodWIuY29tLzAxb3JnL1hlbkdULVByZXZp ZXctcWVtdS5naXQKClBsZWFzZSByZWZlciB0byB0aGUgbmV3IHNldHVwIGd1aWRlLCB3aGljaCBw cm92aWRlcyBzdGVwLXRvLXN0ZXAgZGV0YWlscyBhYm91dCBidWlsZGluZy9jb25maWd1cmluZy9y dW5uaW5nIEludGVsIEdWVC1nOgoJIGh0dHBzOi8vZ2l0aHViLmNvbS8wMW9yZy9YZW5HVC1QcmV2 aWV3LWtlcm5lbC9ibG9iL21hc3Rlci0yMDE1UTEtMy4xOC4wL1hlbkdUX1NldHVwX0d1aWRlXzIw MTVRMS5wZGYKCk1vcmUgaW5mb3JtYXRpb24gYWJvdXQgSW50ZWwgR1ZULWcgYmFja2dyb3VuZCwg YXJjaGl0ZWN0dXJlLCBldGMgY2FuIGJlIGZvdW5kIGF0OgogICAgICAgICAgICAgICAgIGh0dHBz Oi8vd3d3LnVzZW5peC5vcmcvY29uZmVyZW5jZS9hdGMxNC90ZWNobmljYWwtc2Vzc2lvbnMvcHJl c2VudGF0aW9uL3RpYW4KICAgICAgICAgICAgICAgICBodHRwOi8vZXZlbnRzLmxpbnV4Zm91bmRh dGlvbi5vcmcvc2l0ZXMvZXZlbnRzL2ZpbGVzL3NsaWRlcy9YZW5HVC1YZW4lMjBTdW1taXQtdjdf MC5wZGYKICAgICAgICAgICAgICAgICBodHRwczovLzAxLm9yZy94ZW4vYmxvZ3Mvc3JjbGFya3gv MjAxMy9ncmFwaGljcy12aXJ0dWFsaXphdGlvbi14ZW5ndAoKVGhlIHByZXZpb3VzIHVwZGF0ZSBj YW4gYmUgZm91bmQgaGVyZToKICAgICAgICAgICAgICAgIGh0dHA6Ly9saXN0cy54ZW4ub3JnL2Fy Y2hpdmVzL2h0bWwveGVuLWRldmVsLzIwMTQtMTIvbXNnMDA0NzQuaHRtbAoKCk5vdGUKLS0tLS0t LS0tLS0tLS0tCglUaGUgWGVuR1QgcHJvamVjdCBzaG91bGQgYmUgY29uc2lkZXJlZCBhIHdvcmsg aW4gcHJvZ3Jlc3MsIEFzIHN1Y2ggaXQgaXMgbm90IGEgY29tcGxldGUgcHJvZHVjdCBub3Igc2hv dWxkIGl0IGJlIGNvbnNpZGVyZWQgb25lLiwgRXh0cmEgY2FyZSBzaG91bGQgYmUgdGFrZW4gd2hl biB0ZXN0aW5nIGFuZCBjb25maWd1cmluZyBhIHN5c3RlbSB0byB1c2UgdGhlIFhlbkdUIHByb2pl Y3QuCgoKLS0KVGhhbmtzLApKaWtlCgpPbiAwMS8wOS8yMDE1IDA0OjUxIFBNLCBKaWtlIFNvbmcg d3JvdGU6Cj4gSGkgYWxsLAo+Cj4gICAgIFdlJ3JlIHBsZWFzZWQgdG8gYW5ub3VuY2UgYSBwdWJs aWMgdXBkYXRlIHRvIEludGVsIEdyYXBoaWNzIFZpcnR1YWxpemF0aW9uIFRlY2hub2xvZ3kgKElu dGVsIEdWVC1nLCBmb3JtZXJseSBrbm93biBhcyBYZW5HVCkuIEludGVsIEdWVC1nIGlzIGEgY29t cGxldGUgdkdQVSBzb2x1dGlvbiB3aXRoIG1lZGlhdGVkIHBhc3MtdGhyb3VnaCwgc3VwcG9ydGVk IHRvZGF5IG9uIDR0aCBnZW5lcmF0aW9uIEludGVsIENvcmUoVE0pIHByb2Nlc3NvcnMgd2l0aCBJ bnRlbCBHcmFwaGljcyBwcm9jZXNzb3JzLiBBIHZpcnR1YWwgR1BVIGluc3RhbmNlIGlzIG1haW50 YWluZWQgZm9yIGVhY2ggVk0sIHdpdGggcGFydCBvZiBwZXJmb3JtYW5jZSBjcml0aWNhbCByZXNv dXJjZXMgZGlyZWN0bHkgYXNzaWduZWQuIFRoZSBjYXBhYmlsaXR5IG9mIHJ1bm5pbmcgbmF0aXZl IGdyYXBoaWNzIGRyaXZlciBpbnNpZGUgYSBWTSwgd2l0aG91dCBoeXBlcnZpc29yIGludGVydmVu dGlvbiBpbiBwZXJmb3JtYW5jZSBjcml0aWNhbCBwYXRocywgYWNoaWV2ZXMgYSBnb29kIGJhbGFu Y2UgYW1vbmcgcGVyZm9ybWFuY2UsIGZlYXR1cmUsIGFuZCBzaGFyaW5nIGNhcGFiaWxpdHkuIFRo b3VnaCB3ZSBvbmx5IHN1cHBvcnQgWGVuIG9uIEludGVsIFByb2Nlc3NvciBHcmFwaGljcyBzbyBm YXIsIHRoZSBjb3JlIGxvZ2ljIGNhbiBiZSBlYXNpbHkgcG9ydGVkIHRvIG90aGVyIGh5cGVydmlz b3JzLiAgIFRoZSBYZW5HVCBwcm9qZWN0IHNob3VsZCBiZSBjb25zaWRlcmVkIGEgd29yayBpbiBw cm9ncmVzcywgQXMgc3VjaCBpdCBpcyBub3QgYSBjb21wbGV0ZSBwcm9kdWN0IG5vciBzaG91bGQg aXQgYmUgY29uc2lkZXJlZCBvbmUuLCBFeHRyYSBjYXJlIHNob3VsZCBiZSB0YWtlbiB3aGVuIHRl c3RpbmcgYW5kIGNvbmZpZ3VyaW5nIGEgc3lzdGVtIHRvIHVzZSB0aGUgWGVuR1QgcHJvamVjdC4K Pgo+IFRoZSBuZXdzIG9mIHRoaXMgdXBkYXRlOgo+Cj4gCS0ga2VybmVsIHVwZGF0ZSBmcm9tIDMu MTQuMSB0byBkcm0taW50ZWwgMy4xNy4wLgo+IAktIFdlIHBsYW4gdG8gaW50ZWdyYXRlIEludGVs IEdWVC1nIGFzIGEgZmVhdHVyZSBpbiBpOTE1IGRyaXZlci4gVGhhdCBlZmZvcnQgaXMgc3RpbGwg dW5kZXIgcmV2aWV3LCBub3QgaW5jbHVkZWQgaW4gdGhpcyB1cGRhdGUgeWV0Lgo+IAktIE5leHQg dXBkYXRlIHdpbGwgYmUgYXJvdW5kIGVhcmx5IEFwciwgMjAxNS4KPgo+IFRoaXMgdXBkYXRlIGNv bnNpc3RzIG9mOgo+Cj4gCS0gSW5jbHVkaW5nIHNvbWUgYnVnIGZpeGVzIGFuZCBzdGFiaWxpdHkg ZW5oYW5jZW1lbnQuCj4gCS0gTWFraW5nIFhlbkdUIGRldmljZSBtb2RlbCB0byBiZSBhd2FyZSBv ZiBCcm9hZHdlbGwuIEluIHRoaXMgdmVyc2lvbiBCRFcgaXMgbm90IHlldCBmdW5jdGlvbmluZy4K PiAJLSBBdmFpbGFibGUgRmVuY2UgcmVnaXN0ZXJzIG51bWJlciBpcyBjaGFuZ2VkIHRvIDMyIGZy b20gMTYgdG8gYWxpZ24gd2l0aCBIU1cgaGFyZHdhcmUuCj4gCS0gTmV3IGNhc2NhZGUgaW50ZXJy dXB0IGZyYW1ld29yayBmb3Igc3VwcG9ydGluZyBpbnRlcnJ1cHQgdmlydHVhbGl6YXRpb24gb24g Ym90aCBIYXN3ZWxsIGFuZCBCcm9hZHdlbGwuCj4gCS0gQWRkIGJhY2sgdGhlIGdlbV92Z3RidWZm ZXIuIFRoZSBwcmV2aW91cyByZWxlYXNlIGRpZCBub3QgYnVpbGQgdGhhdCBtb2R1bGUgZm9yIDMu MTQga2VybmVsLiBJbiB0aGlzIHJlbGVhc2UsIHRoZSBtb2R1bGUgaXMgYmFjayBhbmQgcmViYXNl ZCB0byAzLjE3Lgo+IAktIEVuYWJsZSB0aGUgaXJxIGJhc2VkIGNvbnRleHQgc3dpdGNoIGluIHZn dCBkcml2ZXIsIHdoaWNoIHdpbGwgaGVscCByZWR1Y2UgdGhlIGNwdSB1dGlsaXphdGlvbiB3aGls ZSBkb2luZyBjb250ZXh0IHN3aXRjaCwgaXQgaXMgZW5hYmxlZCBieSBkZWZhdWx0LCBhbmQgY2Fu IGJlIHR1cm4gb2ZmIGJ5IGtlcm5lbCBmbGFnIGlycV9iYXNlZF9jdHhfc3dpdGNoLgo+Cj4KPiBQ bGVhc2UgcmVmZXIgdG8gdGhlIG5ldyBzZXR1cCBndWlkZSwgd2hpY2ggcHJvdmlkZXMgc3RlcC10 by1zdGVwIGRldGFpbHMgYWJvdXQgYnVpbGRpbmcvY29uZmlndXJpbmcvcnVubmluZyBJbnRlbCBH VlQtZzoKPgo+IAlodHRwczovL2dpdGh1Yi5jb20vMDFvcmcvWGVuR1QtUHJldmlldy1rZXJuZWwv YmxvYi9tYXN0ZXIvWGVuR1RfU2V0dXBfR3VpZGUucGRmCj4KPiBUaGUgbmV3IHNvdXJjZSBjb2Rl cyBhcmUgYXZhaWxhYmxlIGF0IHRoZSB1cGRhdGVkIGdpdGh1YiByZXBvczoKPgo+IAlMaW51eDog aHR0cHM6Ly9naXRodWIuY29tLzAxb3JnL1hlbkdULVByZXZpZXcta2VybmVsLmdpdAo+IAlYZW46 IGh0dHBzOi8vZ2l0aHViLmNvbS8wMW9yZy9YZW5HVC1QcmV2aWV3LXhlbi5naXQKPiAJUWVtdTog aHR0cHM6Ly9naXRodWIuY29tLzAxb3JnL1hlbkdULVByZXZpZXctcWVtdS5naXQKPgo+Cj4gTW9y ZSBpbmZvcm1hdGlvbiBhYm91dCBJbnRlbCBHVlQtZyBiYWNrZ3JvdW5kLCBhcmNoaXRlY3R1cmUs IGV0YyBjYW4gYmUgZm91bmQgYXQ6Cj4KPgo+IAlodHRwczovL3d3dy51c2VuaXgub3JnL2NvbmZl cmVuY2UvYXRjMTQvdGVjaG5pY2FsLXNlc3Npb25zL3ByZXNlbnRhdGlvbi90aWFuCj4gCWh0dHA6 Ly9ldmVudHMubGludXhmb3VuZGF0aW9uLm9yZy9zaXRlcy9ldmVudHMvZmlsZXMvc2xpZGVzL1hl bkdULVhlbiUyMFN1bW1pdC12N18wLnBkZgo+IAlodHRwczovLzAxLm9yZy94ZW4vYmxvZ3Mvc3Jj bGFya3gvMjAxMy9ncmFwaGljcy12aXJ0dWFsaXphdGlvbi14ZW5ndAo+Cj4KPgo+IFRoZSBwcmV2 aW91cyB1cGRhdGUgY2FuIGJlIGZvdW5kIGhlcmU6Cj4KPgo+IAlodHRwOi8vbGlzdHMueGVuLm9y Zy9hcmNoaXZlcy9odG1sL3hlbi1kZXZlbC8yMDE0LTEyL21zZzAwNDc0Lmh0bWwKPgo+Cj4KPiBB cHByZWNpYXRlIHlvdXIgY29tbWVudHMhCj4KPgo+Cj4gLS0KPiBUaGFua3MsCj4gSmlrZQo+Cj4K PiBPbiAxMi8wNC8yMDE0IDEwOjQ1IEFNLCBKaWtlIFNvbmcgd3JvdGU6Cj4+IEhpIGFsbCwKPj4K Pj4gV2UncmUgcGxlYXNlZCB0byBhbm5vdW5jZSBhIHB1YmxpYyByZWxlYXNlIHRvIEludGVsIEdy YXBoaWNzIFZpcnR1YWxpemF0aW9uIFRlY2hub2xvZ3kgKEludGVsIEdWVC1nLCBmb3JtZXJseSBr bm93biBhcyBYZW5HVCkuIEludGVsIEdWVC1nIGlzIGEgY29tcGxldGUgdkdQVSBzb2x1dGlvbiB3 aXRoIG1lZGlhdGVkIHBhc3MtdGhyb3VnaCwgc3VwcG9ydGVkIHRvZGF5IG9uIDR0aCBnZW5lcmF0 aW9uIEludGVsIENvcmUoVE0pIHByb2Nlc3NvcnMgd2l0aCBJbnRlbCBHcmFwaGljcyBwcm9jZXNz b3JzLiBBIHZpcnR1YWwgR1BVIGluc3RhbmNlIGlzIG1haW50YWluZWQgZm9yIGVhY2ggVk0sIHdp dGggcGFydCBvZiBwZXJmb3JtYW5jZSBjcml0aWNhbCByZXNvdXJjZXMgZGlyZWN0bHkgYXNzaWdu ZWQuIFRoZSBjYXBhYmlsaXR5IG9mIHJ1bm5pbmcgbmF0aXZlIGdyYXBoaWNzIGRyaXZlciBpbnNp ZGUgYSBWTSwgd2l0aG91dCBoeXBlcnZpc29yIGludGVydmVudGlvbiBpbiBwZXJmb3JtYW5jZSBj cml0aWNhbCBwYXRocywgYWNoaWV2ZXMgYSBnb29kIGJhbGFuY2UgYW1vbmcgcGVyZm9ybWFuY2Us IGZlYXR1cmUsIGFuZCBzaGFyaW5nIGNhcGFiaWxpdHkuIFRob3VnaCB3ZSBvbmx5IHN1cHBvcnQg WGVuIG9uIEludGVsIFByb2Nlc3NvciBHcmFwaGljcyBzbyBmYXIsIHRoZSBjb3JlIGxvZ2ljIGNh biBiZSBlYXNpbHkgcG9ydGVkIHRvIG90aGVyIGh5cGVydmlzb3JzLgo+Pgo+Pgo+PiBUaGUgbmV3 cyBvZiB0aGlzIHVwZGF0ZToKPj4KPj4KPj4gCS0ga2VybmVsIHVwZGF0ZSBmcm9tIDMuMTEuNiB0 byAzLjE0LjEKPj4KPj4gCS0gV2UgcGxhbiB0byBpbnRlZ3JhdGUgSW50ZWwgR1ZULWcgYXMgYSBm ZWF0dXJlIGluIGk5MTUgZHJpdmVyLiBUaGF0IGVmZm9ydCBpcyBzdGlsbCB1bmRlciByZXZpZXcs IG5vdCBpbmNsdWRlZCBpbiB0aGlzIHVwZGF0ZSB5ZXQKPj4KPj4gCS0gTmV4dCB1cGRhdGUgd2ls bCBiZSBhcm91bmQgZWFybHkgSmFuLCAyMDE1Cj4+Cj4+Cj4+IFRoaXMgdXBkYXRlIGNvbnNpc3Rz IG9mOgo+Pgo+PiAJLSBXaW5kb3dzIEhWTSBzdXBwb3J0IHdpdGggZHJpdmVyIHZlcnNpb24gMTUu MzMuMzkxMAo+Pgo+PiAJLSBTdGFiaWxpdHkgZml4ZXMsIGUuZy4gc3RhYmlsaXplIEdQVSwgdGhl IEdQVSBoYW5nIG9jY3VycmVuY2UgcmF0ZSBiZWNvbWVzIHJhcmUgbm93Cj4+Cj4+IAktIEhhcmR3 YXJlIE1lZGlhIEFjY2VsZXJhdGlvbiBmb3IgRGVjb2RpbmcvRW5jb2RpbmcvVHJhbnNjb2Rpbmcs IFZDMSwgSDI2NCBldGMuIGZvcm1hdCBzdXBwb3J0aW5nCj4+Cj4+IAktIERpc3BsYXkgZW5oYW5j ZW1lbnRzLCBlLmcuIERQIHR5cGUgaXMgc3VwcG9ydGVkIGZvciB2aXJ0dWFsIFBPUlQKPj4KPj4g CS0gRGlzcGxheSBwb3J0IGNhcGFiaWxpdHkgdmlydHVhbGl6YXRpb246IHdpdGggdGhpcyBmZWF0 dXJlLCBkb20wIG1hbmFnZXIgY291bGQgZnJlZWx5IGFzc2lnbiB2aXJ0dWFsIERESSBwb3J0cyB0 byBWTSwgbm90IG5lY2Vzc2FyeSB0byBjaGVjayB3aGV0aGVyIHRoZSBjb3JyZXNwb25kaW5nIHBo eXNpY2FsIERESSBwb3J0cyBhcmUgYXZhaWxhYmxlCj4+Cj4+Cj4+Cj4+IFBsZWFzZSByZWZlciB0 byB0aGUgbmV3IHNldHVwIGd1aWRlLCB3aGljaCBwcm92aWRlcyBzdGVwLXRvLXN0ZXAgZGV0YWls cyBhYm91dCBidWlsZGluZy9jb25maWd1cmluZy9ydW5uaW5nIEludGVsIEdWVC1nOgo+Pgo+Pgo+ PiAJaHR0cHM6Ly9naXRodWIuY29tLzAxb3JnL1hlbkdULVByZXZpZXcta2VybmVsL2Jsb2IvbWFz dGVyL1hlbkdUX1NldHVwX0d1aWRlLnBkZgo+Pgo+Pgo+Pgo+PiBUaGUgbmV3IHNvdXJjZSBjb2Rl cyBhcmUgYXZhaWxhYmxlIGF0IHRoZSB1cGRhdGVkIGdpdGh1YiByZXBvczoKPj4KPj4KPj4gCUxp bnV4OiBodHRwczovL2dpdGh1Yi5jb20vMDFvcmcvWGVuR1QtUHJldmlldy1rZXJuZWwuZ2l0Cj4+ Cj4+IAlYZW46IGh0dHBzOi8vZ2l0aHViLmNvbS8wMW9yZy9YZW5HVC1QcmV2aWV3LXhlbi5naXQK Pj4KPj4gCVFlbXU6IGh0dHBzOi8vZ2l0aHViLmNvbS8wMW9yZy9YZW5HVC1QcmV2aWV3LXFlbXUu Z2l0Cj4+Cj4+Cj4+IE1vcmUgaW5mb3JtYXRpb24gYWJvdXQgSW50ZWwgR1ZULWcgYmFja2dyb3Vu ZCwgYXJjaGl0ZWN0dXJlLCBldGMgY2FuIGJlIGZvdW5kIGF0Ogo+Pgo+Pgo+PiAJaHR0cHM6Ly93 d3cudXNlbml4Lm9yZy9jb25mZXJlbmNlL2F0YzE0L3RlY2huaWNhbC1zZXNzaW9ucy9wcmVzZW50 YXRpb24vdGlhbgo+Pgo+PiAJaHR0cDovL2V2ZW50cy5saW51eGZvdW5kYXRpb24ub3JnL3NpdGVz L2V2ZW50cy9maWxlcy9zbGlkZXMvWGVuR1QtWGVuJTIwU3VtbWl0LXY3XzAucGRmCj4+Cj4+IAlo dHRwczovLzAxLm9yZy94ZW4vYmxvZ3Mvc3JjbGFya3gvMjAxMy9ncmFwaGljcy12aXJ0dWFsaXph dGlvbi14ZW5ndAo+Pgo+Pgo+PiBUaGUgcHJldmlvdXMgdXBkYXRlIGNhbiBiZSBmb3VuZCBoZXJl Ogo+Pgo+Pgo+PiAJaHR0cDovL2xpc3RzLnhlbi5vcmcvYXJjaGl2ZXMvaHRtbC94ZW4tZGV2ZWwv MjAxNC0wNy9tc2cwMzI0OC5odG1sCj4+Cj4+Cj4+IEFwcHJlY2lhdGUgeW91ciBjb21tZW50cyEK Pj4KPj4KPj4gLS0KPj4gVGhhbmtzLAo+PiBKaWtlCj4+Cj4+IE9uIDA3LzI1LzIwMTQgMDQ6MzEg UE0sIEppa2UgU29uZyB3cm90ZToKPj4+IEhpIGFsbCwKPj4+Cj4+PiBXZSdyZSBwbGVhc2VkIHRv IGFubm91bmNlIGFuIHVwZGF0ZSB0byBJbnRlbCBHcmFwaGljcyBWaXJ0dWFsaXphdGlvbiBUZWNo bm9sb2d5IChJbnRlbCBHVlQtZywgZm9ybWVybHkga25vd24gYXMgWGVuR1QpLiBJbnRlbCBHVlQt ZyBpcyBhIGNvbXBsZXRlIHZHUFUgc29sdXRpb24gd2l0aCBtZWRpYXRlZCBwYXNzLXRocm91Z2gs IHN1cHBvcnRlZCB0b2RheSBvbiA0dGggZ2VuZXJhdGlvbiBJbnRlbCBDb3JlKFRNKSBwcm9jZXNz b3JzIHdpdGggSW50ZWwgR3JhcGhpY3MgcHJvY2Vzc29ycy4gQSB2aXJ0dWFsIEdQVSBpbnN0YW5j ZSBpcyBtYWludGFpbmVkIGZvciBlYWNoIFZNLCB3aXRoIHBhcnQgb2YgcGVyZm9ybWFuY2UgY3Jp dGljYWwgcmVzb3VyY2VzIGRpcmVjdGx5IGFzc2lnbmVkLiBUaGUgY2FwYWJpbGl0eSBvZiBydW5u aW5nIG5hdGl2ZSBncmFwaGljcyBkcml2ZXIgaW5zaWRlIGEgVk0sIHdpdGhvdXQgaHlwZXJ2aXNv ciBpbnRlcnZlbnRpb24gaW4gcGVyZm9ybWFuY2UgY3JpdGljYWwgcGF0aHMsIGFjaGlldmVzIGEg Z29vZCBiYWxhbmNlIGFtb25nIHBlcmZvcm1hbmNlLCBmZWF0dXJlLCBhbmQgc2hhcmluZyBjYXBh YmlsaXR5LiBUaG91Z2ggd2Ugb25seSBzdXBwb3J0IFhlbiBvbiBJbnRlbCBQcm9jZXNzb3IgR3Jh cGhpY3Mgc28gZmFyLCB0aGUgY29yZSBsb2dpYyBjYW4gYmUgZWFzaWx5IHBvcnRlZCB0byBvdGhl ciBoeXBlcnZpc29ycy4KPj4+Cj4+PiBUaGUgbmV3cyBvZiB0aGlzIHVwZGF0ZToKPj4+Cj4+PiAJ LSBQcm9qZWN0IGNvZGUgbmFtZSBpcyAiWGVuR1QiLCBub3cgb2ZmaWNpYWwgbmFtZSBpcyBJbnRl bCBHcmFwaGljcyBWaXJ0dWFsaXphdGlvbiBUZWNobm9sb2d5IChJbnRlbCBHVlQtZykKPj4+IAkt IEN1cnJlbnRseSBJbnRlbCBHVlQtZyBzdXBwb3J0cyBJbnRlbCBQcm9jZXNzb3IgR3JhcGhpY3Mg YnVpbHQgaW50byA0dGggZ2VuZXJhdGlvbiBJbnRlbCBDb3JlIHByb2Nlc3NvcnMgLSBIYXN3ZWxs IHBsYXRmb3JtCj4+PiAJLSBNb3ZpbmcgZm9yd2FyZCwgWGVuR1Qgd2lsbCBjaGFuZ2UgdG8gcXVh cnRlcmx5IHJlbGVhc2UgY2FkZW5jZS4gTmV4dCB1cGRhdGUgd2lsbCBiZSBhcm91bmQgZWFybHkg T2N0b2JlciwgMjAxNC4KPj4+Cj4+PiBUaGlzIHVwZGF0ZSBjb25zaXN0cyBvZjoKPj4+Cj4+PiAJ LSBTdGFiaWxpdHkgZml4ZXMsIGUuZy4gc3RhYmxlIERQIHN1cHBvcnQKPj4+IAktIERpc3BsYXkg ZW5oYW5jZW1lbnRzLCBlLmcuIHZpcnR1YWwgbW9uaXRvciBzdXBwb3J0LiBVc2VycyBjYW4gZGVm aW5lIGEgdmlydHVhbCBtb25pdG9yIHR5cGUgd2l0aCBjdXN0b21pemVkIEVESUQgZm9yIHZpcnR1 YWwgbWFjaGluZXMsIG5vdCBuZWNlc3NhcmlseSB0aGUgc2FtZSBhcyBwaHlzaWNhbCBtb25pdG9y cy4KPj4+IAktIEltcHJvdmVkIHN1cHBvcnQgZm9yIEdQVSByZWNvdmVyeQo+Pj4gCS0gRXhwZXJp bWVudGFsIFdpbmRvd3MgSFZNIHN1cHBvcnQuIFRvIGRvd25sb2FkIHRoZSBleHBlcmltZW50YWwg dmVyc2lvbiwgc2VlIHNldHVwIGd1aWRlIGZvciBkZXRhaWxzCj4+PiAJLSBFeHBlcmltZW50YWwg SGFyZHdhcmUgTWVkaWEgQWNjZWxlcmF0aW9uIGZvciBkZWNvZGluZy4KPj4+Cj4+Pgo+Pj4gUGxl YXNlIHJlZmVyIHRvIHRoZSBuZXcgc2V0dXAgZ3VpZGUsIHdoaWNoIHByb3ZpZGVzIHN0ZXAtdG8t c3RlcCBkZXRhaWxzIGFib3V0IGJ1aWxkaW5nL2NvbmZpZ3VyaW5nL3J1bm5pbmcgSW50ZWwgR1ZU LWc6Cj4+Pgo+Pj4gCWh0dHBzOi8vZ2l0aHViLmNvbS8wMW9yZy9YZW5HVC1QcmV2aWV3LWtlcm5l bC9ibG9iL21hc3Rlci9YZW5HVF9TZXR1cF9HdWlkZS5wZGYKPj4+Cj4+Pgo+Pj4gVGhlIG5ldyBz b3VyY2UgY29kZXMgYXJlIGF2YWlsYWJsZSBhdCB0aGUgdXBkYXRlZCBnaXRodWIgcmVwb3M6Cj4+ Pgo+Pj4gCUxpbnV4OiBodHRwczovL2dpdGh1Yi5jb20vMDFvcmcvWGVuR1QtUHJldmlldy1rZXJu ZWwuZ2l0Cj4+PiAJWGVuOiBodHRwczovL2dpdGh1Yi5jb20vMDFvcmcvWGVuR1QtUHJldmlldy14 ZW4uZ2l0Cj4+PiAJUWVtdTogaHR0cHM6Ly9naXRodWIuY29tLzAxb3JnL1hlbkdULVByZXZpZXct cWVtdS5naXQKPj4+Cj4+Pgo+Pj4gTW9yZSBpbmZvcm1hdGlvbiBhYm91dCBJbnRlbCBHVlQtZyBi YWNrZ3JvdW5kLCBhcmNoaXRlY3R1cmUsIGV0YyBjYW4gYmUgZm91bmQgYXQ6Cj4+Pgo+Pj4gCWh0 dHBzOi8vd3d3LnVzZW5peC5vcmcvY29uZmVyZW5jZS9hdGMxNC90ZWNobmljYWwtc2Vzc2lvbnMv cHJlc2VudGF0aW9uL3RpYW4KPj4+IAlodHRwOi8vZXZlbnRzLmxpbnV4Zm91bmRhdGlvbi5vcmcv c2l0ZXMvZXZlbnRzL2ZpbGVzL3NsaWRlcy9YZW5HVC1YZW4lMjBTdW1taXQtdjdfMC5wZGYKPj4+ IAlodHRwczovLzAxLm9yZy94ZW4vYmxvZ3Mvc3JjbGFya3gvMjAxMy9ncmFwaGljcy12aXJ0dWFs aXphdGlvbi14ZW5ndAo+Pj4KPj4+IFRoZSBwcmV2aW91cyB1cGRhdGUgY2FuIGJlIGZvdW5kIGhl cmU6Cj4+Pgo+Pj4gCWh0dHA6Ly9saXN0cy54ZW4ub3JnL2FyY2hpdmVzL2h0bWwveGVuLWRldmVs LzIwMTQtMDIvbXNnMDE4NDguaHRtbAo+Pj4KPj4+IEFwcHJlY2lhdGUgeW91ciBjb21tZW50cyEK Pj4+Cj4+Pgo+Pj4KPj4+Cj4+PiAtLQo+Pj4gVGhhbmtzLAo+Pj4gSmlrZQo+Pj4KX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcg bGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK