PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCFET0NUWVBFIGh0bWwKICBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+CjxodG1sPgo8aGVhZD4KPCEtLSAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogKiBDb3B5cmlnaHQgKGMpIDIwMDAsIDIwMDUgSUJNIENvcnBvcmF0aW9uIGFuZCBvdGhlcnMuCiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMKICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCiAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0CiAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sCiAqIAogKiBDb250cmlidXRvcnM6CiAqICAgICBJQk0gQ29ycG9yYXRpb24gLSBpbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovIC0tPgo8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSIuLi8uLi9vcmcuZWNsaXBzZS53c3QuZG9jLnVzZXIvY29tbW9uLmNzcyIgLz4KPHRpdGxlPkVkaXRpbmcgWE1MIGZpbGVzPC90aXRsZT4KPC9oZWFkPgo8Ym9keSBpZD0idHhlZHR0YWciPjxhIG5hbWU9InR4ZWR0dGFnIj48IS0tIC0tPjwvYT4KCjxoMSBjbGFzcz0idG9waWN0aXRsZTEiPkVkaXRpbmcgWE1MIGZpbGVzPC9oMT4KPGRpdj48ZGl2IGNsYXNzPSJza2lwc3BhY2UiPjxwPlRvIG9wZW4gYW4gWE1MIGZpbGUgaW4gdGhlIFhNTCBlZGl0b3IsIHJpZ2h0LWNsaWNrIGl0IGluIHRoZSBOYXZpZ2F0b3IKdmlldyBhbmQgY2xpY2sgPHNwYW4gY2xhc3M9Im1lbnVjYXNjYWRlIj48c3BhbiBjbGFzcz0idWljb250cm9sIj5PcGVuIFdpdGg8L3NwYW4+ICZndDsgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+WE1MCkVkaXRvcjwvc3Bhbj48L3NwYW4+LiBUbyBtYWtlIHRoZSBYTUwgZWRpdG9yIHRoZSBkZWZhdWx0IGVkaXRvcgpmb3IgWE1MIGZpbGVzLCBzZWxlY3QgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+V2luZG93ICZndDsgUHJlZmVyZW5jZXMgJmd0OyBXb3JrYmVuY2ggJmd0OyBGaWxlIEFzc29jaWF0aW9uczwvc3Bhbj4sCnRoZW4gc2VsZWN0IDxzcGFuIGNsYXNzPSJ1aWNvbnRyb2wiPioueG1sPC9zcGFuPiBhbmQgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+WE1MIEVkaXRvcjwvc3Bhbj4gZnJvbQp0aGUgQXNzb2NpYXRlZCBFZGl0b3JzIGxpc3QuIENsaWNrIDxzcGFuIGNsYXNzPSJ1aWNvbnRyb2wiPk9LPC9zcGFuPi4gPC9wPgo8cD5XZQpyZWNvbW1lbmQgd29ya2luZyBpbiB0aGUgUmVzb3VyY2UgcGVyc3BlY3RpdmUgd2hlbiB5b3UgYXJlIGRldmVsb3BpbmcgWE1MCmZpbGVzLqAgVGhlIHZpZXdzIHRoYXQgYXBwZWFyIGJ5IGRlZmF1bHQgaW4gdGhpcyBwZXJzcGVjdGl2ZSAoc3VjaCBhcwp0aGUgT3V0bGluZSB2aWV3KSBoZWxwIGZhY2lsaXRhdGUgWE1MIGRldmVsb3BtZW50LjwvcD4KPHA+VGhlIFhNTCBlZGl0b3IgZW5hYmxlcwp5b3UgdG8gZGlyZWN0bHkgZWRpdCBYTUwgZmlsZXMuoCBUaGVyZSBhcmUgc2V2ZXJhbCBkaWZmZXJlbnQgdmlld3MgeW91CmNhbiB1c2UgdG8gZWRpdCB5b3VyIGZpbGVzOjwvcD4KPHVsPjxsaT48Yj5Tb3VyY2UgdmlldzwvYj4gLSB5b3UgY2FuIG1hbnVhbGx5IGluc2VydCwgZWRpdCwgYW5kIGRlbGV0ZSBlbGVtZW50cwphbmQgYXR0cmlidXRlcyBpbiB0aGUgU291cmNlIHZpZXcgb2YgdGhlIFhNTCBlZGl0b3IuIFRvIGZhY2lsaXRhdGUgdGhpcyBlZmZvcnQsCnlvdSBjYW4gdXNlIGNvbnRlbnQgYXNzaXN0IHdoaWxlIHlvdSBhcmUgaW4gdGhlIFNvdXJjZSB2aWV3LjwvbGk+CjxsaT48Yj5EZXNpZ24gdmlldzwvYj4gLSB5b3UgY2FuIGluc2VydCwgZGVsZXRlLCBhbmQgZWRpdCBlbGVtZW50cywgYXR0cmlidXRlcywKY29tbWVudHMsIGFuZCBwcm9jZXNzaW5nIGluc3RydWN0aW9ucyBpbiB0aGlzIHZpZXcuPC9saT4KPGxpPjxiPlByb3BlcnRpZXMgdmlldzwvYj4gLSB5b3UgY2FuIGVkaXQgYXR0cmlidXRlIHZhbHVlcyBpbiB0aGlzIHZpZXcuPC9saT4KPGxpPjxiPk91dGxpbmUgdmlldyA8L2I+LaAgeW91IGNhbiBpbnNlcnQsIGRlbGV0ZSwgYW5kIGVkaXQgZWxlbWVudHMsCmNvbW1lbnRzLCBhbmQgcHJvY2Vzc2luZyBpbnN0cnVjdGlvbnMgaW4gdGhpcyB2aWV3LjwvbGk+CjwvdWw+CjxwPk9mdGVuLCB5b3UgbWF5IGZpbmQgdGhhdCB5b3UgaGF2ZSBtb3JlIHRoYW4gb25lIHdheSB0byBwZXJmb3JtIGEgc3BlY2lmaWMKdGFzay4gRm9yIGV4YW1wbGUsIHlvdSBoYXZlIGFuIFhNTCBmaWxlICJNeVNjaG9vbFN1YmplY3RzLnhtbCIgYXNzb2NpYXRlZAp3aXRoIGFuIFhNTCBzY2hlbWEgZmlsZSAiU2Nob29sU3ViamVjdHMueHNkIiB3aGljaCBsaXN0IGFsbCB0aGUgc3ViamVjdHMgdGF1Z2h0CmluIGEgc2Nob29sLiBZb3Ugd2FudCB0byBpbnNlcnQgYSBuZXcgZWxlbWVudCAiTWF0aCIgaW50byB5b3VyIGZpbGUuIFlvdSBjYW4KZG8gc28gdGhlIGZvbGxvd2luZyB3YXlzOjwvcD4KPHVsPjxsaT5JbiB0aGUgT3V0bGluZSBvciBEZXNpZ24gdmlldywgcmlnaHQtY2xpY2sgdGhlIGFwcHJvcHJpYXRlIHBhcmVudCBlbGVtZW50CmFuZCBzZWxlY3QgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+TWF0aDwvc3Bhbj4gZnJvbSB0aGUgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+QWRkIENoaWxkPC9zcGFuPiBwb3AtdXAKbWVudS6gPC9saT4KPGxpPkluIHRoZSBTb3VyY2UgdmlldywgdXNlIGNvbnRlbnQgYXNzaXN0IHRvIGhlbHAgeW91IGZpbmQgdGhlIGFwcHJvcHJpYXRlCmxvY2F0aW9uIGFuZCBjb2RlIGZvciB0aGUgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+TWF0aDwvc3Bhbj4gZWxlbWVudC48L2xpPgo8bGk+SW4gdGhlIFNvdXJjZSB2aWV3LCB0eXBlIHRoZSBjb2RlIGZvciB0aGUgPHNwYW4gY2xhc3M9InVpY29udHJvbCI+TWF0aDwvc3Bhbj4gZWxlbWVudAppbiB0aGUgZmlsZS48L2xpPgo8L3VsPgo8L2Rpdj4KPC9kaXY+CjwvYm9keT4KPC9odG1sPg==