QnV0IHlvdSBjYW5ub3Qgc2F5IGl0IGlzIGZyZWUgZW5lcmd5IHVudGlsIHlvdSBkaXNtaXNzIGFu eSBvdGhlcgpjb25jZWl2YWJsZSBmb3JtIG9mIGVuZXJneSBoYXJ2ZXN0aW5nIGZyb20gdGhlIGVu dmlyb25tZW50LCBpbmNsdWRpbmcKdGhlIGFudGVubmEuCgpJdCBpcyBwZXJmZWN0bHkgcG9zc2li bGUgdG8gaGFydmVzdCBlbmVyZ3kgdG8gbGlnaHQgYW4gTEVEIGZyb20gYW4KYW50ZW5uYS4gSXQg aXMgcG9zc2libGUgdG8gcHJvZHVjZSBzb3VuZCB3aXRob3V0IGFueSBpbnRlcm5hbCBwb3dlcgpz b3VyY2UsIHJlbWVtYmVyIHRoZSBjcnlzdGFsIHJhZGlvcz8KClN1cHBvc2UgdGhpcyBvbGQgVFYg c2V0IGlzIGdlbmVyYXRpbmcgZnJlZSBlbmVyZ3ksIGFsdGhvdWdoIHZlcnkgbGl0dGxlLgpPZiBj b3Vyc2UganVzdCBzb21lIHNtYWxsIHBhcnQgb2YgaXRzIGNpcmN1aXRyeSBpcyBpbnZvbHZlZCBp biB0aGlzLgpKdXN0IGRpc2NvdmVyIHdoYXQgcGFydCBpdCBpcywgc2ltcGxpZnkgYW5kIG9wdGlt aXplIGl0IHRoZW4gYnVpbGQgc29tZQpodW5kcmVkcyBpbiBwYXJhbGxlbCBhbmQgeW91IGNhbiBw b3dlciBhIHJlbW90ZSB3ZWF0aGVyIHN0YXRpb24gZm9yZXZlci4KQnVpbGQgYSBiaWdnZXIgdW5p dCBhbmQgeW91IGNhbiBwb3dlciBhbiBhdXRvbm9tb3VzIG1vb24gbWluaW5nIHN0YXRpb24sCk5B U0Egd291bGQgcGF5IGJpbGxpb25zIHRvIGhhdmUgdGhlbSwgb3IgdG8gZGV2ZWxvcCB0aGVtLgoK VGhlcmUgaXMgbm8gZnJlZSBlbmVyZ3ksIGl0IGlzIGNvbWluZyBmcm9tIGVsc2V3aGVyZSwgdW5s ZXNzIGl0IGNvbWVzCmZyb20gb3V0c2lkZSBvZiBvdXIgdW5pdmVyc2UsIGZyb20gc29tZSBleG90 aWMgd2hpdGUtaG9sZSBvciB0aGUgbGlrZS4KVGhlbiBpdCB3b3VsZCB3cmVhay1oYXZvYyB3aXRo IG91ciB1bml2ZXJzZSdzIGVudHJvcHkuCgpJc2FhYwoKCgpFbSAzMS8xMC8yMDE1IDA2OjI2LCBl bWJlZGRlZCBzeXN0ZW1zIGVzY3JldmV1Ogo+IEl0J3MgdmVyeSBpbnRlcmVzdGluZyBob3cgdGhl IGluZm9ybWF0aW9uIGFuZCBwcm90b3R5cGVzIGNvbmNlcm5pbmcgYW55Cj4ga2luZCBvZiAiZnJl ZSBlbmVyZ3kiCj4gaW5jcmVhc2VzIGxhc3QgeWVhcnMgaW4gYWxtb3N0IGFuIGV4cG9uZW50aWFs IHdheS4KPgo+IEknbSBhIGZpbmUgb2JzZXJ2ZXIgb2YgImZyZWUgZW5lcmd5IiBkZXZpY2VzIGJh c2VkIG9uIEVNIHJlc29uYW5jZS4gV2VpcmQKPiBvciBub3QsIHRob3NlIHNlZW1zIHRvIG1lCj4g cmVhbGl6YWJsZS4gT2YgY291cnNlIGlzIG5vdCBhYm91dCBmcmVlIGVuZXJneS4gIEknbSB3b3Jr aW5nIGluIGEgcGh5c2ljcwo+IGluc3RpdHV0ZSB3aGVyZSBhcHBsaWNhdGlvbnMKPiBhcyBwZXJw ZXR1dW0gbW9iaWxlIGFyZSBoaWdobHkgYmFubmVkLiA6KQo+IFRoZSBrZXkgZm9yIHN1Y2ggZGV2 aWNlcyBzZWVtcyB0byBiZSBleHRyYWN0aW9uIG9mIHRoZSByZXNvbmFuY2UgZW5lcmd5Cj4gKHdo aWNoIGlzIG5vdCBkYW1wZWQsIGRvbid0IGFzayBtZSB3aHkpCj4gd2l0aG91dCBpbmNyZWFzaW5n IHRoZSBlbmVyZ3kgbmVlZGVkIGZvciB0aGUgb3NjaWxsYXRvcnMgaXRzZWxmLgo+IE1vc3Qgb2Yg dGhlbSBhcmUgdXNpbmcgdHdvIG9zY2lsbGF0b3JzIG9uIHR3byBkaWZmZXJlbnQgZnJlcXVlbmNp ZXMgYW5kIGEKPiBmZWVkYmFjayBzdXBwbHkuCj4KPiBUaGUgd2VpcmQgdGhpbmcgaXMgdGhhdCB3 b3Jrcy4gSSd2ZSBzZWVuIGZvciB0aGUgZmlyc3QgdGltZSB0aGlzIGJlaGF2aW9yCj4gb24gYW4g b2xkIEdydW5kaW5nIFRWIGJhY2sgaW4gMTk5NSBvciBzby4KPiBUaGUgc3RhbmRieSBMRUQga2Vl cCBsaWdodGluZyBtb3JlIHRoYW4gb25lIGZ1bGwgZGF5IHdpdGggdGhlIFRWIHVucGx1Z2dlZAo+ IGZyb20gdGhlIHBvd2VyIHN1cHBseS4gVGhlIGZpbHRlcmluZyBjYXBhY2l0b3JzIGFsb25lIGNh bid0IGRvIHRoYXQuCj4gVGhhdCBUViBoYWQgbm8gYmFja3VwIGJhdHRlcnkuLi4KPgo+IFNvLCBt eSBzdWdnZXN0aW9uIGlzIG5ldmVyIHNheSBuZXZlciwga2VlcCB5b3VyIGV5ZXMgb3BlbmVkIGJ1 dCBhbHNvIHlvdXIKPiBtaW5kLiBQaHlzaWNzIGxhd3MgYXJlIGNyZWF0ZWQgYnkgcGVvcGxlLCB0 aGV5IG9mdGVuIGRvIG1pc3Rha2VzIGV2ZW4gaGF2ZQo+IGJpZyBuYW1lcy4KPgo+IFZhc2lsZQo+ Cj4gT24gU2F0LCBPY3QgMzEsIDIwMTUgYXQgMTA6MDYgQU0sIFJpY2hhcmQgUi4gUG9wZSA8bWVj aGFuaWNfMkBjaGFydGVyLm5ldD4KPiB3cm90ZToKPgo+PiBSdXNzZWxsLAo+PiAgICAgIElzIHRo ZXJlIGFueSBtb3JlIGluZm8gb24gdGhpcyB0aGluZz8KPj4gVGhhbmtzLAo+PiByaWNoIQo+Pgo+ PiBPbiAxMC8zMS8yMDE1IDI6NTMgQU0sIFJ1c3NlbGxNYyB3cm90ZToKPj4+IOKAiwo+Pj4gT24g MzEgT2N0b2JlciAyMDE1IGF0IDEwOjA0LCBJVlAgPGpvZWNvbHF1aXR0QGNsZWFyLm5ldC5uej4g d3JvdGU6Cj4+Pgo+Pj4KPj4+PiBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9TdGVvcm4K Pj4+Cj4+PiBUaGUgdmlkZW8gc2VlbXMgdG8gYmUgYXMgcHJlc2VudCBhcyBhbnkgaW5kZXBlbmRl bnRseSB2ZXJpZmllZCByZXN1bHRzCj4+IG9yZXMKPj4+IHBsYXVzaWJpbGl0eS4KPj4gLS0KPj4g aHR0cDovL3d3dy5waWNsaXN0LmNvbS90ZWNocmVmL3BpY2xpc3QgUElDL1NYIEZBUSAmIGxpc3Qg YXJjaGl2ZQo+PiBWaWV3L2NoYW5nZSB5b3VyIG1lbWJlcnNoaXAgb3B0aW9ucyBhdAo+PiBodHRw Oi8vbWFpbG1hbi5taXQuZWR1L21haWxtYW4vbGlzdGluZm8vcGljbGlzdAo+PgoKCgotLSAKaHR0 cDovL3d3dy5waWNsaXN0LmNvbS90ZWNocmVmL3BpY2xpc3QgUElDL1NYIEZBUSAmIGxpc3QgYXJj aGl2ZQpWaWV3L2NoYW5nZSB5b3VyIG1lbWJlcnNoaXAgb3B0aW9ucyBhdApodHRwOi8vbWFpbG1h bi5taXQuZWR1L21haWxtYW4vbGlzdGluZm8vcGljbGlzdAo= .