From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id E1E1289EBD for ; Wed, 24 Oct 2018 17:04:14 +0000 (UTC) Date: Wed, 24 Oct 2018 10:04:14 -0700 From: Rodrigo Vivi Message-ID: <20181024170414.GB3942@intel.com> References: <20181024133421.26047-1-daniel.vetter@ffwll.ch> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20181024133421.26047-1-daniel.vetter@ffwll.ch> Subject: Re: [igt-dev] [PATCH i-g-t] README|CONTRIBUTING: Move to .md List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: Daniel Vetter Cc: IGT development , Daniel Vetter List-ID: T24gV2VkLCBPY3QgMjQsIDIwMTggYXQgMDM6MzQ6MjFQTSArMDIwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToKPiBMb29rcyBzbyBtdWNoIGJldHRlciBpbiB0aGUgZ2l0bGFiIFVJLiBNYXliZSB3ZSB3 YW50IHRvIHNwbGl0IG91dCBzb21lCj4gb2YgdGhlc2UgUkVBRE1FIGludG8gc3ViZGlyZWN0b3Jp ZXMgLi4uCj4gCj4gdjI6IFBvbGlzaCBsYXlvdXQgYSBiaXQuIENoYW5nZXMgYXJlIG9ubHkgd2hp dGVzcGFjZSwgYnV0IFJFQURNRSBpcyBzbwo+IGNvbXBsaWNhdGVkIHJld29ya2VkIHRoYXQgZ2l0 J3MgcmVuYW1lIGRldGVjdGlvbiBkb2Vzbid0IHNwb3QgdGhlCj4gc2ltaWxhcml0aWVzIGFueW1v cmUuCj4gCj4gU2lnbmVkLW9mZi1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBpbnRl bC5jb20+Cj4gLS0tCj4gTm90ZSB0aGlzIG5lZWRzIFBldHJpJ3MgZWFybGllciBwYXRjaCB0byBh cHBseSBjbGVhbmx5Lgo+IC1EYW5pZWwKPiAtLS0KPiAgQ09OVFJJQlVUSU5HID0+IENPTlRSSUJV VElORy5tZCB8ICAgNiArLQo+ICBSRUFETUUgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMjAy IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICBSRUFETUUubWQgICAgICAgICAgICAg ICAgICAgICAgIHwgMjEwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gIDMgZmls ZXMgY2hhbmdlZCwgMjEzIGluc2VydGlvbnMoKyksIDIwNSBkZWxldGlvbnMoLSkKPiAgcmVuYW1l IENPTlRSSUJVVElORyA9PiBDT05UUklCVVRJTkcubWQgKDk1JSkKPiAgZGVsZXRlIG1vZGUgMTAw NjQ0IFJFQURNRQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgUkVBRE1FLm1kCj4gCj4gZGlmZiAtLWdp dCBhL0NPTlRSSUJVVElORyBiL0NPTlRSSUJVVElORy5tZAo+IHNpbWlsYXJpdHkgaW5kZXggOTUl Cj4gcmVuYW1lIGZyb20gQ09OVFJJQlVUSU5HCj4gcmVuYW1lIHRvIENPTlRSSUJVVElORy5tZAo+ IGluZGV4IDFhNjhmY2Y1Y2M5Yy4uMjdjOGU3OTY3YjkzIDEwMDY0NAo+IC0tLSBhL0NPTlRSSUJV VElORwo+ICsrKyBiL0NPTlRSSUJVVElORy5tZAo+IEBAIC04LDcgKzgsNyBAQCBBIHNob3J0IGxp c3Qgb2YgY29udHJpYnV0aW9uIGd1aWRlbGluZXM6Cj4gIC0gUGxlYXNlIHN1Ym1pdCBwYXRjaGVz IGZvcm1hdHRlZCB3aXRoIGdpdCBzZW5kLWVtYWlsL2dpdCBmb3JtYXQtcGF0Y2ggb3IKPiAgICBl cXVpdmFsZW50IHRvOgo+ICAKPiAtICAgIERldmVsb3BtZW50IG1haWxpbmcgbGlzdCBmb3IgSUdU IEdQVSBUb29scyA8aWd0LWRldkBsaXN0cy5mcmVlZGVza3RvcC5vcmc+Cj4gKyAgICAgIERldmVs b3BtZW50IG1haWxpbmcgbGlzdCBmb3IgSUdUIEdQVSBUb29scyA8aWd0LWRldkBsaXN0cy5mcmVl ZGVza3RvcC5vcmc+Cj4gIAo+ICAgIEZvciBhIHRyYW5zaXRpb24gcGVyaW9kIHBhdGNoZXMgYXJl IGFjY2VwdGVkIG9uIGJvdGggdGhlIGlndC1kZXYgbWFpbGluZyBsaXN0Cj4gICAgYW5kIHRoZSBm b3JtZXIgaW50ZWwtZ2Z4IG1haWxpbmcgbGlzdCAod2l0aCB0aGUgYXBwcm9wcmlhdGUgcGF0Y2gK PiBAQCAtMTgsMTMgKzE4LDEzIEBAIEEgc2hvcnQgbGlzdCBvZiBjb250cmlidXRpb24gZ3VpZGVs aW5lczoKPiAgICBoYXZlIGEgbmVlZCB0byBkbyBzbywgYXMgdGhleSB3aWxsIGdldCBkZWR1cGxp Y2F0ZWQgc28gdGhleSBvbmx5IGFwcGVhciBhbmQKPiAgICBhcmUgdGVzdGVkIGluIG9uZSBQYXRj aHdvcmsgaW5zdGFuY2UuCj4gIAo+IC0gICAgSW50ZWwgR0ZYIGRpc2N1c3Npb24gPGludGVsLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmc+Cj4gKyAgICAgIEludGVsIEdGWCBkaXNjdXNzaW9uIDxp bnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnPgo+ICAKPiAgICBQbGVhc2UgdXNlIC0tc3Vi amVjdC1wcmVmaXg9IlBBVENIIGktZy10IiBzbyBJR1QgcGF0Y2hlcyBhcmUgZWFzaWx5Cj4gICAg aWRlbnRpZmllZCBpbiB0aGUgbWFzc2l2ZSBhbW91bnQgbWFpbHMgb24gaW50ZWwtZ2Z4LiBUbyBl bnN1cmUgdGhpcyBpcyBhbHdheXMKPiAgICBkb25lLCBtZXNvbi5zaCAoYW5kIGF1dG9nZW4uc2gp IHdpbGwgcnVuOgo+ICAKPiAtICAgIGdpdCBjb25maWcgZm9ybWF0LnN1YmplY3RwcmVmaXggIlBB VENIIGktZy10Igo+ICsgICAgICBnaXQgY29uZmlnIGZvcm1hdC5zdWJqZWN0cHJlZml4ICJQQVRD SCBpLWctdCIKPiAgCj4gICAgb24gaXRzIGZpcnN0IGludm9jYXRpb24uCj4gIAo+IGRpZmYgLS1n aXQgYS9SRUFETUUgYi9SRUFETUUKPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCA3 OGQxNDA2MGRjY2QuLjAwMDAwMDAwMDAwMAo+IC0tLSBhL1JFQURNRQo+ICsrKyAvZGV2L251bGwK PiBAQCAtMSwyMDIgKzAsMCBAQAo+IC1JR1QgR1BVIFRvb2xzCj4gLT09PT09PT09PT09PT0KPiAt Cj4gLURlc2NyaXB0aW9uCj4gLS0tLS0tLS0tLS0tCj4gLQo+IC1JR1QgR1BVIFRvb2xzIGlzIGEg Y29sbGVjdGlvbiBvZiB0b29scyBmb3IgZGV2ZWxvcG1lbnQgYW5kIHRlc3Rpbmcgb2YgdGhlIERS TQo+IC1kcml2ZXJzLiBUaGVyZSBhcmUgbWFueSBtYWNyby1sZXZlbCB0ZXN0IHN1aXRlcyB0aGF0 IGdldCB1c2VkIGFnYWluc3QgdGhlCj4gLWRyaXZlcnMsIGluY2x1ZGluZyB4dGVzdCwgcmVuZGVy Y2hlY2ssIHBpZ2xpdCwgYW5kIG9nbGNvbmZvcm0sIGJ1dCBmYWlsdXJlcyBmcm9tCj4gLXRob3Nl IGNhbiBiZSBkaWZmaWN1bHQgdG8gdHJhY2sgZG93biB0byBrZXJuZWwgY2hhbmdlcywgYW5kIG1h bnkgcmVxdWlyZQo+IC1jb21wbGljYXRlZCBidWlsZCBwcm9jZWR1cmVzIG9yIHNwZWNpZmljIHRl c3RpbmcgZW52aXJvbm1lbnRzIHRvIGdldCB1c2VmdWwKPiAtcmVzdWx0cy4gVGhlcmVmb3JlLCBJ R1QgR1BVIFRvb2xzIGluY2x1ZGVzIGxvdy1sZXZlbCB0b29scyBhbmQgdGVzdHMKPiAtc3BlY2lm aWNhbGx5IGZvciBkZXZlbG9wbWVudCBhbmQgdGVzdGluZyBvZiB0aGUgRFJNIERyaXZlcnMuCj4g LQo+IC1JR1QgR1BVIFRvb2xzIGlzIHNwbGl0IGludG8gc2V2ZXJhbCBzZWN0aW9uczoKPiAtCj4g LWJlbmNobWFya3MvCj4gLQlUaGlzIGlzIGEgY29sbGVjdGlvbiBvZiB1c2VmdWwgbWljcm9iZW5j aG1hcmtzIHRoYXQgY2FuIGJlIHVzZWQgdG8gdHVuZQo+IC0JRFJNIGNvZGUgaW4gcmVsZXZhbnQg d2F5cy4KPiAtCj4gLQlUaGUgYmVuY2htYXJrcyByZXF1aXJlIEtNUyB0byBiZSBlbmFibGVkLiAg V2hlbiBydW4gd2l0aCBhbiBYIFNlcnZlcgo+IC0JcnVubmluZywgdGhleSBtdXN0IGJlIHJ1biBh cyByb290IHRvIGF2b2lkIHRoZSBhdXRoZW50aWNhdGlvbgo+IC0JcmVxdWlyZW1lbnQuCj4gLQo+ IC0JTm90ZSB0aGF0IGEgZmV3IG90aGVyIG1pY3JvYmVuY2htYXJrcyBhcmUgaW4gdGVzdHMgKGxp a2UgZ2VtX2d0dF9zcGVlZCkuCj4gLQo+IC10ZXN0cy8KPiAtCVRoaXMgaXMgYSBzZXQgb2YgYXV0 b21hdGVkIHRlc3RzIHRvIHJ1biBhZ2FpbnN0IHRoZSBEUk0gdG8gdmFsaWRhdGUKPiAtCWNoYW5n ZXMuIE1hbnkgb2YgdGhlIHRlc3RzIGhhdmUgc3VidGVzdHMsIHdoaWNoIGNhbiBiZSBsaXN0ZWQg YnkgdXNpbmcKPiAtCXRoZSAtLWxpc3Qtc3VidGVzdHMgY29tbWFuZCBsaW5lIG9wdGlvbiBhbmQg dGhlbiBydW4gdXNpbmcgdGhlCj4gLQktLXJ1bi1zdWJ0ZXN0IG9wdGlvbi4gSWYgLS1ydW4tc3Vi dGVzdCBpcyBub3QgdXNlZCwgYWxsIHN1YnRlc3RzIHdpbGwKPiAtCWJlIHJ1bi4gU29tZSB0ZXN0 cyBoYXZlIGZ1dGhlciBvcHRpb25zIGFuZCB0aGVzZSBhcmUgZGV0YWlsZWQgYnkgdXNpbmcKPiAt CXRoZSAtLWhlbHAgb3B0aW9uLgo+IC0KPiAtCVRoZSB0ZXN0IHN1aXRlIGNhbiBiZSBydW4gdXNp bmcgdGhlIHJ1bi10ZXN0cy5zaCBzY3JpcHQgYXZhaWxhYmxlIGluCj4gLQl0aGUgc2NyaXB0cyBk aXJlY3RvcnkuIFBpZ2xpdCBpcyB1c2VkIHRvIHJ1biB0aGUgdGVzdHMgYW5kIGNhbiBlaXRoZXIK PiAtCWJlIGluc3RhbGxlZCBmcm9tIHlvdXIgZGlzdHJpYnV0aW9uIChpZiBhdmFpbGFibGUpLCBv ciBjYW4gYmUKPiAtCWRvd25sb2FkZWQgbG9jYWxseSBmb3IgdXNlIHdpdGggdGhlIHNjcmlwdCBi eSBydW5uaW5nOgo+IC0KPiAtCS4vc2NyaXB0cy9ydW4tdGVzdHMuc2ggLWQKPiAtCj4gLQlydW4t dGVzdHMuc2ggaGFzIG9wdGlvbnMgZm9yIGZpbHRlcmluZyBhbmQgZXhjbHVkaW5nIHRlc3RzIGZy b20gdGVzdAo+IC0JcnVuczoKPiAtCj4gLQkgIC10IDxyZWdleD4gICAgICBvbmx5IGluY2x1ZGUg dGVzdHMgdGhhdCBtYXRjaCB0aGUgcmVndWxhciBleHByZXNzaW9uCj4gLQkgIC14IDxyZWdleD4g ICAgICBleGNsdWRlIHRlc3RzIHRoYXQgbWF0Y2ggdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbgo+IC0K PiAtCVVzZWZ1bCBwYXR0ZXJucyBmb3IgdGVzdCBmaWx0ZXJpbmcgYXJlIGRlc2NyaWJlZCBpbiB0 aGUgQVBJCj4gLQlkb2N1bWVudGF0aW9uIGFuZCB0aGUgZnVsbCBsaXN0IG9mIHRlc3RzIGFuZCBz dWJ0ZXN0cyBjYW4gYmUgcHJvZHVjZWQKPiAtCWJ5IHBhc3NpbmcgLWwgdG8gdGhlIHJ1bi10ZXN0 cy5zaCBzY3JpcHQuCj4gLQo+IC0JUmVzdWx0cyBhcmUgd3JpdHRlbiB0byBhIEpTT04gZmlsZSBh bmQgYW4gSFRNTCBzdW1tYXJ5IGNhbiBhbHNvIGJlCj4gLQljcmVhdGVkIGJ5IHBhc3NpbmcgLXMg dG8gdGhlIHJ1bi10ZXN0cy5zaCBzY3JpcHQuIEZ1cnRoZXIgb3B0aW9ucyBhcmUKPiAtCWFyZSBk ZXRhaWxlZCBieSB1c2luZyB0aGUgLWggb3B0aW9uLgo+IC0KPiAtCj4gLQlJZiBub3QgdXNpbmcg dGhlIHNjcmlwdCwgcGlnbGl0IGNhbiBiZSBvYnRhaW5lZCBmcm9tOgo+IC0KPiAtCWdpdDovL2Fu b25naXQuZnJlZWRlc2t0b3Aub3JnL3BpZ2xpdAo+IC0KPiAtCVRoZXJlIGlzIG5vIG5lZWQgdG8g YnVpbGQgYW5kIGluc3RhbGwgcGlnbGl0IGlmIGl0IGlzIG9ubHkgZ29pbmcgdG8gYmUKPiAtCXVz ZWQgZm9yIHJ1bm5pbmcgaS1nLXQgdGVzdHMuCj4gLQo+IC0JU2V0IHRoZSBJR1RfVEVTVF9ST09U IGVudmlyb25tZW50IHZhcmlhYmxlIHRvIHBvaW50IHRvIHRoZSB0ZXN0cwo+IC0JZGlyZWN0b3J5 LCBvciBzZXQgdGhlIHBhdGgga2V5IGluIHRoZSAiaWd0IiBzZWN0aW9uIG9mIHBpZ2xpdC5jb25m IHRvCj4gLQl0aGUgaWd0LWdwdS10b29scyByb290IGRpcmVjdG9yeS4KPiAtCj4gLQlUaGUgdGVz dHMgaW4gdGhlIGktZy10IHNvdXJjZXMgbmVlZCB0byBoYXZlIGJlZW4gYnVpbHQgYWxyZWFkeS4g VGhlbiB3ZQo+IC0JY2FuIHJ1biB0aGUgdGVzdGNhc2VzIHdpdGggKGFzIHVzdWFsIGFzIHJvb3Qs IG5vIG90aGVyIGRybSBjbGllbnRzCj4gLQlydW5uaW5nKToKPiAtCj4gLQlwaWdsaXQtc291cmNl cyAjIC4vcGlnbGl0IHJ1biBpZ3QgPHJlc3VsdHMtZmlsZT4KPiAtCj4gLQlUaGUgdGVzdGxpc3Qg aXMgYnVpbHQgYXQgcnVudGltZSwgc28gbm8gbmVlZCB0byB1cGRhdGUgYW55dGhpbmcgaW4KPiAt CXBpZ2xpdCB3aGVuIGFkZGluZyBuZXcgdGVzdHMuIFNlZQo+IC0KPiAtCXBpZ2xpdC1zb3VyY2Vz ICQgLi9waWdsaXQgcnVuIC1oCj4gLQo+IC0JZm9yIHNvbWUgdXNlZnVsIG9wdGlvbnMuCj4gLQo+ IC0JUGlnbGl0IG9ubHkgcnVucyBhIGRlZmF1bHQgc2V0IG9mIHRlc3RzIGFuZCBpcyB1c2VmdWwg Zm9yIHJlZ3Jlc3Npb24KPiAtCXRlc3RpbmcuIE90aGVyIHRlc3RzIG5vdCBydW4gYXJlOgo+IC0J LSB0ZXN0cyB0aGF0IG1pZ2h0IGhhbmcgdGhlIGdwdSwgc2VlIEhBTkcgaW4gTWFrZWZpbGUuYW0K PiAtCS0gZ2VtX3N0cmVzcywgYSBzdHJlc3MgdGVzdCBzdWl0ZS4gTG9vayBhdCB0aGUgc291cmNl IGZvciBhbGwgdGhlCj4gLQkgIHZhcmlvdXMgb3B0aW9ucy4KPiAtCS0gdGVzdGRpc3BsYXkgaXMg b25seSBydW4gaW4gdGhlIGRlZmF1bHQgbW9kZS4gdGVzdGRpc3BsYXkgaGFzIHRvbnMgb2YKPiAt CSAgb3B0aW9ucyB0byB0ZXN0IGRpZmZlcmVudCBrbXMgZnVuY3Rpb25hbGl0eSwgYWdhaW4gcmVh ZCB0aGUgc291cmNlIGZvcgo+IC0JICB0aGUgZGV0YWlscy4KPiAtCj4gLWxpYi8KPiAtCUNvbW1v biBoZWxwZXIgZnVuY3Rpb25zIGFuZCBoZWFkZXJzIHVzZWQgYnkgdGhlIG90aGVyIHRvb2xzLgo+ IC0KPiAtbWFuLwo+IC0JTWFucGFnZXMsIHVuZm9ydHVuYXRlbHkgcmF0aGVyIGluY29tcGxldGUu Cj4gLQo+IC10b29scy8KPiAtCVRoaXMgaXMgYSBjb2xsZWN0aW9uIG9mIGRlYnVnZ2luZyB0b29s cyB0aGF0IGhhZCBwcmV2aW91c2x5IGJlZW4KPiAtCWJ1aWx0IHdpdGggdGhlIDJEIGRyaXZlciBi dXQgbm90IHNoaXBwZWQuICBTb21lIGRpc3Ryb3Mgd2VyZSBoYWNraW5nCj4gLQl1cCB0aGUgMkQg YnVpbGQgdG8gc2hpcCB0aGVtLiAgSW5zdGVhZCwgaGVyZSdzIGEgc2VwYXJhdGUgcGFja2FnZSBm b3IKPiAtCXBlb3BsZSBkZWJ1Z2dpbmcgdGhlIGRyaXZlci4KPiAtCj4gLQlUaGVzZSB0b29scyBn ZW5lcmFsbHkgbXVzdCBiZSBydW4gYXMgcm9vdCwgZXhjZXB0IGZvciB0aGUgb25lcyB0aGF0IGp1 c3QKPiAtCWRlY29kZSBkdW1wcy4KPiAtCj4gLWRlYnVnZ2VyLwo+IC0JVGhpcyB0b29sIGlzIHRv IGJlIHVzZWQgdG8gZG8gc2hhZGVyIGRlYnVnZ2luZy4gSXQgYWN0cyBsaWtlIGEKPiAtCWRlYnVn IHNlcnZlciBhY2NlcHRpbmcgY29ubmVjdGlvbnMgZnJvbSBkZWJ1ZyBjbGllbnRzIHN1Y2ggYXMK PiAtCW1lc2EuIFRoZSBjb25uZWN0aW9ucyBpcyBtYWRlIHdpdGggdW5peCBkb21haW4gc29ja2V0 cywgYW5kIGF0IHNvbWUKPiAtCXBvaW50IGl0IHdvdWxkIGJlIG5pY2UgaWYgdGhpcyBkaXJlY3Rv cnkgY29udGFpbmVkIGEgbGlicmFyeSBmb3IKPiAtCWluaXRpYXRpbmcgY29ubmVjdGlvbnMgd2l0 aCBkZWJ1ZyBjbGllbnRzLi4KPiAtCj4gLQlUaGUgZGVidWdnZXIgbXVzdCBiZSBydW4gYXMgcm9v dDogInN1ZG8gZGVidWdnZXIvZXVkYiIKPiAtCj4gLWRvY3MvCj4gLQlDb250YWlucyB0aGUgYXV0 b21hdGljYWxseSBnZW5lcmF0ZWQgaWd0LWdwdS10b29scyBsaWJyYXJpZXMKPiAtCXJlZmVyZW5j ZSBkb2N1bWVudGF0aW9uIGluIGRvY3MvcmVmZXJlbmNlLy4gWW91IG5lZWQgdG8gaGF2ZSB0aGUK PiAtCWd0ay1kb2MgdG9vbHMgaW5zdGFsbGVkIGFuZCB1c2UgdGhlICItLWVuYWJsZS1ndGstZG9j IiBjb25maWd1cmUgZmxhZwo+IC0JdG8gZ2VuZXJhdGUgdGhpcyBBUEkgZG9jdW1lbnRhdGlvbi4K PiAtCj4gLQlUbyByZWdlbmVyYXRlIHRoZSBodG1sIGZpbGVzIHdoZW4gdXBkYXRpbmcgZG9jdW1l bnRhdGlvbiwgdXNlOgo+IC0KPiAtCSQgbWFrZSBjbGVhbiAtQyBkb2NzICYmIG1ha2UgLUMgZG9j cwo+IC0KPiAtCUlmIHlvdSd2ZSBhZGRlZC9jaGFuZ2VkL3JlbW92ZWQgYSBzeW1ib2wgb3IgYW55 dGhpbmcgZWxzZSB0aGF0IGNoYW5nZXMKPiAtCXRoZSBvdmVyYWxsIHN0cnVjdHVyZSBvciBpbmRl eGVzLCB0aGlzIG5lZWRzIHRvIGJlIHJlZmxlY3RlZCBpbgo+IC0JaWd0LWdwdS10b29scy1zZWN0 aW9ucy50eHQuIEVudGlyZWx5IG5ldyBzZWN0aW9ucyB3aWxsIGFsc28gbmVlZCB0byBiZQo+IC0J YWRkZWQgdG8gaWd0LWdwdS10b29scy1kb2NzLnhtbCBpbiB0aGUgYXBwcm9wcmlhdGUgcGxhY2Uu Cj4gLQo+IC1pbmNsdWRlL2RybS11YXBpCj4gLQlJbXBvcnRlZCBEUk0gdWFwaSBoZWFkZXJzIGZy b20gYWlybGllZCdzIGRybS1uZXh0IGJyYW5jaC4KPiAtCVRoZXNlIHNob3VsZCBiZSB1cGRhdGVk IGFsbCB0b2dldGhlciBieSBleGVjdXRpbmcgIm1ha2UKPiAtCWhlYWRlcnNfaW5zdGFsbCIgZnJv bSB0aGF0IGJyYW5jaCBvZiB0aGUga2VybmVsIGFuZCB0aGVuCj4gLQljb3B5aW5nIHRoZSByZXN1 bHRpbmcgLi91c3IvaW5jbHVkZS9kcm0vKi5oIGluIGFuZCBjb21taXR0aW5nCj4gLQl3aXRoIGEg bm90ZSBvZiB3aGljaCBjb21taXQgb24gYWlybGllZCdzIGJyYW5jaCB3YXMgdXNlZCB0bwo+IC0J Z2VuZXJhdGUgdGhlbS4KPiAtCj4gLQo+IC1SZXF1aXJlbWVudHMKPiAtLS0tLS0tLS0tLS0tCj4g LQo+IC1UaGlzIGlzIGEgbm9uLWV4aGF1c3RpdmUgbGlzdCBvZiBwYWNrYWdlIGRlcGVuZGVuY2ll cyByZXF1aXJlZCBmb3IgYnVpbGRpbmcKPiAtdGhlIGRlZmF1bHQgY29uZmlndXJhdGlvbiAocGFj a2FnZSBuYW1lcyBtYXkgdmFyeSk6Cj4gLQo+IC0JZ3RrLWRvYy10b29scwo+IC0JbGliY2Fpcm8y LWRldgo+IC0JbGliZHJtLWRldgo+IC0JbGlia21vZC1kZXYKPiAtCWxpYnBpeG1hbi0xLWRldgo+ IC0JbGlicGNpYWNjZXNzLWRldgo+IC0JbGlicHJvY3BzLWRldgo+IC0JbGlidW53aW5kLWRldgo+ IC0JbGliZHctZGV2Cj4gLQlweXRob24tZG9jdXRpbHMKPiAtCXgxMXByb3RvLWRyaTItZGV2Cj4g LQl4dXRpbHMtZGV2Cj4gLQo+IC1UaGUgZm9sbG93aW5nIGRlcGVuZGVuY2llcyBhcmUgcmVxdWly ZWQgZm9yIGJ1aWxkaW5nIGNoYW1lbGl1bSBzdXBwb3J0Cj4gLShwYWNrYWdlIG5hbWVzIG1heSB2 YXJ5KToKPiAtCj4gLQlsaWJ4bWxycGMtY29yZS1jMy1kZXYKPiAtCWxpYnVkZXYtZGV2Cj4gLQls aWJnbGliMi4wLWRldgo+IC0JbGliZ3NsLWRldgo+IC0KPiAtVGhlIGZvbGxvd2luZyBkZXBlbmRl bmNpZXMgYXJlIHJlcXVpcmVzIGZvciBidWlsZGluZyBhdWRpbyBzdXBwb3J0Cj4gLShwYWNrYWdl IG5hbWVzIG1heSB2YXJ5KToKPiAtCj4gLQlsaWJhc291bmQyLWRldgo+IC0JbGliZ3NsLWRldgo+ IC0KPiAtTWVzb24gYnVpbGQgc3lzdGVtIHN1cHBvcnQKPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KPiAtCj4gLUN1cnJlbnRseSB3ZSBzdXBwb3J0IGJvdGggbWVzb24gYW5kIGF1dG9tYWtl IGFzIGJ1aWxkIHN5c3RlbXMsIGJ1dCBtZXNvbiBpcyB0aGUKPiAtcmVjb21tZW5kZWQgY2hvaWNl LiBPbmVsaW5lciB0byBnZXQgc3RhcnRlZDoKPiAtCj4gLSQgbWtkaXIgYnVpbGQgJiYgbWVzb24g YnVpbGQgJiYgY2QgYnVpbGQgJiYgbmluamEKPiAtCj4gLU5vdGUgdGhhdCBtZXNvbiBpbnNpc3Qg b24gc2VwYXJhdGUgYnVpbGQgZGlyZWN0b3JpZXMgZnJvbSB0aGUgc291cmNlIHRyZWUuCj4gLQo+ IC1SdW5uaW5nIHNlbGZjaGVja3MgZm9yIGxpYi90ZXN0cyBhbmQgdGVzdHMvIGlzIGRvbmUgd2l0 aAo+IC0KPiAtJCBjZCBidWlsZCAmJiBuaW5qYSB0ZXN0Cj4gLQo+IC1Ob3RlIHRoYXQgdGhpcyBk b2Vzbid0IGFjdHVhbGx5IHJ1biB0aGUgdGVzdGNhc2VzIGluIHRlc3RzLzogc2NyaXB0cy9ydW4t dGVzdHMuc2gKPiAtc2hvdWxkIGNvbnRpbnVlIHRvIGJlIHVzZWQgZm9yIHRoYXQuCj4gLQo+IC1E b2N1bWVudGF0aW9uIGlzIGJ1aWx0IHVzaW5nCj4gLQo+IC0kIGNkIGJ1aWxkICYmIG5pbmphICYm IG5pbmphIGlndC1ncHUtdG9vbHMtZG9jCj4gLQo+IC1Ob3RlIHRoYXQgdGhlcmUncyBhIHNldHVw IHNjcmlwdCBzaW1pbGFyIHRvIC4vYXV0b2dlbi5zaCB3aGljaCBjcmVhdGVzIGEKPiAtY29tcGF0 aWJpbGl0eSBNYWtlZmlsZSB3aXRoIGEgZmV3IHVzZWZ1bCBkZWZhdWx0IHRhcmdldHM6Cj4gLQo+ IC0kIC4vbWVzb24uc2ggW21ha2UtYXJndW1lbnRzXQo+IC0KPiAtUmVsZWFzZXMgZm9yIG1haW50 YWluZXJzCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+IC0KPiAtKDEuMTQpCj4gLQo+IC1o dHRwOi8vd3d3Lngub3JnL3dpa2kvRGV2ZWxvcG1lbnQvRG9jdW1lbnRhdGlvbi9SZWxlYXNlSE9X VE8vCj4gZGlmZiAtLWdpdCBhL1JFQURNRS5tZCBiL1JFQURNRS5tZAo+IG5ldyBmaWxlIG1vZGUg MTAwNjQ0Cj4gaW5kZXggMDAwMDAwMDAwMDAwLi5kY2ZmMDNlZmRiYWMKPiAtLS0gL2Rldi9udWxs Cj4gKysrIGIvUkVBRE1FLm1kCj4gQEAgLTAsMCArMSwyMTAgQEAKPiArSUdUIEdQVSBUb29scwo+ ICs9PT09PT09PT09PT09Cj4gKwo+ICtEZXNjcmlwdGlvbgo+ICstLS0tLS0tLS0tLQo+ICsKPiAr SUdUIEdQVSBUb29scyBpcyBhIGNvbGxlY3Rpb24gb2YgdG9vbHMgZm9yIGRldmVsb3BtZW50IGFu ZCB0ZXN0aW5nIG9mIHRoZSBEUk0KPiArZHJpdmVycy4gVGhlcmUgYXJlIG1hbnkgbWFjcm8tbGV2 ZWwgdGVzdCBzdWl0ZXMgdGhhdCBnZXQgdXNlZCBhZ2FpbnN0IHRoZQo+ICtkcml2ZXJzLCBpbmNs dWRpbmcgeHRlc3QsIHJlbmRlcmNoZWNrLCBwaWdsaXQsIGFuZCBvZ2xjb25mb3JtLCBidXQgZmFp bHVyZXMgZnJvbQo+ICt0aG9zZSBjYW4gYmUgZGlmZmljdWx0IHRvIHRyYWNrIGRvd24gdG8ga2Vy bmVsIGNoYW5nZXMsIGFuZCBtYW55IHJlcXVpcmUKPiArY29tcGxpY2F0ZWQgYnVpbGQgcHJvY2Vk dXJlcyBvciBzcGVjaWZpYyB0ZXN0aW5nIGVudmlyb25tZW50cyB0byBnZXQgdXNlZnVsCj4gK3Jl c3VsdHMuIFRoZXJlZm9yZSwgSUdUIEdQVSBUb29scyBpbmNsdWRlcyBsb3ctbGV2ZWwgdG9vbHMg YW5kIHRlc3RzCj4gK3NwZWNpZmljYWxseSBmb3IgZGV2ZWxvcG1lbnQgYW5kIHRlc3Rpbmcgb2Yg dGhlIERSTSBEcml2ZXJzLgo+ICsKPiArSUdUIEdQVSBUb29scyBpcyBzcGxpdCBpbnRvIHNldmVy YWwgc2VjdGlvbnM6Cj4gKwo+ICsqKmJlbmNobWFya3MvKioKPiArCj4gK1RoaXMgaXMgYSBjb2xs ZWN0aW9uIG9mIHVzZWZ1bCBtaWNyb2JlbmNobWFya3MgdGhhdCBjYW4gYmUgdXNlZCB0byB0dW5l Cj4gK0RSTSBjb2RlIGluIHJlbGV2YW50IHdheXMuCj4gKwo+ICtUaGUgYmVuY2htYXJrcyByZXF1 aXJlIEtNUyB0byBiZSBlbmFibGVkLiAgV2hlbiBydW4gd2l0aCBhbiBYIFNlcnZlcgo+ICtydW5u aW5nLCB0aGV5IG11c3QgYmUgcnVuIGFzIHJvb3QgdG8gYXZvaWQgdGhlIGF1dGhlbnRpY2F0aW9u Cj4gK3JlcXVpcmVtZW50Lgo+ICsKPiArTm90ZSB0aGF0IGEgZmV3IG90aGVyIG1pY3JvYmVuY2ht YXJrcyBhcmUgaW4gdGVzdHMgKGxpa2UgZ2VtX2d0dF9zcGVlZCkuCj4gKwo+ICsqKnRlc3RzLyoq Cj4gKwo+ICtUaGlzIGlzIGEgc2V0IG9mIGF1dG9tYXRlZCB0ZXN0cyB0byBydW4gYWdhaW5zdCB0 aGUgRFJNIHRvIHZhbGlkYXRlCj4gK2NoYW5nZXMuIE1hbnkgb2YgdGhlIHRlc3RzIGhhdmUgc3Vi dGVzdHMsIHdoaWNoIGNhbiBiZSBsaXN0ZWQgYnkgdXNpbmcKPiArdGhlIC0tbGlzdC1zdWJ0ZXN0 cyBjb21tYW5kIGxpbmUgb3B0aW9uIGFuZCB0aGVuIHJ1biB1c2luZyB0aGUKPiArLS1ydW4tc3Vi dGVzdCBvcHRpb24uIElmIC0tcnVuLXN1YnRlc3QgaXMgbm90IHVzZWQsIGFsbCBzdWJ0ZXN0cyB3 aWxsCj4gK2JlIHJ1bi4gU29tZSB0ZXN0cyBoYXZlIGZ1dGhlciBvcHRpb25zIGFuZCB0aGVzZSBh cmUgZGV0YWlsZWQgYnkgdXNpbmcKPiArdGhlIC0taGVscCBvcHRpb24uCj4gKwo+ICtUaGUgdGVz dCBzdWl0ZSBjYW4gYmUgcnVuIHVzaW5nIHRoZSBydW4tdGVzdHMuc2ggc2NyaXB0IGF2YWlsYWJs ZSBpbgo+ICt0aGUgc2NyaXB0cyBkaXJlY3RvcnkuIFBpZ2xpdCBpcyB1c2VkIHRvIHJ1biB0aGUg dGVzdHMgYW5kIGNhbiBlaXRoZXIKPiArYmUgaW5zdGFsbGVkIGZyb20geW91ciBkaXN0cmlidXRp b24gKGlmIGF2YWlsYWJsZSksIG9yIGNhbiBiZQo+ICtkb3dubG9hZGVkIGxvY2FsbHkgZm9yIHVz ZSB3aXRoIHRoZSBzY3JpcHQgYnkgcnVubmluZzoKPiArCj4gKyAgICAuL3NjcmlwdHMvcnVuLXRl c3RzLnNoIC1kCj4gKwo+ICtydW4tdGVzdHMuc2ggaGFzIG9wdGlvbnMgZm9yIGZpbHRlcmluZyBh bmQgZXhjbHVkaW5nIHRlc3RzIGZyb20gdGVzdAo+ICtydW5zOgo+ICsKPiArICAtdCA8cmVnZXg+ ICAgICAgb25seSBpbmNsdWRlIHRlc3RzIHRoYXQgbWF0Y2ggdGhlIHJlZ3VsYXIgZXhwcmVzc2lv bgo+ICsgIC14IDxyZWdleD4gICAgICBleGNsdWRlIHRlc3RzIHRoYXQgbWF0Y2ggdGhlIHJlZ3Vs YXIgZXhwcmVzc2lvbgo+ICsKPiArVXNlZnVsIHBhdHRlcm5zIGZvciB0ZXN0IGZpbHRlcmluZyBh cmUgZGVzY3JpYmVkIGluIHRoZSBBUEkKPiArZG9jdW1lbnRhdGlvbiBhbmQgdGhlIGZ1bGwgbGlz dCBvZiB0ZXN0cyBhbmQgc3VidGVzdHMgY2FuIGJlIHByb2R1Y2VkCj4gK2J5IHBhc3NpbmcgLWwg dG8gdGhlIHJ1bi10ZXN0cy5zaCBzY3JpcHQuCj4gKwo+ICtSZXN1bHRzIGFyZSB3cml0dGVuIHRv IGEgSlNPTiBmaWxlIGFuZCBhbiBIVE1MIHN1bW1hcnkgY2FuIGFsc28gYmUKPiArY3JlYXRlZCBi eSBwYXNzaW5nIC1zIHRvIHRoZSBydW4tdGVzdHMuc2ggc2NyaXB0LiBGdXJ0aGVyIG9wdGlvbnMg YXJlCj4gK2FyZSBkZXRhaWxlZCBieSB1c2luZyB0aGUgLWggb3B0aW9uLgo+ICsKPiArCj4gK0lm IG5vdCB1c2luZyB0aGUgc2NyaXB0LCBwaWdsaXQgY2FuIGJlIG9idGFpbmVkIGZyb206Cj4gKwo+ ICsgICAgZ2l0Oi8vYW5vbmdpdC5mcmVlZGVza3RvcC5vcmcvcGlnbGl0Cj4gKwo+ICtUaGVyZSBp cyBubyBuZWVkIHRvIGJ1aWxkIGFuZCBpbnN0YWxsIHBpZ2xpdCBpZiBpdCBpcyBvbmx5IGdvaW5n IHRvIGJlCj4gK3VzZWQgZm9yIHJ1bm5pbmcgaS1nLXQgdGVzdHMuCj4gKwo+ICtTZXQgdGhlIElH VF9URVNUX1JPT1QgZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gcG9pbnQgdG8gdGhlIHRlc3RzCj4g K2RpcmVjdG9yeSwgb3Igc2V0IHRoZSBwYXRoIGtleSBpbiB0aGUgImlndCIgc2VjdGlvbiBvZiBw aWdsaXQuY29uZiB0bwo+ICt0aGUgaWd0LWdwdS10b29scyByb290IGRpcmVjdG9yeS4KPiArCj4g K1RoZSB0ZXN0cyBpbiB0aGUgaS1nLXQgc291cmNlcyBuZWVkIHRvIGhhdmUgYmVlbiBidWlsdCBh bHJlYWR5LiBUaGVuIHdlCj4gK2NhbiBydW4gdGhlIHRlc3RjYXNlcyB3aXRoIChhcyB1c3VhbCBh cyByb290LCBubyBvdGhlciBkcm0gY2xpZW50cwo+ICtydW5uaW5nKToKPiArCj4gKyAgICBwaWds aXQtc291cmNlcyAjIC4vcGlnbGl0IHJ1biBpZ3QgPHJlc3VsdHMtZmlsZT4KPiArCj4gK1RoZSB0 ZXN0bGlzdCBpcyBidWlsdCBhdCBydW50aW1lLCBzbyBubyBuZWVkIHRvIHVwZGF0ZSBhbnl0aGlu ZyBpbgo+ICtwaWdsaXQgd2hlbiBhZGRpbmcgbmV3IHRlc3RzLiBTZWUKCmBgYGJhc2gKCj4gKwo+ ICsgICAgcGlnbGl0LXNvdXJjZXMgJCAuL3BpZ2xpdCBydW4gLWgKPiArCgpgYGAKCkkgYmVsaWV2 ZSBhbGwgYmxvY2tzIHdpdGggY29tbWFuZCBsaW5lcyBjb3VsZCBiZSBpbiB0aGUgbWFya2Rvd24g YmxvY2sKbGlrZSB0aGlzIGBgYGJhc2ggb3Igc29tZXRoaW5nIGxpa2UgdGhhdC4KCkJ1dCB0aGlz IGNhbiBiZSBkb25lIGluIGEgZm9sbG93LXVwIHNpbmNlIGl0IGdldHMgZWFzaWVyIHRvIHJldmll dwpJIHRoaW5rLi4uCgpzbzoKClJldmlld2VkLWJ5OiBSb2RyaWdvIFZpdmkgPHJvZHJpZ28udml2 aUBpbnRlbC5jb20+CgoKPiArZm9yIHNvbWUgdXNlZnVsIG9wdGlvbnMuCj4gKwo+ICtQaWdsaXQg b25seSBydW5zIGEgZGVmYXVsdCBzZXQgb2YgdGVzdHMgYW5kIGlzIHVzZWZ1bCBmb3IgcmVncmVz c2lvbgo+ICt0ZXN0aW5nLiBPdGhlciB0ZXN0cyBub3QgcnVuIGFyZToKPiArLSB0ZXN0cyB0aGF0 IG1pZ2h0IGhhbmcgdGhlIGdwdSwgc2VlIEhBTkcgaW4gTWFrZWZpbGUuYW0KPiArLSBnZW1fc3Ry ZXNzLCBhIHN0cmVzcyB0ZXN0IHN1aXRlLiBMb29rIGF0IHRoZSBzb3VyY2UgZm9yIGFsbCB0aGUK PiArICB2YXJpb3VzIG9wdGlvbnMuCj4gKy0gdGVzdGRpc3BsYXkgaXMgb25seSBydW4gaW4gdGhl IGRlZmF1bHQgbW9kZS4gdGVzdGRpc3BsYXkgaGFzIHRvbnMgb2YKPiArICBvcHRpb25zIHRvIHRl c3QgZGlmZmVyZW50IGttcyBmdW5jdGlvbmFsaXR5LCBhZ2FpbiByZWFkIHRoZSBzb3VyY2UgZm9y Cj4gKyAgdGhlIGRldGFpbHMuCj4gKwo+ICsqKmxpYi8qKgo+ICsKPiArQ29tbW9uIGhlbHBlciBm dW5jdGlvbnMgYW5kIGhlYWRlcnMgdXNlZCBieSB0aGUgb3RoZXIgdG9vbHMuCj4gKwo+ICsqKm1h bi8qKgo+ICsKPiArTWFucGFnZXMsIHVuZm9ydHVuYXRlbHkgcmF0aGVyIGluY29tcGxldGUuCj4g Kwo+ICsqKnRvb2xzLyoqCj4gKwo+ICtUaGlzIGlzIGEgY29sbGVjdGlvbiBvZiBkZWJ1Z2dpbmcg dG9vbHMgdGhhdCBoYWQgcHJldmlvdXNseSBiZWVuCj4gK2J1aWx0IHdpdGggdGhlIDJEIGRyaXZl ciBidXQgbm90IHNoaXBwZWQuICBTb21lIGRpc3Ryb3Mgd2VyZSBoYWNraW5nCj4gK3VwIHRoZSAy RCBidWlsZCB0byBzaGlwIHRoZW0uICBJbnN0ZWFkLCBoZXJlJ3MgYSBzZXBhcmF0ZSBwYWNrYWdl IGZvcgo+ICtwZW9wbGUgZGVidWdnaW5nIHRoZSBkcml2ZXIuCj4gKwo+ICtUaGVzZSB0b29scyBn ZW5lcmFsbHkgbXVzdCBiZSBydW4gYXMgcm9vdCwgZXhjZXB0IGZvciB0aGUgb25lcyB0aGF0IGp1 c3QKPiArZGVjb2RlIGR1bXBzLgo+ICsKPiArKipkZWJ1Z2dlci8qKgo+ICsKPiArVGhpcyB0b29s IGlzIHRvIGJlIHVzZWQgdG8gZG8gc2hhZGVyIGRlYnVnZ2luZy4gSXQgYWN0cyBsaWtlIGEKPiAr ZGVidWcgc2VydmVyIGFjY2VwdGluZyBjb25uZWN0aW9ucyBmcm9tIGRlYnVnIGNsaWVudHMgc3Vj aCBhcwo+ICttZXNhLiBUaGUgY29ubmVjdGlvbnMgaXMgbWFkZSB3aXRoIHVuaXggZG9tYWluIHNv Y2tldHMsIGFuZCBhdCBzb21lCj4gK3BvaW50IGl0IHdvdWxkIGJlIG5pY2UgaWYgdGhpcyBkaXJl Y3RvcnkgY29udGFpbmVkIGEgbGlicmFyeSBmb3IKPiAraW5pdGlhdGluZyBjb25uZWN0aW9ucyB3 aXRoIGRlYnVnIGNsaWVudHMuLgo+ICsKPiArVGhlIGRlYnVnZ2VyIG11c3QgYmUgcnVuIGFzIHJv b3Q6ICJzdWRvIGRlYnVnZ2VyL2V1ZGIiCj4gKwo+ICsqKmRvY3MvKioKPiArCj4gK0NvbnRhaW5z IHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBpZ3QtZ3B1LXRvb2xzIGxpYnJhcmllcwo+ICty ZWZlcmVuY2UgZG9jdW1lbnRhdGlvbiBpbiBkb2NzL3JlZmVyZW5jZS8uIFlvdSBuZWVkIHRvIGhh dmUgdGhlCj4gK2d0ay1kb2MgdG9vbHMgaW5zdGFsbGVkIGFuZCB1c2UgdGhlICItLWVuYWJsZS1n dGstZG9jIiBjb25maWd1cmUgZmxhZwo+ICt0byBnZW5lcmF0ZSB0aGlzIEFQSSBkb2N1bWVudGF0 aW9uLgo+ICsKPiArVG8gcmVnZW5lcmF0ZSB0aGUgaHRtbCBmaWxlcyB3aGVuIHVwZGF0aW5nIGRv Y3VtZW50YXRpb24sIHVzZToKPiArCj4gKyAgICAkIG1ha2UgY2xlYW4gLUMgZG9jcyAmJiBtYWtl IC1DIGRvY3MKPiArCj4gK0lmIHlvdSd2ZSBhZGRlZC9jaGFuZ2VkL3JlbW92ZWQgYSBzeW1ib2wg b3IgYW55dGhpbmcgZWxzZSB0aGF0IGNoYW5nZXMKPiArdGhlIG92ZXJhbGwgc3RydWN0dXJlIG9y IGluZGV4ZXMsIHRoaXMgbmVlZHMgdG8gYmUgcmVmbGVjdGVkIGluCj4gK2lndC1ncHUtdG9vbHMt c2VjdGlvbnMudHh0LiBFbnRpcmVseSBuZXcgc2VjdGlvbnMgd2lsbCBhbHNvIG5lZWQgdG8gYmUK PiArYWRkZWQgdG8gaWd0LWdwdS10b29scy1kb2NzLnhtbCBpbiB0aGUgYXBwcm9wcmlhdGUgcGxh Y2UuCj4gKwo+ICsqKmluY2x1ZGUvZHJtLXVhcGkqKgo+ICsKPiArSW1wb3J0ZWQgRFJNIHVhcGkg aGVhZGVycyBmcm9tIGFpcmxpZWQncyBkcm0tbmV4dCBicmFuY2guCj4gK1RoZXNlIHNob3VsZCBi ZSB1cGRhdGVkIGFsbCB0b2dldGhlciBieSBleGVjdXRpbmcgIm1ha2UKPiAraGVhZGVyc19pbnN0 YWxsIiBmcm9tIHRoYXQgYnJhbmNoIG9mIHRoZSBrZXJuZWwgYW5kIHRoZW4KPiArY29weWluZyB0 aGUgcmVzdWx0aW5nIC4vdXNyL2luY2x1ZGUvZHJtLyouaCBpbiBhbmQgY29tbWl0dGluZwo+ICt3 aXRoIGEgbm90ZSBvZiB3aGljaCBjb21taXQgb24gYWlybGllZCdzIGJyYW5jaCB3YXMgdXNlZCB0 bwo+ICtnZW5lcmF0ZSB0aGVtLgo+ICsKPiArCj4gK1JlcXVpcmVtZW50cwo+ICstLS0tLS0tLS0t LS0KPiArCj4gK1RoaXMgaXMgYSBub24tZXhoYXVzdGl2ZSBsaXN0IG9mIHBhY2thZ2UgZGVwZW5k ZW5jaWVzIHJlcXVpcmVkIGZvciBidWlsZGluZwo+ICt0aGUgZGVmYXVsdCBjb25maWd1cmF0aW9u IChwYWNrYWdlIG5hbWVzIG1heSB2YXJ5KToKPiArCj4gKwlndGstZG9jLXRvb2xzCj4gKwlsaWJj YWlybzItZGV2Cj4gKwlsaWJkcm0tZGV2Cj4gKwlsaWJrbW9kLWRldgo+ICsJbGlicGl4bWFuLTEt ZGV2Cj4gKwlsaWJwY2lhY2Nlc3MtZGV2Cj4gKwlsaWJwcm9jcHMtZGV2Cj4gKwlsaWJ1bndpbmQt ZGV2Cj4gKwlsaWJkdy1kZXYKPiArCXB5dGhvbi1kb2N1dGlscwo+ICsJeDExcHJvdG8tZHJpMi1k ZXYKPiArCXh1dGlscy1kZXYKPiArCj4gK1RoZSBmb2xsb3dpbmcgZGVwZW5kZW5jaWVzIGFyZSBy ZXF1aXJlZCBmb3IgYnVpbGRpbmcgY2hhbWVsaXVtIHN1cHBvcnQKPiArKHBhY2thZ2UgbmFtZXMg bWF5IHZhcnkpOgo+ICsKPiArCWxpYnhtbHJwYy1jb3JlLWMzLWRldgo+ICsJbGlidWRldi1kZXYK PiArCWxpYmdsaWIyLjAtZGV2Cj4gKwlsaWJnc2wtZGV2Cj4gKwo+ICtUaGUgZm9sbG93aW5nIGRl cGVuZGVuY2llcyBhcmUgcmVxdWlyZXMgZm9yIGJ1aWxkaW5nIGF1ZGlvIHN1cHBvcnQKPiArKHBh Y2thZ2UgbmFtZXMgbWF5IHZhcnkpOgo+ICsKPiArCWxpYmFzb3VuZDItZGV2Cj4gKwlsaWJnc2wt ZGV2Cj4gKwo+ICtNZXNvbiBidWlsZCBzeXN0ZW0gc3VwcG9ydAo+ICstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQo+ICsKPiArQ3VycmVudGx5IHdlIHN1cHBvcnQgYm90aCBtZXNvbiBhbmQgYXV0 b21ha2UgYXMgYnVpbGQgc3lzdGVtcywgYnV0IG1lc29uIGlzIHRoZQo+ICtyZWNvbW1lbmRlZCBj aG9pY2UuIE9uZWxpbmVyIHRvIGdldCBzdGFydGVkOgo+ICsKPiArICAgICQgbWtkaXIgYnVpbGQg JiYgbWVzb24gYnVpbGQgJiYgY2QgYnVpbGQgJiYgbmluamEKPiArCj4gK05vdGUgdGhhdCBtZXNv biBpbnNpc3Qgb24gc2VwYXJhdGUgYnVpbGQgZGlyZWN0b3JpZXMgZnJvbSB0aGUgc291cmNlIHRy ZWUuCj4gKwo+ICtSdW5uaW5nIHNlbGZjaGVja3MgZm9yIGxpYi90ZXN0cyBhbmQgdGVzdHMvIGlz IGRvbmUgd2l0aAo+ICsKPiArICAgICQgY2QgYnVpbGQgJiYgbmluamEgdGVzdAo+ICsKPiArTm90 ZSB0aGF0IHRoaXMgZG9lc24ndCBhY3R1YWxseSBydW4gdGhlIHRlc3RjYXNlcyBpbiB0ZXN0cy86 IHNjcmlwdHMvcnVuLXRlc3RzLnNoCj4gK3Nob3VsZCBjb250aW51ZSB0byBiZSB1c2VkIGZvciB0 aGF0Lgo+ICsKPiArRG9jdW1lbnRhdGlvbiBpcyBidWlsdCB1c2luZwo+ICsKPiArICAgICQgY2Qg YnVpbGQgJiYgbmluamEgJiYgbmluamEgaWd0LWdwdS10b29scy1kb2MKPiArCj4gK05vdGUgdGhh dCB0aGVyZSdzIGEgc2V0dXAgc2NyaXB0IHNpbWlsYXIgdG8gLi9hdXRvZ2VuLnNoIHdoaWNoIGNy ZWF0ZXMgYQo+ICtjb21wYXRpYmlsaXR5IE1ha2VmaWxlIHdpdGggYSBmZXcgdXNlZnVsIGRlZmF1 bHQgdGFyZ2V0czoKPiArCj4gKyAgICAkIC4vbWVzb24uc2ggW21ha2UtYXJndW1lbnRzXQo+ICsK PiArUmVsZWFzZXMgZm9yIG1haW50YWluZXJzCj4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ ICsKPiArKDEuMTQpCj4gKwo+ICtodHRwOi8vd3d3Lngub3JnL3dpa2kvRGV2ZWxvcG1lbnQvRG9j dW1lbnRhdGlvbi9SZWxlYXNlSE9XVE8vCj4gLS0gCj4gMi4xOS4xCj4gCj4gX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBpZ3QtZGV2IG1haWxpbmcgbGlz dAo+IGlndC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3QtZGV2Cl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaWd0LWRldgo=