From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chao Gao Subject: Re: [PATCH v2 1/4] x86/dom0: prevent access to MMCFG areas for PVH Dom0 Date: Mon, 4 Sep 2017 14:25:10 +0800 Message-ID: <20170904062507.GA5394@op-computing> References: <599D5606020000780017258C@prv-mh.provo.novell.com> <20170825121544.42lsclpjlbdwqqs5@MacBook-Pro-de-Roger.local> <59A033600200007800173C4B@prv-mh.provo.novell.com> <20170825135831.izbhkmyrnsbdvy2e@MacBook-Pro-de-Roger.local> <20170829073325.tljlgrp6djz56yae@MacBook-Pro-de-Roger.local> <20170831073239.GA48402@op-computing> <20170831090319.b2mkdjzzvcet5cy7@MacBook-Pro-de-Roger.local> <20170831084520.GA6299@op-computing> <20170831100948.bbeck4c5kbkryuw7@MacBook-Pro-de-Roger.local> 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 1dollu-00038y-L0 for xen-devel@lists.xenproject.org; Mon, 04 Sep 2017 07:26:14 +0000 Content-Disposition: inline In-Reply-To: <20170831100948.bbeck4c5kbkryuw7@MacBook-Pro-de-Roger.local> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Roger Pau Monne , "Tian, Kevin" , Jan Beulich Cc: Andrew Cooper , "xen-devel@lists.xenproject.org" List-Id: xen-devel@lists.xenproject.org T24gVGh1LCBBdWcgMzEsIDIwMTcgYXQgMTE6MDk6NDhBTSArMDEwMCwgUm9nZXIgUGF1IE1vbm5l IHdyb3RlOgo+T24gVGh1LCBBdWcgMzEsIDIwMTcgYXQgMDQ6NDU6MjNQTSArMDgwMCwgQ2hhbyBH YW8gd3JvdGU6Cj4+IE9uIFRodSwgQXVnIDMxLCAyMDE3IGF0IDEwOjAzOjE5QU0gKzAxMDAsIFJv Z2VyIFBhdSBNb25uZSB3cm90ZToKPj4gPk9uIFRodSwgQXVnIDMxLCAyMDE3IGF0IDAzOjMyOjQy UE0gKzA4MDAsIENoYW8gR2FvIHdyb3RlOgo+PiA+PiBPbiBUdWUsIEF1ZyAyOSwgMjAxNyBhdCAw ODozMzoyNUFNICswMTAwLCBSb2dlciBQYXUgTW9ubmUgd3JvdGU6Cj4+ID4+ID5PbiBNb24sIEF1 ZyAyOCwgMjAxNyBhdCAwNjoxODoxM0FNICswMDAwLCBUaWFuLCBLZXZpbiB3cm90ZToKPj4gPj4g Pj4gPiBGcm9tOiBSb2dlciBQYXUgTW9ubmUgW21haWx0bzpyb2dlci5wYXVAY2l0cml4LmNvbV0K Pj4gPj4gPj4gPiBTZW50OiBGcmlkYXksIEF1Z3VzdCAyNSwgMjAxNyA5OjU5IFBNCj4+ID4+ID4+ ID4gCj4+ID4+ID4+ID4gT24gRnJpLCBBdWcgMjUsIDIwMTcgYXQgMDY6MjU6MzZBTSAtMDYwMCwg SmFuIEJldWxpY2ggd3JvdGU6Cj4+ID4+ID4+ID4gPiA+Pj4gT24gMjUuMDguMTcgYXQgMTQ6MTUs IDxyb2dlci5wYXVAY2l0cml4LmNvbT4gd3JvdGU6Cj4+ID4+ID4+ID4gPiA+IE9uIFdlZCwgQXVn IDIzLCAyMDE3IGF0IDAyOjE2OjM4QU0gLTA2MDAsIEphbiBCZXVsaWNoIHdyb3RlOgo+PiA+PiA+ PiA+ID4gPj4gPj4+IE9uIDIyLjA4LjE3IGF0IDE1OjU0LCA8cm9nZXIucGF1QGNpdHJpeC5jb20+ IHdyb3RlOgo+PiA+PiA+PiA+ID4gPj4gPiBPbiBUdWUsIEF1ZyAyMiwgMjAxNyBhdCAwNjoyNjoy M0FNIC0wNjAwLCBKYW4gQmV1bGljaCB3cm90ZToKPj4gPj4gPj4gPiA+ID4+ID4+ID4+PiBPbiAx MS4wOC4xNyBhdCAxODo0MywgPHJvZ2VyLnBhdUBjaXRyaXguY29tPiB3cm90ZToKPj4gPj4gPj4g PiA+ID4+ID4+ID4gLS0tIGEveGVuL2FyY2gveDg2L2RvbTBfYnVpbGQuYwo+PiA+PiA+PiA+ID4g Pj4gPj4gPiArKysgYi94ZW4vYXJjaC94ODYvZG9tMF9idWlsZC5jCj4+ID4+ID4+ID4gPiA+PiA+ PiA+IEBAIC00NDAsNiArNDQwLDEwIEBAIGludCBfX2luaXQKPj4gPj4gPj4gPiBkb20wX3NldHVw X3Blcm1pc3Npb25zKHN0cnVjdCBkb21haW4gKmQpCj4+ID4+ID4+ID4gPiA+PiA+PiA+ICAgICAg ICAgICAgICByYyB8PSByYW5nZXNldF9hZGRfc2luZ2xldG9uKG1taW9fcm9fcmFuZ2VzLCBtZm4p Owo+PiA+PiA+PiA+ID4gPj4gPj4gPiAgICAgIH0KPj4gPj4gPj4gPiA+ID4+ID4+ID4KPj4gPj4g Pj4gPiA+ID4+ID4+ID4gKyAgICAvKiBGb3IgUFZIIHByZXZlbnQgYWNjZXNzIHRvIHRoZSBNTUNG RyBhcmVhcy4gKi8KPj4gPj4gPj4gPiA+ID4+ID4+ID4gKyAgICBpZiAoIGRvbTBfcHZoICkKPj4g Pj4gPj4gPiA+ID4+ID4+ID4gKyAgICAgICAgcmMgfD0gcGNpX21tY2ZnX3NldF9kb21haW5fcGVy bWlzc2lvbnMoZCk7Cj4+ID4+ID4+ID4gPiA+PiA+Pgo+PiA+PiA+PiA+ID4gPj4gPj4gV2hhdCBh Ym91dCBvbmVzIHJlcG9ydGVkIGJ5IERvbTAgbGF0ZXIgb24/IFdoaWNoIHRoZW4gcmFpc2VzIHRo ZQo+PiA+PiA+PiA+ID4gPj4gPj4gcXVlc3Rpb24gd2hldGhlciAuLi4KPj4gPj4gPj4gPiA+ID4+ ID4KPj4gPj4gPj4gPiA+ID4+ID4gVGhpcyBzaG91bGQgYmUgZGVhbHQgd2l0aCBpbiB0aGUgUEhZ U0RFVk9QX3BjaV9tbWNmZ19yZXNlcnZlZAo+PiA+PiA+PiA+IGhhbmRsZXIuCj4+ID4+ID4+ID4g PiA+PiA+IEJ1dCBzaW5jZSB5b3UgcHJvcG9zZSB0byBkbyB3aGl0ZSBsaXN0aW5nLCBJIGd1ZXNz IGl0IGRvZXNuJ3QgbWF0dGVyCj4+ID4+ID4+ID4gPiA+PiA+IHRoYXQgbXVjaCBhbnltb3JlLgo+ PiA+PiA+PiA+ID4gPj4KPj4gPj4gPj4gPiA+ID4+IFdlbGwsIGEgZnVuZGFtZW50YWwgcXVlc3Rp b24gaXMgd2hldGhlciB3aGl0ZSBsaXN0aW5nIHdvdWxkIHdvcmsgaW4KPj4gPj4gPj4gPiA+ID4+ IHRoZSBmaXJzdCBwbGFjZS4gSSBjb3VsZCBzZWUgcm9vbSBmb3Igc2V2ZXJlIHByb2JsZW1zIGUu Zy4gd2l0aCBBQ1BJCj4+ID4+ID4+ID4gPiA+PiBtZXRob2RzIHdhbnRpbmcgdG8gYWNjZXNzIE1N SU8gdGhhdCdzIG5vdCBkZXNjcmliZWQgYnkgYW55IFBDSQo+PiA+PiA+PiA+ID4gPj4gZGV2aWNl cycgQkFScy4gVHlwaWNhbGx5IHRoYXQgd291bGQgYmUgcmVnaW9ucyBpbiB0aGUgY2hpcHNldCB3 aGljaAo+PiA+PiA+PiA+ID4gPj4gZmlybXdhcmUgaXMgcmVzcG9uc2libGUgZm9yIGNvbmZpZ3Vy aW5nL21hbmFnaW5nLCB0aGUgYWRkcmVzc2VzIG9mCj4+ID4+ID4+ID4gPiA+PiB3aGljaCBjYW4g YmUgZm91bmQvc2V0IGluIGN1c3RvbSBjb25maWcgc3BhY2UgcmVnaXN0ZXJzLgo+PiA+PiA+PiA+ ID4gPgo+PiA+PiA+PiA+ID4gPiBUaGUgcXVlc3Rpb24gd291bGQgYWxzbyBiZSB3aGF0IHdvdWxk IFhlbiBhbGxvdyBpbiBzdWNoIHdoaXRlLWxpc3RpbmcuCj4+ID4+ID4+ID4gPiA+IE9idmlvdXNs eSB5b3UgY2FuIGdldCB0byBtYXAgdGhlIHNhbWUgdXNpbmcgYm90aCB3aGl0ZS1saXN0IGFuZAo+ PiA+PiA+PiA+ID4gPiBibGFjay1saXN0aW5nIChzZWUgYmVsb3cpLgo+PiA+PiA+PiA+ID4KPj4g Pj4gPj4gPiA+IE5vdCByZWFsbHkgLSB3aGF0IHlvdSd2ZSBzYWlkIHRoZXJlIHJlZ2FyZGluZyBN TUNGRyByZWdpb25zIGlzCj4+ID4+ID4+ID4gPiBhIGNsZWFyIGluZGljYXRpb24gdGhhdCB3ZSBz aG91bGQgX25vdF8gbWFwIHJlc2VydmVkIHJlZ2lvbnMsIGkuZS4KPj4gPj4gPj4gPiA+IGl0IHdv dWxkIG5lZWQgdG8gYmUgZnVsbCB3aGl0ZSBsaXN0aW5nIHdpdGggcGVyaGFwcyBqdXN0IHRoZSBQ Q0kKPj4gPj4gPj4gPiA+IGRldmljZSBCQVJzIGJlaW5nIGhhbmRsZWQgYXV0b21hdGljYWxseS4K Pj4gPj4gPj4gPiAKPj4gPj4gPj4gPiBJJ3ZlIHRyaWVkIGp1c3QgbWFwcGluZyB0aGUgQkFScyBh bmQgdGhhdCBzYWRseSBkb2Vzbid0IHdvcmssIHRoZSBib3gKPj4gPj4gPj4gPiBoYW5ncyBhZnRl ciB0aGUgSU9NTVUgaXMgZW5hYmxlZDoKPj4gPj4gPj4gPiAKPj4gPj4gPj4gPiBbLi4uXQo+PiA+ PiA+PiA+IChYRU4pIFtWVC1EXWQwOlBDSTogbWFwIDAwMDA6M2Y6MTMuNQo+PiA+PiA+PiA+IChY RU4pIFtWVC1EXWQwOlBDSTogbWFwIDAwMDA6M2Y6MTMuNgo+PiA+PiA+PiA+IChYRU4pIFtWVC1E XWlvbW11X2VuYWJsZV90cmFuc2xhdGlvbjogaW9tbXUtPnJlZyA9IGZmZmY4MmMwMDAyMWIwMDAK Pj4gPj4gPj4gPiAKPj4gPj4gPj4gPiBJIHdpbGwgcGFyayB0aGlzIEFUTSBhbmQgbGVhdmUgaXQg Zm9yIHRoZSBJbnRlbCBndXlzIHRvIGRpYWdub3NlLgo+PiA+PiA+PiA+IAo+PiA+PiA+PiA+IEZv ciB0aGUgcmVmZXJlbmNlLCB0aGUgc3BlY2lmaWMgYm94IEknbSB0ZXN0aW5nIEFUTSBoYXMgYSBY ZW9uKFIpIENQVQo+PiA+PiA+PiA+IEU1LTE2MDcgMCBAIDMuMDBHSHogYW5kIGEgQzYwMC9YNzkg Y2hpcHNldC4KPj4gPj4gPj4gPiAKPj4gPj4gPj4gCj4+ID4+ID4+ICtDaGFvIHdobyBjYW4gaGVs cCBjaGVjayB3aGV0aGVyIHdlIGhhdmUgc3VjaCBhIGJveCBhdCBoYW5kLgo+PiA+PiA+PiAKPj4g Pj4gPj4gYnR3IHBsZWFzZSBhbHNvIGdpdmUgeW91ciBCSU9TIHZlcnNpb24uCj4+ID4+ID4KPj4g Pj4gPkl0J3MgYSBQcmVjaXNpb24gVDM2MDAgQklPUyBBMTQuCj4+ID4+IAo+PiA+PiBIaSwgUm9n ZXIuCj4+ID4+IAo+PiA+PiBJIGZvdW5kIGEgSXZ5IGJyaWRnZSBib3ggd2l0aCBFNS0yNjk3IHYy IGFuZCB0ZXN0ZWQgd2l0aCAiZG9tMD1wdmgiLCBhbmQKPj4gPgo+PiA+VGhlIG9uZXMgSSd2ZSBz ZWVuIGlzc3VlcyB3aXRoIGFyZSBTYW5keSBCcmlkZ2Ugb3IgTmVoYWxlbSwgY2FuIHlvdQo+PiA+ ZmluZCBzb21lIG9mIHRoaXMgaGFyZHdhcmU/Cj4+IAo+PiBBcyBJIGV4cGVjdGVkLCBJIHdhcyBy ZW1vdmVkIGZyb20gcmVjaXBlbnRzIDooLCB3aGljaCBtYWRlIG1lCj4+IGhhcmQgdG8gbm90aWNl IHlvdXIgcmVwbGllcyBpbiB0aW1lLiAKPgo+U29ycnksIEkgaGF2ZSBubyBpZGVhIHdoeSBteSBN VUEgZG9lcyB0aGF0LCBpdCBzZWVtcyB0byBiZSBhYmxlIHRvCj5kZWFsIGZpbmUgd2l0aCBvdGhl ciByZWNpcGllbnRzLgo+Cj4+IFllcy4gSSB3aWxsLiBCdXQgbWF5IHRha2Ugc29tZSB0aW1lIChm b3IgZXZlbiBJdnkgQnJpZGdlIGlzIHJhcmUpLgo+PiAKPj4gPgo+PiA+SSBoYXZlbid0IHRlc3Rl ZCBJdnkgQnJpZGdlLCBidXQgYWxsIEhhc3dlbGwgYm94ZXMgSSd2ZSB0ZXN0ZWQgc2VlbSB0bwo+ PiA+d29yayBqdXN0IGZpbmUuCj4+IAo+PiBUaGUgcmVhc29uIHdoeSBJIGNob3NlIEl2eSBCcmlk Z2UgcGFydGx5IGlzIHlvdSBzYWlkIHlvdSBmb3VuZCB0aGlzIGJ1ZyBvbgo+PiBhbG1vc3QgcHJl LWhhc3dlbGwgYm94Lgo+Cj5JIHRlc3RlZCBOZWhhbGVtLCBTYW5keSBCcmlkZ2UgYW5kIEhhc3dl bGwsIGJ1dCBzYWRseSBub3QgSXZ5IEJyaWRnZQo+KGluIGZhY3QgSSBkaWRuJ3QgZXZlbiBrbm93 IGFib3V0IEl2eSBCcmlkZ2UsIHRoYXQncyB3aHkgSSBzYWlkIGFsbAo+cHJlLUhhc3dlbGwpLgo+ Cj5JbiBmYWN0IEknbSBub3cgdHJ5aW5nIHdpdGggYSBOZWhhbGVtIHByb2Nlc3NvciB0aGF0IHNl ZW0gdG8gd29yaywgc28KPndoYXRldmVyIHRoaXMgaXNzdWUgaXMgaXQgY2VydGFpbmx5IGRvZXNu J3QgYWZmZWN0IGFsbCBtb2RlbHMgb3IKPmNoaXBzZXRzLgoKSGksIFJvZ2VyLgoKTGFzdCB3ZWVr LCBJIGJvcnJvd2VkIGEgU2FuZHkgQnJpZGdlIHdpdGggSW50ZWwoUikgWGVvbihSKSBFNS0yNjkw CjIuN0dIeiBhbmQgdGVzdGVkIHdpdGggJ2RvbTA9cHZoJy4gQnV0IEkgZGlkbid0IHNlZSB0aGUg bWFjaGluZSBoYW5nLgoKSSBhbHNvIHRlc3RlZCBvbiBIYXN3ZWxsIGFuZCBmb3VuZCBSTVJScyBp biBkbWFyIGFyZSBpbmNvcnJlY3Qgb24gbXkKaGFzd2VsbC4gVGhlIGU4MjAgb24gdGhhdCBtYWNo aW5lIGlzOgooWEVOKSBbICAgIDAuMDAwMDAwXSBYZW4tZTgyMCBSQU0gbWFwOgooWEVOKSBbICAg IDAuMDAwMDAwXSAgMDAwMDAwMDAwMDAwMDAwMCAtIDAwMDAwMDAwMDAwOWE0MDAgKHVzYWJsZSkK KFhFTikgWyAgICAwLjAwMDAwMF0gIDAwMDAwMDAwMDAwOWE0MDAgLSAwMDAwMDAwMDAwMGEwMDAw IChyZXNlcnZlZCkKKFhFTikgWyAgICAwLjAwMDAwMF0gIDAwMDAwMDAwMDAwZTAwMDAgLSAwMDAw MDAwMDAwMTAwMDAwIChyZXNlcnZlZCkKKFhFTikgWyAgICAwLjAwMDAwMF0gIDAwMDAwMDAwMDAx MDAwMDAgLSAwMDAwMDAwMDZmZjg0MDAwICh1c2FibGUpCihYRU4pIFsgICAgMC4wMDAwMDBdICAw MDAwMDAwMDZmZjg0MDAwIC0gMDAwMDAwMDA3YWM1MTAwMCAocmVzZXJ2ZWQpCihYRU4pIFsgICAg MC4wMDAwMDBdICAwMDAwMDAwMDdhYzUxMDAwIC0gMDAwMDAwMDA3YjY4MTAwMCAoQUNQSSBOVlMp CihYRU4pIFsgICAgMC4wMDAwMDBdICAwMDAwMDAwMDdiNjgxMDAwIC0gMDAwMDAwMDA3YjdjZjAw MCAoQUNQSSBkYXRhKQooWEVOKSBbICAgIDAuMDAwMDAwXSAgMDAwMDAwMDA3YjdjZjAwMCAtIDAw MDAwMDAwN2I4MDAwMDAgKHVzYWJsZSkKKFhFTikgWyAgICAwLjAwMDAwMF0gIDAwMDAwMDAwN2I4 MDAwMDAgLSAwMDAwMDAwMDkwMDAwMDAwIChyZXNlcnZlZCkKKFhFTikgWyAgICAwLjAwMDAwMF0g IDAwMDAwMDAwZmVkMWMwMDAgLSAwMDAwMDAwMGZlZDIwMDAwIChyZXNlcnZlZCkKKFhFTikgWyAg ICAwLjAwMDAwMF0gIDAwMDAwMDAwZmY0MDAwMDAgLSAwMDAwMDAwMTAwMDAwMDAwIChyZXNlcnZl ZCkKKFhFTikgWyAgICAwLjAwMDAwMF0gIDAwMDAwMDAxMDAwMDAwMDAgLSAwMDAwMDAyMDgwMDAw MDAwICh1c2FibGUpCgpBbmQgdGhlIFJNUlJzIGluIERNQVIgYXJlOgooWEVOKSBbICAgIDAuMDAw MDAwXSBbVlQtRF1mb3VuZCBBQ1BJX0RNQVJfUk1SUjoKKFhFTikgWyAgICAwLjAwMDAwMF0gW1ZU LURdIGVuZHBvaW50OiAwMDAwOjA1OjAwLjAKKFhFTikgWyAgICAwLjAwMDAwMF0gW1ZULURdZG1h ci5jOjYzODogICBSTVJSIHJlZ2lvbjogYmFzZV9hZGRyIDcyM2I0MDAwCmVuZF9hZGRyIDdhM2Yz ZmZmCihYRU4pIFsgICAgMC4wMDAwMDBdIFtWVC1EXWZvdW5kIEFDUElfRE1BUl9STVJSOgooWEVO KSBbICAgIDAuMDAwMDAwXSBbVlQtRF0gZW5kcG9pbnQ6IDAwMDA6MDA6MWQuMAooWEVOKSBbICAg IDAuMDAwMDAwXSBbVlQtRF0gZW5kcG9pbnQ6IDAwMDA6MDA6MWEuMAooWEVOKSBbICAgIDAuMDAw MDAwXSBbVlQtRF1kbWFyLmM6NjM4OiAgIFJNUlIgcmVnaW9uOiBiYXNlX2FkZHIgNzIzYWMwMDAK ZW5kX2FkZHIgNzIzYWVmZmYKKEVuZHBvaW50IDA1OjAwLjAgaXMgYSBSQUlEIGJ1cyBjb250cm9s bGVyLiBFbmRwb2ludHMgMDAuMWQuMCBhbmQgMDAuMWEuMAphcmUgVVNCIGNvbnRyb2xsZXJzLikK CkFmdGVyIERNQSByZW1hcHBpbmcgaXMgZW5hYmxlZCwgdHdvIERNQSB0cmFuc2xhdGlvbiBmYXVs dHMgYXJlIHJlcG9ydGVkCmJ5IFZULWQ6CihYRU4pIFsgICAgOS41NDc5MjRdIFtWVC1EXWlvbW11 X2VuYWJsZV90cmFuc2xhdGlvbjogaW9tbXUtPnJlZyA9CmZmZmY4MmMwMDAyMWIwMDAKKFhFTikg WyAgICA5LjU1MDYyMF0gW1ZULURdaW9tbXVfZW5hYmxlX3RyYW5zbGF0aW9uOiBpb21tdS0+cmVn ID0KZmZmZjgyYzAwMDIxZDAwMAooWEVOKSBbICAgIDkuNTUzMzI3XSBbVlQtRF1pb21tdS5jOjky MTogaW9tbXVfZmF1bHRfc3RhdHVzOiBQcmltYXJ5ClBlbmRpbmcgRmF1bHQKKFhFTikgWyAgICA5 LjU1NTkwNl0gW1ZULURdRE1BUjpbRE1BIFJlYWRdIFJlcXVlc3QgZGV2aWNlIFswMDAwOjAwOjFh LjBdCmZhdWx0IGFkZHIgN2EzZjUwMDAsIGlvbW11IHJlZyA9IGZmZmY4MmMwMDAyMWQwMDAKKFhF TikgWyAgICA5LjU1ODUzN10gW1ZULURdRE1BUjogcmVhc29uIDA2IC0gUFRFIFJlYWQgYWNjZXNz IGlzIG5vdCBzZXQKKFhFTikgWyAgICA5LjU1OTg2MF0gcHJpbnRfdnRkX2VudHJpZXM6IGlvbW11 ICMxIGRldiAwMDAwOjAwOjFhLjAgZ21mbgo3YTNmNQooWEVOKSBbICAgIDkuNTYxMTc5XSAgICAg cm9vdF9lbnRyeVswMF0gPSAxMDcyNzdjMDAxCihYRU4pIFsgICAgOS41NjI0NDddICAgICBjb250 ZXh0W2QwXSA9IDJfMTA3MmMwNjAwMQooWEVOKSBbICAgIDkuNTYzNzc2XSAgICAgbDRbMDAwXSA9 IDljMDAwMDIwMmYxNzExMDcKKFhFTikgWyAgICA5LjU2NTEyNV0gICAgIGwzWzAwMV0gPSA5YzAw MDAyMDJmMTUyMTA3CihYRU4pIFsgICAgOS41NjY0ODNdICAgICBsMlsxZDFdID0gOWMwMDAwMTA3 MjdjZTEwNwooWEVOKSBbICAgIDkuNTY3ODIxXSAgICAgbDFbMWY1XSA9IDgwMDAwMDAwMDAwMDAw MDAKKFhFTikgWyAgICA5LjU2OTE2OF0gICAgIGwxWzFmNV0gbm90IHByZXNlbnQKKFhFTikgWyAg ICA5LjU3MDUwMl0gW1ZULURdRE1BUjpbRE1BIFJlYWRdIFJlcXVlc3QgZGV2aWNlIFswMDAwOjAw OjFkLjBdCmZhdWx0IGFkZHIgN2EzZjQwMDAsIGlvbW11IHJlZyA9IGZmZmY4MmMwMDAyMWQwMDAK KFhFTikgWyAgICA5LjU3MzE0N10gW1ZULURdRE1BUjogcmVhc29uIDA2IC0gUFRFIFJlYWQgYWNj ZXNzIGlzIG5vdCBzZXQKKFhFTikgWyAgICA5LjU3NDQ4OF0gcHJpbnRfdnRkX2VudHJpZXM6IGlv bW11ICMxIGRldiAwMDAwOjAwOjFkLjAgZ21mbgo3YTNmNAooWEVOKSBbICAgIDkuNTc1ODE5XSAg ICAgcm9vdF9lbnRyeVswMF0gPSAxMDcyNzdjMDAxCihYRU4pIFsgICAgOS41NzcxMjldICAgICBj b250ZXh0W2U4XSA9IDJfMTA3MmMwNjAwMQooWEVOKSBbICAgIDkuNTc4NDM5XSAgICAgbDRbMDAw XSA9IDljMDAwMDIwMmYxNzExMDcKKFhFTikgWyAgICA5LjU3OTc3OF0gICAgIGwzWzAwMV0gPSA5 YzAwMDAyMDJmMTUyMTA3CihYRU4pIFsgICAgOS41ODExMTFdICAgICBsMlsxZDFdID0gOWMwMDAw MTA3MjdjZTEwNwooWEVOKSBbICAgIDkuNTgyNDgyXSAgICAgbDFbMWY0XSA9IDgwMDAwMDAwMDAw MDAwMDAKKFhFTikgWyAgICA5LjU4MzgxMl0gICAgIGwxWzFmNF0gbm90IHByZXNlbnQKKFhFTikg WyAgIDEwLjUyMDE3Ml0gVW5hYmxlIHRvIGZpbmQgWEVOX0VMRk5PVEVfUEhZUzMyX0VOVFJZIGFk ZHJlc3MKKFhFTikgWyAgIDEwLjUyMTQ5OV0gRmFpbGVkIHRvIGxvYWQgRG9tMCBrZXJuZWwKKFhF TikgWyAgIDEwLjUzMjE3MV0gCihYRU4pIFsgICAxMC41MzU0NjRdICoqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioKKFhFTikgWyAgIDEwLjU0MjYzNl0gUGFuaWMgb24gQ1BV IDA6CihYRU4pIFsgICAxMC41NDczOTRdIENvdWxkIG5vdCBzZXQgdXAgRE9NMCBndWVzdCBPUwoo WEVOKSBbICAgMTAuNTUzNjA1XSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqCgpUaGUgZmF1bHQgYWRkcmVzcyB0aGUgZGV2aWNlcyBmYWlsZWQgdG8gYWNjZXNzIGlzIG1h cmtlZCBhcyByZXNlcnZlZCBpbgplODIwIGFuZCBpc24ndCByZXNlcnZlZCBmb3IgdGhlIGRldmlj ZXMgYWNjb3JkaW5nIHRvIHRoZSBSTVJScyBpbiBETUFSLgpTbyBJIHRoaW5rIHdlIGNhbiBkcmF3 IGEgY29uY2x1c2lvbiB0aGF0IHNvbWUgZXhpc3RpbmcgQklPU3MgZG9uJ3QKZXhwb3NlIGNvcnJl Y3QgUk1SUiB0byBPUyBieSBETUFSLiBBbmQgd2UgbmVlZCBhIHdvcmthcm91bmQgc3VjaCBhcwpp b21tdV9pbmNsdXNpdmVfbWFwcGluZyB0byBkZWFsIHdpdGggc3VjaCBraW5kIG9mIEJJT1MgZm9y IGJvdGggcHYgZG9tMAphbmQgcHZoIGRvbTAuCgpBcyB0byB0aGUgbWFjaGluZSBoYW5nIFJvZ2Vy IG9ic2VydmVkLCBJIGhhdmUgbm8gaWRlYSBvbiB0aGUgY2F1c2UuIFJvZ2VyLApoYXZlIHlvdSBl dmVyIHNlZW4gdGhlIFZULWQgb24gdGhhdCBtYWNoaW5lIHJlcG9ydGluZyBhIERNQQp0cmFuc2xh dGlvbiBmYXVsdD8gSWYgbm90LCBjYW4geW91IGNyZWF0ZSBvbmUgZmF1bHQgaW4gbmF0aXZlPyBJ IHRoaW5rCnRoaXMgY2FuIHRlbGwgdXMgd2hldGhlciB0aGUgaGFyZHdhcmUncyBmYXVsdCByZXBv cnQgZnVuY3Rpb24gd29ya3Mgd2VsbApvciB0aGVyZSBhcmUgc29tZSBidWdzIGluIFhlbiBjb2Rl LiBXaGF0IGlzIHlvdXIgb3BpbmlvbiBvbiB0aGlzIHRyaWFsPwoKVGhhbmtzCmNoYW8KCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWls aW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hl bi1kZXZlbAo=