Tm90ZTogbm93IGhhcyBlcnJvciBtZXNzYWdlcywgc2VlIHJvb3QudHh0Li4gbW9yZSBzdWJtaXNzaW9ucyB3YW50ZWQhCkZvciBub3csIHdlJ3JlIGp1c3QgdXNpbmcgT1MgbGV2ZWwgZXJyb3IgbWVzc2FnZXMgZm9yIGZpbGUgYWNjZXNzCmVtYWlsIHRoZW0gdG86IHNybEBqdGNzdi5jb20gdGhhbmtzIQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCnVjb252Cj09PT09Cgp1Y29udiBkZW1vbnN0cmF0aW9uIGV4YW1wbGUgb2YgSUNVIGFuZCBjb2RlcGFnZSBjb252ZXJzaW9uLgpUaGUgcHVycG9zZSBpcyB0byBiZSBhIHJlcGxhY2VtZW50IHRvb2wgZm9yIHRoZSBVTklYIGljb252IHByb2dyYW0sIGFuZAp0byBzaG93IGhvdyB0byB1c2UgdGhlIGNsYXNzIFVuaWNvZGVDb252ZXJ0ZXJDUFAuCgpDb21waWxpbmcKPT09PT09PT09CgpTZWUgdGhlIFJFQURNRSBpbiB0aGUgcGFyZW50IChpY3VhcHBzKSBkaXJlY3RvcnkuCgpSdW5uaW5nCj09PT09PT0KCnVjb252IGNvbnZlcnRzIGZpbGVzIGZyb20gb25lIGVuY29kaW5nIHRvIGFub3RoZXIuIEp1c3QgdHlwZSB1Y29udiBhbmQgaXQKd2lsbCB0ZWxsIHlvdSB0aGUgdXNhZ2UuIEl0IHdvcmtzIHNpbWlsYXIgdG8gdGhlIGljb252IGZvdW5kIGluIFVOSVg5OCAKY29tcGxpYW50IHN5c3RlbXMuCgpURVNUSU5HIHVjb252Cj09PT09PT09PT09PT0KCkluIHRoZSB1dGY4IGFuZCBjaGFyc2V0ICBkaXJlY3RvcmllcyB5b3UgY2FuIGZpbmQgc29tZSB0ZXh0cywgd2hpY2ggeW91IGNhbiB1c2UgdG8gdGVzdCB1Y29udgp3aXRoLiBJbiB0aGUgY2hhcnNldCBkaXJlY3RvcnkgeW91IGNhbiBmaW5kIHRleHRzIGVuY29kZWQgaW4gZGlmZmVyZW50IGNvZGVwYWdlcy4gCk5vdCBhbGwgdGhlIGNvZGVwYWdlcyBhcmUgc3VwcG9ydGVkIGJ5IHVjb252IHlldCwgaS5lLiBubyBldWMqIGFyZSBzdXBwb3J0ZWQuCgpOb3RlIG9uIHJ1bm5pbmcgdGhlIGV4YW1wbGUgaW4gTGludXgvVU5JWCAoMTk5OSkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgpUaGUgaTE4biBzdXBwb3J0ICBpbiBMaW51eCBpc24ndCBhcyBnb29kIGFzIGl0IHNob3VsZCBiZSwgc28gdG8gZGlzcGxheSBvdGhlcgp0aGFuIElTTy04ODU5LXggb24geW91ciBjb25zb2xlIG1lYW5zIHByb2JsZW1zLiBCdXQgdGhlcmUgaXMgbXVjaCB3b3JrIGluCnByb2dyZXNzIHRvIGVsaW1pbmF0ZSB0aGlzLiBJbiB0aGUgbWVhbnRpbWUsIHBsZWFzZSBoYXZlIGEgbG9vayBhdCB0aGUgCiJVVEY4IGFuZCBVbmljb2RlIEZBUSBmb3IgVU5JWC9MaW51eCI6ICBodHRwOi8vd3d3LmNsLmNhbS5hYy51ay9+bWdrMjUvdW5pY29kZS5odG1sCgpUbyBiZSBhYmxlIHRvIGRpc3BsYXkgVW5pY29kZSBjaGFyYWN0ZXJzIGZyb20gZmFyLWF3YXkgbGFuZ3VhZ2VzIAp5b3UgbmVlZCBhIHN1aXRhYmxlIGZvbnQuIFRoZSBlYXNpZXN0IGlzIHRvIHVzZSBSb21hbiBDenlib3JyYSdzIGZyZWUgdW5pY29kZQpmb250LiBUaGUgZm9udCBpcyBub3QgYmVhdXRpZnVsLCBidXQgdXNlZnVsIGZvciB0ZXN0aW5nIHB1cnBvc2VzLiBIYXZlIGEgbG9vayBhdDogCiJQcm9wb3NhbCBmb3IgR05VIFVuaWNvZGUgZm9udCIgaHR0cDovL2N6eWJvcnJhLmNvbS91bmlmb250Ly4gVGhpcyBpcwpub3QgYSBUcnVlVHlwZSBmb250IHNvIGl0IHdvbid0IHdvcmsgaW4gV2luZG93cyBhbmQgb24gTWFjcy4KCgpOb3RlIG9uIFRNQUtFIChhbmQgdGhvc2Ugc3RyYW5nZSAqLnBybyBmaWxlcykKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgpNYXliZSB5b3Ugbm90aWNlZCB0aGUgKi5wcm8gZmlsZS4gVGhpcyBpcyBhIHNvdXJjZS1maWxlIGZvciB0aGUKTWFrZWZpbGUtZ2VuZXJhdG9yIHRtYWtlLCB3aGljaCB3YXMgd3JpdHRlbiBieSBUcm9sbCBUZWNoLiAKSXQgd29ya3MgaW4gYm90aCBVTklYIGFuZCBXaW5kb3dzLCBidXQgeW91IG5lZWQgdG8gaGF2ZSBQZXJsIAppbnN0YWxsZWQuIE1vcmUgaW5mb3JtYXRpb24gY2FuIGJlIGZvdW5kIG9uIApodHRwOi8vd3d3LnRyb2xsLm5vL2ZyZWViaWVzL3RtYWtlLmh0bWwuClVzYWdlOiB0bWFrZSB1Y29udi5wcm8gPiBNYWtlZmlsZQoKSG9wZSB0aGlzIHdpbGwgZ2V0IHlvdSBnb2luZyB3aXRoIHRoZSBJQ1UgbGlicmFyeQoKSm9uYXMgVXR0ZXJzdHL2bSA8am9uYXMudXR0ZXJzdHJvbUB2aXR0cmFuLm5vcnJub2Quc2U+Cg==