Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp1285661ybb; Wed, 8 Apr 2020 21:51:24 -0700 (PDT) X-Google-Smtp-Source: APiQypJkG0L+mMqwjnVXFS0ZrGT8ZMqCUUpmmmJ9XjsIOEMeIuPQBhknAAJXacGJODEzIo8NJ+7v X-Received: by 2002:a9d:6341:: with SMTP id y1mr8534060otk.40.1586407884149; Wed, 08 Apr 2020 21:51:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586407884; cv=none; d=google.com; s=arc-20160816; b=HfAVTidGF6rCRMQOVHNy+B9RretsgdtLjg4gpSED50TTeFEkIfDUgZ1mI6KDqh4yS+ lYjn3TsoTakiekI/f8FsgkBCUuhTuw3Bw6tOm66FmkhCidZOQAhsFjqvwGDCJORLYony xS0d/nQgxqelQcJQWDIQgM/lKv4PC+4oLFuG2/d70V1yDZqLiypANFienb3QQx3CX378 iDsWnamHqhG4I3JIv3PFjB8eD9pRvb85SYf6TDqAmaTxBqmTKPLE/g16JK+aSBsRCDUS Nqan1dAuK9L07d7hASrWw5dpOfjvq20osGbjV7KdKYwC0c37XhTV1FuZ67g/ukugw2Rg BYeg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-id:content-language:accept-language:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:cc:to:from :dkim-signature; bh=2a+QvJeEMgfgD8MYgpqL0txx98rA8ewZrzs/v7cLI4U=; b=zsFsJeipRRtk443h/hI/QaL691uuIIkv8XLNdCC9ac58yRyR5DuZkAloHUDbrKX77K PAeyRLagn0791t98x2Nm3yPMuhprO8DLg9A6OJwOMax1aaX/InCYCrTW0iswMoEYvszf FxB1cZ+Q5V/eCL5tsNfaO5XkxJqXXP4JwJtdqN41SOkNzdXQ8i7Qqwin97cZaLYMDKNW /fZLzCRIqSqcxr/Ah3O02ktYNhkGf7OnsNFdfIgxmeG5s51vLi2JabRaHHvxIdblcWnQ iW6uiPrxzOhkxfxbeDZuSgMBtsDmWZrAMxNSjMUiSesHz504CAEmjk69+cLT9UyxIC7B 3cTA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@alliedtelesis.co.nz header.s=mail181024 header.b=QtJEoauo; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=alliedtelesis.co.nz Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a11si2831274oib.154.2020.04.08.21.51.07; Wed, 08 Apr 2020 21:51:24 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@alliedtelesis.co.nz header.s=mail181024 header.b=QtJEoauo; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=alliedtelesis.co.nz Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725971AbgDIEu2 (ORCPT + 99 others); Thu, 9 Apr 2020 00:50:28 -0400 Received: from gate2.alliedtelesis.co.nz ([202.36.163.20]:44914 "EHLO gate2.alliedtelesis.co.nz" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725765AbgDIEu1 (ORCPT ); Thu, 9 Apr 2020 00:50:27 -0400 Received: from mmarshal3.atlnz.lc (mmarshal3.atlnz.lc [10.32.18.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by gate2.alliedtelesis.co.nz (Postfix) with ESMTPS id 3CE848066C; Thu, 9 Apr 2020 16:50:25 +1200 (NZST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alliedtelesis.co.nz; s=mail181024; t=1586407825; bh=2a+QvJeEMgfgD8MYgpqL0txx98rA8ewZrzs/v7cLI4U=; h=From:To:CC:Subject:Date:References:In-Reply-To; b=QtJEoauo9se31Krx156LMcL6r11M6YxhedYJLhgA9PrOq0hCfyrPc0NcUzwp8dUjR hRHNXGhcwbUo3UsqG0cDrI9X4cF+SApW8LTWBhEnQGqkNxXWlAH3SHEqDEhy8StevT 7NxC55ddIY7zTYmwRRj6y5crQoPeWnbpZVSPowAJVRfE7Y4L/izlzNEwL/IhyHpvEZ Mc6GvdRyhMrMblcyM761IXx9+AshhzFp1Jnu2R6dtBWQcP/NMfW9BUEsRIHvjjYYHL xVAmppUHq8gMuOS7gH2qGCuMShZeP61tUTB7/eD4u1H+4x6MRRJfhPn4PjXxlQHL/r eE7SUSh7tRYOw== Received: from svr-chch-ex1.atlnz.lc (Not Verified[10.32.16.77]) by mmarshal3.atlnz.lc with Trustwave SEG (v7,5,8,10121) id ; Thu, 09 Apr 2020 16:50:25 +1200 Received: from svr-chch-ex1.atlnz.lc (2001:df5:b000:bc8:409d:36f5:8899:92e8) by svr-chch-ex1.atlnz.lc (2001:df5:b000:bc8:409d:36f5:8899:92e8) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 9 Apr 2020 16:50:24 +1200 Received: from svr-chch-ex1.atlnz.lc ([fe80::409d:36f5:8899:92e8]) by svr-chch-ex1.atlnz.lc ([fe80::409d:36f5:8899:92e8%12]) with mapi id 15.00.1497.006; Thu, 9 Apr 2020 16:50:24 +1200 From: Chris Packham To: "jiaxun.yang@flygoat.com" , "f.fainelli@gmail.com" CC: "linux-kernel@vger.kernel.org" , "Hamish Martin" , "linux-mips@vger.kernel.org" , "devicetree@vger.kernel.org" Subject: Re: Dealing with holes in CPU address space Thread-Topic: Dealing with holes in CPU address space Thread-Index: AQHWDWSQGXFxFOrcR0ujeloVxC+pHKhuCuQAgADrvoCAAGz3gIAADTWA Date: Thu, 9 Apr 2020 04:50:23 +0000 Message-ID: References: <20200408152922.14f90ff3@flygoat-x1e> <2e10a19b6608a6c3413b52180c69500aa255a701.camel@alliedtelesis.co.nz> In-Reply-To: Accept-Language: en-NZ, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Evolution 3.28.5-0ubuntu0.18.04.1 x-ms-exchange-messagesentrepresentingtype: 1 x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.32.14.96] Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org T24gV2VkLCAyMDIwLTA0LTA4IGF0IDIxOjAzIC0wNzAwLCBGbG9yaWFuIEZhaW5lbGxpIHdyb3Rl Og0KPiANCj4gT24gNC84LzIwMjAgMjozMyBQTSwgQ2hyaXMgUGFja2hhbSB3cm90ZToNCj4gPiBP biBXZWQsIDIwMjAtMDQtMDggYXQgMTU6MjkgKzA4MDAsIEppYXh1biBZYW5nIHdyb3RlOg0KPiA+ ID4gT24gV2VkLCA4IEFwciAyMDIwIDA1OjE0OjIyICswMDAwDQo+ID4gPiBDaHJpcyBQYWNraGFt IDxDaHJpcy5QYWNraGFtQGFsbGllZHRlbGVzaXMuY28ubno+IHdyb3RlOg0KPiA+ID4gDQo+ID4g PiA+IEhpIEFsbCwNCj4gPiA+ID4gDQo+ID4gPiA+IEknbSB0cnlpbmcgdG8gcG9ydCBhbiBvbGQg QnJvYWRjb20gTUlQUyBDUFUgKEJDTTUzMDAzKSB0byBhDQo+ID4gPiA+IHNoaW55DQo+ID4gPiA+ IG5ldw0KPiA+ID4gPiBrZXJuZWwuIEkgaGF2ZSBzb21lIG9sZCBoaXN0b3JpYyBzb3VyY2UgZnJv bSBhIGxvbmcgZm9yZ290dGVuDQo+ID4gPiA+IEJyb2FkY29tDQo+ID4gPiA+IExESyBidXQgSSdk IHByZWZlciB0byBkbyB0aGluZ3MgdGhlIG1vZGVybiB3YXkgd2l0aCBkZXZpY2UtDQo+ID4gPiA+ IHRyZWVzLg0KPiA+ID4gPiANCj4gPiA+ID4gVGhlIHByb2JsZW0gSSd2ZSBiZWVuIGdyYXBwbGlu ZyB3aXRoIGlzIHRyeWluZyB0byBvcGVuIHVwDQo+ID4gPiA+IGFjY2VzcyB0bw0KPiA+ID4gPiBh bGwgb2YgdGhlIFJBTSBvbiB0aGUgYm9hcmQuIEl0IGhhcyA1MTJNQiBvZiBERFIyLiBUaGUgQ1BV IGhhcw0KPiA+ID4gPiB0d28NCj4gPiA+ID4gYXJlYXMgd2hlcmUgdGhpcyBhcHBlYXJzLiBUaGUg Zmlyc3QgMTI4TUIgaXMgZnJvbSAwIHRvDQo+ID4gPiA+IDB4MDdmZmZmZmYNCj4gPiA+ID4gdGhl DQo+ID4gPiA+IHNlY29uZCBhcmVhIGlzIGZyb20gMHg4ODAwMDAwMCB0byAweDlmZmZmZmZmLg0K PiA+ID4gPiANCj4gPiA+ID4gU29DIHBlcmlwaGVyYWxzIGFyZSBhdCAweDE4MDAwMDAwIGFuZCB0 aGVyZSBpcyBhbiBJTyB3aW5kb3cgZm9yDQo+ID4gPiA+IGZsYXNoDQo+ID4gPiA+IGF0IDB4MjAw MDAwMDAuDQo+ID4gPiA+IA0KPiA+ID4gPiBUaGUgb2xkIGNvZGUgaGFzIHNvbWUgY3VzdG9tIHRs YiBpbml0aWFsaXNhdGlvbiB0byBkZWFsIHdpdGgNCj4gPiA+ID4gdGhpcw0KPiA+ID4gPiBidXQN Cj4gPiA+ID4gSSBmaWd1cmVkIGl0IHNob3VsZCBiZSBwb3NzaWJsZSB3aXRoIHRoZSBmb2xsb3dp bmcgZHRzIHNuaXBwZXQuDQo+ID4gPiA+IA0KPiA+ID4gPiAgICAgICAgIG1lbW9yeUAwIHsNCj4g PiA+ID4gICAgICAgICAgICAgICAgIGRldmljZV90eXBlID0gIm1lbW9yeSI7DQo+ID4gPiA+ICAg ICAgICAgICAgICAgICByZWcgPSA8MHgwMDAwMDAwMCAweDA4MDAwMDAwDQo+ID4gPiA+ICAgICAg ICAgICAgICAgICAgICAgICAgMHg4ODAwMDAwMCAweDE4MDAwMDAwPjsNCj4gPiA+ID4gICAgICAg ICB9Ow0KPiA+ID4gPiANCj4gPiA+ID4gSSBlbmQgdXAgd2l0aCBvbmx5IDEyOE1CIGF2YWlsYWJs ZS4gVGhpcyBhcHBlYXJzIHRvIGJlDQo+ID4gPiA+IGJlY2F1c2UgdGhlIGRlZmF1bHQgSElHSE1F TV9TVEFSVCBvZiAweDIwMDAwMDAwIHN0b3BzIHRoZSByZXN0DQo+ID4gPiA+IGZyb20NCj4gPiA+ ID4gYmVpbmcgbWFkZSBhdmFpbGFibGUuIElmIEkgYWRkIGFuIG92ZXJyaWRlIG9mIEhJR0hNRU1f U1RBUlQgdG8NCj4gPiA+ID4gMHhmZmZmZmZmZiBJIHNlZW0gdG8gaGF2ZSB0aGUgZnVsbCA1MTJN QiBhdmFpYWJsZSBidXQgdGhlbiBJDQo+ID4gPiA+IGdldCBhDQo+ID4gPiA+IGtlcm5lbCBwYW5p Yw0KPiA+ID4gDQo+ID4gPiBIaSwNCj4gPiA+IA0KPiA+ID4gSGF2ZSB5b3UgdHJpZWQgdG8gZW5h YmxlIENPTkZJR19ISUdITUVNPw0KPiA+ID4gDQo+ID4gDQo+ID4gSSBoYXZlIGJ1dCB0aGF0IGRp ZG4ndCBzZWVtIHRvIGhlbHAuIEFzIEkgdW5kZXJzdGFuZCBpdCBISUdITUVNIGlzDQo+ID4gaW50 ZW5kZWQgZm9yIHNpdHVhdGlvbnMgd2hlbiB5b3UgaGF2ZSBtb3JlIHBoeXNpY2FsIFJBTSB0aGF0 IGNhbiBiZQ0KPiA+IGFkZHJlc3NlZCAoZS5nLiA+NEdCIG9uIGEgMzItYml0IHN5c3RlbSkuDQo+ IA0KPiBPbiBNSVBTIHlvdSBtYXkgaGF2ZSB0byBlbmFibGUgSElHSE1FTSBhcyBzb29uIGFzIHlv dSBydW4gb3V0IG9mDQo+IHZpcnR1YWwNCj4ga2VybmVsIGFkZHJlc3Mgc3BhY2UgdG8gbWFwIHRo ZSBlbnRpcmUgYW1vdW50IG9mIG1lbW9yeSB0aGF0IGlzDQo+IHBvcHVsYXRlZCBBRkFJQ1QuIFRo ZSBrZXJuZWwgaGFzIGEgbGl0dGxlIHVuZGVyIDFHQiBvZiB2aXJ0dWFsDQo+IGFkZHJlc3MNCj4g c3BhY2UgdGhhdCBjYW4gYmUgbWFwcGVkIHZpYSB0aGUgVExCIHNpbmNlIHRoZSBmaXJzdCA1MTJN QiBhcmUNCj4gb2NjdXBpZWQNCj4gYnkgS1NFRzAvMS4NCj4gDQoNCk15IGFkdmVudHVyZXMgdGh1 cyBmYXIgd2l0aCBISUdITUVNIGhhdmUgZ290IGFzIGZhciBhcw0KDQogIFRoaXMgcHJvY2Vzc29y IGRvZXNuJ3Qgc3VwcG9ydCBoaWdobWVtLiAyNDkwMzY4ayBoaWdobWVtIGlnbm9yZWQNCg0KV2hp Y2ggSSB0aGluayBoYXMgc29tZXRoaW5nIHRvIGRvIHdpdGggdGhlIG1heF9sb3dfcGZuIGFuZCBo aWdoZW5kX3Bmbg0KYmVpbmcgZGlmZmVyZW50Lg0KDQoNCj4gPiANCj4gPiA+ID4gDQo+ID4gPiA+ ICAgQ1BVIDAgVW5hYmxlIHRvIGhhbmRsZSBrZXJuZWwgcGFnaW5nIHJlcXVlc3QgYXQgdmlydHVh bA0KPiA+ID4gPiBhZGRyZXNzDQo+ID4gPiA+IDFmYzAwMDAwLCBlcGMgPT0gODAwMTY3YjgsIHJh ID09IDgwMGUyODYwDQo+ID4gPiA+IA0KPiA+ID4gPiAweDFmYzAwMDAwIGlzIGluIHRoZSByYW5n ZSB3aGVyZSB0aGUgU29DIHBlcmlwaGVyYWxzIGFyZSBzbyBJJ20NCj4gPiA+ID4gdGhpbmtpbmcg dGhhdCBpcyB0aGUgcHJvYmxlbS4gQnV0IHRoZW4gYWdhaW4gdGhhdCBpcyBhIHZpcnR1YWwNCj4g PiA+ID4gYWRkcmVzcw0KPiA+ID4gPiBzbyBtYXliZSBpdCdzIGp1c3QgYSBjby1pbmNpZGVuY2Uu DQo+ID4gPiANCj4gPiA+IDB4MWZjMDAwMDAgc2hvdWxkIGJlIHRoZSBCb290IFJPTSdzIHBoeXNp Y2FsIGFkZHJlc3MuIFByb2JhYmx5DQo+ID4gPiB5b3UNCj4gPiA+IGZvcmdvdCB0byBjb252ZXJ0 IGl0IGludG8gdmlydHVhbCBhZGRyZXNzIGluIHlvdXIgcGxhdGZvcm0gY29kZT8NCj4gPiANCj4g PiBZZXMgdGhhdCdzIHJpZ2h0IGl0J3MgdGhlIGJvb3Ryb21zIFBBLiBJJ20gbm90IGludGl0ZW50 aW9uYWxseQ0KPiA+IGRvaW5nDQo+ID4gYW55dGhpbmcgd2l0aCBpdCBidXQgbWF5YmUgdGhhdCdz IHRoZSBwcm9ibGVtLg0KPiANCj4gSWYgeW91IHdlcmUgYWNjZXNzaW5nIHRoaXMgYXMgYSB2aXJ0 dWFsIGFkZHJlc3MgdGhlbiBpdCB3b3VsZCBiZQ0KPiBlaXRoZXINCj4gdmlhIEtTRUcwLzEgYW5k IHRoZSBhZGRyZXNzZXMgd291bGQgYmUgMHgxZmMwXzAwMDAgKyAweDgwMDBfMDAwMCBvcg0KPiAw eDFmYzBfMDAwMCArIDB4YTAwMF8wMDAwIGJ1dCBoZXJlIGl0IGxvb2tzIGxpa2UgdGhlIHJhdyBw aHlzaWNhbA0KPiBhZGRyZXNzIGlzIGJlaW5nIGFjY2Vzc2VkIHdoaWNoIHN1Z2dlc3RzIHRoZSBU TEIgaXMgaW5jb3JyZWN0bHkNCj4gcHJvZ3JhbW1lZCBzb21laG93Lg0KPiANCj4gPiANCj4gPiA+ IA0KPiA+ID4gQ2hlY2sgdGhlIEVQQyBvZiBleGNlcHRpb24gaW4gdm1saW51eCB3aXRoIGFkZHIy bGluZSBtYXkgaGVscC4NCj4gPiA+IChEb24ndA0KPiA+ID4gZm9yZ2V0IHRvIGNvbXBpbGUgeW91 ciBrZXJuZWwgd2l0aCBkZWJ1Z2luZm8pLiANCj4gPiA+IA0KPiA+IA0KPiA+IFRoZSBmdWxsIHBh bmljIGlzDQo+ID4gDQo+ID4gQ1BVIDAgVW5hYmxlIHRvIGhhbmRsZSBrZXJuZWwgcGFnaW5nIHJl cXVlc3QgYXQgdmlydHVhbCBhZGRyZXNzDQo+ID4gMWZjMDAwMDAsIGVwYyA9PSA4MDAxNjdiOCwg cmEgPT0NCj4gPiA4MDBlMjg2MCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgIA0KPiA+IE9v cHNbIzFdOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+IENQVTogMCBQSUQ6IDAgQ29tbTogc3dhcHBl ciBOb3QgdGFpbnRlZCA1LjUuMC1hdDENCj4gPiAjNDYgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0K PiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DQo+ID4gJCAwICAgOiAwMDAwMDAwMCAwMDAwMDAwMSAwMDAwMDAwMQ0KPiA+IDgwN2U0MjcwICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Cj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICANCj4gPiAkIDQgICA6IDFmYzAw MDAwIDAwMDAwMDAwIDFmYzAwZjgwDQo+ID4gMDAwMDAwMDEgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4g PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDQo+ID4gIA0KPiA+ICQgOCAgIDogODNlNTJhMDAgODNlNTJhMjQgODA3ZjYy OGMNCj4gPiA4MDgwZmEwMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAg DQo+ID4gJDEyICAgOiBmZmZmZmZmZiAwMDAwMDAwMSAwMDAwMDAwYg0KPiA+IGZmZmZmZmZmICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Cj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICANCj4gPiAkMTYgICA6IDgzZTUy YTIwIDgwMDAwMDAwIDgwODcwMDAwDQo+ID4gODNlNTJhMDAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4g PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDQo+ID4gIA0KPiA+ICQyMCAgIDogODA4MGZkZDQgODA3ZGRlMDAgMDAwMDAw MDANCj4gPiA4MDgwZjliYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAg DQo+ID4gJDI0ICAgOiA4MDgwZmI2OA0KPiA+IGZmZmZmZjdmICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQo+ ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAgICANCj4gPiAkMjggICA6IDgwN2Rj MDAwIDgwN2RkZDM4IDgzZTUyYTAwDQo+ID4gODAwZTI4NjAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4g PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDQo+ID4gIA0KPiA+IEhpICAgIDoNCj4gPiAwMDAwMDAwMCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQo+ID4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DQo+ID4gTG8gICAgOg0KPiA+IDAwMDAwMDAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQo+ID4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIA0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiBlcGMgICA6IDgwMDE2 N2I4DQo+ID4gY2xlYXJfcGFnZSsweDE4LzB4MTI4ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQo+ID4g ICAgICAgICAgICAgICAgICAgIA0KPiA+IHJhICAgIDogODAwZTI4NjANCj4gPiBnZXRfcGFnZV9m cm9tX2ZyZWVsaXN0KzB4YTk0LzB4ZGQ0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAg DQo+ID4gU3RhdHVzOiAxMTAwMDAwMiAgICAgICAgS0VSTkVMDQo+ID4gRVhMICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgDQo+ID4gICAgICANCj4gPiBDYXVzZSA6IDQwODAw MDBjIChFeGNDb2RlDQo+ID4gMDMpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDQo+ID4gICAgICAgICAgIA0KPiA+IEJhZFZBIDoNCj4gPiAxZmMwMDAwMCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQo+ID4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg DQo+ID4gUHJJZCAgOiAwMDAxOTc0OSAoTUlQUw0KPiA+IDc0S2MpICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICANCj4gPiBNb2R1bGVzIGxpbmtl ZA0KPiA+IGluOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAg ICAgICAgICAgICAgICAgICAgIA0KPiA+IFByb2Nlc3Mgc3dhcHBlciAocGlkOiAwLCB0aHJlYWRp bmZvPShwdHJ2YWwpLCB0YXNrPShwdHJ2YWwpLA0KPiA+IHRscz0wMDAwMDAwMCkgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQo+ID4g Kkh3VExTOg0KPiA+IGUxOWY3ZDNhICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0K PiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiBTdGFjayA6IDgwN2UwMDAwIDgw N2RkZTk4IDgwODY3Y2Q4IDgwNzkxODE0IDAwMDAwMDAxIDgwNjg3OTc0DQo+ID4gODA3ZGRlMTgN Cj4gPiAwMDAwMDAwMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDQo+ID4gICAgICAgICA4MDdmNWVkMCA4MDdmNjI4YyA4MDdmNjI4YyA4MDgw ZmRkNCA4MDg3MDAwMCAwMDAwMDAwMQ0KPiA+IDgwN2UwMDAwDQo+ID4gMDAwMDAwNDQgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAg ICAgICAgMDAwMDAwNWMgODA3ZGRlMDAgMDAwMDAwMDAgMDAwMDAwMDEgODA4MTAwMDAgODA3NWE2 NjANCj4gPiA4MDg3MDAwMQ0KPiA+IDAwMDAwMDAwICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQo+ID4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAgIDAwMDAwMTAwIDAwMDAw MDAwIDgwN2UwMDAwIDAwMDAwMDAwIDAwMDAwMDAwIDAwMDAwMDAxDQo+ID4gODA4NjAwMDANCj4g PiA4MDg0OTJiNCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgDQo+ID4gICAgICAgICA4N2Q3NTYwOCA4MDBlMzAyOCAwMDAwMDEwMCAwMDAwMDAw MCAwMDAwMDAwMSA4MDA1OGMwOA0KPiA+IDgwODcwMDAwDQo+ID4gODA4NzAwMDAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAg ICAgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIA0KPiA+IENhbGwNCj4gPiBUcmFjZTogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQo+ID4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgDQo+ID4gWzw4MDAxNjdiOD5dDQo+ID4gY2xlYXJfcGFnZSsweDE4LzB4MTI4ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4g PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICANCj4gPiBbPDgwMGUyODYw Pl0NCj4gPiBnZXRfcGFnZV9mcm9tX2ZyZWVsaXN0KzB4YTk0LzB4ZGQ0ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAg ICAgICAgICAgICAgICAgICAgICAgIA0KPiA+IFs8ODAwZTMwMjg+XQ0KPiA+IF9fYWxsb2NfcGFn ZXNfbm9kZW1hc2srMHhmNC8weGJiOCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Cj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAgICAg ICAgDQo+ID4gWzw4MDBlM2IwOD5dDQo+ID4gX19nZXRfZnJlZV9wYWdlcysweDFjLzB4NTggICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4g PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICANCj4gPiBbPDgwMDEzNDMw Pl0NCj4gPiBzZXR1cF96ZXJvX3BhZ2VzKzB4M2MvMHhlNCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4gPiAg ICAgICAgICAgICAgICAgICAgICAgIA0KPiA+IFs8ODA4MjZlYWM+XQ0KPiA+IG1lbV9pbml0KzB4 NDAvMHg1MCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAN Cj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAgICAgICAg ICAgDQo+ID4gWzw4MDgyMTljMD5dDQo+ID4gc3RhcnRfa2VybmVsKzB4MjUwLzB4NTEwICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KPiA+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCj4g PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgDQo+ID4gICAgICAgICAgICAgICAgICAgICAgICANCj4gPiBDb2RlOiBjYzll MDA0MCAgY2M5ZTAwNjAgIGNjOWUwMDgwIDxhYzgwMDAwMD4NCj4gPiBhYzgwMDAwNCAgYWM4MDAw MDggIGFjODAwMDBjICAyNDg0MDAyMCAgYWM4MGZmZjAgIA0KPiA+IA0KPiA+IEkgdGhpbmsgdGhp cyBpcyBqdXN0IHRoZSBlYXJseSBzZXR1cCBvZiB0aGUgcGFnZXMuDQo+ID4gDQo+ID4gPiA+IA0K PiA+ID4gPiBBbnl3YXkgSSdkIHJlYWxseSBhcHByZWNpYXRlIGFueSBndWlkYW5jZSB0aGF0IGFu eW9uZSBjb3VsZA0KPiA+ID4gPiBwcm92aWRlDQo+ID4gPiA+IG9uDQo+ID4gPiA+IHRoaXMuIEV2 ZW4gaWYgaXQncyBqdXN0ICJnbyBsb29rIGF0IHRoaXMgU29DIi4NCj4gPiA+ID4gDQo+ID4gPiA+ IFRoYW5rcywNCj4gPiA+ID4gQ2hyaXMNCj4gPiA+ID4gDQo+ID4gPiA+IA0KPiA+ID4gDQo+ID4g PiAtLQ0KPiA+ID4gSmlheHVuIFlhbmcNCj4gDQo+IA0K