UnVzc2VsbCBNY01haG9uIHdyb3RlOgoKPj4gUmVhbGx5PyBSZWNvcmRpbmcgeW91ciBvd24gQ0Qg aXMgaWxsZWdhbD8KPiAKPiBZZXMuCj4gCj4gQXMgaXMgY29weWluZyB0byBhIGZvcm1hdCBzdWl0 YWJsZSBmb3IgdXNlIG9uIGFuIGVsZWN0cm9uaWMgbWVkaWEgCj4gcGxheWVyLgoKSUFOTCA6KSwg YW5kIGRlZmluaXRlbHkgbm90IHRoYXQgZmFtaWxpYXIgd2l0aCBOWiA6KSwgYnV0IGFmdGVyIGNv bnNpZGVyaW5nCnRoZSBsaW5rIHlvdSBwb3N0ZWQKCj4gPGh0dHA6Ly93d3cubWVkLmdvdnQubnov dGVtcGxhdGVzL011bHRpcGFnZURvY3VtZW50VE9DX19fXzI5OTcuYXNweD4KCndoZXJlIGl0IHNh eXMKCiJUaGUgR292ZXJubWVudCdzIHByb3Bvc2FscyByZXN1bHRpbmcgZnJvbSB0aGUgcmV2aWV3 LCBvdXRsaW5lZCBpbiBhCkNhYmluZXQgUGFwZXIsIHdlcmUgcmVsZWFzZWQgb24gMjUgSnVuZSAy MDAzLiBUaGUgQ29weXJpZ2h0IChOZXcKVGVjaG5vbG9naWVzIGFuZCBQZXJmb3JtZXJzJyBSaWdo dHMpIEFtZW5kbWVudCBCaWxsIFtsaW5rIHRvIFBhcmxpYW1lbnQKd2Vic2l0ZV0gd2FzIGludHJv ZHVjZWQsIHJlYWQgZmlyc3QgdGltZSBhbmQgcmVmZXJyZWQgdG8gdGhlIENvbW1lcmNlCkNvbW1p dHRlZSwgd2hpY2ggY2FsbGVkIGZvciBzdWJtaXNzaW9ucyBmcm9tIHRoZSBwdWJsaWMgYnkgOSBN YXJjaCAyMDA3LgpUaGUgQ29tbWl0dGVlIGlzIGN1cnJlbnRseSBjb25zaWRlcmluZyB0aGVzZSBz dWJtaXNzaW9ucyBbbGluayB0bwpQYXJsaWFtZW50IHdlYnNpdGVdLCBhbmQgaXMgZXhwZWN0aW5n IHRvIHJlcG9ydCBiYWNrIHRvIFBhcmxpYW1lbnQgaW4gSnVuZQoyMDA3LiIKCkkgZmlndXJlZCB0 aGF0IHRoaXMgd2Fzbid0IHlldCBsYXcgLS0gYW5kIGJlY2FtZSBjdXJpb3VzLgoKVGhlIG5ldyBw cm9wb3NhbCAoYW5kIGZyb20gdGhlIHRleHQgSSBhc3N1bWUgdGhhdCB0aGUgY3VycmVudCBjb3B5 cmlnaHQgYWN0CmZyb20gMTk5NCBkb2Vzbid0IHlldCBjb25zaWRlciB0aGUgY29weXJpZ2h0IGlt cGxpY2F0aW9ucyBvZiBkaWdpdGFsIG1lZGlhCmFuZCB0aGVyZWZvcmUgbm90ICJzdWl0YWJseSIg cmVzdHJpY3QgaXQpIGlzIGhlcmUKCjxodHRwOi8vd3d3LnBhcmxpYW1lbnQubnovTlIvcmRvbmx5 cmVzLzVBODhEMTVCLUM0QTEtNDJDMi1BRTc1LTkyMDBERDg3RjczOC82MDEyMC9EQkhPSF9CSUxM Xzc3MzVfNTI2OTIucGRmPgo8aHR0cDovL3Rpbnl1cmwuY29tLzM0c2gzdj4KCgpJbiB0aGlzIHBy b3Bvc2FsIHRoZSB3cml0ZSBhYm91dCB0aGUgY3JlYXRpb24gb2YgcGVyc29uYWwgY29waWVzOgoK oaE4MUEgQ29weWluZyBzb3VuZCByZWNvcmRpbmcgZm9yIChwcml2YXRlIGFuZCBkb21lc3RpYyB1 c2UpIHBlcnNvbmFsIHVzZQqhoSgxKSBDb3B5cmlnaHQgaW4gYSBzb3VuZCByZWNvcmRpbmcgYW5k IGluIGEgbGl0ZXJhcnkgb3IgbXVzaWNhbCB3b3JrCmNvbnRhaW5lZCBpbiBpdCBpcyBub3QgaW5m cmluZ2VkIGJ5IGNvcHlpbmcgdGhlIHNvdW5kIHJlY29yZGluZywgaWYgdGhlCmZvbGxvd2luZyBj b25kaXRpb25zIGFyZSBtZXQ6Ck5ldyAodW5hbmltb3VzKQqhoShhYSkgdGhlIHNvdW5kIHJlY29y ZGluZyBpcyBub3QgYSBjb21tdW5pY2F0aW9uIHdvcmsgb3IgcGFydCBvZiBhCmNvbW11bmljYXRp b24gd29yazsgYW5kCqGhKGEpIHRoZSBjb3B5IGlzIG1hZGUgZnJvbSBhIHNvdW5kIHJlY29yZGlu ZyB0aGF0IGlzIG5vdCBhbiBpbmZyaW5naW5nCmNvcHk7IGFuZAqhoShiKSB0aGUgc291bmQgcmVj b3JkaW5nIGlzIG5vdCBib3Jyb3dlZCBvciBoaXJlZDsgYW5kCqGhKGMpIHRoZSBjb3B5IGlzIG1h ZGUgYnkgdGhlIG93bmVyIG9mIHRoZSBzb3VuZCByZWNvcmRpbmc7IGFuZAqhoShkKSAodGhlKXRo YXQgb3duZXIgYWNxdWlyZWQgdGhlIHNvdW5kIHJlY29yZGluZyBsZWdpdGltYXRlbHk7IGFuZAqh oShlKSB0aGUgY29weSBpcyB1c2VkIG9ubHkgZm9yIHRoYXQgb3duZXKicyAocHJpdmF0ZSBhbmQg ZG9tZXN0aWMgdXNlKQpwZXJzb25hbCB1c2Ugb3IgdGhlIHBlcnNvbmFsIHVzZSBvZiBhIG1lbWJl ciBvZiB0aGUgaG91c2Vob2xkIGluIHdoaWNoIHRoZQpvd25lciBsaXZlcyBvciBib3RoOyBhbmQK oaEoZikgbm8gbW9yZSB0aGFuIDEgY29weSBpcyBtYWRlIGZvciBlYWNoICh0eXBlIG9mKSBkZXZp Y2UgZm9yIHBsYXlpbmcKc291bmQgcmVjb3JkaW5ncyB0aGF0IGlzIG93bmVkIGJ5IHRoZSBvd25l ciBvZiB0aGUgc291bmQgcmVjb3JkaW5nOyBhbmQKoaEoZykgdGhlIG93bmVyIG9mIHRoZSBzb3Vu ZCByZWNvcmRpbmcgcmV0YWlucyB0aGUgb3duZXJzaGlwIG9mIGJvdGggdGhlCnNvdW5kIHJlY29y ZGluZyBhbmQgb2YgYW55IGNvcHkgdGhhdCBpcyBtYWRlIHVuZGVyIHRoaXMgc2VjdGlvbi4KCgpU byBtZSAoYnV0IElBTkwgOikgdGhhdCBkb2Vzbid0IHNvdW5kIGFzIGlmIGl0IHdlcmUgcGxhbm5l ZCB0byBtYWtlIGl0CmlsbGVnYWwgdG8gbWFrZSBhbiBNUDMgY29weSBvZiBhIENELiBIb3dldmVy LCB0aGUgcmVzdHJpY3Rpb24gdG8gb25lIGNvcHkKb25seSBtYXkgYmUgYSBiaXQgZGlmZmljdWx0 IHRvIGZ1bGZpbGwsIGFuZCBpcyBwcm9iYWJseSBub3QgcmVhbGlzdGljLiAoT25lCnNob3VsZCBz ZWFyY2ggdGhlIGhvdXNlaG9sZHMgb2YgTVAgd2hvIHZvdGVzICd5ZXMnIG9uIHRoaXMgZm9yIHN1 Y2ggZXhjZXNzCmNvcGllcywgZXNwZWNpYWxseSB0aGUgb25lcyB3aG8gaGF2ZSBjaGlsZHJlbiA6 KQoKCkJ1dCB0aGVuIHRoZXJlJ3MgdGhpcywgd2hpY2ggSSAoYXMgSUFOTCkgY2FuJ3QgcGFyc2Ug ZnVsbHk6CgqhoSgyKSBGb3IgdGhlIGF2b2lkYW5jZSBvZiBkb3VidCwgc3Vic2VjdGlvbiAoMSkg ZG9lcyBub3QgYXBwbHkgaWYgdGhlCm93bmVyIG9mIHRoZSBzb3VuZCByZWNvcmRpbmcgaXMgYm91 bmQgYnkgYSBjb250cmFjdCB0aGF0IHNwZWNpZmllcyB0aGUKY2lyY3Vtc3RhbmNlcyBpbiB3aGlj aCB0aGUgc291bmQgcmVjb3JkaW5nIG1heSBiZSBjb3BpZWQuCgpXaGF0J3Mgbm90IGNsZWFyIHRv IG1lIGlzIHdoZXRoZXIgYW55IGxpY2Vuc2UgbGFuZ3VhZ2Ugb24gdGhlIENEIG9yIHJlbGF0ZWQK dG8gdGhlIENEIGNhbiBiZSBzdWNoIGEgY29udHJhY3QuIAoKCkluIGFueSBjYXNlLCBub3RoaW5n IG9mIHRoaXMgc2VlbXMgdG8gYmUgbGF3IGF0IHRoaXMgcG9pbnQuIFNvIGFyZSB5b3UgZ3V5cwpy ZWFsbHkgc3VyZSB0aGF0IGl0J3MgZm9yYmlkZGVuIGJ5IGxhdyAoeWV0KT8KCkdlcmhhcmQKCi0t IApodHRwOi8vd3d3LnBpY2xpc3QuY29tIFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKVmlldy9j aGFuZ2UgeW91ciBtZW1iZXJzaGlwIG9wdGlvbnMgYXQKaHR0cDovL21haWxtYW4ubWl0LmVkdS9t YWlsbWFuL2xpc3RpbmZvL3BpY2xpc3QK