W0knbSBtb3ZpbmcgdGhpcyBkaXNjdXNzaW9uIG9uIHRvIHRoZSBrZGUtYmluZGluZ3MgbWFpbGlu ZyBsaXN0Ll0KCkhpLAoKV2VsbCBkb25lIEx1Y2EuIEknbSBndWVzc2luZyB0aGF0IFNJUCBoYXMg YmVlbiBjaGFuZ2VkIHJlY2VudGx5LiBUaGUgCnR5cGVkZWZzLnNpcCBpc24ndCBhIHJlYWwgbW9k dWxlLCBpdCBqdXN0IG5lZWRzIHRvIGJlIGluY2x1ZGVkIGluIG1hbnkgCmRpZmZlcmVudCBwbGFj ZXMuCgpjaGVlcnMsClNpbW9uCgoKT24gMjAxNS0wMy0zMSAyMzowNiwgTHVjYSB3cm90ZToKPiBI aSBTaW1vbiwKPiBnb29kIG5ld3MsIEkgZ290IGl0IHdvcmtpbmcgd2l0aCB0aGUgb3JpZ2luYWwg ZmlsZXMgZnJvbSBnaXQ6Cj4gQXR0YWNoZWQgdGhlIHBhdGNoIEkgY3JlYXRlZCwgbm93IEknbSBh YmxlIHRvIGxvYWQgdGhlIGxpYnJhcnkgd2l0aG91dAo+IHByb2JsZW0uCj4gCj4gSSBoYXZlIHRv IHRyeSB3aXRoIG15IGN1c3RvbSAuc2lwIGJ1aWxkLCB0byBzZWUgaG93IHRvIGJ1aWxkIGl0IHdp dGggCj4gdGhpcwo+IGNoYW5nZXMgaW5jbHVkZWQuCj4gCj4gUmVnYXJkcywKPiAJTHVjYQo+IAo+ IEluIGRhdGEgbWFydGVkw6wsIDMxIG1hcnpvIDIwMTUgMDguMjM6MjcsIGhhaSBzY3JpdHRvOgo+ PiBIaSwKPj4gCj4+IE9uIDIwMTUtMDMtMzAgMjI6MjgsIEx1Y2Egd3JvdGU6Cj4+ID4gdGhhbmsg eW91LCBJIHdhcyBhYmxlIHRvIGJ1aWxkIFB5S0RFNSBhZ2FpbnN0IHRoZSBuZXcgZnJhbWV3b3Jr IDUuOC4wCj4+ID4gSSBoYWQgdG8gbW9kaWZ5IHRoZSB0d2luZTIgc2NyaXB0cyAodG9vbGJveC5w eSkgaW4gb3JkZXIgdG8gbWFrZSBpdAo+PiA+IHdvcmtzLgo+PiA+IEkgZW5jb3VudGVyZWQgbG90 IG9mIGlzc3VlcyB0aGF0IEkgaGFkIHRvIGZpeCBtYW51YWxseSB3aXRoICIvL2lnIi4KPj4gPiBJ IHRyaWVkIHRvIGJ1aWxkIGthdXRoIHdpdGhvdXQgc3VjY2VzcywgZHVyaW5nIGNvbXBpbGluZyBJ IGdvZCBzb21lCj4+ID4gc3RyYW5nZQo+PiA+IGVycm9ycyB3aXRoIHNpcC4KPj4gPiBJJ20gbmV3 IHRvIHNpcCBhbmQgZml4aW5nIHRoZW0gaXMgaGFyZCBmb3IgbWUuCj4+IAo+PiBJdCBzb3VuZHMg bGlrZSB5b3UgYXJlIG1ha2luZyBwcm9ncmVzcy4gOi0pIEp1c3QgcmVtZW1iZXIgdGhhdCBQeUtE RSAKPj4gaXMKPj4gb25lIG9mIHRoZSBiaWdnZXN0IChjb3VudGluZyBjbGFzc2VzIGV0YykgYmlu ZGluZ3MgcHJvamVjdHMgb24gdGhlCj4+IHBsYW5ldC4KPj4gCj4+ID4gRXZlcnl0aGluZyBmaW5l LCBleGNlcHQgdGhlIGZhY3QgdGhhdCBJIGNvbnRpbnVlIHRvIGhhdmUgdGhpcyBlcnJvcjoKPj4g PiA8PDwgZnJvbSBQeUtERTUua2NvcmVhZGRvbnMgaW1wb3J0IGthYm91dGRhdGEKPj4gPgo+PiA+ IFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKPj4gPiAgIEZpbGUgIjxzdGRpbj4i LCBsaW5lIDEsIGluIDxtb2R1bGU+Cj4+ID4KPj4gPiBJbXBvcnRFcnJvcjogTm8gbW9kdWxlIG5h bWVkICdQeUtERTUudHlwZWRlZnMnCj4+IAo+PiBtbW0uLi4gTWF5IGJlIHNvbWV0aGluZyBjaGFu Z2VkIGluIGxhdGVyIHZlcnNpb25zIG9mIFNJUC4gV2hhdCB5b3UgCj4+IGNvdWxkCj4+IHRyeSBp cyB0byBvcGVuIHVwIENNYWtlTGlzdHMudHh0IGFuZCBhZGQgYSAndHlwZWRlZnMnIG1vZHVsZSB0 byB0aGUKPj4gYnVpbGQgbGlrZSB0aGUgb3RoZXIgbm9ybWFsIG1vZHVsZXMuIE1heSBiZSBidWls ZGluZyBhIHR5cGVkZWZzLCBldmVuIAo+PiBpZgo+PiBpdCBpcyBlbXB0eSwgaXMgZW5vdWdoIHRv IGdldCBpdCB3b3JraW5nLgo+PiAKPj4gPiBXaGF0IGJsb2NrZWQgeW91IGR1cmluZyBidWlsZGlu ZyBrYXV0aCwga2NvbmZpZyBhbmQga2pzPwo+PiAKPj4gSSBjYW4ndCByZW1lbWJlciBhYm91dCBr YXV0aC4ga2NvbmZpZyB3YXMgcHVzaGVkIGRvd24gdGhlIGxpc3QgbWFpbmx5Cj4+IGJlY2F1c2Ug aXQgaXMgYSByZWFsIHBhaW4gdG8gZG8uIElJUkMsIHRoZSBDKysgdXNlcyBhIHRvbiBvZiB0ZW1w bGF0ZXMKPj4gZXRjIHdoaWNoIGhhdmUgdG8gYmUgbWFudWFsbHkgdHJhbnNsYXRlZCB0byBzb21l dGhpbmcgcmVhc29uYWJsZS4gSW4KPj4gdGhpcyBjYXNlIGl0IG1pZ2h0IGJlIGJldHRlciB0byB0 aGluayB1cCBzb21ldGhpbmcgc21hcnRlciB0aGFuIGp1c3QKPj4gdHJ5aW5nIHRvIG1hcCB0aGUg QysrIEFQSSAxOjEuCj4+IAo+PiBJIGRpZG4ndCBzZWUgbXVjaCBvZiBhIHVzZSBjYXNlIGZvciB3 cmFwcGluZyBranMuIChEb2Vzbid0IFF0IGhhdmUgYQo+PiBkaWZmZXJlbnQgSlMgZW5naW5lIG9y IHR3bz8pCj4+IAo+PiA+IHRoZXJlIGlzIG90aGVyIGtmNSBtb2R1bGVzLCBkbyB5b3UgY29uc2lk ZXIgdGhlbT8gKGxpa2Uga2kxOG4sIGFuZAo+PiA+IG90aGVyIGZyb20KPj4gPiBodHRwczovL2Nv bW11bml0eS5rZGUub3JnL0ZyYW1ld29ya3MvQnVpbGRpbmcvRGV0YWlscykKPj4gCj4+IEkndmUg c3RheWVkIG1haW5seSB3aXRoIHRoZSBjb3JlIG9uZXMgYmVjYXVzZSBvZiB0aW1lIHJlYWxseS4g QnV0IHllcywKPj4gdGhlcmUgYXJlIGEgaGVhcCBvZiB0aGVtIGFyb3VuZCB0aGVzZSBkYXlzLgo+ PiAKPj4gY2hlZXJzLAoKLS0gClNpbW9uIEVkd2FyZHMKc2ltb25Ac2ltb256b25lLmNvbQpOaWpt ZWdlbiwgVGhlIE5ldGhlcmxhbmRzCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpLZGUtYmluZGluZ3MgbWFpbGluZyBsaXN0CktkZS1iaW5kaW5nc0BrZGUu b3JnCmh0dHBzOi8vbWFpbC5rZGUub3JnL21haWxtYW4vbGlzdGluZm8va2RlLWJpbmRpbmdzCg==