VGhhbmtzIGZvciB5b3VyIGFuc3dlciBIYXJyaXNvbiwgdGhhdCBzb2x2ZXMgbXkgcXVlc3Rpb24u IEkgcmVhbGx5CmFwcHJlY2lhdGUgeW91ciBoZWxwLgoKSmVzc2FnCgoyMDE3LTAzLTI4IDIxOjQx IEdNVCswMjowMCBIYXJyaXNvbiBDb29wZXIgPEhhcnJpc29uLkNvb3BlckBzYW5kaXNrLmNvbT46 Cgo+IEQxIGlzIDcwNCB4IDQ4MC4uLi5yZWFsbHkgbG93IHJlc29sdXRpb24sIHJlbGF0aXZlIHRv IHdoYXQgZXZlcnlvbmUgaXMKPiB1c2VkIHRvIHRoZXNlIGRheXMgd2l0aCBIRC4gIFNvIHRoZSBh bnN3ZXIgaXMgeWVzLCBidXQgcHJldHR5IHN1cmUgaXRzIG5vdAo+IG9mZiB0aGUgc2hlbGYuICBZ b3UgaGF2ZSB0byB1c2UgYSBkb3VibGUgZnJhbWUgYnVmZmVyIHNldHVwLCB3aGVyZSB5b3UgcHVs bAo+IGluIHRoZSBsb3cgcmVzIHZpZGVvLCBhbmQgdGhlbiBzZW5kIGl0IG91dCBhdCBoaWdoIHJl cywgYnV0IHlvdXIgcGl4ZWxzIGFyZQo+IGdvaW5nIHRvIGJlIEJJRyBhbmQgYmxvY2t5IG5vIGRv dWJ0LiAgU2luY2UgeW91ciBjYXB0dXJlZCB2aWRlbyBpcyBpbgo+IGRpZ2l0YWwgZm9ybWF0LCBh bm90aGVyIGNob2ljZSBpcyB0byB1c2UgYSBOVFNDIHZpZGVvIGNhcmQgYW5kIHJ1biBpdCB0aHJ1 Cj4gYW4gZXh0ZXJuYWwgTlRTQyB0byBIRE1JIGNvbnZlcnRlciBib3guICBFaXRoZXIgd2F5LCBJ IGNhbid0IGltYWdpbmUgdGhlCj4gdmlkZW8gbG9va2luZyB2ZXJ5IGdvb2QuICBZb3Ugd291bGQg YmUgYmV0dGVyIG9mZiB1c2luZyBhIFZHQSBjYXJkIGFuZAo+IHJ1bm5pbmcgaXQgYXQgODAweDYw MCBhbmQgYWRqdXN0IHRoZSBtb25pdG9yIHRvIGZpbGwgaXQuCj4KPiAtLS0tLU9yaWdpbmFsIE1l c3NhZ2UtLS0tLQo+IEZyb206IHBpY2xpc3QtYm91bmNlc0BtaXQuZWR1IFttYWlsdG86cGljbGlz dC1ib3VuY2VzQG1pdC5lZHVdIE9uIEJlaGFsZgo+IE9mIEplc8O6cyBTw6FuY2hlego+IFNlbnQ6 IFR1ZXNkYXksIE1hcmNoIDI4LCAyMDE3IDc6MDUgQU0KPiBUbzogcGljbGlzdEBtaXQuZWR1Cj4g U3ViamVjdDogW0VFXSBEMSByZXNvbHV0aW9uIHZpZGVvIGNhcHR1cmUgY2FyZCBhbmQgMTkyMHgx MDgwcCByZXNvbHV0aW9uCj4gb24gZGlzcGxheSB3YW50ZWQKPgo+IEkgYW0gd29ya2luZyBvbiBh biBhcHBsaWNhdGlvbiBmb3IgY2FwdHVyaW5nIG11bHRpcGxlIHZpZGVvIHNpZ25hbHMKPiBzaW11 bHRhbmVvdXNseSAodXAgdG8gOCBjYW1lcmFzKSwgZW5jb2RpbmcgdGhlbSBpbiBhbiBTQkMgKEdh dGV3b3Jrcwo+IEdXNTEwMCkgYW5kIHNlbmRpbmcgaXQgdG8gYSBkaXNwbGF5IG92ZXIgRXRoZXJu ZXQuCj4KPiBUaGUgdmlkZW8gY2FwdHVyZSBjYXJkcyBvZiA4IHNpZ25hbHMgdGhhdCBJIGhhdmUg Zm91bmQgb25seSBjYXB0dXJlIHZpZGVvCj4gb2YgRDEgcmVzb2x1dGlvbiAobm90IHJlYWNoaW5n IDE5MjB4MTA4MHApLCBhcyB0aGUgZm9sbG93aW5nIGNhcmRzOgo+IC0gaHR0cDovL3d3dy5hbXBs dGQuY29tL21pbmktcGNpZS92aWRlby9hdmM4MDAwbmFuby5waHAKPiAtCj4gaHR0cDovL3d3dy5h ZHZhbnRlY2guY29tL3Byb2R1Y3RzL3ZpZGVvX2NhcHR1cmVfYm9hcmQvCj4gZHZwLTc2NDFlL21v ZF85MDZiZjI2MC00OTc0LTQ0MDAtOTQyMy0yZTQzMTRjMmIzNzQKPgo+IEkgbmVlZCBvbmUgb2Yg dGhlIHZpZGVvIHNpZ25hbHMgdG8gYmUgb2YgMTkyMHgxMDgwcCByZXNvbHV0aW9uIG9uIHRoZQo+ IGRpc3BsYXkuCj4KPiBTbywgaWYgYSBjYW1lcmEgaXMgcmVjb3JkaW5nIGF0IDE5MjB4MTA4MHAg cmVzb2x1dGlvbiwgYW5kIHRoZSB2aWRlbwo+IGNhcHR1cmUgd29ya3Mgb25seSB1cCB0byBEMSBy ZXNvbHV0aW9uLCBpcyB0aGVyZSBhbnkgd2F5IHRoYXQgSSBjb3VsZAo+IHJldHJpZXZlIHRoZSAx OTIweDEwODBwIHJlc29sdXRpb24gZnJvbSB0aGUgY2FtZXJhIG9uIHRoZSBmaW5hbCBkaXNwbGF5 Pwo+Cj4gKkplc3NhZyoKPiAtLQo+IGh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJlZi9waWNs aXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKPiBWaWV3L2NoYW5nZSB5b3VyIG1lbWJlcnNo aXAgb3B0aW9ucyBhdCBodHRwOi8vbWFpbG1hbi5taXQuZWR1Lwo+IG1haWxtYW4vbGlzdGluZm8v cGljbGlzdAo+IFdlc3Rlcm4gRGlnaXRhbCBDb3Jwb3JhdGlvbiAoYW5kIGl0cyBzdWJzaWRpYXJp ZXMpIEUtbWFpbCBDb25maWRlbnRpYWxpdHkKPiBOb3RpY2UgJiBEaXNjbGFpbWVyOgo+Cj4gVGhp cyBlLW1haWwgYW5kIGFueSBmaWxlcyB0cmFuc21pdHRlZCB3aXRoIGl0IG1heSBjb250YWluIGNv bmZpZGVudGlhbCBvcgo+IGxlZ2FsbHkgcHJpdmlsZWdlZCBpbmZvcm1hdGlvbiBvZiBXREMgYW5k L29yIGl0cyBhZmZpbGlhdGVzLCBhbmQgYXJlCj4gaW50ZW5kZWQgc29sZWx5IGZvciB0aGUgdXNl IG9mIHRoZSBpbmRpdmlkdWFsIG9yIGVudGl0eSB0byB3aGljaCB0aGV5IGFyZQo+IGFkZHJlc3Nl ZC4gSWYgeW91IGFyZSBub3QgdGhlIGludGVuZGVkIHJlY2lwaWVudCwgYW55IGRpc2Nsb3N1cmUs IGNvcHlpbmcsCj4gZGlzdHJpYnV0aW9uIG9yIGFueSBhY3Rpb24gdGFrZW4gb3Igb21pdHRlZCB0 byBiZSB0YWtlbiBpbiByZWxpYW5jZSBvbiBpdCwKPiBpcyBwcm9oaWJpdGVkLiBJZiB5b3UgaGF2 ZSByZWNlaXZlZCB0aGlzIGUtbWFpbCBpbiBlcnJvciwgcGxlYXNlIG5vdGlmeSB0aGUKPiBzZW5k ZXIgaW1tZWRpYXRlbHkgYW5kIGRlbGV0ZSB0aGUgZS1tYWlsIGluIGl0cyBlbnRpcmV0eSBmcm9t IHlvdXIgc3lzdGVtLgo+Cj4KPiAtLQo+IGh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJlZi9w aWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKPiBWaWV3L2NoYW5nZSB5b3VyIG1lbWJl cnNoaXAgb3B0aW9ucyBhdAo+IGh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0aW5m by9waWNsaXN0Cj4KLS0gCmh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJlZi9waWNsaXN0IFBJ Qy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKVmlldy9jaGFuZ2UgeW91ciBtZW1iZXJzaGlwIG9wdGlv bnMgYXQKaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3RpbmZvL3BpY2xpc3QK .