SXNuJ3QgaXQgYmV0dGVyIHRvIGluc3RhbGwgZWxlY3RyaWMgYmxvY2sgaGVhdGVycywgbGlrZSBp dCBpcyBkb25lIGluClN3ZWRlbiBvciBGaW5sYW5kLCBmb3IgZXhhbXBsZT8gSW5zdGVhZCBvZiBi dXJuaW5nIGZ1ZWwgZm9yIGhvdXJzLCBhbmQKc21lbGxpbmcgYnlwcm9kdWN0cyBhbGwgdGhlIHRp bWUuCgpBY3R1YWxseSBpdCBkZXBlbmRzIG9uIHdoYXQga2luZCBvZiBjYXIgeW91IGFyZSB0YWxr aW5nIGFib3V0LCBpdCBpcyBhCmh1Z2UgZGlmZmVyZW5jZSBpZiBpdCdzIGFuIG9sZCBjYXJidXJl dHRlZCBtb3Rvciwgb3IgYSBuZXdlciBvbmUsIHdpdGgKImRyaXZlIGJ5IHdpcmUiIHNldHVwLCB3 aGVyZSB0aHJvdHRsZSBpcyB0dXJuZWQgYnkgYSBzZXJ2bywgdGhlbiBhbGwKeW91IG5lZWQgaXMg dG8gYmxvY2sgc2Vuc29yIGF0IGdhcyBwZWRhbC4KCk9uIFdlZCwgTm92IDE5LCAyMDE0IGF0IDI6 MjUgQU0sIE5PUEU5IFlFUyA8eWVzQG5vcGU5LmNvbT4gd3JvdGU6Cj4gVG8gY2xhcmlmeSBteSBy ZXF1ZXN04oCm4oCmCj4gSSBhbSBub3QgaW50ZXJlc3RlZCBpbiBoYXJtaW5nIHRoZSB0aGllZiAs Cj4gZ3JhcHBsaW5nIHdpdGggdGhlIHRoaWVmLiAgSSB3YW50IHRvCj4gb2J0YWluIGV2aWRlbmNl IGFuZCB0aGVuIHByb2NlZWQuCj4gR3VzIGluIERlbnZlcgo+Cj4KPgo+IE9uIDIwMTRtMTFkMTgs IGF0IDE0OjQyLCBOT1BFOSBZRVMgPHllc0Bub3BlOS5jb20+IHdyb3RlOgo+Cj4gSSB3YW50IHRv IGJ1aWxkIGEgRElZIFB1ZmZlciBIb25leVRyYXAuICBJbiBteQo+IG5laWdoYm9yaG9vZCAoIGl0 IGlzIGNvbGQgb3V0c2lkZSApIDUgUHVmZmVycwo+IGhhdmUgYmVlbiBzdG9sZW4gdGhpcyB3ZWVr Lgo+Cj4gQSBQdWZmZXIgaXMgYSBjYXIgcnVubmluZyB1bmF0dGVuZGVkIGR1cmluZyBjb2xkCj4g d2VhdGhlci4gIFRoZSBleGhhdXN0IGlzIHZpc2libGUgYW5kIGEgY2FyIHRoaWVmCj4gZ3JhYnMg dGhlIGNhci4KPgo+IEkgcGxhbiB0byB1c2UgYW4gb2xkZXIgY2FyIHNvIHRoYXQgSSBhbSBub3Qg dXBzZXQKPiBpZiB0aGUgdGhpZWYgYmFuZ3Mgb24gdGhlIGNhci4gIEkgcGxhbiB0byB1c2UgbG9u Zwo+IGRpc3RhbmNlIHZpZGVvIHJlY29yZGluZyBvciBsb2NhbCwgcmVtb3RlIGNvbnRyb2wKPiB2 aWRlbyB0byBjYXB0dXJlIHRoZSBhY3Rpb24uCj4KPiBXaGF0IGlzIHRoZSBiZXN0L2Vhc2llc3Qg d2F5IHRvIGRpc2FibGUgYSBydW5uaW5nCj4gY2FyID8gIFRoZSBrZXkgd2lsbCBiZSBpbiB0aGUg aWduaXRpb24gYXMgSSBrbm93IG9mCj4gbm8gZWFzeSB3YXkgdG8gbGVhdmUgYSBjYXIgcnVubmlu ZyB3aXRob3V0IHRoZSBrZXkuCj4gTWF5YmUgdGhlcmUgaXMgYSB3YXkgdG8gbWFrZSBpdCBsb29r IGxpa2UgZXhoYXVzdAo+IGlzIGV4aXRpbmcgdGhlIHRhaWxwaXBlLiAgVGhlbiB0aGUgY2FyIHdp bGwgbm90IGJlCj4gcnVubmluZyBhbmQgd2lsbCBoYXZlIOKAnGZha2XigJ0ga2V5IGluIHRoZSBp Z25pdGlvbi4KPgo+IEkgbG9vayBmb3J3YXJkIHRvIGNyZWF0aXZlIHN1Z2dlc3Rpb25zLgo+Cj4g R3VzIGluIERlbnZlcgo+Cj4KPgo+IC0tCj4gaHR0cDovL3d3dy5waWNsaXN0LmNvbS90ZWNocmVm L3BpY2xpc3QgUElDL1NYIEZBUSAmIGxpc3QgYXJjaGl2ZQo+IFZpZXcvY2hhbmdlIHlvdXIgbWVt YmVyc2hpcCBvcHRpb25zIGF0Cj4gaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3Rp bmZvL3BpY2xpc3QKCgoKLS0gCktQTAoKLS0gCmh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJl Zi9waWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKVmlldy9jaGFuZ2UgeW91ciBtZW1i ZXJzaGlwIG9wdGlvbnMgYXQKaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3RpbmZv L3BpY2xpc3QK .