From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Kiper Subject: Re: [PATCH v4 08/19] xen: add basic hooks for PVH in current code Date: Fri, 9 Nov 2018 18:55:09 +0100 Message-ID: <20181109175509.GC4363__9116.03948702595$1541786051$gmane$org@olila.i.net-space.pl> References: <20181102123738.16395-1-jgross@suse.com> <20181102123738.16395-9-jgross@suse.com> <20181108154557.GH4487@olila.i.net-space.pl> <5ce5c08b-2517-e209-5786-c255170c8b88@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <5ce5c08b-2517-e209-5786-c255170c8b88@suse.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Juergen Gross Cc: hans@knorrie.org, grub-devel@gnu.org, xen-devel@lists.xen.org, phcoder@gmail.com List-Id: xen-devel@lists.xenproject.org T24gVGh1LCBOb3YgMDgsIDIwMTggYXQgMDg6MjM6MjBQTSArMDEwMCwgSnVlcmdlbiBHcm9zcyB3 cm90ZToKPiBPbiAwOC8xMS8yMDE4IDE2OjQ1LCBEYW5pZWwgS2lwZXIgd3JvdGU6Cj4gPiBPbiBG cmksIE5vdiAwMiwgMjAxOCBhdCAwMTozNzoyN1BNICswMTAwLCBKdWVyZ2VuIEdyb3NzIHdyb3Rl Ogo+ID4+IEFkZCB0aGUgaG9va3MgdG8gY3VycmVudCBjb2RlIG5lZWRlZCBmb3IgWGVuIFBWSC4g VGhleSB3aWxsIGJlIGZpbGxlZAo+ID4+IHdpdGggY29kZSBsYXRlciB3aGVuIHRoZSByZWxhdGVk IGZ1bmN0aW9uYWxpdHkgaXMgYmVpbmcgYWRkZWQuCj4gPj4KPiA+PiBTaWduZWQtb2ZmLWJ5OiBK dWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+Cj4gPj4gLS0tCj4gPj4gVjM6IHhlbnB2aC0+ eGVuX3B2aCAoRGFuaWVsIEtpcGVyKQo+ID4+ICAgICBhZGp1c3QgY29weXJpZ2h0IGRhdGUgKFJv Z2VyIFBhdSBNb25uw6kpCj4gPj4gLS0tCj4gPj4gIGdydWItY29yZS9rZXJuL2kzODYveGVuL3B2 aC5jICAgICAgICAgfCAzNiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ID4+ ICBncnViLWNvcmUva2Vybi9pMzg2L3hlbi9zdGFydHVwX3B2aC5TIHwgMjkgKysrKysrKysrKysr KysrKysrKysrKysrKysrKwo+ID4+ICBncnViLWNvcmUva2Vybi94ZW4vaW5pdC5jICAgICAgICAg ICAgIHwgIDYgKysrKysrCj4gPj4gIGdydWItY29yZS9sb2FkZXIvaTM4Ni9saW51eC5jICAgICAg ICAgfCAgMSArCj4gPj4gIGluY2x1ZGUvZ3J1Yi9pMzg2L3hlbl9wdmgva2VybmVsLmggICAgfCAz MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ID4+ICBpbmNsdWRlL2dydWIveGVuLmgg ICAgICAgICAgICAgICAgICAgIHwgIDYgKysrKysrCj4gPj4gIDYgZmlsZXMgY2hhbmdlZCwgMTA4 IGluc2VydGlvbnMoKykKPiA+PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdydWItY29yZS9rZXJuL2kz ODYveGVuL3B2aC5jCj4gPj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBncnViLWNvcmUva2Vybi9pMzg2 L3hlbi9zdGFydHVwX3B2aC5TCj4gPj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL2dydWIv aTM4Ni94ZW5fcHZoL2tlcm5lbC5oCj4gPj4KPiA+PiBkaWZmIC0tZ2l0IGEvZ3J1Yi1jb3JlL2tl cm4vaTM4Ni94ZW4vcHZoLmMgYi9ncnViLWNvcmUva2Vybi9pMzg2L3hlbi9wdmguYwo+ID4+IG5l dyBmaWxlIG1vZGUgMTAwNjQ0Cj4gPj4gaW5kZXggMDAwMDAwMDAwLi5hYzYxODFmNGUKPiA+PiAt LS0gL2Rldi9udWxsCj4gPj4gKysrIGIvZ3J1Yi1jb3JlL2tlcm4vaTM4Ni94ZW4vcHZoLmMKPiA+ PiBAQCAtMCwwICsxLDM2IEBACj4gPj4gKy8qCj4gPj4gKyAqICBHUlVCICAtLSAgR1JhbmQgVW5p ZmllZCBCb290bG9hZGVyCj4gPj4gKyAqICBDb3B5cmlnaHQgKEMpIDIwMTggIEZyZWUgU29mdHdh cmUgRm91bmRhdGlvbiwgSW5jLgo+ID4+ICsgKgo+ID4+ICsgKiAgR1JVQiBpcyBmcmVlIHNvZnR3 YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Cj4gPj4gKyAqICBpdCB1 bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxp c2hlZCBieQo+ID4+ICsgKiAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZl cnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKPiA+PiArICogIChhdCB5b3VyIG9wdGlvbikgYW55 IGxhdGVyIHZlcnNpb24uCj4gPj4gKyAqCj4gPj4gKyAqICBHUlVCIGlzIGRpc3RyaWJ1dGVkIGlu IHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCj4gPj4gKyAqICBidXQgV0lUSE9VVCBB TlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgo+ID4+ICsg KiAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAg U2VlIHRoZQo+ID4+ICsgKiAgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0 YWlscy4KPiA+PiArICoKPiA+PiArICogIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCj4gPj4gKyAqICBhbG9uZyB3aXRoIEdS VUIuICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCj4gPj4gKyAq Lwo+ID4+ICsKPiA+PiArI2luY2x1ZGUgPGdydWIva2VybmVsLmg+Cj4gPj4gKyNpbmNsdWRlIDxn cnViL21pc2MuaD4KPiA+PiArI2luY2x1ZGUgPGdydWIvbWVtb3J5Lmg+Cj4gPj4gKyNpbmNsdWRl IDxncnViL21tLmg+Cj4gPj4gKyNpbmNsdWRlIDxncnViL3hlbi5oPgo+ID4+ICsjaW5jbHVkZSA8 Z3J1Yi9tYWNoaW5lL2tlcm5lbC5oPgo+ID4+ICsKPiA+PiArZ3J1Yl91aW50NjRfdCBncnViX3Jz ZHBfYWRkcjsKPiA+PiArCj4gPj4gK3ZvaWQKPiA+PiArZ3J1Yl94ZW5fc2V0dXBfcHZoICh2b2lk KQo+ID4+ICt7Cj4gPj4gK30KPiA+PiArCj4gPj4gK2dydWJfZXJyX3QKPiA+PiArZ3J1Yl9tYWNo aW5lX21tYXBfaXRlcmF0ZSAoZ3J1Yl9tZW1vcnlfaG9va190IGhvb2ssIHZvaWQgKmhvb2tfZGF0 YSkKPiA+PiArewo+ID4+ICt9Cj4gPj4gZGlmZiAtLWdpdCBhL2dydWItY29yZS9rZXJuL2kzODYv eGVuL3N0YXJ0dXBfcHZoLlMgYi9ncnViLWNvcmUva2Vybi9pMzg2L3hlbi9zdGFydHVwX3B2aC5T Cj4gPj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiA+PiBpbmRleCAwMDAwMDAwMDAuLjY5YjhmZGNj YQo+ID4+IC0tLSAvZGV2L251bGwKPiA+PiArKysgYi9ncnViLWNvcmUva2Vybi9pMzg2L3hlbi9z dGFydHVwX3B2aC5TCj4gPj4gQEAgLTAsMCArMSwyOSBAQAo+ID4+ICsvKiBzdGFydHVwLlMgLSBi b290c3RyYXAgR1JVQiBpdHNlbGYgKi8KPiA+PiArLyoKPiA+PiArICogIEdSVUIgIC0tICBHUmFu ZCBVbmlmaWVkIEJvb3Rsb2FkZXIKPiA+PiArICogIENvcHlyaWdodCAoQykgMjAxOCAgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCj4gPj4gKyAqCj4gPj4gKyAqICBHUlVCIGlzIGZyZWUg c29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKPiA+PiArICog IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMg cHVibGlzaGVkIGJ5Cj4gPj4gKyAqICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRo ZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgo+ID4+ICsgKiAgKGF0IHlvdXIgb3B0aW9u KSBhbnkgbGF0ZXIgdmVyc2lvbi4KPiA+PiArICoKPiA+PiArICogIEdSVUIgaXMgZGlzdHJpYnV0 ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKPiA+PiArICogIGJ1dCBXSVRI T1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCj4g Pj4gKyAqICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP U0UuICBTZWUgdGhlCj4gPj4gKyAqICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9y ZSBkZXRhaWxzLgo+ID4+ICsgKgo+ID4+ICsgKiAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEg Y29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKPiA+PiArICogIGFsb25nIHdp dGggR1JVQi4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KPiA+ PiArICovCj4gPj4gKwo+ID4+ICsjaW5jbHVkZSA8Y29uZmlnLmg+Cj4gPj4gKyNpbmNsdWRlIDxn cnViL3N5bWJvbC5oPgo+ID4+ICsKPiA+PiArCS5maWxlCSJzdGFydHVwX3B2aC5TIgo+ID4+ICsJ LnRleHQKPiA+PiArCj4gPj4gKy8qIFNhdmVkIHBvaW50ZXIgdG8gc3RhcnQgaW5mbyBzdHJ1Y3R1 cmUuICovCj4gPj4gKwkuZ2xvYmwJcHZoX3N0YXJ0X2luZm8KPiA+PiArcHZoX3N0YXJ0X2luZm86 Cj4gPj4gKwkubG9uZwkwCj4gPj4gZGlmZiAtLWdpdCBhL2dydWItY29yZS9rZXJuL3hlbi9pbml0 LmMgYi9ncnViLWNvcmUva2Vybi94ZW4vaW5pdC5jCj4gPj4gaW5kZXggMTAwMDdiNDExLi43ODJj YTcyOTUgMTAwNjQ0Cj4gPj4gLS0tIGEvZ3J1Yi1jb3JlL2tlcm4veGVuL2luaXQuYwo+ID4+ICsr KyBiL2dydWItY29yZS9rZXJuL3hlbi9pbml0LmMKPiA+PiBAQCAtNDUsNiArNDUsOCBAQCBncnVi X3hlbl9wdHIybWZuICh2b2lkICpwdHIpCj4gPj4gICAgZ3J1Yl94ZW5fbWZuX3QgKm1mbl9saXN0 ID0KPiA+PiAgICAgIChncnViX3hlbl9tZm5fdCAqKSBncnViX3hlbl9zdGFydF9wYWdlX2FkZHIt Pm1mbl9saXN0Owo+ID4+ICAgIHJldHVybiBtZm5fbGlzdFsoZ3J1Yl9hZGRyX3QpIHB0ciA+PiBH UlVCX1hFTl9MT0dfUEFHRV9TSVpFXTsKPiA+PiArI2Vsc2UKPiA+PiArICByZXR1cm4gKGdydWJf YWRkcl90KSBwdHIgPj4gR1JVQl9YRU5fTE9HX1BBR0VfU0laRTsKPiA+Cj4gPiBJdCBzZWVtcyB0 byBtZSB0aGF0IHRoaXMgY2hhbmdlIGRvZXMgbm90IGJlbG9uZyB0byB0aGlzIHBhdGNoLgo+Cj4g SG1tLCBpbiB3aGljaCBwYXRjaCB3b3VsZCB5b3UgcHV0IGl0PwoKU2VwYXJhdGUgb25lPyBPciBh dCBsZWFzdCBzYXkgc29tZXRoaW5nIGluIHRoZSBjb21taXQgbWVzc2FnZS4KT3RoZXJ3aXNlIGl0 IGlzIG1pc2xlYWRpbmcuIEhtbW0uLi4gQnV0IHByb2JhYmx5IEkgcHJlZmVyIHRoZSBmb3JtZXIu Li4KCj4gSSB3YW50ZWQgdG8gaGF2ZSBhbGwgbW9kaWZpY2F0aW9ucyB0byBjdXJyZW50IGdydWIt Y29yZSBjb2RlIGluIHBsYWNlCj4gYWZ0ZXIgdGhpcyBwYXRjaC4gVGhpcyBpbmNsdWRlcyBhbGwg bmVlZGVkICNpZmRlZnMuCj4KPiA+Cj4gPj4gICNlbmRpZgo+ID4+ICB9Cj4gPj4KPiA+PiBAQCAt NTYyLDYgKzU2NCwxMCBAQCBncnViX21hY2hpbmVfaW5pdCAodm9pZCkKPiA+PiAgCQkJICAgKyBH UlVCX0tFUk5FTF9NQUNISU5FX01PRF9HQVAsCj4gPj4gIAkJCSAgIEdSVUJfS0VSTkVMX01BQ0hJ TkVfTU9EX0FMSUdOKTsKPiA+Pgo+ID4+ICsjaWZkZWYgR1JVQl9NQUNISU5FX1hFTl9QVkgKPiA+ PiArICBncnViX3hlbl9zZXR1cF9wdmggKCk7Cj4gPj4gKyNlbmRpZgo+ID4+ICsKPiA+PiAgICBn cnViX3hlbl9zZXR1cF9nbnR0YWIgKCk7Cj4gPj4KPiA+PiAgI2lmZGVmIEdSVUJfTUFDSElORV9Y RU4KPiA+PiBkaWZmIC0tZ2l0IGEvZ3J1Yi1jb3JlL2xvYWRlci9pMzg2L2xpbnV4LmMgYi9ncnVi LWNvcmUvbG9hZGVyL2kzODYvbGludXguYwo+ID4+IGluZGV4IDUxOTIwODk2ZS4uZjk2MzA5NDc2 IDEwMDY0NAo+ID4+IC0tLSBhL2dydWItY29yZS9sb2FkZXIvaTM4Ni9saW51eC5jCj4gPj4gKysr IGIvZ3J1Yi1jb3JlL2xvYWRlci9pMzg2L2xpbnV4LmMKPiA+PiBAQCAtMzUsNiArMzUsNyBAQAo+ ID4+ICAjaW5jbHVkZSA8Z3J1Yi9pMThuLmg+Cj4gPj4gICNpbmNsdWRlIDxncnViL2xpYi9jbWRs aW5lLmg+Cj4gPj4gICNpbmNsdWRlIDxncnViL2xpbnV4Lmg+Cj4gPj4gKyNpbmNsdWRlIDxncnVi L21hY2hpbmUva2VybmVsLmg+Cj4gPgo+ID4gUGxlYXNlIHNheSBpbiB0aGUgY29tbWl0IG1lc3Nh Z2Ugd2h5IHlvdSBpbmNsdWRlIGdydWIvbWFjaGluZS9rZXJuZWwuaCBoZXJlLgo+Cj4gT2theS4K Pgo+ID4KPiA+PiAgR1JVQl9NT0RfTElDRU5TRSAoIkdQTHYzKyIpOwo+ID4+Cj4gPj4gZGlmZiAt LWdpdCBhL2luY2x1ZGUvZ3J1Yi9pMzg2L3hlbl9wdmgva2VybmVsLmggYi9pbmNsdWRlL2dydWIv aTM4Ni94ZW5fcHZoL2tlcm5lbC5oCj4gPj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiA+PiBpbmRl eCAwMDAwMDAwMDAuLjJiN2I4YTEyOQo+ID4+IC0tLSAvZGV2L251bGwKPiA+PiArKysgYi9pbmNs dWRlL2dydWIvaTM4Ni94ZW5fcHZoL2tlcm5lbC5oCj4gPj4gQEAgLTAsMCArMSwzMCBAQAo+ID4+ ICsvKgo+ID4+ICsgKiAgR1JVQiAgLS0gIEdSYW5kIFVuaWZpZWQgQm9vdGxvYWRlcgo+ID4+ICsg KiAgQ29weXJpZ2h0IChDKSAyMDE4ICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KPiA+ PiArICoKPiA+PiArICogIEdSVUIgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1 dGUgaXQgYW5kL29yIG1vZGlmeQo+ID4+ICsgKiAgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKPiA+PiArICogIHRoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2Us IG9yCj4gPj4gKyAqICAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgo+ID4+ICsg Kgo+ID4+ICsgKiAgR1JVQiBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg YmUgdXNlZnVsLAo+ID4+ICsgKiAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2 ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKPiA+PiArICogIE1FUkNIQU5UQUJJTElUWSBvciBG SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKPiA+PiArICogIEdOVSBH ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCj4gPj4gKyAqCj4gPj4gKyAq ICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJs aWMgTGljZW5zZQo+ID4+ICsgKiAgYWxvbmcgd2l0aCBHUlVCLiAgSWYgbm90LCBzZWUgPGh0dHA6 Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+Lgo+ID4+ICsgKi8KPiA+PiArCj4gPj4gKyNpZm5kZWYg R1JVQl9LRVJORUxfTUFDSElORV9IRUFERVIKPiA+PiArI2RlZmluZSBHUlVCX0tFUk5FTF9NQUNI SU5FX0hFQURFUgkxCj4gPj4gKwo+ID4+ICsjaWZuZGVmIEFTTV9GSUxFCj4gPj4gKwo+ID4+ICsj ZGVmaW5lIEdSVUJfS0VSTkVMX1VTRV9SU0RQX0FERFIJMQo+ID4+ICsKPiA+PiArZXh0ZXJuIGdy dWJfdWludDY0X3QgRVhQT1JUX1ZBUihncnViX3JzZHBfYWRkcik7Cj4gPj4gKwo+ID4+ICsjZW5k aWYgLyogISBBU01fRklMRSAqLwo+ID4+ICsKPiA+PiArI2VuZGlmIC8qIEdSVUJfS0VSTkVMX01B Q0hJTkVfSEVBREVSICovCj4gPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZ3J1Yi94ZW4uaCBiL2lu Y2x1ZGUvZ3J1Yi94ZW4uaAo+ID4+IGluZGV4IGMzMWNjMTBjNy4uNGNiMmM4ZjQzIDEwMDY0NAo+ ID4+IC0tLSBhL2luY2x1ZGUvZ3J1Yi94ZW4uaAo+ID4+ICsrKyBiL2luY2x1ZGUvZ3J1Yi94ZW4u aAo+ID4+IEBAIC00Myw2ICs0Myw3IEBAIHR5cGVkZWYgZ3J1Yl91aW50NjRfdCB1aW50NjRfdDsK PiA+Pgo+ID4+ICAjaW5jbHVkZSA8eGVuL3NjaGVkLmg+Cj4gPj4gICNpbmNsdWRlIDx4ZW4vZ3Jh bnRfdGFibGUuaD4KPiA+PiArI2luY2x1ZGUgPHhlbi9odm0vc3RhcnRfaW5mby5oPgo+ID4KPiA+ IEhtbW0uLi4gV2h5Pwo+Cj4gVGhpcyBoZWFkZXIgY29udGFpbnMgYWxsICNpbmNsdWRlcyBvZiB4 ZW4gaW50ZXJmYWNlIGhlYWRlcnMuCj4KPiBJIGNhbiBvbWl0IHRoaXMgb25lIGFuZCBhZGQgaXQg dG8gdGhlIHNvdXJjZSBmaWxlcyB3aGVyZSBpdCBpcyBuZWVkZWQKPiBpZiB5b3UgbGlrZSB0aGF0 IGJldHRlci4KClllcywgcGxlYXNlLgoKRGFuaWVsCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBs aXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4v bGlzdGluZm8veGVuLWRldmVs