From mboxrd@z Thu Jan 1 00:00:00 1970 From: Xusangdi Subject: RE: chooseleaf may cause some unnecessary pg migrations Date: Fri, 16 Oct 2015 06:43:56 +0000 Message-ID: References: <6F3FA899187F0043BA1827A69DA2F7CC03632F6C@shsmsx102.ccr.corp.intel.com> <6F3FA899187F0043BA1827A69DA2F7CC0363300C@shsmsx102.ccr.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from smtp.h3c.com ([60.191.123.56]:18770 "EHLO h3cmg01-ex.h3c.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1751098AbbJPGnX (ORCPT ); Fri, 16 Oct 2015 02:43:23 -0400 In-Reply-To: <6F3FA899187F0043BA1827A69DA2F7CC0363300C@shsmsx102.ccr.corp.intel.com> Content-Language: zh-CN Sender: ceph-devel-owner@vger.kernel.org List-ID: To: "Chen, Xiaoxi" Cc: "ceph-devel@vger.kernel.org" U29ycnkgaWYgSSBkaWRuJ3Qgc3RhdGUgdGhhdCBjbGVhcmx5Lg0KDQpMaWtlIHlvdSBkaWQsIHRo ZSBwZXJmb3JtYW5jZSBpcyBtZWFzdXJlZCBieSB0aGUgbnVtYmVyIG9mIFBHcyByZW1hcHBlZCBi ZXR3ZWVuIHRoZSBvcmlnaW5hbCBzdGF0ZQ0KYW5kIGFmdGVyIHNvbWUgT1NEcyBhcmUgZG93biBh bmQgb3V0Lg0KDQpUaGUgZG93biBPU0RzIHdpbGwgYmUgbWFya2VkIG91dCBhZnRlciBhIHNob3J0 IHBlcmlvZCwgb3IgeW91IGNhbiBkbyBpdCBtYW51YWxseSB1c2luZyAnY2VwaCBvc2Qgb3V0JyBj b21tYW5kLg0KDQpUaGFua3MsDQotLS1TYW5nZGkNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2Ut LS0tLQ0KPiBGcm9tOiBDaGVuLCBYaWFveGkgW21haWx0bzp4aWFveGkuY2hlbkBpbnRlbC5jb21d DQo+IFNlbnQ6IEZyaWRheSwgT2N0b2JlciAxNiwgMjAxNSAyOjI2IFBNDQo+IFRvOiB4dXNhbmdk aSAxMTk3NiAoUkQpDQo+IENjOiBjZXBoLWRldmVsQHZnZXIua2VybmVsLm9yZw0KPiBTdWJqZWN0 OiBSRTogY2hvb3NlbGVhZiBtYXkgY2F1c2Ugc29tZSB1bm5lY2Vzc2FyeSBwZyBtaWdyYXRpb25z DQo+IA0KPiBIb3cgZGlkIHlvdSBtZWFzdXJlICJoZWxwIHBlcmZvcm1hbmNlIiA/DQo+IA0KPiBJ biB5b3VyIGNhc2UgLCB0aGUgT1NEIGlzIGluICJkb3duIiBidXQgbm90ICJvdXQiIGluIG9zZG1h cA0KPiANCj4gTWF5YmUgZXh0ZW5kIHRoZSBvc2RtYXB0b29sIHRvIHN1cHBvcnQgIm1hcmsgb3Nk IG91dCIgY291bGQgZG8gdGhlIHRlc3Q/DQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N Cj4gPiBGcm9tOiBYdXNhbmdkaSBbbWFpbHRvOnh1LnNhbmdkaUBoM2MuY29tXQ0KPiA+IFNlbnQ6 IEZyaWRheSwgT2N0b2JlciAxNiwgMjAxNSAyOjEyIFBNDQo+ID4gVG86IENoZW4sIFhpYW94aQ0K PiA+IENjOiBjZXBoLWRldmVsQHZnZXIua2VybmVsLm9yZw0KPiA+IFN1YmplY3Q6IFJFOiBjaG9v c2VsZWFmIG1heSBjYXVzZSBzb21lIHVubmVjZXNzYXJ5IHBnIG1pZ3JhdGlvbnMNCj4gPg0KPiA+ DQo+ID4NCj4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiBGcm9tOiBDaGVu LCBYaWFveGkgW21haWx0bzp4aWFveGkuY2hlbkBpbnRlbC5jb21dDQo+ID4gPiBTZW50OiBGcmlk YXksIE9jdG9iZXIgMTYsIDIwMTUgMTI6MjggUE0NCj4gPiA+IFRvOiBTYWdlIFdlaWw7IHh1c2Fu Z2RpIDExOTc2IChSRCkNCj4gPiA+IENjOiBjZXBoLWRldmVsQHZnZXIua2VybmVsLm9yZw0KPiA+ ID4gU3ViamVjdDogUkU6IGNob29zZWxlYWYgbWF5IGNhdXNlIHNvbWUgdW5uZWNlc3NhcnkgcGcg bWlncmF0aW9ucw0KPiA+ID4NCj4gPiA+IEkgZGlkIHNvbWUgdGVzdCBieSB1c2luZyBjcnVzaHRv b2wgLS10ZXN0ICh0b2dldGhlciB3aXRoIHRoaXMgUFIgYW5kDQo+ID4gPiAjUFIgNjAwNCkNCj4g PiA+DQo+ID4gPiBJdCBkb2Vzbid0IGhlbHAgaW4gcXVhbnRpdGllcyB3YXkuDQo+ID4gPg0KPiA+ ID4gSW4gYSA0MCBPU0RzLCAxMCBPU0RzIHBlciBOb2RlcyBkZW1vIGNydXNoIG1hcCwgdGVzdCB3 aXRoIHJlcCA9IDIuDQo+ID4gPiA0MDk2IFBHcywgaW4gZWFjaCBydW4gSSB3aWxsIHJhbmRvbWx5 IGtpY2sgb2ZmIGFuIE9TRCAocmV3ZWlnaHQgdG8NCj4gPiA+IDApIGFuZCBjb21wYXJlZCB0aGUg UEcgbWFwcGluZy4gSWYgYW55IE9TRCBpbiB0aGUgdXBzZXQgb2YgYSBnaXZlbg0KPiA+ID4gUEcg aXMNCj4gPiBjaGFuZ2VkLCB3ZSBzYWlkIHRoZSBQRyBpcyByZW1hcHBlZC4NCj4gPiA+DQo+ID4g PiAgICAgV2l0aCB0aGlzIFBhdGNoLCAgb24gYXZlcmFnZSAzNzcuMzUgUEcgcmVtYXBwZWQgd2l0 aCBzdGRkZXYgPSAyMC42Mi4NCj4gPiA+ICAgICBXL28gdGhpcyBQYXRjaCwgIG9uIGF2ZXJhZ2Ug MzQ3LjEzIFBHIHJlbWFwcGVkIHdpdGggc3RkZGV2ID0gMTMuNTEgLg0KPiA+ID4NCj4gPiA+IElu IHRlcm1zIG9mICNPU0RzIGNoYW5nZWQoIGVhY2ggb3NkIGRpZmZlcmVuY2UgaW4gYSBnaXZlbiBz bG9nIGNvdW50DQo+ID4gPiBmb3IgMSksIEkgZ3JhYiBvbmUgc2FtcGxlIGZyb20gcHJldmlvdXMg dGVzdCB3aGljaCBraWNrb2ZmIE9TRC4yMCwNCj4gPiA+IGFzIHRoaXMNCj4gPiBwcm9jZXNzaW5n IHN0aWxsIG5lZWQgYSBiaXQgaGFuZHkgd29yay4NCj4gPiA+ICAgIFdpdGggdGhpcyBQYXRoLCAg MTY1IHRpbWVzIGluIFByaW1hcnkgLCAyMTkgdGltZXMgb24gU2Vjb25kYXJ5LA0KPiA+ID4gMzcg dGltZXMgZm9yDQo+ID4gYm90aCgzNDcgaW4gdG90YWwpLg0KPiA+ID4gICAgVy9PIHRoaXMgcGF0 Y2gsIDE2NSB0aW1lcyBpbiBQcmltYXJ5ICwgMjE1IHRpbWVzIG9uIFNlY29uZGFyeSwgMzcNCj4g PiA+IHRpbWVzDQo+ID4gZm9yIGJvdGgoIDM0MyBpbiB0b3RhbCkuDQo+ID4gPg0KPiA+IFRoZSBy ZWFzb24gaGVyZSBpcyB0aGF0IHRoZSBjcnVzaG1hcCBpcyBjaGFuZ2VkIHdoZW4geW91IHVzZSBj cnVzaHRvb2wNCj4gPiB0byByZXdlaWdodCBhbiBpdGVtLiBUaGlzIFBSIGNhbm5vdCBzZXJ2ZSBh cyBhIHJhZGljYWwgc29sdXRpb24gZm9yDQo+ID4gdGhlIGV4dHJhIG1pZ3JhdGlvbnMsIGl0IG9u bHkgaGVscHMgdG8gaW1wcm92ZSB0aGUgcGVyZm9ybWFuY2Ugd2hlbg0KPiA+IHNvbWUgZGV2aWNl cyBmYWlsIGluIHRoZSBydW5uaW5nIHRpbWUuIEZvciBhIHNpbXBsZSB0ZXN0LCB5b3UgbWF5IHNl dA0KPiA+IHVwIGFuIGV4cGVyaW1lbnRhbCBjbHVzdGVyICh2c3RhcnQuc2ggd291bGQgYmUgYSBn cmVhdCBoZWxwKSBhbmQgdGhlbg0KPiA+IHNodXQgZG93biBvbmUgb3IgbW9yZSBvc2RzIChwbGVh c2UgZG9uJ3QgdG91Y2ggdGhlIGNydXNobWFwLCBqdXN0IHN0b3AgdGhlIG9zZCBzZXJ2aWNlIG9y IGtpbGwgaXRzDQo+IHByb2Nlc3MpLg0KPiA+IFRoYW5rIHlvdS4NCj4gPg0KPiA+IC0tLVNhbmdk aQ0KPiA+DQo+ID4gPg0KPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4g PiBGcm9tOiBjZXBoLWRldmVsLW93bmVyQHZnZXIua2VybmVsLm9yZyBbbWFpbHRvOmNlcGgtZGV2 ZWwtDQo+ID4gPiA+IG93bmVyQHZnZXIua2VybmVsLm9yZ10gT24gQmVoYWxmIE9mIFNhZ2UgV2Vp bA0KPiA+ID4gPiBTZW50OiBGcmlkYXksIE9jdG9iZXIgMTYsIDIwMTUgMzoxNCBBTQ0KPiA+ID4g PiBUbzogWHVzYW5nZGkNCj4gPiA+ID4gQ2M6IGNlcGgtZGV2ZWxAdmdlci5rZXJuZWwub3JnDQo+ ID4gPiA+IFN1YmplY3Q6IFJFOiBjaG9vc2VsZWFmIG1heSBjYXVzZSBzb21lIHVubmVjZXNzYXJ5 IHBnIG1pZ3JhdGlvbnMNCj4gPiA+ID4NCj4gPiA+ID4gT24gVGh1LCAxNSBPY3QgMjAxNSwgWHVz YW5nZGkgd3JvdGU6DQo+ID4gPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ ID4gPiA+ID4gRnJvbTogU2FnZSBXZWlsIFttYWlsdG86c3dlaWxAcmVkaGF0LmNvbV0NCj4gPiA+ ID4gPiA+IFNlbnQ6IFdlZG5lc2RheSwgT2N0b2JlciAxNCwgMjAxNSAxMDoxOCBQTQ0KPiA+ID4g PiA+ID4gVG86IHh1c2FuZ2RpIDExOTc2IChSRCkNCj4gPiA+ID4gPiA+IENjOiBjZXBoLWRldmVs QHZnZXIua2VybmVsLm9yZw0KPiA+ID4gPiA+ID4gU3ViamVjdDogUkU6IGNob29zZWxlYWYgbWF5 IGNhdXNlIHNvbWUgdW5uZWNlc3NhcnkgcGcNCj4gPiA+ID4gPiA+IG1pZ3JhdGlvbnMNCj4gPiA+ ID4gPiA+DQo+ID4gPiA+ID4gPiBPbiBXZWQsIDE0IE9jdCAyMDE1LCBYdXNhbmdkaSB3cm90ZToN Cj4gPiA+ID4gPiA+ID4gUGxlYXNlIHNlZSBpbmxpbmUuDQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ ID4gPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+ID4gPiA+ID4gPiBGcm9t OiBjZXBoLWRldmVsLW93bmVyQHZnZXIua2VybmVsLm9yZw0KPiA+ID4gPiA+ID4gPiA+IFttYWls dG86Y2VwaC1kZXZlbC1vd25lckB2Z2VyLmtlcm5lbC5vcmddIE9uIEJlaGFsZiBPZg0KPiA+ID4g PiA+ID4gPiA+IFNhZ2UgV2VpbA0KPiA+ID4gPiA+ID4gPiA+IFNlbnQ6IFdlZG5lc2RheSwgT2N0 b2JlciAxNCwgMjAxNSAxMjo0NSBBTQ0KPiA+ID4gPiA+ID4gPiA+IFRvOiB4dXNhbmdkaSAxMTk3 NiAoUkQpDQo+ID4gPiA+ID4gPiA+ID4gQ2M6IGNlcGgtZGV2ZWxAdmdlci5rZXJuZWwub3JnDQo+ ID4gPiA+ID4gPiA+ID4gU3ViamVjdDogUmU6IGNob29zZWxlYWYgbWF5IGNhdXNlIHNvbWUgdW5u ZWNlc3NhcnkgcGcNCj4gPiA+ID4gPiA+ID4gPiBtaWdyYXRpb25zDQo+ID4gPiA+ID4gPiA+ID4N Cj4gPiA+ID4gPiA+ID4gPiBIaSBTYW5nZGksDQo+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ ID4gPiBPbiBUdWUsIDEzIE9jdCAyMDE1LCBYdXNhbmdkaSB3cm90ZToNCj4gPiA+ID4gPiA+ID4g PiA+IEhpIFNhZ2UsDQo+ID4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+ID4gUmVjZW50 bHkgd2hlbiBJIHdhcyBsZWFybmluZyBhYm91dCB0aGUgY3J1c2ggcnVsZXMgSQ0KPiA+ID4gPiA+ ID4gPiA+ID4gbm90aWNlZCB0aGF0IHRoZSBzdGVwIGNob29zZWxlYWYgbWF5IGNhdXNlDQo+ID4g PiA+ID4gPiA+ID4gc29tZSB1bm5lY2Vzc2FyeSBwZyBtaWdyYXRpb25zIHdoZW4gT1NEcyBhcmUg b3V0ZWQuDQo+ID4gPiA+ID4gPiA+ID4gPiBGb3IgZXhhbXBsZSwgZm9yIGEgY2x1c3RlciBvZiA0 IGhvc3RzIHdpdGggMiBPU0RzIGVhY2gsDQo+ID4gPiA+ID4gPiA+ID4gPiBhZnRlciBob3N0MShv c2QuMiwgb3NkLjMpIGlzIGRvd24sIHRoZQ0KPiA+ID4gPiA+ID4gPiA+IG1hcHBpbmcgZGlmZmVy ZW5jZXMgd291bGQgYmUgbGlrZSB0aGlzOg0KPiA+ID4gPiA+ID4gPiA+ID4gcGdpZCAgICBiZWZv cmUgPC0+IGFmdGVyICAgICAgICBkaWZmICAgIGRpZmZfbnVtDQo+ID4gPiA+ID4gPiA+ID4gPiAw LjFlICAgIFs1LCAxLCAyXSA8LT4gWzUsIDEsIDddICAgICAgICAgWzJdICAgICAxDQo+ID4gPiA+ ID4gPiA+ID4gPiAwLjFmICAgIFswLCA3LCAzXSA8LT4gWzAsIDcsIDRdICAgICAgICAgWzNdICAg ICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjFhICAgIFswLCA0LCAzXSA8LT4gWzAsIDQsIDZdICAg ICAgICAgWzNdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjUgICAgIFs2LCAzLCAxXSA8LT4g WzYsIDAsIDVdICAgICAgICAgWzEsIDNdICAyDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjQgICAgIFs1 LCA2LCAyXSA8LT4gWzUsIDYsIDBdICAgICAgICAgWzJdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4g PiAwLjcgICAgIFszLCA3LCAwXSA8LT4gWzcsIDAsIDRdICAgICAgICAgWzNdICAgICAxDQo+ID4g PiA+ID4gPiA+ID4gPiAwLjYgICAgIFsyLCAxLCA3XSA8LT4gWzAsIDcsIDRdICAgICAgICAgWzEs IDJdICAyDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjkgICAgIFszLCA0LCAwXSA8LT4gWzUsIDAsIDdd ICAgICAgICAgWzMsIDRdICAyDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjE1ICAgIFsyLCA2LCAxXSA8 LT4gWzYsIDAsIDVdICAgICAgICAgWzEsIDJdICAyDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjE0ICAg IFszLCA2LCA1XSA8LT4gWzcsIDQsIDFdICAgICAgICAgWzMsIDUsIDZdICAgICAgIDMNCj4gPiA+ ID4gPiA+ID4gPiA+IDAuMTcgICAgWzAsIDUsIDJdIDwtPiBbMCwgNSwgNl0gICAgICAgICBbMl0g ICAgIDENCj4gPiA+ID4gPiA+ID4gPiA+IDAuMTYgICAgWzAsIDQsIDJdIDwtPiBbMCwgNCwgN10g ICAgICAgICBbMl0gICAgIDENCj4gPiA+ID4gPiA+ID4gPiA+IDAuMTEgICAgWzQsIDcsIDJdIDwt PiBbNCwgNywgMV0gICAgICAgICBbMl0gICAgIDENCj4gPiA+ID4gPiA+ID4gPiA+IDAuMTAgICAg WzAsIDMsIDZdIDwtPiBbMCwgNywgNF0gICAgICAgICBbMywgNl0gIDINCj4gPiA+ID4gPiA+ID4g PiA+IDAuMTMgICAgWzEsIDcsIDNdIDwtPiBbMSwgNywgNF0gICAgICAgICBbM10gICAgIDENCj4g PiA+ID4gPiA+ID4gPiA+IDAuYSAgICAgWzAsIDIsIDddIDwtPiBbMCwgNywgNF0gICAgICAgICBb Ml0gICAgIDENCj4gPiA+ID4gPiA+ID4gPiA+IDAuYyAgICAgWzUsIDAsIDNdIDwtPiBbNSwgMCwg Nl0gICAgICAgICBbM10gICAgIDENCj4gPiA+ID4gPiA+ID4gPiA+IDAuYiAgICAgWzIsIDUsIDdd IDwtPiBbNCwgNywgMF0gICAgICAgICBbMiwgNV0gIDINCj4gPiA+ID4gPiA+ID4gPiA+IDAuMTgg ICAgWzcsIDIsIDRdIDwtPiBbNywgNCwgMF0gICAgICAgICBbMl0gICAgIDENCj4gPiA+ID4gPiA+ ID4gPiA+IDAuZiAgICAgWzIsIDcsIDVdIDwtPiBbNiwgNCwgMF0gICAgICAgICBbMiwgNSwgN10g ICAgICAgMw0KPiA+ID4gPiA+ID4gPiA+ID4gQ2hhbmdlZCBwZyByYXRpbzogMzAgLyAzMg0KPiA+ ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiA+IEkgdHJpZWQgdG8gY2hhbmdlIHRoZSBj b2RlIChwbGVhc2Ugc2VlDQo+ID4gPiA+ID4gPiA+ID4gPiBodHRwczovL2dpdGh1Yi5jb20vY2Vw aC9jZXBoL3B1bGwvNjI0MikgYW5kIGFmdGVyIHRoZQ0KPiA+ID4gPiA+ID4gPiA+IG1vZGlmaWNh dGlvbiB0aGUgcmVzdWx0IHdvdWxkIGJlIGxpa2UgdGhpczoNCj4gPiA+ID4gPiA+ID4gPg0KPiA+ ID4gPiA+ID4gPiA+IENhbiB5b3UgZGVzY3JpYmUgdGhlIHJlYXNvbmluZyBiZWhpbmQgdGhlIGNo YW5nZT8gIEkgY2FuJ3QNCj4gPiA+ID4gPiA+ID4gPiBtYWtlIHNlbnNlIG9mIGl0LiAgVGhlIHJl Y3Vyc2l2ZSBjYWxsIGlzIHN0aWxsIHBpY2tpbmcNCj4gPiA+ID4gPiA+ID4gPiBqdXN0DQo+ID4g PiA+ID4gPiA+ID4gMSBpdGVtLCBidXQgaXQgbG9va3MgbGlrZSBpdCBpcyBhbHdheXMgY2hvb3Np bmcgYSBkZXZpY2UNCj4gPiA+ID4gPiA+ID4gPiBpbiBmb3Igc2xvdCAwIGFuZCBub3QgdGhlIGN1 cnJlbnQgc2xvdCBpbiB0aGUgY2FsbGVyLiAgSSdtDQo+ID4gPiA+ID4gPiA+ID4gbm90DQo+ID4g PiA+ID4gPiBzdXJlIGhvdyB0aGF0IGNvdWxkIGdlbmVyYXRlIGEgY29ycmVjdCByZXN1bHQuDQo+ ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gRnJvbSBteSB1bmRlcnN0YW5kaW5nLCB0aGUg YXJndW1lbnQgJ291dHBvcycgb2YNCj4gPiA+ID4gPiA+ID4gY3J1c2hfY2hvb3NlX2ZpcnN0bigu Li4pIGlzIGFsd2F5cyBzZXQgdG8gMCBmb3IgJ2Nob29zZSBmaXJzdG4nDQo+ID4gPiA+ID4gPiA+ IGFuZCB0aGUgZmlyc3Qgc3RlcCBvZiAnY2hvb3NlbGVhZiBmaXJzdG4nICh5b3UgbWF5IGNoZWNr IGl0cyBjYWxsZXIsIGkuZS4NCj4gPiA+ID4gPiA+ID4gY3J1c2hfZG9fcnVsZSguLi4pLCB0aGF0 IHRoZSB2YXJpYWJsZSAnaicgdGhlcmUgaXMgYWx3YXlzIDApLg0KPiA+ID4gPiA+ID4gPiBTbyBp biBmYWN0IHRoZSBjb2RlIG1vZGlmaWNhdGlvbiB3b24ndCBjaGFuZ2UgYW55dGhpbmcgZm9yDQo+ ID4gPiA+ID4gPiA+IHRoZXNlIHN0ZXBzLiBJdA0KPiA+ID4gPiB3aWxsIG9ubHkgYWZmZWN0IHRo ZSByZWN1cnNpdmUgY2FsbC4NCj4gPiA+ID4gPiA+ID4gQW5kIGl0IHRoaXMgY2FsbCwgJ3JlcCco YW5kICdyJykgaXMgaW5kZXBlbmRlbnQgZnJvbSBpdHMNCj4gPiA+ID4gPiA+ID4gY2FsbGVyLCB3 aGljaCBtZWFucyBpdCdzIG9ubHkgdXNlZCB0byBpbmRpY2F0ZSB0aGUgcmVwbGljYQ0KPiA+ID4g PiA+ID4gPiBudW1iZXIodGhlIHN0YXJ0IHZhbHVlIG9mICdyZXAnIHNob3VsZCBiZSAxIGxlc3Mg dGhhbg0KPiA+ID4gPiA+ID4gPiAnbnVtcmVwJyksIGJ1dCBpcyBub3QgcmVsYXRlZCB0byByZXN1 bHQgcG9zaXRpb24uIFNpbmNlDQo+ID4gPiA+ID4gPiA+ICdvdXRwb3MnIGlzIGNvcnJlY3RseSBw YXNzZWQgdG8gdGhlIHJlY3Vyc2l2ZSBjYWxsLCB0aGUNCj4gPiA+ID4gPiA+ID4gcmVzdWx0IHdv dWxkIGJlDQo+ID4gcHV0IGluIHRoZSByaWdodCBzbG90LCBub3Qgc2xvdCAwLg0KPiA+ID4gPiA+ ID4NCj4gPiA+ID4gPiA+IE9rYXksIEkgdW5kZXJ0c3RhbmQgbm93LiAgVGhhbmtzIQ0KPiA+ID4g PiA+ID4NCj4gPiA+ID4gPiA+ID4gVGhlIGN1cnJlbnQgY29kZSBzZXQgdGhlIHN0YXJ0aW5nIHZh bHVlIG9mICdyJyBiYXNlZCBvbiB0aGUNCj4gPiA+ID4gPiA+ID4gc2xvdCBudW1iZXIsIHdoaWNo IG1lYW5zIHRoZSBhbGdvcml0aG0gbWF5IGdlbmVyYXRlIGENCj4gPiA+ID4gPiA+ID4gZGlmZmVy ZW50IHJlc3VsdCBldmVuIHdoZW4gb25seSB0aGUgc2xvdCBudW1iZXIgY2hhbmdlcywNCj4gPiA+ ID4gPiA+ID4gd2hpY2ggSSBiZWxpZXZlIGlzIG5vdCB3aGF0IHdlIHdhbnQgZm9yIHJlcGxpY2F0 ZWQgcG9vbHMuDQo+ID4gPiA+ID4gPiA+IEZvciBleGFtcGxlLCAwLjE0IFszLCA2LCA1XSA8LT4g WzcsIDQsIDFdLCBhZnRlcg0KPiA+ID4gPiA+ID4gPiBvZHMuMyBpcyBkb3duIGFuZCBvdXQsIHRo ZSBwZyBvbiBvc2QuNiBpcyB0cmFuc2ZlcnJlZCB0bw0KPiA+ID4gPiA+ID4gPiBvc2QuNyBiZWNh dXNlIHRoZSBzdGFydGluZyB2YWx1ZSBvZiAncicgaXMgY2hhbmdlZChwcm9iYWJseQ0KPiA+ID4g PiA+ID4gPiBmcm9tIDEgdG8gMCksIGFuZCBzbyBpcyB0aGUgcGcgZnJvbSBvc2QuNSB0byBvc2Qu NC4gVGhvdWdoDQo+ID4gPiA+ID4gPiA+IGl0IGxvb2tzIGxpa2UgdGhhdCBhbGwgb2YgdGhlc2Ug ZXh0cmEgbWlncmF0aW9ucyBhcmUgYWx3YXlzDQo+ID4gPiA+ID4gPiA+IHdpdGhpbiB0aGUgc2Ft ZSBjaG9zZW4gYnVja2V0LCB0aGV5IGFyZSB1bm5lY2Vzc2FyeS4gSWYgd2UNCj4gPiA+ID4gPiA+ ID4gc2V0IHRoZSBzdGFydGluZyB2YWx1ZSBvZiAncmVwJyhhbmQgJ3InKSB0byBiZSBhIGZpeGVk DQo+ID4gPiA+ID4gPiA+IHZhbHVlKGUuZy4gMCksIHRoZSByZXN1bHRzDQo+ID4gd291bGQgYmUg c3RhYmxlLg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IFllYWgsIHRoYXQgbWFrZXMgc2Vuc2Uu DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gVGhlIG9ubHkgcHJvYmxlbSBJIHNlZSBpcyB0aGUg Y29sbGlzaW9uIGNoZWNrIGhlcmU6DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4g PiA+IGh0dHBzOi8vZ2l0aHViLmNvbS9jZXBoL2NlcGgvcHVsbC82MjQyL2ZpbGVzI2RpZmYtMGRm MTNhZDI5NGY2DQo+ID4gPiA+ID4gPiA1OA0KPiA+ID4gPiA+ID4gNWMNCj4gPiA+ID4gPiA+IDMy DQo+ID4gPiA+ID4gPiAyNTg4Y2ZlMDI2ZDcwMVI0OTcNCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4g PiBGb3IgbW9zdCBtYXBzIHlvdXIgY2hhbmdlIGlzbid0IHByb2JsZW1hdGljIGJlY2F1c2UgZGV2 aWNlcw0KPiA+ID4gPiA+ID4gb25seSBhcHBlYXIgb25jZSBpbiB0aGUgaGllcmFyY2h5LCBidXQg aWYgYW4gaXRlbSBkb2VzIGFwcGVhcg0KPiA+ID4gPiA+ID4gdHdpY2UsIHdlIG1heQ0KPiA+ID4g PiBjaG9vc2UgaXQgdHdpY2UgYW5kIG5vdCBkZXRlY3QgdGhlIGR1cC4NCj4gPiA+ID4gPiA+DQo+ ID4gPiA+ID4gPiBQZXJoYXBzIGxlYXZpbmcgdGhlIGFyZ3VtZW50IGFsb25lIGFuZCBzaW1wbHkg Y2hhbmdpbmcgdGhlIGZvcg0KPiA+ID4gPiA+ID4gbG9vcCB0bw0KPiA+ID4gPiA+ID4NCj4gPiA+ ID4gPiA+ICAgICAgIGZvciAocmVwID0gMDsgcmVwIDwgKG51bXJlcCAtIG91dHBvcykgJiYgY291 bnQgPiAwIDsNCj4gPiA+ID4gPiA+IHJlcCsrKSB7DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4g d291bGQgZG8gdGhlIHRyaWNrPw0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiBXZWxsIEkgYmVsaWV2 ZSBpdCBhY3R1YWxseSB3aWxsIGRldGVjdCB0aGUgZHVwIGFzICdudW1yZXAnIGFuZCAnb3V0cG9z Jw0KPiA+ID4gPiA+IGFyZSB0d28gZGlmZmVyZW50IGFyZ3VtZW50cyBhbmQgJ291dHBvcycgaXMg Y29ycmVjdGx5IHBhc3NlZCwgc28NCj4gPiA+ID4gPiB0aGUgJ2ZvciBsb29wJyB5b3UgbWFya2Vk IGZvciBkZXRlY3RpbmcgY29sbGlzaW9uIHdpbGwgY2hlY2sgYWxsDQo+ID4gPiA+ID4gcHJldmlv dXNseSBzZWxlY3RlZCBpdGVtcy4NCj4gPiA+ID4NCj4gPiA+ID4gWWVwLCByaWdodCBhZ2Fpbi4N Cj4gPiA+ID4NCj4gPiA+ID4gPiBJIGhhdmUgcmVhZCB0aGUgcG9zdCBhYm91dCBjdXJyZW50IENS VVNIIGJlaGF2aW9yIGFuZCB0aGFua3MgZm9yDQo+ID4gPiA+ID4gdGhhdCBkZXRhaWxlZCBleHBs YW5hdGlvbi4gSG93ZXZlciwgdGhlIHByZXJlcXVpc2l0ZSB0aGVyZSBpcw0KPiA+ID4gPiA+IHRo ZSBjcnVzaG1hcCBpcyBjaGFuZ2VkKHNvbWUgaXRlbSBpcyByZXdlaWdodGVkKSwgd2hpbGUgaW4g dGhlDQo+ID4gPiA+ID4gY3VycmVudCBpbXBsZW1lbnRhdGlvbiB0aGUgY3J1c2htYXAgcmVtYWlu cyB1bnRvdWNoZWQgZm9yIHF1aXRlDQo+ID4gPiA+ID4gYSBsb25nIHRpbWUgYWZ0ZXIgc29tZSBk ZXZpY2VzIGZhaWwuIEFuZCBiZWNhdXNlIG9mIHRoaXMsIEkNCj4gPiA+ID4gPiB0aGluayB0aGUg Y29kZSBjaGFuZ2UgY2FuIG1ha2UgdGhlIHBnIG1pZ3JhdGlvbnMgdG8gYmUgb3B0aW1hbA0KPiA+ ID4gPiA+IHdoZW4gb3NkcyBiZWNvbWUgZG93bi4gV2hlbiB0aGUgY3J1c2htYXAgZG9lcyBjaGFu Z2UsIGxpa2UgeW91DQo+ID4gPiA+ID4gc2FpZCwgdGhlIGV4dHJhIG1pZ3JhdGlvbnMgd291bGQg YmUNCj4gPiA+ID4gdW5hdm9pZGFibGUuDQo+ID4gPiA+ID4gQW55d2F5LCBhcyBJIHJlYWxseSBj YW5ub3QgZmluZCBpdCwgY291bGQgeW91IGdpdmUgbWUgc29tZSB0aXANCj4gPiA+ID4gPiBhYm91 dCBob3cgb3Igd2hlbiB0aGUgY3J1c2htYXAgd291bGQgZ2V0IG1vZGlmaWVkIGF1dG9tYXRpY2Fs bHk/DQo+ID4gVGhhbmsgeW91IQ0KPiA+ID4gPg0KPiA+ID4gPiBJIHRoaW5rIHRoZSBzaXR1YXRp b24gaXMgdGhlIHNhbWU6IHdoZW4gdGhlIG9zZCBpcyBtYXJrZWQgIm91dCINCj4gPiA+ID4gdGhl IHdlaWdodFtpXSB2YWx1ZSBnb2VzIHRvIHplcm8gYW5kIHdlIHdpbGwgcmVqZWN0IGl0IGF0DQo+ ID4gPiA+DQo+ID4gPiA+IGh0dHBzOi8vZ2l0aHViLmNvbS9jZXBoL2NlcGgvcHVsbC82MjQyL2Zp bGVzI2RpZmYtDQo+ID4gPiA+IDBkZjEzYWQyOTRmNjU4NWMzMjI1ODhjZmUwMjZkNzAxUjUzNQ0K PiA+ID4gPg0KPiA+ID4gPiAoQW4gb3NkIGdvZXMgZG93biBidXQgbm90IG91dCBkb2Vzbid0IGhh dmUgYW55IGVmZmVjdCBvbg0KPiA+ID4gPiBjcnVzaC0tdGhlIGNlcGggY29kZSBqdXN0IGZpbHRl cnMgdGhvc2Ugb3NkcyBvdXQgb2YgdGhlIGNydXNoDQo+ID4gPiA+IHJlc3VsdC4pDQo+ID4gPiA+ DQo+ID4gPiA+IFNvLCBhbnl3YXksIHllczogdGhpcyBsb29rcyBsaWtlIGEgZ29vZCBjaGFuZ2Uu ICBPbmUgdGhpbmcgdGhhdA0KPiA+ID4gPiB3b3VsZCBiZSBncmVhdCB3b3VsZCBiZSBhIHdheSB0 byBxdWFudGlmeSBob3cgbXVjaCBpdCBpbXByb3ZlcyB0aGluZ3MuDQo+ID4gPiA+DQo+ID4gPiA+ IFRoZSBuZXh0IHN0ZXAgaXMgdG8gaW50cm9kdWNlIGEgdHVuYWJsZSB0aGF0IG1ha2VzIHRoaXMg YmVoYXZpb3INCj4gPiA+ID4gb3B0aW9uYWwgKGFzIHdlIGNhbid0IGJyZWFrL2NoYW5nZSBwcmV2 aW91cyBtYXBwaW5ncykuICBUaGF0IG1lYW5zDQo+ID4gPiA+IGludHJvZHVjaW5nIGEgbmV3IGZp ZWxkIGluIGNydXNoL2NydXNoLmggZm9yIHRoZSB0dW5hYmxlLCBhZGRpbmcNCj4gPiA+ID4gYWNj ZXNzb3JzIGluIENydXNoV3JhcHBlciwgaW50cm9kdWNpbmcgYSBuZXcgJ2pld2VsJyBwcmVzZXQg dGhhdA0KPiA+ID4gPiBzZXRzIGl0IHRoYXQgd2F5IChhbmQgbWFraW5nIGpld2VsIHRoZSBuZXcg J29wdGltYWwnKSwgbW9kaWZ5aW5nDQo+ID4gPiA+IGNydXNodG9vbC5jYyB3aXRoIGFuIGFyZ3Vt ZW50IHRvIG1vZGlmeSB0aGUgdHVuYWJsZSwgbW9kaWZ5aW5nDQo+ID4gPiA+IENydXNoQ29tcGls ZXIgdG8gYm90aCBzcGl0IG91dCB0aGUgdHVuYWJsZSBpZiBpdCdzIG5vbi0gZGVmYXVsdA0KPiA+ ID4gPiBhbmQgdG8gcGFyc2UgaXQgaWYgaXRzIHNwZWNpZmllZCBpbiB0aGUNCj4gPiA+IGlucHV0 LCBldGMuDQo+ID4gPiA+DQo+ID4gPiA+IElmIHlvdSdyZSBjb21mb3J0YWJsZSB3aXRoIHRob3Nl IGNoYW5nZXMsIGl0IHdvdWxkIGJlIGdyZWF0IGlmIHlvdQ0KPiA+ID4gPiBjb3VsZCBkbyB0aGlz IHBhcnQuICBJZiBub3QsIEkgY2FuIHRha2UgY2FyZSBvZiBpdCENCj4gPiA+ID4NCj4gPiA+ID4g VGhhbmtzLQ0KPiA+ID4gPiBzYWdlDQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiAtLS1TYW5nZGkNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gVGhhbmtzIQ0KPiA+ID4gPiA+ ID4gc2FnZQ0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ ID4gPiBUaGUgcXVhbGl0eSBvZiBkaXN0cmlidXRpb24gY291bGQgYmUgYXNzdXJlZCBieSB0aGUg aGFzaGVkDQo+ID4gPiA+ID4gPiA+IHZhbHVlIHgsIHNpbmNlIGl0J3MgZGVwZW5kZW50IG9uIHBn aWQuIEEgc2ltcGxlIHRlc3QgcmVzdWx0DQo+ID4gPiA+ID4gPiA+IGZvciBhIHJlbGF0aXZlbHkg bGFyZ2UgY2x1c3RlciBpcyBhcyBmb2xsb3dpbmdzLCB3aGljaCBmcm9tDQo+ID4gPiA+ID4gPiA+ IG15IHZpZXcgaXMgc2ltaWxhciB3aXRoIHRoYXQgb2YgdGhlIGN1cnJlbnQgY29kZToNCj4gPiA+ ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gY3J1c2h0b29sIC1vIGNydXNobWFwIC0tYnVpbGQgLS1u dW1fb3NkcyA2NCBob3N0IHN0cmF3MiA0DQo+ID4gPiA+ID4gPiA+IHJhY2sNCj4gPiA+ID4gPiA+ ID4gc3RyYXcyDQo+ID4gPiA+ID4gPiA+IDQgcm9vdCBzdHJhdzIgMA0KPiA+ID4gPiA+ID4gPg0K PiA+ID4gPiA+ID4gPiBjcnVzaHRvb2wgLS10ZXN0IC1pIGNydXNobWFwIC0tbnVtX3JlcCAzIC0t c2hvdy11dGlsaXphdGlvbg0KPiA+ID4gPiA+ID4gPiBydWxlDQo+ID4gPiA+ID4gPiA+IDAgKHJl cGxpY2F0ZWRfcnVsZXNldCksIHggPSAwLi4xMDIzLCBudW1yZXAgPSAzLi4zIHJ1bGUgMA0KPiA+ ID4gPiA+ID4gPiAocmVwbGljYXRlZF9ydWxlc2V0KSBudW1fcmVwIDMgcmVzdWx0IHNpemUgPT0g MzogMTAyNC8xMDI0DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDA6ICAgICAgICAgICAgICBzdG9y ZWQgOiA1NyAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSAxOiAgICAg ICAgICAgICAgc3RvcmVkIDogMzkgICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBk ZXZpY2UgMjogICAgICAgICAgICAgIHN0b3JlZCA6IDQ0ICAgICBleHBlY3RlZCA6IDQ4DQo+ID4g PiA+ID4gPiA+ICAgZGV2aWNlIDM6ICAgICAgICAgICAgICBzdG9yZWQgOiA0MiAgICAgZXhwZWN0 ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSA0OiAgICAgICAgICAgICAgc3RvcmVkIDog NDUgICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBkZXZpY2UgNTogICAgICAgICAg ICAgIHN0b3JlZCA6IDQyICAgICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNl IDY6ICAgICAgICAgICAgICBzdG9yZWQgOiA0NSAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ ID4gPiAgIGRldmljZSA3OiAgICAgICAgICAgICAgc3RvcmVkIDogNDggICAgIGV4cGVjdGVkIDog NDgNCj4gPiA+ID4gPiA+ID4gICBkZXZpY2UgODogICAgICAgICAgICAgIHN0b3JlZCA6IDQzICAg ICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDk6ICAgICAgICAgICAgICBz dG9yZWQgOiAzOCAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSAxMDog ICAgICAgICAgICAgc3RvcmVkIDogNDQgICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4g ICBkZXZpY2UgMTE6ICAgICAgICAgICAgIHN0b3JlZCA6IDUyICAgICBleHBlY3RlZCA6IDQ4DQo+ ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDEyOiAgICAgICAgICAgICBzdG9yZWQgOiA1NCAgICAgZXhw ZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSAxMzogICAgICAgICAgICAgc3RvcmVk IDogNTkgICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBkZXZpY2UgMTQ6ICAgICAg ICAgICAgIHN0b3JlZCA6IDUzICAgICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2 aWNlIDE1OiAgICAgICAgICAgICBzdG9yZWQgOiA1MyAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4g PiA+ID4gPiAgIGRldmljZSAxNjogICAgICAgICAgICAgc3RvcmVkIDogNDIgICAgIGV4cGVjdGVk IDogNDgNCj4gPiA+ID4gPiA+ID4gICBkZXZpY2UgMTc6ICAgICAgICAgICAgIHN0b3JlZCA6IDU2 ICAgICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDE4OiAgICAgICAgICAg ICBzdG9yZWQgOiA0OSAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSAx OTogICAgICAgICAgICAgc3RvcmVkIDogNDIgICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ ID4gICBkZXZpY2UgMjA6ICAgICAgICAgICAgIHN0b3JlZCA6IDU2ICAgICBleHBlY3RlZCA6IDQ4 DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDIxOiAgICAgICAgICAgICBzdG9yZWQgOiA1MSAgICAg ZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSAyMjogICAgICAgICAgICAgc3Rv cmVkIDogNTkgICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBkZXZpY2UgMjM6ICAg ICAgICAgICAgIHN0b3JlZCA6IDM0ICAgICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAg ZGV2aWNlIDI0OiAgICAgICAgICAgICBzdG9yZWQgOiA0MyAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ ID4gPiA+ID4gPiAgIGRldmljZSAyNTogICAgICAgICAgICAgc3RvcmVkIDogNTIgICAgIGV4cGVj dGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBkZXZpY2UgMjY6ICAgICAgICAgICAgIHN0b3JlZCA6 IDQ2ICAgICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDI3OiAgICAgICAg ICAgICBzdG9yZWQgOiA0NCAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmlj ZSAyODogICAgICAgICAgICAgc3RvcmVkIDogNDMgICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4g PiA+ID4gICBkZXZpY2UgMjk6ICAgICAgICAgICAgIHN0b3JlZCA6IDU3ICAgICBleHBlY3RlZCA6 IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDMwOiAgICAgICAgICAgICBzdG9yZWQgOiA1MyAg ICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSAzMTogICAgICAgICAgICAg c3RvcmVkIDogNTIgICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBkZXZpY2UgMzI6 ICAgICAgICAgICAgIHN0b3JlZCA6IDQ2ICAgICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ ICAgZGV2aWNlIDMzOiAgICAgICAgICAgICBzdG9yZWQgOiA0MiAgICAgZXhwZWN0ZWQgOiA0OA0K PiA+ID4gPiA+ID4gPiAgIGRldmljZSAzNDogICAgICAgICAgICAgc3RvcmVkIDogNTkgICAgIGV4 cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBkZXZpY2UgMzU6ICAgICAgICAgICAgIHN0b3Jl ZCA6IDUwICAgICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDM2OiAgICAg ICAgICAgICBzdG9yZWQgOiA0OCAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRl dmljZSAzNzogICAgICAgICAgICAgc3RvcmVkIDogNDcgICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ ID4gPiA+ID4gICBkZXZpY2UgMzg6ICAgICAgICAgICAgIHN0b3JlZCA6IDUyICAgICBleHBlY3Rl ZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDM5OiAgICAgICAgICAgICBzdG9yZWQgOiA1 NiAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSA0MDogICAgICAgICAg ICAgc3RvcmVkIDogMzggICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBkZXZpY2Ug NDE6ICAgICAgICAgICAgIHN0b3JlZCA6IDQwICAgICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4g PiA+ICAgZGV2aWNlIDQyOiAgICAgICAgICAgICBzdG9yZWQgOiA1MiAgICAgZXhwZWN0ZWQgOiA0 OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSA0MzogICAgICAgICAgICAgc3RvcmVkIDogNDMgICAg IGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBkZXZpY2UgNDQ6ICAgICAgICAgICAgIHN0 b3JlZCA6IDQxICAgICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDQ1OiAg ICAgICAgICAgICBzdG9yZWQgOiA1MSAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAg IGRldmljZSA0NjogICAgICAgICAgICAgc3RvcmVkIDogNDMgICAgIGV4cGVjdGVkIDogNDgNCj4g PiA+ID4gPiA+ID4gICBkZXZpY2UgNDc6ICAgICAgICAgICAgIHN0b3JlZCA6IDQ2ICAgICBleHBl Y3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDQ4OiAgICAgICAgICAgICBzdG9yZWQg OiA0MiAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSA0OTogICAgICAg ICAgICAgc3RvcmVkIDogNDcgICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBkZXZp Y2UgNTA6ICAgICAgICAgICAgIHN0b3JlZCA6IDUxICAgICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ ID4gPiA+ICAgZGV2aWNlIDUxOiAgICAgICAgICAgICBzdG9yZWQgOiA1NCAgICAgZXhwZWN0ZWQg OiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSA1MjogICAgICAgICAgICAgc3RvcmVkIDogNTYg ICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBkZXZpY2UgNTM6ICAgICAgICAgICAg IHN0b3JlZCA6IDQ2ICAgICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDU0 OiAgICAgICAgICAgICBzdG9yZWQgOiA0NyAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4g PiAgIGRldmljZSA1NTogICAgICAgICAgICAgc3RvcmVkIDogNDggICAgIGV4cGVjdGVkIDogNDgN Cj4gPiA+ID4gPiA+ID4gICBkZXZpY2UgNTY6ICAgICAgICAgICAgIHN0b3JlZCA6IDQyICAgICBl eHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNlIDU3OiAgICAgICAgICAgICBzdG9y ZWQgOiA0MCAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSA1ODogICAg ICAgICAgICAgc3RvcmVkIDogNTggICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBk ZXZpY2UgNTk6ICAgICAgICAgICAgIHN0b3JlZCA6IDUzICAgICBleHBlY3RlZCA6IDQ4DQo+ID4g PiA+ID4gPiA+ICAgZGV2aWNlIDYwOiAgICAgICAgICAgICBzdG9yZWQgOiA0MSAgICAgZXhwZWN0 ZWQgOiA0OA0KPiA+ID4gPiA+ID4gPiAgIGRldmljZSA2MTogICAgICAgICAgICAgc3RvcmVkIDog NDQgICAgIGV4cGVjdGVkIDogNDgNCj4gPiA+ID4gPiA+ID4gICBkZXZpY2UgNjI6ICAgICAgICAg ICAgIHN0b3JlZCA6IDUyICAgICBleHBlY3RlZCA6IDQ4DQo+ID4gPiA+ID4gPiA+ICAgZGV2aWNl IDYzOiAgICAgICAgICAgICBzdG9yZWQgOiA2MCAgICAgZXhwZWN0ZWQgOiA0OA0KPiA+ID4gPiA+ ID4gPg0KPiA+ID4gPiA+ID4gPiA+IFBlcmhhcHMgeW91IGNhbiBzaGFyZSB0aGUgb3NkIHRyZWUg b3V0cHV0IHNvIHdlIGNhbiBzZWUNCj4gPiA+ID4gPiA+ID4gPiBob3cgeW91cg0KPiA+ID4gPiBt YXAgaXQgc3RydWN0dXJlZD8NCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiBUaGUgYXJj aGl0ZWN0dXJlIGlzIHByZXR0eSBzaW1wbGU6DQo+ID4gPiA+ID4gPiA+IElEIFdFSUdIVCAgVFlQ RSBOQU1FICAgICAgVVAvRE9XTiBSRVdFSUdIVCBQUklNQVJZLUFGRklOSVRZDQo+ID4gPiA+ID4g PiA+IC01IDguMDAwMDAgcm9vdCByb290DQo+ID4gPiA+ID4gPiA+IC0xIDIuMDAwMDAgICAgIGhv c3QgaG9zdDANCj4gPiA+ID4gPiA+ID4gIDAgMS4wMDAwMCAgICAgICAgIG9zZC4wICAgICAgIHVw ICAxLjAwMDAwICAgICAgICAgIDEuMDAwMDANCj4gPiA+ID4gPiA+ID4gIDEgMS4wMDAwMCAgICAg ICAgIG9zZC4xICAgICAgIHVwICAxLjAwMDAwICAgICAgICAgIDEuMDAwMDANCj4gPiA+ID4gPiA+ ID4gLTIgMi4wMDAwMCAgICAgaG9zdCBob3N0MQ0KPiA+ID4gPiA+ID4gPiAgMiAxLjAwMDAwICAg ICAgICAgb3NkLjIgICAgIGRvd24gICAgICAgIDAgICAgICAgICAgMS4wMDAwMA0KPiA+ID4gPiA+ ID4gPiAgMyAxLjAwMDAwICAgICAgICAgb3NkLjMgICAgIGRvd24gICAgICAgIDAgICAgICAgICAg MS4wMDAwMA0KPiA+ID4gPiA+ID4gPiAtMyAyLjAwMDAwICAgICBob3N0IGhvc3QyDQo+ID4gPiA+ ID4gPiA+ICA0IDEuMDAwMDAgICAgICAgICBvc2QuNCAgICAgICB1cCAgMS4wMDAwMCAgICAgICAg ICAxLjAwMDAwDQo+ID4gPiA+ID4gPiA+ICA1IDEuMDAwMDAgICAgICAgICBvc2QuNSAgICAgICB1 cCAgMS4wMDAwMCAgICAgICAgICAxLjAwMDAwDQo+ID4gPiA+ID4gPiA+IC00IDIuMDAwMDAgICAg IGhvc3QgaG9zdDMNCj4gPiA+ID4gPiA+ID4gIDYgMS4wMDAwMCAgICAgICAgIG9zZC42ICAgICAg IHVwICAxLjAwMDAwICAgICAgICAgIDEuMDAwMDANCj4gPiA+ID4gPiA+ID4gIDcgMS4wMDAwMCAg ICAgICAgIG9zZC43ICAgICAgIHVwICAxLjAwMDAwICAgICAgICAgIDEuMDAwMDANCj4gPiA+ID4g PiA+ID4NCj4gPiA+ID4gPiA+ID4gQW5kIHRoZSBydWxlIHVzZWQgaWYgeW91IHdlcmUgaW50ZXJl c3RlZDoNCj4gPiA+ID4gPiA+ID4gcnVsZSByZXBsaWNhdGVkX3J1bGVzZXQgew0KPiA+ID4gPiA+ ID4gPiAgICAgICAgIHJ1bGVzZXQgMA0KPiA+ID4gPiA+ID4gPiAgICAgICAgIHR5cGUgcmVwbGlj YXRlZA0KPiA+ID4gPiA+ID4gPiAgICAgICAgIG1pbl9zaXplIDENCj4gPiA+ID4gPiA+ID4gICAg ICAgICBtYXhfc2l6ZSAxMA0KPiA+ID4gPiA+ID4gPiAgICAgICAgIHN0ZXAgdGFrZSByb290DQo+ ID4gPiA+ID4gPiA+ICAgICAgICAgc3RlcCBjaG9vc2VsZWFmIGZpcnN0biAwIHR5cGUgaG9zdA0K PiA+ID4gPiA+ID4gPiAgICAgICAgIHN0ZXAgZW1pdA0KPiA+ID4gPiA+ID4gPiB9DQo+ID4gPiA+ ID4gPiA+DQo+ID4gPiA+ID4gPiA+IEFsc28gYWxsIHRoZSB0dW5hYmxlcyBhcmUgZGVmYXVsdCB2 YWx1ZXMgYW5kIEknbSBydW5uaW5nIHRoZQ0KPiA+ID4gPiA+ID4gPiBtYXN0ZXIgZnJvbQ0KPiA+ ID4gPiBzZXZlcmFsIGRheXMgYWdvLg0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+IEl0 IGlzIG5vcm1hbCBmb3Igc29tZSBtYXBwaW5ncyB0byBoYXZlIG11bHRpcGxlIGl0ZW1zDQo+ID4g PiA+ID4gPiA+ID4gY2hhbmdlLCBhcyBJJ3ZlIGRlc2NyaWJlZCBwcmV2aW91c2x5IG9uIHRoaXMN Cj4gPiA+ID4gPiA+IGxpc3QuDQo+ID4gPiA+ID4gPiA+ID4gSXQncyBhIHJlc3VsdCBvZiB0aGUg ZmFjdCB0aGF0IHdlJ3JlIGNvbnNpZGVyaW5nIHRvdGFsbHkNCj4gPiA+ID4gPiA+ID4gPiBpbmRl cGVuZGVudCBzZXJpZXMgb2YgaXRlbXMsIGJ1dCB3aGV0aGVyIHdlIGFjY2VwdCBhDQo+ID4gPiA+ ID4gPiA+ID4gY2hvaWNlIGFsc28gZGVwZW5kcyBvbiB0aGUgcHJldmlvdXMgY2hvaWNlcyAod2Ug ZG8gbm90IGFsbG93IGR1cHMpLi4NCj4gPiA+ID4gPiA+ID4gPiB3aGljaCBtZWFucyB0aGF0IHlv dSBnZXQgZWNobyBlZmZlY3RzIGluIGxhdGVyIHNsb3RzDQo+ID4gPiA+ID4gPiB3aGVuIHdlIG1h a2UgYSBkaWZmZXJlbnQgY2hvaWNlIGluIGVhcmxpZXIgc2xvdHMuDQo+ID4gPiA+ID4gPiA+ID4N Cj4gPiA+ID4gPiA+ID4gQXMgSSBkZXNjcmliZWQgaW4gdGhlIHByZXZpb3VzIHNlY3Rpb24sIEkg dGhpbmsgdGhlc2UgZXh0cmENCj4gPiA+ID4gPiA+ID4gbWlncmF0aW9ucyBpcyBub3QgY2F1c2Vk IGJ5IGNvbGxpc2lvbnMuIEFuZCBJTU8gdGhlIGlkZWFsDQo+ID4gPiA+ID4gPiA+IHJlc3VsdCB3 aGVuIGFuIG9zZCBmYWlscyBzaG91bGQgYmUgYSBzaW1wbGUgc2hpZnRpbmcsIGp1c3QNCj4gPiA+ ID4gPiA+IGFzIHlvdSBpbGx1c3RyYXRlZCBpbiB0aGUgQ1JVU0ggcGFwZXI6DQo+ID4gPiA+ID4g PiA+DQo+ID4gPiA+ID4gPiA+IDEgMiAzIDQgNSA2DQo+ID4gPiA+ID4gPiA+IGEgYiBjIGQgZSBm IC4uLg0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiBiIGZhaWxzID09Pg0KPiA+ID4gPiA+ ID4gPg0KPiA+ID4gPiA+ID4gPiAxIDIgMyA0IDUgNg0KPiA+ID4gPiA+ID4gPiBhIGMgZCBlIGYg ZyAuLi4NCj4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gLS0tLS0tLS0tLQ0KPiA+ID4gPiA+ ID4gPiBCZXN0IHJlZ2FyZHMsDQo+ID4gPiA+ID4gPiA+IFNhbmdkaQ0KPiA+ID4gPiA+ID4gPg0K PiA+ID4gPiA+ID4gPiA+IFRoYW5rcyENCj4gPiA+ID4gPiA+ID4gPiBzYWdlDQo+ID4gPiA+ID4g PiA+ID4NCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiA+ID4gcGdpZCAgICBiZWZvcmUg PC0+IGFmdGVyICAgICAgICBkaWZmICAgIGRpZmZfbnVtDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjFl ICAgIFs1LCAwLCAzXSA8LT4gWzUsIDAsIDddICAgICAgICAgWzNdICAgICAxDQo+ID4gPiA+ID4g PiA+ID4gPiAwLjFmICAgIFswLCA2LCAzXSA8LT4gWzAsIDYsIDRdICAgICAgICAgWzNdICAgICAx DQo+ID4gPiA+ID4gPiA+ID4gPiAwLjFhICAgIFswLCA1LCAyXSA8LT4gWzAsIDUsIDZdICAgICAg ICAgWzJdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjUgICAgIFs2LCAzLCAwXSA8LT4gWzYs IDAsIDVdICAgICAgICAgWzNdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjQgICAgIFs1LCA3 LCAyXSA8LT4gWzUsIDcsIDBdICAgICAgICAgWzJdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAw LjcgICAgIFszLCA3LCAxXSA8LT4gWzcsIDEsIDVdICAgICAgICAgWzNdICAgICAxDQo+ID4gPiA+ ID4gPiA+ID4gPiAwLjYgICAgIFsyLCAwLCA3XSA8LT4gWzAsIDcsIDRdICAgICAgICAgWzJdICAg ICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjkgICAgIFszLCA1LCAxXSA8LT4gWzUsIDEsIDddICAg ICAgICAgWzNdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjE1ICAgIFsyLCA2LCAxXSA8LT4g WzYsIDEsIDRdICAgICAgICAgWzJdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjE0ICAgIFsz LCA3LCA1XSA8LT4gWzcsIDUsIDFdICAgICAgICAgWzNdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4g PiAwLjE3ICAgIFswLCA0LCAzXSA8LT4gWzAsIDQsIDZdICAgICAgICAgWzNdICAgICAxDQo+ID4g PiA+ID4gPiA+ID4gPiAwLjE2ICAgIFswLCA0LCAzXSA8LT4gWzAsIDQsIDZdICAgICAgICAgWzNd ICAgICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjExICAgIFs0LCA2LCAzXSA8LT4gWzQsIDYsIDBd ICAgICAgICAgWzNdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjEwICAgIFswLCAzLCA2XSA8 LT4gWzAsIDYsIDVdICAgICAgICAgWzNdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjEzICAg IFsxLCA3LCAzXSA8LT4gWzEsIDcsIDVdICAgICAgICAgWzNdICAgICAxDQo+ID4gPiA+ID4gPiA+ ID4gPiAwLmEgICAgIFswLCAzLCA2XSA8LT4gWzAsIDYsIDVdICAgICAgICAgWzNdICAgICAxDQo+ ID4gPiA+ID4gPiA+ID4gPiAwLmMgICAgIFs1LCAwLCAzXSA8LT4gWzUsIDAsIDZdICAgICAgICAg WzNdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLmIgICAgIFsyLCA0LCA2XSA8LT4gWzQsIDYs IDFdICAgICAgICAgWzJdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLjE4ICAgIFs3LCAzLCA1 XSA8LT4gWzcsIDUsIDFdICAgICAgICAgWzNdICAgICAxDQo+ID4gPiA+ID4gPiA+ID4gPiAwLmYg ICAgIFsyLCA2LCA1XSA8LT4gWzYsIDUsIDFdICAgICAgICAgWzJdICAgICAxDQo+ID4gPiA+ID4g PiA+ID4gPiBDaGFuZ2VkIHBnIHJhdGlvOiAyMCAvIDMyDQo+ID4gPiA+ID4gPiA+ID4gPg0KPiA+ ID4gPiA+ID4gPiA+ID4gQ3VycmVudGx5IHRoZSBvbmx5IGRlZmVjdCBJIGNhbiBzZWUgZnJvbSB0 aGUgY2hhbmdlIGlzDQo+ID4gPiA+ID4gPiA+ID4gPiB0aGF0IHRoZSBjaGFuY2UgZm9yIGEgZ2l2 ZW4gcGcgdG8gc3VjY2Vzc2Z1bGx5DQo+ID4gPiA+ID4gPiA+ID4gY2hvb3NlIHJlcXVpcmVkIGF2 YWlsYWJsZSBPU0RzIG1pZ2h0IGJlIGEgYml0IGxvd2VyDQo+ID4gPiA+ID4gPiA+ID4gY29tcGFy ZWQgd2l0aCBiZWZvcmUuIEhvd2V2ZXIsIEkgYmVsaWV2ZSBpdCB3aWxsIGNhdXNlDQo+ID4gPiA+ ID4gPiA+ID4gcHJvYmxlbXMgb25seSB3aGVuIHRoZSBjbHVzdGVyIGlzIHByZXR0eSBzbWFsbCBh bmQNCj4gPiA+ID4gPiA+ID4gPiBkZWdyYWRlZC4gQW5kIGluIHRoYXQgY2FzZSwgd2UgY2FuIHN0 aWxsIG1ha2UgaXQgd29ya2FibGUNCj4gPiA+ID4gPiA+ID4gPiBieSB0dW5pbmcgc29tZQ0KPiA+ ID4gPiA+ID4gb2YgdGhlIGNydXNobWFwIHBhcmFtZXRlcnMgc3VjaCBhcyBjaG9vc2VsZWFmX3Ry aWVzLg0KPiA+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiA+IEFueXdheSBJJ20gbm90 IHN1cmUgaWYgaXQgd291bGQgcmFpc2UgYW55IG90aGVyIGlzc3VlcywNCj4gPiA+ID4gPiA+ID4g PiA+IGNvdWxkIHlvdSBwbGVhc2UgcmV2aWV3IGl0IGFuZCBtYXliZSBnaXZlIG1lDQo+ID4gPiA+ ID4gPiA+ID4gc29tZSBzdWdnZXN0aW9ucz8gVGhhbmsgeW91IQ0KPiA+ID4gPiA+ID4gPiA+ID4N Cj4gPiA+ID4gPiA+ID4gPiA+IC0tLS0tLS0tLS0NCj4gPiA+ID4gPiA+ID4gPiA+IEJlc3QgcmVn YXJkcywNCj4gPiA+ID4gPiA+ID4gPiA+IFNhbmdkaQ0KPiA+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ ID4gPiA+ID4gPiA+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tDQo+ID4gPiA+ID4gPiA+ID4gPiAtLQ0KPiA+ID4gPiA+ID4gPiA+ID4gLS0N Cj4gPiA+ID4gPiA+ID4gPiA+IC0tDQo+ID4gPiA+ID4gPiA+ID4gPiAtLS0tDQo+ID4gPiA+ID4g PiA+ID4gPiAtLS0tDQo+ID4gPiA+ID4gPiA+ID4gPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ID4gPiA+ID4gPiA+ID4gLS0NCj4g PiA+ID4gPiA+ID4gPiA+IC0tDQo+ID4gPiA+ID4gPiA+ID4gPiAtLQ0KPiA+ID4gPiA+ID4gPiA+ ID4gLSA/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/DQo+ID4gPiA+ID4g PiA+ID4gPiA/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/DQo+ID4gPiA+ ID4gPiA+ID4gPiA/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/DQo+ID4g PiA+ID4gPiA+ID4gPiA/Pz8NCj4gPiA+ID4gPiA+ID4gPiA+IFRoaXMgZS1tYWlsIGFuZCBpdHMg YXR0YWNobWVudHMgY29udGFpbiBjb25maWRlbnRpYWwNCj4gPiA+ID4gPiA+ID4gPiA+IGluZm9y bWF0aW9uIGZyb20gSDNDLCB3aGljaCBpcyBpbnRlbmRlZCBvbmx5IGZvciB0aGUNCj4gPiA+ID4g PiA+ID4gPiA+IHBlcnNvbiBvciBlbnRpdHkgd2hvc2UgYWRkcmVzcyBpcyBsaXN0ZWQgYWJvdmUu IEFueSB1c2UNCj4gPiA+ID4gPiA+ID4gPiA+IG9mIHRoZSBpbmZvcm1hdGlvbiBjb250YWluZWQg aGVyZWluIGluIGFueSB3YXkNCj4gPiA+ID4gPiA+ID4gPiA+IChpbmNsdWRpbmcsIGJ1dCBub3Qg bGltaXRlZCB0bywgdG90YWwgb3IgcGFydGlhbA0KPiA+ID4gPiA+ID4gPiA+ID4gZGlzY2xvc3Vy ZSwgcmVwcm9kdWN0aW9uLCBvcg0KPiA+ID4gPiA+ID4gPiA+ID4gZGlzc2VtaW5hdGlvbikgYnkg cGVyc29ucyBvdGhlciB0aGFuIHRoZSBpbnRlbmRlZA0KPiA+ID4gPiA+ID4gPiA+ID4gcmVjaXBp ZW50KHMpIGlzIHByb2hpYml0ZWQuIElmIHlvdSByZWNlaXZlIHRoaXMgZS1tYWlsDQo+ID4gPiA+ ID4gPiA+ID4gPiBpbiBlcnJvciwgcGxlYXNlIG5vdGlmeSB0aGUgc2VuZGVyIGJ5IHBob25lIG9y IGVtYWlsDQo+ID4gPiA+ID4gPiA+ID4gPiBpbW1lZGlhdGVseSBhbmQNCj4gPiA+ID4gZGVsZXRl IGl0IQ0KPiA+ID4gPiA+ID4gPiA+ID4NCj4gPiA+ID4NCj4gPiBOPz8/Pz9yPz95Pz8/Pz8/WD8/ P3Y/Pz8pP3subj8/Pz8/ej9dej8/Pz9heT8dPz8/P2ogPz9mPz8/aD8/Pz8/Hj93Pz8/DQo+ID4g PiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ID4gPiA/Pz9qOit2Pz8/dz8/Pz8/Pz8/ID8/Pz96Wis/ Pz8/Pz8/aiI/Pz8/aQ0KPiA+ID4gPiA+ID4gPiA+IC0tDQo+ID4gPiA+ID4gPiA+ID4gVG8gdW5z dWJzY3JpYmUgZnJvbSB0aGlzIGxpc3Q6IHNlbmQgdGhlIGxpbmUgInVuc3Vic2NyaWJlDQo+ID4g PiA+ID4gPiA+ID4gY2VwaC1kZXZlbCIgaW4gdGhlIGJvZHkgb2YgYSBtZXNzYWdlIHRvDQo+ID4g PiA+ID4gPiA+ID4gbWFqb3Jkb21vQHZnZXIua2VybmVsLm9yZyBNb3JlIG1ham9yZG9tbyBpbmZv IGF0DQo+ID4gPiA+ID4gPiA+ID4gaHR0cDovL3ZnZXIua2VybmVsLm9yZy9tYWpvcmRvbW8taW5m by5odG1sDQo+ID4gPiA+ID4gPiA+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+ID4gPiA+ID4gPiAtLQ0KPiA+ID4gPiA+ID4g PiAtLQ0KPiA+ID4gPiA+ID4gPiAtLQ0KPiA+ID4gPiA+ID4gPiAtLS0tDQo+ID4gPiA+ID4gPiA+ IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQ0KPiA+ID4gPiA+ID4gPiAtLQ0KPiA+ID4gPiA+ID4gPiAtID8/Pz8/Pz8/Pz8/Pz8/Pz8/ Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8NCj4gPiA+ID4gPiA+ID4gPz8/Pz8/Pz8/Pz8/Pz8/Pz8/ Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pw0KPiA+ID4gPiA+ID4gPiA/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/ Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/DQo+ID4gPiA+ID4gPiA+ID8/Pw0KPiA+ID4gPiA+ID4gPiBU aGlzIGUtbWFpbCBhbmQgaXRzIGF0dGFjaG1lbnRzIGNvbnRhaW4gY29uZmlkZW50aWFsDQo+ID4g PiA+ID4gPiA+IGluZm9ybWF0aW9uIGZyb20gSDNDLCB3aGljaCBpcyBpbnRlbmRlZCBvbmx5IGZv ciB0aGUgcGVyc29uDQo+ID4gPiA+ID4gPiA+IG9yIGVudGl0eSB3aG9zZSBhZGRyZXNzIGlzIGxp c3RlZCBhYm92ZS4gQW55IHVzZSBvZiB0aGUNCj4gPiA+ID4gPiA+ID4gaW5mb3JtYXRpb24gY29u dGFpbmVkIGhlcmVpbiBpbiBhbnkgd2F5IChpbmNsdWRpbmcsIGJ1dCBub3QNCj4gPiA+ID4gPiA+ ID4gbGltaXRlZCB0bywgdG90YWwgb3IgcGFydGlhbCBkaXNjbG9zdXJlLCByZXByb2R1Y3Rpb24s IG9yDQo+ID4gPiA+ID4gPiA+IGRpc3NlbWluYXRpb24pIGJ5IHBlcnNvbnMgb3RoZXIgdGhhbiB0 aGUgaW50ZW5kZWQNCj4gPiA+ID4gPiA+ID4gcmVjaXBpZW50KHMpIGlzIHByb2hpYml0ZWQuIElm IHlvdSByZWNlaXZlIHRoaXMgZS1tYWlsIGluDQo+ID4gPiA+ID4gPiA+IGVycm9yLCBwbGVhc2Ug bm90aWZ5IHRoZSBzZW5kZXIgYnkgcGhvbmUgb3IgZW1haWwNCj4gPiA+ID4gPiA+ID4gaW1tZWRp YXRlbHkgYW5kDQo+ID4gZGVsZXRlIGl0IQ0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPg0KPiA+IE4/ Pz8/P3I/P3k/Pz8/Pz9YPz8/dj8/Pyk/ey5uPz8/Pz96P116Pz8/P2F5Px0/Pz8/aiA/P2Y/Pz9o Pz8/Pz8eP3c/Pz8NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA/Pz9qOit2Pz8/dz8/Pz8/Pz8/ ID8/Pz96Wis/Pz8/Pz8/aiI/Pz8/aQ0KPiA+ID4gPiA+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPiA+ID4gPiAtLQ0K PiA+ID4gPiA+IC0tDQo+ID4gPiA+ID4gLS0NCj4gPiA+ID4gPiAtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPiA+ID4gPiA/ Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/DQo+ID4gPiA+ID4gPz8/Pz8/ Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pw0KPiA+ID4gPiA+ID8/Pz8/Pz8/Pz8/ Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8NCj4gPiA+ID4gPiA/Pz8NCj4gPiA+ID4gPiBU aGlzIGUtbWFpbCBhbmQgaXRzIGF0dGFjaG1lbnRzIGNvbnRhaW4gY29uZmlkZW50aWFsIGluZm9y bWF0aW9uDQo+ID4gPiA+ID4gZnJvbSBIM0MsIHdoaWNoIGlzIGludGVuZGVkIG9ubHkgZm9yIHRo ZSBwZXJzb24gb3IgZW50aXR5IHdob3NlDQo+ID4gPiA+ID4gYWRkcmVzcyBpcyBsaXN0ZWQgYWJv dmUuIEFueSB1c2Ugb2YgdGhlIGluZm9ybWF0aW9uIGNvbnRhaW5lZA0KPiA+ID4gPiA+IGhlcmVp biBpbiBhbnkgd2F5IChpbmNsdWRpbmcsIGJ1dCBub3QgbGltaXRlZCB0bywgdG90YWwgb3INCj4g PiA+ID4gPiBwYXJ0aWFsIGRpc2Nsb3N1cmUsIHJlcHJvZHVjdGlvbiwgb3IgZGlzc2VtaW5hdGlv bikgYnkgcGVyc29ucw0KPiA+ID4gPiA+IG90aGVyIHRoYW4gdGhlIGludGVuZGVkDQo+ID4gPiA+ ID4gcmVjaXBpZW50KHMpIGlzIHByb2hpYml0ZWQuIElmIHlvdSByZWNlaXZlIHRoaXMgZS1tYWls IGluIGVycm9yLA0KPiA+ID4gPiA+IHBsZWFzZSBub3RpZnkgdGhlIHNlbmRlciBieSBwaG9uZSBv ciBlbWFpbCBpbW1lZGlhdGVseSBhbmQgZGVsZXRlIGl0IQ0KPiA+ID4gPiA+DQo+ID4gPiA+IC0t DQo+ID4gPiA+IFRvIHVuc3Vic2NyaWJlIGZyb20gdGhpcyBsaXN0OiBzZW5kIHRoZSBsaW5lICJ1 bnN1YnNjcmliZSBjZXBoLWRldmVsIg0KPiA+ID4gPiBpbiB0aGUgYm9keSBvZiBhIG1lc3NhZ2Ug dG8gbWFqb3Jkb21vQHZnZXIua2VybmVsLm9yZyBNb3JlDQo+ID4gbWFqb3Jkb21vDQo+ID4gPiA+ IGluZm8gYXQgaHR0cDovL3ZnZXIua2VybmVsLm9yZy9tYWpvcmRvbW8taW5mby5odG1sDQo+ID4g LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQ0KPiA+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+IC0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiA+IOacrOmCruS7tuWPiuWFtumZhOS7 tuWQq+acieadreW3nuWNjuS4iemAmuS/oeaKgOacr+aciemZkOWFrOWPuOeahOS/neWvhuS/oeaB r++8jOS7hemZkOS6juWPkQ0KPiA+IOmAgee7meS4iumdouWcsOWdgOS4reWIl+WHug0KPiA+IOea hOS4quS6uuaIlue+pOe7hOOAguemgeatouS7u+S9leWFtuS7luS6uuS7peS7u+S9leW9ouW8j+S9 v+eUqO+8iOWMheaLrOS9huS4jemZkOS6juWFqOmDqOaIlg0KPiA+IOmDqOWIhuWcsOazhOmcsuOA geWkjeWItuOAgQ0KPiA+IOaIluaVo+WPke+8ieacrOmCruS7tuS4reeahOS/oeaBr+OAguWmguae nOaCqOmUmeaUtuS6huacrOmCruS7tu+8jOivt+aCqOeri+WNs+eUteivneaIlumCruS7tg0KPiA+ IOmAmuefpeWPkeS7tuS6uuW5tuWIoOmZpOacrA0KPiA+IOmCruS7tu+8gQ0KPiA+IFRoaXMgZS1t YWlsIGFuZCBpdHMgYXR0YWNobWVudHMgY29udGFpbiBjb25maWRlbnRpYWwgaW5mb3JtYXRpb24g ZnJvbQ0KPiA+IEgzQywgd2hpY2ggaXMgaW50ZW5kZWQgb25seSBmb3IgdGhlIHBlcnNvbiBvciBl bnRpdHkgd2hvc2UgYWRkcmVzcyBpcyBsaXN0ZWQgYWJvdmUuDQo+ID4gQW55IHVzZSBvZiB0aGUg aW5mb3JtYXRpb24gY29udGFpbmVkIGhlcmVpbiBpbiBhbnkgd2F5IChpbmNsdWRpbmcsIGJ1dA0K PiA+IG5vdCBsaW1pdGVkIHRvLCB0b3RhbCBvciBwYXJ0aWFsIGRpc2Nsb3N1cmUsIHJlcHJvZHVj dGlvbiwgb3INCj4gPiBkaXNzZW1pbmF0aW9uKSBieSBwZXJzb25zIG90aGVyIHRoYW4gdGhlIGlu dGVuZGVkDQo+ID4gcmVjaXBpZW50KHMpIGlzIHByb2hpYml0ZWQuIElmIHlvdSByZWNlaXZlIHRo aXMgZS1tYWlsIGluIGVycm9yLA0KPiA+IHBsZWFzZSBub3RpZnkgdGhlIHNlbmRlciBieSBwaG9u ZSBvciBlbWFpbCBpbW1lZGlhdGVseSBhbmQgZGVsZXRlIGl0IQ0K