From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: [Hackathon 16] Notes from Security Session Date: Mon, 25 Apr 2016 14:32:29 -0400 Message-ID: <20160425183229.GB13411@char.us.oracle.com> References: <5715F43E.7090503@cardoe.com> <5715F640.1070206@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1aulJU-00047B-GV for xen-devel@lists.xenproject.org; Mon, 25 Apr 2016 18:32:52 +0000 Content-Disposition: inline In-Reply-To: <5715F640.1070206@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Andrew Cooper , dgdegra@tycho.nsa.gov Cc: James McKenzie , sstabellini@kernel.org, Wei Liu , Lars Kurth , openxt@googlegroups.com, Doug Goldstein , George Dunlap , Ross Philipson , Rich Persaud , Jan Beulich , Anthony PERARD , Xen-devel List-Id: xen-devel@lists.xenproject.org T24gVHVlLCBBcHIgMTksIDIwMTYgYXQgMTA6MTE6MjhBTSArMDEwMCwgQW5kcmV3IENvb3BlciB3 cm90ZToKPiBPbiAxOS8wNC8xNiAxMDowMiwgRG91ZyBHb2xkc3RlaW4gd3JvdGU6Cj4gPk9uIDQv MTgvMTYgMTI6MjAgUE0sIExhcnMgS3VydGggd3JvdGU6Cj4gPj5IaSBhbGwsCgpDQy1pbmcgWFNN IG1haW50YWluZXIgOi0pCj4gPj4KPiA+PkkgdG9vayBub3RlcyBhcyBtdWNoIGFzIEkgY291bGQu IENDJ2VkIHRoZSBwZW9wbGUgd2hvIHBhcnRpY2lwYXRlZCBtb3N0LiBJZiBJIG1pc3NlZC9taXNy ZXByZXNlbnRlZCBzb21ldGhpbmcsIHBsZWFzZSBhZGQgdG8gdGhlIGRpc2N1c3Npb24uIEkga25v dyB0aGF0IEdlb3JnZSBmb3IgZXhhbXBsZSB0b29rIHNvbWUgZXh0cmEgbm90ZXMgaW4gdGhlIG9u ZSBvciBvdGhlciBhcmVhLgo+ID4+Cj4gPj5SZWdhcmRzCj4gPj5MYXJzCj4gPj4KPiA+Pj09IFRv cGljcyBkaXNjdXNzZWQgPT0KPiA+PlFFTVUKPiA+PkRlLXByaXZpbGlnZSBvZiBRRU1VCj4gPj5Y U0EKPiA+PngtU3BsaWNlCj4gPj54ODYgRW11bGF0b3IKPiA+PkVuYWJsaW5nIFhTTSBCeSBkZWZh dWx0Cj4gPj4KPiA+Pj09PSBTbGltbGluZSBRRU1VID09PQo+ID4+Cj4gPj5Lb25yYWQ6IFNvbWUg aW5yb2FkcyBvbiBtYWtpbmcgUUVNVSBiZXR0ZXIKPiA+PktvbnJhZDogUUVNVSBpcyB0b28gYmln IGFuZCBpdCBpcyBoYXJkIHRvIHN0cmlwIGRvd24gdGhlIHBsYXRmb3JtIDogaG93IGNhbiB3ZSBj aG9wIGl0IHVwCj4gPj4KPiA+PldlaTogV2VpIGF0dGVtcHRlZCB0aGlzIDIgeWVhcnMgYWdvIDog V2VpIGRlZmluZWQgc29tZSBYZW4gc3R1YiBDUFUgbW9kZWwsIHdoaWNoIHdhcyByZWplY3RlZCBh dCB0aGUgdGltZQo+ID4+U3RlZmFubzogTWF5YmUgd2hhdCB3ZSBuZWVkIGlzIGRpZmZlcmVudAo+ ID4+U3RlZmFubzogQ29udGFpbmVycyAvIEludGVsIGhhdmUgc2ltaWxhciBpc3N1ZXMKPiA+PlN0 ZWZhbm86IEludGVsIGhhdmUgYSB2ZXJ5IHNpbWlsYXIgcHJvYmxlbSB3aXRoIENsZWFyQ29udGFp bmVyCj4gPj5TdGVmYW5vOiBSZS1pbXBsZW1lbnRpbmcgQ2xlYXJDb250YWluZXJzIHdpdGggUUVN VSBiZWNhdXNlIG9mIG1hcmtldCBuZWVkcwo+ID4+U3RlZmFubzogUUVNVSBkb2VzIGhhdmUgYWxy ZWFkeSBhIG5vLWRlZmF1bHQgb3B0aW9uCj4gPj4KPiA+PkRvdWc6IEluIHRoZSBRRU1VIG1vZGVs OiB5b3UgY2Fubm90IHJ1biBhIGJvYXJkIHdpdGhvdXQgYSBDUFUKPiA+PkRvdWc6IEtDb25maWcg bWF5IGJlIGFjY2VwdGFibGUsIGJ1dCByZTRtb3ZpbmcgYm9hcmRzIG1heSBub3QgKGluaXRpYWxs eSBkaXNjdXNzZWQgd2l0aCBBbnRvbnkgTCkKPiA+Pgo+ID4+R2VvcmdlOiBEaXN0cm9zIGRvbid0 IHdhbnQgdG8gc2hpcCB0d28gdmVyc2lvbnMgb2YgUUVNVQo+ID4+R2VvcmdlOiBDb21waWxlIGNv bmZpZ3VyYWJpbGl0eSBkb2Vzbid0IGhlbHAgd2l0aCBkaXN0cm9zCj4gPj4KPiA+PktvbnJhZDog UFZIL0hWTUxpdGUgZG9lcyBub3QgdXNlIFFFTVUgKG9yIG9ubHkgYXMgYSBiYWNrKQo+ID4+Cj4g Pj5MYXJzOiBJZiB3ZSBoYWQgYSBwcm9wb3NhbCwgd29ya2luZyB3aXRoIEludGVsIGFuZCB0aGUg UUVNVSBjb21tdW5pdHksIHdlIGNvdWxkIGRpc2N1c3MgYXQgWGVuIFN1bW1pdCAvIEtWTSBGb3J1 bSBpcyBjby1sb2NhdGVkCj4gPj4KPiA+PkphbWVzOiBJZiB3ZSBoYWQgYSBmdXR1cmUgd2l0aCBP Vk1GLCB0aGVuIHdlIHByb2JhYmx5IHdvdWxkbid0IG5lZWQgUUVNVSAoYWthIGlmIHlvdSB3YW50 IHNlY3VyaXR5IHVzZSBQVkggd2l0aCBPVk1GKQo+ID4+SmFtZXM6IFByb3Bvc2FsIGZvciBzZWN1 cml0eSBjb25zY2lvdXMgYXBwbGljYXRpb25zIHdlIGNvdWxkIGZvcmsgYW5kIHVzZSBhIHN0dWJi ZWQgb3V0IHZlcnNpb24gb2YgUUVNVQo+ID4+Cj4gPj5PcHRpb25zOgo+ID4+LSBLQ29uZmlnCj4g Pj4tIFJ1bi10aW1lIGRpc2FibGVtZW50Cj4gPj4tIFhlbiBTdW1taXQgLyBLVk0gRm9ydW0KPiA+ Pi0gSW50ZWwgd29yayAvIGNvbGxhYm9yYXRpb24KPiA+Pi0gUElYMyA+IDkzNQo+ID4+LSBPVk1G Cj4gPj4tIFJlbW92ZSB4bC5jZmcgKHN0b3AgY29uZmlncyAtIGluIGZhY3Qgd2UgcHJvYmFibHkg b25seSBjYW4gcHJpbnQgYSB3YXJuaW5nICJ0aGlzIGlzIG5vdCBzZWN1cmUgYW5kIGhhcyBubyBz ZWN1cml0eSBzdXBwb3J0IiBvciBzb21ldGhpbmcgc2ltaWxhcikKPiA+Pgo+ID4+RG91ZzogSXNz dWUKPiA+Pi0gRm9yIGV4YW1wbGUgT3JhY2xlIGNvdWxkIGRlYWwgd2l0aCBDb25maWcKPiA+Pi0g QlVULCB0aGlzIGFwcHJvYWNoIHdvbid0IHdvcmsgZm9yIGRpc3Ryb3MKPiA+Pgo+ID4+QUNUSU9O OiBLb25yYWQgaXMgdm9sdW50ZWVyaW5nIHRvIGRyaXZlIHRoaXMgZGlzY3Vzc2lvbgo+ID4+Cj4g Pj49PT0gRGUtcHJpdmlsaWdlIFFlbXUgPT09Cj4gPj5Lb25yYWQ6IFdoYXQncyB0aGUgc3RhdHVz Cj4gPj5TdGVmYW5vOiBub3QgZG9uZSwgeW91IG5lZWQKPiA+Pi0gUUVNVSBhcyBub24tcm9vdCAo dGhhdCBpcyBpbiA0LjcgYW5kIFFFTVUgcGFydCBpcyB0aGVyZSkKPiA+Pi0gTm93IHlvdSBzdGls bCBoYXZlIGEgbGlieGMgYW5kIHhlbnN0b3JlIGludGVyZmFjZSB0aGF0IG5lZWRzIHRvIGJlIGRl LXByaXZpbGlnZWQKPiA+PiAgIC0gVGhlcmUgaXMgYSBwYXRjaCBmb3IgUUVNSSBhbmQgeGVuc3Rv cmUgdG8gZGVhbCB3aXRoIHRoZSBsaWJ4YyBwYXJ0IChub3QgdXBzdHJlYW1lZCkgLi4uIHByZXR0 eSBiaWcgc2VyaWVzLCBidXQgd29uJ3QgbWFrZSBpdCBmb3IgNC43IC0gUUVNVSBwYXJ0IGlzIHRp bnkKPiA+PiAgIC0gTGlieGMgaXMgc2l6ZWFibGUgKElhbiBDYW1wYmVsbCB3YXMgd29ya2luZyBv biBpdCksIGJ1dCBpdCBpcyBub3cgZG9ybWFudCA6IFFFTVUgc3VwcG9ydCBpcyB0aGVyZSwgYnV0 IERvbTAgaW50ZXJmYWNlIGlzIG1pc3NpbmcKPiA+PiAgICAgLSBJZGVhczogRG8gcmVnaXN0cmF0 aW9uIGluIERvbTAKPiA+PltHZW9yZ2UgaGFzIHNvbWUgYWRkaXRpb25hbCBub3Rlc10KPiA+Pgo+ ID4+SVNTVUU6IEEgcHJvcG9zYWwgYW5kIGEgcGxhbiwgYnV0IG5vYm9keSB0byBkbyB0aGlzLiBX aXRob3V0IHRoaXMgd2hhdCB3ZSBoYXZlIGlzIG5vdCB1c2VmdWwKPiA+PkFuZHJldzogWGVuU2Vy dmVyIHN0aWxsIHVzaW5nIHFlbXUtdHJhZCBiZWNhdXNlIG9mIHNvbWUgZ2FwcyBpbiBlbXUtdXBz dHJlYW0KPiA+PkFuZHJldzogWFMgbWF5IGVuZCB1cCB3b3JraW5nIG9uIHRoaXMgYXQgc29tZSB1 bmRlZmluZWQgcG9pbnQgaW4gdGhlIGZ1dHVyZQo+ID4+Cj4gPj5UaGVyZSBpcyBhIHByb2JsZW0g d2l0aCB1c2luZyBDRCBkcml2ZSdzIHRvIG9wZW4gSVNPcyBhcyB5b3UgbmVlZCB0byBiZSBwcml2 aWxlZ2VkIHRvIGRvIHRoaXMKPiA+PkFuZHkgQ29vcGVyOiB0aGVyZSBtYXkgYmUgcmVhbCBlbmQt dXNlciBpc3N1ZXMKPiA+PlN0ZWZhbm86IENvdWxkIGNoYW5nZSBvd25lcnNoaXAKPiA+PkRvdWc6 IElzc3VlIHdhcyB0cmllZCB0byBiZSBmaXhlZCBpbiBsaWJ2aXJ0IGFuZCB3ZW50IG5vd2hlcmUK PiA+PkFuZHk6IFFlbXUtdHJhZCBkb2VzIGl0IHdyb25nIChRRU1VIGluIGxpYnhlbmxpZ2h0IGRv ZXMgbm90IGRvIHRoYXQpCj4gPj4KPiA+PkFDVElPTjogSGlnaDtyaWdodCBsYWNrIG9mIG93bmVy Cj4gPj4KPiA+PktvbnJhZDogU2VjY29tcCBtYXkgd29yawo+ID4+RG91ZzogZXZlcnl0aGluZyBo YXMgdG8gYmUgcGFzc2VkIGFzIGZpbGUgZGVzY3JpcHRvcgo+ID4+Cj4gPj49PT0gTmFycm93ZXIg WFNBIENvdmVyYWdlID09PQo+ID4+SmFuOiBYU0EgNzcgKHdoaXRlbGlzdGVkIGEgc2V0IG9mIGRv bSBjb250cm9sIGFuZCBzeXMgY29udHJvbCkgd2hpY2ggYXJlIHN1cHBvc2VkbHkgLi4uIGh0dHA6 Ly94ZW5iaXRzLnhlbi5vcmcveHNhL2Fkdmlzb3J5LTc3Lmh0bWwKPiA+PiAgICAgIFNlZSBodHRw Oi8veGVuYml0cy54ZW4ub3JnL2RvY3MvdW5zdGFibGUvbWlzYy94c20tZmxhc2sudHh0IChTZWN1 cml0eSBTdGF0dXMgb2YgZG9tMCBkaXNhZ2dyZWdhdGlvbikKPiA+PkphbjogV2hvIHJ1bnMgdGhp cyBpbiBwcm9kdWN0aW9uOiBydW5uaW5nIHBhcnQgb2YgdG9vbHN0YWNrIG5vdCBpbiBEb20wIC0g T3BlblhUIHdhbnRzIHRvIGRvIHRoaXMKPiA+PkphbjogVGhlIG9ic2VydmF0aW9uIGlzIHRoYXQg d2Ugd2VudCB0byBmYXIgd2l0aCB0aGUgWFNBIDc3ID0+IGlmIHdlIGhhZCBhIHNob3J0ZXIgd2hp dGVsaXN0LCBhbmQgcmVkdWNlIHdoaXRlbGlzdAo+ID4+SmFuOiBJZiB0aGVyZSB3YXMgYWdyZWVt ZW50LCB0aGVuIHRoZSBzZWN1cml0eSB0ZWFtCj4gPj4gIHdvdWxkIG5vdCBoYW5kbGUgaXNzdWVz IGluIHRoZXNlIGFyZWFzIGFzIFhTQSdzCj4gPj4KPiA+PlJvc3MgUGhpbGxpcHNvbjogVHlwaWMg YWxseSB3ZSBoYXZlIG9ubHkgaGlnaGVyIGxldmVsIHN0dWZmIGluIGEgZGlmZmVyZW50IHhsLCBi dXQgbG93ZXIgbGV2ZWwgc3R1ZmYgcnVucyBvbiBEb20wLiBTbyB0aGVyZSBzaG91bGQgYmUgbm8g aXNzdWUKPiA+Pgo+ID4+R2VvcmdlOiBRRU1VIHN0dWIgZG9tYWlucyBzaG91bGQgaGF2ZSBzZWN1 cml0eSBzdXBwb3J0Cj4gPj5HZW9yZ2U6IFRoZXJlIGFyZSBhIHdob2xlIHNldCBvZiBvdGhlciB0 aGluZ3MsIHdoaWNoIHdlIGRvbid0IGtub3cgd2hldGhlciB0aGV5IGFyZSB1c2VkCj4gPj5HZW9y Z2U6IERvIHdlIHdhbnQgdG8gc2VjdXJpdHkgc3VwcG9ydCBvZiBkaXNhZ2dyZWdhdGVkIHRvb2xz LXN0dWIKPiA+Pgo+ID4+QWdyZWVkOiBQcm9wb3NlIHBhdGNoIHRvIGNoYW5nZSBodHRwOi8veGVu Yml0cy54ZW4ub3JnL2RvY3MvdW5zdGFibGUvbWlzYy94c20tZmxhc2sudHh0IG9uIHRoZSBsaXN0 Cj4gPj5KYW46IFdlIGNhbiBvbmx5IGRpc2N1c3MgaW4gcHVibGljIGlmIG5vIGlzc3VlcyBhcmUg cGVuZGluZwo+ID4+Q2M6IENocmlzdG9waGVyIENsYXJrIDxjaHJpc3RvcGhlci53LmNsYXJrQGdt YWlsLmNvbT4sIFJvc3MgUGhpbGlwc29uIDxyb3NzLnBoaWxpcHNvbkBnbWFpbC5jb20+LCBEYW5p ZWwgU21pdGggPGRwc21pdGhAYXBlcnR1c3NvbHV0aW9ucy5jb20+Cj4gPj5DQyB0aGUgZm9sa3Mg b24gdGhpcyB0aHJlYWQgb3Igb3Blbnh0QGdvb2dsZWdyb3Vwcy5jb20gKE9wZW5YVCBtYWlsaW5n IGxpc3QpCj4gPj4KPiA+Pj09PSB4ODYgRW11bGF0aW9uIGRlLXByaXZpbGlnZSA9PT0KPiA+PkFu dGhvbnkgaXMgd29ya2luZyBvbiBpdAo+ID4+U3RlZmFubzogSSB0aGluayB5b3UgaGFkIHNvbWUg bWVhc3VyZW1lbnRzCj4gPj5BbnRob255OiBNZWFzdXJlbWVudHMgd2VyZSBub3QgdmVyeSBnb29k Cj4gPj5BbmRyZXc6IElmIHlvdSBhcmUgaW50cm9zcGVjdGluZywgeW91IHNhY3JpZmljZSA3MCUg cGVyZm9ybWFuY2UKPiA+PkFuZHJldzogUGF0Y2hlcyB3ZXJlIHZlcnkgY29tcGxpY2F0ZWQKPiA+ PkFuZHJldzogUmUtd3JpdGluZyB0aGUgZW11bGF0b3Igd291bGQgb25seSBmaXggdGhlIG91dGJv dW5kIHBhdGgKPiA+PlN0ZWZhbm86IFJpc2sgd291bGQgcHJvYmFibHkgZ28gZnJvbSBIaWdoL0Ny aXRpY2FsIHRvIExvdyBpbiB0ZXJtcyBvZiBpbXBhY3QgYnV0IG5vdCByZW1vdmUgdGhlIGlzc3Vl cwo+ID4+SmFuOiBUaGUgaXNzdWUgaXMgcmVhbGx5IHdpdGggaW4tZ3Vlc3Qgc2VjdXJpdHkgaXNz dWVzCj4gPj5Eb3VnOiBDb3VsZCB3ZSBsb29rIGF0IFFFTVUgZW11bGF0b3IKPiA+PkFuZHJldzog RGlkIHRoaXMsIGJ1dCBkb2VzIG5vdCBzZWVtIGEgZ29vZCBlbm91Z2ggYmFzZWxpbmUKPiA+Pkph bWVzOiBIYXZlIGEgc2V0IG9mIHBhdGNoZXMgd2hpY2ggbWF5IGZpeCB0aGlzIGlzc3VlCj4gPj5K YW46IFdvdWxkIHN0aWxsIG5vdCBmaXggaW4tZ3Vlc3Qgc2VjdXJpdHkgaXNzdWVzCj4gPj5BbmRy ZXc6IFJlZHVjZXMgdGhlIHNldmVyaXR5IG9mIFhTQXMKPiA+Pgo+ID4+S29ucmFkOiBXZSBzdGls bCB3YW50IHRoaXM/Cj4gPj5KYW46IElmIGl0IGlzIGRvYWJsZSwgdGhlbiB5ZXMgLi4uCj4gPj5B bmRyZXc6IEh1Z2UgYW1vdW50IG9mIGV4dHJhIHNldC11cCBpbiBIVgo+ID4+Cj4gPj5BQ1RJT046 IEphbWVzIHRvIHNlbnQgcGF0Y2hlcyBhcyBSRkMgdG8geGVuLWRldmVsQAo+ID4+Cj4gPj5KYW46 IFRoZSByZWFsIGlzc3VlIGlzIHRoZSBxdWFsaXR5IGFuZCBtYWludGFpbmFiaWxpdHkgb2YgZW11 bGF0b3IgY29kZQo+ID4+S29ucmFkOiBUd28gcGF0aHMgLSBlbXVsYXRvciBjb2RlIG1vcmUgcm9i dXN0IG9yIGRlLXByaXZpbGVnZSBlbXVsYXRvcgo+ID4+Cj4gPj4KPiA+Pj09PSB4LVNwbGljZSA9 PT0KPiA+PktvbnJhZDogQXQgc29tZSBwb2ludCwgd2UgY2FuIHByb3ZpZGUgY2F0Y2hlcyBmb3Ig d2hpY2ggd2UgY2FuIGNyZWF0ZSBwYXlsb2Fkcwo+ID4+S29ucmFkOiBUaGVyZSBhcmUgYXJlYXMg d2hpY2ggYXJlIGRpZmZpY3VsdCB0byBkbywgc3VjaCBhcyBwYXRjaGluZyBkYXRhCj4gPj5Lb25y YWQ6IFF1ZXN0aW9ucyAtIGlmIHdlIGhhZCB4U3BsaWNlIC0gc2hvdWxkIHdlIHB1Ymxpc2ggcGF0 Y2hlcyB0byBnZW5lcmF0ZSB0aGUgInBheWxvYWQiIGFuZCBhcyB3ZSBoYXZlIGluIHRoZSBwYXN0 Cj4gPj4KPiA+PkFuZHJldzogYmVsaWV2ZXMgdGhhdCB0aGVyZSBhcmUgb25seSBhIHNtYWxsIG51 bWJlciBvZiBYU0EncyB0aGF0IGNvdWxkIG5vdCBlYXNpbHkgYmUgY2hhbmdlZCBpbnRvIHBheWxv YWRzCj4gPj4KPiA+PkFncmVlbWVudDogZG8gdGhpcyBhcyBhIGJlc3QtZWZmb3J0Cj4gPj4KPiA+ PkphbWVzOiBBc2tzIHdoZXRoZXIgY2hhaW5pbmcgcGF0Y2hlcyBpcyBhbiBpc3N1ZQo+ID4+S29u cmFkOiBObyBpc3N1ZXMsIGJ1dCB5b3Ugc2hvdWxkIGRlcGxveSBiaW5hcnkgcGF0Y2hlcyAuLi4K PiA+Pgo+ID4+S29ucmFkOiBDYW4geW91IGRlcGxveQo+ID4+SmFuOiBTYW1lIGFzIHdpdGggZGVw bG95aW5nIGJpbmFyaWVzCj4gPj5MYXJzOiBDb3VsZCBqdXN0IGNoYW5nZSB0aGUgYm9pbGVycGxh dGUKPiA+Pgo+ID4+Um9zczogSXMgdGhlcmUgYSB3YXkgdG8gZW5jb2RlIGRlcGVuZGVuY2llcwo+ ID4+S29ucmFkOiBZZXMKPiA+Pgo+ID4+PT09IEVuYWJsaW5nIFhTTSBCeSBkZWZhdWx0ID09PQo+ ID4+QW5kcmV3OiBUaGVyZSBhcmUgc29tZSBpc3N1ZXMgd2hpY2ggd2UgbmVlZCB0byB3b3JrIHRo cm91Z2g7IGEgbG90IG9mIGxpdHRsZSBwYXBlciBjdXRzCj4gPj5SaWNoOiBDb3VsZCB3ZSBjcmVh dGUgYSBsaXN0IG9mIGlzc3VlcyBvbiB0aGUgd2lraT8KPiA+PkxhcnM6IERlZmluaXRlbHkKPiA+ PkRvdWc6IENvdWxkIHdlIG5vdCBoYXZlIGEgcG9saWN5IHdoaWNoIGlzIGVxdWl2YWxlbnQgdG8g WFNNIGJlaW5nIGNvbXBpbGVkIG91dAo+ID4+QW5kcmV3OiBDb3VsZCBtYWtlIHBvbGljeSBtb3Jl IG1vZHVsYXIgaW5zdGVhZCBvZiBvbmUgYmlnIGdsb2JhbCBwb2xpY3kKPiA+Pgo+ID4+UmUtYXBw bHkgcG9saWN5IG9mIGd1ZXN0IGFmdGVyIHJ1bm5pbmcKPiA+Pgo+ID4+QUNUSU9OOiBOZWVkIGEg d2lraSBwYWdlLCBLb25yYWQgY2FuIHN0YXJ0IG9uZSBhbmQgd2UgY2FuIGNvbGxhYm9yYXRpdmVs eSBmbGVzaCBpdCBvdXQKPiA+PkxhcnM6IFNlZSBodHRwOi8vd2lraS54ZW5wcm9qZWN0Lm9yZy93 aWtpL1hTTUFzRGVmYXVsdF9UT0RPX0xpc3QKPiA+Pgo+ID4+QUNUSU9OOiBLb25yYWQgYW5kIG90 aGVycyB0byBhZGQgZGV0YWlsIHRvIGl0Cj4gPj4KPiA+Pgo+ID5JdCB3YXMgcG9pbnRlZCBvdXQg dG8gbWUgdGhhdCBJIGRpZCBub3QgZ2V0IG15IGNvbW1lbnRzIGFib3V0IFhTTSBhY3Jvc3MKPiA+ Y2xlYXJseS4gSSBiZWxpZXZlIHdlIG5lZWQgdG8gaW1wcm92ZSB0aGUgZGVmYXVsdCBwb2xpY3kg dG8gYmUKPiA+ZXF1aXZhbGVudCB0byBkaXNhYmxpbmcgWFNNIGFuZC9vciBjcmVhdGUgYSBwb2xp Y3kgY2FsbGVkICJkdW1teSIgdGhhdAo+ID5pcyB0aGUgc2FtZSBhcyBYU00gZGlzYWJsZWQuIFRv IG1ha2UgWFNNIHVzYWdlIG1vcmUgc21vb3RoIEkgcHJvcG9zZSB3ZQo+ID5iYWtlIHRoZSBkZWZh dWx0IHBvbGljeSBpbnRvIC5pbml0ZGF0YSBzbyB0aGF0IHdoZW4geW91IGJvb3QgWGVuCj4gPmNv bXBpbGVkIHdpdGggWFNNIHlvdSBhcmUgbm8gd29yc2Ugb2ZmIHRoYW4gY29tcGlsaW5nIFhTTSBv dXQuCj4gPgo+ID5UaGUgcmF0aW9uYWxlIGhlcmUgaXMgdGhhdCBwcmlvciB0byBhIHJlY2VudCBj b21taXQgd2hlbiB5b3UgY29tcGlsZWQKPiA+WGVuIHdpdGggWFNNIGVuYWJsZWQgYnV0IGRpZCBu b3QgcHJvdmlkZSBhIGRlZmF1bHQgcG9saWN5IHRoZW4gYW55IGRvbVVzCj4gPnRoYXQgeW91IHJh biBoYWQgYXMgbXVjaCBhY2Nlc3MgYXMgZG9tMC4gVGhlIHJlY2VudCBjb21taXQgY2hhbmdlZCBp dCBzbwo+ID50aGF0IFhlbiBieSBkZWZhdWx0IGRvZXMgbm90IGJvb3Qgd2l0aG91dCBhIHBvbGlj eS4KPiA+Cj4gPldpdGggbXkgcHJvcG9zZWQgY2hhbmdlIHdlIHdvdWxkIGhhdmUgImR1bW15IiB0 aGF0IHdvdWxkIGNvbXBpbGUgaW4gYW5kCj4gPmlmIHlvdSBwcm92aWRlZCBhbm90aGVyIHBvbGlj eSBpdCB3b3VsZCBiZSB1c2VkIGluc3RlYWQgb3IgeW91IGNvdWxkCj4gPmxhdGUgbG9hZCBhIHJl cGxhY2VtZW50IHBvbGljeS4gQmFzaWNhbGx5IGZpbGxpbmcgdGhlIGdhcCBvZiB0dXJuaW5nIG9u Cj4gPlhTTSBhbmQgaGF2aW5nIGEgc3lzdGVtIGxlc3Mgc2VjdXJlIHRoYW4gWFNNIG9mZiB1bnRp bCB5b3UgZGV2ZWxvcGVkCj4gPnlvdXIgcG9saWN5Lgo+IAo+ICsxLiAgSXQgYWxzbyBhdm9pZHMg bmVlZGluZyB0byBwbGF5IGFyb3VuZCBsb2FkaW5nIGFuIGV4dHJhIGZpbGUgYXMgYSBncnViCj4g bW9kdWxlLCB3aGljaCBtYWtlcyBkaXN0cm8taW50ZWdyYXRpb24gZWFzZXIuCj4gCj4gfkFuZHJl dwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRl dmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVu Lm9yZy94ZW4tZGV2ZWwK