PGh0bWw+PGhlYWQ+DQo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2RlZmF1bHRfc3R5bGUuY3NzIj4NCjx0aXRsZT5FY2xpcHNlIEZvdW5kYXRpb248L3RpdGxlPg0KPC9oZWFkPg0KPGJvZHkgdGV4dD0iIzAwMDAwMCIgYmdjb2xvcj0iI2ZmZmZmZiIgbGluaz0iIzAwMDBlZSIgdmxpbms9IiM1NTFhOGIiIGFsaW5rPSIjZmYwMDAwIj4NCjx0YWJsZSBib3JkZXI9MCBjZWxsc3BhY2luZz01IGNlbGxwYWRkaW5nPTIgd2lkdGg9IjEwMCUiID4NCiAgPHRyPiANCiAgICA8dGQgYWxpZ249bGVmdCB3aWR0aD0iNzIlIj4gPGZvbnQgY2xhc3M9aW5kZXh0b3A+IFdlYiBUb29scyBQcm9qZWN0IDwvZm9udD48YnI+DQogICAgICA8Zm9udCBjbGFzcz1pbmRleHN1Yj4mbmJzcDsgPC9mb250PjwvdGQ+DQogICAgPHRkIHdpZHRoPSIyOCUiPjxpbWcgc3JjPSIuLi8uLi9pbWFnZXMvSWRlYS5qcGciIGhlaWdodD04NiB3aWR0aD0xMjA+PC90ZD4NCiAgPC90cj4NCjwvdGFibGU+DQo8dGFibGUgYm9yZGVyPTAgY2VsbHNwYWNpbmc9NSBjZWxscGFkZGluZz0yIHdpZHRoPSIxMDAlIiA+DQogIDx0cj4gDQogICAgPHRkIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCIgYmdjb2xvcj0iIzAwODBDMCI+PGI+PGZvbnQgY29sb3I9IiNGRkZGRkYiIGZhY2U9IkFyaWFsLEhlbHZldGljYSI+UHJlc3MgcmVsZWFzZTwvZm9udD48L2I+PC90ZD4NCiAgPC90cj4NCiAgPHRyPiANCiAgICA8dGQ+IDxicj4NCiAgICAgIDxoMSBBTElHTj0iQ0VOVEVSIj48Yj48c3BhbiBzdHlsZT0nZm9udC1zaXplOjE2LjBwdDtmb250LWZhbWlseTpBcmlhbDsiVGltZXMgTmV3IFJvbWFuIic+PGI+IA0KICAgICAgICBFY2xpcHNlIEZvdW5kYXRpb24gTWFrZXMgQXZhaWxhYmxlIFdlYiBTZXJ2aWNlcyBUb29sczwvYj48L3NwYW4+PC9iPjwvaDE+DQogICAgICA8dWw+DQogICAgICAgIDxsaT5Db21tdW5pdHkgRWZmb3J0IERlbGl2ZXJzIE9wZW4gU291cmNlIFRvb2xzIEJhc2VkIG9uIE9wZW4gU3RhbmRhcmRzPC9saT4NCiAgICAgIDwvdWw+DQogICAgICA8UD5FQ0xJUFNFQ09OLCBCVVJMSU5HQU1FLCBDQSZtZGFzaDtNYXJjaCAxLCAyMDA1Jm1kYXNoO1RoZSBFY2xpcHNlIEZvdW5kYXRpb24gdG9kYXkgYW5ub3VuY2VkIHRoZSBmaXJzdCBkZXZlbG9wZXIgcmVsZWFzZSBvZiB0aGUgRWNsaXBzZSBXZWIgc2VydmljZXMgdG9vbHMuIEFzIHBhcnQgb2YgdGhlIEVjbGlwc2UgV2ViIFRvb2xzIFBsYXRmb3JtIChXVFApIFByb2plY3QsIHRoZSBuZXcgV2ViIHNlcnZpY2VzIHRvb2xzIGFpbSB0byBoZWxwIHNob3J0ZW4gZGV2ZWxvcG1lbnQgdGltZSwgc2ltcGxpZnkgdGhlIGRldmVsb3BtZW50IG9mIEphdmEgV2ViIHNlcnZpY2VzIGFuZCBhdXRvbWF0aWNhbGx5IHZhbGlkYXRlIGZvciBjb25mb3JtYW5jZSB0byBpbmR1c3RyeSBzdGFuZGFyZHMuIFdUUCAxLjAgcmVsZWFzZSBpcyBleHBlY3RlZCB0byBiZSBhdmFpbGFibGUgaW4gSnVseSAyMDA1LjwvcD4NCiAgICAgIDxwPldpdGggdGhpcyBuZXcgbWlsZXN0b25lIHJlbGVhc2UsIHRoZSBXVFAgUHJvamVjdCBoYXMgYWRkZWQgc3VwcG9ydCBmb3IgV2ViIHNlcnZpY2VzIHN0YW5kYXJkcyBmcm9tIHRoZSBXb3JsZCBXaWRlIFdlYiBDb25zb3J0aXVtIChXM0MpIGFuZCB0aGUgV2ViIFNlcnZpY2VzIEludGVyb3BlcmFiaWxpdHkgKFdTLUkpIG9yZ2FuaXphdGlvbiBhbmQgcHJvdmlkZXMgdGhlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgV1MtSSB2YWxpZGF0aW9uIHRvb2xzLjwvcD4NCiAgICAgIDxwPiZsZHF1bztUaGUgbWlsZXN0b25lIHJlbGVhc2Ugb2YgRWNsaXBzZSBXVFAgcHJvdmlkZXMgRWNsaXBzZSB1c2VycyB3aXRoIHRoZSBhYmlsaXR5IHRvIGVhc2lseSBidWlsZCBhbmQgdmFsaWRhdGUgV2ViIHNlcnZpY2VzLCZyZHF1bzsgc2FpZCBNaWtlIE1pbGlua292aWNoLCBleGVjdXRpdmUgZGlyZWN0b3IsIEVjbGlwc2UgRm91bmRhdGlvbi4gJmxkcXVvO1Byb3ZpZGluZyB0aGUgb3BlbiBzb3VyY2UgaW1wbGVtZW50YXRpb24gb2YgdGhlIFdTLUkgdmFsaWRhdGlvbiB0b29scyBkZW1vbnN0cmF0ZXMgb3VyIGNvbW1pdG1lbnQgdG8gcHJvdmlkaW5nIG9wZW4gc291cmNlIGltcGxlbWVudGF0aW9ucyBvZiBvcGVuIHN0YW5kYXJkcy4mcmRxdW87PC9wPg0KICAgICAgPHA+VGhlIG5ldyBvcGVuIHNvdXJjZSBXZWIgc2VydmljZXMgdG9vbHMgb2ZmZXJpbmcgaW5jbHVkZXMgYXV0aG9yaW5nIHRvb2xzIGZvciB0aGUgV2ViIFNlcnZpY2UgRGVzY3JpcHRpb24gTGFuZ3VhZ2UgKFdTREwpLCBYTUwgYW5kIFhNTCBzY2hlbWEgc3RhbmRhcmRzIGFuZCB3aXphcmRzIHRoYXQgc2ltcGxpZnkgdGhlIFdlYiBzZXJ2aWNlIGNyZWF0aW9uIHByb2Nlc3MuIFVzZWQgd2l0aCB0aGUgV2ViIHNlcnZpY2VzIHZhbGlkYXRpb24gdG9vbHMsIGluY2x1ZGluZyB0aGUgV1MtSSB0ZXN0IHRvb2xzLCB0aGlzIGVuYWJsZXMgZGV2ZWxvcGVycyB0byBidWlsZCwgdGVzdCBhbmQgZGVwbG95IFdlYiBzZXJ2aWNlcy48L3A+DQogICAgICA8cD4mbGRxdW87RXZlbiBhcyBjb21wYW5pZXMgaW5jcmVhc2luZ2x5IG1vdmUgdG93YXJkIFdlYiBzZXJ2aWNlcywgdGhlaXIgSVQgb3JnYW5pemF0aW9ucyBhcmUgdHJ5aW5nIHRvIGRvIG1vcmUgd2l0aCBsZXNzLCBhbmQgYXJlIGxvb2tpbmcgZm9yIGNvc3QtZWZmZWN0aXZlIGFsdGVybmF0aXZlcyB0byB0b2RheSZyc3F1bztzIGxhcmdlIGNvbW1lcmNpYWwgV2ViIHNlcnZpY2VzIHRvb2xzLCZyZHF1bzsgc2FpZCBKb2NoZW4gS3JhdXNlLCBXVFAgUE1DIG1lbWJlciBhbmQgbWFuYWdpbmcgZGlyZWN0b3Igb2YgSW5ub29wcmFjdC4gJmxkcXVvO0lUIGRldmVsb3BtZW50IHRlYW1zIGF0IGJvdGggbGFyZ2UgYW5kIHNtYWxsIGNvbXBhbmllcyBub3cgaGF2ZSBhIG5ldyBvcHRpb24uIFRoZSBFY2xpcHNlIFdlYiBUb29scyBQbGF0Zm9ybSBQcm9qZWN0IGhhcyBicm91Z2h0IHRvIG1hcmtldCB0aGlzIHJpY2ggc2V0IG9mIFdlYiBzZXJ2aWNlcyB0b29scyB0aGF0IGFyZSBub3Qgb25seSBmcmVlIGFuZCBlYXN5IHRvIHVzZSBidXQgZmVhdHVyZXMgY3JpdGljYWwgZnVuY3Rpb25hbGl0eSBzdWNoIGFzIHN0YW5kYXJkcyBjb25mb3JtYW5jZSwgdmFsaWRhdGlvbiBhbmQgdGVzdGluZy4mcmRxdW87PC9wPg0KICAgICAgPHA+U2V2ZXJhbCBjb21wYW5pZXMgZG9uYXRlZCByZXNvdXJjZXMgYW5kIGNvZGUgdG8gdGhlIFdUUCBQcm9qZWN0LiBJbiBwYXJ0aWN1bGFyLCB0aGUgT2JqZWN0V2ViIGNvbnNvcnRpdW0gYW5kIGl0cyBtZW1iZXIgZXRlcmF0aW9uIGEucy4gaGVscGVkIGJ5IGNvbnRyaWJ1dGluZyBsZWFkZXJzaGlwIGFuZCBsb21ib3osIHRoZSBFY2xpcHNlIHBsdWctaW4gZm9yIEoyRUUvV2ViIFNlcnZpY2VzIGRldmVsb3BtZW50LCBhcyBvbmUgb2YgdGhlIGZvdW5kYXRpb25zIHRvIHN0YXJ0IHRoZSBwcm9jZXNzLiBJbiBhZGRpdGlvbiwgSUJNIGNvbnRyaWJ1dGVkIHRvb2xpbmcgZnJvbSBpdHMgSUJNIFJhdGlvbmFsIEFwcGxpY2F0aW9uIERldmVsb3BlciBmb3IgV2ViU3BoZXJlIFNvZnR3YXJlIHByb2R1Y3QuIE90aGVyIG9yZ2FuaXphdGlvbnMgdGhhdCBoYXZlIGNvbW1pdHRlZCByZXNvdXJjZXMgdG8gdGhlIEVjbGlwc2UgV2ViIFRvb2xzIFBsYXRmb3JtIFByb2plY3QgaW5jbHVkZSBCdWxsLCBFeGFkZWwsIEZyYW1ld29yeCwgR2VudWl0ZWMsIElubm9vcHJhY3QsIElOUklBLCBKQm9zcywgT3BlbldpZGUgYW5kIFRoYWxlcyBJUy48L3A+DQogICAgICA8cD5JbiByZWxhdGVkIG5ld3MsIEJFQSBTeXN0ZW1zIHdhcyByZWNlbnRseSBlbGVjdGVkIHRvIGNvLWxlYWQgdGhlIFdUUCBQcm9qZWN0LiBCRUEsIHdobyByZWNlbnRseSBhbm5vdW5jZWQgdGhlaXIgbWVtYmVyc2hpcCB0byB0aGUgRWNsaXBzZSBGb3VuZGF0aW9uIGFzIGEgU3RyYXRlZ2ljIERldmVsb3Blciwgd2lsbCBiZWNvbWUgYW4gYWN0aXZlIGNvbnRyaWJ1dG9yIGFuZCBsZWFkZXIgb2YgdGhlIFdUUCBQcm9qZWN0LjwvcD4NCiAgICAgIDxwPlRoZSBXZWIgc2VydmljZXMgdG9vbHMgYXJlIHBhcnQgb2YgdGhlIHRoaXJkIG1pbGVzdG9uZSBvZiB0aGUgV1RQLiBPdGhlciBFY2xpcHNlLWJhc2VkIHRvb2xzIGF2YWlsYWJsZSBmb3IgZG93bmxvYWQgZnJvbSB0aGUgV1RQIFByb2plY3QgYXJlIHNlcnZlciBjb250cm9sLCBkYXRhIGFjY2VzcywgWE1MLCBKMkVFIGFuZCBFSkIgdG9vbHMuPC9wPg0KICAgICAgPFA+PGJyPg0KICAgICAgPC9wPjwvdGQ+DQogIDwvdHI+DQo8L3RhYmxlPg0KDQo8dGFibGUgd2lkdGg9IjEwMCUiIGNlbGxzcGFjaW5nPTAgY2VsbHBhZGRpbmc9MyBhbGlnbj1jZW50ZXI+DQoJCTx0ciBiZ2NvbG9yPSIjOTk5OTk5Ij4NCgkJDQogICAgPHRkIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCIgYmdjb2xvcj0iIzAwODBDMCI+PGI+PGZvbnQgY29sb3I9IiNGRkZGRkYiIGZhY2U9IkFyaWFsLEhlbHZldGljYSI+QWJvdXQgdGhlIEVjbGlwc2UgV2ViIFRvb2xzIFByb2plY3QgPC9mb250PjwvYj48L3RkPg0KCQk8L1RSPg0KCQk8VFI+DQoJCTx0ZCBhbGlnbj1sZWZ0Pg0KCQk8VEFCTEUgIHdpZHRoPSIxMDAlIiBDRUxMU1BBQ0lORz0wIENFTExQQURESU5HPTM+DQoJCTx0cj4NCgkJICA8dGQ+IA0KICAgICAgICAgICAgPFA+IFRoZSBFY2xpcHNlIFdlYiBUb29scyBQbGF0Zm9ybSBQcm9qZWN0IGlzIGFuIG9wZW4gc291cmNlIGNvbGxhYm9yYXRpdmUgc29mdHdhcmUgZGV2ZWxvcG1lbnQgcHJvamVjdCBkZWRpY2F0ZWQgdG8gcHJvdmlkaW5nIGEgZ2VuZXJpYywgZXh0ZW5zaWJsZSwgc3RhbmRhcmRzLWJhc2VkIHRvb2wgcGxhdGZvcm0gZm9yIHByb2R1Y2luZyBXZWItY2VudHJpYyB0ZWNobm9sb2dpZXMuIEZvciBtb3JlIGluZm9ybWF0aW9uLCB2aXNpdCA8YSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnL3dlYnRvb2xzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3RvcCI+aHR0cDovL3d3dy5lY2xpcHNlLm9yZy93ZWJ0b29scy9pbmRleC5odG1sPC9hPi48L3A+DQogICAgICAgICAgPC90ZD4NCgkJPC90cj4NCiAgICAgICAgPC90YWJsZT48L3RhYmxlPqANCg0KDQo8dGFibGUgd2lkdGg9IjEwMCUiIGNlbGxzcGFjaW5nPTAgY2VsbHBhZGRpbmc9MyBhbGlnbj1jZW50ZXI+DQoJCTx0ciBiZ2NvbG9yPSIjOTk5OTk5Ij4NCgkJDQogICAgPHRkIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCIgYmdjb2xvcj0iIzAwODBDMCI+PGI+PGZvbnQgY29sb3I9IiNGRkZGRkYiIGZhY2U9IkFyaWFsLEhlbHZldGljYSI+QWJvdXQgdGhlIEVjbGlwc2UgRm91bmRhdGlvbjwvZm9udD48L2I+PC90ZD4NCgkJPC9UUj4NCgkJPFRSPg0KCQk8dGQgYWxpZ249bGVmdD4NCgkJPFRBQkxFICB3aWR0aD0iMTAwJSIgQ0VMTFNQQUNJTkc9MCBDRUxMUEFERElORz0zPg0KCQk8dHI+DQoJCSAgPHRkPiANCiAgICAgICAgICAgIDxQPiBFY2xpcHNlIGlzIGFuIG9wZW4gc291cmNlIGNvbW11bml0eSB3aG9zZSBwcm9qZWN0cyBhcmUgZm9jdXNlZCBvbiBwcm92aWRpbmcgYW4gDQoJCQlleHRlbnNpYmxlIGRldmVsb3BtZW50IHBsYXRmb3JtIGFuZCBhcHBsaWNhdGlvbiBmcmFtZXdvcmtzIGZvciBidWlsZGluZyBzb2Z0d2FyZS4gIA0KCQkJRWNsaXBzZSBwcm92aWRlcyBleHRlbnNpYmxlIHRvb2xzIGFuZCBmcmFtZXdvcmtzIHRoYXQgc3BhbiB0aGUgc29mdHdhcmUgZGV2ZWxvcG1lbnQNCgkJCSBsaWZlY3ljbGUsIGluY2x1ZGluZyBzdXBwb3J0IGZvciBtb2RlbGluZywgbGFuZ3VhZ2UgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnRzIGZvciANCgkJCSBKYXZhLCBDL0MrKyBhbmQgb3RoZXJzLCB0ZXN0aW5nIGFuZCBwZXJmb3JtYW5jZSwgYnVzaW5lc3MgaW50ZWxsaWdlbmNlLCByaWNoIGNsaWVudCANCgkJCSBhcHBsaWNhdGlvbnMgYW5kIGVtYmVkZGVkIGRldmVsb3BtZW50LiBBIGxhcmdlLCB2aWJyYW50IGVjb3N5c3RlbSBvZiBtYWpvciB0ZWNobm9sb2d5IA0KCQkJIHZlbmRvcnMsIGlubm92YXRpdmUgc3RhcnQtdXBzLCB1bml2ZXJzaXRpZXMgYW5kIHJlc2VhcmNoIGluc3RpdHV0aW9ucyBhbmQgaW5kaXZpZHVhbHMgDQoJCQkgZXh0ZW5kLCBjb21wbGVtZW50IGFuZCBzdXBwb3J0IHRoZSBFY2xpcHNlIFBsYXRmb3JtLjwvcD4NCiAgICAgICAgICAgIDxQPiBUaGUgRWNsaXBzZSBGb3VuZGF0aW9uIGlzIGEgbm90LWZvci1wcm9maXQsIG1lbWJlciBzdXBwb3J0ZWQgY29ycG9yYXRpb24gdGhhdCBob3N0cyB0aGUgRWNsaXBzZSBwcm9qZWN0cy4gRnVsbCBkZXRhaWxzIG9mIEVjbGlwc2UgYW5kIHRoZSBFY2xpcHNlIEZvdW5kYXRpb24gYXJlIGF2YWlsYWJsZSBhdCA8YSBocmVmPSJodHRwOi8vd3d3LmVjbGlwc2Uub3JnLyIgdGFyZ2V0PSJfdG9wIj53d3cuZWNsaXBzZS5vcmc8L2E+IDwvcD48L3RkPg0KCQk8L3RyPg0KICAgICAgICA8L3RhYmxlPjwvdGFibGU+oA0KCTx0YWJsZSB3aWR0aD0iMTAwJSIgY2VsbHNwYWNpbmc9MCBjZWxscGFkZGluZz0zIGFsaWduPWNlbnRlcj4NCgkJPHRyIGJnY29sb3I9IiM5OTk5OTkiPg0KICAgIDx0ZCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiIGJnY29sb3I9IiMwMDgwQzAiPjxiPjxmb250IGNvbG9yPSIjRkZGRkZGIiBmYWNlPSJBcmlhbCxIZWx2ZXRpY2EiPk1lZGlhIA0KICAgICAgY29udGFjdDwvZm9udD48L2I+PC90ZD4NCgkJPC9UUj4NCjwvdGFibGU+DQoJCQ0KPHRhYmxlIHdpZHRoPSIxMDAlIiBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSI1Ij4NCiAgPHRyPg0KICAgIDx0ZCA+IA0KICAgICAgPGRpdiBhbGlnbj0iY2VudGVyIj5UYW5pYSBUcmVqbzxicj4NCiAgICAgICAgU2Nod2FydHogQ29tbXVuaWNhdGlvbnM8YnI+DQogICAgICAgIDc4MS02ODQtMDc3MDxicj4NCiAgICAgIDxhIGhyZWY9Im1haWx0bzplY2xpcHNlQHNjaHdhcnR6LXByLmNvbSI+ZWNsaXBzZUBzY2h3YXJ0ei1wci5jb208L2E+PC9kaXY+DQogICAgPC90ZD4NCiAgPC90cj4NCjwvdGFibGU+DQoJCTxUQUJMRSAgd2lkdGg9IjEwMCUiIENFTExTUEFDSU5HPTAgQ0VMTFBBRERJTkc9Mz4NCgkJPHRyPg0KCQkgIDx0ZD4gDQogICAgICAgICAgICA8aHIgd2lkdGg9Ijg1JSI+DQogICAgICA8UD5CcmFuZCBvciBwcm9kdWN0IG5hbWVzIGFyZSByZWdpc3RlcmVkIHRyYWRlbWFya3Mgb3IgdHJhZGVtYXJrcyBvZiB0aGVpciANCiAgICAgICAgcmVzcGVjdGl2ZSBob2xkZXJzLiBKYXZhIGFuZCBhbGwgSmF2YS1iYXNlZCB0cmFkZW1hcmtzIGFyZSB0cmFkZW1hcmtzIA0KICAgICAgICBvciByZWdpc3RlcmVkIHRyYWRlbWFya3Mgb2YgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBpbiB0aGUgVW5pdGVkIFN0YXRlcyANCiAgICAgICAgYW5kIG90aGVyIGNvdW50cmllcy48YnI+DQogICAgICA8L1A+DQo8aHIgd2lkdGg9Ijg1JSI+DQogICAgPC90ZD4NCgkJPC90cj4NCiAgICAgICAgPC90YWJsZT6gICAgICAgICANCqANCjwvYm9keT48L2h0bWw+DQo=