TWF5YmUgSSdtIGxvb2tpbmcgYXQgdGhlIHdyb25nIHN0b3JlcyAtIHRoaW5uZXN0IEkgY291bGQg ZmluZCBsb2NhbGx5IGlzCjE4QVdHLCBjYWxsZWQgIlNQVC0xIGxhbXAgY29yZCIuIFRoZXkgaGF2 ZSBhc3NvcnRlZCBhbGFybSBjYWJsZSB0aGF0IGlzCmFsbW9zdCByaWdodCwgc3RpbGwgdG9vIGJp Zy4KCkJ1dCBKUCBwb2ludGVkIG1lIHRvIEphbWVjbywgdGhleSBoYXZlIDEwMGZ0IG9mIGV4YWN0 bHkgd2hhdCBJIHdhbnQgZm9yCiQ3Ljk1LgoKVGhhbmtzLCBCb2IKCk9uIE1vbiwgQXByIDYsIDIw MTUsIGF0IDAyOjIxIFBNLCBNYXJjIE5pY2hvbGFzIHdyb3RlOgo+IFllcOKApi5JIGJlbGlldmUg aXQgd2FzIGNhbGxlZCDigJxsYW1wIGNvcmTigJ0gYXQgbXkgbG9jYWwgSEQgYW5kIGF2YWlsYWJs ZSBieQo+IHRoZSBmb290IChldmVuIHRob3VnaCBJ4oCZbSBpbiBDYW5hZGEgOykgKS4KPiAKPiAt bQo+IAo+IC0twqAKPiBNYXJjIE5pY2hvbGFzCj4gU2VudCB3aXRoIEFpcm1haWwKPiAKPiBPbiBB cHJpbCA2LCAyMDE1IGF0IDU6MTU6MTMgUE0sIEplc3NlIExhY2tleSAoanNsLW1sQGNlbGVzdGlh bGF1ZGlvLmNvbSkKPiB3cm90ZToKPiAKPiBMb2NhbCBoYXJkd2FyZSBzdG9yZT8gSSBjYW4gZ2V0 IGl0IGJ5IHRoZSBmb290IGluIHNldmVyYWwgQVdHcyBhdCBhY2UgIAo+IGhhcmR3YXJlIGFuZCBo b21lIGRlc3BvdC4uLiAgCj4gCj4gSiAgCj4gCj4gCj4gQm9iIEJsaWNrIHdyb3RlOiAgCj4gPiBJ J20gbG9va2luZyBmb3IgYSBzb3VyY2Ugb2Ygc21hbGwgYW1vdW50cyBvZiAyIGNvbmR1Y3RvciAy NEFXRyBzdHJhbmRlZCAgCj4gPiBjYWJsZSwgbGlrZSBhIGNoZWFwIEFDIGFkYXB0ZXIgd291bGQg aGF2ZSBnb2luZyBvdXQgdG8gaXRzIGJhcnJlbCBwbHVnLiAgCj4gPiBJIGNhbiBmaW5kIHJlZC9i bGFjayBvciBjbGVhciAic3BlYWtlciB3aXJlIiwgYnV0IEkgd2FudCBhbGwgYmxhY2ssIHdpdGgg IAo+ID4gb3Igd2l0aG91dCBhIHN0cmlwZS4gVGhlIG9ubHkgc3R1ZmYgSSBmaW5kIGlzICQ0MCBm b3IgMTAwIGZlZXQuIFRoYXQncyBhICAKPiA+IGxpZmV0aW1lIHN1cHBseSBmb3IgbWUgYnV0IGlm IGl0IHdhcyAkMjAgSSBtaWdodCBnbyBmb3IgaXQuICAKPiA+ICAKPiA+IEFueSBsaW5rcyB0byBz b21ldGhpbmcsIGV2ZW4gZUJheT8gQWx0aG91Z2ggSSBoYXZlIHNlYXJjaGVkIGVCYXkgYW5kIGdv dCAgCj4gPiBubyBzYXRpc2ZhY3Rpb24uICAKPiA+ICAKPiA+IFNlZSBhdHRhY2hlZCBwaWN0dXJl IGZvciBhbiBpZGVhIG9mIHdoYXQgSSB3YW50LiAgCj4gPiAgCj4gPiBUaGFua3MhICAKPiA+ICAK PiA+IEJvYiAgCgotLSAKaHR0cDovL3d3dy5mYXN0bWFpbC5jb20gLSBGYXN0ZXIgdGhhbiB0aGUg YWlyLXNwZWVkIHZlbG9jaXR5IG9mIGFuCiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5sYWRl biBldXJvcGVhbiBzd2FsbG93CgoKLS0gCmh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJlZi9w aWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKVmlldy9jaGFuZ2UgeW91ciBtZW1iZXJz aGlwIG9wdGlvbnMgYXQKaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3RpbmZvL3Bp Y2xpc3QK .