PGh0bWw+PGhlYWQ+DQo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2RlZmF1bHRfc3R5bGUuY3NzIj4NCjx0aXRsZT5FY2xpcHNlIEZvdW5kYXRpb248L3RpdGxlPg0KPC9oZWFkPg0KPGJvZHkgdGV4dD0iIzAwMDAwMCIgYmdjb2xvcj0iI2ZmZmZmZiIgbGluaz0iIzAwMDBlZSIgdmxpbms9IiM1NTFhOGIiIGFsaW5rPSIjZmYwMDAwIj4NCjx0YWJsZSBib3JkZXI9MCBjZWxsc3BhY2luZz01IGNlbGxwYWRkaW5nPTIgd2lkdGg9IjEwMCUiID4NCiAgPHRyPiANCiAgICA8dGQgYWxpZ249bGVmdCB3aWR0aD0iNzIlIj4gPGZvbnQgY2xhc3M9aW5kZXh0b3A+IE5ldyBXZWIgIEluZnJhc3RydWN0dXJlIDwvZm9udD48YnI+DQogICAgPGZvbnQgY2xhc3M9aW5kZXhzdWI+Jm5ic3A7IDwvZm9udD48L3RkPg0KICAgIDx0ZCB3aWR0aD0iMjglIj48aW1nIHNyYz0iLi4vLi4vaW1hZ2VzL0lkZWEuanBnIiBoZWlnaHQ9ODYgd2lkdGg9MTIwPjwvdGQ+DQogIDwvdHI+DQo8L3RhYmxlPg0KPHRhYmxlIGJvcmRlcj0wIGNlbGxzcGFjaW5nPTUgY2VsbHBhZGRpbmc9MiB3aWR0aD0iMTAwJSIgPg0KICA8dHI+IA0KICAgIDx0ZCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiIGJnY29sb3I9IiMwMDgwQzAiPjxiPjxmb250IGNvbG9yPSIjRkZGRkZGIiBmYWNlPSJBcmlhbCxIZWx2ZXRpY2EiPlByZXNzIHJlbGVhc2U8L2ZvbnQ+PC9iPjwvdGQ+DQogIDwvdHI+DQogIDx0cj4gDQogICAgPHRkPiA8YnI+DQogICAgICA8aDEgQUxJR049IkNFTlRFUiI+PGI+PHNwYW4gc3R5bGU9J2ZvbnQtc2l6ZToxNi4wcHQ7Zm9udC1mYW1pbHk6QXJpYWw7IlRpbWVzIE5ldyBSb21hbiInPjxiPiANCiAgICAgICAgRWNsaXBzZSBGb3VuZGF0aW9uIExhdW5jaGVzIE5ldyBXZWIgSW5mcmFzdHJ1Y3R1cmUgdG8gU3VwcG9ydCB0aGUgRXhwYW5kaW5nIEVjbGlwc2UgQ29tbXVuaXR5PC9iPjwvc3Bhbj48L2I+PC9oMT4NCiAgICAgIDx1bD4NCiAgICAgICAgPGxpPkhQLCBJQk0sIEludGVsIGFuZCBOb3ZlbGwgQ29udHJpYnV0ZSBUZWNobm9sb2d5IFJlc291cmNlcyBmb3IgQ3JpdGljYWwgVXBncmFkZTwvbGk+DQogICAgICA8L3VsPiAgICAgIA0KICAgICAgPFA+T3R0YXdhLCBPTiZtZGFzaDtKdW5lIDEsIDIwMDUgLS0gVGhlIEVjbGlwc2UgRm91bmRhdGlvbiB0b2RheSBhbm5vdW5jZWQgDQogICAgICAgIGEgbWFqb3IgaW5mcmFzdHJ1Y3R1cmUgdXBncmFkZSBvZiB0aGUgRWNsaXBzZSBjb21tdW5pdHkgd2ViIHNpdGUgKDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmciIHRhcmdldD0iX3RvcCI+aHR0cDovL3d3dy5lY2xpcHNlLm9yZzwvYT4pLiANCiAgICAgICAgVGhpcyB1cGdyYWRlIHdhcyBtYWRlIHBvc3NpYmxlIHRocm91Z2ggY29udHJpYnV0aW9ucyBvZiBoYXJkd2FyZSBhbmQgc29mdHdhcmUgDQogICAgICAgIGZyb20gSFAsIElCTSwgSW50ZWwgYW5kIE5vdmVsbC4gRHVlIHRvIGluY3JlYXNlZCBXZWIgdHJhZmZpYyBhbmQgZG93bmxvYWQgDQogICAgICAgIHJhdGVzIGFtb25nIHRoZSBidXJnZW9uaW5nIEVjbGlwc2Ugb3BlbiBzb3VyY2UgY29tbXVuaXR5LCBFY2xpcHNlLm9yZyZyc3F1bztzIA0KICAgICAgICB3ZWIgaW5mcmFzdHJ1Y3R1cmUgaGFzIGJlZW4gcmVkZXNpZ25lZCB0byBzY2FsZSBmb3IgZ3Jvd3RoIGFuZCBlbnN1cmUgDQogICAgICAgIGhpZ2ggYXZhaWxhYmlsaXR5IGZvciB0aGUgZW50aXJlIGNvbW11bml0eS4gPC9wPg0KCSAgDQogICAgICA8cD5XaXRoIGFwcHJveGltYXRlbHkgMS4yIG1pbGxpb24gcGFnZSB2aWV3cyBvbiBhbiBhdmVyYWdlIGRheSBhbmQgMTAgdGVyYWJ5dGVzIG9mIGRhdGEgdHJhbnNmZXJyZWQgcGVyIA0KCSAgbW9udGgsIHRoZSBwcmV2aW91cyBpbmZyYXN0cnVjdHVyZSBmb3IgdGhlIHNpdGUgd2FzIHVuZGVyIGEgY29uc3RhbnQgc3RyYWluLiBBcyBtb3JlIGNvbXBhbmllcyBqb2luIHRoZSANCgkgIEVjbGlwc2UgRm91bmRhdGlvbiBhbmQgRWNsaXBzZSB0ZWNobm9sb2dpZXMgZ2FpbiBhZG9wdGlvbiBhY3Jvc3MgdGhlIGluZHVzdHJ5LCBpdCB3YXMgY2xlYXIgdGhhdCBhIG1ham9yDQoJICAgY2hhbmdlIHRvIHRoZSBpbmZyYXN0cnVjdHVyZSB3YXMgbmVjZXNzYXJ5LiBBIG5ldyBwcm9kdWN0IHJlbGVhc2Ugb2YgRWNsaXBzZS1iYXNlZCBvcGVuIHNvdXJjZSANCgkgICBwcm9qZWN0cywgc3VjaCBhcyB0aGUgdXBjb21pbmcgRWNsaXBzZSAzLjEgUGxhdGZvcm0gbGF1bmNoLCBjb3VsZCBjYXVzZSBtYXNzaXZlIHN1cmdlcyBpbiB0cmFmZmljIGFuZCANCgkgICBicmluZyBkb3dubG9hZHMgdG8gYSBzdGFuZHN0aWxsLiBXaXRoIHRoZSBuZXcgYXJjaGl0ZWN0dXJlLCB0aHJvdWdocHV0IGlzIGdyZWF0bHkgaW5jcmVhc2VkIGFzIGFyZSB0aGUgDQoJICAgZXhwYW5kZWQgY2FwYWJpbGl0aWVzIG5lZWRlZCBmb3IgcGVyaW9kcyBvZiBoaWdoIHRyYWZmaWMuIDwvcD4NCgkgICANCiAgICAgIDxwPiZsZHF1bztBcyB0aGUgbWVtYmVyc2hpcCBvZiB0aGUgRm91bmRhdGlvbiBhbmQgdGhlIHVzYWdlIG9mIHRoZSB0ZWNobm9sb2d5IGNvbnRpbnVlcyB0byBncm93LCB0aGUgDQoJICBzY2FsZSBhbmQgY29tcGxleGl0eSBvZiBvdXIgc2l0ZSBoYXMgZXhwYW5kZWQgZHJhbWF0aWNhbGx5LCZyZHF1bzsgc2FpZCBNaWtlIE1pbGlua292aWNoLCBleGVjdXRpdmUgDQoJICBkaXJlY3RvciBvZiB0aGUgRWNsaXBzZSBGb3VuZGF0aW9uLiAmbGRxdW87V2UgdGhhbmsgSFAsIElCTSwgSW50ZWwgYW5kIE5vdmVsbCAmbmRhc2g7IGFsbCBhY3RpdmUgDQoJICBtZW1iZXJzIGFuZCBsZWFkZXJzIGluIG9wZW4gc291cmNlICZuZGFzaDsgZm9yIHRoZWlyIGdlbmVyb3VzIGNvbnRyaWJ1dGlvbnMgdG93YXJkIGJldHRlciBzZXJ2aW5nIHRoZSANCgkgIG5lZWRzIG9mIHRoZSBjb21tdW5pdHkuIFdpdGggdGhlaXIgaGVscCwgd2UgY2FuIGNvbnRpbnVlIG91ciBjb21taXRtZW50IHRvIHN1cHBvcnQgdGhlIGJyb2FkIGFycmF5IG9mIA0KCSAgb3BlbiBzb3VyY2UgZGV2ZWxvcG1lbnQgaW4gdGhlIEVjbGlwc2UgZWNvc3lzdGVtLiZyZHF1bzs8L3A+DQogICAgICA8cD5IUCwgSUJNLCBJbnRlbCBhbmQgTm92ZWxsIGNvbnRyaWJ1dGVkIHNvZnR3YXJlLCBoYXJkd2FyZSBhbmQgZXhwZXJ0aXNlIHRvIGhlbHAgdGhlIEVjbGlwc2UgRm91bmRhdGlvbiBidWlsZCB0aGlzIG5ldyB3ZWIgaW5mcmFzdHJ1Y3R1cmUuIDwvcD4NCiAgICAgIDxwPkhQIGNvbnRyaWJ1dGVkIGZvdXIgbmV3IEhQIEludGVncml0eSByeDI2MDAgc2VydmVycywgZWFjaCBlcXVpcHBlZCB3aXRoIHR3byBJbnRlbCZyZWc7IEl0YW5pdW0mcmVnOyAyIHByb2Nlc3NvcnMgYW5kIDhHQiBvZiBtZW1vcnkuPC9wPg0KICAgICAgPHA+SW50ZWwgY29udHJpYnV0ZWQgZWlnaHQgMS4zR0h6IEludGVsriBJdGFuaXVtriAyIHByb2Nlc3NvcnMgdGhhdCB3ZXJlIGNvdXBsZWQgd2l0aCB0aGUgc2VydmVycyANCgkgIGNvbnRyaWJ1dGVkIGJ5IEhQLiBJbiBhZGRpdGlvbiB0byB0aGUgcHJvY2Vzc29ycywgSW50ZWwgSVQgYWxzbyBjb250cmlidXRlZCB0aGVpciBleHBlcnRpc2UgaW4gDQoJICBsYXJnZS1zY2FsZSBlbnRlcnByaXNlIGNvbXB1dGluZyBieSBwcm92aWRpbmcgdmFsdWFibGUgYXNzaXN0YW5jZSB3aXRoIHRoZSBhcmNoaXRlY3R1cmFsIGRlc2lnbiANCgkgIGFuZCBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgc2NhbGFibGUgYW5kIGhpZ2hseS1hdmFpbGFibGUgbmV3IEVjbGlwc2UgY29tcHV0aW5nIGluZnJhc3RydWN0dXJlLjwvcD4NCiAgICAgIDxwPklCTSBwcm92aWRlZCB0byB0aGUgRm91bmRhdGlvbiB0aHJlZSBJQk0gZVNlcnZlciBwNSA1NTAgc2VydmVycywgZWFjaCBwb3dlcmVkIGJ5IGZvdXIgUE9XRVI1IA0KCSAgcHJvY2Vzc29ycyBhbmQgMTZHIG9mIG1lbW9yeS4gVGhlIGNvbXBhbnkgYWxzbyBwcm92aWRlZCByZXNvdXJjZXMgdG8gaGVscCBFY2xpcHNlIGV4cGFuZCBpdHMgDQoJICBtZW1vcnkgYW5kIHN0b3JhZ2Ugc3BhY2UuIElCTSBjb250cmlidXRlZCAyNCAzNkcgZGlza3MgYW5kIGFuIElCTSBUb3RhbFN0b3JhZ2UgRVhQIFBsdXMgMzIwIHdpdGggDQoJICAxNCAxNDZHIGRpc2tzLjwvcD4NCiAgICAgIDxwPk5vdmVsbCBkb25hdGVkIFNVU0UgTElOVVggRW50ZXJwcmlzZSBTZXJ2ZXIgOSBmb3IgSW50ZWwgSXRhbml1bSBQcm9jZXNzb3IgRmFtaWx5IGFuZCBJQk0gDQoJICBQT1dFUiBwcm9jZXNzb3JzIGZvciB0aGUgaW5mcmFzdHJ1Y3R1cmUsIGFzIHdlbGwgYXMgdGVjaG5pY2FsIHN1cHBvcnQgc2VydmljZXMuIDwvcD48L3RkPg0KICA8L3RyPg0KPC90YWJsZT4NCg0KoA0KDQoNCjx0YWJsZSB3aWR0aD0iMTAwJSIgY2VsbHNwYWNpbmc9MCBjZWxscGFkZGluZz0zIGFsaWduPWNlbnRlcj4NCgkJPHRyIGJnY29sb3I9IiM5OTk5OTkiPg0KCQkNCiAgICA8dGQgYWxpZ249ImxlZnQiIHZhbGlnbj0idG9wIiBiZ2NvbG9yPSIjMDA4MEMwIj48Yj48Zm9udCBjb2xvcj0iI0ZGRkZGRiIgZmFjZT0iQXJpYWwsSGVsdmV0aWNhIj5BYm91dCB0aGUgRWNsaXBzZSBGb3VuZGF0aW9uPC9mb250PjwvYj48L3RkPg0KCQk8L1RSPg0KCQk8VFI+DQoJCTx0ZCBhbGlnbj1sZWZ0Pg0KCQk8VEFCTEUgIHdpZHRoPSIxMDAlIiBDRUxMU1BBQ0lORz0wIENFTExQQURESU5HPTM+DQoJCTx0cj4NCgkJICA8dGQ+IA0KICAgICAgICAgICAgPFA+IEVjbGlwc2UgaXMgYW4gb3BlbiBzb3VyY2UgY29tbXVuaXR5IHdob3NlIHByb2plY3RzIGFyZSBmb2N1c2VkIG9uIHByb3ZpZGluZyBhbiANCgkJCWV4dGVuc2libGUgZGV2ZWxvcG1lbnQgcGxhdGZvcm0gYW5kIGFwcGxpY2F0aW9uIGZyYW1ld29ya3MgZm9yIGJ1aWxkaW5nIHNvZnR3YXJlLiAgDQoJCQlFY2xpcHNlIHByb3ZpZGVzIGV4dGVuc2libGUgdG9vbHMgYW5kIGZyYW1ld29ya3MgdGhhdCBzcGFuIHRoZSBzb2Z0d2FyZSBkZXZlbG9wbWVudA0KCQkJIGxpZmVjeWNsZSwgaW5jbHVkaW5nIHN1cHBvcnQgZm9yIG1vZGVsaW5nLCBsYW5ndWFnZSBkZXZlbG9wbWVudCBlbnZpcm9ubWVudHMgZm9yIA0KCQkJIEphdmEsIEMvQysrIGFuZCBvdGhlcnMsIHRlc3RpbmcgYW5kIHBlcmZvcm1hbmNlLCBidXNpbmVzcyBpbnRlbGxpZ2VuY2UsIHJpY2ggY2xpZW50IA0KCQkJIGFwcGxpY2F0aW9ucyBhbmQgZW1iZWRkZWQgZGV2ZWxvcG1lbnQuIEEgbGFyZ2UsIHZpYnJhbnQgZWNvc3lzdGVtIG9mIG1ham9yIHRlY2hub2xvZ3kgDQoJCQkgdmVuZG9ycywgaW5ub3ZhdGl2ZSBzdGFydC11cHMsIHVuaXZlcnNpdGllcyBhbmQgcmVzZWFyY2ggaW5zdGl0dXRpb25zIGFuZCBpbmRpdmlkdWFscyANCgkJCSBleHRlbmQsIGNvbXBsZW1lbnQgYW5kIHN1cHBvcnQgdGhlIEVjbGlwc2UgUGxhdGZvcm0uPC9wPg0KICAgICAgICAgICAgPFA+IFRoZSBFY2xpcHNlIEZvdW5kYXRpb24gaXMgYSBub3QtZm9yLXByb2ZpdCwgbWVtYmVyIHN1cHBvcnRlZCBjb3Jwb3JhdGlvbiB0aGF0IGhvc3RzIHRoZSBFY2xpcHNlIHByb2plY3RzLiBGdWxsIGRldGFpbHMgb2YgRWNsaXBzZSBhbmQgdGhlIEVjbGlwc2UgRm91bmRhdGlvbiBhcmUgYXZhaWxhYmxlIGF0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvIiB0YXJnZXQ9Il90b3AiPnd3dy5lY2xpcHNlLm9yZzwvYT4gPC9wPjwvdGQ+DQoJCTwvdHI+DQogICAgICAgIDwvdGFibGU+PC90YWJsZT6gDQoJPHRhYmxlIHdpZHRoPSIxMDAlIiBjZWxsc3BhY2luZz0wIGNlbGxwYWRkaW5nPTMgYWxpZ249Y2VudGVyPg0KCQk8dHIgYmdjb2xvcj0iIzk5OTk5OSI+DQogICAgPHRkIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCIgYmdjb2xvcj0iIzAwODBDMCI+PGI+PGZvbnQgY29sb3I9IiNGRkZGRkYiIGZhY2U9IkFyaWFsLEhlbHZldGljYSI+TWVkaWEgDQogICAgICBjb250YWN0PC9mb250PjwvYj48L3RkPg0KCQk8L1RSPg0KPC90YWJsZT4NCgkJDQo8dGFibGUgd2lkdGg9IjEwMCUiIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjUiPg0KICA8dHI+DQogICAgPHRkID4gDQogICAgICA8ZGl2IGFsaWduPSJjZW50ZXIiPkxhdXJhIEFja2VybWFuIDxicj4NCiAgICAgICAgU2Nod2FydHogQ29tbXVuaWNhdGlvbnM8YnI+DQogICAgICAgIDc4MS02ODQtMDc3MDxicj4NCiAgICAgIDxhIGhyZWY9Im1haWx0bzplY2xpcHNlQHNjaHdhcnR6LXByLmNvbSI+ZWNsaXBzZUBzY2h3YXJ0ei1wci5jb208L2E+PC9kaXY+DQogICAgPC90ZD4NCiAgPC90cj4NCjwvdGFibGU+DQoJCTxUQUJMRSAgd2lkdGg9IjEwMCUiIENFTExTUEFDSU5HPTAgQ0VMTFBBRERJTkc9Mz4NCgkJPHRyPg0KCQkgIDx0ZD4gDQogICAgICAgICAgICA8aHIgd2lkdGg9Ijg1JSI+DQogICAgICA8UD5CcmFuZCBvciBwcm9kdWN0IG5hbWVzIGFyZSByZWdpc3RlcmVkIHRyYWRlbWFya3Mgb3IgdHJhZGVtYXJrcyBvZiB0aGVpciANCiAgICAgICAgcmVzcGVjdGl2ZSBob2xkZXJzLiBKYXZhIGFuZCBhbGwgSmF2YS1iYXNlZCB0cmFkZW1hcmtzIGFyZSB0cmFkZW1hcmtzIA0KICAgICAgICBvciByZWdpc3RlcmVkIHRyYWRlbWFya3Mgb2YgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBpbiB0aGUgVW5pdGVkIFN0YXRlcyANCiAgICAgICAgYW5kIG90aGVyIGNvdW50cmllcy48YnI+DQogICAgICA8L1A+DQo8aHIgd2lkdGg9Ijg1JSI+DQogICAgPC90ZD4NCgkJPC90cj4NCiAgICAgICAgPC90YWJsZT6gICAgICAgICANCqANCjwvYm9keT48L2h0bWw+DQo=