From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vijay Kilari Subject: Re: [PATCH 00/28] arm64: Dom0 ITS emulation Date: Mon, 13 Feb 2017 19:23:03 +0530 Message-ID: References: <20170130183153.28566-1-andre.przywara@arm.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 1cdH3z-00042U-Rj for xen-devel@lists.xenproject.org; Mon, 13 Feb 2017 13:53:08 +0000 Received: by mail-oi0-f68.google.com with SMTP id w144so7433400oiw.1 for ; Mon, 13 Feb 2017 05:53:05 -0800 (PST) In-Reply-To: <20170130183153.28566-1-andre.przywara@arm.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Andre Przywara Cc: xen-devel , Julien Grall , Stefano Stabellini List-Id: xen-devel@lists.xenproject.org SGkgQW5kcmUsCgogIEkgdHJpZWQgeW91ciBwYXRjaCBzZXJpZXMgb24gSFcuIERvbTAgYm9vdHMg YnV0IG5vIExQSXMgYXJlIGNvbWluZyB0byBEb20wLgpTbyBJIG1hZGUgYmVsb3cgcGF0Y2ggdG8g Y29uc2lkZXIgc2VnbWVudCBJRCBpbiBnZW5lcmF0aW5nIGRldmlkLAogSSBzZWUgYmVsb3cgcGFu aWMgZnJvbSBfeG1hbGxvYygpLgoKQ29tcGxldGUgbG9nIGlzIGhlcmUKaHR0cDovL3Bhc3RlYmlu LmNvbS9idHl0aG4yVgoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9waHlzZGV2LmMgYi94ZW4v YXJjaC9hcm0vcGh5c2Rldi5jCmluZGV4IDZlMDJkZTQuLjcyZmZlOWYgMTAwNjQ0Ci0tLSBhL3hl bi9hcmNoL2FybS9waHlzZGV2LmMKKysrIGIveGVuL2FyY2gvYXJtL3BoeXNkZXYuYwpAQCAtMTcs NiArMTcsNyBAQAogaW50IGRvX3BoeXNkZXZfb3AoaW50IGNtZCwgWEVOX0dVRVNUX0hBTkRMRV9Q QVJBTSh2b2lkKSBhcmcpCiB7CiAgICAgc3RydWN0IHBoeXNkZXZfbWFuYWdlX3BjaSBtYW5hZ2U7 CisgICBzdHJ1Y3QgcGh5c2Rldl9wY2lfZGV2aWNlX2FkZCBwY2lfYWRkOwogICAgIHUzMiBkZXZp ZDsKICAgICBpbnQgcmV0OwoKQEAgLTMzLDYgKzM0LDE5IEBAIGludCBkb19waHlzZGV2X29wKGlu dCBjbWQsIFhFTl9HVUVTVF9IQU5ETEVfUEFSQU0odm9pZCkgYXJnKQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY21kID09IFBIWVNERVZPUF9tYW5hZ2VfcGNp X2FkZCk7CgogICAgICAgICAgICAgcmV0dXJuIHJldDsKKyAgICAgICBjYXNlIFBIWVNERVZPUF9w Y2lfZGV2aWNlX2FkZDoKKyAgICAgICAgICAgIGlmICggY29weV9mcm9tX2d1ZXN0KCZwY2lfYWRk LCBhcmcsIDEpICE9IDAgKQorICAgICAgICAgICAgICAgIHJldHVybiAtRUZBVUxUOworICAgICAg ICAgICAgZGV2aWQgPSBwY2lfYWRkLnNlZyA8PCAxNiB8IHBjaV9hZGQuYnVzIDw8IDggfCBwY2lf YWRkLmRldmZuOworCisgICAgICAgICAgICBwcmludGsoIkluICVzIGNhbGxpbmcgZ2ljdjNfaXRz X21hcF9kZXZpY2UgZm9yIFM6ICVkIEI6CiVkIEY6JWQgREVWSUQgJXVcbiIsCisgICAgICAgICAg ICAgICAgICAgIF9fZnVuY19fLCBwY2lfYWRkLnNlZyxwY2lfYWRkLmJ1cywgcGNpX2FkZC5kZXZm biwgZGV2aWQpOworICAgICAgICAgICAgLyogQWxsb2NhdGUgYW4gSVRTIGRldmljZSB0YWJsZSB3 aXRoIHNwYWNlIGZvciAzMiBNU0lzICovCisgICAgICAgICAgICByZXQgPSBnaWN2M19pdHNfbWFw X2d1ZXN0X2RldmljZShoYXJkd2FyZV9kb21haW4sIGRldmlkLCBkZXZpZCwgNSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNtZCA9PSBQSFlTREVWT1BfcGNpX2Rldmlj ZV9hZGQpOworCisgICAgICAgICAgICByZXR1cm4gcmV0OwogICAgIH0KCgpbICAgIDMuMjgwOTc5 XSBpb21tdTogQWRkaW5nIGRldmljZSAwMDAwOjAxOjA3LjIgdG8gZ3JvdXAgMjYKWyAgICAzLjI4 NjM3M10gcGNpIDAwMDA6MDE6MDcuMzogWzE3N2Q6YTAyZl0gdHlwZSAwMCBjbGFzcyAweDA1ODAw MApbICAgIDMuMjkyNDYzXSBwY2kgMDAwMDowMTowNy4zOiBCQVIgMDogW21lbQoweDg3ZTA1YjAw MDAwMC0weDg3ZTA1YjdmZmZmZiA2NGJpdF0gKGZyb20gRW5oYW5jZWQgQWxsb2NhdGlvbiwKcHJv cGVydGllcyAweDApClsgICAgMy4zMDM0NTddIHBjaSAwMDAwOjAxOjA3LjM6IEJBUiA0OiBbbWVt CjB4ODdlMDViZjAwMDAwLTB4ODdlMDViZmZmZmZmIDY0Yml0XSAoZnJvbSBFbmhhbmNlZCBBbGxv Y2F0aW9uLApwcm9wZXJ0aWVzIDB4MCkKKFhFTikgSW4gZG9fcGh5c2Rldl9vcCBjYWxsaW5nIGdp Y3YzX2l0c19tYXBfZGV2aWNlIGZvciBTOiAwIEI6IDEgRjo1OSBERVZJRCAzMTUKKFhFTikgSHlw ZXJ2aXNvciBUcmFwLiBIU1I9MHg5NjAwMDA0NCBFQz0weDI1IElMPTEgU3luZHJvbWU9MHg0NAoo WEVOKSBDUFUwOiBVbmV4cGVjdGVkIFRyYXA6IEh5cGVydmlzb3IKKFhFTikgLS0tLVsgWGVuLTQu OS11bnN0YWJsZSAgYXJtNjQgIGRlYnVnPXkgICBOb3QgdGFpbnRlZCBdLS0tLQooWEVOKSBDUFU6 ICAgIDAKKFhFTikgUEM6ICAgICAwMDAwMDAwMDAwMjM1ZTNjIHhtZW1fcG9vbF9hbGxvYysweDMz Yy8weDQ5YwooWEVOKSBMUjogICAgIDAwMDAwMDAwMDAyMzVjMjgKKFhFTikgU1A6ICAgICAwMDAw ODAxZmZhYmE3YzEwCihYRU4pIENQU1I6ICAgMjAwMDAzNDkgTU9ERTo2NC1iaXQgRUwyaCAoSHlw ZXJ2aXNvciwgaGFuZGxlcikKKFhFTikgICAgICBYMDogMDAwMDAwMDAwMDAwMDAxYSAgWDE6IDgw MjJiZjAwODAyMmJlMDAgIFgyOiAwMDAwODAxZmZmZjE2NWQwCihYRU4pICAgICAgWDM6IDAwMDAw MDAwMGEwZTBhMGUgIFg0OiAwMDAwMDAwMDAwMDAwMDAxICBYNTogMDAwMDAwMDAwMDAwMDAwMAoo WEVOKSAgICAgIFg2OiAwMDAwMDAwMDAwMDAwMDA0ICBYNzogMDAwMDAwMDAwMDAwMDAwMyAgWDg6 IDAwMDAwMDAwZmZmZmZmZmIKKFhFTikgICAgICBYOTogMDAwMDAwMDAwMDAwMDAwYSBYMTA6IDAw MDA4MDFmZmFiYTdhZDggWDExOiAwMDAwMDAwMDAwMDAwMDMzCihYRU4pICAgICBYMTI6IDAwMDAw MDAwMDAwMDAwMDMgWDEzOiAwMDAwMDAwMDAwMjY4ZGY4IFgxNDogMDAwMDAwMDAwMDAwMDAyMAoo WEVOKSAgICAgWDE1OiAwMDAwMDAwMDAwMDAwMDAwIFgxNjogMDAwMDAwMDAwMDAwMDAyMSBYMTc6 IDAwMDAwMDAwMDAwMDAwMGIKKFhFTikgICAgIFgxODogMDAwMDAwMDAwMDAwMDAwZCBYMTk6IDAw MDA4MDFmZmZmMTYwMDAgWDIwOiAwMDAwMDAwMDAwMDAwMDA1CihYRU4pICAgICBYMjE6IDAwMDAw MDAwMDAwMDAxNTAgWDIyOiAwMDAwODAxZmZmZjE3ODY4IFgyMzogMDAwMDAwMDAwMDAwMDAzYQoo WEVOKSAgICAgWDI0OiAwMDAwMDAwMGZmZmZmZmZmIFgyNTogMDAwMDAwMDAwMDAwMDAxZiBYMjY6 IDAwMDAwMDAwMDAwMDAwMzkKKFhFTikgICAgIFgyNzogMDAwMDAwMDAwMDAwMDAwMCBYMjg6IDAw MDA4MDFmZmY4ZTkxNjAgIEZQOiAwMDAwODAxZmZhYmE3YzEwCihYRU4pCihYRU4pICAgVlRDUl9F TDI6IDgwMDUzNTkwCihYRU4pICBWVFRCUl9FTDI6IDAwMDEwMDFmZmFiYWMwMDAKKFhFTikKKFhF TikgIFNDVExSX0VMMjogMzBjZDE4M2QKKFhFTikgICAgSENSX0VMMjogMDAwMDAwMDA4MDM4NjYz ZgooWEVOKSAgVFRCUjBfRUwyOiAwMDAwMDAxZmZmZWZlMDAwCihYRU4pCihYRU4pICAgIEVTUl9F TDI6IDk2MDAwMDQ0CihYRU4pICBIUEZBUl9FTDI6IDAwMDAwMDgwMTAwMDAwMDAKKFhFTikgICAg RkFSX0VMMjogODAyMmJmMDA4MDIyYmUxMAooWEVOKQooWEVOKSBYZW4gc3RhY2sgdHJhY2UgZnJv bSBzcD0wMDAwODAxZmZhYmE3YzEwOgooWEVOKSAgICAwMDAwODAxZmZhYmE3YzcwIDAwMDAwMDAw MDAyMzYzOTQgMDAwMDAwMDAwMDAwMDEwMCAwMDAwMDAwMDAwMDAwMDYwCihYRU4pICAgIDAwMDAw MDAwMDAwMDAxNTAgMDAwMDgwMWZmNWE2MjUzMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDA4MDFmZjVh NjI1MjgKKFhFTikgICAgMDAwMDgwMWZmYTMyZjBlMCAwMDAwMDAwMDAwMDAwMDA1IDAwMDAwMDAw MDAwMDAxM2IgZmZmZjgwMDBlYTJjNjgwMAooWEVOKSAgICAwMDAwODAxZmZhYmE3Y2MwIDAwMDAw MDAwMDAyNGMxNTQgMDAwMDgwMWZmZjhlYmVjMCAwMDAwMDAwMDAwMDAwMTNiCihYRU4pICAgIDAw MDA4MDFmZjVhNjIwMDAgMDAwMDgwMWZmNWE2MjUzMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDA4MDFm ZjVhNjI1MjgKKFhFTikgICAgMDAwMDgwMWZmYTMyZjBlMCAwMDAwODAxZmZhYmE3ZDcwIDAwMDA4 MDFmZmFiYTdkNzAgMDAwMDAwMDAwMDI1MzU5MAooWEVOKSAgICAwMDAwMDAwMDAwMDAwMTNiIDAw MDA4MDFmZmFiYTdmMzAgZmZmZjgwMDAwMDBiYTFiOCBmZmZmODAwMDAwMGJhMWI4CihYRU4pICAg IDAwMDAwMDAwNjAwMDAwNDUgZmZmZjgwMDAwMGU0MDAwMCBmZmZmODAwMDAwZjUwMDAwIDAwMDAw MDAwMDAwMDAwMDAKKFhFTikgICAgZmZmZjgwMDAwMGUzMGVjOCBmZmZmODAwMGVhMmM2ODAwIDAw MDA4MDFmZmFiYTdkMzAgMDAwMDAwMDBmZmZmZmZjOAooWEVOKSAgICAwMDAwMDAwMDYwMDAwMDQ1 IDAwMDAwMDAwMDAyNmJlNDggMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAxCihYRU4p ICAgIDAwMDAwMDAwMDAwMDAwM2IgMDAwMDAwMDAwMDAwMDEzYiAwMDAwODAxZmZhYmE3ZGE0IGZm ZmY4MDEyZjIxYmI0NTAKKFhFTikgICAgMDAwMDgwMWZmYWJhN2RiMCAwMDAwMDAwMDAwMjU0ZGU0 IDAwMDA4MDFmZmFiYTdlYjAgMDAwMDAwMDAwMDI1NDlmNAooWEVOKSAgICAwMDAwMDAwMDVhMDAw ZWExIDAwMDAwMDAxM2IwMTAwMDAgMDAwMDAwMDAwMDAwMDAwMCBmZmZmODAwMDAwMGJhMWI4CihY RU4pICAgIDAwMDA4MDFmZmFiYTdlMTAgMDAwMDAwMDAwMDI1NzJhNCAwMDAwMDAwMDVhMDAwZWEx IDAwMDA4MDFmZmFiYTdlYjAKKFhFTikgICAgMDAwMDAwMDA1YTAwMGVhMSAwMDAwMDAwMDAwMjU2 NTUwIDAwMDA4MDFmZmFiYTdlNzAgMDAwMDAwMDAwMDI0OGUzNAooWEVOKSAgICAwMDAwMDAwMDAw MzEzYzgwIGZmZmY4MDAwMDBkOTYwMDAgZmZmZmZmZmZmZmZmZmZmZiBmZmZmODAwMDAwNTI1NDg0 CihYRU4pICAgIGZmZmY4MDEyZjNhZWI3ODAgMDAwMDAwMDAwMDI1ZmI1NCBmZmZmODAxMmYyMWNm MDk4IGZmZmY4MDEyZjIxY2YwMDAKKFhFTikgICAgZmZmZmZmZmZmZmZmZmZmZiBmZmZmODAwMDAw MGJhMWI4IDAwMDAwMDAwNjAwMDAwNDUgZmZmZjgwMDAwMGU0MDAwMAooWEVOKSAgICBmZmZmODAw MDAwZjUwMDAwIDAwMDAwMDAwMDAwMDAwMDAgZmZmZjgwMDAwMGUzMGVjOCBmZmZmODAwMGVhMmM2 ODAwCihYRU4pICAgIDAwMDA4MDFmZmFiYTdlOTAgMDAwMDAwMDAwMDI1ODI3YyAwMDAwMDAwMDAw MDAwMDAyIDAwMDAwMDAwMDAyNTgyOTgKKFhFTikgICAgZmZmZjgwMTJmM2FlYWZkMCAwMDAwMDAw MDAwMjVmYjU4IDAwMDAwMDAwMDAwMDAwMDIgZmZmZjgwMDAwMGQ5NjAwMAooWEVOKSAgICAwMDAw MDAwMDAwMDAwMDE5IGZmZmY4MDEyZjNhZWI3YzAgMDAwMDAwMDAwMDAwMDAwNyAwMDAwMDAwMDAw MDAwMDAwCihYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDEgZmZmZjgwMDAwMGUzNDMzMCAwMDAwMDAw MDgwODA4MDgwIGZmZmY4MDEyZjIxYmI0NTAKKFhFTikgICAgN2Y3ZjdmN2Y3ZjdmN2Y3ZiA1ZTY0 NmM2ODczNmQ3NDcxIDdmN2Y3ZjdmN2Y3ZjdmN2YgMDEwMTAxMDEwMTAxMDEwMQooWEVOKSAgICAw MDAwMDAwMDAwMDAwMDIwIDY5NjIzNDM2MjA2NjY2NjYgNmQ2ZjcyNjYyODIwNWQ3NCAwMDAwMDAw MDAwMDAwMDAwCihYRU4pICAgIDAwMDAwMDAwMDAwMDAwMjEgMDAwMDAwMDAwMDAwMDAwYiAwMDAw MDAwMDAwMDAwMDBkIGZmZmY4MDEyZjIxY2YwOTgKKFhFTikgICAgZmZmZjgwMTJmMjFjZjAwMCBm ZmZmODAwMDAwZDkwMDAwIDAwMDAwMDAwMDAwMDAwMDAgZmZmZjgwMTJmMjFjZjA5OAooWEVOKSAg ICBmZmZmODAwMDAwZTQwMDAwIGZmZmY4MDAwMDBmNTAwMDAgMDAwMDAwMDAwMDAwMDAwMCBmZmZm ODAwMDAwZTMwZWM4CihYRU4pICAgIGZmZmY4MDAwZWEyYzY4MDAgZmZmZjgwMTJmM2FlYjc4MCBm ZmZmODAwMDAwNTk5NzE4IGZmZmZmZmZmZmZmZmZmZmYKKFhFTikgICAgZmZmZjgwMDAwMDBiYTFi OCAwMDAwMDAwMDYwMDAwMDQ1IDAwMDAwMDAwNjAwMDAwNDUgMDAwMDAwMDAwMDAwMDAwMAooWEVO KSAgICAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgZmZmZjgwMTJmM2FlYjc4MCBm ZmZmODAwMDAwMTBiMDY4CihYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAw MAooWEVOKSBYZW4gY2FsbCB0cmFjZToKKFhFTikgICAgWzwwMDAwMDAwMDAwMjM1ZTNjPl0geG1l bV9wb29sX2FsbG9jKzB4MzNjLzB4NDljIChQQykKKFhFTikgICAgWzwwMDAwMDAwMDAwMjM1YzI4 Pl0geG1lbV9wb29sX2FsbG9jKzB4MTI4LzB4NDljIChMUikKKFhFTikgICAgWzwwMDAwMDAwMDAw MjM2Mzk0Pl0gX3htYWxsb2MrMHhmYy8weDI3NAooWEVOKSAgICBbPDAwMDAwMDAwMDAyNGMxNTQ+ XSBnaWN2M19pdHNfbWFwX2d1ZXN0X2RldmljZSsweGIwLzB4MmEwCihYRU4pICAgIFs8MDAwMDAw MDAwMDI1MzU5MD5dIGRvX3BoeXNkZXZfb3ArMHhjNC8weDExNAooWEVOKSAgICBbPDAwMDAwMDAw MDAyNTRkZTQ+XSB0cmFwcy5jI2RvX3RyYXBfaHlwZXJjYWxsKzB4OTAvMHgxMmMKKFhFTikgICAg WzwwMDAwMDAwMDAwMjU3MmE0Pl0gZG9fdHJhcF9oeXBlcnZpc29yKzB4ZDg4LzB4MWM2YwooWEVO KSAgICBbPDAwMDAwMDAwMDAyNWZiNTQ+XSBlbnRyeS5vI2d1ZXN0X3N5bmMrMHg5MC8weGMwCihY RU4pCgpOb3RlOiBJIGhhdmUgYWRkZWQgcHJpbnQgc2ltaWxhciB0byBiZWxvdyB0aGF0IHlvdSBz ZWUgaW4gbG9nCihYRU4pIEluIGRvX3BoeXNkZXZfb3AgY2FsbGluZyBnaWN2M19pdHNfbWFwX2Rl dmljZSBmb3IgUzogMCBCOiAxIEY6NTkgREVWSUQgMzE1CgoKT24gVHVlLCBKYW4gMzEsIDIwMTcg YXQgMTI6MDEgQU0sIEFuZHJlIFByenl3YXJhIDxhbmRyZS5wcnp5d2FyYUBhcm0uY29tPiB3cm90 ZToKPiBIaSwKPgo+IGFmdGVyIHRoZSB0d28gUkZDIHZlcnNpb25zIG5vdyB0aGUgZmlyc3QgInNl cmlvdXMiIGF0dGVtcHQgZm9yIGVtdWxhdGluZwo+IGFuIEFSTSBHSUN2MyBJVFMgaW50ZXJydXB0 IGNvbnRyb2xsZXIsIGZvciBEb20wIG9ubHkgYXQgdGhlIG1vbWVudC4KPiBUaGUgSVRTIGlzIGFu IGludGVycnVwdCBjb250cm9sbGVyIHdpZGdldCBwcm92aWRpbmcgYSBzb3BoaXN0aWNhdGVkIHdh eQo+IG9mIGRlYWxpbmcgd2l0aCBNU0lzIGluIGEgc2NhbGFibGUgbWFubmVyLgo+IEZvciBoYXJk d2FyZSB3aGljaCByZWxpZXMgb24gdGhlIElUUyB0byBwcm92aWRlIGludGVycnVwdHMgZm9yIGl0 cwo+IHBlcmlwaGVyYWxzIHRoaXMgY29kZSBpcyBuZWVkZWQgdG8gZ2V0IGEgbWFjaGluZSBib290 ZWQgaW50byBEb20wIGF0IGFsbC4KPiBJVFMgZW11bGF0aW9uIGZvciBEb21VcyBpcyBvbmx5IHJl YWxseSB1c2VmdWwgd2l0aCBQQ0kgcGFzc3Rocm91Z2gsCj4gd2hpY2ggaXMgbm90IHlldCBhdmFp bGFibGUgZm9yIEFSTS4gSXQgaXMgZXhwZWN0ZWQgdGhhdCB0aGlzIGZlYXR1cmUKPiB3aWxsIGJl IGNvLWRldmVsb3BlZCB3aXRoIHRoZSBJVFMgRG9tVSBjb2RlLiBIb3dldmVyIHRoaXMgY29kZSBk cm9wIGhlcmUKPiBjb25zaWRlcmVkIERvbVUgZW11bGF0aW9uIGFscmVhZHksIHRvIGtlZXAgbGF0 ZXIgYXJjaGl0ZWN0dXJhbCBjaGFuZ2VzCj4gdG8gYSBtaW5pbXVtLgo+Cj4gU29tZSBnZW5lcmlj IGRlc2lnbiBwcmluY2lwbGVzOgo+Cj4gKiBUaGUgY3VycmVudCBHSUMgY29kZSBzdGF0aWNhbGx5 IGFsbG9jYXRlcyBzdHJ1Y3R1cmVzIGZvciBlYWNoIHN1cHBvcnRlZAo+IElSUSAoYm90aCBmb3Ig dGhlIGhvc3QgYW5kIHRoZSBndWVzdCksIHdoaWNoIGR1ZSB0byB0aGUgcG90ZW50aWFsbHkKPiBt aWxsaW9ucyBvZiBMUEkgaW50ZXJydXB0cyBpcyBub3QgZmVhc2libGUgdG8gY29weSBmb3IgdGhl IElUUy4KPiBTbyB3ZSByZWZyYWluIGZyb20gaW50cm9kdWNpbmcgdGhlIElUUyBhcyBhIGZpcnN0 IGNsYXNzIFhlbiBpbnRlcnJ1cHQKPiBjb250cm9sbGVyLCBhbHNvIHdlIGRvbid0IGhvbGQgc3Ry dWN0IGlycV9kZXNjJ3Mgb3Igc3RydWN0IHBlbmRpbmdfaXJxJ3MKPiBmb3IgZWFjaCBwb3NzaWJs ZSBMUEkuCj4gRm9ydHVuYXRlbHkgTFBJcyBhcmUgb25seSBpbnRlcmVzdGluZyB0byBndWVzdHMs IHNvIHdlIGdldCBhd2F5IHdpdGgKPiBzdG9yaW5nIG9ubHkgdGhlIHZpcnR1YWwgSVJRIG51bWJl ciBhbmQgdGhlIGd1ZXN0IFZDUFUgZm9yIGVhY2ggYWxsb2NhdGVkCj4gaG9zdCBMUEksIHdoaWNo IGNhbiBiZSBzdGFzaGVkIGludG8gb25lIHVpbnQ2NF90LiBUaGlzIGRhdGEgaXMgc3RvcmVkIGlu Cj4gYSB0d28tbGV2ZWwgdGFibGUsIHdoaWNoIGlzIGJvdGggbWVtb3J5IGVmZmljaWVudCBhbmQg cXVpY2sgdG8gYWNjZXNzLgo+IFdlIGhvb2sgaW50byB0aGUgZXhpc3RpbmcgSVJRIGhhbmRsaW5n IGFuZCBWR0lDIGNvZGUgdG8gYXZvaWQgYWNjZXNzaW5nCj4gdGhlIG5vcm1hbCBzdHJ1Y3R1cmVz LCBwcm92aWRpbmcgYWx0ZXJuYXRpdmUgbWV0aG9kcyBmb3IgZ2V0dGluZyB0aGUKPiBuZWVkZWQg aW5mb3JtYXRpb24gKHByaW9yaXR5LCBpcyBlbmFibGVkPykgZm9yIExQSXMuCj4gRm9yIGludGVy cnVwdHMgd2hpY2ggYXJlIHF1ZXVlZCB0byBvciBhcmUgYWN0dWFsbHkgaW4gYSBndWVzdCB3ZQo+ IGFsbG9jYXRlIHN0cnVjdCBwZW5kaW5nX2lycSdzIG9uIGRlbWFuZC4gQXMgaXQgaXMgZXhwZWN0 ZWQgdGhhdCBvbmx5IGEKPiB2ZXJ5IHNtYWxsIG51bWJlciBvZiBpbnRlcnJ1cHRzIGlzIGV2ZXIg b24gYSBWQ1BVIGF0IHRoZSBzYW1lIHRpbWUsIHRoaXMKPiBzZWVtcyBsaWtlIHRoZSBiZXN0IGFw cHJvYWNoLiBGb3Igbm93IGFsbG9jYXRlZCBzdHJ1Y3RzIGFyZSByZS11c2VkIGFuZAo+IGhlbGQg aW4gYSBsaW5rZWQgbGlzdC4gU2hvdWxkIGl0IGVtZXJnZSB0aGF0IHRyYXZlcnNpbmcgYSBsaW5r ZWQgbGlzdAo+IGlzIGEgcGVyZm9ybWFuY2UgaXNzdWUsIHRoaXMgY2FuIGJlIGNoYW5nZWQgdG8g dXNlIGEgaGFzaCB0YWJsZS4KPgo+ICogT24gdGhlIGd1ZXN0IHNpZGUgd2UgKGxhdGVyIHdpbGwp IGhhdmUgdG8gZGVhbCB3aXRoIG1hbGljaW91cyBndWVzdHMKPiB0cnlpbmcgdG8gaG9nIFhlbiB3 aXRoIG1hcHBpbmcgcmVxdWVzdHMgZm9yIGEgbG90IG9mIExQSXMsIGZvciBpbnN0YW5jZS4KPiBB cyB0aGUgSVRTIGFjdHVhbGx5IHVzZXMgc3lzdGVtIG1lbW9yeSBmb3Igc3RvcmluZyBzdGF0dXMg aW5mb3JtYXRpb24sCj4gd2UgdXNlIHRoaXMgbWVtb3J5ICh3aGljaCB0aGUgZ3Vlc3QgaGFzIHRv IHByb3ZpZGUpIHRvIG5hdHVyYWxseSBsaW1pdAo+IGEgZ3Vlc3QuIEZvciB0aG9zZSB0YWJsZXMg d2hpY2ggYXJlIHBhZ2Ugc2l6ZWQgKGRldmljZXMsIGNvbGxlY3Rpb25zIChDUFVzKSwKPiBMUEkg cHJvcGVydGllcykgd2UgbWFwIHRob3NlIHBhZ2VzIGludG8gWGVuLCBzbyB3ZSBjYW4gZWFzaWx5 IGFjY2Vzcwo+IHRoZW0gZnJvbSB0aGUgdmlydHVhbCBHSUMgY29kZS4KPiBVbmZvcnR1bmF0ZWx5 IHRoZSBhY3R1YWwgaW50ZXJydXB0IG1hcHBpbmcgdGFibGVzIGFyZSBub3QgbmVjZXNzYXJpbHkK PiBwYWdlIGFsaWduZWQsIGFsc28gY2FuIGJlIG11Y2ggc21hbGxlciB0aGFuIGEgcGFnZSwgc28g bWFwcGluZyBhbGwgb2YKPiB0aGVtIHBlcm1hbmVudGx5IGlzIGZpZGRseS4gQXMgSVRTIGNvbW1h bmRzIGluIG5lZWQgdG8gaXRlcmF0ZSB0aG9zZQo+IHRhYmxlcyBhcmUgcHJldHR5IHJhcmUgYWZ0 ZXIgYWxsLCB3ZSBmb3Igbm93IG1hcCB0aGVtIG9uIGRlbWFuZCB1cG9uCj4gZW11bGF0aW5nIGEg dmlydHVhbCBJVFMgY29tbWFuZC4gVGhpcyBpcyBhY2NlcHRhYmxlIGJlY2F1c2UgIm1hcHBpbmci Cj4gdGhlbSBpcyBhY3R1YWxseSB2ZXJ5IGNoZWFwIG9uIGFybTY0LiBBbHNvIGFzIHdlIGNhbid0 IHByb3Blcmx5IHByb3RlY3QKPiB0aG9zZSBhcmVhcyBkdWUgdG8gdGhlaXIgc3ViLXBhZ2Utc2l6 ZSBwcm9wZXJ0eSwgd2UgdmFsaWRhdGUgdGhlIGRhdGEKPiBpbiB0aGVyZSBiZWZvcmUgYWN0dWFs bHkgdXNpbmcgaXQuIFRoZSB2SVRTIGNvZGUgYmFzaWNhbGx5IGp1c3Qgc3RvcmVzCj4gdGhlIGRh dGEgaW4gdGhlcmUgd2hpY2ggdGhlIGd1ZXN0IGhhcyBhY3R1YWxseSB0cmFuc2ZlcnJlZCB2aWEg dGhlCj4gdmlydHVhbCBJVFMgY29tbWFuZCBxdWV1ZSBiZWZvcmUsIHNvIHRoZXJlIGlzIG5vIHNl Y3JldCByZXZlYWxlZCBub3IKPiBkb2VzIGl0IGNyZWF0ZSBhbiBhdHRhY2sgdmVjdG9yIGZvciBh IG1hbGljaW91cyBndWVzdC4KPgo+ICogQW4gb2J2aW91cyBhcHByb2FjaCB0byBoYW5kbGluZyBz b21lIGd1ZXN0IElUUyBjb21tYW5kcyB3b3VsZCBiZSB0bwo+IHByb3BhZ2F0ZSB0aGVtIHRvIHRo ZSBob3N0LCBmb3IgaW5zdGFuY2UgdG8gbWFwIGRldmljZXMgYW5kIExQSXMgYW5kCj4gdG8gZW5h YmxlIG9yIGRpc2FibGUgTFBJcy4KPiBIb3dldmVyIHRoaXMgKGxhdGVyIHdpdGggRG9tVSBzdXBw b3J0KSB3aWxsIGNyZWF0ZSBhbiBhdHRhY2sgdmVjdG9yLCBhcwo+IGEgbWFsaWNpb3VzIGd1ZXN0 IGNvdWxkIHRyeSB0byBmaWxsIHRoZSBob3N0IGNvbW1hbmQgcXVldWUgd2l0aAo+IHByb3BhZ2F0 ZWQgY29tbWFuZHMuCj4gU28gKGluIGNvbnRyYXN0IHRvIHRoZSBmaXJzdCBSRkMgcG9zdCkgd2Ug Y29tcGxldGVseSBhdm9pZCB0aGlzIHNpdHVhdGlvbi4KPiBGb3IgbWFwcGluZyBkZXZpY2VzIGFu ZCBMUElzIHdlIHJlbHkgb24gdGhpcyBiZWluZyBkb25lIHZpYSBhIGh5cGVyY2FsbAo+IHByaW9y IHRvIHRoZSBhY3R1YWwgZ3Vlc3QgcnVuLiBGb3IgZW5hYmxpbmcgYW5kIGRpc2FibGluZyBMUElz IHdlIGtlZXAKPiB0aGlzIGJpdCBvbiB0aGUgdmlydHVhbCBzaWRlIGFuZCBsZXQgTFBJcyBhbHdh eXMgYmUgZW5hYmxlZCBvbiB0aGUgaG9zdCBzaWRlLAo+IGRlYWxpbmcgd2l0aCB0aGUgY29uc2Vx dWVuY2VzIHRoaXMgYXBwcm9hY2ggY3JlYXRlcy4KPgo+IEFzIGl0IGlzIGV4cGVjdGVkIHRoYXQg dGhlIElUUyBzdXBwb3J0IHdpbGwgYmVjb21lIGEgdGVjaCBwcmV2aWV3IGluIHRoZQo+IGZpcnN0 IHJlbGVhc2UsIHRoZXJlIGlzIGEgS2NvbmZpZyBvcHRpb24gdG8gZW5hYmxlIGl0LiBBbHNvIGl0 IGlzCj4gc3VwcG9ydGVkIG9uIGFybTY0IG9ubHksIHdoaWNoIHdpbGwgbW9zdCBsaWtlbHkgbm90 IGNoYW5nZSBpbiB0aGUgZnV0dXJlLgo+IFRoaXMgbGVhZHMgdG8gc29tZSBoaWRlb3VzIGNvbnN0 cnVjdHMgbGlrZSBhbiAjaWZkZWYnZWQgaGVhZGVyIGZpbGUgd2l0aAo+IGVtcHR5IGZ1bmN0aW9u IHN0dWJzLCBJIGhhdmUgc29tZSBob3BlIHdlIGNhbiBzdGlsbCBjbGVhbiB0aGlzIHVwLgo+IEFs c28gc29tZSBwYXJhbWV0ZXJzIGFyZSBjb25maWcgb3B0aW9ucyB3aGljaCBjYW4gYmUgb3ZlcnJp ZGRlbiBvbiB0aGUKPiBYZW4gY29tbWFuZGxpbmUuIFRoaXMgaXMgdG8gc3VwcG9ydCBleHBlcmlt ZW50YXRpb24gYW5kIGFkYXB0aW9uIHRvCj4gdmFyaW91cyBwbGF0Zm9ybXMsIGlkZWFsbHkgd2Ug ZmluZCBlaXRoZXIgb25lLXNpemUtZml0cy1hbGwgdmFsdWVzIG9yCj4gZmluZCBhbm90aGVyIHdh eSBvZiBnZXR0aW5nIHJpZCBvZiB0aGlzLgo+Cj4gQ29tcGFyZWQgdG8gdGhlIHByZXZpb3VzIHBv c3QgKFJGQy12MikgdGhpcyBoYXMgc2VlbiBhIGxvdCBvZiByZXdvcmtzCj4gYW5kIGNsZWFudXBz IGluIHZhcmlvdXMgYXJlYXMuCj4gSSB0cmllZCB0byBhZGRyZXNzIGFsbCBvZiB0aGUgcmV2aWV3 IGNvbW1lbnRzLCB0aG91Z2ggc29tZSBhcmUgaGFyZCB0bwo+IGZvbGxvdyBkdWUgdG8gcmV3cml0 ZXMuIFNvIGFwb2xvZ2llcyBpZiBzb21lIHBvaW50cyBoYXZlIHNsaXBwZWQgdGhyb3VnaC4KPiBB bGxvY2F0aW5nIGFuZCBtYXBwaW5nIG9mIG1lbW9yeSBmb3IgYm90aCB0aGUgcGh5c2ljYWwgYW5k IHZpcnR1YWwgSVRTCj4gYW5kIHJlZGlzdHJpYnV0b3IgdGFibGVzIGhhcyBiZWVuIGltcHJvdmVk LCB0aG91Z2ggSSBkaWRuJ3QgbWFuYWdlIHRvCj4gd3JpdGUgcHJvdGVjdCB0aGUgdmlydHVhbCB0 YWJsZXMgZnJvbSBhIGd1ZXN0IHdpdGhvdXQgaW1wYWN0aW5nIGFjY2Vzcwo+IGZyb20gWGVuIGF0 IHRoZSBzYW1lIHRpbWUuIEkgd2lsbCBuZWVkIHRvIHRha2UgYSBkZWVwZXIgbG9vayBpbnRvIHRo aXMsCj4gYnV0IGlkZWFsbHkgaXQncyBvbmx5IGEgc21hbGwgY2hhbmdlIGluIGdldF9ndWVzdF9w YWdlcygpLgo+Cj4gVGhpcyBjb2RlIGJvb3RzIERvbTAgb24gYW4gQVJNIEZhc3QgTW9kZWwgd2l0 aCBJVFMgc3VwcG9ydC4gSSB0cmllZCB0bwo+IGFkZHJlc3MgdGhlIGlzc3VlcyBzZWVuIGJ5IHBl b3BsZSBydW5uaW5nIHRoZSBwcmV2aW91cyB2ZXJzaW9uIG9uIHJlYWwKPiBoYXJkd2FyZSwgdGhv dWdoIGNvdWxkbid0IHZlcmlmeSB0aGlzIGhlcmUgZm9yIG15c2VsZi4KPiBTbyBhbnkgdGVzdGlu ZywgYnVnIHJlcG9ydHMgKGFuZCBwb3NzaWJseSBldmVuIGZpeGVzKSBhcmUgdmVyeSB3ZWxjb21l Lgo+Cj4gVGhlIGNvZGUgY2FuIGFsc28gYmUgZm91bmQgb24gdGhlIGl0cy92MSBicmFuY2ggaGVy ZToKPiBnaXQ6Ly9saW51eC1hcm0ub3JnL3hlbi1hcC5naXQKPiBodHRwOi8vd3d3LmxpbnV4LWFy bS5vcmcvZ2l0P3A9eGVuLWFwLmdpdDthPXNob3J0bG9nO2g9cmVmcy9oZWFkcy9pdHMvdjEKPgo+ IENoZWVycywKPiBBbmRyZQo+Cj4gKFJvdWdoKSBjaGFuZ2Vsb2cgUkZDLXYyIC4uIHYxOgo+IC0g c3BsaXQgaG9zdCBJVFMgZHJpdmVyIGludG8gZ2ljLXYzLWxwaS5jIGFuZCBnaWMtdjMtaXRzLmMg cGFydAo+IC0gcmVuYW1lIHZpcnR1YWwgSVRTIGRyaXZlciBmaWxlIHRvIHZnaWMtdjMtaXRzLmMK PiAtIHVzZSBtYWNyb3MgYW5kIG5hbWVkIGNvbnN0YW50cyBmb3IgYWxsIG1hZ2ljIG51bWJlcnMK PiAtIHVzZSBhdG9taWMgYWNjZXNzb3JzIGZvciBhY2Nlc3NpbmcgdGhlIGhvc3QgTFBJIGRhdGEK PiAtIHJlbW92ZSBsZWZ0b3ZlcnMgZnJvbSBjb25uZWN0aW5nIHZpcnR1YWwgYW5kIGhvc3QgSVRT ZXMKPiAtIGJhaWwgb3V0IGlmIGhvc3QgSVRTIGlzIGRpc2FibGVkIGluIHRoZSBEVAo+IC0gcmV3 b3JrIG1hcC91bm1hcF9ndWVzdF9wYWdlcygpOgo+ICAgICAtIHNwbGl0IG9mZiBwMm0gcGFydCBh cyBnZXQvcHV0X2d1ZXN0X3BhZ2VzICh0byBiZSBkb25lIG9uIGFsbG9jYXRpb24pCj4gICAgIC0g Z2V0IHJpZCBvZiB2bWFwLCB1c2luZyBtYXBfZG9tYWluX3BhZ2UoKSBpbnN0ZWFkCj4gLSBkZWxh eSBhbGxvY2F0aW9uIG9mIHZpcnR1YWwgdGFibGVzIHVudGlsIGFjdHVhbCBMUEkvSVRTIGVuYWJs ZW1lbnQKPiAtIHByb3Blcmx5IHNpemUgYm90aCB2aXJ0dWFsIGFuZCBwaHlzaWNhbCB0YWJsZXMg dXBvbiBhbGxvY2F0aW9uCj4gLSBmaXggcHV0X2RvbWFpbigpIGxvY2tpbmcgaXNzdWVzIGluIHBo eXNkZXZfb3AgYW5kIExQSSBoYW5kbGluZyBjb2RlCj4gLSBhZGQgYW5kIGV4dGVuZCBjb21tZW50 cyBpbiB2YXJpb3VzIGFyZWFzCj4gLSBmaXggbG90c2EgY29kaW5nIHN0eWxlIGFuZCB3aGl0ZSBz cGFjZSBpc3N1ZXMsIGluY2x1ZGluZyBjb21tZW50IHN0eWxlCj4gLSBhZGQgbG9ja2luZyB0byBk YXRhIHN0cnVjdHVyZXMgbm90IHlldCBjb3ZlcmVkCj4gLSBmaXggdmFyaW91cyBsb2NraW5nIGlz c3Vlcwo+IC0gdXNlIGFuIHJidHJlZSB0byBkZWFsIHdpdGggSVRTIGRldmljZXMgKGluc3RlYWQg b2YgYSBsaXN0KQo+IC0gcHJvcGVybHkgaGFuZGxlIG1lbW9yeSBhdHRyaWJ1dGVzIGZvciBJVFMg dGFibGVzCj4gLSBoYW5kbGUgY2FjaGVhYmxlL25vbi1jYWNoZWFibGUgSVRTIHRhYmxlIG1hcHBp bmdzCj4gLSBzYW5pdGl6ZSBndWVzdCBwcm92aWRlZCBJVFMvTFBJIHRhYmxlIGF0dHJpYnV0ZXMK PiAtIGZpeCBicmVha2FnZSBvbiBub24tR0lDdjIgY29tcGF0aWJsZSBob3N0IEdJQ3YzIGNvbnRy b2xsZXJzCj4gLSBhZGQgY29tbWFuZCBsaW5lIHBhcmFtZXRlcnMgb24gdG9wIG9mIEtjb25maWcg b3B0aW9ucwo+IC0gcHJvcGVybHkgd2FpdCBmb3IgYW4gSVRTIHRvIGJlY29tZSBxdWllc2NpZW50 IGJlZm9yZSBlbmFibGluZyBpdAo+IC0gaGFuZGxlIGhvc3QgSVRTIGNvbW1hbmQgcXVldWUgZXJy b3JzCj4gLSBhY3R1YWxseSB3YWl0IGZvciBob3N0IElUUyBjb21tYW5kIGNvbXBsZXRpb24gKFJF QURSPT1XUklURVIpCj4gLSBmaXggQVJNMzIgY29tcGlsYXRpb24KPiAtIHZhcmlvdXMgcGF0Y2gg c3BsaXRzIGFuZCByZW9yZGVyaW5ncwo+Cj4gQW5kcmUgUHJ6eXdhcmEgKDI4KToKPiAgIEFSTTog ZXhwb3J0IF9fZmx1c2hfZGNhY2hlX2FyZWEoKQo+ICAgQVJNOiBHSUN2MyBJVFM6IHBhcnNlIGFu ZCBzdG9yZSBJVFMgc3Vibm9kZXMgZnJvbSBoYXJkd2FyZSBEVAo+ICAgQVJNOiBHSUN2MzogYWxs b2NhdGUgTFBJIHBlbmRpbmcgYW5kIHByb3BlcnR5IHRhYmxlCj4gICBBUk06IEdJQ3YzIElUUzog YWxsb2NhdGUgZGV2aWNlIGFuZCBjb2xsZWN0aW9uIHRhYmxlCj4gICBBUk06IEdJQ3YzIElUUzog bWFwIElUUyBjb21tYW5kIGJ1ZmZlcgo+ICAgQVJNOiBHSUN2MyBJVFM6IGludHJvZHVjZSBJVFMg Y29tbWFuZCBoYW5kbGluZwo+ICAgQVJNOiBHSUN2MyBJVFM6IGludHJvZHVjZSBkZXZpY2UgbWFw cGluZwo+ICAgQVJNOiBHSUN2MyBJVFM6IGludHJvZHVjZSBob3N0IExQSSBhcnJheQo+ICAgQVJN OiBHSUN2MyBJVFM6IG1hcCBkZXZpY2UgYW5kIExQSXMgdG8gdGhlIElUUyBvbiBwaHlzZGV2X29w IGh5cGVyY2FsbAo+ICAgQVJNOiBHSUN2MzogaW50cm9kdWNlIHNlcGFyYXRlIHBlbmRpbmdfaXJx IHN0cnVjdHMgZm9yIExQSXMKPiAgIEFSTTogR0lDdjM6IGZvcndhcmQgcGVuZGluZyBMUElzIHRv IGd1ZXN0cwo+ICAgQVJNOiBHSUN2MzogZW5hYmxlIElUUyBhbmQgTFBJcyBvbiB0aGUgaG9zdAo+ ICAgQVJNOiB2R0lDdjM6IGhhbmRsZSB2aXJ0dWFsIExQSSBwZW5kaW5nIGFuZCBwcm9wZXJ0eSB0 YWJsZXMKPiAgIEFSTTogdkdJQ3YzOiBIYW5kbGUgZGlzYWJsZWQgTFBJcwo+ICAgQVJNOiB2R0lD djM6IGludHJvZHVjZSBiYXNpYyBJVFMgZW11bGF0aW9uIGJpdHMKPiAgIEFSTTogdklUUzogaW50 cm9kdWNlIHRyYW5zbGF0aW9uIHRhYmxlIHdhbGtzCj4gICBBUk06IHZJVFM6IGhhbmRsZSBDTEVB UiBjb21tYW5kCj4gICBBUk06IHZJVFM6IGhhbmRsZSBJTlQgY29tbWFuZAo+ICAgQVJNOiB2SVRT OiBoYW5kbGUgTUFQQyBjb21tYW5kCj4gICBBUk06IHZJVFM6IGhhbmRsZSBNQVBEIGNvbW1hbmQK PiAgIEFSTTogdklUUzogaGFuZGxlIE1BUFRJIGNvbW1hbmQKPiAgIEFSTTogdklUUzogaGFuZGxl IE1PVkkgY29tbWFuZAo+ICAgQVJNOiB2SVRTOiBoYW5kbGUgRElTQ0FSRCBjb21tYW5kCj4gICBB Uk06IHZJVFM6IGhhbmRsZSBJTlYgY29tbWFuZAo+ICAgQVJNOiB2SVRTOiBoYW5kbGUgSU5WQUxM IGNvbW1hbmQKPiAgIEFSTTogdklUUzogY3JlYXRlIGFuZCBpbml0aWFsaXplIHZpcnR1YWwgSVRT ZXMgZm9yIERvbTAKPiAgIEFSTTogdklUUzogY3JlYXRlIElUUyBzdWJub2RlcyBmb3IgRG9tMCBE VAo+ICAgQVJNOiB2R0lDOiBhZHZlcnRpc2luZyBMUEkgc3VwcG9ydAo+Cj4gIHhlbi9hcmNoL2Fy bS9LY29uZmlnICAgICAgICAgICAgICB8ICAzMyArKwo+ICB4ZW4vYXJjaC9hcm0vTWFrZWZpbGUg ICAgICAgICAgICAgfCAgIDMgKwo+ICB4ZW4vYXJjaC9hcm0vZWZpL2VmaS1ib290LmggICAgICAg fCAgIDEgLQo+ICB4ZW4vYXJjaC9hcm0vZ2ljLXYzLWl0cy5jICAgICAgICAgfCA4MjUgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gIHhlbi9hcmNoL2FybS9naWMtdjMtbHBpLmMg ICAgICAgICB8IDQxNCArKysrKysrKysrKysrKysrKwo+ICB4ZW4vYXJjaC9hcm0vZ2ljLXYzLmMg ICAgICAgICAgICAgfCAgOTggKysrLQo+ICB4ZW4vYXJjaC9hcm0vZ2ljLmMgICAgICAgICAgICAg ICAgfCAgIDkgKy0KPiAgeGVuL2FyY2gvYXJtL3BoeXNkZXYuYyAgICAgICAgICAgIHwgIDIxICsK PiAgeGVuL2FyY2gvYXJtL3ZnaWMtdjMtaXRzLmMgICAgICAgIHwgOTI5ICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrCj4gIHhlbi9hcmNoL2FybS92Z2ljLXYzLmMgICAgICAg ICAgICB8IDM0NyArKysrKysrKysrKystLQo+ICB4ZW4vYXJjaC9hcm0vdmdpYy5jICAgICAgICAg ICAgICAgfCAgNjggKystCj4gIHhlbi9pbmNsdWRlL2FzbS1hcm0vYXRvbWljLmggICAgICB8ICAg NiArLQo+ICB4ZW4vaW5jbHVkZS9hc20tYXJtL2JpdG9wcy5oICAgICAgfCAgIDEgKwo+ICB4ZW4v aW5jbHVkZS9hc20tYXJtL2NhY2hlLmggICAgICAgfCAgIDQgKwo+ICB4ZW4vaW5jbHVkZS9hc20t YXJtL2RvbWFpbi5oICAgICAgfCAgMTQgKy0KPiAgeGVuL2luY2x1ZGUvYXNtLWFybS9naWMuaCAg ICAgICAgIHwgICA3ICsKPiAgeGVuL2luY2x1ZGUvYXNtLWFybS9naWNfdjNfZGVmcy5oIHwgIDcz ICsrLQo+ICB4ZW4vaW5jbHVkZS9hc20tYXJtL2dpY192M19pdHMuaCAgfCAyNDEgKysrKysrKysr Kwo+ICB4ZW4vaW5jbHVkZS9hc20tYXJtL2lycS5oICAgICAgICAgfCAgIDggKwo+ICB4ZW4vaW5j bHVkZS9hc20tYXJtL3ZnaWMuaCAgICAgICAgfCAgMzQgKysKPiAgMjAgZmlsZXMgY2hhbmdlZCwg MzA4OSBpbnNlcnRpb25zKCspLCA0NyBkZWxldGlvbnMoLSkKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0 IHhlbi9hcmNoL2FybS9naWMtdjMtaXRzLmMKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IHhlbi9hcmNo L2FybS9naWMtdjMtbHBpLmMKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IHhlbi9hcmNoL2FybS92Z2lj LXYzLWl0cy5jCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCB4ZW4vaW5jbHVkZS9hc20tYXJtL2dpY192 M19pdHMuaAo+Cj4gLS0KPiAyLjkuMAo+CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54 ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK