From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: HVMLite / PVHv2 - using x86 EFI boot entry Date: Wed, 13 Apr 2016 21:01:32 -0400 Message-ID: <20160414010131.GA21510__48920.1173223138$1460595854$gmane$org@localhost.localdomain> References: <20160406024027.GX1990@wotan.suse.de> <5704D978.1050101@citrix.com> <20160408204032.GR1990@wotan.suse.de> <570B3228.90400@suse.com> <20160413182951.GW1990@wotan.suse.de> <20160413185629.GA7501@char.us.oracle.com> <20160413204055.GD1990@wotan.suse.de> <20160413210801.GC5962@char.us.oracle.com> <20160413222317.GH1990@wotan.suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1aqVg8-0006Ez-M1 for xen-devel@lists.xenproject.org; Thu, 14 Apr 2016 01:02:40 +0000 Content-Disposition: inline In-Reply-To: <20160413222317.GH1990@wotan.suse.de> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: "Luis R. Rodriguez" Cc: Matt Fleming , Michael Chang , linux-kernel@vger.kernel.org, Julien Grall , Jan Beulich , "H. Peter Anvin" , Daniel Kiper , x86@kernel.org, =?utf-8?Q?Vojt=C4=9Bch_Pavl=C3=ADk?= , Gary Lin , xen-devel@lists.xenproject.org, Jeffrey Cheung , Charles Arndol , Stefano Stabellini , joeyli , Borislav Petkov , Boris Ostrovsky , Juergen Gross , Andrew Cooper , Jim Fehlig , Andy Lutomirski , David Vrabel , Linus Torvalds , Roger Pau =?iso-8859-1?Q?Monn=E9?= List-Id: xen-devel@lists.xenproject.org T24gVGh1LCBBcHIgMTQsIDIwMTYgYXQgMTI6MjM6MTdBTSArMDIwMCwgTHVpcyBSLiBSb2RyaWd1 ZXogd3JvdGU6Cj4gT24gV2VkLCBBcHIgMTMsIDIwMTYgYXQgMDU6MDg6MDFQTSAtMDQwMCwgS29u cmFkIFJ6ZXN6dXRlayBXaWxrIHdyb3RlOgo+ID4gT24gV2VkLCBBcHIgMTMsIDIwMTYgYXQgMTA6 NDA6NTVQTSArMDIwMCwgTHVpcyBSLiBSb2RyaWd1ZXogd3JvdGU6Cj4gPiA+IE9uIFdlZCwgQXBy IDEzLCAyMDE2IGF0IDAyOjU2OjI5UE0gLTA0MDAsIEtvbnJhZCBSemVzenV0ZWsgV2lsayB3cm90 ZToKPiA+ID4gPiBPbiBXZWQsIEFwciAxMywgMjAxNiBhdCAwODoyOTo1MVBNICswMjAwLCBMdWlz IFIuIFJvZHJpZ3VleiB3cm90ZToKPiA+ID4gPiA+IE9uIE1vbiwgQXByIDExLCAyMDE2IGF0IDA3 OjEyOjA4QU0gKzAyMDAsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6Cj4gPiA+ID4gPiAKPiA+ID4gPiA+ ID4gV2hhdCB3b3VsZCBiZSBnYWluZWQgYnkgdXNpbmcgdGhlIHNhbWUgZW50cnkgYnV0IGhhdmlu ZyB0d28gZGlmZmVyZW50IGJvb3QKPiA+ID4gPiA+ID4gcGF0aHMgYWZ0ZXIgaXQ/Cj4gPiA+ID4g PiAKPiA+ID4gPiA+IEl0cyBhIGdvb2QgcXVlc3Rpb24uIEluIHN1bW1hcnkgZm9yIG1lIGl0IHdv dWxkIGJlIHRoZSBwdXNoIGZvciBzaGFyaW5nIG1vcmUKPiA+ID4gPiA+IGNvZGUgYW5kIHRoZSBw dXNoIGZvciBzZW1hbnRpY3Mgb24gZWFybHkgYm9vdCB0byBhZGRyZXNzIGRpZmZlcmVuY2VzCj4g PiA+ID4gPiBwcm9hY3RpdmVseSwgYW5kIHVsdGltYXRlbHkgaXQgbWF5IGVuYWJsZSB1cyB0byBo ZWxwIGJyaW5nIGNsb3NlciB0aGUgb2xkIFBWCj4gPiA+ID4gPiBib290IHBhdGggY2xvc2VyLgo+ ID4gPiA+IAo+ID4gPiA+IEJ1dCB3aHk/IFdlIHdhbnQgdG8ga2lsbCBQViAoZXZlbnR1YWxseSku Cj4gPiA+IAo+ID4gPiBZZWFoIHllYWgsIGJ1dCBpdHMgc3RpbGwgdGhlcmUsIGFuZCB3ZSdsbCBo YXZlIHRvIGxpdmUgd2l0aCBpdCBmb3IKPiA+ID4gYXQgbGVhc3QgbWluaW11bSA1IHllYXJzIEkg aGVhci4gUGFydCBvZiBteSBpbnRlcmVzdCBpcyB0byBzZWUgdG8gaXQKPiA+ID4gdGhhdCB0aGlz IHBhdGggZ2V0cyBsZXNzIGRpc3J1cHRpb24gYW5kIGlzc3VlcywgYW5kIHdlIGFsc28gYWRkcmVz cwo+ID4gPiBkZWFkIGNvZGUgaXNzdWVzIHdoaWNoIHB2b3BzIHNpbXBseSBmb2xkZWQgdW5kZXIg dGhlIHJ1Zy4gVGhlIGRlYWQgY29kZQo+ID4gPiBjb25jZXJucyBtYXkgZXhpc3Qgc3RpbGwgZm9y IGh2bWxpdGUsIHNvIHVubGVzcyBzb21lb25lIGlzIHdpbGxpbmcKPiA+ID4gdG8gbWFrZSBhIGJv bGQgY2xhaW0gdGhlcmUgaXMgbm9uZSwgaXRzIHNvbWV0aGluZyB0byBjb25zaWRlci4KPiA+IAo+ ID4gV2hhdCBpcyB0aGlzIGRlYWQgY29kZSB5b3Ugc3BlYWsgb2Y/IElzIGl0IE1UUlI/IElzIGVh cmx5IHBhdGggY29kZQo+ID4gdGhhdCBQViBtaXNzZXMgKGxpa2UgS0FTTCBvciBvdGhlcj8pCj4g Cj4gS2FzYW4gaXMgZGVhZCBjb2RlIHRvIFhlbi4gSWYgeW91IGJvb3QgeDg2IFhlbiB3aXRoIEth c2FuIGVuYWJsZWQKCkZvciBYZW4gUFYgZ3Vlc3RzLAo+IFhlbiBleHBsb2Rlcy4gUXVpY2sgcXVl c3Rpb24sIHdpbGwgS2FzYW4gbm90IGV4cGxvZGUgd2l0aCBIVk1MaXRlID8KCi4uIGJ1dCBmb3Ig SFZNTGl0ZSBvZiBYZW4gSFZNIGd1ZXN0IEthc2FuIHdpbGwgcnVuLgo+IAo+IE1UUlIgdXNlZCB0 byBiZSBkZWFkIGNvZGUgY29uY2VybiBidXQgc2luY2Ugd2UgaGF2ZSB2ZXR0ZWQgbW9zdCBvZiB0 aGF0IGNvZGUKPiBub3cgd2UgYXJlIHByZXR0eSBjZXJ0YWluIHRoYXQgY29kZSBzaG91bGQgbmV2 ZXIgcnVuIG5vdy4KPiAKPiBLQVNMUiBtYXkgYmUgLS0gbm90IHN1cmUgYXMgSSAgaGF2ZW4ndCB2 ZXR0ZWQgdGhhdCwgYnV0IGZyb20KPiB3aGF0IEkgaGF2ZSBsb29zZWx5IGhlYXJkIG1heWJlLgo+ IAo+IFZHQSBjb2RlIHdpbGwgYmUgZGVhZCBjb2RlIGZvciBIVk1saXRlIGZvciBzdXJlIGFzIHRo ZSBkZXNpZ24gZG9jCj4gc2F5cyBpdCB3aWxsIG5vdCBydW4gVkdBLCB0aGUgQUNQSSBmbGFnIHdp bGwgYmUgc2V0IGJ1dCB0aGUgY2hlY2sKPiBmb3IgdGhhdCBpcyBub3QgeWV0IG9uIExpbnV4LiBU aGF0IG1lYW5zIHRoZSBWR0EgTGludXggY29kZSB3aWxsCj4gYmUgdGhlcmUgYnV0IHdlIGhhdmUg bm8gd2F5IHRvIGVuc3VyZSBpdCB3aWxsIG5vdCBydW4gbm9yIHRoYXQKPiBhbnl0aGluZyB3aWxs IG11Y2sgd2l0aCBpdC4KCjxzaHJ1Z3M+IFRoZSB3b3JzdCBpdCB3aWxsIGRvIGlzIHRyeSB0byBy ZWFkIG5vbi1leGlzdGVudCByZWdpc3RlcnMuClRoZSBWR0EgY29kZSBzaG91bGQgYmUgYWJsZSB0 byBoYW5kbGUgZmFpbHVyZXMgbGlrZSB0aGF0IGFuZApub3QgaW5pdGlhbGl6ZSBpdHNlbGYgd2hl biB0aGUgaGFyZHdhcmUgaXMgZGVhZCAob3Igbm9uLWV4aXN0ZW50KS4KPiAKPiBUbyBiZSBjbGVh ciAtLSBkZWFkIGNvZGUgY29uY2VybnMgc3RpbGwgZXhpc3QgZXZlbiB3aXRob3V0Cj4gdmlydHVh bGl6YXRpb24gc29sdXRpb25zLCBpdHMganVzdCB0aGF0IHdpdGggdmlydHVhbGl6YXRpb24KPiB0 aGlzIHN0dWZmIGNvbWVzIHVwIG1vcmUgYW5kIHRoZXJlIGhhcyBiZWVuIG5vIHByb2FjdGl2ZQo+ IG1lYXN1cmVzIHRvIGFkZHJlc3MgdGhpcy4gVGhlIHF1ZXN0aW9uIG9mIHNlbWFudGljcyBoZXJl IGlzCj4gdG8gc2VlIHRvIHdoYXQgZXh0ZW50IHdlIG5lZWQgZWFybGllciBib290IGNvZGUgYW5u b3RhdGlvbnMKPiB0byBlbnN1cmUgd2UgYWRkcmVzcyBzZW1hbnRpY3MgcHJvYWN0aXZlbHkuCgpJ IHRoaW5rIHdoYXQgeW91IG1lYW4gYnkgZGVhZCBjb2RlIGlzIGFub3RoZXIgd29yZCBmb3IKaGFy ZHdhcmUgdGVzdCBjb3ZlcmFnZT8KPiAKPiA+IFRoZSBlbnRyYWNlIHBvaW50IGluIExpbnV4ICJw cm9wZXIiIGlzIHN0YXJ0dXBfMzIgb3Igc3RhcnR1cF82NCAtIHRoZSBzYW1lCj4gPiBwYXRoIHRo YXQgRUZJIHVzZXMuCj4gPiAKPiA+IElmIHlvdSB3ZXJlIHRvIGRyYXcgdGhpcyAodmVyeSBzaW1w bGlmaWVkKToKPiA+IAo+ID4gYSktIEdSVUIyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVwgKGNyZWF0 ZXMgYW4gYm9vdHBhcmFtIHN0cnVjdHVyZSkKPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXAo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0gc3RhcnR1 cF8zMiBvciBzdGFydHVwXzY0Cj4gPiBiKSBFRkkgLT4gTGludXggRUZJIHN0dWIgLS0tLS0tLS8K PiA+ICAgICAgICAoY3JlYXRlcyBib290cGFybSkgICAgICAvCj4gPiBjKSBHUlVCMi1FRkkgIC0+ IExpbnV4IEVGSS0tLS0vCj4gPiAgICAgICAgICAgICAgICBzdHViICAgICAgICAgLwo+ID4gZCkg SFZNTGl0ZSAtLS0tLS0tLS0tLS0tLS0tLwo+ID4gICAgICAgKGNyZWF0ZXMgYm9vdHBhcm0pCj4g Cj4gYikgYW5kIGQpIG1pZ2h0IGJlIGFibGUgdG8gc2hhcmUgcGF0aHMgdGhlcmUuLi4KCk5vIGlk ZWEuIFlvdSB3b3VsZCBoYXZlIHRvIGxvb2sgaW4gdGhlIGFzc2VtYmxlciBjb2RlIHRvCmZpZ3Vy ZSB0aGF0IG91dC4KCj4gZCkgc3RpbGwgaGFzIGl0cyBvd24gZW50cnksIGl0IGRvZXMgbW9yZSB0 aGFuIGNyZWF0ZSBib290IHBhcmFtcy4KCmQpIHB1cnBvc2UgaXMgdG8gY3JlYXRlIGJvb3QgcGFy YW1zLiBJdCBtYXkgZG8gbW9yZSBhcyBub2JvZHkgbGlrZXMKdG8gbXVjayBpbiBhc3NlbWJsZXIg YW5kIG1ha2UgYm9vdHBhcmFtcyBmcm9tIHdpdGhpbiBhc3NlbWJsZXIuCgo+IAo+ID4gKEkgYW0g bm90IHN1cmUgYWJvdXQgdGhlIGMpIC0gSSB3b3VsZCBoYXZlIHRvIGxvb2sgaW4gc291cmNlIHRv Cj4gPiBiZSBzb3VyY2UpLiBUaGVyZSBpcyBhbHNvIExJTE8gaW4gdGhpcywgYnV0IEkgYW0gbm90 IGV2ZW4gc3VyZSBpZgo+ID4gd29ya3MgYW55bW9yZS4KPiA+IAo+ID4gCj4gPiBXaGF0IHlvdSBo YXZlIGlzIHRoYXQgZXZlcnkgZW50cnkgcG9pbnQgY3JlYXRlcyB0aGUgYm9vdHBhcmFtcwo+ID4g YW5kIGVuZHMgdXAgY2FsbGluZyBzdGFydHVwX1guIFRoZSBzdGFydHVwXzY0IHRoZW4gaGl0IHRo ZSByZXN0Cj4gPiBvZiB0aGUga2VybmVsLiBUaGUgc3RhcnRwX1ggY29kZSBpcyB0aGUgb25lIHRo YXQgd291bGQgc2V0dXAKPiA+IHRoZSBiYXNpYyBwYWdldGFibGVzLCBzZWdtZW50cywgZXRjLgo+ IAo+IFN1cmUuLiBhIGZ1bGwgZGlhZ3JhbSBzaG91bGQgaW5jbHVkZSBib3RoIHNpZGVzIGFuZCBo b3cgd2hlbiB1c2luZwo+IGEgY3VzdG9tIGVudHJ5IG9uZSBydW5zIHRoZSByaXNrIG9mIHNraXBw aW5nIGEgbG90IG9mIGNvZGUgc2V0dXAuCgpCdXQgaXQgZG9lcyBub3Qgc2tpcCBhIGxvdCBvZiBj b2RlIHNldHVwLiBJdCBzdGFydHMgZXhhY3RseQphdCB0aGUgc2FtZSBjb2RlIHN0YXJ0dXAgdGhh dCBfYWxsXyBib290c3RyYXBpbmcgY29kZSBzdGFydCBhdC4KCj4gVGhlcmUgaXMgdGhhdCBhbmQg YXMgb3RoZXJzIGhhdmUgcG9pbnRlZCBvdXQgaG93IGNlcnRhaW4gZ3Vlc3RzIHR5cGVzCj4gYXJl IGFzc3VtZWQgdG8gbm90IGhhdmUgY2VydGFpbiBwZXJpcGhlcmFscywgYW5kIHdlIGhhdmUgbm8g aWRlYQo+IHRvIGVuc3VyZSBjZXJ0YWluIG9sZCBsZWdhY3kgY29kZSBtYXkgbm90IGV2ZXIgcnVu IG9yIGJlIGFjY2Vzc2VkCj4gYnkgZHJpdmVycy4KCk9rLCBidXQgdGhhdCBpcyBub3QgYXQgY29k ZSBzZXR1cC4gVGhhdCBpcyBsYXRlciAtIHdoZW4gZGV2aWNlCmRyaXZlcnMgYXJlIGluaXRpYWxp emVkLiBUaGlzIG5vIGRpZmZlcmVudCB0aGFuIGJvb3Rpbmcgb24Kc29tZSBoYXJkd2FyZSB3aXRo IG1pc3NpbmcgZnVuY3Rpb25hbGl0eS4gQUNQSSwgUENJIGFuZCBQblAKUG5QIGFyZSBzZXQgdGhl cmUgdG8gaGVscCBPU2VzIGRpc2NvdmVyIHRoaXMuCj4gCj4gPiA+IEhvdyB3ZSBhZGRyZXNzIHNl bWFudGljcyB0aGVuIGlzICp2ZXJ5KiBpbXBvcnRhbnQgdG8gbWUuCj4gPiAKPiA+IFdoaWNoIHNl bWFudGljcz8gSG93IHRoZSBDUFUgaXMgZ29pbmcgdG8gYmUgYXQgc3RhcnR1cF9YID8gT3IKPiA+ IGhvdyB0aGUgQ1BVIGlzIGdvaW5nIHRvIGJlIHdoZW4gRUZJIGZpcm13YXJlIGludm9rZXMgdGhl IEVGSSBzdHViPwo+ID4gT3Igd2hlbiBHUlVCMiBsb2FkcyBMaW51eD8KPiAKPiBXaGF0IGh5cGVy dmlzb3Iga2lja2VkIG1lIGFuZCB3aGF0IGd1ZXN0IHR5cGUgSSBhbS4KCmNwdWlkIHNvZnR3YXJl IGZsYWdzIGhhdmUgdGhhdCAtIGFuZCB0aGF0IHNlbWFudGljcyBoYXMgYmVlbiAKdGhlcmUgZm9y IGVvbnMuCj4gCj4gTGV0IG1lIGVsYWJvcmF0ZSBtb3JlIGJlbG93Lgo+IAo+ID4gVGhhdCAodGhv c2UgYm9vdGxvYWRlcnMpIGlzIGNsZWFybHkgZGVmaW5lZC4gVGhlIFVSTCBJIHByb3ZpZGVkCj4g PiBtZW50aW9ucyB0aGUgSFZNTGl0ZSBvbmUuIFRoZSBEb2N1bWVudGF0aW9uL3g4Ni9ib290LmMg bWVudGlvbnMKPiA+IHdoYXQgdGhlIHNlbWFudGljcyBhcmUgdG8gZXhwZWN0ZWQgd2hlbiBwcm92 aWRpbmcgYW4gYm9vdHN0cmFwCj4gPiAod2hpY2ggaXMgd2hhdCBIVk1MaXRlbCBzdHViIGNvZGUg aW4gTGludXggd291bGQgd3JpdGUgYWdhaW5zdCAtCj4gPiBhbmQgd2hhdCBFRkkgc3R1YiBjb2Rl IGhhZCBiZWVuIHdyaXR0ZW4gYWdhaW5zdCB0b28pLgo+ID4gPiAKPiA+ID4gPiA+IEknbGwgZWxh Ym9yYXRlIG9uIHRoaXMgYnV0IGZpcnN0IGxldCdzIGNsYXJpZnkgd2h5IGEgbmV3IGVudHJ5IGlz IHVzZWQgZm9yCj4gPiA+ID4gPiBIVk1saXRlIHRvIHN0YXJ0IG9mIHdpdGg6Cj4gPiA+ID4gPiAK PiA+ID4gPiA+ICAgMSkgWGVuIEFCSSBoYXMgaGlzdG9yaWNhbGx5IG5vdCB3YW50ZWQgdG8gc2V0 IHVwIHRoZSBib290IHBhcmFtcyBmb3IgTGludXgKPiA+ID4gPiA+ICAgICAgZ3Vlc3RzLCBpbnN0 ZWFkIGl0IGluc2lzdHMgb24gbGV0dGluZyB0aGUgTGludXgga2VybmVsIFhlbiBib290IHN0dWJz IGZpbGwKPiA+ID4gPiA+ICAgICAgdGhhdCBvdXQgZm9yIGl0LiBUaGlzIHN0aWNraW5nIHBvaW50 IG1lYW5zIGl0IGhhcyBpbXBsaWNhdGVkIGEgYm9vdCBzdHViLgo+ID4gPiA+IAo+ID4gPiA+IAo+ ID4gPiA+IFdoaWNoIGlzIGIvYyBpdCBoYXMgdG8gYmUgT1MgYWdub3N0aWMuIEl0IGhhcyBub3Ro aW5nIHRvIGRvICdub3Qgd2FudGluZycuCj4gPiA+IAo+ID4gPiBJdCBjYW4gc3RpbGwgYmUgT1Mg YWdub3N0aWMgYW5kIHBhc3Mgb24gdHlwZSBhbmQgY3VzdG9tIGRhdGEgcG9pbnRlci4KPiA+IAo+ ID4gU3VyZS4gSXQgaGFzIHRoYXQgKGl0IE1VU1Qgb3RoZXJ3aXNlIGhvdyBlbHNlIHdvdWxkIHlv dSBwYXNzIGRhdGEpLgo+ID4gSXQgaXMgZG9jdW1lbnRlZCBhcyB3ZWxsIGh0dHA6Ly94ZW5iaXRz Lnhlbi5vcmcvZG9jcy91bnN0YWJsZS9oeXBlcmNhbGwveDg2XzY0L2luY2x1ZGUscHVibGljLHhl bi5oLmh0bWwjaW5jb250ZW50c19zdGFydG9mZGF5Cj4gPiAoc2VlICIgU3RhcnQgb2YgZGF5IHN0 cnVjdHVyZSBwYXNzZWQgdG8gUFZIIGd1ZXN0cyBpbiAlZWJ4LiIpCj4gCj4gVGhlIGRlc2lnbiBk b2MgYmVncyBmb3IgYSBjdXN0b20gT1MgZW50cnkgcG9pbnQgdGhvdWdoLgoKVGhhdCBpcyB3aGF0 IHRoZSBFTEYgTm90ZSBoYXMuCj4gSWYgd2UgaGFkIGEgc2luZ2xlICd0eXBlJyBhbmQgJ2N1c3Rv bSBkYXRhJyBwYXNzZWQgdG8gdGhlIGtlcm5lbCB0aGF0Cj4gc2hvdWxkIHN1ZmZpY2UgZm9yIHRo ZSBkZWZhdWx0IExpbnV4IGVudHJ5IHBvaW50IHRvIGp1c3QgcGl2b3Qgb2ZmCj4gb2YgdGhhdCBh bmQgZG8gd2hhdCBpdCBuZWVkcyB3aXRob3V0IG1vcmUgZW50cnkgcG9pbnRzLiBPbmNlLgoKQW5k IHdoYXQgYWJvdXQgcmFtZGlzaz8gV2hhdCBhYm91dCBtdWx0aXBsZSByYW1kaXNrcz8KV2hhdCBh Ym91dCBjb21tYW5kIGxpbmU/IEFsbCBvZiB0aGF0IGlzIHdoYXQgYm9vdHBhcmFtcwp0cmllcyB0 byB1bmlmeSBvbiBMaW51eC4gQnV0ICdib290cGFyYW1zJyBpcyB1bmlxdWUgdG8gTGludXgsCml0 IGRvZXMgbm90IGV4aXN0IG9uIEZyZWVCU0QuIEhlbmNlIHNvbWUgc3R1YiBjb2RlIHRvIHRyYW5z cGxhbnQKT1MtYWdub3N0aWMgc2ltcGxlIGRhdGEgdG8gT1Mtc3BlY2lmaWMgaXMgbmVjY2Vzc2Fy eS4KPiAKPiAgIEx1aXMKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0 cDovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==