From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mukesh Rathor Subject: Re: RFC: very initial PVH design document Date: Wed, 27 Aug 2014 15:38:42 -0700 Message-ID: <20140827153842.767743de@mantra.us.oracle.com> References: <53F759CC.7090406@citrix.com> <20140826173321.0f632d3e@mantra.us.oracle.com> <20140827204537.GG10321@laptop.dumpdata.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20140827204537.GG10321@laptop.dumpdata.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Konrad Rzeszutek Wilk Cc: xen-devel , David Vrabel , Jan Beulich , Roger Pau =?UTF-8?B?TW9ubsOp?= List-Id: xen-devel@lists.xenproject.org T24gV2VkLCAyNyBBdWcgMjAxNCAxNjo0NTozNyAtMDQwMApLb25yYWQgUnplc3p1dGVrIFdpbGsg PGtvbnJhZC53aWxrQG9yYWNsZS5jb20+IHdyb3RlOgoKPiBPbiBUdWUsIEF1ZyAyNiwgMjAxNCBh dCAwNTozMzoyMVBNIC0wNzAwLCBNdWtlc2ggUmF0aG9yIHdyb3RlOgo+ID4gT24gRnJpLCAyMiBB dWcgMjAxNCAxNjo1NTowOCArMDIwMAo+ID4gUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNp dHJpeC5jb20+IHdyb3RlOgo+ID4gCj4gPiA+IEhlbGxvLAo+ID4gPiAKPiA+ID4gSSd2ZSBzdGFy dGVkIHdyaXRpbmcgYSBkb2N1bWVudCBpbiBvcmRlciB0byBkZXNjcmliZSB0aGUKPiA+ID4gaW50 ZXJmYWNlIGV4cG9zZWQgYnkgWGVuIHRvIFBWSCBndWVzdHMsIGFuZCBob3cgaXQgc2hvdWxkIGJl IHVzZWQKPiA+ID4gKGJ5IGd1ZXN0IE9TZXMpLiBUaGUgZG9jdW1lbnQgaXMgZmFyIGZyb20gY29t cGxldGUgKHNlZSB0aGUKPiA+ID4gYW1vdW50IG9mIFRPRE9zIHNjYXR0ZXJlZCBhcm91bmQpLCBi dXQgZ2l2ZW4gdGhlIGxhY2sgb2YKPiA+ID4gZG9jdW1lbnRhdGlvbiByZWdhcmRpbmcgUFZIIEkg dGhpbmsgaXQncyBhIGdvb2Qgc3RhcnRpbmcgcG9pbnQuCj4gPiA+IFRoZSBhaW0gb2YgdGhpcyBp cyB0aGF0IGl0IHNob3VsZCBiZSBjb21taXR0ZWQgdG8gdGhlIFhlbgo+ID4gPiByZXBvc2l0b3J5 IG9uY2UgaXQncyByZWFkeS4gR2l2ZW4gdGhhdCB0aGlzIGlzIHN0aWxsIGEgKnZlcnkqCj4gPiA+ IGVhcmx5IHZlcnNpb24gSSdtIG5vdCBldmVuIHBvc3RpbmcgaXQgYXMgYSBwYXRjaC4KPiA+ID4g Cj4gPiA+IFBsZWFzZSBjb21tZW50LCBhbmQgdHJ5IHRvIGZpbGwgdGhlIGhvbGVzIGlmIHBvc3Np YmxlIDspLgo+ID4gPiAKPiA+ID4gUm9nZXIuCj4gPiA+IAo+ID4gPiAtLS0KPiA+ID4gIyBQVkgg U3BlY2lmaWNhdGlvbiAjCj4gPiA+IAo+ID4gPiAjIyBSYXRpb25hbGUgIyMKPiA+ID4gCj4gPiA+ IFBWSCBpcyBhIG5ldyBraW5kIG9mIGd1ZXN0IHRoYXQgaGFzIGJlZW4gaW50cm9kdWNlZCBvbiBY ZW4gNC40IGFzCj4gPiA+IGEgRG9tVSwgYW5kIG9uIFhlbiA0LjUgYXMgYSBEb20wLiBUaGUgYWlt IG9mIFBWSCBpcyB0byBtYWtlIHVzZQo+ID4gPiBvZiB0aGUgaGFyZHdhcmUgdmlydHVhbGl6YXRp b24gZXh0ZW5zaW9ucyBwcmVzZW50IGluIG1vZGVybiB4ODYKPiA+ID4gQ1BVcyBpbiBvcmRlciB0 byBpbXByb3ZlIHBlcmZvcm1hbmNlLgo+ID4gPiAKPiA+ID4gUFZIIGlzIGNvbnNpZGVyZWQgYSBt aXggYmV0d2VlbiBQViBhbmQgSFZNLCBhbmQgY2FuIGJlIHNlZW4gYXMgYQo+ID4gPiBQViBndWVz dCB0aGF0IHJ1bnMgaW5zaWRlIG9mIGFuIEhWTSBjb250YWluZXIsIG9yIGFzIGEgUFZIVk0gZ3Vl c3QKPiA+ID4gd2l0aG91dCBhbnkgZW11bGF0ZWQgZGV2aWNlcy4gVGhlIGRlc2lnbiBnb2FsIG9m IFBWSCBpcyB0byBwcm92aWRlCj4gPiA+IHRoZSBiZXN0IHBlcmZvcm1hbmNlIHBvc3NpYmxlIGFu ZCB0byByZWR1Y2UgdGhlIGFtb3VudCBvZgo+ID4gPiBtb2RpZmljYXRpb25zIG5lZWRlZCBmb3Ig YSBndWVzdCBPUyB0byBydW4gaW4gdGhpcyBtb2RlIChjb21wYXJlZAo+ID4gPiB0byBwdXJlIFBW KS4KPiA+ID4gCj4gPiA+IFRoaXMgZG9jdW1lbnQgdHJpZXMgdG8gZGVzY3JpYmUgdGhlIGludGVy ZmFjZXMgdXNlZCBieSBQVkggZ3Vlc3RzLAo+ID4gPiBmb2N1c2luZyBvbiBob3cgYW4gT1Mgc2hv dWxkIG1ha2UgdXNlIG9mIHRoZW0gaW4gb3JkZXIgdG8gc3VwcG9ydAo+ID4gPiBQVkguCj4gPiA+ IAo+ID4gPiAjIyBFYXJseSBib290ICMjCj4gPiA+IAo+ID4gPiBQVkggZ3Vlc3RzIHVzZSB0aGUg UFYgYm9vdCBtZWNoYW5pc20sIHRoYXQgbWVhbnMgdGhhdCB0aGUga2VybmVsCj4gPiA+IGlzIGxv YWRlZCBhbmQgZGlyZWN0bHkgbGF1bmNoZWQgYnkgWGVuIChieSBqdW1waW5nIGludG8gdGhlIGVu dHJ5Cj4gPiA+IHBvaW50KS4gSW4gb3JkZXIgdG8gZG8gdGhpcyBYZW4gRUxGIE5vdGVzIG5lZWQg dG8gYmUgYWRkZWQgdG8gdGhlCj4gPiA+IGd1ZXN0IGtlcm5lbCwgc28gdGhhdCB0aGV5IGNvbnRh aW4gdGhlIGluZm9ybWF0aW9uIG5lZWRlZCBieSBYZW4uCj4gPiA+IEhlcmUgaXMgYW4gZXhhbXBs ZSBvZiB0aGUgRUxGIE5vdGVzIGFkZGVkIHRvIHRoZSBGcmVlQlNEIGFtZDY0Cj4gPiA+IGtlcm5l bCBpbiBvcmRlciB0byBib290IGFzIFBWSDoKPiA+ID4gCj4gPiA+ICAgICBFTEZOT1RFKFhlbiwg WEVOX0VMRk5PVEVfR1VFU1RfT1MsICAgICAgIC5hc2NpeiwgIkZyZWVCU0QiKQo+ID4gPiAgICAg RUxGTk9URShYZW4sIFhFTl9FTEZOT1RFX0dVRVNUX1ZFUlNJT04sICAuYXNjaXosCj4gPiA+IF9f WFNUUklORyhfX0ZyZWVCU0RfdmVyc2lvbikpIEVMRk5PVEUoWGVuLAo+ID4gPiBYRU5fRUxGTk9U RV9YRU5fVkVSU0lPTiwgICAgLmFzY2l6LCAieGVuLTMuMCIpIEVMRk5PVEUoWGVuLAo+ID4gPiBY RU5fRUxGTk9URV9WSVJUX0JBU0UsICAgICAgLnF1YWQsICBLRVJOQkFTRSkgRUxGTk9URShYZW4s Cj4gPiA+IFhFTl9FTEZOT1RFX1BBRERSX09GRlNFVCwgICAucXVhZCwgIEtFUk5CQVNFKSBFTEZO T1RFKFhlbiwKPiA+ID4gWEVOX0VMRk5PVEVfRU5UUlksICAgICAgICAgIC5xdWFkLCAgeGVuX3N0 YXJ0KSBFTEZOT1RFKFhlbiwKPiA+ID4gWEVOX0VMRk5PVEVfSFlQRVJDQUxMX1BBR0UsIC5xdWFk LCAgaHlwZXJjYWxsX3BhZ2UpIEVMRk5PVEUoWGVuLAo+ID4gPiBYRU5fRUxGTk9URV9IVl9TVEFS VF9MT1csICAgLnF1YWQsICBIWVBFUlZJU09SX1ZJUlRfU1RBUlQpCj4gPiA+IEVMRk5PVEUoWGVu LCBYRU5fRUxGTk9URV9GRUFUVVJFUywgICAgICAgLmFzY2l6LAo+ID4gPiAid3JpdGFibGVfZGVz Y3JpcHRvcl90YWJsZXN8YXV0b190cmFuc2xhdGVkX3BoeXNtYXB8c3VwZXJ2aXNvcl9tb2RlX2tl cm5lbHxodm1fY2FsbGJhY2tfdmVjdG9yIikKPiA+ID4gRUxGTk9URShYZW4sIFhFTl9FTEZOT1RF X1BBRV9NT0RFLCAgICAgICAuYXNjaXosICJ5ZXMiKQo+ID4gPiBFTEZOT1RFKFhlbiwgWEVOX0VM Rk5PVEVfTDFfTUZOX1ZBTElELCAgIC5sb25nLCAgUEdfViwgUEdfVikKPiA+ID4gRUxGTk9URShY ZW4sIFhFTl9FTEZOT1RFX0xPQURFUiwgICAgICAgICAuYXNjaXosICJnZW5lcmljIikKPiA+ID4g RUxGTk9URShYZW4sIFhFTl9FTEZOT1RFX1NVU1BFTkRfQ0FOQ0VMLCAubG9uZywgIDApIEVMRk5P VEUoWGVuLAo+ID4gPiBYRU5fRUxGTk9URV9CU0RfU1lNVEFCLCAgICAgLmFzY2l6LCAieWVzIikK PiA+IAo+ID4gSXQgd2lsbCBiZSBoZWxwZnVsIHRvIGFkZDoKPiA+IAo+ID4gT24gdGhlIGxpbnV4 IHNpZGUsIHRoZSBhYm92ZSBjYW4gYmUgZm91bmQgaW4KPiA+IGFyY2gveDg2L3hlbi94ZW4taGVh ZC5TLgo+ID4gCj4gPiAKPiA+ID4gSXQgaXMgaW1wb3J0YW50IHRvIGhpZ2hsaWdodCB0aGUgZm9s bG93aW5nIG5vdGVzOgo+ID4gPiAKPiA+ID4gICAqIFhFTl9FTEZOT1RFX0VOVFJZOiBjb250YWlu cyB0aGUgbWVtb3J5IGFkZHJlc3Mgb2YgdGhlIGtlcm5lbAo+ID4gPiBlbnRyeSBwb2ludC4KPiA+ ID4gICAqIFhFTl9FTEZOT1RFX0hZUEVSQ0FMTF9QQUdFOiBjb250YWlucyB0aGUgbWVtb3J5IGFk ZHJlc3Mgb2YgdGhlCj4gPiA+IGh5cGVyY2FsbCBwYWdlIGluc2lkZSBvZiB0aGUgZ3Vlc3Qga2Vy bmVsICh0aGlzIG1lbW9yeSByZWdpb24KPiA+ID4gd2lsbCBiZSBmaWxsZWQgYnkgWGVuIHByaW9y IHRvIGJvb3RpbmcpLgo+ID4gPiAgICogWEVOX0VMRk5PVEVfRkVBVFVSRVM6IGNvbnRhaW5zIHRo ZSBsaXN0IG9mIGZlYXR1cmVzIHN1cHBvcnRlZAo+ID4gPiBieSB0aGUga2VybmVsLiBJbiB0aGlz IGNhc2UgdGhlIGtlcm5lbCBpcyBvbmx5IGFibGUgdG8gYm9vdCBhcyBhCj4gPiA+IFBWSCBndWVz dCwgYnV0IHRob3NlIG9wdGlvbnMgY2FuIGJlIG1peGVkIHdpdGggdGhlIG9uZXMgdXNlZCBieQo+ ID4gPiBwdXJlIFBWIGd1ZXN0cyBpbiBvcmRlciB0byBoYXZlIGEga2VybmVsIHRoYXQgc3VwcG9y dHMgYm90aCBQVgo+ID4gPiBhbmQgUFZIIChsaWtlIExpbnV4KS4gVGhlIGxpc3Qgb2Ygb3B0aW9u cyBhdmFpbGFibGUgY2FuIGJlIGZvdW5kCj4gPiA+IGluIHRoZSBgZmVhdHVyZXMuaGAgcHVibGlj IGhlYWRlci4KPiA+IAo+ID4gSG1tLi4uIGZvciBsaW51eCBJJ2Qgd29yZCB0aGF0IGFzIGZvbGxv d3M6Cj4gPiAKPiA+IEEgUFZIIGd1ZXN0IGlzIHN0YXJ0ZWQgYnkgc3BlY2lmeWluZyBwdmg9MSBp biB0aGUgY29uZmlnIGZpbGUuCj4gPiBIb3dldmVyLCBmb3IgdGhlIGd1ZXN0IHRvIGJlIGxhdW5j aGVkIGFzIGEgUFZIIGd1ZXN0LCBpdCBtdXN0Cj4gPiBtaW5pbWFsbHkgYWR2ZXJ0aXNlIGNlcnRh aW4gZmVhdHVyZXMgd2hpY2ggYXJlOgo+ID4gYXV0b190cmFuc2xhdGVkX3BoeXNtYXAsIGh2bV9j YWxsYmFja192ZWN0b3IsCj4gPiB3cml0YWJsZV9kZXNjcmlwdG9yX3RhYmxlcywgYW5kIHN1cGVy dmlzb3JfbW9kZV9rZXJuZWwuIFRoaXMgaXMKPiA+IGRvbmUgdmlhIFhFTl9FTEZOT1RFX0ZFQVRV UkVTIGFuZCBYRU5fRUxGTk9URV9TVVBQT1JURURfRkVBVFVSRVMuCj4gPiBTZWUgbGludXg6YXJj aC94ODYveGVuL3hlbi1oZWFkLlMgZm9yIG1vcmUgaW5mby4gQSBsaXN0IG9mIGFsbCB4ZW4KPiA+ IGZlYXR1cmVzIGNhbiBiZSBmb3VuZCBpbiB4ZW46aW5jbHVkZS9wdWJsaWMvZmVhdHVyZXMuaC4g SG93ZXZlciwgYXQKPiA+IHByZXNlbnQgdGhlIGFic2VuY2Ugb2YgdGhlc2UgZmVhdHVyZXMgZG9l cyBub3QgbWFrZSBpdAo+ID4gYXV0b21hdGljYWxseSBib290IGluIFBWIG1vZGUsIGJ1dCB0aGF0 IG1heSBjaGFuZ2UgaW4gZnV0dXJlLiBUaGUKPiA+IHVsdGltYXRlIGdvYWwgaXMsIGlmIGEgZ3Vl c3Qgc3VwcG9ydHMgdGhlc2UgZmVhdHVyZXMsIHRoZW4gYm9vdCBpdAo+ID4gYXV0b21hdGljYWxs eSBpbiBQVkggbW9kZSwgb3RoZXJ3aXNlIGJvb3QgaXQgaW4gUFYgbW9kZS4KPiA+IAo+ID4gW1lv dSBjYW4gbGVhdmUgb3V0IHRoZSBsYXN0IHBhcnQgaWYgeW91IHdhbnQsIG9yIGp1c3QgdGFrZSB3 aGF0ZXZlcgo+ID4gZnJvbSBhYm92ZV0uCj4gPiAKPiA+ID4gWGVuIHdpbGwganVtcCBpbnRvIHRo ZSBrZXJuZWwgZW50cnkgcG9pbnQgZGVmaW5lZCBpbgo+ID4gPiBgWEVOX0VMRk5PVEVfRU5UUllg IHdpdGggcGFnaW5nIGVuYWJsZWQgKGVpdGhlciBsb25nIG9yIHByb3RlY3RlZAo+ID4gPiBtb2Rl IGRlcGVuZGluZyBvbiB0aGUga2VybmVsIGJpdG5lc3MpIGFuZCBzb21lIGJhc2ljIHBhZ2UgdGFi bGVzCj4gPiA+IHNldHVwLgo+ID4gCj4gPiBJZiBJIG1heSByZXBocmFzZToKPiA+IAo+ID4gR3Vl c3QgaXMgbGF1bmNoZWQgYXQgdGhlIGVudHJ5IHBvaW50IHNwZWNpZmllZCBpbiBYRU5fRUxGTk9U RV9FTlRSWQo+ID4gd2l0aCBwYWdpbmcsIFBBRSwgYW5kIGxvbmcgbW9kZSBlbmFibGVkLiBBdCBw cmVzZW50IG9ubHkgNjRiaXQgbW9kZQo+ID4gaXMgc3VwcG9ydGVkLCBob3dldmVyLCBpbiBmdXR1 cmUgY29tcGF0IG1vZGUgc3VwcG9ydCB3aWxsIGJlIGFkZGVkLgo+ID4gQW4gaW1wb3J0YW50IGRp c3RpbmN0aW9uIGZvciBhIDY0Yml0IFBWSCBpcyB0aGF0IGl0IGlzIGxhdW5jaGVkIGF0Cj4gPiBw cml2aWxlZ2UgbGV2ZWwgMCBhcyBvcHBvc2VkIHRvIGEgNjRiaXQgUFYgZ3Vlc3Qgd2hpY2ggaXMg bGF1bmNoZWQKPiA+IGF0IHByaXZpbGVnZSBsZXZlbCAzLgo+ID4gCj4gPiA+IEFsc28sIHRoZSBg cnNpYCAoYGVzaWAgb24gMzJiaXRzKSByZWdpc3RlciBpcyBnb2luZyB0byBjb250YWluIHRoZQo+ ID4gPiB2aXJ0dWFsIG1lbW9yeSBhZGRyZXNzIHdlcmUgWGVuIGhhcyBwbGFjZWQgdGhlIHN0YXJ0 X2luZm8KPiA+ID4gc3RydWN0dXJlLiBUaGUgYHJzcGAgKGBlc3BgIG9uIDMyYml0cykgd2lsbCBj b250YWluIGEgc3RhY2ssIHRoYXQKPiA+ID4gY2FuIGJlIHVzZWQgYnkgdGhlIGd1ZXN0IGtlcm5l bC4gVGhlIHN0YXJ0X2luZm8gc3RydWN0dXJlCj4gPiA+IGNvbnRhaW5zIGFsbCB0aGUgaW5mbyB0 aGUgZ3Vlc3QgbmVlZHMgaW4gb3JkZXIgdG8gaW5pdGlhbGl6ZS4KPiA+ID4gTW9yZSBpbmZvcm1h dGlvbiBhYm91dCB0aGUgY29udGVudHMgY2FuIGJlIGZvdW5kIG9uIHRoZSBgeGVuLmhgCj4gPiA+ IHB1YmxpYyBoZWFkZXIuCj4gPiAKPiA+IFNpbmNlIHRoZSBhYm92ZSBpcyBhbGwgdHJ1ZSBmb3Ig UFYgZ3Vlc3QsIHlvdSBjb3VsZCBiZWdpbiBpdCB3aXRoOgo+ID4gCj4gPiBKdXN0IGxpa2UgYSBQ ViBndWVzdCwgdGhlIHJzaSAuLi4uCj4gPiAKPiA+ID4gCj4gPiA+ICMjIyBJbml0aWFsIGFtZDY0 IGNvbnRyb2wgcmVnaXN0ZXJzIHZhbHVlcyAjIyMKPiA+ID4gCj4gPiA+IEluaXRpYWwgdmFsdWVz IGZvciB0aGUgY29udHJvbCByZWdpc3RlcnMgYXJlIHNldCB1cCBieSBYZW4gYmVmb3JlCj4gPiA+ IGJvb3RpbmcgdGhlIGd1ZXN0IGtlcm5lbC4gVGhlIGd1ZXN0IGtlcm5lbCBjYW4gZXhwZWN0IHRv IGZpbmQgdGhlCj4gPiA+IGZvbGxvd2luZyBmZWF0dXJlcyBlbmFibGVkIGJ5IFhlbi4KPiA+ID4g Cj4gPiA+IE9uIGBDUjBgIHRoZSBmb2xsb3dpbmcgYml0cyBhcmUgc2V0IGJ5IFhlbjoKPiA+ID4g Cj4gPiA+ICAgKiBQRSAoYml0IDApOiBwcm90ZWN0ZWQgbW9kZSBlbmFibGUuCj4gPiA+ICAgKiBF VCAoYml0IDQpOiA4MDM4NyBleHRlcm5hbCBtYXRoIGNvcHJvY2Vzc29yLgo+ID4gPiAgICogUEcg KGJpdCAzMSk6IHBhZ2luZyBlbmFibGVkLgo+ID4gPiAKPiA+ID4gT24gYENSNGAgdGhlIGZvbGxv d2luZyBiaXRzIGFyZSBzZXQgYnkgWGVuOgo+ID4gPiAKPiA+ID4gICAqIFBBRSAoYml0IDUpOiBQ QUUgZW5hYmxlZC4KPiA+ID4gCj4gPiA+IEFuZCBmaW5hbGx5IG9uIGBFRkVSYCB0aGUgZm9sbG93 aW5nIGZlYXR1cmVzIGFyZSBlbmFibGVkOgo+ID4gPiAKPiA+ID4gICAqIExNRSAoYml0IDgpOiBM b25nIG1vZGUgZW5hYmxlLgo+ID4gPiAgICogTE1BIChiaXQgMTApOiBMb25nIG1vZGUgYWN0aXZl Lgo+ID4gPiAKPiA+ID4gKlRPRE8qOiBkbyB3ZSBleHBlY3QgdGhpcyBmbGFncyB0byBjaGFuZ2U/ IEFyZSB0aGVyZSBvdGhlciBmbGFncwo+ID4gPiB0aGF0IG1pZ2h0IGJlIGVuYWJsZWQgZGVwZW5k aW5nIG9uIHRoZSBoYXJkd2FyZSB3ZSBhcmUgcnVubmluZyBvbj8KPiA+IAo+ID4gQ2FuJ3QgdGhp bmsgb2YgYW55dGhpbmcuLi4KPiAKPiBXaGF0IGFib3V0IHRoZSBpbml0aWFsIHNlZ21lbnRzIChF UywgRFMsIEZTLCBHUyk/IFdlIGJvb3Qgd2l0aCBYZW4KPiBwcm92aWRlZCBvbmVzIGFuZCBuZWVk IHRvIHN3YXAgb3ZlciBmcm9tIHRoZW0gLSBzbyB0aGF0IG1lYW5zCj4gdGhlIERTIGFuZCBDUyBh cmUgaW5pdGlhbGx5IHNldCB0byBYZW4gb25lcy4gQW5kIHdlIHNob3VsZCBwcm9iYWJseQo+IG1l bnRpb24gdGhhdCB3aGVuIHRoZSBPUyBzd2l0Y2hlcyBmcm9tIFhlbiBvbmVzIGl0IE1VU1QganVt cCBhbgo+IENTIHdpdGggQ1MuTCA9IDEgc2V0IG90aGVyd2lzZSBiYWQgdGhpbmdzIGhhcHBlbi4K CkNTLkwgaXMgYWxyZWFkeSBjb3ZlcmVkIGFib3ZlOgogICAgd2l0aCBwYWdpbmcsIFBBRSwgYW5k IGxvbmcgbW9kZSBlbmFibGVkLiBBdCBwcmVzZW50IG9ubHkgNjRiaXQgbW9kZQogICAgaXMgc3Vw cG9ydGVkLCBob3dldmVyLCBpbiBmdXR1cmUgY29tcGF0IG1vZGUgc3VwcG9ydCB3aWxsIGJlIGFk ZGVkLgoKdGhhdCBpcyB0aGUgQ1MuTCBiaXQuIENTLkw9PTEgPT0+IDY0Yml0IG1vZGUsIENTLkw9 PTAgPT0+IGNvbXBhdCBtb2RlLgoKCj4gV2Ugc2hvdWxkIHByb2JhYmx5IG1lbnRpb24gdGhhdCBN U1JfRlNfQkFTRSwgTVNSX0tFUk5FTF9HU19CQVNFCj4gYW5kIE1TUl9GU19CQVNFIGFyZSB6ZXJv ZWQgb3V0LiBOb3Qgc3VyZSBhYm91dCBhbnkgb3RoZXIgTVNSPwoKQ291bGQuCgo+IFNob3VsZCB3 ZSBoYXZlIGEgYmx1cmIgYWJvdXQgSURUIGFuZCBHRFQgYW5kIHRoYXQgdGhlIFBWIGh5cGVyY2Fs bHMKPiBmb3IgdGhhdCB3aWxsIGJlIGlnbm9yZWQuCgphbmQgdGhhdCB0aGV5IGFyZSBuYXRpdmUg YW5kIGd1ZXN0IG1hbmFnZWQuCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9y ZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK