PGh0bWw+PGhlYWQ+DQo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2RlZmF1bHRfc3R5bGUuY3NzIj4NCjx0aXRsZT5FY2xpcHNlQ29uIEtleW5vdGVzPC90aXRsZT4NCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQo8IS0tDQouc3R5bGUyIHsNCglmb250LXNpemU6IDE2cHQ7DQoJZm9udC13ZWlnaHQ6IGJvbGQ7DQp9DQotLT4NCjwvc3R5bGU+DQo8L2hlYWQ+DQo8Ym9keSB0ZXh0PSIjMDAwMDAwIiBiZ2NvbG9yPSIjZmZmZmZmIiBsaW5rPSIjMDAwMGVlIiB2bGluaz0iIzU1MWE4YiIgYWxpbms9IiNmZjAwMDAiPg0KPHRhYmxlIGJvcmRlcj0wIGNlbGxzcGFjaW5nPTUgY2VsbHBhZGRpbmc9MiB3aWR0aD0iMTAwJSIgPg0KICA8dHI+IA0KICAgIDx0ZCBhbGlnbj1sZWZ0IHdpZHRoPSI3MiUiPiA8Zm9udCBjbGFzcz1pbmRleHRvcCBzdHlsZTQ+RWNsaXBzZUNvbiAyMDA2IEtleW5vdGVzIDwvZm9udD48YnI+DQogICAgPGZvbnQgY2xhc3M9aW5kZXhzdWI+Jm5ic3A7IDwvZm9udD48L3RkPg0KICAgIDx0ZCB3aWR0aD0iMjglIj48aW1nIHNyYz0iLi4vLi4vaW1hZ2VzL0lkZWEuanBnIiBoZWlnaHQ9ODYgd2lkdGg9MTIwPjwvdGQ+DQogIDwvdHI+DQo8L3RhYmxlPg0KPHRhYmxlIGJvcmRlcj0wIGNlbGxzcGFjaW5nPTUgY2VsbHBhZGRpbmc9MiB3aWR0aD0iMTAwJSIgPg0KICA8dHI+IA0KICAgIDx0ZCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiIGJnY29sb3I9IiMwMDgwQzAiPjxiPjxmb250IGNvbG9yPSIjRkZGRkZGIiBmYWNlPSJBcmlhbCxIZWx2ZXRpY2EiPlByZXNzIHJlbGVhc2U8L2ZvbnQ+PC9iPjwvdGQ+DQogIDwvdHI+DQogIDx0cj4gDQogICAgPHRkPjxwIGFsaWduPSJjZW50ZXIiPjxzcGFuIGNsYXNzPSJzdHlsZTIiPkVjbGlwc2UgRm91bmRhdGlvbiBBbm5vdW5jZXMgS2V5bm90ZXMgZm9yIEVjbGlwc2VDb24gMjAwNjwvc3Bhbj48L3A+DQogICAgIA0KICAgICAgPFA+PHN0cm9uZz5PVFRBV0GXT2N0b2JlciAyNSwgMjAwNTwvc3Ryb25nPpdUaGUgRWNsaXBzZSBGb3VuZGF0aW9uIHRvZGF5IGFubm91bmNlZCB0aGUgDQoJICBrZXlub3RlIHNwZWFrZXJzIGZvciBpdHMgdGhpcmQgYW5udWFsIGNvbW11bml0eSBjb25mZXJlbmNlLCBFY2xpcHNlQ29uIDIwMDYuIFRoZSBzaG93IGJyaW5ncyANCgkgIHRvZ2V0aGVyIHRoZSBFY2xpcHNlIGNvbW11bml0eSB0byBzaGFyZSBhbmQgbGVhcm4gbmV3IHRlY2huaXF1ZXMsIGlkZWFzIGFuZCB0ZWNobm9sb2dpZXMsIGFzIA0KCSAgd2VsbCBhcyBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBsYXRlc3QgZGV2ZWxvcG1lbnRzIGFuZCBmdXR1cmUgcGxhbnMgb2YgdGhlIEVjbGlwc2UgDQoJICBwcm9qZWN0cy4gVGhlIGNvbmZlcmVuY2Ugd2lsbCBiZSBoZWxkIE1hcmNoIDIwLTIzLCAyMDA2IGF0IHRoZSBTYW50YSBDbGFyYSBDb252ZW50aW9uIENlbnRlci4NCgkgIDwvcD4NCgkgIDxwPiBUaGUga2V5bm90ZSBzcGVha2VycyBmb3IgRWNsaXBzZUNvbiAyMDA2IHdpbGwgZmVhdHVyZSBpbmR1c3RyeSBsZWFkZXJzIGluY2x1ZGluZzo8L3A+DQoJICA8dWw+DQoJICAgIDxsaT5CcmlhbiCTQm96lCBFbGxveSwgc2VuaW9yIHZpY2UgcHJlc2lkZW50IG9mIHNvZnR3YXJlIHByb2R1Y3RzLCBCb3JsYW5kIFNvZnR3YXJlOzwvbGk+DQogICAgICAgIDxsaT5XYXJkIEN1bm5pbmdoYW0sIERpcmVjdG9yLCBDb21taXR0ZXIgQ29tbXVuaXR5IERldmVsb3BtZW50LCBFY2xpcHNlIEZvdW5kYXRpb247IDwvbGk+DQoJICAgIDxsaT5Kb2VsIFNwb2xza3ksIENFTyBvZiBGb2cgQ3JlZWsgU29mdHdhcmUgYW5kIG5vdGVkIGF1dGhvciBvZiB0aGUgkUpvZWwgT24gU29mdHdhcmWSIHdlYmxvZzs8L2xpPg0KCSAgICA8bGk+R3JlZyBTdGVpbiwgY2hhaXJtYW4gb2YgQXBhY2hlIEZvdW5kYXRpb247IGFuZCA8L2xpPg0KCSAgICA8bGk+Sm9obiBXaWVnYW5kIGFuZCBFcmljaCBHYW1tYSwgUE1DIGxlYWRlcnMgb2YgRWNsaXBzZSBQbGF0Zm9ybSBwcm9qZWN0LiA8L2xpPg0KICAgICAgPC91bD4JICANCgkgIDxwPpNXZSBhcmUgdGhyaWxsZWQgdG8gcHJlc2VudCBhbiBleHBlcmllbmNlZCBncm91cCBvZiBzcGVha2VycyB0byBwaXF1ZSB0aGUgaW50ZXJlc3Qgb2YgYWxsIGF0dGVuZGVlcyBhdCBFY2xpcHNlQ29uIDIwMDYslCBzYWlkIE1pa2UgTWlsaW5rb3ZpY2gsIGV4ZWN1dGl2ZSBkaXJlY3RvciBvZiB0aGUgRWNsaXBzZSBGb3VuZGF0aW9uLiCTV2l0aCB0aGUgZ3Jvd3RoIGluIHRoZSBudW1iZXIgb2YgcHJvamVjdHMsIGNvbW1pdHRlcnMsIG1lbWJlcnMgYW5kIHVzZXJzLCB0aGUgdGhpcmQgYW5udWFsIGNvbmZlcmVuY2UgcHJvbWlzZXMgdG8gYmUgdGhlIG1vc3QgZW5saWdodGVuaW5nIHRodXMgZmFyIGZvciB0aGUgZ3Jvd2luZyBFY2xpcHNlIGNvbW11bml0eS6UPC9wPg0KCSAgPHA+UmVnaXN0cmF0aW9uIGZvciBFY2xpcHNlQ29uIDIwMDYgaXMgbm93IG9wZW4uIFRoZSBwcm9ncmFtIGNvbnNpc3RzIG9mIG92ZXIgdGhyZWUgZGF5cyBvZiBzZXNzaW9ucyBvcmdhbml6ZWQgaW50byB0aHJlZSB0cmFja3M6IDwvcD4NCgkgIDx1bD4NCgkgICAgPGxpPglEZXZlbG9wZXIgVHJhY2sgliBUZWNobmljYWwgc2Vzc2lvbnMgYW5kIHR1dG9yaWFscyBmb3IgZGV2ZWxvcGVycyBjb3ZlcmluZyBFY2xpcHNlIGNvcmUgdGVjaG5vbG9neSwgbmV3IGRldmVsb3BtZW50cyBhbmQgZGVtb25zdHJhdGlvbnM7PC9saT4NCiAgICAgICAgPGxpPglVc2VyIFRyYWNrIJYgQ2FzZSBzdHVkaWVzLCBiZXN0IHByYWN0aWNlcyBhbmQgdGVjaG5pcXVlcyBmb3IgdGhlIHVzZSBvZiBFY2xpcHNlIHRvb2xzIGFuZCB0aGUgRWNsaXBzZSBSaWNoIENsaWVudCBQbGF0Zm9ybSAoUkNQKTsgYW5kPC9saT4NCgkgICAgPGxpPkJ1c2luZXNzIFRyYWNrIJYgU2Vzc2lvbnMgZXhhbWluaW5nIG1hcmtldGluZywgYnVzaW5lc3MgZGV2ZWxvcG1lbnQgYW5kIGluZHVzdHJ5IGlzc3VlcyBvZiBpbnRlcmVzdCB0byB0aGUgRWNsaXBzZSBjb21tdW5pdHkuPC9saT4NCiAgICAgIDwvdWw+CSAgDQoJICA8cD5Nb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBjb25mZXJlbmNlLCBpbmNsdWRpbmcgaG93IHRvIHJlZ2lzdGVyLCBjYW4gYmUgZm91bmQgb25saW5lIGF0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZWNvbi5vcmciIHRhcmdldD0iX2JsYW5rIj5odHRwOi8vd3d3LmVjbGlwc2Vjb24ub3JnPC9hPi4gICAgICA8L3A+DQoJICA8cD5NZW1iZXJzIG9mIHRoZSBwcmVzcyBhbmQgYW5hbHlzdCBjb21tdW5pdHkgYXJlIGVuY291cmFnZWQgdG8gYXR0ZW5kIEVjbGlwc2VDb24gMjAwNi4gIFJlZ2lzdHJhdGlvbiBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgYXQgPGEgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlY29uLm9yZyIgdGFyZ2V0PSJfYmxhbmsiPmh0dHA6Ly93d3cuZWNsaXBzZWNvbi5vcmc8L2E+LjwvcD4NCgkgIDxicj4NCiAgPC90cj4NCjwvdGFibGU+DQoNCg0KIDwvdGFibGU+DQo8dGFibGUgd2lkdGg9IjEwMCUiIGNlbGxzcGFjaW5nPTAgY2VsbHBhZGRpbmc9MyBhbGlnbj1jZW50ZXI+DQoJCTx0ciBiZ2NvbG9yPSIjOTk5OTk5Ij4NCgkJDQogICAgPHRkIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCIgYmdjb2xvcj0iIzAwODBDMCI+PGI+PGZvbnQgY29sb3I9IiNGRkZGRkYiIGZhY2U9IkFyaWFsLEhlbHZldGljYSI+QWJvdXQgdGhlIEVjbGlwc2UgRm91bmRhdGlvbjwvZm9udD48L2I+PC90ZD4NCgkJPC9UUj4NCgkJPFRSPg0KCQk8dGQgYWxpZ249bGVmdD4NCgkJPFRBQkxFICB3aWR0aD0iMTAwJSIgQ0VMTFNQQUNJTkc9MCBDRUxMUEFERElORz0zPg0KCQk8dHI+DQoJCSAgPHRkPiANCiAgICAgICAgICAgIDxQPiBFY2xpcHNlIGlzIGFuIG9wZW4gc291cmNlIGNvbW11bml0eSB3aG9zZSBwcm9qZWN0cyBhcmUgZm9jdXNlZCANCiAgICAgICAgICAgICAgb24gcHJvdmlkaW5nIGFuIGV4dGVuc2libGUgZGV2ZWxvcG1lbnQgcGxhdGZvcm0gYW5kIGFwcGxpY2F0aW9uIA0KICAgICAgICAgICAgICBmcmFtZXdvcmtzIGZvciBidWlsZGluZyBzb2Z0d2FyZS4gRWNsaXBzZSBwcm92aWRlcyBleHRlbnNpYmxlIHRvb2xzIA0KICAgICAgICAgICAgICBhbmQgZnJhbWV3b3JrcyB0aGF0IHNwYW4gdGhlIHNvZnR3YXJlIGRldmVsb3BtZW50IGxpZmVjeWNsZSwgaW5jbHVkaW5nIA0KICAgICAgICAgICAgICBzdXBwb3J0IGZvciBtb2RlbGluZywgbGFuZ3VhZ2UgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnRzIGZvciBKYXZhLCANCiAgICAgICAgICAgICAgQy9DKysgYW5kIG90aGVycywgdGVzdGluZyBhbmQgcGVyZm9ybWFuY2UsIGJ1c2luZXNzIGludGVsbGlnZW5jZSwgDQogICAgICAgICAgICAgIHJpY2ggY2xpZW50IGFwcGxpY2F0aW9ucyBhbmQgZW1iZWRkZWQgZGV2ZWxvcG1lbnQuIEEgbGFyZ2UsIHZpYnJhbnQgDQogICAgICAgICAgICAgIGVjb3N5c3RlbSBvZiBtYWpvciB0ZWNobm9sb2d5IHZlbmRvcnMsIGlubm92YXRpdmUgc3RhcnQtdXBzLCB1bml2ZXJzaXRpZXMgDQogICAgICAgICAgICAgIGFuZCByZXNlYXJjaCBpbnN0aXR1dGlvbnMgYW5kIGluZGl2aWR1YWxzIGV4dGVuZCwgY29tcGxlbWVudCBhbmQgDQogICAgICAgICAgICAgIHN1cHBvcnQgdGhlIEVjbGlwc2UgUGxhdGZvcm0uPC9wPg0KICAgICAgICAgICAgPFA+IFRoZSBFY2xpcHNlIEZvdW5kYXRpb24gaXMgYSBub3QtZm9yLXByb2ZpdCwgbWVtYmVyIHN1cHBvcnRlZCBjb3Jwb3JhdGlvbiANCiAgICAgICAgICAgICAgdGhhdCBob3N0cyB0aGUgRWNsaXBzZSBwcm9qZWN0cy4gRnVsbCBkZXRhaWxzIG9mIEVjbGlwc2UgYW5kIHRoZSANCiAgICAgICAgICAgICAgRWNsaXBzZSBGb3VuZGF0aW9uIGFyZSBhdmFpbGFibGUgYXQgPGEgaHJlZj0iaHR0cDovL3d3dy5lY2xpcHNlLm9yZy8iIHRhcmdldD0iX3RvcCI+d3d3LmVjbGlwc2Uub3JnPC9hPiANCiAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICA8L3RkPg0KCQk8L3RyPg0KICAgICAgICA8L3RhYmxlPjwvdGFibGU+oA0KDQogPC90YWJsZT6gDQoJPHRhYmxlIHdpZHRoPSIxMDAlIiBjZWxsc3BhY2luZz0wIGNlbGxwYWRkaW5nPTMgYWxpZ249Y2VudGVyPg0KCQk8dHIgYmdjb2xvcj0iIzk5OTk5OSI+DQogICAgPHRkIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCIgYmdjb2xvcj0iIzAwODBDMCI+PGI+PGZvbnQgY29sb3I9IiNGRkZGRkYiIGZhY2U9IkFyaWFsLEhlbHZldGljYSI+TWVkaWEgDQogICAgICBjb250YWN0czwvZm9udD48L2I+PC90ZD4NCgkJPC9UUj4NCjwvdGFibGU+DQoJCQ0KPHRhYmxlIHdpZHRoPSIxMDAlIiBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSI1Ij4NCiAgPHRyPiANCiAgICA8dGQgd2lkdGg9IjM2JSIgPiANCiAgICAgIDxkaXYgYWxpZ249ImNlbnRlciI+IA0KICAgICAgICA8cD5DaGFudGFsIFlhbmcgZm9yIEVjbGlwc2U8YnI+DQogICAgICAgICAgU2Nod2FydHogQ29tbXVuaWNhdGlvbnM8YnI+DQogICAgICAgICAgNzgxLTY4NC0wNzcwPGJyPg0KICAgICAgICAgIDxhIGhyZWY9Im1haWx0bzplY2xpcHNlQHNjaHdhcnR6LXByLmNvbSI+ZWNsaXBzZUBzY2h3YXJ0ei1wci5jb208L2E+PGJyPg0KICAgICAgICA8L3A+DQogICAgICA8L2Rpdj4NCiAgICA8L3RkPg0KICA8L3RyPg0KPC90YWJsZT4NCgkJPFRBQkxFICB3aWR0aD0iMTAwJSIgQ0VMTFNQQUNJTkc9MCBDRUxMUEFERElORz0zPg0KCQk8dHI+DQoJCSAgPHRkPiANCiAgICAgIDxQPkJyYW5kIG9yIHByb2R1Y3QgbmFtZXMgYXJlIHJlZ2lzdGVyZWQgdHJhZGVtYXJrcyBvciB0cmFkZW1hcmtzIG9mIHRoZWlyIA0KICAgICAgICByZXNwZWN0aXZlIGhvbGRlcnMuIEVjbGlwc2UgaXMgYSB0cmFkZW1hcmsgb2YgRWNsaXBzZSBGb3VuZGF0aW9uIEluYy4gDQogICAgICAgIEphdmEgYW5kIGFsbCBKYXZhLWJhc2VkIHRyYWRlbWFya3MgYXJlIHRyYWRlbWFya3Mgb3IgcmVnaXN0ZXJlZCB0cmFkZW1hcmtzIA0KICAgICAgICBvZiBTdW4gTWljcm9zeXN0ZW1zLCBJbmMuIGluIHRoZSBVbml0ZWQgU3RhdGVzIGFuZCBvdGhlciBjb3VudHJpZXMuIDxicj4NCiAgICAgIDwvUD4NCg0KICAgICAgPC90ZD4NCgkJPC90cj4NCiAgICAgICAgPC90YWJsZT6gICAgICAgICANCqANCjwvYm9keT48L2h0bWw+DQo=