From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: [PATCH] x86/setup: do not relocate below the end of current Xen image placement Date: Mon, 27 Nov 2017 14:54:35 -0500 Message-ID: <20171127195435.GI31092@char.us.oracle.com> References: <1511797263-12887-1-git-send-email-daniel.kiper@oracle.com> <5b282168-a397-4b3e-5348-d7cfe2388aae@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 1eJPUI-0004v5-80 for xen-devel@lists.xenproject.org; Mon, 27 Nov 2017 19:54:42 +0000 Content-Disposition: inline In-Reply-To: <5b282168-a397-4b3e-5348-d7cfe2388aae@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Andrew Cooper Cc: xen-devel@lists.xenproject.org, Daniel Kiper , jbeulich@suse.com List-Id: xen-devel@lists.xenproject.org T24gTW9uLCBOb3YgMjcsIDIwMTcgYXQgMDQ6NTg6NTJQTSArMDAwMCwgQW5kcmV3IENvb3BlciB3 cm90ZToKPiBPbiAyNy8xMS8xNyAxNTo0MSwgRGFuaWVsIEtpcGVyIHdyb3RlOgo+ID4gSWYgaXQg aXMgcG9zc2libGUgd2Ugd291bGQgbGlrZSB0byBoYXZlIHRoZSBYZW4gaW1hZ2UgaGlnaGVyIHRo YW4gdGhlCj4gPiBib29sb2FkZXIgcHV0IGl0IGFuZCBjZXJ0YWlubHkgZG8gbm90IG92ZXJ3cml0 ZSB0aGUgWGVuIGNvZGUgYW5kIGRhdGEKPiA+IGR1cmluZyBjb3B5L3JlbG9jYXRpb24uIE90aGVy d2lzZSB0aGUgWGVuIG1heSBjcmFzaCBzaWxlbnRseSBhdCBib290Lgo+ID4KPiA+IFNpZ25lZC1v ZmYtYnk6IERhbmllbCBLaXBlciA8ZGFuaWVsLmtpcGVyQG9yYWNsZS5jb20+Cj4gCj4gQWN0dWFs bHksIHRoZXJlIGlzIGEgc2Vjb25kIHJlbGF0ZWQgYnVnIHdoaWNoIEkndmUgb25seSBqdXN0IGdv dCB0byB0aGUKPiBib3R0b20gb2YsIGFuZCBoYXZlbid0IGhhZCB0aW1lIHRvIGZpeCB5ZXQuCj4g Cj4gKFhFTikgQm9vdGxvYWRlcjogR1JVQiAyLjAyCj4gKFhFTikgQ29tbWFuZCBsaW5lOiBodm1f ZmVwIGNvbTE9MTE1MjAwLDhuMSBjb25zb2xlPWNvbTEsdmdhCj4gZG9tMF9tZW09MjA0OE0sbWF4 OjIwNDhNIHdhdGNoZG9nIHVjb2RlPXNjYW4gZG9tMF9tYXhfdmNwdXM9OAo+IGNyYXNoa2VybmVs PTE5Mk0sYmVsb3c9NEcKPiAoWEVOKSBYZW4gaW1hZ2UgbG9hZCBiYXNlIGFkZHJlc3M6IDB4YWJh MDAwMDAKPiAoWEVOKSBWaWRlbyBpbmZvcm1hdGlvbjoKPiAoWEVOKcKgIFZHQSBpcyB0ZXh0IG1v ZGUgODB4MjUsIGZvbnQgOHgxNgo+IChYRU4pwqAgVkJFL0REQyBtZXRob2RzOiBub25lOyBFRElE IHRyYW5zZmVyIHRpbWU6IDAgc2Vjb25kcwo+IChYRU4pwqAgRURJRCBpbmZvIG5vdCByZXRyaWV2 ZWQgYmVjYXVzZSBubyBEREMgcmV0cmlldmFsIG1ldGhvZCBkZXRlY3RlZAo+IChYRU4pIERpc2Mg aW5mb3JtYXRpb246Cj4gKFhFTinCoCBGb3VuZCAxIE1CUiBzaWduYXR1cmVzCj4gKFhFTinCoCBG b3VuZCAxIEVERCBpbmZvcm1hdGlvbiBzdHJ1Y3R1cmVzCj4gKFhFTikgWGVuLWU4MjAgUkFNIG1h cDoKPiAoWEVOKcKgIDAwMDAwMDAwMDAwMDAwMDAgLSAwMDAwMDAwMDAwMDliYzAwICh1c2FibGUp Cj4gKFhFTinCoCAwMDAwMDAwMDAwMDliYzAwIC0gMDAwMDAwMDAwMDBhMDAwMCAocmVzZXJ2ZWQp Cj4gKFhFTinCoCAwMDAwMDAwMDAwMGUwMDAwIC0gMDAwMDAwMDAwMDEwMDAwMCAocmVzZXJ2ZWQp Cj4gKFhFTinCoCAwMDAwMDAwMDAwMTAwMDAwIC0gMDAwMDAwMDBhYzIwOTAwMCAodXNhYmxlKQo+ IChYRU4pwqAgMDAwMDAwMDBhYzIwOTAwMCAtIDAwMDAwMDAwYWViOTkwMDAgKHJlc2VydmVkKQo+ IChYRU4pwqAgMDAwMDAwMDBhZWI5OTAwMCAtIDAwMDAwMDAwYWViOWQwMDAgKEFDUEkgTlZTKQo+ IChYRU4pwqAgMDAwMDAwMDBhZWI5ZDAwMCAtIDAwMDAwMDAwYWVjZDEwMDAgKHJlc2VydmVkKQo+ IChYRU4pwqAgMDAwMDAwMDBhZWNkMTAwMCAtIDAwMDAwMDAwYWVjZDQwMDAgKEFDUEkgTlZTKQo+ IChYRU4pwqAgMDAwMDAwMDBhZWNkNDAwMCAtIDAwMDAwMDAwYWVjZjUwMDAgKHJlc2VydmVkKQo+ IChYRU4pwqAgMDAwMDAwMDBhZWNmNTAwMCAtIDAwMDAwMDAwYWVjZjYwMDAgKEFDUEkgTlZTKQo+ IChYRU4pwqAgMDAwMDAwMDBhZWNmNjAwMCAtIDAwMDAwMDAwYWVkMjQwMDAgKHJlc2VydmVkKQo+ IChYRU4pwqAgMDAwMDAwMDBhZWQyNDAwMCAtIDAwMDAwMDAwYWVmMmYwMDAgKEFDUEkgTlZTKQo+ IChYRU4pwqAgMDAwMDAwMDBhZWYyZjAwMCAtIDAwMDAwMDAwYWVmZWQwMDAgKEFDUEkgZGF0YSkK PiAoWEVOKcKgIDAwMDAwMDAwYWVmZWQwMDAgLSAwMDAwMDAwMGFmMDAwMDAwICh1c2FibGUpCj4g KFhFTinCoCAwMDAwMDAwMGFmMDAwMDAwIC0gMDAwMDAwMDBiMDAwMDAwMCAocmVzZXJ2ZWQpCj4g KFhFTinCoCAwMDAwMDAwMGY4MDAwMDAwIC0gMDAwMDAwMDBmYzAwMDAwMCAocmVzZXJ2ZWQpCj4g KFhFTinCoCAwMDAwMDAwMGZlYzAwMDAwIC0gMDAwMDAwMDBmZWMwMTAwMCAocmVzZXJ2ZWQpCj4g KFhFTinCoCAwMDAwMDAwMGZlZDE5MDAwIC0gMDAwMDAwMDBmZWQxYTAwMCAocmVzZXJ2ZWQpCj4g KFhFTinCoCAwMDAwMDAwMGZlZDFjMDAwIC0gMDAwMDAwMDBmZWQyMDAwMCAocmVzZXJ2ZWQpCj4g KFhFTinCoCAwMDAwMDAwMGZlZTAwMDAwIC0gMDAwMDAwMDBmZWUwMTAwMCAocmVzZXJ2ZWQpCj4g KFhFTinCoCAwMDAwMDAwMGZmNDAwMDAwIC0gMDAwMDAwMDEwMDAwMDAwMCAocmVzZXJ2ZWQpCj4g KFhFTinCoCAwMDAwMDAwMTAwMDAwMDAwIC0gMDAwMDAwMDg1MDAwMDAwMCAodXNhYmxlKQo+IChY RU4pIEtkdW1wOiBESVNBQkxFRCAoZmFpbGVkIHRvIHJlc2VydmUgMTkyTUIgKDE5NjYwOGtCKSBh dCAweGEwMjAwMDAwKQo+IChYRU4pIEFDUEk6IFJTRFAgMDAwRjA0MTAsIDAwMjQgKHIyIElOVEVM ICkKPiAKPiBXaGVuIGJvb3Rpbmcgd2l0aCBHcnViMiBjYXBhYmxlIG9mIGxvY2F0aW5nIFhlbiBh dCBpdHMgcHJlZmVycmVkCj4gbG9jYXRpb24sIHRoZSBjYWxjdWxhdGlvbiBmb3IgdGhlIGtleGVj IHJlZ2lvbiBmYWlscywgYmVjYXVzZSB0aGUKPiBjdXJyZW50IGxvY2F0aW9uIG9mIFhlbiBpc24n dCB0YWtlbiBpbnRvIGFjY291bnQuCj4gCj4gVGhlIGVuZCBvZiB0aGUgY2hvc2VuIGtleGVjIHJl Z2lvbiAoMHhhMDIwMDAwMCArIDB4MGMwMDAwMDApIG92ZXJsYXBzCj4gd2l0aCB0aGUgYm90dG9t IG9mIHRoZSBYZW4gaW1hZ2UuCgo8Ymx1c2hlcz4gTmV2ZXIgZ290IHRvIHVwc3RyZWFtIHRoaXMs IG5vciBhY3R1YWxseSBkbyB0aGUgUkZDIHRoaW5nCkkgbWVudGlvbmVkLi4KCgpjb21taXQgMDM1 MDQxMjkxN2U3NDY1ZmU1YWFhM2JhNzYxNmNmOWJjNmRhYTUzMwpBdXRob3I6IEtvbnJhZCBSemVz enV0ZWsgV2lsayA8a29ucmFkLndpbGtAb3JhY2xlLmNvbT4KRGF0ZTogICBXZWQgRGVjIDE2IDE2 OjA1OjMxIDIwMTUgLTA1MDAKCiAgICBrZXhlYy9yZWxvY2F0ZTogQ2hhbmdlIGtleGVjIGxvY2F0 aW9uIGlmIHJlbG9jYXRpb24gaXMgaW4gdGhlIHdheS4KICAgIAogICAgVGhlIGlzc3VlIGF0IGhh bmQgaXMgdGhhdCBHUlVCMiBwdXRzIHVzIGF0IHRoZSBlbmQgb2YgdGhlCiAgICBFODIwX1JBTSB0 aGF0IGlzIHVuZGVyIDRHQi4gSXQgaXMgYWxpZ25lZCBhcyB3ZWxsLgogICAgRm9yIGV4YW1wbGUg OgogICAgCiAgICAoWEVOKSBYZW4gaW1hZ2UgYmFzZSBhZGRyZXNzOiAweGVlYzAwMDAwCiAgICAu LgogICAgKFhFTikgWGVuLWU4MjAgUkFNIG1hcDoKICAgIChYRU4pICAwMDAwMDAwMDAwMDAwMDAw IC0gMDAwMDAwMDAwMDA5ZmMwMCAodXNhYmxlKQogICAgKFhFTikgIDAwMDAwMDAwMDAwOWZjMDAg LSAwMDAwMDAwMDAwMGEwMDAwIChyZXNlcnZlZCkKICAgIChYRU4pICAwMDAwMDAwMDAwMGYwMDAw IC0gMDAwMDAwMDAwMDEwMDAwMCAocmVzZXJ2ZWQpCiAgICAoWEVOKSAgMDAwMDAwMDAwMDEwMDAw MCAtIDAwMDAwMDAwZWZmZmYwMDAgKHVzYWJsZSkKICAgIChYRU4pICAwMDAwMDAwMGVmZmZmMDAw IC0gMDAwMDAwMDBmMDAwMDAwMCAocmVzZXJ2ZWQpCiAgICAKICAgIElmIHRoZSB1c2VyIGRlY2lk ZXMgdG8gcHV0IHRoZSBrZXhlYyBjcmFzaGtlcm5lbCBpbiB0aGUgc2FtZQogICAgYXJlYSAoc28g YXQgdGhlIGVuZCBvZiB0aGUgRTgyMF9SQU0pIHRoZSByZWxvY2F0aW9uIHJvdXRpbmVzCiAgICBn byBoYXl3aXJlLiBGb3IgZXhhbXBsZSB3aXRoICIgY3Jhc2hrZXJuZWw9NTEyTUAzMzI3TSIKICAg IAogICAgd2Ugd291bGQgYmUgdXN1cnBpbmcgdGhlIGVuZCBvZiB0aGUgRTgyMF9SQU0uCiAgICAK ICAgIFRoaXMgY29kZSBkb2Vzbid0IGFjdHVhbGx5IGZpeCB0aGUgdW5kZXJsYXlpbmcgaXNzdWUK ICAgIHdpdGggdGhlIHJlbG9jYXRpb24gcm91dGluZXMgKFNlZSBiZWxvdyBmb3IgZXhwbGFuYXRp b24pLgogICAgSW5zdGVhZCBpdCBqdXN0IHJlY29tcHV0ZXMgdGhlIGxvY2F0aW9uIG9mIHdoZXJl IHRoZSBrZXhlYwogICAgaW1hZ2Ugc2hvdWxkIHJlc2lkZS4gV2l0aCB0aGlzIHBhdGNoIHdlIHdp bGwgaGF2ZToKICAgIAogICAgKFhFTikgS2R1bXA6IDMzMjdNQi0zODM5TUIgb3ZlcmxhcHMgd2l0 aCAweGVlZTAwMDAwKDM4MjJNQikuIEFkanVzdGluZy4KICAgIChYRU4pIEtkdW1wOiA1MTJNQiAo NTI0Mjg4a0IpIGF0IDB4Y2VlMDAwMDAtPjB4ZWVlMDAwMDAKICAgIChYRU4pIE5ldyBYZW4gaW1h Z2UgYmFzZSBhZGRyZXNzOiAweGVmODAwMDAwCiAgICAKICAgIFRoZSBjb2RlIGFzc3VtZXMgdGhh dCB0aGUgIm5ldyIgcmVsb2NhdGlvbiBwaHlzaWNhbCBpcyBhbHdheXMKICAgIGdvaW5nIHRvIF9h ZnRlcl8gd2hlcmUgR1JVQiBoYXMgcHV0IHRoZSBpbml0aWFsIGNvZGUuCiAgICAKICAgIEluIG90 aGVyIHdvcmRzIC0gd2UgYWx3YXlzIG1vdmUgaXQgdXB3YXJkcyBpbiBtZW1vcnkuIEJ1dCBpbiB0 aGlzIGNhc2UKICAgIHRoZXJlIGlzIG5vIHNwYWNlIChiZWNhdXNlIGtleGVjIGhhcyBncmFiYmVk IGl0IGFsbCkgc28gd2UgbXVzdCBtb3ZlIGl0CiAgICBkb3dud2FyZCAoYmVsb3cgd2hlcmUgR1JV QiBwdXQgdXMpLgogICAgCiAgICBUaGF0IG1lYW5zIHN1YnRyYWN0aW5nIHRoZSBkZWx0YS4uIEJ1 dCBzaW5jZSB0aGUgdmFsdWUgaXMKICAgIGFuIHVuc2lnbmVkIGludCB0aGF0IG5lZ2F0aXZlIGJp dCBiZWNvbWVzIDB4ZmZmZmZmZiBpbnN0ZWFkIG9mIC08c29tZSB2YWx1ZT4uCiAgICBUaGVuIHRo ZSBhZGRpdGlvbiBpbiB0aGUgcGFnZXRhYmxlcyBiZWNvbWVzIHF1aXRlIGxhcmdlLgogICAgCiAg ICBIb3dldmVyIGFuIFJGQyBwYXRjaCB0aGF0IGZpeGVzIHRoaXMgZGlkbid0IHdvcmsgcmlnaHQu CiAgICAKICAgIE9yYUJ1ZzogMjIzNzE2MjUgLSBYZW4gaHlwZXJ2aXNvciByZWFsbG9jYXRpb24g ZmFpbHMgdG8gYWxsb2NhdGUgTDMgcGFnZXRhYmxlcwogICAgQWNrZWQtYnk6IEFkbmFuIE1pc2hl cmZpIDxhZG5hbi5taXNoZXJmaUBvcmFjbGUuY29tPgogICAgU2lnbmVkLW9mZi1ieTogS29ucmFk IFJ6ZXN6dXRlayBXaWxrIDxrb25yYWQud2lsa0BvcmFjbGUuY29tPgoKZGlmZiAtLWdpdCBhL3hl bi9hcmNoL3g4Ni9zZXR1cC5jIGIveGVuL2FyY2gveDg2L3NldHVwLmMKaW5kZXggMjFjYmJjZTYw My4uYTViNGQ2ZTQyNyAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L3NldHVwLmMKKysrIGIveGVu L2FyY2gveDg2L3NldHVwLmMKQEAgLTQ3MywxMiArNDczLDE2IEBAIHN0YXRpYyB2b2lkIF9faW5p dCBwYXJzZV92aWRlb19pbmZvKHZvaWQpCiAgICAgICAgIHZnYV9jb25zb2xlX2luZm8udS52ZXNh X2xmYi5tb2RlX2F0dHJzID0gYnZpLT52ZXNhX2F0dHJpYjsKICAgICB9CiB9Ci0KKyNkZWZpbmUg UkVMT0NBVEVfQkFOREFJRCAxCiBzdGF0aWMgdm9pZCBfX2luaXQga2V4ZWNfcmVzZXJ2ZV9hcmVh KHN0cnVjdCBlODIwbWFwICplODIwKQogewogICAgIHVuc2lnbmVkIGxvbmcga2R1bXBfc3RhcnQg PSBrZXhlY19jcmFzaF9hcmVhLnN0YXJ0OwogICAgIHVuc2lnbmVkIGxvbmcga2R1bXBfc2l6ZSAg PSBrZXhlY19jcmFzaF9hcmVhLnNpemU7CiAgICAgc3RhdGljIGJvb2xfdCBfX2luaXRkYXRhIGlz X3Jlc2VydmVkID0gMDsKKyNpZiBSRUxPQ0FURV9CQU5EQUlECisgICAgdW5zaWduZWQgaW50IGkg PSAwOworI2VuZGlmCisgICAgaW50IHJjID0gMDsKIAogICAgIGtkdW1wX3NpemUgPSAoa2R1bXBf c2l6ZSArIFBBR0VfU0laRSAtIDEpICYgUEFHRV9NQVNLOwogCkBAIC00ODYsOCArNDkwLDM3IEBA IHN0YXRpYyB2b2lkIF9faW5pdCBrZXhlY19yZXNlcnZlX2FyZWEoc3RydWN0IGU4MjBtYXAgKmU4 MjApCiAgICAgICAgIHJldHVybjsKIAogICAgIGlzX3Jlc2VydmVkID0gMTsKKyNpZiBSRUxPQ0FU RV9CQU5EQUlECisgICAgd2hpbGUgKCB4ZW5faW1nX2Jhc2VfcGh5c19hZGRyICYmIGkgPCBlODIw LT5ucl9tYXAgKQorICAgIHsKKyAgICAgICAgdW5zaWduZWQgIGxvbmcgcyA9IGU4MjAtPm1hcFtp XS5hZGRyOworICAgICAgICB1bnNpZ25lZCAgbG9uZyBlID0gKGU4MjAtPm1hcFtpXS5hZGRyICsg ZTgyMC0+bWFwW2ldLnNpemUpOworCisgICAgICAgIGlmICggZTgyMC0+bWFwW2krK10udHlwZSAh PSBFODIwX1JBTSApCisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICBpZiAoIHMgPD0g eGVuX2ltZ19iYXNlX3BoeXNfYWRkciAmJiB4ZW5faW1nX2Jhc2VfcGh5c19hZGRyIDw9IGUgKQor ICAgICAgICB7CisgICAgICAgICAgICB1bnNpZ25lZCBsb25nIGRlbHRhID0geGVuX2ltZ19iYXNl X3BoeXNfYWRkciAtIGtkdW1wX3NpemU7CisKKyAgICAgICAgICAgIGlmICggZGVsdGEgPiBzICkK KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBwcmludGsoIktkdW1wOiAlbHVNQi0lbHVN QiBvdmVybGFwcyB3aXRoIDB4JXgoJXVNQikuIEFkanVzdGluZy5cbiIsCisgICAgICAgICAgICAg ICAgICAgICAgIGtkdW1wX3N0YXJ0ID4+IDIwICwgKGtkdW1wX3N0YXJ0ICsga2R1bXBfc2l6ZSkg Pj4gMjAsCisgICAgICAgICAgICAgICAgICAgICAgIHhlbl9pbWdfYmFzZV9waHlzX2FkZHIsIHhl bl9pbWdfYmFzZV9waHlzX2FkZHIgPj4gMjApOworICAgICAgICAgICAgICAgIGtleGVjX2NyYXNo X2FyZWEuc3RhcnQgPSBkZWx0YTsKKyAgICAgICAgICAgICAgICBrZHVtcF9zdGFydCA9IGRlbHRh OworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxz ZQorICAgICAgICAgICAgICAgIHJjID0gLUVJTlZBTDsKKyAgICAgICAgfQorICAgIH0KKyNlbmRp ZgorICAgIGlmICggcmMgPT0gMCApCisgICAgICAgIHJjID0gIXJlc2VydmVfZTgyMF9yYW0oZTgy MCwga2R1bXBfc3RhcnQsIGtkdW1wX3N0YXJ0ICsga2R1bXBfc2l6ZSk7CiAKLSAgICBpZiAoICFy ZXNlcnZlX2U4MjBfcmFtKGU4MjAsIGtkdW1wX3N0YXJ0LCBrZHVtcF9zdGFydCArIGtkdW1wX3Np emUpICkKKyAgICBpZiAoIHJjICkKICAgICB7CiAgICAgICAgIHByaW50aygiS2R1bXA6IERJU0FC TEVEIChmYWlsZWQgdG8gcmVzZXJ2ZSAlbHVNQiAoJWx1a0IpIGF0ICUjbHgpIgogICAgICAgICAg ICAgICAgIlxuIiwga2R1bXBfc2l6ZSA+PiAyMCwga2R1bXBfc2l6ZSA+PiAxMCwga2R1bXBfc3Rh cnQpOwpAQCAtNDk1LDggKzUyOCw5IEBAIHN0YXRpYyB2b2lkIF9faW5pdCBrZXhlY19yZXNlcnZl X2FyZWEoc3RydWN0IGU4MjBtYXAgKmU4MjApCiAgICAgfQogICAgIGVsc2UKICAgICB7Ci0gICAg ICAgIHByaW50aygiS2R1bXA6ICVsdU1CICglbHVrQikgYXQgJSNseFxuIiwKLSAgICAgICAgICAg ICAgIGtkdW1wX3NpemUgPj4gMjAsIGtkdW1wX3NpemUgPj4gMTAsIGtkdW1wX3N0YXJ0KTsKKyAg ICAgICAgcHJpbnRrKCJLZHVtcDogJWx1TUIgKCVsdWtCKSBhdCAlI2x4LT4lI2x4XG4iLAorICAg ICAgICAgICAgICAga2R1bXBfc2l6ZSA+PiAyMCwga2R1bXBfc2l6ZSA+PiAxMCwga2R1bXBfc3Rh cnQsCisJICAgICAgIGtkdW1wX3N0YXJ0ICsga2R1bXBfc2l6ZSk7CiAgICAgfQogfQogCj4gCj4g fkFuZHJldwo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCj4gWGVuLWRldmVsIG1haWxpbmcgbGlzdAo+IFhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0 Lm9yZwo+IGh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4t ZGV2ZWwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhl bi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBz Oi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=