From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurentiu Tudor Subject: Re: [PATCH 00/21] SMMU enablement for NXP LS1043A and LS1046A Date: Wed, 19 Sep 2018 14:18:41 +0000 Message-ID: References: <20180919123613.15092-1-laurentiu.tudor@nxp.com> <7d7646dc-9d0b-013d-75d7-a6cb4453f41f@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <7d7646dc-9d0b-013d-75d7-a6cb4453f41f@arm.com> Content-Language: en-US Content-ID: <2366E6D61E47404991DA3CE9A2FD36D8@eurprd04.prod.outlook.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=m.gmane.org@lists.infradead.org To: Robin Murphy , "devicetree@vger.kernel.org" , "netdev@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" Cc: Roy Pledge , Leo Li , "shawnguo@kernel.org" , "davem@davemloft.net" , Madalin-cristian Bucur List-Id: devicetree@vger.kernel.org SGkgUm9iaW4sDQoNCk9uIDE5LjA5LjIwMTggMTY6MjUsIFJvYmluIE11cnBoeSB3cm90ZToNCj4g SGkgTGF1cmVudGl1LA0KPiANCj4gT24gMTkvMDkvMTggMTM6MzUsIGxhdXJlbnRpdS50dWRvckBu eHAuY29tIHdyb3RlOg0KPj4gRnJvbTogTGF1cmVudGl1IFR1ZG9yIDxsYXVyZW50aXUudHVkb3JA bnhwLmNvbT4NCj4+DQo+PiBUaGlzIHBhdGNoIHNlcmllcyBhZGRzIFNNTVUgc3VwcG9ydCBmb3Ig TlhQIExTMTA0M0EgYW5kIExTMTA0NkEgY2hpcHMNCj4+IGFuZCBjb25zaXN0cyBtb3N0bHkgaW4g aW1wb3J0YW50IGRyaXZlciBmaXhlcyBhbmQgdGhlIHJlcXVpcmVkIGRldmljZQ0KPj4gdHJlZSB1 cGRhdGVzLiBJdCB0b3VjaGVzIHNldmVyYWwgc3Vic3lzdGVtcyBhbmQgY29uc2lzdHMgb2YgdGhy ZWUgbWFpbg0KPj4gcGFydHM6DQo+PiDCoCAtIGNoYW5nZXMgaW4gc29jL2RyaXZlcnMvZnNsL3Fi bWFuIGRyaXZlcnMgYWRkaW5nIGlvbW11IG1hcHBpbmcgb2YNCj4+IMKgwqDCoCByZXNlcnZlZCBt ZW1vcnkgYXJlYXMsIGZpeGVzIGFuZCBkZWZlcmVkIHByb2JlIHN1cHBvcnQNCj4+IMKgIC0gY2hh bmdlcyBpbiBkcml2ZXJzL25ldC9ldGhlcm5ldC9mcmVlc2NhbGUvZHBhYV9ldGggZHJpdmVycw0K Pj4gwqDCoMKgIGNvbnNpc3RpbmcgaW4gbWlzYyBkbWEgbWFwcGluZyByZWxhdGVkIGZpeGVzIGFu ZCBwcm9iZSBvcmRlcmluZw0KPj4gwqAgLSBhZGRpdGlvbiBvZiB0aGUgYWN0dWFsIGFybSBzbW11 IGRldmljZSB0cmVlIG5vZGUgdG9nZXRoZXIgd2l0aA0KPj4gwqDCoMKgIHZhcmlvdXMgYWRqdXN0 bWVudHMgdG8gdGhlIGRldmljZSB0cmVlcw0KPj4NCj4+IFBlcmZvcm1hbmNlIGltcGFjdA0KPj4N Cj4+IMKgwqDCoMKgIFJ1bm5pbmcgaXBlcmYgYmVuY2htYXJrcyBpbiBhIGJhY2stdG8tYmFjayBz ZXR1cCAoYm90aCBzaWRlcw0KPj4gwqDCoMKgwqAgaGF2aW5nIHNtbXUgZW5hYmxlZCkgb24gYSAx MEdCcHMgcG9ydCBzaG93IGFuIGltcG9ydGFudA0KPj4gwqDCoMKgwqAgbmV0d29ya2luZyBwZXJm b3JtYW5jZSBkZWdyYWRhdGlvbiBvZiBhcm91bmQgJTQwICg5LjQ4R2Jwcw0KPj4gwqDCoMKgwqAg bGluZXJhdGUgdnMgNS40NUdicHMpLiBJZiB5b3UgbmVlZCBwZXJmb3JtYW5jZSBidXQgd2l0aG91 dA0KPj4gwqDCoMKgwqAgU01NVSBzdXBwb3J0IHlvdSBjYW4gdXNlICJpb21tdS5wYXNzdGhyb3Vn aD0xIiB0byBkaXNhYmxlDQo+PiDCoMKgwqDCoCBTTU1VLg0KPj4NCj4+IFVTQiBpc3N1ZSBhbmQg d29ya2Fyb3VuZA0KPj4NCj4+IMKgwqDCoMKgIFRoZXJlJ3MgYSBwcm9ibGVtIHdpdGggdGhlIHVz YiBjb250cm9sbGVycyBpbiB0aGVzZSBjaGlwcw0KPj4gwqDCoMKgwqAgZ2VuZXJhdGluZyBzbWFs bGVyLCA0MC1iaXQgd2lkZSBkbWEgYWRkcmVzc2VzIGluc3RlYWQgb2YgdGhlIDQ4LWJpdA0KPj4g wqDCoMKgwqAgc3VwcG9ydGVkIGF0IHRoZSBzbW11IGlucHV0LiBTbyB5b3UgZW5kIHVwIGluIGEg c2l0dWF0aW9uIHdoZXJlIHRoZQ0KPj4gwqDCoMKgwqAgc21tdSBpcyBtYXBwZWQgd2l0aCA0OC1i aXQgYWRkcmVzcyB0cmFuc2xhdGlvbnMsIGJ1dCB0aGUgZGV2aWNlDQo+PiDCoMKgwqDCoCBnZW5l cmF0ZXMgdHJhbnNhY3Rpb25zIHdpdGggY2xpcHBlZCA0MC1iaXQgYWRkcmVzc2VzLCB0aHVzIHNt bXUNCj4+IMKgwqDCoMKgIGNvbnRleHQgZmF1bHRzIGFyZSB0cmlnZ2VyZWQuIEkgZW5jb3VudGVy ZWQgYSBzaW1pbGFyIHNpdHVhdGlvbiBmb3INCj4+IMKgwqDCoMKgIG1tYyB0aGF0IEnCoCBtYW5h Z2VkIHRvIGZpeCBpbiBzb2Z0d2FyZSBbMV0gaG93ZXZlciBmb3IgVVNCIEkgZGlkIG5vdA0KPj4g wqDCoMKgwqAgZmluZCBhIHByb3BlciBwbGFjZSBpbiB0aGUgY29kZSB0byBhZGQgYSBzaW1pbGFy IGZpeC4gVGhlIG9ubHkNCj4+IMKgwqDCoMKgIHdvcmthcm91bmQgSSBmb3VuZCB3YXMgdG8gYWRk IHRoaXMga2VybmVsIHBhcmFtZXRlciB3aGljaCBsaW1pdHMgdGhlDQo+PiDCoMKgwqDCoCB1c2Ig ZG1hIHRvIDMyLWJpdCBzaXplOiAieGhjaS1oY2QucXVpcmtzPTB4ODAwMDAwIi4NCj4+IMKgwqDC oMKgIFRoaXMgd29ya2Fyb3VuZCBpZiBmYXIgZnJvbSBpZGVhbCwgc28gYW55IHN1Z2dlc3Rpb25z IGZvciBhIGNvZGUNCj4+IMKgwqDCoMKgIGJhc2VkIHdvcmthcm91bmQgaW4gdGhpcyBhcmVhIHdv dWxkIGJlIGdyZWF0bHkgYXBwcmVjaWF0ZWQuDQo+IA0KPiBJZiB5b3UgaGF2ZSBhIG5vbWluYWxs eS02NC1iaXQgZGV2aWNlIHdpdGggYSANCj4gbmFycm93ZXItdGhhbi10aGUtbWFpbi1pbnRlcmNv bm5lY3QgbGluayBpbiBmcm9udCBvZiBpdCwgdGhhdCBzaG91bGQgDQo+IGFscmVhZHkgYmUgZml4 ZWQgaW4gNC4xOS1yYyBieSBidXNfZG1hX21hc2sgcGlja2luZyB1cCBEVCBkbWEtcmFuZ2VzLCAN Cj4gcHJvdmlkZWQgdGhlIGludGVyY29ubmVjdCBoaWVyYXJjaHkgY2FuIGJlIGRlc2NyaWJlZCBh cHByb3ByaWF0ZWx5IChvciANCj4gYXQgbGVhc3QgbWFzc2FnZWQgc3VmZmljaWVudGx5IHRvIHNh dGlzZnkgdGhlIGJpbmRpbmcpLCBlLmcuOg0KPiANCj4gLyB7DQo+ICDCoMKgwqDCoC4uLg0KPiAN Cj4gIMKgwqDCoMKgc29jIHsNCj4gIMKgwqDCoMKgwqDCoMKgIHJhbmdlczsNCj4gIMKgwqDCoMKg wqDCoMKgIGRtYS1yYW5nZXMgPSA8MCAwIDEwMDAwIDA+Ow0KPiANCj4gIMKgwqDCoMKgwqDCoMKg IGRldl80OGJpdCB7IC4uLiB9Ow0KPiANCj4gIMKgwqDCoMKgwqDCoMKgIHBlcmlwaF9idXMgew0K PiAgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByYW5nZXM7DQo+ICDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIGRtYS1yYW5nZXMgPSA8MCAwIDEwMCAwPjsNCj4gDQo+ICDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIGRldl80MGJpdCB7IC4uLiB9Ow0KPiAgwqDCoMKgwqDCoMKgwqAgfTsNCj4gIMKgwqDCoMKg fTsNCj4gfTsNCj4gDQo+IGFuZCBpZiB0aGF0IGZhaWxzIHRvIHdvcmsgYXMgZXhwZWN0ZWQgKGV4 Y2VwdCBmb3IgUENJIGhvc3RzIHdoZXJlIA0KPiBoYW5kbGluZyBkbWEtcmFuZ2VzIHByb3Blcmx5 IHN0aWxsIG5lZWRzIHNvcnRpbmcgb3V0KSwgcGxlYXNlIGRvIGxldCB1cyANCj4ga25vdyA7KQ0K PiANCg0KSnVzdCB0byBjb25maXJtLCBJcyB0aGlzIFsxXSB0aGUgY2hhbmdlIEkgd2FzIHN1cHBv c2VkIHRvIHRlc3Q/DQpCZWNhdXNlIGlmIHNvLCBJJ20gc3RpbGwgc2VlaW5nIGNvbnRleHQgZmF1 bHRzIFsyXSB3aXRoIHdoYXQgbG9va3MgbGlrZSANCmNsaXBwZWQgdG8gNDAtYml0cyBhZGRyZXNz ZXMuIDotKA0KSUlSQywgdGhlIHVzYiBzdWJzeXN0ZW0gZXhwbGljaXRseSBzZXQgNjQtYml0IGRt YSBtYXNrcyB3aGljaCBpbiB0dXJuIA0Kd2lsbCBiZSBsaW1pdGVkIHRvIHRoZSBTTU1VIGlucHV0 IHNpemUgb2YgNDgtYml0LiBXb24ndCB0aGF0IG92ZXJ3cml0ZSANCnRoZSBkZWZhdWx0IGRtYSBt YXNrIGRlcml2ZWQgZnJvbSBkbWEtcmFuZ2VzPw0KDQotLS0NCkJlc3QgUmVnYXJkcywgTGF1cmVu dGl1DQoNClsxXSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpkaWZmIC0tZ2l0IGEvYXJjaC9hcm02NC9ib290L2R0cy9m cmVlc2NhbGUvZnNsLWxzMTA0NmEuZHRzaSANCmIvYXJjaC9hcm02NC9ib290L2R0cy9mcmVlc2Nh bGUvZnNsLWxzMTA0NmEuZHRzaQ0KaW5kZXggM2JkZWEwNDcwZjY5Li5hMjE0YzNkZjM3ZmQgMTAw NjQ0DQotLS0gYS9hcmNoL2FybTY0L2Jvb3QvZHRzL2ZyZWVzY2FsZS9mc2wtbHMxMDQ2YS5kdHNp DQorKysgYi9hcmNoL2FybTY0L2Jvb3QvZHRzL2ZyZWVzY2FsZS9mc2wtbHMxMDQ2YS5kdHNpDQpA QCAtNjEyLDYgKzYxMiw3IEBADQogICAgICAgICAgICAgICAgICAgICAgICAgY29tcGF0aWJsZSA9 ICJzbnBzLGR3YzMiOw0KICAgICAgICAgICAgICAgICAgICAgICAgIHJlZyA9IDwweDAgMHgyZjAw MDAwIDB4MCAweDEwMDAwPjsNCiAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcnJ1cHRzID0g PEdJQ19TUEkgNjAgSVJRX1RZUEVfTEVWRUxfSElHSD47DQorICAgICAgICAgICAgICAgICAgICAg ICBkbWEtcmFuZ2VzID0gPDB4MCAweDAgMHgwIDB4MCAweDEwMCAweDAwMDAwMDAwPjsNCiAgICAg ICAgICAgICAgICAgICAgICAgICBkcl9tb2RlID0gImhvc3QiOw0KICAgICAgICAgICAgICAgICAg ICAgICAgIHNucHMscXVpcmstZnJhbWUtbGVuZ3RoLWFkanVzdG1lbnQgPSA8MHgyMD47DQogICAg ICAgICAgICAgICAgICAgICAgICAgc25wcyxkaXNfcnhkZXRfaW5wM19xdWlyazsNCkBAIC02MjEs NiArNjIyLDcgQEANCiAgICAgICAgICAgICAgICAgICAgICAgICBjb21wYXRpYmxlID0gInNucHMs ZHdjMyI7DQogICAgICAgICAgICAgICAgICAgICAgICAgcmVnID0gPDB4MCAweDMwMDAwMDAgMHgw IDB4MTAwMDA+Ow0KICAgICAgICAgICAgICAgICAgICAgICAgIGludGVycnVwdHMgPSA8R0lDX1NQ SSA2MSBJUlFfVFlQRV9MRVZFTF9ISUdIPjsNCisgICAgICAgICAgICAgICAgICAgICAgIGRtYS1y YW5nZXMgPSA8MHgwIDB4MCAweDAgMHgwIDB4MTAwIDB4MDAwMDAwMDA+Ow0KICAgICAgICAgICAg ICAgICAgICAgICAgIGRyX21vZGUgPSAiaG9zdCI7DQogICAgICAgICAgICAgICAgICAgICAgICAg c25wcyxxdWlyay1mcmFtZS1sZW5ndGgtYWRqdXN0bWVudCA9IDwweDIwPjsNCiAgICAgICAgICAg ICAgICAgICAgICAgICBzbnBzLGRpc19yeGRldF9pbnAzX3F1aXJrOw0KQEAgLTYzMCw2ICs2MzIs NyBAQA0KICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBhdGlibGUgPSAic25wcyxkd2MzIjsN CiAgICAgICAgICAgICAgICAgICAgICAgICByZWcgPSA8MHgwIDB4MzEwMDAwMCAweDAgMHgxMDAw MD47DQogICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJydXB0cyA9IDxHSUNfU1BJIDYzIElS UV9UWVBFX0xFVkVMX0hJR0g+Ow0KKyAgICAgICAgICAgICAgICAgICAgICAgZG1hLXJhbmdlcyA9 IDwweDAgMHgwIDB4MCAweDAgMHgxMDAgMHgwMDAwMDAwMD47DQogICAgICAgICAgICAgICAgICAg ICAgICAgZHJfbW9kZSA9ICJob3N0IjsNCiAgICAgICAgICAgICAgICAgICAgICAgICBzbnBzLHF1 aXJrLWZyYW1lLWxlbmd0aC1hZGp1c3RtZW50ID0gPDB4MjA+Ow0KICAgICAgICAgICAgICAgICAg ICAgICAgIHNucHMsZGlzX3J4ZGV0X2lucDNfcXVpcms7DQoNClsyXSAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KWyAgICAy LjA5MDU3N10geGhjaS1oY2QgeGhjaS1oY2QuMC5hdXRvOiB4SENJIEhvc3QgQ29udHJvbGxlcg0K WyAgICAyLjA5NjA2NF0geGhjaS1oY2QgeGhjaS1oY2QuMC5hdXRvOiBuZXcgVVNCIGJ1cyByZWdp c3RlcmVkLCANCmFzc2lnbmVkIGJ1cyBudW1iZXIgMg0KWyAgICAyLjEwMzcyMF0geGhjaS1oY2Qg eGhjaS1oY2QuMC5hdXRvOiBIb3N0IHN1cHBvcnRzIFVTQiAzLjAgIFN1cGVyU3BlZWQNClsgICAg Mi4xMTAzNDZdIGFybS1zbW11IDkwMDAwMDAuaW9tbXU6IFVuaGFuZGxlZCBjb250ZXh0IGZhdWx0 OiANCmZzcj0weDQwMiwgaW92YT0weGZmZmZmZmIwMDAsIGZzeW5yPTB4MWIwMDAwLCBjYj0zDQpb ICAgIDIuMTIwNDQ5XSB1c2IgdXNiMjogV2UgZG9uJ3Qga25vdyB0aGUgYWxnb3JpdGhtcyBmb3Ig TFBNIGZvciB0aGlzIA0KaG9zdCwgZGlzYWJsaW5nIExQTS4NClsgICAgMi4xMjg3MTddIGh1YiAy LTA6MS4wOiBVU0IgaHViIGZvdW5kDQpbICAgIDIuMTMyNDczXSBodWIgMi0wOjEuMDogMSBwb3J0 IGRldGVjdGVkDQpbICAgIDIuMTM2NTI3XSB4aGNpLWhjZCB4aGNpLWhjZC4xLmF1dG86IHhIQ0kg SG9zdCBDb250cm9sbGVyDQpbICAgIDIuMTQyMDE0XSB4aGNpLWhjZCB4aGNpLWhjZC4xLmF1dG86 IG5ldyBVU0IgYnVzIHJlZ2lzdGVyZWQsIA0KYXNzaWduZWQgYnVzIG51bWJlciAzDQpbICAgIDIu MTQ5NzQ3XSB4aGNpLWhjZCB4aGNpLWhjZC4xLmF1dG86IGhjYyBwYXJhbXMgMHgwMjIwZjY2ZCBo Y2kgDQp2ZXJzaW9uIDB4MTAwIHF1aXJrcyAweDAwMDAwMDAwMDIwMTAwMTANClsgICAgMi4xNTkx NDldIHhoY2ktaGNkIHhoY2ktaGNkLjEuYXV0bzogaXJxIDUwLCBpbyBtZW0gMHgwMzAwMDAwMA0K WyAgICAyLjE2NTI4NF0gaHViIDMtMDoxLjA6IFVTQiBodWIgZm91bmQNClsgICAgMi4xNjkwMzld IGh1YiAzLTA6MS4wOiAxIHBvcnQgZGV0ZWN0ZWQNClsgICAgMi4xNzMwNTFdIHhoY2ktaGNkIHho Y2ktaGNkLjEuYXV0bzogeEhDSSBIb3N0IENvbnRyb2xsZXINClsgICAgMi4xNzg1MzZdIHhoY2kt aGNkIHhoY2ktaGNkLjEuYXV0bzogbmV3IFVTQiBidXMgcmVnaXN0ZXJlZCwgDQphc3NpZ25lZCBi dXMgbnVtYmVyIDQNClsgICAgMi4xODYxOTNdIHhoY2ktaGNkIHhoY2ktaGNkLjEuYXV0bzogSG9z dCBzdXBwb3J0cyBVU0IgMy4wICBTdXBlclNwZWVkDQpbICAgIDIuMTkyODA5XSBhcm0tc21tdSA5 MDAwMDAwLmlvbW11OiBVbmhhbmRsZWQgY29udGV4dCBmYXVsdDogDQpmc3I9MHg0MDIsIGlvdmE9 MHhmZmZmZmZiMDAwLCBmc3lucj0weDFmMDAwMCwgY2I9NA0KWyAgICAyLjE5MjgyMl0gdXNiIHVz YjQ6IFdlIGRvbid0IGtub3cgdGhlIGFsZ29yaXRobXMgZm9yIExQTSBmb3IgdGhpcyANCmhvc3Qs IGRpc2FibGluZyBMUE0uDQpbICAgIDIuMjExMTQxXSBodWIgNC0wOjEuMDogVVNCIGh1YiBmb3Vu ZA0KWyAgICAyLjIxNDg5Nl0gaHViIDQtMDoxLjA6IDEgcG9ydCBkZXRlY3RlZA0KWyAgICAyLjIx ODkzNV0geGhjaS1oY2QgeGhjaS1oY2QuMi5hdXRvOiB4SENJIEhvc3QgQ29udHJvbGxlcg0KWyAg ICAyLjIyNDQyNV0geGhjaS1oY2QgeGhjaS1oY2QuMi5hdXRvOiBuZXcgVVNCIGJ1cyByZWdpc3Rl cmVkLCANCmFzc2lnbmVkIGJ1cyBudW1iZXIgNQ0KWyAgICAyLjIzMjE1M10geGhjaS1oY2QgeGhj aS1oY2QuMi5hdXRvOiBoY2MgcGFyYW1zIDB4MDIyMGY2NmQgaGNpIA0KdmVyc2lvbiAweDEwMCBx dWlya3MgMHgwMDAwMDAwMDAyMDEwMDEwDQpbICAgIDIuMjQxNTYyXSB4aGNpLWhjZCB4aGNpLWhj ZC4yLmF1dG86IGlycSA1MSwgaW8gbWVtIDB4MDMxMDAwMDANClsgICAgMi4yNDc2OTRdIGh1YiA1 LTA6MS4wOiBVU0IgaHViIGZvdW5kDQpbICAgIDIuMjUxNDQ5XSBodWIgNS0wOjEuMDogMSBwb3J0 IGRldGVjdGVkDQpbICAgIDIuMjU1NDU4XSB4aGNpLWhjZCB4aGNpLWhjZC4yLmF1dG86IHhIQ0kg SG9zdCBDb250cm9sbGVyDQpbICAgIDIuMjYwOTQ1XSB4aGNpLWhjZCB4aGNpLWhjZC4yLmF1dG86 IG5ldyBVU0IgYnVzIHJlZ2lzdGVyZWQsIA0KYXNzaWduZWQgYnVzIG51bWJlciA2DQpbICAgIDIu MjY4NjAxXSB4aGNpLWhjZCB4aGNpLWhjZC4yLmF1dG86IEhvc3Qgc3VwcG9ydHMgVVNCIDMuMCAg U3VwZXJTcGVlZA0KWyAgICAyLjI3NTIxOF0gYXJtLXNtbXUgOTAwMDAwMC5pb21tdTogVW5oYW5k bGVkIGNvbnRleHQgZmF1bHQ6IA0KZnNyPTB4NDAyLCBpb3ZhPTB4ZmZmZmZmYjAwMCwgZnN5bnI9 MHgxMTAwMDAsIGNiPTUNClsgICAgMi4yNzUyMzBdIHVzYiB1c2I2OiBXZSBkb24ndCBrbm93IHRo ZSBhbGdvcml0aG1zIGZvciBMUE0gZm9yIHRoaXMgDQpob3N0LCBkaXNhYmxpbmcgTFBNLg0KDQoN Cj4+IFRoZSBwYXRjaCBzZXQgaXMgYmFzZWQgb24gbmV0LW5leHQgc28sIGlmIGdlbmVyYWxseSBh Z3JlZWQsIEknZCBzdWdnZXN0DQo+PiB0byBnZXQgdGhlIHBhdGNoZXMgdGhyb3VnaCB0aGUgbmV0 ZGV2IHRyZWUgYWZ0ZXIgZ2V0dGluZyBhbGwgdGhlIEFja3MuDQo+Pg0KPj4gWzFdIA0KPj4gaHR0 cHM6Ly9lbWVhMDEuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUz QSUyRiUyRnBhdGNod29yay5rZXJuZWwub3JnJTJGcGF0Y2glMkYxMDUwNjYyNyUyRiZhbXA7ZGF0 YT0wMiU3QzAxJTdDbGF1cmVudGl1LnR1ZG9yJTQwbnhwLmNvbSU3QzYzYzRlMWRmYzEyNjQ4OGVi NGJhMDhkNjFlMzM2NjA3JTdDNjg2ZWExZDNiYzJiNGM2ZmE5MmNkOTljNWMzMDE2MzUlN0MwJTdD MCU3QzYzNjcyOTYwMzQ0NzYwMzAzOSZhbXA7c2RhdGE9WGhqT1g5YUxnb2UlMkJTVEJnWnp0djZ6 Q3owdk1lYlNYVyUyRm5iMlFjRDVzaFklM0QmYW1wO3Jlc2VydmVkPTAgDQo+Pg0KPj4NCj4+IExh dXJlbnRpdSBUdWRvciAoMjEpOg0KPj4gwqDCoCBzb2MvZnNsL3FtYW46IGZpeHVwIGxpb2RucyBv bmx5IG9uIHBwYyB0YXJnZXRzDQo+PiDCoMKgIHNvYy9mc2wvYm1hbjogbWFwIEZCUFIgYXJlYSBp biB0aGUgaW9tbXUNCj4+IMKgwqAgc29jL2ZzbC9xbWFuOiBtYXAgRlFEIGFuZCBQRkRSIGFyZWFz IGluIHRoZSBpb21tdQ0KPj4gwqDCoCBzb2MvZnNsL3FtYW4tcG9ydGFsOiBtYXAgQ0VOQSBhcmVh IGluIHRoZSBpb21tdQ0KPj4gwqDCoCBzb2MvZnNsL3FibWFuOiBhZGQgQVBJcyB0byByZXRyaWV2 ZSB0aGUgcHJvYmluZyBzdGF0dXMNCj4+IMKgwqAgc29jL2ZzbC9xbWFuX3BvcnRhbHM6IGRlZmVy IHByb2JlIGFmdGVyIHFtYW4ncyBwcm9iZQ0KPj4gwqDCoCBzb2MvZnNsL2JtYW5fcG9ydGFsczog ZGVmZXIgcHJvYmUgYWZ0ZXIgYm1hbidzIHByb2JlDQo+PiDCoMKgIHNvYy9mc2wvcWJtYW5fcG9y dGFsczogYWRkIEFQSXMgdG8gcmV0cmlldmUgdGhlIHByb2Jpbmcgc3RhdHVzDQo+PiDCoMKgIGZz bC9mbWFuOiBiYWNrdXAgYW5kIHJlc3RvcmUgSUNJRCByZWdpc3RlcnMNCj4+IMKgwqAgZnNsL2Zt YW46IGFkZCBBUEkgdG8gZ2V0IHRoZSBkZXZpY2UgYmVoaW5kIGEgZm1hbiBwb3J0DQo+PiDCoMKg IGRwYWFfZXRoOiBkZWZlciBwcm9iaW5nIGFmdGVyIHFibWFuDQo+PiDCoMKgIGRwYWFfZXRoOiBi YXNlIGRtYSBtYXBwaW5ncyBvbiB0aGUgZm1hbiByeCBwb3J0DQo+PiDCoMKgIGRwYWFfZXRoOiBm aXggaW92YSBoYW5kbGluZyBmb3IgY29udGlndW91cyBmcmFtZXMNCj4+IMKgwqAgZHBhYV9ldGg6 IGZpeCBpb3ZhIGhhbmRsaW5nIGZvciBzZyBmcmFtZXMNCj4+IMKgwqAgZHBhYV9ldGg6IGZpeCBT RyBmcmFtZSBjbGVhbnVwDQo+PiDCoMKgIGFybTY0OiBkdHM6IGxzMTA0NmE6IGFkZCBzbW11IG5v ZGUNCj4+IMKgwqAgYXJtNjQ6IGR0czogbHMxMDQzYTogYWRkIHNtbXUgbm9kZQ0KPj4gwqDCoCBh cm02NDogZHRzOiBsczEwNHhhOiBzZXQgbWFzayB0byBkcm9wIFRCVSBJRCBmcm9tIFN0cmVhbUlE DQo+PiDCoMKgIGFybTY0OiBkdHM6IGxzMTA0eDogYWRkIG1pc3NpbmcgZG1hIHJhbmdlcyBwcm9w ZXJ0eQ0KPj4gwqDCoCBhcm02NDogZHRzOiBsczEwNHg6IGFkZCBpb21tdS1tYXAgdG8gcGNpIGNv bnRyb2xsZXJzDQo+PiDCoMKgIGFybTY0OiBkdHM6IGxzMTA0eDogbWFrZSBkbWEtY29oZXJlbnQg Z2xvYmFsIHRvIHRoZSBTb0MNCj4+DQo+PiDCoCAuLi4vYXJtNjQvYm9vdC9kdHMvZnJlZXNjYWxl L2ZzbC1sczEwNDNhLmR0c2kgfMKgIDUyICsrKysrKy0NCj4+IMKgIC4uLi9hcm02NC9ib290L2R0 cy9mcmVlc2NhbGUvZnNsLWxzMTA0NmEuZHRzaSB8wqAgNDggKysrKysrKw0KPj4gwqAgLi4uL25l dC9ldGhlcm5ldC9mcmVlc2NhbGUvZHBhYS9kcGFhX2V0aC5jwqDCoMKgIHwgMTM2ICsrKysrKysr KysrKy0tLS0tLQ0KPj4gwqAgZHJpdmVycy9uZXQvZXRoZXJuZXQvZnJlZXNjYWxlL2ZtYW4vZm1h bi5jwqDCoMKgIHzCoCAzNSArKysrLQ0KPj4gwqAgZHJpdmVycy9uZXQvZXRoZXJuZXQvZnJlZXNj YWxlL2ZtYW4vZm1hbi5owqDCoMKgIHzCoMKgIDQgKw0KPj4gwqAgLi4uL25ldC9ldGhlcm5ldC9m cmVlc2NhbGUvZm1hbi9mbWFuX3BvcnQuY8KgwqAgfMKgIDE0ICsrDQo+PiDCoCAuLi4vbmV0L2V0 aGVybmV0L2ZyZWVzY2FsZS9mbWFuL2ZtYW5fcG9ydC5owqDCoCB8wqDCoCAyICsNCj4+IMKgIGRy aXZlcnMvc29jL2ZzbC9xYm1hbi9ibWFuX2Njc3IuY8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8 wqAgMjMgKysrDQo+PiDCoCBkcml2ZXJzL3NvYy9mc2wvcWJtYW4vYm1hbl9wb3J0YWwuY8KgwqDC oMKgwqDCoMKgwqDCoMKgIHzCoCAyMCArKy0NCj4+IMKgIGRyaXZlcnMvc29jL2ZzbC9xYm1hbi9x bWFuX2Njc3IuY8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqAgMzAgKysrKw0KPj4gwqAgZHJp dmVycy9zb2MvZnNsL3FibWFuL3FtYW5fcG9ydGFsLmPCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqAg MzUgKysrKysNCj4+IMKgIGluY2x1ZGUvc29jL2ZzbC9ibWFuLmjCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoCAxNiArKysNCj4+IMKgIGluY2x1ZGUvc29j L2ZzbC9xbWFuLmjCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IHzCoCAxNyArKysNCj4+IMKgIDEzIGZpbGVzIGNoYW5nZWQsIDM3OSBpbnNlcnRpb25zKCspLCA1 MyBkZWxldGlvbnMoLSkNCj4+Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxA bGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK