From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: [PATCH v2 3/5] xen/livepatch/ARM32: Don't load and crash on livepatches loaded with wrong alignment. Date: Mon, 11 Sep 2017 20:22:13 -0400 Message-ID: <20170912002212.GB30969@localhost.localdomain> References: <20170726194756.20265-1-konrad@kernel.org> <20170726194756.20265-4-konrad@kernel.org> <597F36D60200007800103088@prv-mh.provo.novell.com> <20170731160437.GK9952@char.us.oracle.com> <59819945020000780010323D@prv-mh.provo.novell.com> <20170907173644.GA7717@localhost.localdomain> <59B27F3F0200007800178AC9@prv-mh.provo.novell.com> <20170909120529.GA19614@localhost.localdomain> <59B66CFB0200007800179708@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1drYy3-00086h-2h for xen-devel@lists.xenproject.org; Tue, 12 Sep 2017 00:22:19 +0000 Received: by mail-qk0-f172.google.com with SMTP id b82so22106967qkc.4 for ; Mon, 11 Sep 2017 17:22:17 -0700 (PDT) Content-Disposition: inline In-Reply-To: <59B66CFB0200007800179708@prv-mh.provo.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Jan Beulich Cc: andrew.cooper3@citrix.com, julien.grall@arm.com, sstabellini@kernel.org, xen-devel@lists.xenproject.org List-Id: xen-devel@lists.xenproject.org T24gTW9uLCBTZXAgMTEsIDIwMTcgYXQgMDM6MDE6MTVBTSAtMDYwMCwgSmFuIEJldWxpY2ggd3Jv dGU6Cj4gPj4+IE9uIDA5LjA5LjE3IGF0IDE0OjA1LCA8a29ucmFkQGtlcm5lbC5vcmc+IHdyb3Rl Ogo+ID4gT24gRnJpLCBTZXAgMDgsIDIwMTcgYXQgMDM6MzA6MDdBTSAtMDYwMCwgSmFuIEJldWxp Y2ggd3JvdGU6Cj4gPj4gPj4+IE9uIDA3LjA5LjE3IGF0IDE5OjM2LCA8a29ucmFkQGtlcm5lbC5v cmc+IHdyb3RlOgo+ID4+ID4gT24gV2VkLCBBdWcgMDIsIDIwMTcgYXQgMDM6MjA6MDVBTSAtMDYw MCwgSmFuIEJldWxpY2ggd3JvdGU6Cj4gPj4gPj4gPj4+IEtvbnJhZCBSemVzenV0ZWsgV2lsayA8 a29ucmFkLndpbGtAb3JhY2xlLmNvbT4gMDcvMzEvMTcgNjowNCBQTSA+Pj4KPiA+PiA+PiA+T24g TW9uLCBKdWwgMzEsIDIwMTcgYXQgMDc6NTU6MzRBTSAtMDYwMCwgSmFuIEJldWxpY2ggd3JvdGU6 Cj4gPj4gPj4gPj4gPj4+IEtvbnJhZCBSemVzenV0ZWsgV2lsayA8a29ucmFkQGtlcm5lbC5vcmc+ IDA3LzI2LzE3IDk6NTAgUE0gPj4+Cj4gPj4gPj4gPj4gPi0tLSBhL2RvY3MvbWlzYy9saXZlcGF0 Y2gubWFya2Rvd24KPiA+PiA+PiA+PiA+KysrIGIvZG9jcy9taXNjL2xpdmVwYXRjaC5tYXJrZG93 bgo+ID4+ID4+ID4+ID5AQCAtMjc5LDYgKzI3OSwxMCBAQCBJdCBtYXkgYWxzbyBoYXZlIHNvbWUg YXJjaGl0ZWN0dXJlLXNwZWNpZmljIHNlY3Rpb25zLiAKPiA+PiA+IEZvciBleGFtcGxlOgo+ID4+ ID4+ID4+ID4qIEV4Y2VwdGlvbiB0YWJsZXMuCj4gPj4gPj4gPj4gPiogUmVsb2NhdGlvbnMgZm9y IGVhY2ggb2YgdGhlc2Ugc2VjdGlvbnMuCj4gPj4gPj4gPj4gID4KPiA+PiA+PiA+PiA+K05vdGUg dGhhdCBvbiBBUk0gMzIgdGhlIHNlY3Rpb25zIFNIT1VMRCBiZSBmb3VyIGJ5dGUgYWxpZ25lZC4g T3RoZXJ3aXNlCj4gPj4gPj4gPj4gPit3ZSByaXNrIGhpdHRpbmcgRGF0YSBBYm9ydCBleGNlcHRp b24gYXMgdW4tYWxpZ25lZCBtYW5pcHVsYXRpb24gb2YgZGF0YSBpcwo+ID4+ID4+ID4+ID4rcHJv aGliaXRlZCBvbiBBUk0gMzIuCj4gPj4gPj4gPj4gCj4gPj4gPj4gPj4gVGhpcyAoYW5kIGhlbmNl IHRoZSByZXN0IG9mIHRoZSBwYXRjaCkgaXMgbm90IGluIGxpbmUgd2l0aCB0aGUgb3V0Y29tZSBv ZiAKPiA+PiA+IHRoZQo+ID4+ID4+ID4+IGVhcmxpZXIgZGlzY3Vzc2lvbiB3ZSBoYWQuIE5vdGhp bmcgaXMgd3Jvbmcgd2l0aCBhIHNlY3Rpb24gaGF2aW5nIHNtYWxsZXIKPiA+PiA+PiA+PiBhbGln bm1lbnQsIGFzIGxvbmcgYXMgdGhlcmUgYXJlIG5vIDMyLWJpdCAob3Igd2lkZXIsIGJ1dCBJIGRv bid0IHRoaW5rIAo+ID4gdGhlcmUKPiA+PiA+PiA+PiBhcmUgYW55IHN1Y2gpIHJlbG9jYXRpb25z IGFnYWluc3Qgc3VjaCBhIHNlY3Rpb24uIEFuZCBldmVuIGlmIHRoZXJlIHdlcmUsIAo+ID4gSQo+ ID4+ID4+ID4+IHRoaW5rIGl0IHNob3VsZCByYXRoZXIgYmUgdGhlIGNvZGUgZG9pbmcgdGhlIHJl bG9jYXRpb25zIG5lZWRpbmcgdG8gY29wZSwgCj4gPj4gPiBhcwo+ID4+ID4+ID4+IEkgZG9uJ3Qg dGhpbmsgdGhlIEFSTSBFTEYgQUJJIGltcG9zZXMgYW55IHN1Y2ggcmVzdHJpY3Rpb24uCj4gPj4g Pj4gPgo+ID4+ID4+ID5UaGUgaWRlYSBiZWhpbmQgdGhpcyBwYXRjaCBpcyB0byBnaXZlIGFkdmFu Y2Ugd2FybmluZ3MuIEFraW4gdG8gd2hhdAo+ID4+ID4+ID4yZmYyMjk2NDNiNzM5ZTJmZDBjZDA1 MzZlZTlmY2E1MDZjZmE5MmY4Cj4gPj4gPj4gPiJ4ZW4vbGl2ZXBhdGNoOiBEb24ndCBjcmFzaCBv biBlbmNvdW50ZXJpbmcgU1ROX1VOREVGIHJlbG9jYXRpb25zIiBkaWQuCj4gPj4gPj4gPgo+ID4+ ID4+ID5UaGUgb3RoZXIgcGF0Y2hlcyBpbiB0aGlzIHNlcmllcyBmaXggdGhlIGFsaWdubWVudCBp c3N1ZXMuCj4gPj4gPj4gPgo+ID4+ID4+ID5UaGUgQVJNIEVMRiBBQkkgCj4gPj4gPiAKPiA+ICho dHRwOi8vaW5mb2NlbnRlci5hcm0uY29tL2hlbHAvdG9waWMvY29tLmFybS5kb2MuaWhpMDA0NGYv SUhJMDA0NEZfYWFlbGYucGRmIAo+ID4gCj4gPj4gPiApCj4gPj4gPj4gPgo+ID4+ID4+ID5zYXlz Ogo+ID4+ID4+ID4KPiA+PiA+PiA+NC4zLjUgU2VjdGlvbiBBbGlnbm1lbnQKPiA+PiA+PiA+VGhl cmUgaXMgbm8gbWluaW11bSBhbGlnbm1lbnQgcmVxdWlyZWQgZm9yIGEgc2VjdGlvbi4gSG93ZXZl ciwgc2VjdGlvbnMgCj4gPj4gPiBjb250YWluaW5nIHRodW1iIGNvZGUgbXVzdCBiZSBhdCBsZWFz dAo+ID4+ID4+ID4xNi1iaXQgYWxpZ25lZCBhbmQgc2VjdGlvbnMgY29udGFpbmluZyBBUk0gY29k ZSBtdXN0IGJlIGF0IGxlYXN0IDMyLWJpdCAKPiA+PiA+IGFsaWduZWQuCj4gPj4gPj4gPlBsYXRm b3JtIHN0YW5kYXJkcyBtYXkgc2V0IGEgbGltaXQgb24gdGhlIG1heGltdW0gYWxpZ25tZW50IHRo YXQgdGhleSBjYW4gCj4gPj4gPiBndWFyYW50ZWUgKG5vcm1hbGx5IHRoZSBwYWdlIHNpemUpLgo+ ID4+ID4+IAo+ID4+ID4+IE5vdGUgdGhlICJ0aHVtYiBjb2RlIiBhbmQgIkFSTSBjb2RlIiBpbiBo ZXJlIC0gaWlyYyB5b3UncmUgY2hlY2tpbmcgX2FsbF8KPiA+PiA+PiBzZWN0aW9ucywgbm90IGp1 c3Qgb25lcyBjb250YWluaW5nIGNvZGUuCj4gPj4gPiAKPiA+PiA+IEkgY2FuIGZpeCB0aGUgY29k ZSB0byBvbmx5IGRvIHRoZSBjaGVjayBmb3IgJ1gnIG9uZXM6Cj4gPj4gPiAKPiA+PiA+ICAgWyAy XSAudGV4dCAgICAgICAgICAgICBQUk9HQklUUyAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAgIDAw MDAwMDcwCj4gPj4gPiAgICAgICAgMDAwMDAwMDAwMDAwMDBjYSAgMDAwMDAwMDAwMDAwMDAwMCAg QVggICAgICAgMCAgICAgMCAgICAgMTYKPiA+PiA+ICAgWyA0XSAuYWx0aW5zdHJfcmVwbGFjZSBQ Uk9HQklUUyAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAgIDAwMDAwMTNjCj4gPj4gPiAgICAgICAg MDAwMDAwMDAwMDAwMDAwYiAgMDAwMDAwMDAwMDAwMDAwMCAgQVggICAgICAgMCAgICAgMCAgICAg NAo+ID4+ID4gICBbIDVdIC5maXh1cCAgICAgICAgICAgIFBST0dCSVRTICAgICAgICAgMDAwMDAw MDAwMDAwMDAwMCAgMDAwMDAxNDcKPiA+PiA+ICAgICAgICAwMDAwMDAwMDAwMDAwMDBkICAwMDAw MDAwMDAwMDAwMDAwICBBWCAgICAgICAwICAgICAwICAgICAxCj4gPj4gPiAKPiA+PiA+IAo+ID4+ ID4gQW5kIGFsc28gaGF2ZSB0aGUgY2hlY2sgaW4gdGhlIHJlbG9jYXRpb24gLSB3aGljaCByaWdo dCBub3cgYXJlCj4gPj4gPiAzMi1iaXQ6IFJfQVJNX0FCUzMyLCBSX0FSTV9SRUwzMiwgUl9BUk1f TU9WV19BQlNfTkMsIFJfQVJNX01PVlRfQUJTLAo+ID4+ID4gUl9BUk1fQ0FMTCwgUl9BUk1fSlVN UDI0IHNvIHdpbGwgbGVhdmUgdGhlIGNvZGUgYXMgaW4KPiA+PiA+IGFyY2hfbGl2ZXBhdGNoX3Bl cmZvcm0uCj4gPj4gCj4gPj4gUmVsb2NhdGlvbnMgYXBwbGljYWJsZSB0byBjb2RlIG9ubHkgX21h eV8gYmUgYWNjZXB0YWJsZSB0byBoYXZlCj4gPj4gc3VjaCBhbiBhbGlnbm1lbnQgY2hlY2sgKGJ1 dCBJIGNvdWxkIHNlZSBjYXNlcyB3aGVyZSBldmVuIHRoYXQKPiA+PiBtaWdodCBiZSB0b28gYWdn cmVzc2l2ZSksIGJ1dCBhZmFpayBSX0FSTV9BQlMzMiBpc24ndCBhIGNvZGUKPiA+PiBvbmx5IG9u ZSAob3V0IG9mIHRoZSBzZXQgbGlzdGVkIGFib3ZlKSwgc28gSSBkb3VidCB0aGlzIHNob3VsZCBo YXZlCj4gPj4gYW4gYWxpZ25tZW50IGNoZWNrLgo+ID4+IAo+ID4+ID4gQnV0IG5laXRoZXIgb25l IG9mIHRob3NlIGlzIGdvaW5nIHRvIGhlbHAgaW4gY2F0Y2hpbmcgbGl2ZXBhdGNoZXMKPiA+PiA+ IHRoYXQgaGF2ZSB0aGUgd3JvbmcgYWxpZ25tZW50IHdpdGhvdXQgcmVsb2NhdGlvbnMgYW5kIG5v dCBleGVjdXRhYmxlLgo+ID4+ID4gRm9yIGV4YW1wbGUgLmxpdmVwYXRjaC5kZXBlbmRzCj4gPj4g Cj4gPj4gV2hhdCBkb2VzICJ3cm9uZyBhbGlnbm1lbnQiIG1lYW4gd2hlbiB0aGVyZSdzIG5vIGNv ZGUgaW52b2x2ZWQ/Cj4gPiAKPiA+IEFueXRoaW5nIHdoaWNoIHdlIHRyeSB0byBhY2Nlc3MgYXMg YSBzdHJ1Y3R1cmUsIG9yIHVuc2lnbmVkIGludCwKPiA+IHRoYXQgaXMgbm90IGFsaWduZWQgdG8g Zm91ciBieXRlcy4KPiA+IAo+ID4gRm9yIGV4YW1wbGUgYWNjZXNzaW5nIC5saXZlcGF0Y2guZGVw ZW5kcyBmcm9tIG1lbW9yeSBhbmQgYmxvd2luZwo+ID4gdXAgKGh5cGVydmlzb3IgY3Jhc2hlcykg Yi9jIGl0IGRvZXMgbm90IHN0YXJ0IGF0IGFuIGZvdXIgYnl0ZSBhbGlnbmVkCj4gPiBsb2NhdGlv bi4KPiAKPiBIbW0sIGFzIGxvbmcgYXMgdGhlIHJlbG9jYXRpb24gaXNuJ3QgcmVxdWlyZWQgdG8g YmUgYWdhaW5zdCBhbGlnbmVkCj4gZmllbGRzIG9ubHkgKG1hbmRhdGVkIGJ5IHRoZSBwcm9jZXNz b3IgQUJJKSBJIHRoaW5rIHRoZSBjb2RlIGRvaW5nCj4gdGhlIHJlbG9jYXRpb25zIHdvdWxkIGlu c3RlYWQgbmVlZCB0byBzcGxpdCB0aGUgYWNjZXNzLCByYXRoZXIgdGhhbgo+IGNhbGxpbmcgdGhl IHNlY3Rpb24gbWlzYWxpZ25lZCBvciBpbmNyZWFzaW5nIGFsaWdubWVudCBiZXlvbmQgd2hhdAo+ IHRoZSBFTEYgc2VjdGlvbiBoZWFkZXJzIHNheS4KCk1heWJlIHRoZSBzZXJpYWwgbG9nIHdvdWxk IGV4cGxhaW4gdGhpcyBiZXR0ZXI6Cgp4ZW5kX2NvbmZpZ19mb3JtYXQgICAgIDogNApFeGVjdXRp bmc6ICcoc2V0IC1lO2NkIC9yb290L3Rlc3QvbGl2ZXBhdGNoO3hlbi1saXZlcGF0Y2ggbG9hZCB4 ZW5fYnllX3dvcmxkLmxpdmVwYXRjaCknIC4uKFhFTikgbGl2ZXBhdGNoLmM6NDEzOiBsaXZlcGF0 Y2g6IHhlbl9ieWVfd29ybGQ6IExvYWRlZCAubm90ZS5nbnUuYnVpbGQtaWQgYXQgMDBhMDgwMDAK KFhFTikgbGl2ZXBhdGNoLmM6NDEzOiBsaXZlcGF0Y2g6IHhlbl9ieWVfd29ybGQ6IExvYWRlZCAu dGV4dCBhdCAwMGEwNjAwMAooWEVOKSBsaXZlcGF0Y2guYzo0MTM6IGxpdmVwYXRjaDogeGVuX2J5 ZV93b3JsZDogTG9hZGVkIC5yb2RhdGEgYXQgMDBhMDgwMjQKKFhFTikgbGl2ZXBhdGNoLmM6NDEz OiBsaXZlcGF0Y2g6IHhlbl9ieWVfd29ybGQ6IExvYWRlZCAucm9kYXRhLnN0cjEuNCBhdCAwMGEw ODAzOAooWEVOKSBsaXZlcGF0Y2guYzo0MTM6IGxpdmVwYXRjaDogeGVuX2J5ZV93b3JsZDogTG9h ZGVkIC5saXZlcGF0Y2guZGVwZW5kcyBhdCAwMGEwODA0MwooWEVOKSBsaXZlcGF0Y2guYzo0MTM6 IGxpdmVwYXRjaDogeGVuX2J5ZV93b3JsZDogTG9hZGVkIC5saXZlcGF0Y2guZnVuY3MgYXQgMDBh MDcwMDAKKFhFTikgbGl2ZXBhdGNoX2VsZi5jOjM0MzogbGl2ZXBhdGNoOiB4ZW5fYnllX3dvcmxk OiBTeW1ib2wgcmVzb2x2ZWQ6ICA9PiAweGEwODAwMCAoLm5vdGUuZ251LmJ1aWxkLWlkKQooWEVO KSBsaXZlcGF0Y2hfZWxmLmM6MzQzOiBsaXZlcGF0Y2g6IHhlbl9ieWVfd29ybGQ6IFN5bWJvbCBy ZXNvbHZlZDogID0+IDB4YTA2MDAwICgudGV4dCkKKFhFTikgbGl2ZXBhdGNoX2VsZi5jOjM0Mzog bGl2ZXBhdGNoOiB4ZW5fYnllX3dvcmxkOiBTeW1ib2wgcmVzb2x2ZWQ6ICA9PiAweGEwODAyNCAo LnJvZGF0YSkKKFhFTikgbGl2ZXBhdGNoX2VsZi5jOjM0MzogbGl2ZXBhdGNoOiB4ZW5fYnllX3dv cmxkOiBTeW1ib2wgcmVzb2x2ZWQ6ICA9PiAweGEwODAzOCAoLnJvZGF0YS5zdHIxLjQpCihYRU4p IGxpdmVwYXRjaF9lbGYuYzozNDM6IGxpdmVwYXRjaDogeGVuX2J5ZV93b3JsZDogU3ltYm9sIHJl c29sdmVkOiAgPT4gMHhhMDgwNDMgKC5saXZlcGF0Y2guZGVwZW5kcykKKFhFTikgbGl2ZXBhdGNo X2VsZi5jOjM0MzogbGl2ZXBhdGNoOiB4ZW5fYnllX3dvcmxkOiBTeW1ib2wgcmVzb2x2ZWQ6ICA9 PiAweGEwNzAwMCAoLmxpdmVwYXRjaC5mdW5jcykKKFhFTikgbGl2ZXBhdGNoX2VsZi5jOjMxOTog bGl2ZXBhdGNoOiB4ZW5fYnllX3dvcmxkOiBBYnNvbHV0ZSBzeW1ib2w6IHhlbl9ieWVfd29ybGRf ZnVuYy5jID0+IDAwMDAwMDAwCihYRU4pIGxpdmVwYXRjaF9lbGYuYzozNDM6IGxpdmVwYXRjaDog eGVuX2J5ZV93b3JsZDogU3ltYm9sIHJlc29sdmVkOiAkYSA9PiAweGEwNjAwMCAoLnRleHQpCihY RU4pIGxpdmVwYXRjaF9lbGYuYzozNDM6IGxpdmVwYXRjaDogeGVuX2J5ZV93b3JsZDogU3ltYm9s IHJlc29sdmVkOiAuTEMwID0+IDB4YTA4MDM4ICgucm9kYXRhLnN0cjEuNCkKKFhFTikgbGl2ZXBh dGNoX2VsZi5jOjM0MzogbGl2ZXBhdGNoOiB4ZW5fYnllX3dvcmxkOiBTeW1ib2wgcmVzb2x2ZWQ6 ICRkID0+IDB4YTA4MDM4ICgucm9kYXRhLnN0cjEuNCkKKFhFTikgbGl2ZXBhdGNoX2VsZi5jOjMx OTogbGl2ZXBhdGNoOiB4ZW5fYnllX3dvcmxkOiBBYnNvbHV0ZSBzeW1ib2w6IHhlbl9ieWVfd29y bGQuYyA9PiAwMDAwMDAwMAooWEVOKSBsaXZlcGF0Y2hfZWxmLmM6MzQzOiBsaXZlcGF0Y2g6IHhl bl9ieWVfd29ybGQ6IFN5bWJvbCByZXNvbHZlZDogJGQgPT4gMHhhMDgwMjQgKC5yb2RhdGEpCihY RU4pIGxpdmVwYXRjaF9lbGYuYzozNDM6IGxpdmVwYXRjaDogeGVuX2J5ZV93b3JsZDogU3ltYm9s IHJlc29sdmVkOiBieWVfd29ybGRfcGF0Y2hfdGhpc19mbmMgPT4gMHhhMDgwMjQgKC5yb2RhdGEp CihYRU4pIGxpdmVwYXRjaF9lbGYuYzozNDM6IGxpdmVwYXRjaDogeGVuX2J5ZV93b3JsZDogU3lt Ym9sIHJlc29sdmVkOiAkZCA9PiAweGEwNzAwMCAoLmxpdmVwYXRjaC5mdW5jcykKKFhFTikgbGl2 ZXBhdGNoX2VsZi5jOjM0MzogbGl2ZXBhdGNoOiB4ZW5fYnllX3dvcmxkOiBTeW1ib2wgcmVzb2x2 ZWQ6IGxpdmVwYXRjaF94ZW5fYnllX3dvcmxkID0+IDB4YTA3MDAwICgubGl2ZXBhdGNoLmZ1bmNz KQooWEVOKSBsaXZlcGF0Y2hfZWxmLmM6MzE0OiBsaXZlcGF0Y2g6IHhlbl9ieWVfd29ybGQ6IFVu ZGVmaW5lZCBzeW1ib2wgcmVzb2x2ZWQ6IHhlbl9leHRyYV92ZXJzaW9uID0+IDB4MjNmZmUwCihY RU4pIGxpdmVwYXRjaF9lbGYuYzozNDM6IGxpdmVwYXRjaDogeGVuX2J5ZV93b3JsZDogU3ltYm9s IHJlc29sdmVkOiB4ZW5fYnllX3dvcmxkID0+IDB4YTA2MDAwICgudGV4dCkKKFhFTikgQ1BVMDog VW5leHBlY3RlZCBUcmFwOiBEYXRhIEFib3J0CihYRU4pIC0tLS1bIFhlbi00LjlIZWxsbyBXb3Js ZCAgYXJtMzIgIGRlYnVnPXkgICBOb3QgdGFpbnRlZCBdLS0tLQooWEVOKSBDUFU6ICAgIDAKKFhF TikgUEM6ICAgICAwMDI0MDBhMCB4ZW5fYnVpbGRfaWRfY2hlY2srMHg4LzB4ZTgKKFhFTikgQ1BT UjogICAyMDA3MDAxYSBNT0RFOkh5cGVydmlzb3IKKFhFTikgICAgICBSMDogMDBhMDgwNDMgUjE6 IDAwMDAwMDI0IFIyOiA0M2ZkZTk0MCBSMzogNDNmZGU5NDQKKFhFTikgICAgICBSNDogMDAyOTYw YjAgUjU6IDAwMDAwMDAwIFI2OiAwMDAwMDAwMCBSNzogNDNmZGU4YjgKKFhFTikgICAgICBSODog MDAyOTYwYmMgUjk6IDAwMDAwMDAwIFIxMDoxMDAxYzAwMCBSMTE6NDNmZDdkZDQgUjEyOjAwMDAw MDAwCihYRU4pIEhZUDogU1A6IDQzZmQ3Y2Q0IExSOiAwMDIxYTljMAooWEVOKSAKKFhFTikgICBW VENSX0VMMjogODAwMDM1NTgKKFhFTikgIFZUVEJSX0VMMjogMDAwMTAwMDBiZjljZTAwMAooWEVO KSAKKFhFTikgIFNDVExSX0VMMjogMzBjZDE4N2YKKFhFTikgICAgSENSX0VMMjogMDAwMDAwMDAw MDM4NjYzZgooWEVOKSAgVFRCUjBfRUwyOiAwMDAwMDAwMGJmYjEyMDAwCihYRU4pIAooWEVOKSAg ICBFU1JfRUwyOiA5NDAwMDAyMQooWEVOKSAgSFBGQVJfRUwyOiAwMDAwMDAwMDAwMDFjODEwCihY RU4pICAgICAgSERGQVI6IDAwYTA4MDRiCihYRU4pICAgICAgSElGQVI6IDMxZGM4YzE4CihYRU4p IAooWEVOKSBYZW4gc3RhY2sgdHJhY2UgZnJvbSBzcD00M2ZkN2NkNDoKKFhFTikgICAgOTQwMDAw MjEgMTAwMWQ4OTAgMDBhMDcwMDAgMDAyOGI3ZjAgMDAyOGI0MTAgMDAwMDAwMDggMDAyOGI5NzQg MDAyOGI0MTAKKFhFTikgICAgMDAwMDAwMDEgMDAwMDAwMDIgMDAwMDAwMDcgNDNmZDdkMGMgMDAy NjNiZDQgNDNmZDdkNDQgNDNmZGU5NTggMDAwMDFkNjQKKFhFTikgICAgMTAwMWMwMDAgNDNmZGU5 ZTAgNDNmZGViOTggMDAwMDAwMWUgNDNmZGViNjAgNDNmZGViNzAgMDAwMDAwMTggNWY2ZTY1NzgK KFhFTikgICAgNWY2NTc5NjIgNmM3MjZmNzcgMDAwMDAwNjQgMDAwMDAwOTggMDAwMDk2ODAgMDAy OGMyOTMgNDAwMjY1ZTAgMDAwMDAwMDAKKFhFTikgICAgMDA5ODk2ODAgMDAwMDAwMDAgMDA5ODk2 ODAgMDAwMDAwMDAgNDNmZDdkYzAgNDNmZDdkN2MgMDAyNWZmYjAgMDI3ODY4MDAKKFhFTikgICAg MDAwN2MzNDAgMDAwN2MyMDAgMDAyNjJmOTQgN2MzNDBiODAgMDAwMDAwODggMDAwMDAwODggMDAw MDAwODggZmMzNDAwMDQKKFhFTikgICAgYjZmYTcwMDQgMDI3ODY4MDAgNDNmZDdlNDAgNDNmZDdk ZDQgMDAyNWJhZmMgMDAzMTg1ODAgNDNmZDdlYzggNDNmZDdlM2MKKFhFTikgICAgMDAzMTk2MTQg NDNmZDdmNTggMDAyOTYyNGMgMDAzMTg1ODAgMDAyZTFmODAgMDAzMTg1ODAgMDAwMDAwMDAgNDNm ZDdlZWMKKFhFTikgICAgMDAyM2JiZTQgMWNhM2ZjZjggYjZmYTcwMDQgMDAwMDAwMDAgMDAwMDAw MDAgMDAwMDFjYjUgMDAwMDhjNDAgNDNmZDdlYWMKKFhFTikgICAgMDAwMDAwMDAgNDNmZDdlMGMg MDAyNWZmYjAgMDI1ZWY5MjAgMDAwNmY3YzkgMDAwNmY2MDAgMDAyNjJmOTQgNmY3YzliODAKKFhF TikgICAgMDAwMDAwMTcgMDAwMDAwMDEgMDAwMDAwMDEgMDI1ZWY5MjAgZWY3YzkwMTcgMDAyOTcw OWMgZWY3YzkwMTcgNDNmZDdlNmMKKFhFTikgICAgMDAyNWI3YjQgMDAwMDAwMDAgMDAzMTg1ODAg MDAwMDAwMWIgMDAwMDAwMGYgMDAwMDAwMDAgMDAwMDAwMDAgYjZmYWEwMDQKKFhFTikgICAgMDAw MDAwMDAgMDAwMDAwMGUgMDAwMDAwMDAgMDAwMDFkNjQgMDAwMDAwMDAgYjZmYTgwMDQgMDAwMDAw MDAgYjZlNmI5Y2MKKFhFTikgICAgMDAwMDAwMDAgMDAwMjMwNjQgMDAwMDAwMDAgMDAwMTA2NjAg MDAwMDAwMDAgMDAwMjMwMTQgMDAwMDAwMDAgMDAwMTA2NjAKKFhFTikgICAgYjZkZTEyYzAgYjZk ZTE3ODAgMDAwMDAwMDEgMDAwMDAwMDAgYjZmOTJmZGYgMDAwMDAwMDAgMDAwMDAwMDEgMDAwMDAw MDEKKFhFTikgICAgMDAwMDAwMDAgYjZkZTEyYzAgYjZmNTc1YWMgMDAwMjMxMTggMDAwMDAwMDIg NDNmZDdmNTggMDAyM2IyMWMgNDNmZDdmNTgKKFhFTikgICAgMDAwMDAwMDAgMDAzMDUwMDAgYmVi N2I4ZTAgZWRjZjIwMDAgMDAwMDAwMDAgNDNmZDdmNTQgMDAyNjczYzQgMDAwMDAwMDAKKFhFTikg ICAgMjAwNzAwOWEgNDNmZDdmMjQgNDNmZDdmMjQgMDAwMDAwMDAgMDAwMDAwMjEgMDAwMDAwMDQg NDNmZDdmNTggMDAwMDAwMDAKKFhFTikgICAgMDAzMTg1ODAgZWUyYjg4NDAgN2MzNDBmNWYgMDBl MDAwMDAgZWZmODA4MDAgMDAwMDBkMzggZmZlZmVkMzggNDNmZDdmNDQKKFhFTikgICAgMDAwMDAw MDAgYzBhNTcwMDAgMDAwMDAwMDAgMDAzMDUwMDAgYmViN2I4ZTAgZWRjZjIwMDAgMDAwMDAwMDAg NDNmZDdmNTgKKFhFTikgWGVuIGNhbGwgdHJhY2U6CihYRU4pICAgIFs8MDAyNDAwYTA+XSB4ZW5f YnVpbGRfaWRfY2hlY2srMHg4LzB4ZTggKFBDKQooWEVOKSAgICBbPDAwMjFhOWMwPl0gbGl2ZXBh dGNoX29wKzB4NzY4LzB4MTYxMCAoTFIpCihYRU4pICAgIFs8MDAyM2JiZTQ+XSBkb19zeXNjdGwr MHg5YzgvMHhhOWMKKFhFTikgICAgWzwwMDI2NzNjND5dIGRvX3RyYXBfZ3Vlc3Rfc3luYysweDEx ZTAvMHgxNzdjCihYRU4pICAgIFs8MDAyNmI2YTA+XSBlbnRyeS5vI3JldHVybl9mcm9tX3RyYXAr MC8weDQKKFhFTikgCihYRU4pIAooWEVOKSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqCihYRU4pIFBhbmljIG9uIENQVSAwOgooWEVOKSBDUFUwOiBVbmV4cGVjdGVkIFRy YXA6IERhdGEgQWJvcnQKKFhFTikgCihYRU4pICoqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioKKFhFTikgCihYRU4pIFJlYm9vdCBpbiBmaXZlIHNlY29uZHMuLi4KCgpLZWVw IGluIG1pbmQgdGhhdCB0aGlzIG9ubHkgaGFwcGVucyBpZiBJIGNyb3NzLWNvbXBpbGUgQVJNMzIg dW5kZXIgeDg2LgoKSWYgSSBjb21waWxlIHRoZSB0ZXN0LWNhc2UgdW5kZXIgQVJNMzIgaXQgd29y a3MgT0sgKGFzIHRoZQoubGl2ZXBhdGNoLmRlcGVuZHMgZW5kcyB1cCBiZWluZyBhbGlnbmVkIHRv IGZvdXIgYnl0ZXMpLgoKTm93IGhhdmluZyBzYWlkIEkgYW0gZ29pbmcgdG8gYmUgcG9zdGluZyBh IHYzIHBhdGNoc2V0IHNob3J0bHkKd2hpY2ggaGFzIGEgZml4IGZvciB0aGlzICgieGVuL2xpdmVw YXRjaC94ODYvYXJtMzI6IEZvcmNlCi5saXZlcGF0Y2guZGVwZW5kcyBzZWN0aW9uIHRvIGJlIHVp bnQzMl90IGFsaWduZWQuIikuCgpCdXQgbm9uZXRobGVzcyBpdCBtYXkgYmUgYmV0dGVyIHRvIGhh dmUgdGhlIGV4dHJhIGJlbHQKYW5kIHN1c3BlbmRzIHRvIGNhdGNoIHRoZXNlIGlzc3VlcyBkdXJp bmcgcnVuLXRpbWUgaWYgc29tZWJvZHkKZG9lcyBtZXNzIHVwIHdpdGggdGhlIGFsaWdubWVudCBi eSBtaXN0YWtlLgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczov L2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==