CINXE.COM
NCTA 2011 Abstracts
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head><title> NCTA 2011 Abstracts </title><link href="App_Themes/2024/style.css" type="text/css" rel="stylesheet" /></head> <body> <form name="form1" method="post" action="./Abstract.aspx?idEvent=+ReilfAfaYU%3d" id="form1"> <div> <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTEzMjY3MzQ0Mw9kFgICAw9kFgICAQ8PFgIeBFRleHQF3u8GPGRpdiBjbGFzcz0iY29udGVudCI+DQogICAgICAgIDxoMSBjbGFzcz0idGl0bGUiPk5DVEEgMjAxMSBBYnN0cmFjdHM8L2gxPg0KICAgICAgICA8ZGl2IGNsYXNzPSJtZW51Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhcGVyVHlwZXMiPg0KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNBcmVhMEZ1bGxQYXBlcnMiIGNsYXNzPSJtZW51T3B0aW9uIj5GdWxsIFBhcGVyczwvYT4NCiAgICAgICAgICAgICAgICA8YSBocmVmPSIjQXJlYTBTaG9ydFBhcGVycyIgY2xhc3M9Im1lbnVPcHRpb24iPlNob3J0IFBhcGVyczwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHNwYW4gaWQ9IkFyZWEwRnVsbFBhcGVycyIgY2xhc3M9InBhcGVyVHlwZSI+RnVsbCBQYXBlcnM8L3NwYW4+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij4zMTwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+TkVVUkFMIE5FVFdPUktTIENPTVBVVElORyBUSEUgRFVOR0VBTiBTRU1BTlRJQ1MgT0YgQVJHVU1FTlRBVElPTjwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPllvc2hpYWtpIEdvdG8sIFRha2VzaGkgSGFnaXdhcmEgYW5kIEhhamltZSBTYXdhbXVyYTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+QXJndW1lbnRhdGlvbiBpcyBhIGxlYWRpbmcgcHJpbmNpcGxlIGZvdW5kYXRpb25hbGx5IGFuZCBmdW5jdGlvbmFsbHkgZm9yIGFnZW50LW9yaWVudGVkIGNvbXB1dGluZyB3aGVyZSByZWFzb25pbmcgYWNjb21wYW5pZWQgYnkgY29tbXVuaWNhdGlvbiBwbGF5cyBhcyBlc3NlbnRpYWwgcm9sZSBpbiBhZ2VudCBpbnRlcmFjdGlvbi4gSW4gdGhlIHdvcmsgb2YgKE1ha2lndWNoaSBhbmQgU2F3YW11cmEsIDIwMDdhKSAoTWFraWd1Y2hpIGFuZCBTYXdhbXVyYSwgMjAwN2IpLCB0aGV5IGNvbnN0cnVjdGVkIGEgc2ltcGxlIGJ1dCB2ZXJzYXRpbGUgbmV1cmFsIG5ldHdvcmsgZm9yIHRoZSBncm91bmRlZCBzZW1hbnRpY3MgKHRoZSBsZWFzdCBmaXhlZCBwb2ludCBzZW1hbnRpY3MpIGluIHRoZSBEdW5n4oCZcyBhYnN0cmFjdCBhcmd1bWVudGF0aW9uIGZyYW1ld29yayAoRHVuZywgMTk5NSkuIFRoaXMgcGFwZXIgZnVydGhlciBkZXZlbG9wIGl0cyB0aGVvcnkgc28gdGhhdCBpdCBjYW4gZGVjaWRlIHdoaWNoIGFyZ3VtZW50YXRpb24gc2VtYW50aWNzIChhZG1pc3NpYmxlLCBzdGFibGUsIGNvbXBsZXRlIHNlbWFudGljcykgYSBnaXZlbiBzZXQgb2YgYXJndW1lbnRzIGZhbGxzIGludG8uIEluIGRvaW5nIHNvLCB3ZSBjb25zdHJ1Y3QgYSBtb3JlIHNpbXBsZSBidXQgdmVyc2F0aWxlIG5ldXJhbCBuZXR3b3JrIHRoYXQgY2FuIGNvbXB1dGUgYWxsIGV4dGVuc2lvbnMgb2YgdGhlIGFyZ3VtZW50YXRpb24gc2VtYW50aWNzLiBUaGUgcmVzdWx0IGxlYWRzIHRvIGEgbmV1cmFsLXN5bWJvbGljIHN5c3RlbSBmb3IgYXJndW1lbnRhdGlvbi48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjU2Ni8zNjU2Ni5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjM5PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5FUElMRVBUSUMgRUxFQ1RST0VOQ0VQSEFMT0dSQU0gU0lHTkFMIENMQVNTSUZJQ0FUSU9OIEJBU0VEIE9OIFNQQVJTRSBSRVBSRVNFTlRBVElPTjwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPkppbmcgV2FuZyBhbmQgUGluZyBHdW88L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPkVwaWxlcHN5IHNlaXp1cmUgZGV0ZWN0aW9uIGluIEVsZWN0cm9lbmNlcGhhbG9ncmFtIChFRUcpIGlzIGEgbWFqb3IgaXNzdWUgaW4gdGhlIGRpYWdub3NpcyBvZiBlcGlsZXBzeSBhbmQgaXQgY2FuIGJlIGNvbnNpZGVyZWQgYXMgYSBjbGFzc2lmaWNhdGlvbiBwcm9ibGVtLiBBY2NvcmRpbmcgdG8gdGhlIHBhcnRpY3VsYXIgcHJvcGVydHkgb2YgRUVHLCBhIG5vdmVsIG1ldGhvZCBiYXNlZCBvbiBzcGFyc2UgcmVwcmVzZW50YXRpb24gaXMgcHJvcG9zZWQgZm9yIGVwaWxlcHN5IGRldGVjdGlvbiBpbiB0aGlzIHBhcGVyLiBDbGFzc2lmaWNhdGlvbiBhY2N1cmFjeSwgcm9idXN0bmVzcyBvbiBub2lzeSBkYXRhIGFuZCBwYXJhbWV0ZXJzICh0aGUgc2l6ZSBvZiBkaWN0aW9uYXJ5IGFuZCB0aGUgbnVtYmVyIG9mIGZlYXR1cmVzKSBvZiBwcm9wb3NlZCBtZXRob2QgYXJlIHRlc3RlZCBhbmQgYW5hbHlzZWQgb24gdGhlIHB1YmxpYyBhdmFpbGFibGUgZGF0YS4gVGhlIHByb3Bvc2VkIG1ldGhvZCBjYW4gb2J0YWluIHRoZSBoaWdoZXN0IGNsYXNzaWZpY2F0aW9uIGFjY3VyYWN5IGFtb25nIHRoZSBkaXNjdXNzZWQgbWV0aG9kcyB3aGVuIHRoZSBzdWl0YWJsZSBwYXJhbWV0ZXJzIGFyZSBzZXQsIGFuZCB0aGUgcHJvcG9zZWQgbWV0aG9kIGJhc2VkIG9uIHNwYXJzZSByZXByZXNlbnRhdGlvbnMgZm9yIGNsYXNzaWZpY2F0aW9uIGlzIHJvYnVzdCB0byBub2lzZS4gVGhpcyBpcyBjb25zaXN0ZW50IHdpdGggdGhlIHRoZW9yeSB0aGF0IHNwYXJzZSByZXByZXNlbnRhdGlvbnMgY2FuIGNhcHR1cmUgdGhlIGluaGVyZW50IHN0cnVjdHVyZSBvZiBzaWduYWwuIEZ1cnRoZXJtb3JlLCBpdCBpcyBzaG93biBieSBleHBlcmltZW50cyB0aGF0IHRoZSBvcHRpbWFsIHNlbGVjdGlvbiBvZiB0aGUgcGFyYW1ldGVycyBpcyBjcml0aWNhbCB0byB0aGUgcGVyZm9ybWFuY2Ugb2YgZXBpbGVwc3kgZGV0ZWN0aW9uLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2NjcxLzM2NjcxLnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+NDk8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPklORElWSURVQUxMWSBBTkQgQ09MTEVDVElWRUxZIFRSRUFURUQgTkVVUk9OUyBBTkQgSVRTIEFQUExJQ0FUSU9OIFRPIFNPTTwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPlJ5b3Rhcm8gS2FtaW11cmE8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPkluIHRoaXMgcGFwZXIsIHdlIHByb3Bvc2UgYSBuZXcgdHlwZSBvZiBpbmZvcm1hdGlvbi10aGVvcmV0aWMgbWV0aG9kIHRvIGludGVyYWN0IGluZGl2aWR1YWxseSB0cmVhdGVkIG5ldXJvbnMgd2l0aCBjb2xsZWN0aXZlbHkgdHJlYXRlZCBuZXVyb25zLiBUaGUgaW50ZXJhY3Rpb24gaXMgZGV0ZXJtaW5lZCBieSB0aGUgaW50ZXJhY3Rpb24gcGFyYW1ldGVyIGEuIEFzIHRoZSBwYXJhbWV0ZXIgYSBpcyBpbmNyZWFzZWQsIHRoZSBlZmZlY3Qgb2YgY29sbGVjdGl2ZW5lc3MgaXMgbGFyZ2VyLiBPbiB0aGUgb3RoZXIgaGFuZCwgd2hlbiB0aGUgcGFyYW1ldGVyIGEgaXMgc21hbGxlciwgdGhlIGVmZmVjdCBvZiBpbmRpdmlkdWFsaXR5IGJlY29tZXMgZG9taW5hbnQuIFdlIGFwcGxpZWQgdGhpcyBtZXRob2QgdG8gdGhlIHNlbGYtb3JnYW5pemluZyBtYXBzIGluIHdoaWNoIG11Y2ggYXR0ZW50aW9uIGhhcyBiZWVuIHBhaWQgdG8gdGhlIGNvbGxlY3RpdmVuZXNzIG9mIG5ldXJvbnMuIFRoaXMgYmlhc2VkIGF0dGVudGlvbiBoYXMsIGluIG91ciB2aWV3LCBzaG93biBkaWZmaWN1bHR5IGluIGludGVycHJldGluZyBmaW5hbCBTT00ga25vd2xlZGdlLiBXZSBjb25kdWN0ZWQgYW4gcHJlbGltaW5hcnkgZXhwZXJpbWVudCBpbiB3aGljaCB0aGUgSW9ub3NwaGVyZSBkYXRhIGZyb20gdGhlIG1hY2hpbmUgbGVhcm5pbmcgZGF0YWJhc2Ugd2FzIGFuYWx5emVkLiBFeHBlcmltZW50YWwgcmVzdWx0cyBjb25maXJtZWQgdGhhdCBpbXByb3ZlZCBwZXJmb3JtYW5jZSBjb3VsZCBiZSBvYnRhaW5lZCBieSBjb250cm9sbGluZyB0aGUgaW50ZXJhY3Rpb24gb2YgaW5kaXZpZHVhbGl0eSB3aXRoIGNvbGxlY3RpdmVuZXNzLiBJbiBwYXJ0aWN1bGFyLCB0aGUgdHJ1c3R3b3J0aGluZXNzIGFuZCBjb250aW51aXR5IGFyZSBncmFkdWFsbHkgaW5jcmVhc2VkIGJ5IG1ha2luZyB0aGUgcGFyYW1ldGVyIGEgbGFyZ2VyLiBJbiBhZGRpdGlvbiwgdGhlIGNsYXNzIGJvdW5kYXJpZXMgYmVjb21lIHNoYXJwZXIgYnkgdXNpbmcgdGhlIGludGVyYWN0aW9uLgo8L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjc3My8zNjc3My5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjUwPC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5ERVNJR04gT0YgUkVDVVJSRU5UIEZVWlpZIE5FVVJBTCBORVRXT1JLIEFORCBHRU5FUkFMIFJFR1JFU1NJT04gTkVVUkFMIE5FVFdPUksgQ09OVFJPTExFUiBGT1IgVFJBVkVMSU5HLVdBVkUgVUxUUkFTT05JQyBNT1RPUjwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPlRpZW4tQ2hpIENoZW4sIFRzYWktSml1biBSZW4gYW5kIFlpLVdlaSBMb3U8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoZSB0cmF2ZWxpbmctd2F2ZSB1bHRyYXNvbmljIG1vdG9yIChUV1VTTSkgaGFzIHNpZ25pZmljYW50IGZlYXR1cmVzIHN1Y2ggYXMgaGlnaCBob2xkaW5nIHRvcnF1ZSBhdCBsb3cgc3BlZWQgcmFuZ2UsIGhpZ2ggcHJlY2lzaW9uLCBmYXN0IGR5bmFtaWNzLCBzaW1wbGUgc3RydWN0dXJlLCBubyBlbGVjdHJvbWFnbmV0aWMgaW50ZXJmZXJlbmNlLiBUaGUgVFdVU00gaGFzIGJlZW4gdXNlZCBpbiBtYW55IHByYWN0aWNhbCBhcmVhcyBzdWNoIGFzIGluZHVzdHJpYWwsIG1lZGljYWwsIHJvYm90aWMsIGFuZCBhdXRvbW90aXZlIGFwcGxpY2F0aW9ucy4gSG93ZXZlciwgdGhlIGR5bmFtaWMgbW9kZWwgb2YgdGhlIFRXVVNNIG1vdG9yIGhhcyB0aGUgbm9ubGluZWFyIGNoYXJhY3RlcmlzdGljIGFuZCBkZWFkLXpvbmUgcHJvYmxlbSB3aGljaCB2YXJpZXMgd2l0aCBtYW55IGRyaXZpbmcgY29uZGl0aW9ucy4gVGhpcyBwYXBlciBwcmVzZW50cyBhIG5vdmVsIGNvbnRyb2wgc2NoZW1lLCByZWN1cnJlbnQgZnV6enkgbmV1cmFsIG5ldHdvcmsgKFJGTk4pIGFuZCBnZW5lcmFsIHJlZ3Jlc3Npb24gbmV1cmFsIG5ldHdvcmsgKEdSTk4pIGNvbnRyb2xsZXIsIGZvciBhIFRXVVNNIGNvbnRyb2wuIFRoZSBSRk5OIHByb3ZpZGVzIGEgcmVhbC10aW1lIGNvbnRyb2wgc3VjaCB0aGF0IHRoZSBUV1VTTSBvdXRwdXQgY2FuIHRyYWNrIHRoZSByZWZlcmVuY2UgY29tbWFuZC4gVGhlIGJhY2stcHJvcGFnYXRpb24gYWxnb3JpdGhtIGlzIGFwcGxpZWQgaW4gdGhlIFJGTk4gdG8gYXV0b21hdGljYWxseSBhZGp1c3QgdGhlIHBhcmFtZXRlcnMgb24tbGluZS4gVGhlIGFkYXB0aXZlIGxhd3Mgb2YgdGhlIFJGTk4gYXJlIGRlcml2ZWQgYnkgTHlhcHVub3YgdGhlb3JlbSBzdWNoIHRoYXQgdGhlIHN0YWJpbGl0eSBvZiB0aGUgc3lzdGVtIGNhbiBiZSBhYnNvbHV0ZS4gVGhlIEdSTk4gY29udHJvbGxlciBpcyBhcHBlbmRlZCB0byB0aGUgUkZOTiBjb250cm9sbGVyIHRvIGNvbXBlbnNhdGUgdGhlIGRlYWQtem9uZSBvZiB0aGUgVFdVU00gc3lzdGVtIHVzaW5nIGEgcHJlZGVmaW5lZCBzZXQuIFRoZSBleHBlcmltZW50YWwgcmVzdWx0cyBhcmUgcHJvdmlkZWQgdG8gZGVtb25zdHJhdGUgdGhlIGVmZmVjdGl2ZW5lc3Mgb2YgdGhlIHByb3Bvc2VkIGNvbnRyb2xsZXIuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY3NzgvMzY3NzgucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij42NjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+RlVOQ1RJT05BTCBORVRXT1JLIElOIE5BVklHQVRJT04gU0FURUxMSVRFIENMT0NLIEVSUk9SIFBSRURJQ1RJT04gLSBBIE5vdmVsIEFwcGxpY2F0aW9uPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+WWluZyBXYW5nLCBCbyBYdSBhbmQgWHVoYWkgWWFuZzwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+SW4gb3JkZXIgdG8gZGVzY3JpYmUgdGhlIGNoYXJhY3RlcmlzdGljcyBvZiBuYXZpZ2F0aW9uIHNhdGVsbGl0ZSBjbG9jayBlcnJvciBiZXR0ZXIgYW5kIGltcHJvdmUgbmF2aWdhdGlvbiBzYXRlbGxpdGUgY2xvY2sgZXJyb3IgcHJlZGljdGlvbiBhY2N1cmFjeSwgYSBzYXRlbGxpdGUgY2xvY2sgcHJlZGljdGlvbiBtZXRob2QgYmFzZWQgb24gZnVuY3Rpb25hbCBuZXR3b3JrIGlzIHByb3Bvc2VkIGluIHRoaXMgcGFwZXIuIFRoZSBtZXRob2QgYWRkZWQgZGVsYXkgdmFyaWFibGVzIHRvIHRoZSB0cmFkaXRpb25hbCBmdW5jdGlvbmFsIG5ldHdvcmsgd2hpY2ggY2FuIHJlZmxlY3QgdGhlIGR5bmFtaWNhbCBjaGFyYWN0ZXJpc3RpY3Mgb2YgbmF2aWdhdGlvbiBzYXRlbGxpdGUgY2xvY2sgZXJyb3IgYmV0dGVyIHRoYW4gdGhlIHRyYWRpdGlvbmFsIG1ldGhvZCB3aXRob3V0IGRlbGF5IHZhcmlhYmxlcy4gVGhlIEdQUyBzYXRlbGxpdGVzIGFyZSB0YWtlbiBmb3IgZXhhbXBsZTsgc2ltdWxhdGlvbiByZXN1bHRzIHNob3cgdGhhdCB0aGUgcHJlZGljdGlvbiBhY2N1cmFjeSBvZiB0aGUgcHJvcG9zZWQgbWV0aG9kIGlzIGJldHRlciB0aGFuIHRob3NlIG9mIHF1YWRyYXRpYyBwb2x5bm9taWFsLCBxdWFkcmF0aWMgcG9seW5vbWlhbCB3aXRoIHBlcmlvZGljIHRlcm0sIEFSSU1BIGFuZCB0aGUgZ3JleSBtZXRob2RzLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2ODAxLzM2ODAxLnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+NzA8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPk5FVVJPRlVaWlkgTUlOLU1BWCBORVRXT1JLUyBJTVBMRU1FTlRBVElPTiBPTiBGUEdBPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+QWxlc3NhbmRybyBDaW50aSBhbmQgQW50b25lbGxvIFJpenppPC9oND48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkFic3RyYWN0OjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij5NYW55IGluZHVzdHJpYWwgYXBwbGljYXRpb25zIGNvbmNlcm5pbmcgcGF0dGVybiByZWNvZ25pdGlvbiB0ZWNobmlxdWVzIG9mdGVuIGRlbWFuZCB0byBkZXZlbG9wIHN1aXRlZCBsb3cgY29zdCBlbWJlZGRlZCBzeXN0ZW1zIGluIGNoYXJnZSBvZiBwZXJmb3JtaW5nIGNvbXBsZXggY2xhc3NpZmljYXRpb24gdGFza3MgaW4gcmVhbCB0aW1lLiBUbyB0aGlzIGFpbSBpdCBpcyBwb3NzaWJsZSB0byByZWx5IG9uIEZQR0EgZm9yIGRlc2lnbmluZyBlZmZlY3RpdmUgYW5kIGxvdyBjb3N0IHNvbHV0aW9ucy4gQW1vbmcgbmV1cm9mdXp6eSBjbGFzc2lmaWNhdGlvbiBtb2RlbHMsIE1pbi1NYXggbmV0d29ya3MgY29uc3RpdHV0ZXMgYW4gaW50ZXJlc3RpbmcgdG9vbCwgZXNwZWNpYWxseSB3aGVuIHRyYWluZWQgYnkgY29uc3RydWN0aXZlLCByb2J1c3QgYW5kIGF1dG9tYXRpYyBhbGdvcml0aG1zLCBzdWNoIGFzIEFSQyBhbmQgUEFSQy4gSW4gdGhpcyBwYXBlciB3ZSBwcm9wb3NlIGEgcGFyYWxsZWwgaW1wbGVtZW50YXRpb24gb2YgYSBNaW4tTWF4IGNsYXNzaWZpZXIgb24gRlBHQSwgZGVzaWduZWQgaW4gb3JkZXIgdG8gZmluZCB0aGUgYmVzdCBjb21wcm9taXNlIGJldHdlZW4gbW9kZWwgbGF0ZW5jeSBhbmQgcmVzb3VyY2VzIG5lZWRlZCBvbiB0aGUgRlBHQS4gV2Ugc2hvdyB0aGF0IGJ5IHJlYXJyYW5naW5nIHRoZSBlcXVhdGlvbnMgZGVmaW5pbmcgdGhlIGFkb3B0ZWQgbWVtYmVyc2hpcCBmdW5jdGlvbiBmb3IgdGhlIGhpZGRlbiBsYXllciBuZXVyb25zLCBpdCBpcyBwb3NzaWJsZSB0byBzdWJzdGFudGlhbGx5IHJlZHVjZSB0aGUgbnVtYmVyIG9mIGxvZ2ljIGVsZW1lbnRzIG5lZWRlZCwgd2l0aG91dCBpbmNyZWFzaW5nIHRoZSBtb2RlbCBsYXRlbmN5LCBpLmUuIHdpdGhvdXQgYW55IG5lZWQgdG8gbG93ZXIgdGhlIGNsYXNzaWZpZXIgd29ya2luZyBmcmVxdWVuY3kuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY4MDcvMzY4MDcucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij43MTwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+QSBNQVRIRU1BVElDQUwgTU9ERUwgT0YgQSBSRVRJTkEgR0FOR0xJT04gQ0VMTOKAmSBSRVNQT05TRSBUTyBDT05UUkFTVCBFREdFUzwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPkh1aSBXZWksIFl1YW4gUmVuIGFuZCBTaHVhbmcgV3U8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPkNvbnRyYXN0IGVkZ2VzIGFyZSBpbXBvcnRhbnQgY29tcG9uZW50cyB0aGF0IGNvbnN0aXR1dGUgYSB2aXN1YWwgc2NlbmUgaW4gdGhlIGV5ZXMuIFRoaXMgcGFwZXIgbWF0aGVtYXRpY2FsbHkgbW9kZWxzIHRoZSByZWNlcHRpdmUgZmllbGQgKFJGKSBvZiBhIHJldGluYSBnYW5nbGlvbiBjZWxsIChHQykgYW5kIGludmVzdGlnYXRlcyBob3cgYSBHQyByZXNwb25kcyB0byBhIGNvbnRyYXN0IGVkZ2Ugc3RpbXVsYXRpbmcgaXRzIFJGLiBCYXNlZCBvbiBmaW5kaW5ncyBvbiB0aGUgcmVzcG9uc2UgcHJvcGVydGllcyBvZiBHQ3MgYW5kIGNvbXBhdGlibGUgYXNzdW1wdGlvbnMsIHRoZSBjbGFzc2ljYWwgRGlmZmVyZW5jZSBvZiBHYXVzc2lhbnMgbW9kZWwgaXMgc2ltcGxpZmllZCBpbnRvIHRoZSBtdWx0aXBsaWNhdGlvbiBvZiB0aGUgY29udHJhc3QgYW5kIHRoZSBub3JtYWxpemVkIHJlc3BvbnNlIGZ1bmN0aW9uIHdpdGggcmVzcGVjdCB0byB0aGUgcmVsYXRpdmUgcG9zaXRpb24gb2YgZWRnZSBhbmQgdGhlIGNlbnRlci9zdXJyb3VuZCByYXRpbyBvZiB0aGUgUkYuIFRoZSByZXNwb25zZSBmdW5jdGlvbiBpbmRpY2F0ZXMgdGhhdCB0aGUgZmlyaW5nIGFjdGl2aXR5IG9mIGEgR0MgbWF5IGJlIGRldGVybWluZWQgYnkgdGhlIGNlbnRlci9zdXJyZW5kIHJhdGlvIHJhdGhlciB0aGFuIHRoZSBhYnNvbHV0ZSBzY2FsZXMgb2YgdGhlIHR3byBhcmVhcy4gVGhlIHJlc3VsdHMgb2YgbnVtZXJpYyBzaW11bGF0aW9ucyB0dXJuIG91dCB0byBiZSBjb25zaXN0ZW50IHdpdGggcGh5c2lvbG9naWNhbCBkYXRhLiBPdXIgbW9kZWwgYWxzbyBwYXJ0aWFsbHkgYWNjb3VudHMgZm9yIHRoZSBjb250cmFzdCBzZW5zaXRpdml0eSBvZiBhIEdDIGFuZCB0aGUgaW52YXJpYW5jZSBvZiB2aXN1YWwgcGVyY2VwdGlvbiB0byBjb250cmFzdC48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjc2PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5PUFRJTUlaRUQgSElEREVOIE1BUktPViBNT0RFTCBGT1IgQ0xBU1NJRklDQVRJT04gT0YgTU9UT1IgSU1BR0VSWSBFRUcgU0lHTkFMUzwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPkt3YW5nLUV1biBLbyBhbmQgS3dlZS1CbyBTaW08L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPkEgbW90b3IgaW1hZ2VyeSByZWxhdGVkIGVsZWN0cm9lbmNlcGhhbG9ncmFtIChFRUcpIGNsYXNzaWZpY2F0aW9uIHRlY2huaXF1ZSB0aHJvdWdoIHRoZSBIaWRkZW4gTWFya292IE1vZGVsIChITU0pIGlzIHByZXNlbnRlZCBmb3IgYnJhaW4gY29tcHV0ZXIgaW50ZXJhY3Rpb24gKEJDSSkgYXBwbGljYXRpb25zLiBXZSBkZXNjcmliZSBhIG1ldGhvZCBmb3IgY2xhc3NpZmljYXRpb24gb2YgRUVHIHNpZ25hbHMgdXNpbmcgb3B0aW1pemVkIEhNTSBhbmQgdGhlIHByb3Bvc2VkIG1ldGhvZCB3YXMgZm9jdXMgb24gdGhlIG9wdGltaXphdGlvbiBwcm9jZXNzIGJhc2VkIG9uIEhhcm1vbnkgU2VhcmNoIGFsZ29yaXRobS4gQnkgdXNpbmcgdGhlIHJhdyBFRUcgc2lnbmFscywgRUVHIGZlYXR1cmVzIG9idGFpbmVkIGFzIHRoZSB3YXZlbGV0IGNvZWZmaWNpZW50cyBmZWF0dXJlIHZlY3RvcnMgYmV0d2VlbiB0aGUgb3B0aW1hbCBjaGFubmVscyBieSB1c2luZyBkaXNjcmV0ZSB3YXZlbGV0IHRyYW5zZm9ybSBhcHByb2FjaC4gSW4gb3JkZXIgdG8gb3B0aW1pemUgdGhlIGNsYXNzaWZpZXIsIGZpcnN0bHksIEJhdW0tV2VsY2ggYWxnb3JpdGhtIGlzIGFwcGxpZWQgdG8gcGFyYW1ldGVyIGxlYXJuaW5nIG9mIEhNTS4gSW4gdGhpcyBjYXNlLCBoYXJtb255IHNlYXJjaCBhbGdvcml0aG0gKEhTQSkgaXMgc3VmZmljaWVudGx5IGFkYXB0YWJsZSB0byBhbGxvdyBpbmNvcnBvcmF0aW9uIG9mIG90aGVyIHRlY2huaXF1ZSwgc3VjaCBhcyBCYXVtLVdlbGNoIGFsZ29yaXRobS4gSW4gb3JkZXIgdG8gcHJvdmUgdGhlIHBlcmZvcm1hbmNlIG9mIHRoZSBwcm9wb3NlZCB0ZWNobmlxdWUsIHRocmVlIGNsYXNzIG1vdG9yIGltYWdlcnkgKGxlZnQgaGFuZCwgcmlnaHQgaGFuZCwgZm9vdCkgRUVHIHNpZ25hbHMgd2VyZSB1c2VkIGFzIGlucHV0cyBvZiB0aGUgb3B0aW1pemVkIEhNTSBjbGFzc2lmaWVyLiBUaGUgZXhwZXJpbWVudGFsIHJlc3VsdHMgY29uZmlybWVkIHRoYXQgdGhlIHByb3Bvc2VkIG1ldGhvZCBoYXMgcG90ZW50aWFsIGluIGNsYXNzaWZ5aW5nIHRoZSBtb3RvciBpbWFnZXJ5IEVFRyBzaWduYWxzLjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+ODc8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPlNFTUktU1VQRVJWSVNFRCBLLVdBWSBTUEVDVFJBTCBDTFVTVEVSSU5HIFVTSU5HIFBBSVJXSVNFIENPTlNUUkFJTlRTPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+R3VpbGxhdW1lIFdhY3F1ZXQsIFBpZXJyZS1BbGV4YW5kcmUgSCYjMjMzO2JlcnQsICYjMjAxO21pbGllIENhaWxsYXVsdCBQb2lzc29uIGFuZCBEZW5pcyBIYW1hZDwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+SW4gdGhpcyBwYXBlciwgd2UgcHJvcG9zZSBhIHNlbWktc3VwZXJ2aXNlZCBzcGVjdHJhbCBjbHVzdGVyaW5nIG1ldGhvZCBhYmxlIHRvIGludGVncmF0ZSBzb21lIGxpbWl0ZWQgc3VwZXJ2aXNvcnkgaW5mb3JtYXRpb24uIFRoaXMgcHJpb3Iga25vd2xlZGdlIGNvbnNpc3RzIG9mIHBhaXJ3aXNlIGNvbnN0cmFpbnRzIHdoaWNoIGluZGljYXRlIHdoZXRoZXIgYSBwYWlyIG9mIG9iamVjdHMgYmVsb25ncyB0byBhIHNhbWUgY2x1c3RlciAoTXVzdC1MaW5rIGNvbnN0cmFpbnRzKSBvciBub3QgKENhbm5vdC1MaW5rIGNvbnN0cmFpbnRzKS4gVGhlIHNwZWN0cmFsIGNsdXN0ZXJpbmcgdGhlbiBhaW1zIGF0IG9wdGltaXppbmcgYSBjb3N0IGZ1bmN0aW9uIGJ1aWx0IGFzIGEgY2xhc3NpY2FsIE11bHRpcGxlIE5vcm1hbGl6ZWQgQ3V0IG1lYXN1cmUsIG1vZGlmaWVkIGluIG9yZGVyIHRvIHBlbmFsaXplIHRoZSBub24tcmVzcGVjdCBvZiB0aGVzZSBjb25zdHJhaW50cy4gV2Ugc2hvdyB0aGUgcmVsZXZhbmNlIG9mIHRoZSBwcm9wb3NlZCBtZXRob2Qgd2l0aCBhbiBpbGx1c3RyYXRpdmUgZGF0YXNldCBhbmQgc29tZSBVQ0kgYmVuY2htYXJrcywgZm9yIHdoaWNoIHR3by1jbGFzcyBhbmQgbXVsdGktY2xhc3MgcHJvYmxlbXMgYXJlIGRlYWx0IHdpdGguIEluIGFsbCBleGFtcGxlcywgYSBjb21wYXJpc29uIHdpdGggb3RoZXIgc2VtaS1zdXBlcnZpc2VkIGNsdXN0ZXJpbmcgYWxnb3JpdGhtcyB1c2luZyBwYWlyd2lzZSBjb25zdHJhaW50cyBpcyBwcm9wb3NlZC48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjgyNS8zNjgyNS5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjEwNDwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+REVDRU5UUkFMSVpFRCBORVVSQUwgQkFDS1NURVBQSU5HIENPTlRST0wgRk9SIEFOIElORFVTVFJJQUwgUEExMC03Q0UgUk9CT1QgQVJNPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+Ui4gR2FyY2lhIEhlcm5hbmRleiwgRS4gTi4gU2FuY2hleiwgTS4gQS4gTGxhbWEgYW5kIEouIEEuIFJ1ei1IZXJuYW5kZXo8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoaXMgcGFwZXIgcHJlc2VudHMgYSBkaXNjcmV0ZS10aW1lIGRlY2VudHJhbGl6ZWQgY29udHJvbCBzdHJhdGVneSBmb3IgdHJhamVjdG9yeSB0cmFja2luZyBvZiBhIHNldmVuIGRlZ3JlZXMgb2YgZnJlZWRvbSAoRE9GKSByb2JvdCBhcm0uIEEgaGlnaCBvcmRlciBuZXVyYWwgbmV0d29yayAoSE9OTikgaXMgdXNlZCB0byBhcHByb3hpbWF0ZSBhIGRlY2VudHJhbGl6ZWQgY29udHJvbCBsYXcgZGVzaWduZWQgYnkgdGhlIGJhY2tzdGVwcGluZyB0ZWNobmlxdWUgYXMgYXBwbGllZCB0byBhIGJsb2NrIHN0cmljdCBmZWVkYmFjayBmb3JtIChCU0ZGKS4gVGhlIG5ldXJhbCBuZXR3b3JrIGxlYXJuaW5nIGlzIHBlcmZvcm1lZCBvbmxpbmUgYnkgZXh0ZW5kZWQgS2FsbWFuIGZpbHRlci4gVGhlIGxvY2FsIGNvbnRyb2xsZXIgZm9yIGVhY2ggam9pbnQgdXNlIG9ubHkgbG9jYWwgYW5ndWxhciBwb3NpdGlvbiBhbmQgdmVsb2NpdHkgbWVhc3VyZW1lbnRzLiBUaGUgZmVhc2liaWxpdHkgb2YgdGhlIHByb3Bvc2VkIHNjaGVtZSBpcyBpbGx1c3RyYXRlZCB2aWEgc2ltdWxhdGlvbi48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjg0My8zNjg0My5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHNwYW4gaWQ9IkFyZWEwU2hvcnRQYXBlcnMiIGNsYXNzPSJwYXBlclR5cGUiPlNob3J0IFBhcGVyczwvc3Bhbj4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjE3PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5DUklUSUNBTCBCT1VOREFSWSBWRUNUT1IgQ09OQ0VQVCBJTiBORUFSRVNUIE5FSUdIQk9SIENMQVNTSUZJRVJTIFVTSU5HIEstTUVBTlMgQ0VOVEVSUyBGT1IgRUZGSUNJRU5UIFRFTVBMQVRFIFJFRFVDVElPTjwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPldlbmp1biBYaWEgYW5kIFRhZGFzaGkgU2hpYmF0YTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+RGVhbGluZyB3aXRoIGxhcmdlIGRhdGEgc2V0cywgdGhlIGNvbXB1dGF0aW9uYWwgY29zdCBhbmQgcmVzb3VyY2UgZGVtYW5kcyB1c2luZyB0aGUgbmVhcmVzdCBuZWlnaGJvciAoTk4pIGNsYXNzaWZpZXIgY2FuIGJlIHByb2hpYml0aXZlLiBBaW1pbmcgYXQgZWZmaWNpZW50IHRlbXBsYXRlIGNvbmRlbnNhdGlvbiwgdGhpcyBwYXBlciBwcm9wb3NlcyBhIHRlbXBsYXRlIHJlLWR1Y3Rpb24gYWxnb3JpdGhtIGZvciBOTiBjbGFzc2lmaWVyIGJ5IGludHJvZHVjaW5nIHRoZSBjb25jZXB0IG9mIGNyaXRpY2FsIGJvdW5kYXJ5IHZlY3RvcnMgaW4gY29uanVuY3Rpb24gd2l0aCBLLW1lYW5zIGNlbnRlcnMuICBJbml0aWFsbHkgSy1tZWFucyBjZW50ZXJzIGFyZSB1c2VkIGFzIHN1YnN0aXR1dGlvbiBmb3IgdGhlIGVudGlyZSB0ZW1wbGF0ZSBzZXQuIFRoZW4sIGluIG9yZGVyIHRvIGVuaGFuY2UgdGhlIGNsYXNzaWZpY2F0aW9uIHBlcmZvcm1hbmNlLCBjcml0aWNhbCBib3VuZGFyeSB2ZWN0b3JzIGFyZSBzZWxlY3RlZCBhY2NvcmRpbmcgdG8gYSBuZXdseSBwcm9wb3NlZCB0cmFpbmluZyBhbGdvcml0aG0gd2hpY2ggY29tcGxldGVzIHdpdGggb25seSBzaW5nbGUgaXRlcmF0aW9uLiBDT0lMLTIwIGFuZCBDT0lMLTEwMCBkYXRhYmFzZXMgd2VyZSB1dGlsaXplZCBmb3IgZXZhbHVhdGluZyB0aGUgcGVyZm9ybWFuY2Ugb2YgaW1hZ2UgY2F0ZWdvcml6YXRpb24gaW4gd2hpY2ggdGhlIGJpby1pbnNwaXJlZCBkaXJlY3Rpb25hbC1lZGdlLWJhc2VkIGltYWdlIGZlYXR1cmUgcmVwcmVzZW50YXRpb24gKFN1enVraSBhbmQgU2hpYmF0YS4gMjAwNCkgd2FzIGVtcGxveWVkLiBVQ0kgaXJpcyBhbmQgVUNJIExhbmRzYXQgZGF0YWJhc2VzIHdlcmUgYWxzbyB1dGlsaXplZCB0byBldmFsdWF0ZSB0aGUgc3lzdGVtIGZvciBvdGhlciBjbGFzc2lmaWNhdGlvbiB0YXNrcyB1c2luZyBudW1lcmljYWwtdmFsdWVkIHZlY3RvcnMuIEV4cGVyaW1lbnRhbCByZXN1bHRzIHNob3cgdGhhdCBieSB1c2luZyB0aGUgcmVkdWNlZCB0ZW1wbGF0ZSBzZXRzLCB0aGUgcHJvcG9zZWQgYWxnb3JpdGhtIHNob3dzIGEgc3VwZXJpb3IgcGVyZm9ybWFuY2UgdG8gTk4gY2xhc3NpZmllciB1c2luZyBhbGwgc2FtcGxlcywgYW5kIGNvbXBhcmFibGUgdG8gU3VwcG9ydCBWZWN0b3IgTWFjaGluZXMgdXNpbmcgR2F1c3NpYW4ga2VybmVsIHdoaWNoIGFyZSBjb21wdXRhdGlvbmFsbHkgbW9yZSBleHBlbnNpdmUuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY0MjYvMzY0MjYucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij4xODwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+S0lORVRJQyBNT1JQSE9HRU5FU0lTIE9GIEEgTVVMVElMQVlFUiBQRVJDRVBUUk9OPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+QnJ1bm8gQXBvbGxvbmksIFNpbW9uZSBCYXNzaXMgYW5kIExvcmVuem8gVmFsZXJpbzwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+V2UgaW50cm9kdWNlIGEgbW9ycGhvZ2VuZXNpcyBwYXJhZGlnbSBmb3IgYSBuZXVyYWwgbmV0d29yayB3aGVyZSBuZXVyb25zIGFyZSBhbGxvd2VkIHRvIG1vdmUgYXV0b25vbW91c2x5IGluIGEgdG9wb2xvZ2ljYWwgc3BhY2UgdG8gcmVhY2ggc3VpdGFibGUgcmVjaXByb2NhbCBwb3NpdGlvbnMgdW5kZXIgYW4gaW5mb3JtYXRpdmUgcGVyc3BlY3RpdmUuIFRvIHRoaXMgZW5kLCBhIG5ldXJvbiBpcyBhdHRyYWN0ZWQgYnkgdGhlIG1hdGVzIHdoaWNoIGFyZSBtb3N0IGluZm9ybWF0aXZlIGFuZCByZXBlbGxlZCBieSB0aG9zZSB3aGljaCBhcmUgbW9zdCBzaW1pbGFyIHRvIGl0LiBXZSBtYW5hZ2UgdGhlIG5ldXJvbiBtb3Rpb24gd2l0aCBhIE5ld3RvbmlhbiBkeW5hbWljcyBpbiBhIHN1YnNwYWNlIG9mIGEgZnJhbWV3b3JrIHdoZXJlIHRvcG9sb2dpY2FsIGNvb3JkaW5hdGVzIG1hdGNoIHdpdGggdGhvc2UgcmVja29uaW5nIHRoZSBuZXVyb24gY29ubmVjdGlvbiB3ZWlnaHRzLiBBcyBhIHJlc3VsdCwgd2UgaGF2ZSBhIHN5bmVyZ2lzdGljIHBsYXN0aWNpdHkgb2YgdGhlIG5ldHdvcmsgd2hpY2ggaXMgcnVsZWQgYnkgYW4gZXh0ZW5kZWQgTGFncmFuZ2lhbiB3aGVyZSBwaHlzaWNzIGNvbXBvbmVudHMgbWVyZ2Ugd2l0aCB0aGUgY29tbW9uIGVycm9yIHRlcm1zLiBXaXRoIHRoZSBmb2N1cyBvbiBhIG11bHRpbGF5ZXIgcGVyY2VwdHJvbiwgdGhpcyBwbGFzdGljaXR5IGlzIG9wZXJhdGVkIGJ5IGFuIGV4dGVuc2lvbiBvZiB0aGUgc3RhbmRhcmQgYmFjay1wcm9wYWdhdGlvbiBhbGdvcml0aG0gd2hpY2ggcHJvdmVzIHJvYnVzdCBldmVuIGluIHRoZSBjYXNlIG9mIGRlZXAgYXJjaGl0ZWN0dXJlcy4gV2UgdXNlIHR3byBjbGFzc2ljIGJlbmNobWFya3MgdG8gZ2FpbiBzb21lIGluc2lnaHRzIG9uIHRoZSBtb3JwaG9sb2d5IGFuZCBwbGFzdGljaXR5IHdlIGFyZSBwcm9wb3NpbmcuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY0MjgvMzY0MjgucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij4yNjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+TEVBUk5JTkcgTUVUSE9EIFVUSUxJWklORyBTSU5HVUxBUiBSRUdJT04gT0YgTVVMVElMQVlFUiBQRVJDRVBUUk9OPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+UnlvaGVpIE5ha2FubywgU2VpeWEgU2F0b2ggYW5kIFRha2F5dWtpIE9od2FraTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+SW4gYSBzZWFyY2ggc3BhY2Ugb2YgbXVsdGlsYXllciBwZXJjZXB0cm9uIGhhdmluZyBKIGhpZGRlbiB1bml0cywgTUxQKEopLCB0aGVyZSBleGlzdHMgYSBzaW5ndWxhciBmbGF0IHJlZ2lvbiBjcmVhdGVkIGJ5IHRoZSBwcm9qZWN0aW9uIG9mIHRoZSBvcHRpbWFsIHNvbHV0aW9uIG9mIE1MUChKLTEpLiBTaW5jZSBzdWNoIGEgc2luZ3VsYXIgcmVnaW9uIGNhdXNlcyBzZXJpb3VzIHNsb3dkb3duIGZvciBsZWFybmluZyBtZXRob2RzLCBhIG1ldGhvZCBmb3IgYXZvaWRpbmcgdGhlIHJlZ2lvbiBoYXMgYmVlbiBhc3BpcmVkLiBIb3dldmVyLCBzdWNoIGF2b2lkaW5nIGRvZXMgbm90IGd1YXJhbnRlZSB0aGUgcXVhbGl0eSBvZiB0aGUgZmluYWwgc29sdXRpb24uIFRoaXMgcGFwZXIgcHJvcG9zZXMgYSBuZXcgbGVhcm5pbmcgbWV0aG9kIHdoaWNoIGRvZXMgbm90IGF2b2lkIGJ1dCBtYWtlcyBnb29kIHVzZSBvZiBzaW5ndWxhciByZWdpb25zIHRvIGZpbmQgYSBzb2x1dGlvbiBnb29kIGVub3VnaCBmb3IgTUxQKEopLiBUaGUgcG90ZW50aWFsIG9mIHRoZSBtZXRob2QgaXMgc2hvd24gYnkgb3VyIGV4cGVyaW1lbnRzIHVzaW5nIGFydGlmaWNpYWwgZGF0YSBzZXRzLCBYT1IgcHJvYmxlbSwgYW5kIGEgcmVhbCBkYXRhIHNldC48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjUyNS8zNjUyNS5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjQxPC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5NVUxUSS1SRUdVTEFSSVpBVElPTiBQQVJBTUVURVJTIEVTVElNQVRJT04gRk9SIEdBVVNTSUFOIE1JWFRVUkUgQ0xBU1NJRklFUiBCQVNFRCBPTiBNREwgUFJJTkNJUExFPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+WGl1bGluZyBaaG91LCBQaW5nIEd1byBhbmQgQy4gTC4gUGhpbGlwIENoZW48L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlJlZ3VsYXJpemF0aW9uIGlzIGEgc29sdXRpb24gdG8gc29sdmUgdGhlIHByb2JsZW0gb2YgdW5zdGFibGUgZXN0aW1hdGlvbiBvZiBjb3ZhcmlhbmNlIG1hdHJpeCB3aXRoIGEgc21hbGwgc2FtcGxlIHNldCBpbiBHYXVzc2lhbiBjbGFzc2lmaWVyLiBBbmQgbXVsdGktcmVndWxhcml6YXRpb24gcGFyYW1ldGVycyBlc3RpbWF0aW9uIGlzIG1vcmUgZGlmZmljdWx0IHRoYW4gc2luZ2xlIHBhcmFtZXRlciBlc3RpbWF0aW9uLiBJbiB0aGlzIHBhcGVyLCBLTElNX0wgY292YXJpYW5jZSBtYXRyaXggZXN0aW1hdGlvbiBpcyBkZXJpdmVkIHRoZW9yZXRpY2FsbHkgYmFzZWQgb24gTURMIChtaW5pbXVtIGRlc2NyaXB0aW9uIGxlbmd0aCkgcHJpbmNpcGxlIGZvciB0aGUgc21hbGwgc2FtcGxlIHByb2JsZW0gd2l0aCBoaWdoIGRpbWVuc2lvbi4gS0xJTV9MIGlzIGEgZ2VuZXJhbGl6YXRpb24gb2YgS0xJTSAoS3VsbGJhY2stTGVpYmxlciBpbmZvcm1hdGlvbiBtZWFzdXJlKSB3aGljaCBjb25zaWRlcnMgdGhlIGxvY2FsIGRpZmZlcmVuY2UgaW4gZWFjaCBkaW1lbnNpb24uIFVuZGVyIHRoZSBmcmFtZXdvcmsgb2YgTURMIHByaW5jaXBsZSwgbXVsdGktcmVndWxhcml6YXRpb24gcGFyYW1ldGVycyBhcmUgc2VsZWN0ZWQgYnkgdGhlIGNyaXRlcmlvbiBvZiBtaW5pbWl6YXRpb24gdGhlIEtMIGRpdmVyZ2VuY2UgYW5kIGVzdGltYXRlZCBzaW1wbHkgYW5kIGRpcmVjdGx5IGJ5IHBvaW50IGVzdGltYXRpb24gd2hpY2ggaXMgYXBwcm94aW1hdGVkIGJ5IHR3by1vcmRlciBUYXlsb3IgZXhwYW5zaW9uLiBJdCBjb3N0cyBsZXNzIGNvbXB1dGF0aW9uIHRpbWUgdG8gZXN0aW1hdGUgdGhlIG11bHRpLXJlZ3VsYXJpemF0aW9uIHBhcmFtZXRlcnMgaW4gS0xJTV9MIHRoYW4gaW4gUkRBIChyZWd1bGFyaXplZCBkaXNjcmltaW5hbnQgYW5hbHlzaXMpIGFuZCBpbiBMT09DIChsZWF2ZS1vbmUtb3V0IGNvdmFyaWFuY2UgbWF0cml4IGVzdGltYXRlKSB3aGVyZSBjcm9zcyB2YWxpZGF0aW9uIHRlY2huaXF1ZSBpcyBhZG9wdGVkLiBBbmQgaGlnaGVyIGNsYXNzaWZpY2F0aW9uIGFjY3VyYWN5IGlzIGFjaGlldmVkIGJ5IHRoZSBwcm9wb3NlZCBLTElNX0wgZXN0aW1hdG9yIGluIGV4cGVyaW1lbnQuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY2OTMvMzY2OTMucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij40MjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+SU1QUk9WRUQgUkVWSVNJT04gT0YgUkFOS0lORyBGVU5DVElPTlMgRk9SIFRIRSBHRU5FUkFMSVpBVElPTiBPRiBCRUxJRUYgSU4gVEhFIENPTlRFWFQgT0YgVU5PQlNFUlZFRCBWQVJJQUJMRVM8L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5LbGF1cyBIJiMyMjg7bWluZyBhbmQgR2FicmllbGUgUGV0ZXJzPC9oND48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkFic3RyYWN0OjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij5UbyBlbmFibGUgYSByZWluZm9yY2VtZW50IGxlYXJuaW5nIGFnZW50IHRvIGFjcXVpcmUgc3ltYm9saWNhbCBrbm93bGVkZ2UsIHdlIGF1Z21lbnQgaXQgd2l0aCBhIGhpZ2gtbGV2ZWwga25vd2xlZGdlIHJlcHJlc2VudGF0aW9uLiBUaGlzIHJlcHJlc2VudGF0aW9uIGNvbnNpc3RzIG9mIG9yZGluYWwgY29uZGl0aW9uYWwgZnVuY3Rpb25zIChPQ0YpIHdoaWNoIGFsbG93IGl0IHRvIHJhbmsgd29ybGQgbW9kZWxzLiBCeSB0aGlzIG1lYW5zIHRoZSBhZ2VudCBpcyBlbmFibGVkIHRvIGNvbXBsZW1lbnQgdGhlIHNlbGYtb3JnYW5pemluZyBjYXBhYmlsaXRpZXMgb2YgdGhlIGxvdy1sZXZlbCByZWluZm9yY2VtZW50IGxlYXJuaW5nIHN1Yi1zeXN0ZW0gYnkgcmVhc29uaW5nIGNhcGFiaWxpdGllcyBvZiBhIGhpZ2gtbGV2ZWwgbGVhcm5pbmcgY29tcG9uZW50LiBXZSBicmllZmx5IHN1bW1hcml6ZSB0aGUgc3RhdGUtb2YtdGhlLWFydCBtZXRob2QgaG93IG5ldyBpbmZvcm1hdGlvbiBpcyBpbmNsdWRlZCBpbnRvIHRoZSBPQ0YuIFRvIGltcHJvdmUgdGhlIGVtZXJnZW5jZSBvZiBwbGF1c2libGUgYmVoYXZpb3IsIHdlIHRoZW4gaW50cm9kdWNlIGEgbW9kaWZpY2F0aW9uIG9mIHRoaXMgbWV0aG9kLiBUaGUgdmlhYmlsaXR5IG9mIHRoaXMgbW9kaWZpY2F0aW9uIGlzIGV4YW1pbmVkIGZpcnN0LCBmb3IgdGhlIGluY2x1c2lvbiBvZiBjb25kaXRpb25hbCBpbmZvcm1hdGlvbiB3aXRoIG5lZ2F0ZWQgY29uc2VxdWVudHMgYW5kIHNlY29uZCwgZm9yIHRoZSBnZW5lcmFsaXphdGlvbiBvZiBiZWxpZWYgaW4gdGhlIGNvbnRleHQgb2YgdW5vYnNlcnZlZCB2YXJpYWJsZXMuIEJlc2lkZXMgcHJvdmlkaW5nIGEgdGhlb3JldGljYWwganVzdGlmaWNhdGlvbiBmb3IgdGhpcyBtb2RpZmljYXRpb24sIHdlIGFsc28gc2hvdyB0aGUgYWR2YW50YWdlcyBvZiBvdXIgYXBwcm9hY2ggaW4gY29tcGFyaXNvbiB0byB0aGUgc3RhdGUtb2YtdGhlLWFydCBtZXRob2Qgb2YgcmV2aXNpb24gaW4gYSByZWluZm9yY2VtZW50IGxlYXJuaW5nIGFwcGxpY2F0aW9uLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2Njk1LzM2Njk1LnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+NDM8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPkhBTUlMVE9OSUFOIE5FVVJBTCBORVRXT1JLLUJBU0VEIE9SVEhPR09OQUwgRklMVEVSUyAtIEEgQmFzaXMgZm9yIEFydGlmaWNpYWwgSW50ZWxsaWdlbmNlPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+V2llc2xhdyBDaXRrbyBhbmQgV2llc2xhdyBTaWVua288L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoZSBwdXJwb3NlIG9mIHRoZSBwYXBlciBpcyB0byBwcmVzZW50IGhvdyB2ZXJ5IGxhcmdlIHNjYWxlIG5ldHdvcmtzIGZvciBsZWFybmluZyBjYW4gIGJlIGRlc2lnbmVkIGJ5IHVzaW5nIEhhbWlsdG9uaWFuIE5ldXJhbCBOZXR3b3JrLWJhc2VkIG9ydGhvZ29uYWwgZmlsdGVycyBhbmQgaW4gcGFydGljdWxhciBieSB1c2luZyBvY3RvbmlvbmljIG1vZHVsZXMuIFdlIGNsYWltIGhlcmUgdGhhdCBvY3RvbmlvbmljIG1vZHVsZXMgYXJlIGJhc2ljIGJ1aWxkaW5nIGJsb2NrcyB0byBpbXBsZW1lbnQgQUkgY29tcGF0aWJsZSBwcm9jZXNzb3JzLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2NzE1LzM2NzE1LnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+NDc8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPkFERFJFU1NJTkcgVEhFIEhBUkRXQVJFIFJFU09VUkNFIFJFUVVJUkVNRU5UUyBPRiBORVRXT1JLLU9OLUNISVAgQkFTRUQgTkVVUkFMIEFSQ0hJVEVDVFVSRVM8L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5TYW5kZWVwIFBhbmRlLCBGZWFyZ2hhbCBNb3JnYW4sIFNlYW11cyBDb3dsZXksIEJyaWFuIE1jIEdpbmxleSwgSmltIEhhcmtpbiwgU25haWRlciBDYXJyaWxsbyBhbmQgTGlhbSBNYyBEYWlkPC9oND48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkFic3RyYWN0OjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij5OZXR3b3JrIG9uIENoaXAgKE5vQykgYmFzZWQgU3Bpa2luZyBOZXVyYWwgTmV0d29yayAoU05OKSBoYXJkd2FyZSBhcmNoaXRlY3R1cmVzIGhhdmUgYmVlbiBwcm9wb3NlZCBhcyBlbWJlZGRlZCBjb21wdXRpbmcgc3lzdGVtcyBmb3IgZGF0YS9wYXR0ZXJuIGNsYXNzaWZpY2F0aW9uIGFuZCBjb250cm9sIGFwcGxpY2F0aW9ucy4gQXMgdGhlIE5vQyBjb21tdW5pY2F0aW9uIGluZnJhc3RydWN0dXJlIGlzIGZ1bGx5IHJlY29uZmlndXJhYmxlLCBzY2FsaW5nIG9mIHRoZXNlIHN5c3RlbXMgcmVxdWlyZXMgbGFyZ2UgYW1vdW50cyBvZiBkaXN0cmlidXRlZCBvbi1jaGlwIG1lbW9yeSBmb3Igc3RvcmFnZSBvZiB0aGUgU05OIHN5bmFwdGljIGNvbm5lY3Rpdml0eSAodG9wb2xvZ3kpIGluZm9ybWF0aW9uLiBUaGlzIGxhcmdlIG1lbW9yeSByZXF1aXJlbWVudCBwb3NlcyBhIHNlcmlvdXMgYm90dGxlbmVjayBmb3IgY29tcGFjdCBlbWJlZGRlZCBoYXJkd2FyZSBTTk4gaW1wbGVtZW50YXRpb25zLiBUaGUgZ29hbCBvZiB0aGlzIHdvcmsgaXMgdG8gcmVkdWNlIHRoZSB0b3BvbG9neSBtZW1vcnkgcmVxdWlyZW1lbnQgb2YgZW1iZWRkZWQgaGFyZHdhcmUgU05OcyBieSBleHBsb3JpbmcgdGhlIGNvbWJpbmF0aW9uIG9mIGZpeGVkIGFuZCBjb25maWd1cmFibGUgaW50ZXJjb25uZWN0IHRocm91Z2ggdGhlIHVzZSBvZiBmaXhlZCBzaXplZCBjbHVzdGVycyBvZiBuZXVyb25zIGFuZCBOb0MgY29tbXVuaWNhdGlvbiBpbmZyYXN0cnVjdHVyZS4gVGhpcyBwYXBlciBwcm9wb3NlcyBhIG5vdmVsIHR3by1sYXllcmVkIFNOTiBzdHJ1Y3R1cmUgYXMgYSBuZXVyYWwgY29tcHV0aW5nIGVsZW1lbnQgd2l0aGluIGVhY2ggbmV1cmFsIHRpbGUuIFRoaXMgYXJjaGl0ZWN0dXJhbCBhcnJhbmdlbWVudCByZWR1Y2VzIHRoZSBTTk4gdG9wb2xvZ3kgbWVtb3J5IHJlcXVpcmVtZW50IGJ5IDUwJSwgY29tcGFyZWQgdG8gYSBub24tY2x1c3RlcmVkIChzaW5nbGUgbmV1cm9uIHBlciBuZXVyYWwgdGlsZSkgU05OIGltcGxlbWVudGF0aW9uLiBUaGUgcGFwZXIgYWxzbyBwcm9wb3NlcyBzaGFyaW5nIG9mIHRoZSBTTk4gdG9wb2xvZ3kgbWVtb3J5IGJldHdlZW4gbmV1cmFsIGNsdXN0ZXIgb3V0cHV0cyB3aXRoaW4gZWFjaCBuZXVyYWwgdGlsZSwgZm9yIHV0aWxpc2luZyB0aGUgb24tY2hpcCBtZW1vcnkgZWZmaWNpZW50bHkuIFRoZSBwYXBlciBwcmVzZW50cyBoYXJkd2FyZSByZXNvdXJjZSByZXF1aXJlbWVudHMgb2YgdGhlIHByb3Bvc2VkIGFyY2hpdGVjdHVyZSBieSBtYXBwaW5nIFNOTiB0b3BvbG9naWVzIHdpdGggcmFuZG9tIGFuZCBpcnJlZ3VsYXIgY29ubmVjdGl2aXR5IHBhdHRlcm5zICh0eXBpY2FsIG9mIHByYWN0aWNhbCBTTk5zKS4gVGhlIGFyY2hpdGVjdHVyYWwgc2NoZW1lIG9mIHNoYXJpbmcgdGhlIFNOTiB0b3BvbG9neSBtZW1vcnkgYmV0d2VlbiBuZXVyYWwgY2x1c3RlciBvdXRwdXRzLCByZXN1bHRzIGluIGVmZmljaWVudCB1dGlsaXNhdGlvbiBvZiB0aGUgU05OIHRvcG9sb2d5IG1lbW9yeSBhbmQgaGVscHMgYWNjb21tb2RhdGUgbGFyZ2VyIFNOTiBhcHBsaWNhdGlvbnMgb24gdGhlIHByb3Bvc2VkIGFyY2hpdGVjdHVyZS4gUmVzdWx0cyBpbGx1c3RyYXRlIHVwIHRvIGEgNjYlIHJlZHVjdGlvbiBpbiB0aGUgcmVxdWlyZWQgc2lsaWNvbiBhcmVhIG9mIHRoZSBwcm9wb3NlZCBjbHVzdGVyZWQgbmV1cmFsIHRpbGUgU05OIGFyY2hpdGVjdHVyZSB1c2luZyBzaGFyZWQgdG9wb2xvZ3kgbWVtb3J5IGNvbXBhcmVkIHRvIHRoZSBub24tY2x1c3RlcmVkLCBub24tc2hhcmVkIG1lbW9yeSBhcmNoaXRlY3R1cmUuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY3NjYvMzY3NjYucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij40ODwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+U1NMTEU6IFNFTUktU1VQRVJWSVNFRCBMT0NBTExZIExJTkVBUiBFTUJFRERJTkcgQkFTRUQgTE9DQUxJWkFUSU9OIE1FVEhPRCBGT1IgSU5ET09SIFdJUkVMRVNTIE5FVFdPUktTPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+Vmlub2QgS3VtYXIgSmFpbiwgU2hhc2hpa2FsYSBUYXBhc3dpIGFuZCBBbnVwYW0gU2h1a2xhPC9oND48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkFic3RyYWN0OjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij5EdWUgdG8gdmFzdCBhcHBsaWNhdGlvbnMgb2YgbW9iaWxlIGRldmljZXMgYW5kIGxvY2FsIGFyZWEgd2lyZWxlc3MgbmV0d29ya3MsIGxvY2F0aW9uIGJhc2VkIHNlcnZpY2VzIGFyZSBwb3B1bGFyaXplZCBhbmQgbG9jYXRpb24gaW5mb3JtYXRpb24gdXNlIGhhcyBiZWNvbWUgaW1wb3J0YW50IC4gVGhlIHBhcGVyIHByb3Bvc2VzIGEgbWV0aG9kIGJhc2VkIG9uIFNlbWlzdXBlcnZpc2VkIExvY2FsbHkgTGluZWFyIEVtYmVkZGluZyBmb3IgbG9jYWxpemF0aW9uIGluIGluZG9vciB3aXJlbGVzcyBuZXR3b3Jrcy4gUHJldmlvdXMgbWV0aG9kcyBmb3IgbG9jYXRpb24gZXN0aW1hdGlvbiBpbiBpbmRvb3Igd2lyZWxlc3MgbmV0d29ya3MgcmVxdWlyZSBhIGxhcmdlIGFtb3VudCBvZiBsYWJlbGVkIGRhdGEgZm9yIGxlYXJuaW5nIHRoZSByYWRpbyBtYXAuIEhvd2V2ZXIgbGFiZWxlZCBpbnN0YW5jZXMgYXJlIG9mdGVuIGRpZmZpY3VsdCwgZXhwZW5zaXZlLCBvciB0aW1lIGNvbnN1bWluZyB0byBvYnRhaW4sIGFzIHRoZXkgcmVxdWlyZSBncmVhdCBlZmZvcnRzLCBtZWFud2hpbGUgdW5sYWJlbGVkIGRhdGEgbWF5IGJlIHJlbGF0aXZlbHkgZWFzeSB0byBjb2xsZWN0LiBTbyB0aGUgdXNlIG9mIHNlbWktc3VwZXJ2aXNlZCBsZWFybmluZyBpcyBtb3JlIGZlYXNpYmxlLiBJbiB0aGUgZXhwZXJpbWVudCAxMDEgYWNjZXNzIHBvaW50cyAoQVBzKSBoYXZlIGJlZW4gZGVwbG95ZWQgc28gdGhlIFJlY2VpdmVkIFNpZ25hbCBTdHJlbmd0aCAoUlNTKSB2ZWN0b3IgcmVjZWl2ZWQgYnkgdGhlIG1vYmlsZSBzdGF0aW9uIGhhcyBsYXJnZSBkaW1lbnNpb25zIChpLmUuMTAxKS4gRmlyc3Qgd2UgaGF2ZSB1c2VkIExvY2FsbHkgTGluZWFyIEVtYmVkZGluZywgYSBkaW1lbnNpb25hbCByZWR1Y3Rpb24gdGVjaG5pcXVlIHRvIHJlZHVjZSB0aGUgZGltZW5zaW9ucyBvZiBkYXRhLCBhbmQgdGhlbiB3ZSBoYXZlIHVzZWQgc2VtaS1zdXBlcnZpc2VkIGxlYXJuaW5nIGFsZ29yaXRobSB0byBsZWFybiB0aGUgcmFkaW8gbWFwLiBUaGUgYWxnb3JpdGhtIHBlcmZvcm1zIG5vbmxpbmVhciBtYXBwaW5nIGJldHdlZW4gdGhlIHJlY2VpdmVkIHNpZ25hbCBzdHJlbmd0aHMgZnJvbSBuZWFyYnkgYWNjZXNzIHBvaW50cyBhbmQgdGhlIHVzZXLigJlzIGxvY2F0aW9uLiBJdCBpcyBzaG93biB0aGF0IHRoZSBwcm9wb3NlZCBzY2hlbWUgaXMgZWFzeSBpbiB0cmFpbmluZyBhbmQgaW1wbGVtZW50YXRpb24uIEV4cGVyaW1lbnRhbCByZXN1bHRzIGFyZSBwcmVzZW50ZWQgdG8gZGVtb25zdHJhdGUgdGhlIGZlYXNpYmlsaXR5IG9mIHRoZSBwcm9wb3NlZCBTU0xMRSBhbGdvcml0aG0uPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY3NjgvMzY3NjgucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij41MTwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+TU9ESUZJRUQgTE9DQUwgQklOQVJZIFBBVFRFUk4gKE1MQlApIEZPUiBST0JVU1QgRkFDRSBSRUNPR05JVElPTjwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPk1vaGFtbWFkIE1vaW51bCBJc2xhbSwgVmlqYXlhbiBLLiBBc2FyaSwgTW9oYW1tZWQgTmF6cnVsIElzbGFtIGFuZCBNb2hhbW1hZCBBLiBLYXJpbTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+VGhpcyBwYXBlciBwcmVzZW50cyBhbiBpbXByb3ZlbWVudCBvZiBMb2NhbCBCaW5hcnkgUGF0dGVybiAoTEJQKSBmb3Igcm9idXN0IGZhY2UgcmVwcmVzZW50YXRpb24gdW5kZXIgdmFyeWluZyBsaWdodGluZyBjb25kaXRpb25zLiAgT3JpZ2luYWwgTEJQIG9wZXJhdG9yIGNvbXBhcmVzIHBpeGVscyBpbiBhIGxvY2FsIG5laWdoYm91cmhvb2Qgd2l0aCB0aGUgY2VudHJlIHBpeGVsIGFuZCBjb252ZXJ0cyB0aGUgcmVzdWx0YW50IGJpbmFyeSBzdHJpbmcgdG8gOC1iaXQgaW50ZWdlciB2YWx1ZS4gU28sIGl0IGlzIGxlc3MgZWZmZWN0aXZlIHVuZGVyIGRpZmZpY3VsdCBsaWdodGluZyBjb25kaXRpb25zIHdoZXJlIHZhcmlhdGlvbiBiZXR3ZWVuIHBpeGVscyBpcyBuZWdsaWdpYmxlLiBPdXIgcHJvcG9zZWQgTUxCUCB1c2VzIHR3byBzdGFnZSBlbmNvZGluZyBwcm9jZWR1cmUgd2hpY2ggaXMgbW9yZSByb2J1c3QgaW4gZGV0ZWN0aW5nIHRoaXMgdmFyaWF0aW9uIGluIGEgbG9jYWwgcGF0Y2guIFRoZSBwZXJmb3JtYW5jZSBvZiB0aGUgcHJvcG9zZWQgbWV0aG9kIGlzIGNvbXBhcmVkIHdpdGggdGhlIGJhc2VsaW5lIExCUCB1bmRlciBkaWZmZXJlbnQgaWxsdW1pbmF0aW9uIGNvbmRpdGlvbnMuCjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2NzgwLzM2NzgwLnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+NTc8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPkFJUkNSQUZUIENMQVNTSUZJQ0FUSU9OIEFORCBOT0lTRSBNQVAgRVNUSU1BVElPTiBCQVNFRCBPTiBSRUFMLVRJTUUgTUVBU1VSRU1FTlRTIE9GIFRBS0UtT0ZGIE5PSVNFPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+THVpcyBQYXN0b3IgU2FuY2hleiBGZXJuYW5kZXosIEx1aXMgQS4gU2FuY2hleiBQZXJleiBhbmQgTWFyY28gQS4gTW9yZW5vIEliYXJyYTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+VGhpcyBwYXBlciBzdW1tYXJpemVzIGEgbmV3IG1ldGhvZG9sb2d5IGFib3V0IGFpcmNyYWZ0cyBpZGVudGlmaWNhdGlvbiBhbmQgdGhlIGdlbmVyYXRpb24gb2YgZXN0aW1hdGVkIG5vaXNlIG1hcCBiYXNlZCBvbiByZWFsIHRpbWUgbm9pc2UgbWVhc3VyZW1lbnQgZm9yIGVhY2ggdGFrZS1vZmYuIFRoZSBkYXRhIGFjcXVpc2l0aW9uIGlzIG1hZGUgYXQgNTAgS3MvcyBhbmQgMjQgYml0cywgZHVyaW5nIDI0IHNlY29uZHMgb2YgYWlyY3JhZnQgdGFrZS1vZmYuIFRoZSBhaXJjcmFmdCBpZGVudGlmaWNhdGlvbiBpcyBtYWRlIHRocm91Z2ggdHdvIHBhcmFsbGVsIG5ldXJhbCBuZXR3b3JrcyBjb21iaW5lZCB3aXRoIGEgd2VpZ2h0ZWQgYWRkaXRpb24uIEluIG9yZGVyIHRvIGdlbmVyYXRlIHRoZSBpbnB1dHMgdG8gdGhlIG5ldXJhbCBuZXR3b3JrcywgdGhlIGZlYXR1cmVzIHdlcmUgb2J0YWluZWQgZnJvbSB0aGUgYXV0by1yZWdyZXNzaXZlIChBUikgbW9kZWwgYW5kIHRoZSAxLzEyIG9jdGF2ZSBhbmFseXNpcy4gVGhpcyBzeXN0ZW0gaGFzIDEzIGNhdGVnb3JpZXMgb2YgYWlyY3JhZnRzIGFuZCBoYXMgYW4gaWRlbnRpZmljYXRpb24gbGV2ZWwgYWJvdmUgODQlIGluIHJlYWwgZW52aXJvbm1lbnRzLiAgTm9pc2Ugc2lnbmFscyBnZW5lcmF0ZWQgZHVyaW5nIGFpcmNyYWZ0IHRha2Utb2ZmIGFyZSBtZWFzdXJlZCBpbiBhIGZpeGVkIGxvY2F0aW9uIG9uIHRoZSBhaXJwb3J0IHJ1bndheSBlbmQgdXNpbmcgYSBsaW5lYXIgNC1taWNyb3Bob25lIGFycmF5LiBUaGUgbm9pc2UgbWFwIGlzIG1hZGUgZm9yIGVhY2ggdGFrZS1vZmYgYW5kIHByZXNlbnRzIGZvdXIgbGF5ZXJzIHJlbGF0ZWQgdG8gZm91ciB0aW1lIGludGVydmFscyBvZiB0YWtlLW9mZi4gRWFjaCB0aW1lIGludGVydmFsIGlzIHJlcHJlc2VudGVkIGJ5IGFuIGVxdWl2YWxlbnQgcG9pbnQgc291bmQgc291cmNlIGxvY2F0aW9uIGJhc2VkIG9uIGVzdGltYXRpb24gb2YgdGltZS1kaWZmZXJlbmNlLW9mLWFycml2YWwgKFRET0EpIG9mIHRoZSBhY291c3RpYyB3YXZlIG9mIGFpcmNyYWZ0IHRha2luZy1vZmYuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij42MjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+VFJBRElORyBGT1JFSUdOIENVUlJFTkNZIFVTSU5HIEFSVElGSUNJQUwgTkVVUkFMIE5FVFdPUksgU1RSQVRFR0lFUzwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPkJydWNlIFZhbnN0b25lIGFuZCBHYXZpbiBGaW5uaWU8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoZSBmb3JlaWduIGV4Y2hhbmdlIChGWCkgbWFya2V0cyByZXByZXNlbnQgYW4gZW5vcm1vdXMgb3Bwb3J0dW5pdHkgZm9yIHRyYWRlcnMuIFRoZXNlIG1hcmtldHMgaGF2ZSBodWdlIGxpcXVpZGl0eSwgdHJhZGUgMjQgaG91cnMgYSBkYXkgKGV4Y2VwdCB3ZWVrZW5kcyksIGFuZCBhbGxvdyB0aGUgdXNlIG9mIGxldmVyYWdlLiAgVGhpcyBwYXBlciB0YWtlcyBhIHNpbXBsZSBGWCB0cmFkaW5nIHN0cmF0ZWd5IGFuZCBzaG93cyBob3cgdG8gc3Vic3RhbnRpYWxseSBpbXByb3ZlIGl0LCB1c2luZyBhIG5ldXJhbCBuZXR3b3JrIG1ldGhvZG9sb2d5IG9yaWdpbmFsbHkgZGV2ZWxvcGVkIGJ5IFZhbnN0b25lICZhbXA7IEZpbm5pZSBmb3IgY3JlYXRpbmcgYW5kIGVuaGFuY2luZyBzdG9ja21hcmtldCB0cmFkaW5nIHN5c3RlbXMuIFRoaXMgcmVzdWx0IGRlbW9uc3RyYXRlcyB0aGUgaW1wb3J0YW50IHJvbGUgbmV1cmFsIG5ldHdvcmtzIGhhdmUgdG8gcGxheSB3aXRoaW4gY29tcGxleCBhbmQgbm9pc3kgZW52aXJvbm1lbnRzLCBzdWNoIGFzIHRoYXQgcHJvdmlkZWQgYnkgdGhlIGludHJhZGF5IEZYIG1hcmtldHMuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY3OTYvMzY3OTYucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij42NDwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+TEVBUk5JTkcgRlJPTSBCSU9GRUVEQkFDSyAtIFBhdGllbnQtc3BlY2lmaWMgR2FtZXMgZm9yIE5ldXJvbXVzY3VsYXIgUmVoYWJpbGl0YXRpb248L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5PdXJpZWwgQmFyemlsYXkgYW5kIEFsb24gV29sZjwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+UmVoYWJpbGl0YXRpb24gdGFza3MgYXJlIGdlbmVyYWxseSBzdWJqZWN0ZWQgdG8gdGhlIHBoeXNpb3RoZXJhcGlzdOKAmXMgcXVhbGl0YXRpdmUgaW50ZXJwcmV0YXRpb24gb2YgdGhlIHBhdGllbnTigJlzIHBhdGhvbG9neSBhbmQgbmVlZHMuIE1vdGl2YXRlZCBieSB0aGUgcmVjZW50bHkgaW5jcmVhc2luZyB1c2Ugb2YgdmlydHVhbCByZWFsaXR5IGluIHJlaGFiaWxpdGF0aW9uLCB3ZSBwcm9wb3NlIGEgbm92ZWwgYXBwcm9hY2ggZm9yIHRoZSBkZXNpZ24gb2YgdGhvc2UgYmlvbWVjaGFuaWNhbCB0YXNrcyBmb3IgYW4gaW1wcm92ZWQgcGF0aWVudC1zcGVjaWZpYyBhbmQgZW50ZXJ0YWluaW5nIHJlaGFiaWxpdGF0aW9uLiBEdXJpbmcgdHJhaW5pbmcsIHRoZSBzdWJqZWN0IHdlYXJzIDNEIGdvZ2dsZXMgaW4gd2hpY2ggdmlydHVhbCB0YXNrcyBhcmUgZGlzcGxheWVkIHRvIGhpbS4gSGlzIGtpbmVtYXRpY3MgYW5kIG11c2NsZXMgYWN0aXZhdGlvbiBhcmUgdHJhY2tlZCBpbiByZWFsIHRpbWUgYW5kIGFuIGludmVyc2UgbW9kZWwgaXMgZXN0aW1hdGVkIGJ5IGFydGlmaWNpYWwgbmV1cmFsIG5ldHdvcmtzLiBUaGUgcmVzdWx0aW5nIGludmVyc2UgbW9kZWwgcHJvZHVjZXMgYSBwaHlzaWNhbCBleGVyY2lzZSBhY2NvcmRpbmcgdG8gdGhlIG9ic2VydmVkIGFiaWxpdGllcyBvZiB0aGUgc3ViamVjdCBhbmQgdG8gdGhlIGV4cGVjdGVkIHBlcmZvcm1hbmNlIGRpY3RhdGVkIGJ5IHRoZSBwaHlzaW90aGVyYXBpc3QuIFRoZSBzeXN0ZW0gb2ZmZXJzIHNldmVyYWwgYWR2YW50YWdlcyB0byBib3RoIHRoZSBwYXRpZW50IGFuZCB0aGUgcGh5c2lvdGhlcmFwaXN0OiB0aGUgdGFza3MgY2FuIGJlIHByZXNlbnRlZCBpbiB0aGUgZm9ybSBvZiBpbnRlcmFjdGl2ZSBwZXJzb25hbGl6ZWQgM0QgZ2FtZXMgd2l0aCBhdWdtZW50ZWQgZmVlZGJhY2ssIHN0aW11bGF0aW5nIHRoZSBwYXRpZW504oCZcyBtb3RpdmF0aW9uIGFuZCByZWR1Y2luZyB0aGUgbmVlZCBvZiBjb25zdGFudCBtb25pdG9yaW5nIGZyb20gdGhlIHRoZXJhcGlzdC4gQWRkaXRpb25hbGx5LCBvZmZsaW5lIHF1YW50aXRhdGl2ZSBkYXRhIGZyb20gZXZlcnkgdHJhaW5pbmcgc2Vzc2lvbiBjYW4gYmUgc3RvcmVkIGZvciBmdXJ0aGVyIGFuYWx5c2lzLiBUaGUgcmVzdWx0cyBvZiBvdXIgc3R1ZHkgb24gYXJtIG1vdmVtZW50cyBzdWdnZXN0IGFuIGltcHJvdmVtZW50IGluIHRoZSB0cmFpbmluZyBlZmZpY2llbmN5IGJ5IDEwJSBmb3IgdGhlIGJpY2VwcyBhbmQgYnkgMzIlIChwPTAuMDIpIGZvciB0aGUgdHJpY2Vwcy48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjc5OC8zNjc5OC5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjY1PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5TRU1JLVNVUEVSVklTRUQgRVZBTFVBVElPTiBPRiBDT05TVFJBSU5UIFNDT1JFUyBGT1IgRkVBVFVSRSBTRUxFQ1RJT048L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5NYXJpYW0gS2FsYWtlY2gsIFBoaWxpcHBlIEJpZWxhLCBEZW5pcyBIYW1hZCBhbmQgTHVkb3ZpYyBNYWNhaXJlPC9oND48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkFic3RyYWN0OjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij5SZWNlbnQgZmVhdHVyZSBjb25zdHJhaW50IHNjb3JlcywgdGhhdCBhbmFseXNlIG11c3QtbGluayBhbmQgY2Fubm90LWxpbmsgY29uc3RyYWludHMgYmV0d2VlbiBsZWFybmluZyBzYW1wbGVzLCByZWFjaCBnb29kIHBlcmZvcm1hbmNlcyBmb3Igc2VtaS1zdXBlcnZpc2VkIGZlYXR1cmUgc2VsZWN0aW9uLiBUaGUgcGVyZm9ybWFuY2UgZXZhbHVhdGlvbiBpcyBnZW5lcmFsbHkgYmFzZWQgb24gY2xhc3NpZmljYXRpb24gYWNjdXJhY3kgYW5kIGlzIHBlcmZvcm1lZCBpbiBhIHN1cGVydmlzZWQgbGVhcm5pbmcgY29udGV4dC4gSW4gdGhpcyBwYXBlciwgd2UgcHJvcG9zZSBhIHNlbWktc3VwZXJ2aXNlZCBwZXJmb3JtYW5jZSBldmFsdWF0aW9uIHByb2NlZHVyZSwgc28gdGhhdCBib3RoIGZlYXR1cmUgc2VsZWN0aW9uIGFuZCBjbGFzc2lmaWNhdGlvbiB0YWtlIGludG8gYWNjb3VudCB0aGUgY29uc3RyYWludHMgZ2l2ZW4gYnkgdGhlIHVzZXIuIEV4dGVuc2l2ZSBleHBlcmltZW50cyBvbiBiZW5jaG1hcmsgZGF0YXNldHMgYXJlIGNhcnJpZWQgb3V0IGluIHRoZSBsYXN0IHNlY3Rpb24uIFRoZXkgZGVtb25zdHJhdGUgdGhlIGVmZmVjdGl2ZW5lc3Mgb2YgZmVhdHVyZSBzZWxlY3Rpb24gYmFzZWQgb24gY29uc3RyYWludCBhbmFseXNpcy48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjgwMC8zNjgwMC5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjY3PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5PTi1DRU5URVIvT0ZGLVNVUlJPVU5EIE5FVVJBTCBORVRXT1JLIE1PREVMIEZPUiBPTEZBQ1RPUlkgQVRURU5USU9OPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+WnUgU29oLCBUb3NoaW8gVHN1amksIE5vYm9ydSBUYWtpZ3VjaGkgYW5kIEhpc2FvIE9odGFrZTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+T3VyIHJlc2VhcmNoIGdyb3VwIGhhcyBmb3VuZCBiZWhhdmlvcmFsIGV2aWRlbmNlIHRoYXQgYW4gYXR0ZW50aW9uIGZ1bmN0aW9uIGV4aXN0cyBpbiB0aGUgb2xmYWN0b3J5IHN5c3RlbSBzaW1pbGFybHkgdG8gaW4gdGhlIHZpc3VhbCBhbmQgYXVkaXRvcnkgc3lzdGVtcy4gSW4gdGhpcyBwYXBlciB3ZSBwcm9wb3NlIGEgbmV1cmFsIG5ldHdvcmsgbW9kZWwgdGhhdCBhY2NvdW50cyBmb3Igb2xmYWN0b3J5IGF0dGVudGlvbiBiYXNlZCBvbiBtYWNyb3Njb3BpYyBuZXVyYWwgY29ubmVjdGlvbnMuIFNwZWNpZmljYWxseSwgb24tY2VudGVyL29mZi1zdXJyb3VuZCBjb25uZWN0aW9ucyB3ZXJlIGFzc3VtZWQgdG8gYmUgaW52b2x2ZWQgaW4gdGhlIGF0dGVudGlvbiBwcm9jZXNzIGluIGFjY29yZGFuY2Ugd2l0aCBvdXIgaHlwb3RoZXNpcyBvZiBhbiBhdHRlbnRpb24gd2luZG93IHRoYXQgZXh0cmFjdHMgbG9jYWwgYWN0aXZpdHkuIFRoZSBtb2RlbCBlbXBsb3lzIGdsb21lcnVsYXIgYWN0aXZpdHkgcGF0dGVybnMgYXMgaXRzIGlucHV0LCBhbmQgY29tcGFyZXMgdGhlbSB3aXRoIHN0b3JlZCBwYXR0ZXJucyBmb2N1c2luZyBvbiB0aGVpciBsb2NhbCBhY3Rpdml0eS4gVGhlIG1vZGVsIGFsc28gY2FuIHNoaWZ0IGFuZCBjaGFuZ2UgdGhlIGF0dGVudGlvbiB3aW5kb3cgd2l0aCByZXNwZWN0IHRvIGxlYXJuaW5nLiBGcm9tIHRoZSBzaW11bGF0aW9uIHJlc3VsdHMsIHdlIGNvbmZpcm1lZCB0aGF0IHRoZSBtb2RlbCBjYW4gYWNjb3VudCBmb3IgdGhlIHJlc3VsdHMgb2YgYSBiZWhhdmlvcmFsIGV4cGVyaW1lbnQgb24gb2xmYWN0b3J5IGF0dGVudGlvbiBpbiBtaWNlLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2ODAzLzM2ODAzLnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+NzU8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPk5FSUdIQk9SSE9PRCBGVU5DVElPTiBERVNJR04gRk9SIEVNQkVERElORyBJTiBSRURVQ0VEIERJTUVOU0lPTjwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPkppdW4tV2VpIExpb3UgYW5kIENoZW5nLVl1YW4gTGlvdTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+TExFKExvY2FsIGxpbmVhciBlbWJlZGRpbmcpIGlzIGEgd2lkZWx5IHVzZWQgYXBwcm9hY2ggZm9yIGRpbWVuc2lvbiByZWR1Y3Rpb24uIFRoZSBuZWlnaGJvcmhvb2Qgc2VsZWN0aW9uIGlzIGFuIGltcG9ydGFudCBpc3N1ZSBmb3IgTExFLiBJbiB0aGlzIHBhcGVyLCB0aGUgZS1kaXN0YW5jZSBhcHByb2FjaCBhbmQgYSBzbGlnaHRseSBtb2RpZmllZCB2ZXJzaW9uIG9mIGstbm4gbWV0aG9kIGFyZSBpbnRyb2R1Y2VkLiBGb3IgZGlmZmVyZW50IHR5cGVzIG9mIGRhdGFzZXRzLCBkaWZmZXJlbnQgYXBwcm9hY2hlcyBhcmUgbmVlZGVkIGluIG9yZGVyIHRvIGVuam95IGhpZ2hlciBjaGFuY2UgdG8gb2J0YWluIGJldHRlciByZXByZXNlbnRhdGlvbi4gRm9yIHNvbWUgZGF0YXNldHMgd2l0aCBjb21wbGV4IHN0cnVjdHVyZSwgdGhlIHByb3Bvc2VkIMaQLWRpc3RhbmNlIGFwcHJvYWNoIGNhbiBvYnRhaW4gYmV0dGVyIHJlcHJlc2VudGF0aW9ucy4gRGlmZmVyZW50IG5laWdoYm9yaG9vZCBzZWxlY3Rpb24gYXBwcm9hY2hlcyB3aWxsIGJlIGNvbXBhcmVkIGJ5IGFwcGx5aW5nIHRoZW0gdG8gZGlmZmVyZW50IGtpbmRzIG9mIGRhdGFzZXRzLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2ODEyLzM2ODEyLnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+Nzc8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPk5FVVJBTCBQUk9DRVNTSU5HIE9GIExPTkcgTEFTVElORyBTRVFVRU5DRVMgT0YgVEVNUE9SQUwgQ09ERVMgLSBNb2RlbCBvZiBBcnRpZmljaWFsIE5ldXJhbCBOZXR3b3JrIGJhc2VkIG9uIGEgU3Bpa2UgVGltaW5nLWRlcGVuZGFudCBMZWFybmluZyBSdWxlPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+RGFsaXVzIEtydW5nbGV2aWNpdXM8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPkl0IGhhcyBiZWVuIGRlbW9uc3RyYXRlZCwgdGhhdCBzcGlrZS10aW1pbmctZGVwZW5kZW50IHBsYXN0aWNpdHkgKFNURFApIGxlYXJuaW5nIHJ1bGUgY2FuIGJlIGFwcGxpZWQgdG8gdHJhaW4gbmV1cm9uIHRvIGJlY29tZSBzZWxlY3RpdmUgdG8gYSBzcGF0aW90ZW1wb3JhbCBzcGlrZSBwYXR0ZXJuLiBJbiB0aGlzIHBhcGVyLCB3ZSBwcm9wb3NlIGEgbW9kZWwgb2YgbmV1cmFsIG5ldHdvcmsgdGhhdCBpcyBjYXBhYmxlIG9mIG1lbW9yaXppbmcgcHJvbG9uZ2VkIHNlcXVlbmNlcyBvZiBkaWZmZXJlbnQgc3Bpa2UgcGF0dGVybnMgYW5kIGxlYXJuIGFnZ3JlZ2F0ZWQgZGF0YSBpbiBhIGxhcmdlciB0ZW1wb3JhbCB3aW5kb3cuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY4MTQvMzY4MTQucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij44MDwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+REVWRUxPUElORyBDT01CSU5FRCBGT1JFQ0FTVElORyBNT0RFTFMgSU4gT0lMIElORFVTVFJZIC0gQSBDYXNlIFN0dWR5IGluIE9wZWMgT2lsIERlbWFuZDwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPlNleWVkIEhhbWlkIEtob2RhZGFkIEhvc3NlaW5pLCBBZGVsIEF6YXIsIEFsaSBSYWphYnphZGVoIEdoYXRhcmkgYW5kIEFyYXNoIEJhaHJhbW1pcnphZWU8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoZSBwdXJwb3NlIG9mIHRoaXMgcmVzZWFyY2ggaXMgdG8gc3R1ZHkgdGhlIGNvbWJpbmVkIGZvcmVjYXN0aW5nIG1ldGhvZHMgaW4gZW5lcmd5IHNlY3Rpb24uIFRoaXMgbWV0aG9kIGlzIGEgbmV3IGFwcHJvYWNoIHdoaWNoIGxlYWRzIHRvIGNvbnNpZGVyYWJsZSByZWR1Y3Rpb24gb2YgZXJyb3IgaW4gZm9yZWNhc3RpbmcgcmVzdWx0cy4gSW4gdGhpcyBzdHVkeSwgZm9yZWNhc3RpbmcgaGFzIGJlZW4gZG9uZSB0aHJvdWdoIHVzaW5nIGluZGl2aWR1YWwgbWV0aG9kcyAodGhlc2UgbWV0aG9kcyBjb25zaXN0IG9mIGV4cG9uZW50aWFsIHNtb290aGluZyBtZXRob2RzLCB0cmVuZCBhbmFseXNpcywgYm94LUplbmtpbnMsIGNhdXNhbCBhbmFseXNpcywgYW5kIG5ldXJhbCBuZXR3b3JrIG1vZGVscykgYW5kIGFsc28gY29tYmluaW5nIG1ldGhvZHMuIEluIG5leHQgc3RlcCwgdGhlIFJlc3VsdHMgb2YgdGhlc2UgaW5kaXZpZHVhbCBmb3JlY2FzdGluZyBtZXRob2RzIGhhdmUgYmVlbiBjb21iaW5lZCBhbmQgY29tcGFyZWQgd2l0aCBhcnRpZmljaWFsIG5ldXJhbCBuZXR3b3JrcywgYW5kIG11bHRpcGxlIHJlZ3Jlc3Npb24gbW9kZWxzLiBUaGUgZGF0YSB3ZSB1c2VkIGluIHRoaXMgc3R1ZHkgYXJlOiBkZXBlbmRlbnQgdmFyaWFibGU6IE9QRUMgb2lsIGRlbWFuZHMgZnJvbSAxOTYwIHRvIDIwMDUsIGFuZCBpbmRlcGVuZGVudCB2YXJpYWJsZXM6IG9pbCAgcHJpY2UsIEdEUCwgb3RoZXIgZW5lcmd5IGRlbWFuZHMsIHBvcHVsYXRpb24sIGFuZCBhZGRlZC12YWx1ZSBpbiBpbmR1c3RyeSAoaW4gT0VDRCBjb3VudHJpZXMuIENvbXB1dGVkIGluZGV4ZXMgb2YgZXJyb3JzIGFyZTogTVNFLCBNQVBFLCBhbmQgR0FQRSB3aGljaCBzaG93IGNvbnNpZGVyYWJsZSByZWR1Y3Rpb25zIGluIHRoZSBlcnJvcnMgb2YgZm9yZWNhc3Rpbmcgd2hlbiB1c2luZyBjb21iaW5pbmcgbW9kZWxzLiBUaGVyZWZvcmUsIGl0IGlzIHN1Z2dlc3RlZCB0aGF0IHRoZSBkZXNpZ25lZCBtb2RlbHMgY291bGQgYmUgYXBwbGllZCBmb3Igb2lsIGRlbWFuZCBmb3JlY2FzdGluZy48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjgxNy8zNjgxNy5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjgxPC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5JTVBPUlRBTkNFIE9GIElOUFVUIFBBUkFNRVRFUiBTRUxFQ1RJT04gRk9SIFNZTlRIRVRJQyBTVFJFQU1GTE9XIEdFTkVSQVRJT04gT0YgRElGRkVSRU5UIFRJTUUgU1RFUCBVU0lORyBBTk4gVEVDSE5JUVVFUzwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPk1heWEgUmFqbmFyYXluIFJheSBhbmQgQXJ1cCBLdW1hciBTYXJtYTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+U3RyZWFtZmxvdyB0aW1lIHNlcmllcyBpcyBnYWluaW5nIGltcG9ydGFuY2UgaW4gcGxhbm5pbmcsIG1hbmFnZW1lbnQgYW5kIG9wZXJhdGlvbiBvZiB3YXRlciByZXNvdXJjZXMgc3lzdGVtIGRheSBieSBkYXkuIEluIG9yZGVyIHRvIHBsYW4gYSBzeXN0ZW0gaW4gYW4gb3B0aW1hbCB3YXksIGVzcGVjaWFsbHkgd2hlbiBzdWZmaWNpZW50IGhpc3RvcmljYWwgZGF0YSBhcmUgbm90IGF2YWlsYWJsZSwgdGhlIG9ubHkgY2hvaWNlIGxlZnQgaXMgdG8gZ2VuZXJhdGUgc3ludGhldGljIHN0cmVhbWZsb3cuIEFydGlmaWNpYWwgTmV1cmFsIE5ldHdvcmsgKEFOTikgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IHVzZWQgaW4gdGhlIHBhc3QgZm9yIHN0cmVhbWZsb3cgZm9yZWNhc3RpbmcgYW5kIG1vbnRobHkgc3ludGhldGljIHN0cmVhbWZsb3cgZ2VuZXJhdGlvbi4gVGhlIGNhcGFiaWxpdHkgb2YgQU5OIHRvIGdlbmVyYXRlIHN5bnRoZXRpYyBzZXJpZXMgb2Ygcml2ZXIgZGlzY2hhcmdlIGF2ZXJhZ2VkIG92ZXIgZGlmZmVyZW50IHRpbWUgc3RlcHMgd2l0aCBsaW1pdGVkIGRhdGEgaGFzIGJlZW4gaW52ZXN0aWdhdGVkIGluIHRoZSBwcmVzZW50IHN0dWR5LiBXaGlsZSBhbiBBTk4gbW9kZWwgd2l0aCBjZXJ0YWluIGlucHV0IHBhcmFtZXRlcnMgY2FuIGdlbmVyYXRlIGEgbW9udGhseSBhdmVyYWdlZCBzdHJlYW1mbG93IHNlcmllcyBlZmZpY2llbnRseSwgaXQgZmFpbHMgdG8gZ2VuZXJhdGUgYSBzZXJpZXMgb2Ygc21hbGxlciB0aW1lIHN0ZXBzIHdpdGggdGhlIHNhbWUgYWNjdXJhY3kuIFRoZSBzY29wZSBvZiBpbXByb3ZpbmcgZWZmaWNpZW5jeSBvZiBBTk4gaW4gZ2VuZXJhdGluZyBzeW50aGV0aWMgc3RyZWFtZmxvdyBieSB1c2luZyBkaWZmZXJlbnQgY29tYmluYXRpb25zIG9mIGlucHV0IGRhdGEgaGFzIGJlZW4gYW5hbHl6ZWQuIFRoZSBkZXZlbG9wZWQgbW9kZWxzIGhhdmUgYmVlbiBhc3Nlc3NlZCB0aHJvdWdoIHRoZWlyIGFwcGxpY2F0aW9uIGluIHRoZSByaXZlciBTdWJhbnNpcmkgaW4gSW5kaWEuIEVmZmljaWVuY3kgb2YgdGhlIEFOTiBtb2RlbHMgaGFzIGJlZW4gZXZhbHVhdGVkIGJ5IGNvbXBhcmluZyBBTk4gZ2VuZXJhdGVkIHNlcmllcyB3aXRoIHRoZSBoaXN0b3JpY2FsIHNlcmllcyBhbmQgdGhlIHNlcmllcyBnZW5lcmF0ZWQgYnkgVGhvbWFzLUZpZXJpbmcgbW9kZWwgb24gdGhlIGJhc2lzIG9mIHRocmVlIHN0YXRpc3RpY2FsIHBhcmFtZXRlcnMtIHBlcmlvZGljYWwgbWVhbiwgcGVyaW9kaWNhbCBzdGFuZGFyZCBkZXZpYXRpb24gYW5kIHNrZXduZXNzIG9mIHRoZSBzZXJpZXMuIFRoZSByZXN1bHRzIHJldmVhbCB0aGF0IHRoZSBwZXJpb2RpY2FsIG1lYW4gb2YgdGhlIHNlcmllcyBnZW5lcmF0ZWQgYnkgYm90aCBUaG9tYXMg4oCTRmllcmluZyBhbmQgQU5OIG1vZGVscyBpcyBpbiBnb29kIGFncmVlbWVudCB3aXRoIHRoYXQgb2YgdGhlIGhpc3RvcmljYWwgc2VyaWVzLiBIb3dldmVyLCBwZXJpb2RpY2FsIHN0YW5kYXJkIGRldmlhdGlvbiBhbmQgc2tld25lc3MgY29lZmZpY2llbnQgb2YgdGhlIHNlcmllcyBnZW5lcmF0ZWQgYnkgVGhvbWFz4oCTRmllcmluZyBtb2RlbCBhcmUgaW5mZXJpb3IgdG8gdGhhdCBvZiB0aGUgc2VyaWVzIGdlbmVyYXRlZCBieSBBTk4uPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY4MTgvMzY4MTgucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij44MjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+QSBORVcgRElTVFJJQlVUSU9OIFNZU1RFTSAgUkVDT05GSUdVUkFUSU9OIEFQUFJPQUNIIFVTSU5HIFBBUlRJQ0xFIFNXQVJNIE9QVElNSVpBVElPTiBBTkQgTkVVUkFMIE5FVFdPUks8L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5NLiBXLiBTaXRpLCBCLiBQLiBOdW1iaSBhbmQgRC4gTmljb2xhZTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+VGhpcyBwYXBlciB1c2VzIGFydGlmaWNpYWwgaW50ZWxsaWdlbnQgYWxnb3JpdGhtcyBmb3IgcmVjb25maWd1cmF0aW9uIG9mIHRoZSBkaXN0cmlidXRpb24gbmV0d29yay4gVGhlIHByb2JsZW0gaXMgZm9ybXVsYXRlZCBhcyBhbiBvcHRpbWl6YXRpb24gcHJvYmxlbSB3aGVyZSB0aGUgb2JqZWN0aXZlIGZ1bmN0aW9uIHRvIGJlIG1pbmltaXplZCBpcyB0aGUgcG93ZXIgbG9zc2VzLCBhbmQgdGhlIGNvbnN0cmFpbnRzIGFyZSBub2RhbCB2b2x0YWdlIG1hZ25pdHVkZSBsaW1pdHMsIGJyYW5jaCBjdXJyZW50IGxpbWl0cywgS2lyY2hob2Zm4oCZcyBjdXJyZW50IGxhdyAoS0NMKSwgS2lyY2hob2Zm4oCZcyB2b2x0YWdlIGxhdyAoS1ZMKSBhbmQgdGhlIG5ldHdvcmsgcmFkaWFsaXR5IGNvbmRpdGlvbi4gIFdoaWxlIHRoZSBzdGF0ZSAob24tb2ZmKSBvZiB0aGUgdGllIHN3aXRjaCBpcyBjb25zaWRlcmVkIGFzIGNvbnRyb2wgb3IgaW5kZXBlbmRlbnQgdmFyaWFibGUsIHRoZSBub2RhbCB2b2x0YWdlIG1hZ25pdHVkZSwgYnJhbmNoIGN1cnJlbnQgYXJlIGNvbnNpZGVyZWQgYXMgc3RhdGUgb3IgZGVwZW5kZW50IHZhcmlhYmxlcy4gVGhlc2Ugc3RhdGUgdmFyaWFibGVzIGFyZSBjb250aW51b3VzIHdoaWxzdCB0aGUgc3dpdGNoIHN0YXRlIGlzIGFuIGludGVnZXIgKGJpbmFyeSkgdmFyaWFibGUuIFRoZSBwcm9ibGVtIGJlaW5nIGEgbWl4ZWQtaW50ZWdlciBwcm9ncmFtbWluZyBvbmUgYmVjYXVzZSBvZiB0aGUgc3RhdGUgb2Ygc3dpdGNoIChvbj1jbG9zZWQ9MSBvciBvZmY9b3Blbj0wKSwgYSBCaW5hcnkgUGFydGljbGUgU3dhcm0gT3B0aW1pemF0aW9uIChCUFNPKSBhbmQgTmV1cmFsIE5ldHdvcmsgYXJlIHVzZWQgc2VwYXJhdGVseSB0byBzb2x2ZSB0aGlzIHByb2JsZW0uIFRoZSBlZmZlY3RpdmVuZXNzIG9mIHByb3Bvc2VkIG1ldGhvZCBpcyBkZW1vbnN0cmF0ZWQgdGhyb3VnaCBhbiBleGFtcGxlLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2ODE5LzM2ODE5LnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+ODU8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPlNPTFZJTkcgTlVNQkVSIFNFUklFUyAtIEFyY2hpdGVjdHVyYWwgUHJvcGVydGllcyBvZiBTdWNjZXNzZnVsIEFydGlmaWNpYWwgTmV1cmFsIE5ldHdvcmtzPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+TWFyY28gUmFnbmkgYW5kIEFuZHJlYXMgS2xlaW48L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPkFueSBtYXRoZW1hdGljYWwgcGF0dGVybiBjYW4gYmUgdGhlIGdlbmVyYXRpb24gcHJpbmNpcGxlIGZvciBudW1iZXIgc2VyaWVzLiBJbiBjb250cmFzdCB0byBtb3N0IG9mIHRoZSBhcHBsaWNhdGlvbiBmaWVsZHMgb2YgYXJ0aWZpY2lhbCBuZXVyYWwgbmV0d29ya3MgKEFOTikgYSBzdWNjZXNzZnVsIHNvbHV0aW9uIGRvZXMgbm90IG9ubHkgcmVxdWlyZSBhbiBhcHByb3hpbWF0aW9uIG9mIHRoZSB1bmRlcmx5aW5nIGZ1bmN0aW9uIGJ1dCB0byBjb3JyZWN0bHkgcHJlZGljdCB0aGUgZXhhY3QgbmV4dCBudW1iZXIuIFdlIHByb3Bvc2UgYSBkeW5hbWljIGxlYXJuaW5nIGFwcHJvYWNoIGFuZCBldmFsdWF0ZSBvdXIgbWV0aG9kIGVtcGlyaWNhbGx5IG9uIG51bWJlciBzZXJpZXMgZnJvbSB0aGUgT25saW5lIEVuY3ljbG9wZWRpYSBvZiBJbnRlZ2VyIFNlcXVlbmNlcy4gRmluYWxseSwgd2UgaW52ZXN0aWdhdGUgcmVzZWFyY2ggcXVlc3Rpb25zIGFib3V0IHRoZSBwZXJmb3JtYW5jZSBvZiBBTk5zLCBzdHJ1Y3R1cmFsIHByb3BlcnRpZXMsIGFuZCB0aGUgYWRlcXVhdGUgYXJjaGl0ZWN0dXJlIG9mIHRoZSBBTk4gdG8gZGVhbCBzdWNjZXNzZnVsbHkgd2l0aCBudW1iZXIgc2VyaWVzLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2ODIzLzM2ODIzLnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+ODY8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPlNQSUtJTkcgSElFUkFSQ0hJQ0FMIE5FVVJBTCBORVRXT1JLIEZPUiBDT1JORVIgREVURUNUSU9OPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+RGVybW90IEtlcnIsIE1hcnRpbiBNY0dpbm5pdHksIFNvbnlhIENvbGVtYW4sIFFpbmd4aWFuZyBXdSBhbmQgTWFyaW5lIENsb2dlbnNvbjwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+VG8gZW5hYmxlIGZhc3QgcmVsaWFibGUgZmVhdHVyZSBtYXRjaGluZyBvciB0cmFja2luZyBpbiBzY2VuZXMsIGZlYXR1cmVzIG5lZWQgdG8gYmUgZGlzY3JldGUgYW5kIG1lYW5pbmdmdWwsIGFuZCBoZW5jZSBjb3JuZXIgZGV0ZWN0aW9uIGlzIG9mdGVuIHVzZWQgZm9yIHRoaXMgcHVycG9zZS4gV2UgcHJlc2VudCBhIG5ldyBhcHByb2FjaCB0byBjb3JuZXIgZGV0ZWN0aW9uIGluc3BpcmVkIGJ5IHRoZSBzdHJ1Y3R1cmUgYW5kIGJlaGF2aW91ciBvZiB0aGUgaHVtYW4gdmlzdWFsIHN5c3RlbSwgd2hpY2ggdXNlcyBzcGlraW5nIG5ldXJhbCBuZXR3b3Jrcy4gU3RhbmRhcmQgZGlnaXRhbCBpbWFnZXMgYXJlIHByb2Nlc3NlZCBhbmQgY29udmVydGVkIHRvIHNwaWtlcyBpbiBhIG1hbm5lciBzaW1pbGFyIHRvIHRoZSBwcm9jZXNzaW5nIHRoYXQgaXMgcGVyZm9ybWVkIGluIHRoZSByZXRpbmEuIFRoZSBzcGlraW5nIG5ldXJhbCBuZXR3b3JrIHBlcmZvcm1zIGVkZ2UgYW5kIGNvcm5lciBkZXRlY3Rpb24gdXNpbmcgcmVjZXB0aXZlIGZpZWxkcyB0aGF0IGFyZSBhYmxlIHRvIGRldGVjdCBlZGdlcyBhbmQgY29ybmVycyBvZiB2YXJpb3VzIG9yaWVudGF0aW9ucy4gVGhlIGxvY2F0aW9ucyB3aGVyZSBuZXVyb25zIGVtaXQgYSBzcGlrZSBpbmRpY2F0ZSB0aGUgcG9zaXRpb25zIG9mIGRldGVjdGVkIGZlYXR1cmVzLiBSZXN1bHRzIGFyZSBwcmVzZW50ZWQgdXNpbmcgc3ludGhldGljIGFuZCByZWFsIGltYWdlcy48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjgyNC8zNjgyNC5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjg4PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5SRUxJQUJMRSBNT0RFTExJTkcgQU5EIE9QVElNSVNBVElPTiBDT05UUk9MIE9GIFJFQUNUSVZFIFBPTFlNRVIgQ09NUE9TSVRFIE1PVUxESU5HIFBST0NFU1NFUyBVU0lORyBCT09UU1RSQVAgQUdHUkVHQVRFRCBORVVSQUwgTkVUV09SSyBNT0RFTFM8L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5KaWUgWmhhbmcgYW5kIE5pa29zIEcuIFBhbnRlbGVsaXM8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoaXMgcGFwZXIgcHJlc2VudHMgdXNpbmcgYm9vdHN0cmFwIGFnZ3JlZ2F0ZWQgbmV1cmFsIG5ldHdvcmtzIGZvciB0aGUgbW9kZWxsaW5nIGFuZCBvcHRpbWlzYXRpb24gY29udHJvbCBvZiByZWFjdGl2ZSBwb2x5bWVyIGNvbXBvc2l0ZSBtb3VsZGluZyBwcm9jZXNzZXMuIEJvb3RzdHJhcCBhZ2dyZWdhdGVkIG5ldXJhbCBuZXR3b3JrcyBjb21iaW5lIG11bHRpcGxlIG5ldXJhbCBuZXR3b3JrcyBkZXZlbG9wZWQgZnJvbSBib290c3RyYXAgcmUtc2FtcGxpbmcgcmVwbGljYXRpb25zIG9mIHRoZSBvcmlnaW5hbCB0cmFpbmluZyBkYXRhIGluIG9yZGVyIHRvIGVuaGFuY2UgbW9kZWwgcHJlZGljdGlvbiBhbmQgZ2VuZXJhbGlzYXRpb24gY2FwYWJpbGl0eS4gTmV1cmFsIG5ldHdvcmsgbW9kZWxzIGZvciBtb2RlbGxpbmcgdGhlIGRlZ3JlZSBvZiBjdXJlICh0aHJvdWdoIG1vZGVsbGluZyB0aGUgbWVhc3VyZWQgcmVzaXN0YW5jZSkgYXJlIGRldmVsb3BlZCBmcm9tIHJlYWwgaW5kdXN0cmlhbCBwcm9jZXNzIG9wZXJhdGlvbmFsIGRhdGEuIEJvdGggc3RhdGljIGFuZCBkeW5hbWljIG1vZGVscyBhcmUgZGV2ZWxvcGVkIGFuZCB0aGUgZGV2ZWxvcGVkIG5ldXJhbCBuZXR3b3JrIG1vZGVscyBhcmUgdmFsaWRhdGVkIG9uIHVuc2VlbiBwcm9jZXNzIG9wZXJhdGlvbiBkYXRhLiBUaGUgYm9vdHN0cmFwIGFnZ3JlZ2F0ZWQgbmV1cmFsIG5ldHdvcmsgbW9kZWxzIGdpdmUgYWNjdXJhdGUgYW5kIHJlbGlhYmxlIHByZWRpY3Rpb25zIHRoYW4gc2luZ2xlIG5ldXJhbCBuZXR3b3Jrcy4gT3B0aW1hbCBoZWF0aW5nIHByb2ZpbGUgaXMgb2J0YWluZWQgYnkgc29sdmluZyBhbiBvcHRpbWlzYXRpb24gcHJvYmxlbSB1c2luZyB0aGUgZHluYW1pYyBuZXVyYWwgbmV0d29yayBtb2RlbC4gVGhlIG1vZGVsIHByZWRpY3Rpb24gY29uZmlkZW5jZSBib3VuZCBpcyBpbmNvcnBvcmF0ZWQgaW4gdGhlIG9wdGltaXNhdGlvbiBvYmplY3RpdmUgZnVuY3Rpb24gaW4gb3JkZXIgdG8gZW5oYW5jZSB0aGUgcmVsaWFiaWxpdHkgb2YgdGhlIGNhbGN1bGF0ZWQgb3B0aW1hbCBjb250cm9sIHByb2ZpbGUuIEluIGFkZGl0aW9uIHRvIG1heGltaXNlIHRoZSBmaW5hbCBkZWdyZWUgb2YgY3VyZSwgbW9kZWwgcHJlZGljdGlvbiBjb25maWRlbmNlIGJvdW5kIGlzIG1pbmltaXNlZC4gQXBwbGljYXRpb24gcmVzdWx0cyBvbiBhIHNpbXVsYXRlZCBwb2x5bWVyIGNvbXBvc2l0ZSBtb3VsZGluZyBwcm9jZXNzIGRlbW9uc3RyYXRlIHRoYXQgdGhlIHByb3Bvc2VkIHJlbGlhYmxlIG9wdGltaXNhdGlvbiBjb250cm9sIHN0cmF0ZWd5IGlzIGVmZmVjdGl2ZS48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjgyNi8zNjgyNi5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjkwPC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5BIE1PVklFIFJFQ09NTUVOREVSIFNZU1RFTSBCQVNFRCBPTiBFTlNFTUJMRSBPRiBUUkFOU0RVQ1RJVkUgU1ZNIENMQVNTSUZJRVJTPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+QXJpc3RvbWVuaXMgUy4gTGFtcHJvcG91bG9zLCBQYXJhc2tldmkgUy4gTGFtcHJvcG91bG91IGFuZCBHZW9yZ2UgQS4gVHNpaHJpbnR6aXM8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPkluIHRoaXMgcGFwZXIsIHdlIGFkZHJlc3MgdGhlIHJlY29tbWVuZGF0aW9uIHByb2Nlc3MgYXMgYSBjbGFzc2lmaWNhdGlvbiBwcm9ibGVtIGJhc2VkIG9uIGNvbnRlbnQgZmVhdHVyZXMgYW5kIGEgYmFuayBvZiBUcmFuc2R1Y3RpdmUgU1ZNY2xhc3NpZmllcnMgdGhhdCBjYXB0dXJlIHVzZXIgcHJlZmVyZW5jZXMuIFNwZWNpZmljYWxseSwgd2UgZGV2ZWxvcCBhbiBlbnNlbWJsZSBvZiBUcmFuc2R1Y3RpdmUgU1ZNKFRTVk0pIGNsYXNzaWZpZXJzLCBlYWNoIG9mIHdoaWNoIHV0aWxpemVzIGEgZGlmZmVyZW50IGZlYXR1cmUgdmVjdG9yIGV4dHJhY3RlZCBmcm9tZGlmZmVyZW50IHNlbWFudGljIG1ldGEtZGF0YSBzdWNoIGFzIGFjdG9ycywgZGlyZWN0b3JzLCB3cml0ZXJzLCBlZGl0b3JzIGFuZCBnZW5yZXMuIFRoZSBlbnNlbWJsZSBjbGFzc2lmaWVyIGFsbG93cyBvdXIgc3lzdGVtIHRvIHV0aWxpemUgZmVhdHVyZSB2ZWN0b3JzIG9mIG1ldGEtZGF0YSBmcm9tIGEgZGF0YWJhc2UgYW5kIHRvIG1ha2UgcGVyc29uYWxpemVkIHJlY29tbWVuZGF0aW9ucyB0byB1c2Vycy4gVGhpcyBpcyBhY2hpZXZlZCB0aHJvdWdoIHRoZSBwcm9wZXJ0eSBvZiBUU1ZNIGNsYXNzaWZpZXJzIHRvIHV0aWxpemUgYSBsYXJnZSBhbW91bnQgb2YgYXZhaWxhYmxlIHVubGFiZWxlZCBkYXRhIHRvZ2V0aGVyIHdpdGggYSBzbWFsbCBhbW91bnQgb2YgbGFiZWxlZCBkYXRhIHRoYXQgY29uc3RpdHV0ZSB0aGUgcmF0ZWQgbW92aWVzIG9mIGEgdXNlci4gVGhlIHByb3Bvc2VkIG1ldGhvZCBpcyBjb21wYXJlZCB0byBhIFRTVk0gY2xhc3NpZmllciB3aGljaCB1dGlsaXplcyBhIGZlYXR1cmUgdmVjdG9yIGV4dHJhY3RlZCBmcm9tIG9ubHkgcmF0aW5ncyBvZiB1c2Vycy4gVGhlIGV4cGVyaW1lbnRhbCByZXN1bHRzIGJhc2VkIG9uIHRoZSBNb3ZpZUxlbnMgZGF0YSBzZXQgaW5kaWNhdGVkIHRoYXQgb3VyIGNsYXNzaWZpZXIgYmFzZWQgb24gYW4gZW5zZW1ibGUgb2YgVFNWTSB3aXRoIGNvbnRlbnQgbWV0YS1kYXRhIHlpZWxkIGhpZ2hlciBhY2N1cmFjeSByZWNvbW1lbmRhdGlvbnMgd2hlbiBjb21wYXJlZCB0byB0aGUgVFNWTSBjbGFzc2lmaWVyIHRoYXQgdXRpbGl6ZWQgb25seSB1c2VyIHJhdGluZ3MuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY4MjgvMzY4MjgucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij45MTwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+UEFSQUxMRUwgRVZBTFVBVElPTiBPRiBIT1BGSUVMRCBORVVSQUwgTkVUV09SS1M8L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5BbnRvaW5lIEVpY2hlLCBEYW5pZWwgQ2hpbGxldCwgU2ViYXN0aWVuIFBpbGxlbWVudCBhbmQgT2xpdmllciBTZW50aWV5czwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+QW1vbmcgdGhlIGxhcmdlIG51bWJlciBvZiBwb3NzaWJsZSBvcHRpbWl6YXRpb24gYWxnb3JpdGhtcywgSG9wZmllbGQgTmV1cmFsIE5ldHdvcmtzIChITk4pIHByb3Bvc2UgaW50ZXJlc3RpbmcgY2hhcmFjdGVyaXN0aWNzIGZvciBhbiBpbi1saW5lIHVzZS4gSW5kZWVkLCB0aGlzIHBhcnRpY3VsYXIgb3B0aW1pemF0aW9uIGFsZ29yaXRobSBjYW4gcHJvZHVjZSBzb2x1dGlvbnMgaW4gYnJpZWYgZGVsYXkuIFRoZXNlIHNvbHV0aW9ucyBhcmUgcHJvZHVjZWQgYnkgdGhlIEhOTiBjb252ZXJnZW5jZSB3aGljaCB3YXMgb3JpZ2luYWxseSBkZWZpbmVkIGZvciBhIHNlcXVlbnRpYWwgZXZhbHVhdGlvbiBvZiBuZXVyb25zLiBXaGlsZSB0aGlzIHNlcXVlbnRpYWwgZXZhbHVhdGlvbiBsZWFkcyB0byBsb25nIGNvbnZlcmdlbmNlIHRpbWUsIHdlIGFzc3VtZSB0aGF0IHRoaXMgY29udmVyZ2VuY2UgY2FuIGJlIGFjY2VsZXJhdGVkIHRocm91Z2ggdGhlIHBhcmFsbGVsIGV2YWx1YXRpb24gb2YgbmV1cm9ucy4gSG93ZXZlciwgdGhlIG9yaWdpbmFsIGNvbnN0cmFpbnRzIGRvIG5vdCBhbnkgbG9uZ2VyIGVuc3VyZSB0aGUgY29udmVyZ2VuY2Ugb2YgdGhlIEhOTiBldmFsdWF0ZWQgaW4gcGFyYWxsZWwuIFRoaXMgYXJ0aWNsZSBhaW1zIHRvIHNob3cgaG93IHRoZSBuZXVyb25zIGNhbiBiZSBldmFsdWF0ZWQgaW4gcGFyYWxsZWwgaW4gb3JkZXIgdG8gYWNjZWxlcmF0ZSBhIGhhcmR3YXJlIG9yIG11bHRpcHJvY2Vzc29yIGltcGxlbWVudGF0aW9uIGFuZCB0byBlbnN1cmUgdGhlIGNvbnZlcmdlbmNlLiBUaGUgcGFyYWxsZWxpemF0aW9uIG1ldGhvZCBpcyBpbGx1c3RyYXRlZCBvbiBhIHNpbXBsZSB0YXNrIHNjaGVkdWxpbmcgcHJvYmxlbSB3aGVyZSB3ZSBvYnRhaW4gYW4gaW1wb3J0YW50IGFjY2VsZXJhdGlvbiByZWxhdGVkIHRvIHRoZSBudW1iZXIgb2YgdGFza3MuIEZvciBpbnN0YW5jZSwgd2l0aCBhIG51bWJlciBvZiB0YXNrcyBlcXVhbHMgdG8gMjAgdGhlIHNwZWVkdXAgZmFjdG9yIGlzIGFib3V0IDI1LjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2ODI5LzM2ODI5LnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+OTQ8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPkVWQUxVQVRJT04gT0YgVEhFIEVGRkVDVCBPRiBORDpZVk80IExBU0VSIFBBUkFNRVRFUlMgT04gSU5URVJOQUwgTUlDUk8tQ0hBTk5FTCBGQUJSSUNBVElPTiBJTiBQT0xZQ0FSQk9OQVRFPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+Uy4gTS4gS2FyYXppIGFuZCBELiBCcmFiYXpvbjwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+VGhpcyBwYXBlciBwcmVzZW50cyB0aGUgZGV2ZWxvcG1lbnQgb2YgQXJ0aWZpY2lhbCBOZXVyYWwgTmV0d29yayAoQU5OKSBtb2RlbHMgZm9yIHRoZSBwcmVkaWN0aW9uIG9mIGxhc2VyIG1hY2hpbmVkIGludGVybmFsIG1pY3JvLWNoYW5uZWxz4oCZIGRpbWVuc2lvbnMgYW5kIHByb2R1Y3Rpb24gY29zdHMuIEluIHRoaXMgd29yaywgYSBwdWxzZWQgTmQ6WVZPNCBsYXNlciB3YXMgdXNlZCBmb3IgbWFjaGluaW5nIG1pY3JvLWNoYW5uZWxzIGluIHBvbHljYXJib25hdGUgbWF0ZXJpYWwuIFNpeCBBTk4gbXVsdGktbGF5ZXJlZCwgZmVlZC1mb3J3YXJkLCBiYWNrLXByb3BhZ2F0aW9uIG1vZGVscyBhcmUgcHJlc2VudGVkIHdoaWNoIHdlcmUgZGV2ZWxvcGVkIG9uIHRocmVlIGRpZmZlcmVudCB0cmFpbmluZyBkYXRhIHNldHMuIFRoZSBhbmFseXNlZCBkYXRhIHdhcyBvYnRhaW5lZCBmcm9tIGEgMzMgZmFjdG9yaWFsIGRlc2lnbiBvZiBleHBlcmltZW50cyAoRG9FKS4gVGhlIGNvbnRyb2xsZWQgcGFyYW1ldGVycyB3ZXJlIGxhc2VyIHBvd2VyLCBQOyBwdWxzZSByZXBldGl0aW9uIGZyZXF1ZW5jeSwgUFJGOyBhbmQgc2FtcGxlIHRyYW5zbGF0aW9uIHNwZWVkOyBVLiBNZWFzdXJlZCByZXNwb25zZXMgd2VyZSB0aGUgbWljcm8tY2hhbm5lbCB3aWR0aCBhbmQgdGhlIG1pY3JvLW1hY2hpbmluZyBvcGVyYXRpbmcgY29zdCBwZXIgbWV0cmUgb2YgcHJvZHVjZWQgbWljcm8tY2hhbm5lbC4gVGhlIHJlc3BvbnNlcyB3ZXJlIHN1ZmZpY2llbnRseSBwcmVkaWN0ZWQgd2l0aGluIHRoZSBzZXQgbWljcm8tbWFjaGluaW5nIHBhcmFtZXRlcnMgbGltaXRzLiBUaHJlZSBjYXJlZnVsbHkgc2VsZWN0ZWQgc3RhdGlzdGljYWwgY3JpdGVyaWEgd2VyZSB1c2VkIGZvciBjb21wYXJpbmcgdGhlIHBlcmZvcm1hbmNlIG9mIHRoZSBBTk4gcHJlZGljdGl2ZSBtb2RlbHMuIFRoZSBjb21wYXJpc29uIHNob3dlZCB0aGF0IG1vZGVsIHdoaWNoIGhhZCB0aGUgbGFyZ2VzdCBhbW91bnQgb2YgdHJhaW5pbmcgZGF0YSBwcm92aWRlZCB0aGUgaGlnaGVzdCBkZWdyZWUgb2YgcHJlZGljdGFiaWxpdHkuIEhvd2V2ZXIsIGluIGNhc2VzIHdoZXJlIG9ubHkgYSBsaW1pdGVkIGFtb3VudCBvZiBBTk4gdHJhaW5pbmcgZGF0YSB3YXMgYXZhaWxhYmxlLCB0aGVuIHRyYWluaW5nIGRhdGEgdGFrZW4gZnJvbSBhIEZhY2UgQ2VudHJlZCBDdWJpYyAoRkNDKSBtb2RlbCBkZXNpZ24gcHJvdmlkZWQgdGhlIGhpZ2hlc3QgbGV2ZWwgb2YgcHJlZGljdGFiaWxpdHkgY29tcGFyZWQgd2l0aCB0aGUgb3RoZXIgZXhhbWluZWQgdHJhaW5pbmcgZGF0YSBzZXRzLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2ODMyLzM2ODMyLnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+OTg8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPlRIRSBESVNUUklCVVRFRCBBUkNISVRFQ1RVUkUgRk9SIExBUkdFIE5FVVJBTCBORVRXT1JLUyAoRElTVEFMKSBPRiBUSEUgSFVNQU5PSUQgUk9CT1QgTVlPTjwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPk1hbmZyZWQgSGlsZCwgQ2hyaXN0aWFuIFRoaWVsZSBhbmQgQ2hyaXN0aWFuIEJlbmNrZW5kb3JmZjwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+SHVtYW5vaWQgcm9ib3RzIGFyZSBjb21wbGV4IHN5c3RlbXMgdGhhdCByZXF1aXJlIGNvbnNpZGVyYWJsZSBwcm9jZXNzaW5nIHBvd2VyLiBUaGlzIGFwcGxpZXMgYm90aCBmb3IgbG93LWxldmVsIHNlbnNvcmltb3RvciBsb29wcywgYXMgd2VsbCBhcyBmb3IgaW1hZ2UgcHJvY2Vzc2luZyBhbmQgaGlnaGVyIGxldmVsIGRlbGliZXJhdGl2ZSBhbGdvcml0aG1zLiBXZSBwcmVzZW50IHRoZSBkaXN0cmlidXRlZCBhcmNoaXRlY3R1cmUgRElTVEFMIHdoaWNoIGlzIGFibGUgdG8gcHJvdmlkZSB0aGUgcHJvY2Vzc2luZyBwb3dlciBvZiBsYXJnZSBuZXVyYWwgbmV0d29ya3Mgd2l0aG91dCByZWx5aW5nIG9uIGEgY2VudHJhbCBwcm9jZXNzb3IuIFRoZSBhcmNoaXRlY3R1cmUgc3VjY2Vzc2Z1bGx5IGNvcGVzIHdpdGggcnVudGltZS1tZXRhbW9ycGhvc2VzIG9mIG1vZHVsYXIgcm9ib3RzLCBzdWNoIGFzIHRoZSBodW1hbm9pZCByb2JvdCBNWU9OLCB0aGUgYm9keSBwYXJ0cyBvZiB3aGljaCBjYW4gYmUgZGV0YWNoZWQgYW5kIHJlYXR0YWNoZWQgZHVyaW5nIHJ1bnRpbWUuIFdlIGRldGFpbCB0aGUgaW1wbGVtZW50YXRpb24gb2YgRElTVEFMIG9uIDMyLWJpdCBBUk0gUklTQyBwcm9jZXNzb3JzLCBkZXNjcmliZSB0aGUgdW5kZXJseWluZyBuZXVyYWwgYnl0ZS1jb2RlIChOQkMpIG9mIG5ldXJvbnMgYW5kIHN5bmFwc2VzLCBhbmQgYWxzbyBkZXBpY3QgdGhlIGdyYXBoaWNhbCBhcHBsaWNhdGlvbiBzb2Z0d2FyZSBCUkFJTkRFU0lHTkVSIHdoaWNoIHJlbGVhc2VzIHRoZSB1c2VyIGZyb20gcHJvZ3JhbSBjb2RpbmcuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY4MzYvMzY4MzYucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij45OTwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+VVNJTkcgVEhFIEdORy1NIEFMR09SSVRITSBUTyBERUFMIFdJVEggVEhFIFBST0JMRU0gT0YgQ0FUQVNUUk9QSElDIEZPUkdFVFRJTkcgSU4gSU5DUkVNRU5UQUwgTU9ERUxMSU5HPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+SCYjMjMzO2N0b3IgRi4gU2F0aXomIzIyNTtiYWwgTS4gYW5kIEFuZHJlcyBQZXJlei1VcmlpYmU8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPkNyZWF0aW5nIGNvbXB1dGF0aW9uYWwgbW9kZWxzIGZyb20gbGFyZ2UgYW5kIGdyb3dpbmcgZGF0YXNldHMgaXMgYW4gaW1wb3J0YW50IGlzc3VlIGluIGN1cnJlbnQgbWFjaGluZSBsZWFybmluZyByZXNlYXJjaCwgYmVjYXVzZSBtb3N0IG1vZGVsbGluZyBhcHByb2FjaGVzIGNhbiByZXF1aXJlIHByb2hpYml0aXZlIGNvbXB1dGF0aW9uYWwgcmVzb3VyY2VzLiBUaGlzIHdvcmsgcHJlc2VudHMgdGhlIHVzZSBvZiBpbmNyZW1lbnRhbCBsZWFybmluZyBhbGdvcml0aG1zIHdpdGhpbiB0aGUgZnJhbWV3b3JrIG9mIGFuIGluY3JlbWVudGFsIG1vZGVsbGluZyBhcHByb2FjaC4gSW4gcGFydGljdWxhciwgaXQgcHJlc2VudHMgdGhlIEdORy1tIGFsZ29yaXRobSwgYW4gYWRhcHRhdGlvbiBvZiB0aGUgR3Jvd2luZyBOZXVyYWwgR2FzIGFsZ29yaXRobSAoR05HKSwgY2FwYWJsZSBvZiBjaXJjdW12ZW50aW5nIHRoZSBwcm9ibGVtIG9mIGNhdGFzdHJvcGhpYyBmb3JnZXR0aW5nIHdoZW4gbW9kZWxsaW5nIGxhcmdlIGRhdGFzZXRzIGluIGEgc2VxdWVudGlhbCBtYW5uZXIuIFdlIGlsbHVzdHJhdGUgdGhpcyBieSBjb21wYXJpbmcgdGhlIHBlcmZvcm1hbmNlIG9mIEdORy1tIHdpdGggdGhhdCBvZiB0aGUgb3JpZ2luYWwgR05HIGFsZ29yaXRobSwgb24gYSB2ZWN0b3IgcXVhbnRpemF0aW9uIHRhc2suIExhc3QgYnV0IG5vdCBsZWFzdCwgd2UgcHJlc2VudCB0aGUgdXNlIG9mIEdORy1tIGluIGFuIGluY3JlbWVudGFsIG1vZGVsbGluZyB0YXNrIHVzaW5nIGEgcmVhbC13b3JsZCBkYXRhYmFzZSBvZiB0ZW1wZXJhdHVyZSwgY29taW5nIGZyb20gYSBnZW9ncmFwaGljIGluZm9ybWF0aW9uIHN5c3RlbSAoR0lTKS4gVGhlIGRhdGFzZXQgb2YgbW9yZSB0aGFuIG9uZSBtaWxsaW9uIG11bHRpZGltZW5zaW9uYWwgb2JzZXJ2YXRpb25zIGlzIHNwbGl0IGluIHNldmVuIHBhcnRzIGFuZCB0aGVuIHJlZHVjZWQgYnkgdmVjdG9yIHF1YW50aXphdGlvbiB0byBhIGNvZGVib29rIG9mIG9ubHkgdGhvdXNhbmRzIG9mIHByb3RvdHlwZXMuCjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2ODM3LzM2ODM3LnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+MTAxPC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5JTUFHRSBDT05URU5UUyBBTk5PVEFUSU9OUyBXSVRIIFRIRSBFTlNFTUJMRSBPRiBPTkUtQ0xBU1MgU1VQUE9SVCBWRUNUT1IgTUFDSElORVM8L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5Cb2d1c2xhdyBDeWdhbmVrIGFuZCBLYXppbWllcnogV2lhdHI8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoZSBwYXBlciBwcmVzZW50cyBhIHN5c3RlbSBmb3IgYXV0b21hdGljIGltYWdlIGluZGV4aW5nIGJhc2VkIG9uIGNvbG9yIGluZm9ybWF0aW9uLiBUaGUgbWFpbiBpZGVhIGlzIHRvIGJ1aWxkIGEgbW9kZWwgd2hpY2ggcmVwcmVzZW50cyBjb250ZW50cyBvZiBhIHJlZmVyZW5jZSBpbWFnZSBpbiBhIGZvcm0gb2YgYW4gZW5zZW1ibGUgb2YgcHJvcGVybHkgdHJhaW5lZCBjbGFzc2lmaWVycy4gQSByZWZlcmVuY2UgaW1hZ2UgaXMgZmlyc3Qgay1tZWFucyBzZWdtZW50ZWQgc3RhcnRpbmcgZnJvbSB0aGUgY2hhcmFjdGVyaXN0aWMgY29sb3JzLiBUaGVuLCBlYWNoIHBhcnRpdGlvbiBpcyBlbmNvZGVkIGJ5IHRoZSBvbmUtY2xhc3MgU1ZNLiBUaGlzIHdheSBhbiBlbnNlbWJsZSBvZiBjbGFzc2lmaWVycyBpcyBvYnRhaW5lZC4gRHVyaW5nIG9wZXJhdGlvbiwgYSB0ZXN0IGltYWdlIGlzIGNsYXNzaWZpZWQgYnkgdGhlIGVuc2VtYmxlIHdoaWNoIHJlc3BvbmRzIHdpdGggYSBtZWFzdXJlIG9mIHNpbWlsYXJpdHkgYmV0d2VlbiB0aGUgcmVmZXJlbmNlIGFuZCB0ZXN0IGltYWdlcy4gVGhlIGV4cGVyaW1lbnRhbCByZXN1bHRzIHNob3cgZ29vZCBwZXJmb3JtYW5jZSBvZiBpbWFnZSBpbmRleGluZyBiYXNlZCBvbiB0aGVpciBjaGFyYWN0ZXJpc3RpYyBjb2xvcnMuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY4NDAvMzY4NDAucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij4xMTY8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPkNNQUMgU1RSVUNUVVJFIE9QVElNSVpBVElPTiBXSVRIIFEtTEVBUk5JTkcgQVBQUk9BQ0ggQU5EIElUUyBBUFBMSUNBVElPTjwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPldlaXdlaSBZdSwgS3Vyb3NoIE1hZGFuaSBhbmQgQ2hyaXN0b3BoZSBTYWJvdXJpbjwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+Q29tcGFyaW5nIHdpdGggb3RoZXIgbmV1cmFsIG5ldHdvcmtzIGJhc2VkIG1vZGVscywgQ01BQyBpcyBzdWNjZXNzZnVsbHkgYXBwbGllZCBvbiBtYW55IG5vbmxpbmVhciBjb250cm9sIHN5c3RlbXMgYmVjYXVzZSBvZiBpdHMgY29tcHV0YXRpb25hbCBzcGVlZCBhbmQgbGVhcm5pbmcgYWJpbGl0eS4gSG93ZXZlciwgZm9yIGhpZ2gtZGltZW5zaW9uYWwgaW5wdXQgY2FzZXMgaW4gcmVhbCBhcHBsaWNhdGlvbiwgd2Ugb2Z0ZW4gaGF2ZSB0byBtYWtlIG91ciBjaG9pY2UgYmV0d2VlbiBsZWFybmluZyBhY2N1cmFjeSBhbmQgbWVtb3J5IHNpemUuIFRoaXMgcGFwZXIgZGlzY3Vzc2VzIGhvdyBib3RoIHRoZSBudW1iZXIgb2YgbGF5ZXIgYW5kIHN0ZXAgcXVhbnRpemF0aW9uIGluZmx1ZW5jZSB0aGUgYXBwcm94aW1hdGlvbiBxdWFsaXR5IG9mIENNQUMuIEJ5IGV4cGVyaW1lbnRhbCBlbnF1aXJ5LCBpdCBpcyBzaG93biB0aGF0IGl0IGlzIHBvc3NpYmxlIHRvIGRlY3JlYXNlIHRoZSBtZW1vcnkgc2l6ZSB3aXRob3V0IGxvc2luZyB0aGUgYXBwcm94aW1hdGlvbiBxdWFsaXR5IGJ5IHNlbGVjdGluZyB0aGUgYWRhcHRpdmUgc3RydWN0dXJhbCBwYXJhbWV0ZXJzLiBCYXNlZCBvbiBRLWxlYXJuaW5nIGFwcHJvYWNoLCB0aGUgQ01BQyBzdHJ1Y3R1cmFsIHBhcmFtZXRlcnMgY2FuIGJlIG9wdGltaXplZCBhdXRvbWF0aWNhbGx5IHdpdGhvdXQgaW5jcmVhc2luZyB0aGUgY29tcGxleGl0eSBvZiBpdHMgc3RydWN0dXJlLiBUaGUgY2hvaWNlIG9mIHRoaXMgb3B0aW1pemVkIENNQUMgc3RydWN0dXJlIGNhbiBhY2hpZXZlIGEgdHJhZGVvZmYgYmV0d2VlbiB0aGUgbGVhcm5pbmcgYWNjdXJhY3kgYW5kIGZpbml0ZSBtZW1vcnkgc2l6ZS4gQXQgbGFzdCwgdGhlIGFwcGxpY2F0aW9uIG9mIHRoaXMgUS1sZWFybmluZyBiYXNlZCBDTUFDIHN0cnVjdHVyZSBvcHRpbWl6YXRpb24gYXBwcm9hY2ggb24gdGhlIGpvaW50IGFuZ2xlIHRyYWNraW5nIHByb2JsZW0gZm9yIGJpcGVkIHJvYm90IGlzIHByZXNlbnRlZC48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjk0MS8zNjk0MS5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjExOTwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+QSBQUk9CQUJJTElTVElDIE1FVEhPRCBGT1IgUFJFRElDVElPTiBPRiBNSUNST1JOQS1UQVJHRVQgSU5URVJBQ1RJT05TPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+SGFzYW4gT8SfdWwsIFNpbmFuIFUuIFVtdSwgWS4gWWVuZXIgVHVuY2VsIGFuZCBNYWhpbnVyIFMuIEFra2F5YTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+RWx1Y2lkYXRpb24gb2YgbWljcm9STkEgYWN0aXZpdHkgaXMgYSBjcnVjaWFsIHN0ZXAgaW4gdW5kZXJzdGFuZGluZyBnZW5lIHJlZ3VsYXRpb24uIE9uZSBrZXkgcHJvYmxlbSBpbiB0aGlzIGVmZm9ydCBpcyBob3cgdG8gbW9kZWwgdGhlIHBhaXJ3aXNlIGludGVyYWN0aW9uIG9mIG1pY3JvUk5BcyB3aXRoIHRoZWlyIHRhcmdldHMuIEFzIHRoaXMgaW50ZXJhY3Rpb24gaXMgc3Ryb25nbHkgbWVkaWF0ZWQgYnkgdGhlaXIgc2VxdWVuY2VzLCBpdCBpcyBkZXNpcmVkIHRvIHNldCB1cCBhIHByb2JhYmlsaXN0aWMgbW9kZWwgdG8gZXhwbGFpbiB0aGUgYmluZGluZyBiZXR3ZWVuIGEgbWljcm9STkEgc2VxdWVuY2UgYW5kIHRoZSBzZXF1ZW5jZSBvZiBhIHB1dGF0aXZlIHRhcmdldC4gVG8gdGhpcyBlbmQsIHdlIGludHJvZHVjZSBhIG5ldyBtb2RlbCBvZiBtaWNyb1JOQS10YXJnZXQgYmluZGluZywgd2hpY2ggdHJhbnNmb3JtcyBhbiBhbGlnbmVkIGR1cGxleCB0byBhIG5ldyBzZXF1ZW5jZSBhbmQgZGVmaW5lcyB0aGUgbGlrZWxpaG9vZCBvZiB0aGlzIHNlcXVlbmNlIHVzaW5nIGEgVmFyaWFibGUgTGVuZ3RoIE1hcmtvdiBDaGFpbi4gSXQgb2ZmZXJzIGEgY29tcGxlbWVudGFyeSByZXByZXNlbnRhdGlvbiBvZiBtaWNyb1JOQS1tUk5BIHBhaXJzIGZvciBtaWNyb1JOQSB0YXJnZXQgcHJlZGljdGlvbiB0b29scyBvciBvdGhlciBwcm9iYWJpbGlzdGljIGZyYW1ld29ya3Mgb2YgaW50ZWdyYXRpdmUgZ2VuZSByZWd1bGF0aW9uIGFuYWx5c2lzLiBUaGUgcGVyZm9ybWFuY2Ugb2YgcHJlc2VudCBtb2RlbCBpcyBldmFsdWF0ZWQgYnkgaXRzIGFiaWxpdHkgdG8gcHJlZGljdCBtaWNyb1JOQS1tUk5BIGludGVyYWN0aW9uIGdpdmVuIGEgbWF0dXJlIG1pY3JvUk5BIHNlcXVlbmNlIGFuZCBhIHB1dGF0aXZlIG1STkEgYmluZGluZyBzaXRlLiBJbiByZWdhcmQgdG8gY2xhc3NpZmljYXRpb24gYWNjdXJhY3ksIGl0IG91dHBlcmZvcm1zIGEgcmVjZW50IG1ldGhvZCBiYXNlZCBvbiBzdXBwb3J0IHZlY3RvciBtYWNoaW5lcy48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjk0OS8zNjk0OS5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjE0PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5SRVRSSUVWSU5HIEFFUk9TT0wgQ0hBUkFDVEVSSVNUSUNTIEZST00gU0FURUxMSVRFIE9DRUFOIENPTE9SIE1VTFRJLVNQRUNUUkFMIFNFTlNPUlMgVVNJTkcgQSBORVVSQUwtVkFSSUFUSU9OQUwgTUVUSE9EPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+RC4gRGlvdWYsIFMuIFRoaXJpYSwgQS4gTmlhbmcsIEouIEJyYWphcmQgYW5kIE0uIENyZXBvbjwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+V2UgcHJlc2VudCBhIG5ldyBhbGdvcml0aG0gc3VpdGFibGUgZm9yIHJldHJpZXZpbmcgYW5kIG1vbml0b3JpbmcgU2FoYXJhbiBkdXN0cyBmcm9tIHNhdGVsbGl0ZSBvY2Vhbi1jb2xvciBtdWx0aS1zcGVjdHJhbCBvYnNlcnZhdGlvbnMuIFRoaXMgYWxnb3JpdGhtIGNvbXByaXNlcyB0d28gc3RlcHMuIFRoZSBmaXJzdCBzdGVwIGNvbnNpc3RzIGluIGNsYXNzaWZ5aW5nIHRoZSBUT0Egc3BlY3RyYSB1c2luZyBhIG5ldXJvbmFsIGNsYXNzaWZpZXIsIHdoaWNoIHByb3ZpZGVzIHRoZSBhZXJvc29sIHR5cGUgYW5kIGEgZmlyc3QgZ3Vlc3MgdmFsdWUgb2YgdGhlIGFlcm9zb2wgcGFyYW1ldGVycy4gVGhlIHNlY29uZCBzdGVwIHJldHJpZXZlcyBhY2N1cmF0ZSBhZXJvc29sIHBhcmFtZXRlcnMgYnkgdXNpbmcgYSB2YXJpYXRpb25hbCBvcHRpbWl6YXRpb24gbWV0aG9kLiBXZSBoYXZlIGFuYWx5emVkIDEzIHllYXJzIG9mIFNlYVdpRlMgaW1hZ2VzIChTZXB0ZW1iZXIgMTk5Ny1EZWNlbWJlciAyMDA5KSBpbiBhbiBBdGxhbnRpYyBPY2VhbiBhcmVhIG9mZiB0aGUgY29hc3Qgb2YgV2VzdCBBZnJpY2EuIEFzIHRoZSBtZXRob2QgdGFrZXMgaW50byBhY2NvdW50IFNhaGFyYW4gZHVzdHMsIHRoZSBudW1iZXIgb2YgcGl4ZWxzIHByb2Nlc3NlZCBpcyBhbiBvcmRlciBvZiBtYWduaXR1ZGUgaGlnaGVyIHRoYW4gdGhhdCBwcm9jZXNzZWQgYnkgdGhlIHN0YW5kYXJkIFNlYVdpRlMgYWxnb3JpdGhtLiBXZSBub3RlIGEgc3Ryb25nIHNlYXNvbmFsIHZhcmlhYmlsaXR5LiBUaGUgU2FoYXJhbiBkdXN0IGNvbmNlbnRyYXRpb24gaXMgbWF4aW1hbCBpbiBzdW1tZXIgZHVyaW5nIHRoZSByYWlueSBzZWFzb24gYW5kIG1pbmltYWwgaW4gYXV0dW1uIHdoZW4gdGhlIHZlZ2V0YXRpb24gYmxvb20gZHVlIHRvIHRoZSByYWlueSBzZWFzb24gcHJldmVudHMgc29pbCBlcm9zaW9uIGJ5IHRoZSB3aW5kLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2Mzg4LzM2Mzg4LnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+MTU8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPkNPTlNUUlVDVElPTiBBTkQgQU5BTFlTSVMgT0YgQU4gQVJUSUZJQ0lBTCBORVVST05BTCBORVRXT1JLIFVTSU5HIEEgTkVVUk9OLUNPTExFQ1RJTkcsIE1JQ1JPLVBBVFRFUk5JTkcgTUVUSE9EIEJBU0VEIE9OIEEgTVVMVEktRUxFQ1RST0RFIEFSUkFZIFNZU1RFTTwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPkhpZGV5dWtpIFRlcmF6b25vLCBIeW9uY2hvbCBLaW0sIE1hc2FoaXRvIEhheWFzaGksIEFraWhpcm8gSGF0dG9yaSwgSGlyb3l1a2kgVGFrZWkgYW5kIEtlbmppIFlhc3VkYTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+V2UgZGV2ZWxvcGVkIHRocmVlIHRlY2huaXF1ZXMgdG8gbWFrZSBhcnRpZmljaWFsIG5ldXJvbmFsIG5ldHdvcmtzIGNvbnN0cnVjdGVkIGZyb20gcmF0IGhpcHBvY2FtcGFsIG5ldXJvbnMuIDEpIGEgbWV0aG9kIG9mIG5vbi1pbnZhc2l2ZWx5IGNvbGxlY3RpbmcgcHJpbWFyeSBjdWx0dXJlZCBuZXVyb25zIGFuZCB0aGVpciBkZXBvc2l0aW9uLCAyKSBhIHRlY2huaXF1ZSBmb3IgbWljcm9wcm9jZXNzaW5nIGFnYXJvc2UgZm9yIHRoZSBwdXJwb3NlIG9mIGFzc2VtYmxpbmcgYXJ0aWZpY2lhbCBuZXVyb25hbCBuZXR3b3JrcywgMykgYSBtdWx0aS1lbGVjdHJvZGUgYXJyYXkgc3lzdGVtIGZvciBtZWFzdXJlbWVudCBvZiB0aGUgbXVsdGktcG9pbnQgZXh0cmFjZWxsdWxhciBwb3RlbnRpYWwgb2YgbmV1cm9ucy4gVGhlIHRocmVlIHRlY2huaXF1ZXMgYWxsb3cgdXMgdG8gYXNzZW1ibGUgYW5kIGV2YWx1YXRlIGFydGlmaWNpYWwgbmV1cm9uYWwgbmV0d29ya3MgY29uc3RydWN0ZWQgZnJvbSBwYXJ0aWN1bGFyIGNlbGxzLiBXZSBjYW4gbWFuaXB1bGF0ZSBuZXVyby10cmFuc21pc3Npb24gcGF0aHdheXMgYW5kIGludmVzdGlnYXRlIHJvbGVzIHBsYXllZCBieSB0aGUgaW5uYXRlIHBlcmlvZCBvciBzdGFiaWxpdHkgaW5mb3JtYXRpb24gZm9yIGVhY2ggaW5kaXZpZHVhbCBjZWxsIGluIHRoZSBmcmFtZXdvcmsgb2YgcGh5c2lvbG9naWNhbCBtZWNoYW5pc20uIEl0IGlzIHRodXMgcG9zc2libGUgdG8gY29uc3RydWN0IGFuZCBkZW1vbnN0cmF0ZWQgdGhlIGFjdHVhbCBuZXVyb25hbCBuZXR3b3JrcyBzaW11bGF0ZWQgYnkgdGhlIGNvbXB1dGVkIG5ldXJhbCBuZXR3b3Jrcy48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjQxMi8zNjQxMi5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjIwPC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5TRUdNRU5URUTigJNNRU1PUlkgUkVDVVJSRU5UIE5FVVJBTCBORVRXT1JLUyBWRVJTVVMgSElEREVOIE1BUktPViBNT0RFTFMgSU4gRU1PVElPTiBSRUNPR05JVElPTiBGUk9NIFNQRUVDSDwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPlN0ZWZhbiBHbCYjMjUyO2dlLCBSb25hbGQgQiYjMjQ2O2NrIGFuZCBBbmRyZWFzIFdlbmRlbXV0aDwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+RW1vdGlvbiByZWNvZ25pdGlvbiBmcm9tIHNwZWVjaCBtZWFucyB0byBkZXRlcm1pbmUgdGhlIGVtb3Rpb25hbCBzdGF0ZSBvZiBhIHNwZWFrZXIgZnJvbSBoaXMgb3IgaGVyIHZvaWNlLiBUb2RheeKAmXMgbW9zdCB1c2VkIGNsYXNzaWZpZXJzIGluIHRoaXMgZmllbGQgYXJlIEhpZGRlbiBNYXJrb3YgTW9kZWxzIChITU1zKSBhbmQgU3VwcG9ydCBWZWN0b3IgTWFjaGluZXMuIEJvdGggYXJjaGl0ZWN0dXJlcyBhcmUgbm90IG1hZGUgdG8gY29uc2lkZXIgdGhlIGZ1bGwgZHluYW1pYyBjaGFyYWN0ZXIgb2Ygc3BlZWNoLiBIb3dldmVyLCBITU1zIGFyZSBhYmxlIHRvIGNhcHR1cmUgdGhlIHRlbXBvcmFsIGNoYXJhY3RlcmlzdGljcyBvZiBzcGVlY2ggb24gcGhvbmVtZSwgd29yZCwgb3IgdXR0ZXJhbmNlIGxldmVsIGJ1dCBmYWlsIHRvIGxlYXJuIHRoZSBkeW5hbWljcyBvZiB0aGUgaW5wdXQgc2lnbmFsIG9uIHNob3J0IHRpbWUgc2NhbGVzIChlLmcuLCBmcmFtZSByYXRlKS4gVGhlIHVzZSBvZiBkeW5hbWljYWwgZmVhdHVyZXMgKGZpcnN0IGFuZCBzZWNvbmQgZGVyaXZhdGl2ZXMgb2Ygc3BlZWNoIGZlYXR1cmVzKSBhdHRlbnVhdGVzIHRoaXMgcHJvYmxlbS4gV2UgcHJvcG9zZSB0aGUgdXNlIG9mIFNlZ21lbnRlZC1NZW1vcnkgUmVjdXJyZW50IE5ldXJhbCBOZXR3b3JrcyB0byBsZWFybiB0aGUgZnVsbCBzcGVjdHJ1bSBvZiBzcGVlY2ggZHluYW1pY3MuClRoZXJlZm9yZSwgdGhlIGR5bmFtaWNhbCBmZWF0dXJlcyBjYW4gYmUgcmVtb3ZlZCBmb3JtIHRoZSBpbnB1dCBkYXRhLiBUaGUgcmVzdWx0aW5nIG5ldXJhbCBuZXR3b3JrIGNsYXNzaWZpZXIgaXMgY29tcGFyZWQgdG8gSE1NcyB0aGF0IHVzZSB0aGUgcmVkdWNlZCBmZWF0dXJlIHNldCBhcyB3ZWxsIGFzIHRvIEhNTXMgdGhhdCB3b3JrIHdpdGggdGhlIGZ1bGwgc2V0IG9mIGZlYXR1cmVzLiBUaGUgbmV0d29ya3MgcGVyZm9ybSBjb21wYXJhYmxlIHRvIEhNTXMgd2hpbGUgdXNpbmcgc2lnbmlmaWNhbnRseSBsZXNzIGZlYXR1cmVzLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2NDQwLzM2NDQwLnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+MjI8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPklOVkVSU0UgTUVUSE9EIEZPUiBUSEUgUkVUUklFVkFMIE9GIE9DRUFOIFZFUlRJQ0FMIFBST0ZJTEVTIFVTSU5HIFNFTEYgT1JHQU5JWklORyBNQVBTIEFORCBISURERU4gTUFSS09WIE1PREVMUyAtIEFwcGxpY2F0aW9uIG9uIE9jZWFuIENvbG91ciBTYXRlbGxpdGUgSW1hZ2UgSW52ZXJzaW9uPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+Q2hhcmFudG9uaXMgQW5hc3Rhc2UgQWxleGFuZHJlLCBCcmFqYXJkIEp1bGllbiwgTW91bGluIEN5cmlsLCBCYXJkYW4gRm91YWQgYW5kIFRoaXJpYSBTeWx2aWU8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoaXMgcGFwZXIgcHJlc2VudHMgYSBzdGF0aXN0aWNhbCBpbnZlcnNpb24gbWV0aG9kIHVzZWQgdG8gaW5mZXIgM0QgZGF0YSBmcm9tIDJEIGltYWdpbmcuIFRoZSBtZXRob2RvbG9neSBpcyBiYXNlZCBvbiBhIGNvbWJpbmF0aW9uIG9mIHRoZSBTZWxmIE9yZ2FuaXNpbmcgTWFwcyBhbmQgdGhlIEhpZGRlbiBNYXJrb3YgTW9kZWxzLiBUaGUgbWV0aG9kIGhhcyBiZWVuIHZhbGlkYXRlZCBieSBpbmZlcnJpbmcgdGhlIG9jZWFuaWMgdmVydGljYWwgcHJvZmlsZXMgb2YgQ2hsb3JvcGh5bGwtQSBiYXNlZCBvbiBzZWEtc3VyZmFjZSBkYXRhLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2NDQ3LzM2NDQ3LnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+Mjg8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPk1PREVMTElORyBWSVRSSUZJRUQgR0xBU1MgVklTQ09TSVRZIElOIEEgTlVDTEVBUiBGVUVMIFJFUFJPQ0VTU0lORyBQTEFOVCBVU0lORyBORVVSQUwgTkVUV09SS1M8L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5LYXR5IEZlcmd1c29uLCBKaWUgWmhhbmcsIENhcmwgU3RlZWxlLCBDb2xpbiBDbGFya2UgYW5kIEp1bGlhbiBNb3JyaXM8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoaXMgcGFwZXIgcHJlc2VudHMgYSBzdHVkeSBvZiB1c2luZyBuZXVyYWwgbmV0d29ya3MgdG8gbW9kZWwgdGhlIHZpc2Nvc2l0eSBvZiBzaW11bGF0ZWQgdml0cmlmaWVkIGhpZ2hseSBhY3RpdmUgd2FzdGUgb3ZlciBhIHJhbmdlIG9mIHRlbXBlcmF0dXJlcyBhbmQgY29tcG9zaXRpb25zLiBWaXRyaWZpY2F0aW9uIGlzIHRoZSBwcm9jZXNzIG9mIGluY29ycG9yYXRpbmcgdGhlIGhpZ2hseSBhY3RpdmUgbGlxdWlkIHdhc3RlIGludG8gdGhlIGdsYXNzIGJ5IGNoZW1pY2FsbHkgY2hhbmdpbmcgdGhlIHN0cnVjdHVyZSBvZiB0aGUgZ2xhc3MgZm9yIG51Y2xlYXIgZnVlbCByZXByb2Nlc3NpbmcuIEEgbWV0aG9kb2xvZ3kgaXMgbmVlZGVkIHRvIGRldGVybWluZSBob3cgdGhlIHZpc2Nvc2l0eSB3aWxsIGNoYW5nZSBhcyBhIHJlc3VsdCBvZiBhIG5ldyBmZWVkLiBGZWVkIGZvcndhcmQgbmV1cmFsIG5ldHdvcmtzIGFyZSB1c2VkIHRvIG1vZGVsIHRoZSB2aXNjb3NpdHkgb2YgbmV3IHByb2R1Y3QgZ2xhc3Nlcy4gVGhlIHJlc3VsdHMgYXJlIHZlcnkgcHJvbWlzaW5nLCB3aXRoIGEgTWVhbiBTcXVhcmVkIEVycm9yIChNU0UpIG9mIDEuOHgxMC00IG9uIHRoZSBzY2FsZWQgdW5zZWVuIHZhbGlkYXRpb24gZGF0YSwgaGlnaGxpZ2h0aW5nIHRoZSBoaWdoIGFjY3VyYWN5IG9mIHRoZSBtb2RlbC4gU2Vuc2l0aXZpdHkgYW5hbHlzaXMgb2YgdGhlIGRldmVsb3BlZCBtb2RlbCBwcm92aWRlcyBpbnNpZ2h0IG9uIHRoZSBpbXBhY3Qgb2YgY29tcG9zaXRpb24gb24gdmlzY29zaXR5LjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2NTQwLzM2NTQwLnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+MzA8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPkVGRkVDVCBPRiBDT1JSRUxBVElPTiBCRVRXRUVOIENMSU5JQ0FMIFRFU1RTIE9OIFRIRSBQRVJGT1JNQU5DRSBPRiBBIE1VTFRJUExFIFRFU1QtQkFTRUQgRElBR05PU1RJQyBTWVNURU0gLSBTdHVkeSB3aXRoIGEgTG9naXN0aWMgTW9kZWwgYW5kIE5ldXJhbCBOZXRzPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+Tm9yaWFraSBJa2VkYSwgS2FpIElzaGlkYSwgSGFydWthenUgVHN1cnV0YSBhbmQgQWtpaGlybyBUYWtldWNoaTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+VG8gZXhhbWluZSB0aGUgaW1wcm92ZW1lbnQgb2YgZGlhZ25vc3RpYyBwZXJmb3JtYW5jZSBieSBjb21iaW5pbmcgbXVsdGlwbGUgdGVzdHMsIGFuIGFsZ29yaXRobSB3YXMgZGV2ZWxvcGVkIGZvciBnZW5lcmF0aW9uIG9mIHNpbXVsYXRlZCBkYXRhIHdpdGggYXJiaXRyYXJ5IHNlbnNpdGl2aXR5LCBzcGVjaWZpY2l0eSBhbmQgaW50ZXItdGVzdCBjb3JyZWxhdGlvbnMuIFRoZSBlZmZlY3RzIG9mIHRoZSBudW1iZXIgb2YgdGVzdHMgYW5kIGludGVyLXRlc3QgY29ycmVsYXRpb25zIG9uIHRoZSBkaWFnbm9zdGljIHBlcmZvcm1hbmNlIHdlcmUgc3R1ZGllZCB1c2luZyBhIGxvZ2lzdGljIG1vZGVsIGFuZCBuZXVyYWwgbmV0d29yayAoTk4pIG1vZGVscy4gVGhlIGRpYWdub3N0aWMgcGVyZm9ybWFuY2UgbWVhc3VyZWQgYnkgdGhlIGNvbmNvcmRhbmNlIGluZGV4LCBjLCBpbmNyZWFzZWQgYXMgdGhlIG51bWJlciBvZiB0ZXN0cyBpbmNyZWFzZWQuIEZvciB0aGUgc2FtZSBudW1iZXIgb2YgdGVzdHMsIHRoZSBkaWFnbm9zdGljIHBlcmZvcm1hbmNlIHdhcyBsb3dlcmVkIGJ5IHBvc2l0aXZlIGNvcnJlbGF0aW9uIGFuZCB3YXMgZWxldmF0ZWQgYnkgbmVnYXRpdmUgY29ycmVsYXRpb24uIEltcHJvdmVtZW50IG9mIHRoZSBwZXJmb3JtYW5jZSB3YXMgbm90IG9idGFpbmVkIGJ5IGluY3JlYXNpbmcgdGhlIG51bWJlciBvZiBOTiBsYXllcnMuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY1NTcvMzY1NTcucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij4zMzwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+RUVHIE5PSVNFIENBTkNFTExBVElPTiBCQVNFRCBPTiBORVVSQUwgTkVUV09SSzwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPkouIE1hdGVvLCBBLiBUb3JyZXMsIEMuIFNvcmlhLCBNJiMxNzA7LiBHYXJjJiMyMzc7YSBhbmQgQy4gUyYjMjI1O25jaGV6PC9oND48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkFic3RyYWN0OjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij5FbGVjdHJvZW5jZXBoYWxvZ3JhbSAoRUVHKSByZWNvcmRpbmdzIG9mdGVuIGV4cGVyaWVuY2UgaW50ZXJmZXJlbmNlIGJ5IGRpZmZlcmVudCBraW5kcyBvZiBub2lzZSwgaW5jbHVkaW5nIHdoaXRlIGFuZCBtdXNjbGUsIHNldmVyZWx5IGxpbWl0aW5nIGl0cyB1dGlsaXR5LiBBcnRpZmljaWFsIG5ldXJhbCBuZXR3b3JrcyAoQU5OcykgYXJlIGVmZmVjdGl2ZSBhbmQgcG93ZXJmdWwgdG9vbHMgZm9yIHJlbW92aW5nIGludGVyZmVyZW5jZSBmcm9tIEVFR3MsIGJ1dCB0aGUgcXVhbGl0eSBvZiB0aGUgc2VwYXJhdGlvbiBpcyBoaWdobHkgZGVwZW5kZW50IG9uIHRoZSB0eXBlIGFuZCBkZWdyZWUgb2YgY29udGFtaW5hdGlvbi4gU2V2ZXJhbCBtZXRob2RzIGhhdmUgYmVlbiBkZXZlbG9wZWQsIGJ1dCBBTk5zIGFwcGVhciB0byBiZSB0aGUgbW9zdCBlZmZlY3RpdmUgZm9yIHJlZHVjaW5nIG11c2NsZSBjb250YW1pbmF0aW9uLCBlc3BlY2lhbGx5IHdoZW4gdGhlIGNvbnRhbWluYXRpb24gaXMgZ3JlYXRlciBpbiBhbXBsaXR1ZGUgdGhhbiB0aGUgYnJhaW4gc2lnbmFsLiBXZSBwcm9wb3NlIGFuIEFOTiBhcyBhIGZpbHRlciBmb3IgRUVHIHJlY29yZGluZ3MsIGRldmVsb3BpbmcgYSBub3ZlbCBmcmFtZXdvcmsgZm9yIGludmVzdGlnYXRpbmcgYW5kIGNvbXBhcmluZyB0aGUgcmVsYXRpdmUgcGVyZm9ybWFuY2Ugb2YgYW4gQU5OIGluY29ycG9yYXRpbmcgcmVhbCBFRUcgcmVjb3JkaW5ncyBmcm9tIHRoZSBDbGluaWNhbCBOZXVyb3BoeXNpb2xvZ3kgU2VydmljZSBhdCB0aGUgVmlyZ2VuIGRlIGxhIEx1eiBIb3NwaXRhbCBpbiBDdWVuY2EgKFNwYWluKS4gVGhpcyBtZXRob2Qgd2FzIGJhc2VkIG9uIGEgZ3Jvd2luZyBBTk4gdGhhdCBvcHRpbWlzZWQgdGhlIG51bWJlciBvZiBub2RlcyBpbiB0aGUgaGlkZGVuIGxheWVyIGFuZCB0aGUgY29lZmZpY2llbnQgbWF0cmljZXMsIHdoaWNoIHdlcmUgb3B0aW1pc2VkIGJ5IHRoZSBzaW11bHRhbmVvdXMgcGVydHVyYmF0aW9uIG1ldGhvZC4gVGhlIEFOTiBpbXByb3ZlZCB0aGUgcmVzdWx0cyBvYnRhaW5lZCB3aXRoIHRoZSBjb252ZW50aW9uYWwgRUVHIGZpbHRlcmluZyB0ZWNobmlxdWVzOiB3YXZlbGV0LCBzaW5ndWxhciB2YWx1ZSBkZWNvbXBvc2l0aW9uLCBwcmluY2lwYWwgY29tcG9uZW50IGFuYWx5c2lzLCBhZGFwdGl2ZSBmaWx0ZXJpbmcgYW5kIGluZGVwZW5kZW50IGNvbXBvbmVudHMgYW5hbHlzaXMuIFRoZSBzeXN0ZW0gd2FzIGV2YWx1YXRlZCB3aXRoaW4gYSB3aWRlIHJhbmdlIG9mIEVFRyBzaWduYWxzIGluIHdoaWNoIG5vaXNlIHdhcyBhZGRlZC4gVGhlIHByZXNlbnQgc3R1ZHkgaW50cm9kdWNlcyBhIG1ldGhvZCBvZiByZWR1Y2luZyBhbGwgRUVHIGludGVyZmVyZW5jZSBzaWduYWxzIHdpdGggbG93IEVFRyBkaXN0b3J0aW9uIGFuZCBoaWdoIG5vaXNlIHJlZHVjdGlvbi48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjU3MS8zNjU3MS5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjQwPC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5FTlNFTUJMRSBSQU5ET00tU1VCU0VUIFNWTTwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPktlbmppIE5pc2hpZGEsIEp1biBGdWppa2kgYW5kIFRha2lvIEt1cml0YTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+SW4gdGhpcyBwYXBlciwgdGhlIEVuc2VtYmxlIFJhbmRvbS1TdWJzZXQgU1ZNIGFsZ29yaXRobSBpcyBwcm9wb3NlZC4gSW4gYSByYW5kb20tc3Vic2V0IFNWTSwgbXVsdGlwbGUgU1ZNcyBhcmUgdXNlZCwgYW5kIGVhY2ggU1ZNIGlzIGNvbnNpZGVyZWQgYSB3ZWFrIGNsYXNzaWZpZXI7IGEgc3Vic2V0IG9mIHRyYWluaW5nIHNhbXBsZXMgaXMgcmFuZG9tbHkgc2VsZWN0ZWQgZm9yIGVhY2ggd2VhayBjbGFzc2lmaWVyIHdpdGggcmFuZG9tbHkgc2V0IHBhcmFtZXRlcnMsIGFuZCB0aGUgU1ZNcyB3aXRoIG9wdGltYWwgd2VpZ2h0cyBhcmUgY29tYmluZWQgZm9yIGNsYXNzaWZpY2F0aW9uLiBBIGxpbmVhciBTVk0gaXMgYWRvcHRlZCB0byBkZXRlcm1pbmUgdGhlIG9wdGltYWwga2VybmVsIHdlaWdodHM7IHRoZXJlZm9yZSwgYW4gZW5zZW1ibGUgcmFuZG9tLXN1YnNldCBTVk1pcyBiYXNlZCBvbiBhIGhpZXJhcmNoaWNhbCBTVk1tb2RlbC4gQW4gZW5zZW1ibGUgcmFuZG9tLXN1YnNldCBTVk0gb3V0cGVyZm9ybXMgYSBzaW5nbGUgU1ZNZXZlbiB3aGVuIHVzaW5nIGEgc21hbGwgbnVtYmVyIG9mIHNhbXBsZXMgKDEwIG9yIDEwMCBzYW1wbGVzIG91dCBvZiAyMCwwMDAgdHJhaW5pbmcgc2FtcGxlcyBmb3IgZWFjaCB3ZWFrIGNsYXNzaWZpZXIpOyBpbiBjb250cmFzdCwgYSBzaW5nbGUgU1ZNIHJlcXVpcmVzIG1vcmUgdGhhbiA0LDAwMCBzdXBwb3J0IHZlY3RvcnMuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY2ODkvMzY2ODkucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij40NjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+SU1QUk9WSU5HIFRIRSBQRVJGT1JNQU5DRSBPRiBUSEUgU1VQUE9SVCBWRUNUT1IgTUFDSElORSBJTiBJTlNVUkFOQ0UgUklTSyBDTEFTU0lGSUNBVElPTiAtIEEgQ29tcGFyaXRpdmUgU3R1ZHk8L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5NbHVuZ2lzaSBEdW1hLCBCaGVraXNpcGhvIFR3YWxhLCBUc2hpbGlkemkgTWFyd2FsYSBhbmQgRnVsdWZoZWxvIFYuIE5lbHdhbW9uZG88L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoZSBzdXBwb3J0IHZlY3RvciBtYWNoaW5lIGlzIGEgY2xhc3NpZmljYXRpb24gdGVjaG5pcXVlIHVzZWQgaW4gbGluZWFyIGFuZCBub24tIGxpbmVhciBjb21wbGV4IHByb2JsZW1zLiBJdCB3YXMgc2hvd24gdGhhdCB0aGUgcGVyZm9ybWFuY2Ugb2YgdGhlIHRlY2huaXF1ZSBkZWNyZWFzZXMgc2lnbmlmaWNhbnRseSBpbiB0aGUgcHJlc2VuY2Ugb2YgZXNjYWxhdGluZyBtaXNzaW5nIGRhdGEgaW4gdGhlIGluc3VyYW5jZSBkb21haW4uIEZ1cnRoZXJtb3JlIHRoZSByZXNpbGllbmNlIG9mIHRoZSB0ZWNobmlxdWUgd2hlbiB0aGUgcXVhbGl0eSBvZiB0aGUgZGF0YSBkZXRlcmlvcmF0ZXMgaXMgd2Vhay4gV2hlbiBkZWFsaW5nIHdpdGggbWlzc2luZyBkYXRhLCB0aGUgc3VwcG9ydCB2ZWN0b3IgbWFjaGluZSB1c2VzIHRoZSBtZWFuLW1vZGUgc3RyYXRlZ3kgdG8gcmVwbGFjZSBtaXNzaW5nIHZhbHVlcy4gSW4gdGhpcyBwYXBlciwgd2UgcHJvcG9zZSB0aGUgdXNlIG9mIHRoZSBhdXRvYXNzb2NpYXRpdmUgbmV0d29yayBhbmQgdGhlIGdlbmV0aWMgYWxnb3JpdGhtIGFzIGFsdGVybmF0aXZlIHN0cmF0ZWdpZXMgdG8gaGVscCBpbXByb3ZlIHRoZSBjbGFzc2lmaWNhdGlvbiBwZXJmb3JtYW5jZSBhcyB3ZWxsIGFzIGluY3JlYXNlIHRoZSByZXNpbGllbmNlIG9mIHRoZSB0ZWNobmlxdWUuIEEgY29tcGFyYXRpdmUgc3R1ZHkgaXMgY29uZHVjdGVkIHRvIHNlZSB3aGljaCBvZiB0aGUgdGVjaG5pcXVlcyBoZWxwcyB0aGUgc3VwcG9ydCB2ZWN0b3IgbWFjaGluZSBpbXByb3ZlIGluIHBlcmZvcm1hbmNlIGFuZCBzdXN0YWluIHJlc2lsaWVuY2UuIFRoZSB0cmFpbmluZyBkYXRhIHdpdGggY29tcGxldGVseSBvYnNlcnZhYmxlIGRhdGEgaXMgdXNlZCB0byBjb25zdHJ1Y3QgdGhlIHN1cHBvcnQgdmVjdG9yIG1hY2hpbmUgYW5kIHRlc3RpbmcgZGF0YSB3aXRoIG1pc3NpbmcgdmFsdWVzIGlzIHVzZWQgdG8gbWVhc3VyaW5nIHRoZSBhY2N1cmFjeS4gVGhlIHJlc3VsdHMgc2hvdyB0aGF0IGJvdGggbW9kZWxzIGhlbHAgaW5jcmVhc2UgcmVzaWxpZW5jZSB3aXRoIHRoZSBhdXRvYXNzb2NpYXRpdmUgbmV0d29yayBzaG93aW5nIGJldHRlciBvdmVyYWxsIHBlcmZvcm1hbmNlIGltcHJvdmVtZW50LjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2NzM4LzM2NzM4LnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+NTI8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPkVPR1NUVURJTyAtIEEgU29mdHdhcmUgUGxhdGZvcm0gZm9yIFByb2Nlc3NpbmcgRWxlY3Ryb29jdWxvZ3JhcGh5IFJlY29yZGluZ3M8L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5SLiBBLiBCZWNlcnJhLUdhcmMmIzIzNzthLCBSLiBWLiBHYXJjJiMyMzc7YSwgRi4gUm9qYXMsIEouIEdvbnomIzIyNTtsZXosIEIuIFNhbiBSb20mIzIyNTtuIGFuZCBMLiBWZWwmIzIyNTt6cXVlejwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+QW5hbHlzaXMgb2Ygc2FjY2FkaWMgZXllIG1vdmVtZW50cyBpcyBhIGZ1bmRhbWVudGFsIHRhc2sgZm9yIHRoZSBzdHVkeSBvZiBkaWZmZXJlbnQgbmV1cm9sb2dpY2FsIGRpc29yZGVycy4gVGhlIENlbnRlciBvZiBSZXNlYXJjaCBhbmQgUmVoYWJpbGl0YXRpb24gb2YgSGVyZWRpdGFyeSBBdGF4aWFzIChDSVJBSCkgbG9jYXRlZCBpbiBIb2xndSYjMjM3O24sIEN1YmE7IHVzZXMgdGhpcyB0ZWNobmlxdWUgaW4gb3JkZXIgdG8gc3R1ZHkgdGhlIGV2b2x1dGlvbiBvZiBtYW55IGRpZmZlcmVudCBhdGF4aWFzLiBOZXZlcnRoZWxlc3MsIGN1cnJlbnQgYXZhaWxhYmxlIHNvZnR3YXJlIGFwcGxpY2F0aW9ucyBkbyBub3QgZmlsbCB0aGUgcmVxdWlyZW1lbnRzIG5lZWRlZCBieSB0aGUgQ0lSQUjigJlzIHN0YWZmIHRvIGNvbXBsZXRlIHRoZWlyIHByb2Nlc3NpbmcgcHJvdG9jb2wsIGFzIHRoZXkgZG8gbm90IHJ1biBpbiBtb2Rlcm4gb3BlcmF0aW5nIHN5c3RlbXMgb3IgYXJlIHBvb3JseSB1c2FibGUuIEVvZ1N0dWRpbyB3YXMgY3JlYXRlZCB3aXRoIHRoZSBvYmplY3RpdmUgb2YgZmlsbGluZyB0aGUgZ2FwIGxlZnQgYnkgdGhlc2UgYXBwbGljYXRpb25zLiBJdCBpcyBzaWduYWwgcHJvY2Vzc2luZyBwbGF0Zm9ybSBiYXNlZCBvbiBleHRlbnNpYmxlIHBsdWdpbnMgdGhhdCBtZWV0IHRoZSByZXF1aXJlbWVudHMgbWFkZSBieSBDSVJBSOKAmXMgcmVzZWFyY2hlcnMuIEZvciB0aGUgcHJvY2Vzc2luZyBhbmQgZGV0ZXJtaW5hdGlvbiBvZiB0aGUgc2lnbmlmaWNhdGl2ZSBwb2ludHMgb2YgdGhlIHNhY2NhZGljIGV5ZSBtb3ZlbWVudHMsIHNvZnQgY29tcHV0aW5nIHRlY2huaXF1ZXMsIHN1Y2ggYXMgaW5kZXBlbmRlbnQgY29tcG9uZW50IGFuYWx5c2lzLCB3ZXJlIGFwcGxpZWQuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY3ODIvMzY3ODIucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij41NDwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+SURFTlRJRklDQVRJT04gT0YgQ09SUkVMQVRFRCBQQVRURVJOUyBCWSBWRUNUT1IgUEVSQ0VQVFJPTiBXSVRIIEJJTkFSSVpFRCBTWU5BUFRJQyBDT0VGRklDSUVOVFM8L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5WbGFkaW1pciBLcnl6aGFub3Zza2l5PC9oND48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkFic3RyYWN0OjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij5QcmVzZW50IHBhcGVyIGlzIGRlZGljYXRlZCB0byBpZGVudGlmaWNhdGlvbiBvZiBjb3JyZWxhdGVkIHJlZmVyZW5jZSBwYXR0ZXJucy4gQ29ycmVsYXRpb24gb2YgcmVmZXJlbmNlIHBhdHRlcm5zIHBlciBzZSBzaWduaWZpY2FudGx5IHJlZHVjZXMgcHJvYmFiaWxpdHkgb2YgYW4gYWRlcXVhdGUgaWRlbnRpZmljYXRpb24gb2YgYSB2ZWN0b3IgbmV1cmFsIG5ldHdvcmsuIEl0IGhhcyBiZWVuIGRlbW9uc3RyYXRlZCBpbiB0aGUgcHJlc2VudCB3b3JrIHRoYXQgdGhlIGJpbmFyaXplZCBzeW5hcHRpYyBjb2VmZmljaWVudHMgbmV0d29ya3MgYXJlIGZhciBtb3JlIGVmZmljaWVudCwgYWNjdXJhdGUgYW5kIHJlbGlhYmxlIGluIHRlcm1zIG9mIGNvcnJlbGF0ZWQgcmVmZXJlbmNlIHBhdHRlcm5zIGlkZW50aWZpY2F0aW9uLjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+NTY8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPlNJWCBORUNFU1NBUlkgUVVBTElUSUVTIE9GIFNFTEYtTEVBUk5JTkcgU1lTVEVNUyAtIEEgU2hvcnQgQnJhaW5zdG9ybWluZzwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPkdhYnJpZWxlIFBldGVyczwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+SW4gdGhpcyBwb3NpdGlvbiBwYXBlciB0aGUgYnJvYWQgaXNzdWUgb2YgbGVhcm5pbmcgYW5kIHNlbGYtb3JnYW5pc2F0aW9uIGlzIGFkZHJlc3NlZC4gSSBkZWFsIHdpdGggdGhlIHF1ZXN0aW9uIGhvdyBiaW9sb2dpY2FsIGFuZCB0ZWNobm9sb2dpY2FsIGluZm9ybWF0aW9uIHByb2Nlc3Npbmcgc3lzdGVtcyBjYW4gYXV0b25vbW91c2x5IGFjcXVpcmUgY29nbml0aXZlIGNhcGFiaWxpdGllcyBvbmx5IGZyb20gZGF0YSBhdmFpbGFibGUgaW4gdGhlIGVudmlyb25tZW50LiBJbiB0aGUgbWFpbiBwYXJ0IEkgY2xhaW0gc2l4IHF1YWxpdGllcyB0aGF0IGFyZSwgaW4gbXkgb3BpbmlvbiwgbmVjZXNzYXJ5IHF1YWxpdGllcyBvZiBzZWxmLWxlYXJuaW5nIHN5c3RlbXMuIFRoZXNlIHF1YWxpdGllcyBhcmUgKDEpIGhpZXJhcmNoaWNhbCBwcm9jZXNzaW5nLCAoMikgZW1lcmdlbmNlIG9uIGFsbCBsZXZlbHMgb2YgaGllcmFyY2h5LCAoMykgbXVsdGktZGlyZWN0aW9uYWwgaW5mb3JtYXRpb24gdHJhbnNmZXIgYmV0d2VlbiB0aGUgbGV2ZWxzIG9mIGhpZXJhcmNoeSwgKDQpIGdlbmVyYWxpemF0aW9uIGZyb20gZmV3IGV4YW1wbGVzLCAoNSkgZXhwbG9yYXRpb24sIGFuZCAoNikgYWRhcHRpdml0eS4gSSB0cnkgdG8gc3VwcG9ydCBteSBjb25zaWRlcmF0aW9ucyBieSB0aGVvcmV0aWNhbCByZWZsZWN0aW9ucyBhcyB3ZWxsIGFzIGJ5IGFuIGluZm9ybWFsIGludHJvZHVjdGlvbiBvZiBhIHNlbGYtbGVhcm5pbmcgc3lzdGVtIHRoYXQgZmVhdHVyZXMgdGhlc2UgcXVhbGl0aWVzIGFuZCBkaXNwbGF5cyBwcm9taXNpbmcgYmVoYXZpb3IgaW4gb2JqZWN0IHJlY29nbml0aW9uIGFwcGxpY2F0aW9ucy4gQWx0aG91Z2ggdGhpcyBwYXBlciBoYXMgbW9yZSB0aGUgY2hhcmFjdGVyIG9mIGEgYnJhaW5zdG9ybWluZyB0aGUgcHJvcG9zZWQgcXVhbGl0aWVzIGNhbiBiZSByZWdhcmRlZCBhcyByb2FkbWFwIGZvciBwcm9ibGVtcyB0byBiZSBhZGRyZXNzZWQgaW4gZnV0dXJlIHJlc2VhcmNoIGluIHRoZSBmaWVsZCBvZiBhdXRvbm9tb3VzIGxlYXJuaW5nLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2NzkwLzM2NzkwLnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+NjM8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPlBSRUxJTUlOQVJZIFJFU1VMVFMgT0YgQ0xJTklDQUwgVEVTVFMgT0YgQSBORVcgTkVVUkFMLU5FVFdPUkstQkFTRUQgT1RJVElTIE1FRElBIEFOQUxZU0lTIFNZU1RFTTwvaDM+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BdXRob3JzOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDQgY2xhc3M9ImF1dGhvcnMiPk0uIEhhbm51bGEsIFQuIEhvbG1hLCBFLiBMJiMyNDY7ZmdyZW4sIEguIEhpbmt1bGEgYW5kIE0uIFNvcnJpPC9oND48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkFic3RyYWN0OjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij5FdmFsdWF0aW9uIG9mIG1pZGRsZSBlYXIgZWZmdXNpb24gaXMgZXNzZW50aWFsIGluIGRpYWdub3N0aWNzIG9mIG90aXRpcyBtZWRpYS4gSW4gdGhpcyBzdHVkeSBhIG5ldyBvdGl0aXMgbWVkaWEgZGlhZ25vc3RpYyBzeXN0ZW0gYmFzZWQgb24gYWNvdXN0aWMgcmVmbGVjdG9tZXRyeSAoQVIpIHdhcyBwcmVsaW1pbmFyaWx5IGV2YWx1YXRlZCBhbmQgdGVzdGVkIHdpdGggZXhwZXJpbWVudGFsIGNsaW5pY2FsIGRhdGEgb24gMTE0IGVhcnMgb2YgNTcgY2hpbGRyZW4uIEluIHRoZSBzdHVkeSB0aGUgZWFycyBvZiB0aGUgY2hpbGRyZW4gd2VyZSBtZWFzdXJlZCB3aXRoIHRoZSBuZXcgQVIgc3lzdGVtIGFuZCB0aGUgY29ycmVzcG9uZGluZyBlYXIgc3RhdHVzIHdhcyBkZWZpbml0aXZlbHkgYXNzZXNzZWQgaW4gbXlyaW5nb3RvbXkgYnkgbWVhc3VyaW5nIHRoZSBhbW91bnQgb2YgZWZmdXNpb24gaW4gdGhlIG1pZGRsZSBlYXIuIFRoZSBjb2xsZWN0ZWQgZGF0YSBpbmNsdWRlZCBzdWNjZXNzZnVsIG1lYXN1cmVtZW50cyBvZiA3MSBub3JtYWwgZWFycyAobm8gZWZmdXNpb24gaW4gdGhlIG1pZGRsZSBlYXIpIGFuZCA0MyBlYXJzIHdpdGggMC4wMi0wLjM3IGcgb2YgbWlkZGxlIGVhciBlZmZ1c2lvbi4gSW4gdGhlIGFuYWx5c2lzIHRoZSBjb3JyZXNwb25kZW5jZSBiZXR3ZWVuIGEgbmV1cmFsIG5ldHdvcmsgYW5hbHlzaXMgb2YgdGhlIEFSIG1lYXN1cmVtZW50IGRhdGEgYW5kIHRoZSBjb3JyZXNwb25kaW5nIGFtb3VudCBvZiBtaWRkbGUgZWFyIGVmZnVzaW9uIHdhcyBhbmFseXNlZCB1c2luZyBhIGxlYXZlLW9uZS1vdXQgdmFsaWRhdGlvbiBwcm9jZWR1cmUuIFRoZSBwcmVsaW1pbmFyeSByZXN1bHRzIHdlcmUgcHJvbWlzaW5nOyB0aGUgbmV1cmFsIG5ldHdvcmsgYW5hbHlzaXMgcmVzdWx0IGFuZCB0aGUgYW1vdW50IG9mIG1pZGRsZSBlYXIgZWZmdXNpb24gY29ycmVsYXRlZCBzdGF0aXN0aWNhbGx5IHNpZ25pZmljYW50bHkgKHAgJmx0OyAwLjAwMSksIHdpdGggY29ycmVsYXRpb24gY29lZmZpY2llbnQgUiA9IDAuMzcuIEluIGZ1dHVyZSBzdHVkaWVzIG1vcmUgZGF0YSB3aWxsIGJlIGNvbGxlY3RlZCB0byBvYnRhaW4gaGlnaGVyIGNvcnJlbGF0aW9uIGluIHRoZSBhbmFseXNpcy48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjc5Ny8zNjc5Ny5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjY4PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5BIFNUQVRFLVNQQUNFIE5FVVJBTCBORVRXT1JLIEZPUiBNT0RFTElORyBEWU5BTUlDQUwgTk9OTElORUFSIFNZU1RFTVM8L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5LYXJpbWEgQW1vdXJhLCBQYXRyaWNlIFdpcmEgYW5kIFNhaWQgRGplbm5vdW5lPC9oND48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkFic3RyYWN0OjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij5JbiB0aGlzIHBhcGVyLCBhIHNwZWNpZmljIG5ldXJhbC1iYXNlZCBtb2RlbCBmb3IgaWRlbnRpZmljYXRpb24gb2YgZHluYW1pY2FsIG5vbmxpbmVhciBzeXN0ZW1zIGlzIHByb3Bvc2VkLiBUaGlzIGFydGlmaWNpYWwgbmV1cmFsIG5ldHdvcmssIGNhbGxlZCBTdGF0ZS1TcGFjZSBOZXVyYWwgTmV0d29yayAoU1NOTiksIGlzIGRpZmZlcmVudCBmcm9tIG90aGVyIGV4aXN0aW5nIG5ldXJhbCBuZXR3b3Jrcy4gSW5kZWVkLCBpdCB1c2VzIGEgc3RhdGUtc3BhY2UgcmVwcmVzZW50YXRpb24gd2hpbGUgYmVpbmcgYWJsZSB0byBhZGFwdCBhbmQgbGVhcm4gaXRzIHBhcmFtZXRlcnMuIFRoZXNlIHBhcmFtZXRlcnMgYXJlIHRoZSBuZXVyYWwgd2VpZ2h0cyB3aGljaCBhcmUgaW50ZWxsaWdpYmxlIG9yIHVuZGVyc3RhbmRhYmxlLiBBZnRlciBsZWFybmluZywgdGhlIFNTTk4gdGhlcmVmb3JlIGlzIGFibGUgdG8gcHJvdmlkZSBhIHN0YXRlLXNwYWNlIG1vZGVsIG9mIHRoZSBkeW5hbWljYWwgbm9ubGluZWFyIHN5c3RlbS4gRXhhbXBsZXMgYXJlIHByZXNlbnRlZCB3aGljaCBzaG93IHRoZSBjYXBhYmlsaXR5IG9mIHRoZSBTU05OIGZvciBpZGVudGlmaWNhdGlvbiBvZiBtdWx0aXZhcmlhdGUgZHluYW1pY2FsIG5vbmxpbmVhciBzeXN0ZW1zLjwvdGQ+DQogICAgICAgICAgICA8L3RyPjx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnNjaXRlcHJlc3Mub3JnL1BhcGVycy8yMDExLzM2ODA1LzM2ODA1LnBkZiI+RG93bmxvYWQ8L2E+PC90ZD48L3RyPg0KICAgICAgICA8L3RhYmxlPg0KICAgICAgICA8aHIvPg0KICAgICAgICA8dGFibGU+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5QYXBlciBOcjo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+NzQ8L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlRpdGxlOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij48aDMgY2xhc3M9InBhcGVyVGl0bGUiPk1PREVMSU5HIE9GIEFCUkFTSVZFIFdBVEVSIEpFVCBNQUNISU5JTkcgVVNJTkcgVEFHVUNISSBNRVRIT0QgQU5EIEFSVElGSUNJQUwgTkVVUkFMIE5FVFdPUktTPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+TWVuZWxhb3MgUGFwcGFzLCBJb2FubmlzIE50emlhbnR6aWFzLCBKb2huIEtlY2hhZ2lhcyBhbmQgTmlrb2xhb3MgVmF4ZXZhbmlkaXM8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoaXMgd29yayBwcmVzZW50cyBhIGh5YnJpZCBhcHByb2FjaCBiYXNlZCBvbiB0aGUgVGFndWNoaSBtZXRob2QgYW5kIHRoZSBBcnRpZmljaWFsIE5ldXJhbCBOZXR3b3JrcyAoQU5OcykgZm9yIHRoZSBtb2RlbGluZyBvZiBzdXJmYWNlIHF1YWxpdHkgY2hhcmFjdGVyaXN0aWNzIGluIEFicmFzaXZlIFdhdGVyIEpldCBNYWNoaW5pbmcgKEFXSk0pLiBUaGUgc2VsZWN0ZWQgaW5wdXRzIG9mIHRoZSBBTk4gbW9kZWwgYXJlIHRoZSB0aGlja25lc3Mgb2Ygc3RlZWwgc2hlZXQsIHRoZSBub3p6bGUgZGlhbWV0ZXIsIHRoZSBzdGFuZC1vZmYgZGlzdGFuY2UgYW5kIHRoZSB0cmF2ZXJzZSBzcGVlZC4gVGhlIG91dHB1dHMgb2YgdGhlIEFOTiBtb2RlbCBhcmUgdGhlIHN1cmZhY2UgcXVhbGl0eSBjaGFyYWN0ZXJpc3RpY3MsIG5hbWVseSB0aGUga2VyZiBnZW9tZXRyeSBhbmQgdGhlIHN1cmZhY2Ugcm91Z2huZXNzLiBUaGUgZGF0YSB1c2VkIHRvIHRyYWluIHRoZSBBTk4gbW9kZWwgd2FzIHNlbGVjdGVkIGFjY29yZGluZyB0byB0aGUgVGFndWNoaeKAmXMgZGVzaWduIG9mIGV4cGVyaW1lbnRzLiBUaGUgYWNxdWlyZWQgcmVzdWx0cyBpbmRpY2F0ZSB0aGF0IHRoZSBwcm9wb3NlZCBtb2RlbGxpbmcgYXBwcm9hY2ggY291bGQgYmUgZWZmZWN0aXZlbHkgdXNlZCB0byBwcmVkaWN0IHRoZSBrZXJmIGdlb21ldHJ5IGFuZCB0aGUgc3VyZmFjZSByb3VnaG5lc3MgaW4gQVdKTSwgdGh1cyBzdXBwb3J0aW5nIHRoZSBkZWNpc2lvbiBtYWtpbmcgZHVyaW5nIHByb2Nlc3MgcGxhbm5pbmcuPC90ZD4NCiAgICAgICAgICAgIDwvdHI+PHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuc2NpdGVwcmVzcy5vcmcvUGFwZXJzLzIwMTEvMzY4MTEvMzY4MTEucGRmIj5Eb3dubG9hZDwvYT48L3RkPjwvdHI+DQogICAgICAgIDwvdGFibGU+DQogICAgICAgIDxoci8+DQogICAgICAgIDx0YWJsZT4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPlBhcGVyIE5yOjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij44MzwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+QklPTE9HSUNBTExZIElOU1BJUkVEIEVER0UgREVURUNUSU9OIFVTSU5HIFNQSUtJTkcgTkVVUkFMIE5FVFdPUktTIEFORCBIRVhBR09OQUwgSU1BR0VTPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+TWFyaW5lIENsb2dlbnNvbiwgRGVybW90IEtlcnIsIE1hcnRpbiBNY0dpbm5pdHksIFNvbnlhIENvbGVtYW4gYW5kIFFpbmd4aWFuZyBXdTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+SW5zcGlyZWQgYnkgdGhlIHN0cnVjdHVyZSBhbmQgYmVoYXZpb3VyIG9mIHRoZSBodW1hbiB2aXN1YWwgc3lzdGVtLCB3ZSBleHRlbmQgZXhpc3Rpbmcgd29yayB1c2luZyBzcGlraW5nIG5ldXJhbCBuZXR3b3JrcyBmb3IgZWRnZSBkZXRlY3Rpb24gd2l0aCBhIGJpb2xvZ2ljYWxseSBwbGF1c2libGUgaGV4YWdvbmFsIHBpeGVsIGFycmFuZ2VtZW50LiBTdGFuZGFyZCBkaWdpdGFsIGltYWdlcyBhcmUgY29udmVydGVkIGludG8gYSBoZXhhZ29uYWwgcGl4ZWwgcmVwcmVzZW50YXRpb24gYmVmb3JlIGJlaW5nIHByb2Nlc3NlZCB3aXRoIGEgc3Bpa2luZyBuZXVyYWwgbmV0d29yayB3aXRoIHNjYWxhYmxlIGhleGFnb25hbGx5IHNoYXBlZCByZWNlcHRpdmUgZmllbGRzLiBUaGUgcGVyZm9ybWFuY2UgaXMgY29tcGFyZWQgd2l0aCBkaWZmZXJlbnQgc2l6ZWQgcmVjZXB0aXZlIGZpZWxkcyBpbXBsZW1lbnRlZCBvbiBzdGFuZGFyZCByZWN0YW5ndWxhciBpbWFnZXMuIFJlc3VsdHMgaWxsdXN0cmF0ZSB0aGF0IHVzaW5nIGhleGFnb25hbC1zaGFwZWQgcmVjZXB0aXZlIGZpZWxkcyBwcm92aWRlcyBpbXByb3ZlZCBwZXJmb3JtYW5jZSBvdmVyIGEgcmFuZ2Ugb2Ygc2NhbGVzIGNvbXBhcmVkIHdpdGggc3RhbmRhcmQgcmVjdGFuZ3VsYXIgc2hhcGVkIHJlY2VwdGl2ZSBmaWVsZHMgYW5kIGltYWdlcy48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjgyMS8zNjgyMS5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjg0PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5VU0lORyBDTy1FWElTVElORyBBVFRSQUNUT1JTIE9GIEEgU0VOU09SSU1PVE9SIExPT1AgRk9SIFRIRSBNT1RJT04gQ09OVFJPTCBPRiBBIEhVTUFOT0lEIFJPQk9UPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+TWF0dGhpYXMgS3ViaXNjaCwgQmVuamFtaW4gV2VybmVyIGFuZCBNYW5mcmVkIEhpbGQ8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoZSBpbXBsZW1lbnRhdGlvbiBvZiBhIGJpcGVkIHJvYm90IGdhaXQgaXMgYSBjaGFsbGVuZ2luZyB0YXNrIHdpdGhpbiB0aGUgZmllbGQgb2YgbW9iaWxlIHJvYm90aWNzLiBQYXJ0aWN1bGFybHksIHdoZW4gdGhlIHJvYm90IGlzIHN1YmplY3QgdG8gdW5rbm93biBkaXN0dXJiYW5jZSBpbiBjb25zdGFudGx5IGNoYW5naW5nIHRlcnJhaW4sIGEgc3RhYmxlIGFuZCByb2J1c3QgZ2FpdCBpcyBjcnVjaWFsLiBSZWdhcmRpbmcgdGhlIG1hY2hpbmUgdG9nZXRoZXIgd2l0aCB0aGUgY29udHJvbGxlciBhcyBhbiBpbnRlZ3JhdGVkIHN5c3RlbSwgdGhlIER5bmFtaWNhbCBTeXN0ZW1zIEFwcHJvYWNoIHlpZWxkcyBhIG5ldyBwZXJzcGVjdGl2ZSBvbiBsZWdnZWQgcm9ib3RzLiBTbyBjYWxsZWQgTGltaXQgQ3ljbGVXYWxrZXJzIGhhdmUgc2hvd24gdGhlaXIgaW5oZXJlbnQgc3RhYmlsaXR5IGFnYWluc3QgbW9kZXJhdGUgZGlzdHVyYmFuY2VzIG9mIGRpZmZlcmVudCBraW5kcyBiZWNhdXNlIGdhaXRzIGNhbiBiZSBjb25zdHJ1Y3RlZCBhcyBhdHRyYWN0b3JzIG9mIHRoZSBkeW5hbWljYWwgc3lzdGVtLiBIZXJlLCB3ZSB3aWxsIHNob3cgaG93IGNvLWV4aXN0aW5nIGF0dHJhY3RvcnMgaW4gbmV1cmFsIHNlbnNvcmltb3RvciBsb29wcyBjYW4gYmUgdXNlZCBmb3IgdGhlIGNvbnN0cnVjdGlvbiBvZiByb2JvdCBnYWl0cyBhbmQgZm9yIGVhc3kgc3dpdGNoaW5nIGFtb25nIGJlaGF2aW91cnMuIFRoZSByZXN1bHRzIGFyZSBkZW1vbnN0cmF0ZWQgdXNpbmcgYSBodW1hbm9pZCByb2JvdCB3aXRoIG5ldXJhbCBjb250cm9sIGFuZCBpdCBpcyBzaG93biB0aGF0IHdhbGtpbmcgYW5kIHN0YW5kaW5nIHVwcmlnaHQgY2FuIGJlIGltcGxlbWVudGVkIGFzIGNvLWV4aXN0aW5nIGF0dHJhY3RvcnMgb2YgdGhlIHNhbWUgcHVyZSBzZW5zb3JpbW90b3IgbG9vcC48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjgyMi8zNjgyMi5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjg5PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5UaXRsZTo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGgzIGNsYXNzPSJwYXBlclRpdGxlIj5BIENPTVBSRUhFTlNJVkUgRVZBTFVBVElPTiBNT0RFTCBBTkQgSU5URUxMSUdFTlQgUFJFRElDVElPTiBNRVRIT0QgT0YgV0FURVIgQkxPT008L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5aYWl3ZW4gTGl1LCBYaWFveWkgV2FuZyBhbmQgV2VpIFdlaTwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+QW4gaW50ZWdyYXRlZCBldmFsdWF0aXZlIGZ1bmN0aW9uIGFuZCAgaW50ZWxsaWdlbnQgcHJlZGljdGlvbiBtb2RlbCBmb3Igd2F0ZXIgYmxvb20gaW4gbGFrZXMgYmFzZWQgb24gbGVhc3Qgc3F1YXJlcyBzdXBwb3J0IHZlY3RvciBtYWNoaW5lKCBMU1NWTSkgaXMgcHJvcG9zZWQgaW4gdGhpcyBwYXBlciwgaW4gd2hpY2ggbWFpbiBpbmZsdWVuY2UgZmFjdG9yIG9mIG91dGJyZWFrIG9mIHdhdGVyIGJsb29tIGlzIGFuYWx5emVkIGJ5IHJvdWdoIHNldCB0aGVvcnkuIEZpcnN0IHRoZSBzdHVkeSBvZiB0aGUgZnVuY3Rpb24gaW52b2x2ZXMgdGhyZWUgYXNwZWN0czogYWxnYWwgYXZlcmFnZSBhY3RpdmF0aW9uIGVuZXJneSBvZiBwaG90b3N5bnRoZXNpcywgaW50ZWdyYXRlZCBudXRyaXRpb25hbCBzdGF0dXMgaW5kZXgsIGFuZCB0cmFuc3BhcmVuY3ksIHdoaWNoIGFyZSBjb25zaWRlcmVkIGZyb20gdGhlIG1pY3JvY29zbWljIGxldmVsLiwgdGhlIG1hY3Jvc2NvcGljIGxldmVsIGFuZCB0aGUgaW50dWl0aW9uaXN0aWMgbGV2ZWwgcmVzcGVjdGl2ZWx5LiBUaGUgdmFsdWVzIG9mIHRoZSBmdW5jdGlvbiBhcmUgY2xhc3NpZmllZCBwcm9wZXJseS4gQXQgdGhlIG1lYW50aW1lLCB0aGUgd2VpZ2h0IHZhbHVlIG9mIGVhY2ggZXZhbHVhdGl2ZSBwYXJhbWV0ZXIgaXMgZGV0ZXJtaW5lZCBvYmplY3RpdmVseSwgdmlhIHRoZSB0aGVvcnkgb2YgbXVsdGlwbGUgY3JpdGVyaWEgZGVjaXNpb24gbWFraW5nLC4gQnkgYW5hbHl6aW5nIGFuZCBjYWxjdWxhdGluZyB0aGUgZXhwZXJpbWVudGFsIGRhdGEsIHRoZSBvYnRhaW5lZCB2YWx1ZXMgb2YgdGhlIGZ1bmN0aW9uIGFuZCB0aGUgY2xhc3NpZmljYXRpb24gcmVzdWx0cyBjYW4gYmUgdmVyaWZpZWQgdXNpbmcgdGhlIGRhdGEgb2YgdGhlIHNhbXBsZXMuIEdvb2QgYWdyZWVtZW50IGlzIG9idGFpbmVkIGJldHdlZW4gdGhlIHJlc3VsdHMgYW5kIHRoZSBmYWN0LiBUaGUgcmVzdWx0cyBvZiBzaW11bGF0aW9uIGFuZCBhcHBsaWNhdGlvbiBzaG93IHRoYXQ6IExTU1ZNIGltcHJvdmVzIHRoZSBhbGdvcml0aG0gb2Ygc3VwcG9ydCB2ZWN0b3IgbWFjaGluZSAoU1ZNKS47IGl0IGhhcyBsb25nLXRlcm0gcHJlZGljdGlvbiBwZXJpb2QsIHN0cm9uZyBnZW5lcmFsaXphdGlvbiBhYmlsaXR577yMIGhpZ2ggcHJlZGljdGlvbiBhY2N1cmFjeTsgYW5kIG5lZWRzIGEgc21hbGwgYW1vdW50IG9mIHNhbXBsZSBhbmQgdGhpcyBtb2RlbCBwcm92aWRlcyBhbiBlZmZpY2llbnQgbmV3IHdheSBmb3IgbWVkaXVtLXRlcm0gd2F0ZXIgYmxvb20gcHJlZGljdGlvbi48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjgyNy8zNjgyNy5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjEwMDwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+TUVBTiBGSUVMRCBNT05URSBDQVJMTyBTVFVESUVTIE9GIEFTU09DSUFUSVZFIE1FTU9SWSAtIFVuZGVyc3RhbmRpbmcgdGhlIER5bmFtaWNzIG9mIGEgTWFueS1wYXR0ZXJuIE1vZGVsPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+SXNoIERoYW5kIGFuZCBNYW5vcmFuamFuIFAuIFNpbmdoPC9oND48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkFic3RyYWN0OjwvdGQ+DQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dDb250ZW50Ij5EeW5hbWljcyBvZiBhIEhlYmJpYW4gbW9kZWwgb2YgYXNzb2NpYXRpdmUgbWVtb3J5IGlzIHN0dWRpZWQgdXNpbmcgTWVhbiBmaWVsZCBNb250ZS1DYXJsbyBtZXRob2QuIFVuZGVyIHRoZSBhc3N1bXB0aW9uIG9mIGluZmluaXRlIHN5c3RlbSwgd2UgaGF2ZSBkZXJpdmVkIHNpbmdsZS1zcGluIGVxdWF0aW9ucywgdXNpbmcgdGhlIGdlbmVyYXRpbmcgZnVuY3Rpb25hbCBtZXRob2QgZnJvbSBzdGF0aXN0aWNhbCBtZWNoYW5pY3MsIGZvciB0aGUgcHVycG9zZSBvZiBzaW11bGF0aW9ucy4gVGhpcyBhcHByb2FjaCBjaXJjdW12ZW50cyB0aGUgc3Ryb25nIGZpbml0ZS1zaXplIGVmZmVjdHMgb2YgdGhlIHVzdWFsIGNhbGN1bGF0aW9ucyBvbiB0aGlzIHN5c3RlbS4gV2UgaGF2ZSB0cmllZCB0byB1bmRlcnN0YW5kIHRoZSByZXRyaWV2YWwgb2YgYSBzdG9yZWQgcGF0dGVybiBpbiBwcmVzZW5jZSBvZiBhbm90aGVyIGNvbmRlbnNlZCBwYXR0ZXJuIHVuZGVyZ29pbmcgcmVpbmZvcmNlbWVudCwgcG9zaXRpdmUgb3IgbmVnYXRpdmUuIFdlIGZpbmQgdGhhdCB0aGUgcmV0cmlldmFsIGlzIGZhc3RlciBhbmQgdGhlIHJldHJpZXZhbCBxdWFsaXR5IGlzIGJldHRlciBmb3IgdGhlIGNhc2Ugb2YgcG9zaXRpdmUgcmVpbmZvcmNlbWVudC48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjgzOC8zNjgzOC5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjEwMzwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+VVNJTkcgTkVVUkFMIE5FVFdPUktTIFRPIEZPUkVDQVNUIFJFTkVXQUJMRSBFTkVSR1kgUkVTT1VSQ0VTPC9oMz48L3RkPg0KICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDx0cj4gICAgIA0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93VGl0bGUiPkF1dGhvcnM6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoNCBjbGFzcz0iYXV0aG9ycyI+UmFmYWVsIFBlJiMyNDE7YSBhbmQgQXVyZWxpbyBNZWRpbmE8L2g0PjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QWJzdHJhY3Q6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPlRoaXMgY29udHJpYnV0aW9uIHByZXNlbnRzIHRoZSBhcHBsaWNhdGlvbiBvZiBmZWVkLWZvcndhcmQgbmV1cmFsIG5ldHdvcmtzIHRvIHRoZSBwcm9ibGVtIG9mIHRpbWUgc2VyaWVzIGZvcmVjYXN0aW5nLiBUaGlzIGZvcmVjYXN0IHRlY2huaXF1ZSBpcyBhcHBsaWVkIHRvIHRoZSB3YXRlciBmbG93IGFuZCB3aW5kIHNwZWVkIHRpbWUgc2VyaWVzLiBUaGUgcmVzdWx0cyBvYnRhaW5lZCBmcm9tIHRoZSBmb3JlY2FzdGluZyBvZiB0aGVzZSB0d28gcmVuZXdhYmxlIHJlc291cmNlcyBjYW4gYmUgdXNlZCB0byBkZXRlcm1pbmUgdGhlIHBvd2VyIGdlbmVyYXRpb24gY2FwYWNpdHkgb2YgbWljcm8gb3IgbWluaS1oeWRyYXVsaWMgcGxhbnRzLCBhbmQgd2luZCBwYXJrcywgcmVzcGVjdGl2ZWx5LiBUaGUgZm9yZWNhc3QgdmFsdWVzIG9idGFpbmVkIHdpdGggdGhlIG5ldXJhbCBuZXR3b3JrIGFyZSBjb21wYXJlZCBhZ2FpbnN0IHRoZSBvcmlnaW5hbCB0aW1lIHNlcmllcyBkYXRhIGluIG9yZGVyIHRvIHNob3cgdGhlIHByZWNpc2lvbiBvZiB0aGlzIGZvcmVjYXN0IHRlY2huaXF1ZS48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjg0Mi8zNjg0Mi5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICAgICAgPHRhYmxlPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+UGFwZXIgTnI6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjExMjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+VGl0bGU6PC90ZD4NCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd0NvbnRlbnQiPjxoMyBjbGFzcz0icGFwZXJUaXRsZSI+VEhFIFBFUklMUyBPRiBJR05PUklORyBEQVRBIFNVSVRBQklMSVRZIC0gVGhlIFN1aXRhYmlsaXR5IG9mIERhdGEgdXNlZCB0byBUcmFpbiBOZXVyYWwgTmV0d29ya3MgRGVzZXJ2ZXMgTW9yZSBBdHRlbnRpb248L2gzPjwvdGQ+DQogICAgICAgICAgICA8L3RyPg0KICAgICAgICAgICAgPHRyPiAgICAgDQogICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJyb3dUaXRsZSI+QXV0aG9yczo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+PGg0IGNsYXNzPSJhdXRob3JzIj5LZXZpbiBTd2luZ2xlcjwvaDQ+PC90ZD4NCiAgICAgICAgICAgIDwvdHI+DQogICAgICAgICAgICA8dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj5BYnN0cmFjdDo8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0icm93Q29udGVudCI+VGhlIHF1YWxpdHkgYW5kIHF1YW50aXR5ICh3ZSBjYWxsIGl0IHN1aXRhYmlsaXR5IGZyb20gbm93IG9uKSBvZiBkYXRhIHRoYXQgYXJlIHVzZWQgZm9yIGEgbWFjaGluZSBsZWFybmluZyB0YXNrIGFyZSBhcyBpbXBvcnRhbnQgYXMgdGhlIGNhcGFiaWxpdHkgb2YgdGhlIG1hY2hpbmUgbGVhcm5pbmcgYWxnb3JpdGhtIGl0c2VsZi4gWWV0IHRoZXNlIHR3byBhc3BlY3RzIG9mIG1hY2hpbmUgbGVhcm5pbmcgYXJlIG5vdCBnaXZlbiBlcXVhbCB3ZWlnaHQgYnkgdGhlIGRhdGEgbWluaW5nLCBtYWNoaW5lIGxlYXJuaW5nIGFuZCBuZXVyYWwgY29tcHV0aW5nIGNvbW11bml0aWVzLiBEYXRhIHN1aXRhYmlsaXR5IGlzIGxhcmdlbHkgaWdub3JlZCBjb21wYXJlZCB0byB0aGUgZWZmb3J0IGV4cGVuZGVkIG9uIGxlYXJuaW5nIGFsZ29yaXRobSBkZXZlbG9wbWVudC4gVGhpcyBwb3NpdGlvbiBwYXBlciBhcmd1ZXMgdGhhdCBzb21lIG9mIHRoZSBuZXcgYWxnb3JpdGhtcyBhbmQgbWFueSBvZiB0aGUgdHdlYWtzIHRvIGV4aXN0aW5nIGFsZ29yaXRobXMgd291bGQgYmUgdW5uZWNlc3NhcnkgaWYgdGhlIGRhdGEgZ29pbmcgaW50byB0aGVtIHdlcmUgcHJvcGVybHkgcHJlLXByb2Nlc3NlZCwgYW5kIGNhbGxzIGZvciBhIHNoaWZ0IGluIGVmZm9ydCB0b3dhcmRzIGRhdGEgc3VpdGFiaWxpdHkgYXNzZXNzbWVudCBhbmQgY29ycmVjdGlvbi48L3RkPg0KICAgICAgICAgICAgPC90cj48dHI+ICAgICANCiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9InJvd1RpdGxlIj48YSBocmVmPSJodHRwczovL3d3dy5zY2l0ZXByZXNzLm9yZy9QYXBlcnMvMjAxMS8zNjg3MS8zNjg3MS5wZGYiPkRvd25sb2FkPC9hPjwvdGQ+PC90cj4NCiAgICAgICAgPC90YWJsZT4NCiAgICAgICAgPGhyLz4NCiAgICA8L2Rpdj4NCmRkZGQKxIuK1aHrp+8W99vDby4RHmPIC5suPZ7yi+kq7Uvj" /> </div> <div> <input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="2FAFABAE" /> </div> <div> <style> body { background-color: White; font-family: Arial, Helvetica, sans-serif; text-align: center; background-color: #000000; } .content { width: 800px; text-align: left; margin: 0px auto; padding: 24px; /*border: solid 1px #000000;*/ background-color: #FFFFFF; } .title { text-decoration: none; color: #000000; font-size: 36px; font-weight: bold; text-align: left; } .paperTypes { margin-left: 20px; margin-bottom: 10px; font-size: 15px; font-weight: normal; } .menu { margin-top: 20px; margin-bottom: 30px; font-size: 17px; font-weight: bold; } .menuOption { text-decoration: none; color: #000000; text-align: left; margin-left: 10px; margin-right: 10px; } .rowTitle { font-size: 12px; width: 75px; height: 20px; font-weight: bold; text-align: right; padding-right: 3px; } .rowContent { font-size: 12px; text-align: justify; } .area { font-weight: bold; font-size: 17px; } .paperType { font-weight: bold; font-size: 15px; display: block; margin-bottom: 10px; } .paperTitle { font-size: 12px; display: inline; font-weight: normal; } .authors { display: inline; font-weight: normal; font-size: 12px; } </style> <span id="textLb"><div class="content"> <h1 class="title">NCTA 2011 Abstracts</h1> <div class="menu"> <div class="paperTypes"> <a href="#Area0FullPapers" class="menuOption">Full Papers</a> <a href="#Area0ShortPapers" class="menuOption">Short Papers</a> </div> </div> <hr/> <span id="Area0FullPapers" class="paperType">Full Papers</span> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">31</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">NEURAL NETWORKS COMPUTING THE DUNGEAN SEMANTICS OF ARGUMENTATION</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Yoshiaki Goto, Takeshi Hagiwara and Hajime Sawamura</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Argumentation is a leading principle foundationally and functionally for agent-oriented computing where reasoning accompanied by communication plays as essential role in agent interaction. In the work of (Makiguchi and Sawamura, 2007a) (Makiguchi and Sawamura, 2007b), they constructed a simple but versatile neural network for the grounded semantics (the least fixed point semantics) in the Dung’s abstract argumentation framework (Dung, 1995). This paper further develop its theory so that it can decide which argumentation semantics (admissible, stable, complete semantics) a given set of arguments falls into. In doing so, we construct a more simple but versatile neural network that can compute all extensions of the argumentation semantics. The result leads to a neural-symbolic system for argumentation.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36566/36566.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">39</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">EPILEPTIC ELECTROENCEPHALOGRAM SIGNAL CLASSIFICATION BASED ON SPARSE REPRESENTATION</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Jing Wang and Ping Guo</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Epilepsy seizure detection in Electroencephalogram (EEG) is a major issue in the diagnosis of epilepsy and it can be considered as a classification problem. According to the particular property of EEG, a novel method based on sparse representation is proposed for epilepsy detection in this paper. Classification accuracy, robustness on noisy data and parameters (the size of dictionary and the number of features) of proposed method are tested and analysed on the public available data. The proposed method can obtain the highest classification accuracy among the discussed methods when the suitable parameters are set, and the proposed method based on sparse representations for classification is robust to noise. This is consistent with the theory that sparse representations can capture the inherent structure of signal. Furthermore, it is shown by experiments that the optimal selection of the parameters is critical to the performance of epilepsy detection.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36671/36671.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">49</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">INDIVIDUALLY AND COLLECTIVELY TREATED NEURONS AND ITS APPLICATION TO SOM</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Ryotaro Kamimura</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">In this paper, we propose a new type of information-theoretic method to interact individually treated neurons with collectively treated neurons. The interaction is determined by the interaction parameter a. As the parameter a is increased, the effect of collectiveness is larger. On the other hand, when the parameter a is smaller, the effect of individuality becomes dominant. We applied this method to the self-organizing maps in which much attention has been paid to the collectiveness of neurons. This biased attention has, in our view, shown difficulty in interpreting final SOM knowledge. We conducted an preliminary experiment in which the Ionosphere data from the machine learning database was analyzed. Experimental results confirmed that improved performance could be obtained by controlling the interaction of individuality with collectiveness. In particular, the trustworthiness and continuity are gradually increased by making the parameter a larger. In addition, the class boundaries become sharper by using the interaction. </td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36773/36773.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">50</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">DESIGN OF RECURRENT FUZZY NEURAL NETWORK AND GENERAL REGRESSION NEURAL NETWORK CONTROLLER FOR TRAVELING-WAVE ULTRASONIC MOTOR</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Tien-Chi Chen, Tsai-Jiun Ren and Yi-Wei Lou</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">The traveling-wave ultrasonic motor (TWUSM) has significant features such as high holding torque at low speed range, high precision, fast dynamics, simple structure, no electromagnetic interference. The TWUSM has been used in many practical areas such as industrial, medical, robotic, and automotive applications. However, the dynamic model of the TWUSM motor has the nonlinear characteristic and dead-zone problem which varies with many driving conditions. This paper presents a novel control scheme, recurrent fuzzy neural network (RFNN) and general regression neural network (GRNN) controller, for a TWUSM control. The RFNN provides a real-time control such that the TWUSM output can track the reference command. The back-propagation algorithm is applied in the RFNN to automatically adjust the parameters on-line. The adaptive laws of the RFNN are derived by Lyapunov theorem such that the stability of the system can be absolute. The GRNN controller is appended to the RFNN controller to compensate the dead-zone of the TWUSM system using a predefined set. The experimental results are provided to demonstrate the effectiveness of the proposed controller.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36778/36778.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">66</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">FUNCTIONAL NETWORK IN NAVIGATION SATELLITE CLOCK ERROR PREDICTION - A Novel Application</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Ying Wang, Bo Xu and Xuhai Yang</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">In order to describe the characteristics of navigation satellite clock error better and improve navigation satellite clock error prediction accuracy, a satellite clock prediction method based on functional network is proposed in this paper. The method added delay variables to the traditional functional network which can reflect the dynamical characteristics of navigation satellite clock error better than the traditional method without delay variables. The GPS satellites are taken for example; simulation results show that the prediction accuracy of the proposed method is better than those of quadratic polynomial, quadratic polynomial with periodic term, ARIMA and the grey methods.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36801/36801.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">70</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">NEUROFUZZY MIN-MAX NETWORKS IMPLEMENTATION ON FPGA</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Alessandro Cinti and Antonello Rizzi</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Many industrial applications concerning pattern recognition techniques often demand to develop suited low cost embedded systems in charge of performing complex classification tasks in real time. To this aim it is possible to rely on FPGA for designing effective and low cost solutions. Among neurofuzzy classification models, Min-Max networks constitutes an interesting tool, especially when trained by constructive, robust and automatic algorithms, such as ARC and PARC. In this paper we propose a parallel implementation of a Min-Max classifier on FPGA, designed in order to find the best compromise between model latency and resources needed on the FPGA. We show that by rearranging the equations defining the adopted membership function for the hidden layer neurons, it is possible to substantially reduce the number of logic elements needed, without increasing the model latency, i.e. without any need to lower the classifier working frequency.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36807/36807.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">71</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">A MATHEMATICAL MODEL OF A RETINA GANGLION CELL’ RESPONSE TO CONTRAST EDGES</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Hui Wei, Yuan Ren and Shuang Wu</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Contrast edges are important components that constitute a visual scene in the eyes. This paper mathematically models the receptive field (RF) of a retina ganglion cell (GC) and investigates how a GC responds to a contrast edge stimulating its RF. Based on findings on the response properties of GCs and compatible assumptions, the classical Difference of Gaussians model is simplified into the multiplication of the contrast and the normalized response function with respect to the relative position of edge and the center/surround ratio of the RF. The response function indicates that the firing activity of a GC may be determined by the center/surrend ratio rather than the absolute scales of the two areas. The results of numeric simulations turn out to be consistent with physiological data. Our model also partially accounts for the contrast sensitivity of a GC and the invariance of visual perception to contrast.</td> </tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">76</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">OPTIMIZED HIDDEN MARKOV MODEL FOR CLASSIFICATION OF MOTOR IMAGERY EEG SIGNALS</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Kwang-Eun Ko and Kwee-Bo Sim</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">A motor imagery related electroencephalogram (EEG) classification technique through the Hidden Markov Model (HMM) is presented for brain computer interaction (BCI) applications. We describe a method for classification of EEG signals using optimized HMM and the proposed method was focus on the optimization process based on Harmony Search algorithm. By using the raw EEG signals, EEG features obtained as the wavelet coefficients feature vectors between the optimal channels by using discrete wavelet transform approach. In order to optimize the classifier, firstly, Baum-Welch algorithm is applied to parameter learning of HMM. In this case, harmony search algorithm (HSA) is sufficiently adaptable to allow incorporation of other technique, such as Baum-Welch algorithm. In order to prove the performance of the proposed technique, three class motor imagery (left hand, right hand, foot) EEG signals were used as inputs of the optimized HMM classifier. The experimental results confirmed that the proposed method has potential in classifying the motor imagery EEG signals.</td> </tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">87</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">SEMI-SUPERVISED K-WAY SPECTRAL CLUSTERING USING PAIRWISE CONSTRAINTS</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Guillaume Wacquet, Pierre-Alexandre Hébert, Émilie Caillault Poisson and Denis Hamad</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">In this paper, we propose a semi-supervised spectral clustering method able to integrate some limited supervisory information. This prior knowledge consists of pairwise constraints which indicate whether a pair of objects belongs to a same cluster (Must-Link constraints) or not (Cannot-Link constraints). The spectral clustering then aims at optimizing a cost function built as a classical Multiple Normalized Cut measure, modified in order to penalize the non-respect of these constraints. We show the relevance of the proposed method with an illustrative dataset and some UCI benchmarks, for which two-class and multi-class problems are dealt with. In all examples, a comparison with other semi-supervised clustering algorithms using pairwise constraints is proposed.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36825/36825.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">104</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">DECENTRALIZED NEURAL BACKSTEPPING CONTROL FOR AN INDUSTRIAL PA10-7CE ROBOT ARM</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">R. Garcia Hernandez, E. N. Sanchez, M. A. Llama and J. A. Ruz-Hernandez</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">This paper presents a discrete-time decentralized control strategy for trajectory tracking of a seven degrees of freedom (DOF) robot arm. A high order neural network (HONN) is used to approximate a decentralized control law designed by the backstepping technique as applied to a block strict feedback form (BSFF). The neural network learning is performed online by extended Kalman filter. The local controller for each joint use only local angular position and velocity measurements. The feasibility of the proposed scheme is illustrated via simulation.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36843/36843.pdf">Download</a></td></tr> </table> <hr/> <span id="Area0ShortPapers" class="paperType">Short Papers</span> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">17</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">CRITICAL BOUNDARY VECTOR CONCEPT IN NEAREST NEIGHBOR CLASSIFIERS USING K-MEANS CENTERS FOR EFFICIENT TEMPLATE REDUCTION</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Wenjun Xia and Tadashi Shibata</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Dealing with large data sets, the computational cost and resource demands using the nearest neighbor (NN) classifier can be prohibitive. Aiming at efficient template condensation, this paper proposes a template re-duction algorithm for NN classifier by introducing the concept of critical boundary vectors in conjunction with K-means centers. Initially K-means centers are used as substitution for the entire template set. Then, in order to enhance the classification performance, critical boundary vectors are selected according to a newly proposed training algorithm which completes with only single iteration. COIL-20 and COIL-100 databases were utilized for evaluating the performance of image categorization in which the bio-inspired directional-edge-based image feature representation (Suzuki and Shibata. 2004) was employed. UCI iris and UCI Landsat databases were also utilized to evaluate the system for other classification tasks using numerical-valued vectors. Experimental results show that by using the reduced template sets, the proposed algorithm shows a superior performance to NN classifier using all samples, and comparable to Support Vector Machines using Gaussian kernel which are computationally more expensive.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36426/36426.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">18</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">KINETIC MORPHOGENESIS OF A MULTILAYER PERCEPTRON</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Bruno Apolloni, Simone Bassis and Lorenzo Valerio</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">We introduce a morphogenesis paradigm for a neural network where neurons are allowed to move autonomously in a topological space to reach suitable reciprocal positions under an informative perspective. To this end, a neuron is attracted by the mates which are most informative and repelled by those which are most similar to it. We manage the neuron motion with a Newtonian dynamics in a subspace of a framework where topological coordinates match with those reckoning the neuron connection weights. As a result, we have a synergistic plasticity of the network which is ruled by an extended Lagrangian where physics components merge with the common error terms. With the focus on a multilayer perceptron, this plasticity is operated by an extension of the standard back-propagation algorithm which proves robust even in the case of deep architectures. We use two classic benchmarks to gain some insights on the morphology and plasticity we are proposing.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36428/36428.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">26</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">LEARNING METHOD UTILIZING SINGULAR REGION OF MULTILAYER PERCEPTRON</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Ryohei Nakano, Seiya Satoh and Takayuki Ohwaki</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">In a search space of multilayer perceptron having J hidden units, MLP(J), there exists a singular flat region created by the projection of the optimal solution of MLP(J-1). Since such a singular region causes serious slowdown for learning methods, a method for avoiding the region has been aspired. However, such avoiding does not guarantee the quality of the final solution. This paper proposes a new learning method which does not avoid but makes good use of singular regions to find a solution good enough for MLP(J). The potential of the method is shown by our experiments using artificial data sets, XOR problem, and a real data set.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36525/36525.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">41</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">MULTI-REGULARIZATION PARAMETERS ESTIMATION FOR GAUSSIAN MIXTURE CLASSIFIER BASED ON MDL PRINCIPLE</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Xiuling Zhou, Ping Guo and C. L. Philip Chen</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Regularization is a solution to solve the problem of unstable estimation of covariance matrix with a small sample set in Gaussian classifier. And multi-regularization parameters estimation is more difficult than single parameter estimation. In this paper, KLIM_L covariance matrix estimation is derived theoretically based on MDL (minimum description length) principle for the small sample problem with high dimension. KLIM_L is a generalization of KLIM (Kullback-Leibler information measure) which considers the local difference in each dimension. Under the framework of MDL principle, multi-regularization parameters are selected by the criterion of minimization the KL divergence and estimated simply and directly by point estimation which is approximated by two-order Taylor expansion. It costs less computation time to estimate the multi-regularization parameters in KLIM_L than in RDA (regularized discriminant analysis) and in LOOC (leave-one-out covariance matrix estimate) where cross validation technique is adopted. And higher classification accuracy is achieved by the proposed KLIM_L estimator in experiment.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36693/36693.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">42</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">IMPROVED REVISION OF RANKING FUNCTIONS FOR THE GENERALIZATION OF BELIEF IN THE CONTEXT OF UNOBSERVED VARIABLES</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Klaus Häming and Gabriele Peters</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">To enable a reinforcement learning agent to acquire symbolical knowledge, we augment it with a high-level knowledge representation. This representation consists of ordinal conditional functions (OCF) which allow it to rank world models. By this means the agent is enabled to complement the self-organizing capabilities of the low-level reinforcement learning sub-system by reasoning capabilities of a high-level learning component. We briefly summarize the state-of-the-art method how new information is included into the OCF. To improve the emergence of plausible behavior, we then introduce a modification of this method. The viability of this modification is examined first, for the inclusion of conditional information with negated consequents and second, for the generalization of belief in the context of unobserved variables. Besides providing a theoretical justification for this modification, we also show the advantages of our approach in comparison to the state-of-the-art method of revision in a reinforcement learning application.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36695/36695.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">43</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">HAMILTONIAN NEURAL NETWORK-BASED ORTHOGONAL FILTERS - A Basis for Artificial Intelligence</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Wieslaw Citko and Wieslaw Sienko</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">The purpose of the paper is to present how very large scale networks for learning can be designed by using Hamiltonian Neural Network-based orthogonal filters and in particular by using octonionic modules. We claim here that octonionic modules are basic building blocks to implement AI compatible processors.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36715/36715.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">47</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">ADDRESSING THE HARDWARE RESOURCE REQUIREMENTS OF NETWORK-ON-CHIP BASED NEURAL ARCHITECTURES</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Sandeep Pande, Fearghal Morgan, Seamus Cowley, Brian Mc Ginley, Jim Harkin, Snaider Carrillo and Liam Mc Daid</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Network on Chip (NoC) based Spiking Neural Network (SNN) hardware architectures have been proposed as embedded computing systems for data/pattern classification and control applications. As the NoC communication infrastructure is fully reconfigurable, scaling of these systems requires large amounts of distributed on-chip memory for storage of the SNN synaptic connectivity (topology) information. This large memory requirement poses a serious bottleneck for compact embedded hardware SNN implementations. The goal of this work is to reduce the topology memory requirement of embedded hardware SNNs by exploring the combination of fixed and configurable interconnect through the use of fixed sized clusters of neurons and NoC communication infrastructure. This paper proposes a novel two-layered SNN structure as a neural computing element within each neural tile. This architectural arrangement reduces the SNN topology memory requirement by 50%, compared to a non-clustered (single neuron per neural tile) SNN implementation. The paper also proposes sharing of the SNN topology memory between neural cluster outputs within each neural tile, for utilising the on-chip memory efficiently. The paper presents hardware resource requirements of the proposed architecture by mapping SNN topologies with random and irregular connectivity patterns (typical of practical SNNs). The architectural scheme of sharing the SNN topology memory between neural cluster outputs, results in efficient utilisation of the SNN topology memory and helps accommodate larger SNN applications on the proposed architecture. Results illustrate up to a 66% reduction in the required silicon area of the proposed clustered neural tile SNN architecture using shared topology memory compared to the non-clustered, non-shared memory architecture.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36766/36766.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">48</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">SSLLE: SEMI-SUPERVISED LOCALLY LINEAR EMBEDDING BASED LOCALIZATION METHOD FOR INDOOR WIRELESS NETWORKS</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Vinod Kumar Jain, Shashikala Tapaswi and Anupam Shukla</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Due to vast applications of mobile devices and local area wireless networks, location based services are popularized and location information use has become important . The paper proposes a method based on Semisupervised Locally Linear Embedding for localization in indoor wireless networks. Previous methods for location estimation in indoor wireless networks require a large amount of labeled data for learning the radio map. However labeled instances are often difficult, expensive, or time consuming to obtain, as they require great efforts, meanwhile unlabeled data may be relatively easy to collect. So the use of semi-supervised learning is more feasible. In the experiment 101 access points (APs) have been deployed so the Received Signal Strength (RSS) vector received by the mobile station has large dimensions (i.e.101). First we have used Locally Linear Embedding, a dimensional reduction technique to reduce the dimensions of data, and then we have used semi-supervised learning algorithm to learn the radio map. The algorithm performs nonlinear mapping between the received signal strengths from nearby access points and the user’s location. It is shown that the proposed scheme is easy in training and implementation. Experimental results are presented to demonstrate the feasibility of the proposed SSLLE algorithm.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36768/36768.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">51</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">MODIFIED LOCAL BINARY PATTERN (MLBP) FOR ROBUST FACE RECOGNITION</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Mohammad Moinul Islam, Vijayan K. Asari, Mohammed Nazrul Islam and Mohammad A. Karim</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">This paper presents an improvement of Local Binary Pattern (LBP) for robust face representation under varying lighting conditions. Original LBP operator compares pixels in a local neighbourhood with the centre pixel and converts the resultant binary string to 8-bit integer value. So, it is less effective under difficult lighting conditions where variation between pixels is negligible. Our proposed MLBP uses two stage encoding procedure which is more robust in detecting this variation in a local patch. The performance of the proposed method is compared with the baseline LBP under different illumination conditions. </td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36780/36780.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">57</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">AIRCRAFT CLASSIFICATION AND NOISE MAP ESTIMATION BASED ON REAL-TIME MEASUREMENTS OF TAKE-OFF NOISE</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Luis Pastor Sanchez Fernandez, Luis A. Sanchez Perez and Marco A. Moreno Ibarra</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">This paper summarizes a new methodology about aircrafts identification and the generation of estimated noise map based on real time noise measurement for each take-off. The data acquisition is made at 50 Ks/s and 24 bits, during 24 seconds of aircraft take-off. The aircraft identification is made through two parallel neural networks combined with a weighted addition. In order to generate the inputs to the neural networks, the features were obtained from the auto-regressive (AR) model and the 1/12 octave analysis. This system has 13 categories of aircrafts and has an identification level above 84% in real environments. Noise signals generated during aircraft take-off are measured in a fixed location on the airport runway end using a linear 4-microphone array. The noise map is made for each take-off and presents four layers related to four time intervals of take-off. Each time interval is represented by an equivalent point sound source location based on estimation of time-difference-of-arrival (TDOA) of the acoustic wave of aircraft taking-off.</td> </tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">62</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">TRADING FOREIGN CURRENCY USING ARTIFICIAL NEURAL NETWORK STRATEGIES</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Bruce Vanstone and Gavin Finnie</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">The foreign exchange (FX) markets represent an enormous opportunity for traders. These markets have huge liquidity, trade 24 hours a day (except weekends), and allow the use of leverage. This paper takes a simple FX trading strategy and shows how to substantially improve it, using a neural network methodology originally developed by Vanstone & Finnie for creating and enhancing stockmarket trading systems. This result demonstrates the important role neural networks have to play within complex and noisy environments, such as that provided by the intraday FX markets.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36796/36796.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">64</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">LEARNING FROM BIOFEEDBACK - Patient-specific Games for Neuromuscular Rehabilitation</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Ouriel Barzilay and Alon Wolf</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Rehabilitation tasks are generally subjected to the physiotherapist’s qualitative interpretation of the patient’s pathology and needs. Motivated by the recently increasing use of virtual reality in rehabilitation, we propose a novel approach for the design of those biomechanical tasks for an improved patient-specific and entertaining rehabilitation. During training, the subject wears 3D goggles in which virtual tasks are displayed to him. His kinematics and muscles activation are tracked in real time and an inverse model is estimated by artificial neural networks. The resulting inverse model produces a physical exercise according to the observed abilities of the subject and to the expected performance dictated by the physiotherapist. The system offers several advantages to both the patient and the physiotherapist: the tasks can be presented in the form of interactive personalized 3D games with augmented feedback, stimulating the patient’s motivation and reducing the need of constant monitoring from the therapist. Additionally, offline quantitative data from every training session can be stored for further analysis. The results of our study on arm movements suggest an improvement in the training efficiency by 10% for the biceps and by 32% (p=0.02) for the triceps.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36798/36798.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">65</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">SEMI-SUPERVISED EVALUATION OF CONSTRAINT SCORES FOR FEATURE SELECTION</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Mariam Kalakech, Philippe Biela, Denis Hamad and Ludovic Macaire</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Recent feature constraint scores, that analyse must-link and cannot-link constraints between learning samples, reach good performances for semi-supervised feature selection. The performance evaluation is generally based on classification accuracy and is performed in a supervised learning context. In this paper, we propose a semi-supervised performance evaluation procedure, so that both feature selection and classification take into account the constraints given by the user. Extensive experiments on benchmark datasets are carried out in the last section. They demonstrate the effectiveness of feature selection based on constraint analysis.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36800/36800.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">67</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">ON-CENTER/OFF-SURROUND NEURAL NETWORK MODEL FOR OLFACTORY ATTENTION</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Zu Soh, Toshio Tsuji, Noboru Takiguchi and Hisao Ohtake</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Our research group has found behavioral evidence that an attention function exists in the olfactory system similarly to in the visual and auditory systems. In this paper we propose a neural network model that accounts for olfactory attention based on macroscopic neural connections. Specifically, on-center/off-surround connections were assumed to be involved in the attention process in accordance with our hypothesis of an attention window that extracts local activity. The model employs glomerular activity patterns as its input, and compares them with stored patterns focusing on their local activity. The model also can shift and change the attention window with respect to learning. From the simulation results, we confirmed that the model can account for the results of a behavioral experiment on olfactory attention in mice.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36803/36803.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">75</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">NEIGHBORHOOD FUNCTION DESIGN FOR EMBEDDING IN REDUCED DIMENSION</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Jiun-Wei Liou and Cheng-Yuan Liou</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">LLE(Local linear embedding) is a widely used approach for dimension reduction. The neighborhood selection is an important issue for LLE. In this paper, the e-distance approach and a slightly modified version of k-nn method are introduced. For different types of datasets, different approaches are needed in order to enjoy higher chance to obtain better representation. For some datasets with complex structure, the proposed Ɛ-distance approach can obtain better representations. Different neighborhood selection approaches will be compared by applying them to different kinds of datasets.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36812/36812.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">77</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">NEURAL PROCESSING OF LONG LASTING SEQUENCES OF TEMPORAL CODES - Model of Artificial Neural Network based on a Spike Timing-dependant Learning Rule</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Dalius Krunglevicius</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">It has been demonstrated, that spike-timing-dependent plasticity (STDP) learning rule can be applied to train neuron to become selective to a spatiotemporal spike pattern. In this paper, we propose a model of neural network that is capable of memorizing prolonged sequences of different spike patterns and learn aggregated data in a larger temporal window.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36814/36814.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">80</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">DEVELOPING COMBINED FORECASTING MODELS IN OIL INDUSTRY - A Case Study in Opec Oil Demand</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Seyed Hamid Khodadad Hosseini, Adel Azar, Ali Rajabzadeh Ghatari and Arash Bahrammirzaee</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">The purpose of this research is to study the combined forecasting methods in energy section. This method is a new approach which leads to considerable reduction of error in forecasting results. In this study, forecasting has been done through using individual methods (these methods consist of exponential smoothing methods, trend analysis, box-Jenkins, causal analysis, and neural network models) and also combining methods. In next step, the Results of these individual forecasting methods have been combined and compared with artificial neural networks, and multiple regression models. The data we used in this study are: dependent variable: OPEC oil demands from 1960 to 2005, and independent variables: oil price, GDP, other energy demands, population, and added-value in industry (in OECD countries. Computed indexes of errors are: MSE, MAPE, and GAPE which show considerable reductions in the errors of forecasting when using combining models. Therefore, it is suggested that the designed models could be applied for oil demand forecasting.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36817/36817.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">81</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">IMPORTANCE OF INPUT PARAMETER SELECTION FOR SYNTHETIC STREAMFLOW GENERATION OF DIFFERENT TIME STEP USING ANN TECHNIQUES</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Maya Rajnarayn Ray and Arup Kumar Sarma</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Streamflow time series is gaining importance in planning, management and operation of water resources system day by day. In order to plan a system in an optimal way, especially when sufficient historical data are not available, the only choice left is to generate synthetic streamflow. Artificial Neural Network (ANN) has been successfully used in the past for streamflow forecasting and monthly synthetic streamflow generation. The capability of ANN to generate synthetic series of river discharge averaged over different time steps with limited data has been investigated in the present study. While an ANN model with certain input parameters can generate a monthly averaged streamflow series efficiently, it fails to generate a series of smaller time steps with the same accuracy. The scope of improving efficiency of ANN in generating synthetic streamflow by using different combinations of input data has been analyzed. The developed models have been assessed through their application in the river Subansiri in India. Efficiency of the ANN models has been evaluated by comparing ANN generated series with the historical series and the series generated by Thomas-Fiering model on the basis of three statistical parameters- periodical mean, periodical standard deviation and skewness of the series. The results reveal that the periodical mean of the series generated by both Thomas –Fiering and ANN models is in good agreement with that of the historical series. However, periodical standard deviation and skewness coefficient of the series generated by Thomas–Fiering model are inferior to that of the series generated by ANN.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36818/36818.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">82</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">A NEW DISTRIBUTION SYSTEM RECONFIGURATION APPROACH USING PARTICLE SWARM OPTIMIZATION AND NEURAL NETWORK</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">M. W. Siti, B. P. Numbi and D. Nicolae</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">This paper uses artificial intelligent algorithms for reconfiguration of the distribution network. The problem is formulated as an optimization problem where the objective function to be minimized is the power losses, and the constraints are nodal voltage magnitude limits, branch current limits, Kirchhoff’s current law (KCL), Kirchhoff’s voltage law (KVL) and the network radiality condition. While the state (on-off) of the tie switch is considered as control or independent variable, the nodal voltage magnitude, branch current are considered as state or dependent variables. These state variables are continuous whilst the switch state is an integer (binary) variable. The problem being a mixed-integer programming one because of the state of switch (on=closed=1 or off=open=0), a Binary Particle Swarm Optimization (BPSO) and Neural Network are used separately to solve this problem. The effectiveness of proposed method is demonstrated through an example.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36819/36819.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">85</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">SOLVING NUMBER SERIES - Architectural Properties of Successful Artificial Neural Networks</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Marco Ragni and Andreas Klein</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Any mathematical pattern can be the generation principle for number series. In contrast to most of the application fields of artificial neural networks (ANN) a successful solution does not only require an approximation of the underlying function but to correctly predict the exact next number. We propose a dynamic learning approach and evaluate our method empirically on number series from the Online Encyclopedia of Integer Sequences. Finally, we investigate research questions about the performance of ANNs, structural properties, and the adequate architecture of the ANN to deal successfully with number series.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36823/36823.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">86</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">SPIKING HIERARCHICAL NEURAL NETWORK FOR CORNER DETECTION</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Dermot Kerr, Martin McGinnity, Sonya Coleman, Qingxiang Wu and Marine Clogenson</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">To enable fast reliable feature matching or tracking in scenes, features need to be discrete and meaningful, and hence corner detection is often used for this purpose. We present a new approach to corner detection inspired by the structure and behaviour of the human visual system, which uses spiking neural networks. Standard digital images are processed and converted to spikes in a manner similar to the processing that is performed in the retina. The spiking neural network performs edge and corner detection using receptive fields that are able to detect edges and corners of various orientations. The locations where neurons emit a spike indicate the positions of detected features. Results are presented using synthetic and real images.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36824/36824.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">88</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">RELIABLE MODELLING AND OPTIMISATION CONTROL OF REACTIVE POLYMER COMPOSITE MOULDING PROCESSES USING BOOTSTRAP AGGREGATED NEURAL NETWORK MODELS</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Jie Zhang and Nikos G. Pantelelis</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">This paper presents using bootstrap aggregated neural networks for the modelling and optimisation control of reactive polymer composite moulding processes. Bootstrap aggregated neural networks combine multiple neural networks developed from bootstrap re-sampling replications of the original training data in order to enhance model prediction and generalisation capability. Neural network models for modelling the degree of cure (through modelling the measured resistance) are developed from real industrial process operational data. Both static and dynamic models are developed and the developed neural network models are validated on unseen process operation data. The bootstrap aggregated neural network models give accurate and reliable predictions than single neural networks. Optimal heating profile is obtained by solving an optimisation problem using the dynamic neural network model. The model prediction confidence bound is incorporated in the optimisation objective function in order to enhance the reliability of the calculated optimal control profile. In addition to maximise the final degree of cure, model prediction confidence bound is minimised. Application results on a simulated polymer composite moulding process demonstrate that the proposed reliable optimisation control strategy is effective.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36826/36826.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">90</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">A MOVIE RECOMMENDER SYSTEM BASED ON ENSEMBLE OF TRANSDUCTIVE SVM CLASSIFIERS</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Aristomenis S. Lampropoulos, Paraskevi S. Lampropoulou and George A. Tsihrintzis</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">In this paper, we address the recommendation process as a classification problem based on content features and a bank of Transductive SVMclassifiers that capture user preferences. Specifically, we develop an ensemble of Transductive SVM(TSVM) classifiers, each of which utilizes a different feature vector extracted fromdifferent semantic meta-data such as actors, directors, writers, editors and genres. The ensemble classifier allows our system to utilize feature vectors of meta-data from a database and to make personalized recommendations to users. This is achieved through the property of TSVM classifiers to utilize a large amount of available unlabeled data together with a small amount of labeled data that constitute the rated movies of a user. The proposed method is compared to a TSVM classifier which utilizes a feature vector extracted from only ratings of users. The experimental results based on the MovieLens data set indicated that our classifier based on an ensemble of TSVM with content meta-data yield higher accuracy recommendations when compared to the TSVM classifier that utilized only user ratings.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36828/36828.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">91</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">PARALLEL EVALUATION OF HOPFIELD NEURAL NETWORKS</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Antoine Eiche, Daniel Chillet, Sebastien Pillement and Olivier Sentieys</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Among the large number of possible optimization algorithms, Hopfield Neural Networks (HNN) propose interesting characteristics for an in-line use. Indeed, this particular optimization algorithm can produce solutions in brief delay. These solutions are produced by the HNN convergence which was originally defined for a sequential evaluation of neurons. While this sequential evaluation leads to long convergence time, we assume that this convergence can be accelerated through the parallel evaluation of neurons. However, the original constraints do not any longer ensure the convergence of the HNN evaluated in parallel. This article aims to show how the neurons can be evaluated in parallel in order to accelerate a hardware or multiprocessor implementation and to ensure the convergence. The parallelization method is illustrated on a simple task scheduling problem where we obtain an important acceleration related to the number of tasks. For instance, with a number of tasks equals to 20 the speedup factor is about 25.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36829/36829.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">94</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">EVALUATION OF THE EFFECT OF ND:YVO4 LASER PARAMETERS ON INTERNAL MICRO-CHANNEL FABRICATION IN POLYCARBONATE</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">S. M. Karazi and D. Brabazon</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">This paper presents the development of Artificial Neural Network (ANN) models for the prediction of laser machined internal micro-channels’ dimensions and production costs. In this work, a pulsed Nd:YVO4 laser was used for machining micro-channels in polycarbonate material. Six ANN multi-layered, feed-forward, back-propagation models are presented which were developed on three different training data sets. The analysed data was obtained from a 33 factorial design of experiments (DoE). The controlled parameters were laser power, P; pulse repetition frequency, PRF; and sample translation speed; U. Measured responses were the micro-channel width and the micro-machining operating cost per metre of produced micro-channel. The responses were sufficiently predicted within the set micro-machining parameters limits. Three carefully selected statistical criteria were used for comparing the performance of the ANN predictive models. The comparison showed that model which had the largest amount of training data provided the highest degree of predictability. However, in cases where only a limited amount of ANN training data was available, then training data taken from a Face Centred Cubic (FCC) model design provided the highest level of predictability compared with the other examined training data sets.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36832/36832.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">98</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">THE DISTRIBUTED ARCHITECTURE FOR LARGE NEURAL NETWORKS (DISTAL) OF THE HUMANOID ROBOT MYON</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Manfred Hild, Christian Thiele and Christian Benckendorff</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Humanoid robots are complex systems that require considerable processing power. This applies both for low-level sensorimotor loops, as well as for image processing and higher level deliberative algorithms. We present the distributed architecture DISTAL which is able to provide the processing power of large neural networks without relying on a central processor. The architecture successfully copes with runtime-metamorphoses of modular robots, such as the humanoid robot MYON, the body parts of which can be detached and reattached during runtime. We detail the implementation of DISTAL on 32-bit ARM RISC processors, describe the underlying neural byte-code (NBC) of neurons and synapses, and also depict the graphical application software BRAINDESIGNER which releases the user from program coding.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36836/36836.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">99</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">USING THE GNG-M ALGORITHM TO DEAL WITH THE PROBLEM OF CATASTROPHIC FORGETTING IN INCREMENTAL MODELLING</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Héctor F. Satizábal M. and Andres Perez-Uriibe</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Creating computational models from large and growing datasets is an important issue in current machine learning research, because most modelling approaches can require prohibitive computational resources. This work presents the use of incremental learning algorithms within the framework of an incremental modelling approach. In particular, it presents the GNG-m algorithm, an adaptation of the Growing Neural Gas algorithm (GNG), capable of circumventing the problem of catastrophic forgetting when modelling large datasets in a sequential manner. We illustrate this by comparing the performance of GNG-m with that of the original GNG algorithm, on a vector quantization task. Last but not least, we present the use of GNG-m in an incremental modelling task using a real-world database of temperature, coming from a geographic information system (GIS). The dataset of more than one million multidimensional observations is split in seven parts and then reduced by vector quantization to a codebook of only thousands of prototypes. </td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36837/36837.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">101</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">IMAGE CONTENTS ANNOTATIONS WITH THE ENSEMBLE OF ONE-CLASS SUPPORT VECTOR MACHINES</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Boguslaw Cyganek and Kazimierz Wiatr</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">The paper presents a system for automatic image indexing based on color information. The main idea is to build a model which represents contents of a reference image in a form of an ensemble of properly trained classifiers. A reference image is first k-means segmented starting from the characteristic colors. Then, each partition is encoded by the one-class SVM. This way an ensemble of classifiers is obtained. During operation, a test image is classified by the ensemble which responds with a measure of similarity between the reference and test images. The experimental results show good performance of image indexing based on their characteristic colors.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36840/36840.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">116</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">CMAC STRUCTURE OPTIMIZATION WITH Q-LEARNING APPROACH AND ITS APPLICATION</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Weiwei Yu, Kurosh Madani and Christophe Sabourin</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Comparing with other neural networks based models, CMAC is successfully applied on many nonlinear control systems because of its computational speed and learning ability. However, for high-dimensional input cases in real application, we often have to make our choice between learning accuracy and memory size. This paper discusses how both the number of layer and step quantization influence the approximation quality of CMAC. By experimental enquiry, it is shown that it is possible to decrease the memory size without losing the approximation quality by selecting the adaptive structural parameters. Based on Q-learning approach, the CMAC structural parameters can be optimized automatically without increasing the complexity of its structure. The choice of this optimized CMAC structure can achieve a tradeoff between the learning accuracy and finite memory size. At last, the application of this Q-learning based CMAC structure optimization approach on the joint angle tracking problem for biped robot is presented.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36941/36941.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">119</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">A PROBABILISTIC METHOD FOR PREDICTION OF MICRORNA-TARGET INTERACTIONS</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Hasan Oğul, Sinan U. Umu, Y. Yener Tuncel and Mahinur S. Akkaya</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Elucidation of microRNA activity is a crucial step in understanding gene regulation. One key problem in this effort is how to model the pairwise interaction of microRNAs with their targets. As this interaction is strongly mediated by their sequences, it is desired to set up a probabilistic model to explain the binding between a microRNA sequence and the sequence of a putative target. To this end, we introduce a new model of microRNA-target binding, which transforms an aligned duplex to a new sequence and defines the likelihood of this sequence using a Variable Length Markov Chain. It offers a complementary representation of microRNA-mRNA pairs for microRNA target prediction tools or other probabilistic frameworks of integrative gene regulation analysis. The performance of present model is evaluated by its ability to predict microRNA-mRNA interaction given a mature microRNA sequence and a putative mRNA binding site. In regard to classification accuracy, it outperforms a recent method based on support vector machines.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36949/36949.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">14</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">RETRIEVING AEROSOL CHARACTERISTICS FROM SATELLITE OCEAN COLOR MULTI-SPECTRAL SENSORS USING A NEURAL-VARIATIONAL METHOD</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">D. Diouf, S. Thiria, A. Niang, J. Brajard and M. Crepon</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">We present a new algorithm suitable for retrieving and monitoring Saharan dusts from satellite ocean-color multi-spectral observations. This algorithm comprises two steps. The first step consists in classifying the TOA spectra using a neuronal classifier, which provides the aerosol type and a first guess value of the aerosol parameters. The second step retrieves accurate aerosol parameters by using a variational optimization method. We have analyzed 13 years of SeaWiFS images (September 1997-December 2009) in an Atlantic Ocean area off the coast of West Africa. As the method takes into account Saharan dusts, the number of pixels processed is an order of magnitude higher than that processed by the standard SeaWiFS algorithm. We note a strong seasonal variability. The Saharan dust concentration is maximal in summer during the rainy season and minimal in autumn when the vegetation bloom due to the rainy season prevents soil erosion by the wind.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36388/36388.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">15</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">CONSTRUCTION AND ANALYSIS OF AN ARTIFICIAL NEURONAL NETWORK USING A NEURON-COLLECTING, MICRO-PATTERNING METHOD BASED ON A MULTI-ELECTRODE ARRAY SYSTEM</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Hideyuki Terazono, Hyonchol Kim, Masahito Hayashi, Akihiro Hattori, Hiroyuki Takei and Kenji Yasuda</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">We developed three techniques to make artificial neuronal networks constructed from rat hippocampal neurons. 1) a method of non-invasively collecting primary cultured neurons and their deposition, 2) a technique for microprocessing agarose for the purpose of assembling artificial neuronal networks, 3) a multi-electrode array system for measurement of the multi-point extracellular potential of neurons. The three techniques allow us to assemble and evaluate artificial neuronal networks constructed from particular cells. We can manipulate neuro-transmission pathways and investigate roles played by the innate period or stability information for each individual cell in the framework of physiological mechanism. It is thus possible to construct and demonstrated the actual neuronal networks simulated by the computed neural networks.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36412/36412.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">20</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">SEGMENTED–MEMORY RECURRENT NEURAL NETWORKS VERSUS HIDDEN MARKOV MODELS IN EMOTION RECOGNITION FROM SPEECH</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Stefan Glüge, Ronald Böck and Andreas Wendemuth</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Emotion recognition from speech means to determine the emotional state of a speaker from his or her voice. Today’s most used classifiers in this field are Hidden Markov Models (HMMs) and Support Vector Machines. Both architectures are not made to consider the full dynamic character of speech. However, HMMs are able to capture the temporal characteristics of speech on phoneme, word, or utterance level but fail to learn the dynamics of the input signal on short time scales (e.g., frame rate). The use of dynamical features (first and second derivatives of speech features) attenuates this problem. We propose the use of Segmented-Memory Recurrent Neural Networks to learn the full spectrum of speech dynamics. Therefore, the dynamical features can be removed form the input data. The resulting neural network classifier is compared to HMMs that use the reduced feature set as well as to HMMs that work with the full set of features. The networks perform comparable to HMMs while using significantly less features.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36440/36440.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">22</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">INVERSE METHOD FOR THE RETRIEVAL OF OCEAN VERTICAL PROFILES USING SELF ORGANIZING MAPS AND HIDDEN MARKOV MODELS - Application on Ocean Colour Satellite Image Inversion</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Charantonis Anastase Alexandre, Brajard Julien, Moulin Cyril, Bardan Fouad and Thiria Sylvie</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">This paper presents a statistical inversion method used to infer 3D data from 2D imaging. The methodology is based on a combination of the Self Organising Maps and the Hidden Markov Models. The method has been validated by inferring the oceanic vertical profiles of Chlorophyll-A based on sea-surface data.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36447/36447.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">28</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">MODELLING VITRIFIED GLASS VISCOSITY IN A NUCLEAR FUEL REPROCESSING PLANT USING NEURAL NETWORKS</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Katy Ferguson, Jie Zhang, Carl Steele, Colin Clarke and Julian Morris</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">This paper presents a study of using neural networks to model the viscosity of simulated vitrified highly active waste over a range of temperatures and compositions. Vitrification is the process of incorporating the highly active liquid waste into the glass by chemically changing the structure of the glass for nuclear fuel reprocessing. A methodology is needed to determine how the viscosity will change as a result of a new feed. Feed forward neural networks are used to model the viscosity of new product glasses. The results are very promising, with a Mean Squared Error (MSE) of 1.8x10-4 on the scaled unseen validation data, highlighting the high accuracy of the model. Sensitivity analysis of the developed model provides insight on the impact of composition on viscosity.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36540/36540.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">30</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">EFFECT OF CORRELATION BETWEEN CLINICAL TESTS ON THE PERFORMANCE OF A MULTIPLE TEST-BASED DIAGNOSTIC SYSTEM - Study with a Logistic Model and Neural Nets</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Noriaki Ikeda, Kai Ishida, Harukazu Tsuruta and Akihiro Takeuchi</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">To examine the improvement of diagnostic performance by combining multiple tests, an algorithm was developed for generation of simulated data with arbitrary sensitivity, specificity and inter-test correlations. The effects of the number of tests and inter-test correlations on the diagnostic performance were studied using a logistic model and neural network (NN) models. The diagnostic performance measured by the concordance index, c, increased as the number of tests increased. For the same number of tests, the diagnostic performance was lowered by positive correlation and was elevated by negative correlation. Improvement of the performance was not obtained by increasing the number of NN layers.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36557/36557.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">33</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">EEG NOISE CANCELLATION BASED ON NEURAL NETWORK</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">J. Mateo, A. Torres, C. Soria, Mª. García and C. Sánchez</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Electroencephalogram (EEG) recordings often experience interference by different kinds of noise, including white and muscle, severely limiting its utility. Artificial neural networks (ANNs) are effective and powerful tools for removing interference from EEGs, but the quality of the separation is highly dependent on the type and degree of contamination. Several methods have been developed, but ANNs appear to be the most effective for reducing muscle contamination, especially when the contamination is greater in amplitude than the brain signal. We propose an ANN as a filter for EEG recordings, developing a novel framework for investigating and comparing the relative performance of an ANN incorporating real EEG recordings from the Clinical Neurophysiology Service at the Virgen de la Luz Hospital in Cuenca (Spain). This method was based on a growing ANN that optimised the number of nodes in the hidden layer and the coefficient matrices, which were optimised by the simultaneous perturbation method. The ANN improved the results obtained with the conventional EEG filtering techniques: wavelet, singular value decomposition, principal component analysis, adaptive filtering and independent components analysis. The system was evaluated within a wide range of EEG signals in which noise was added. The present study introduces a method of reducing all EEG interference signals with low EEG distortion and high noise reduction.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36571/36571.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">40</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">ENSEMBLE RANDOM-SUBSET SVM</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Kenji Nishida, Jun Fujiki and Takio Kurita</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">In this paper, the Ensemble Random-Subset SVM algorithm is proposed. In a random-subset SVM, multiple SVMs are used, and each SVM is considered a weak classifier; a subset of training samples is randomly selected for each weak classifier with randomly set parameters, and the SVMs with optimal weights are combined for classification. A linear SVM is adopted to determine the optimal kernel weights; therefore, an ensemble random-subset SVMis based on a hierarchical SVMmodel. An ensemble random-subset SVM outperforms a single SVMeven when using a small number of samples (10 or 100 samples out of 20,000 training samples for each weak classifier); in contrast, a single SVM requires more than 4,000 support vectors.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36689/36689.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">46</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">IMPROVING THE PERFORMANCE OF THE SUPPORT VECTOR MACHINE IN INSURANCE RISK CLASSIFICATION - A Comparitive Study</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Mlungisi Duma, Bhekisipho Twala, Tshilidzi Marwala and Fulufhelo V. Nelwamondo</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">The support vector machine is a classification technique used in linear and non- linear complex problems. It was shown that the performance of the technique decreases significantly in the presence of escalating missing data in the insurance domain. Furthermore the resilience of the technique when the quality of the data deteriorates is weak. When dealing with missing data, the support vector machine uses the mean-mode strategy to replace missing values. In this paper, we propose the use of the autoassociative network and the genetic algorithm as alternative strategies to help improve the classification performance as well as increase the resilience of the technique. A comparative study is conducted to see which of the techniques helps the support vector machine improve in performance and sustain resilience. The training data with completely observable data is used to construct the support vector machine and testing data with missing values is used to measuring the accuracy. The results show that both models help increase resilience with the autoassociative network showing better overall performance improvement.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36738/36738.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">52</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">EOGSTUDIO - A Software Platform for Processing Electrooculography Recordings</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">R. A. Becerra-García, R. V. García, F. Rojas, J. González, B. San Román and L. Velázquez</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Analysis of saccadic eye movements is a fundamental task for the study of different neurological disorders. The Center of Research and Rehabilitation of Hereditary Ataxias (CIRAH) located in Holguín, Cuba; uses this technique in order to study the evolution of many different ataxias. Nevertheless, current available software applications do not fill the requirements needed by the CIRAH’s staff to complete their processing protocol, as they do not run in modern operating systems or are poorly usable. EogStudio was created with the objective of filling the gap left by these applications. It is signal processing platform based on extensible plugins that meet the requirements made by CIRAH’s researchers. For the processing and determination of the significative points of the saccadic eye movements, soft computing techniques, such as independent component analysis, were applied.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36782/36782.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">54</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">IDENTIFICATION OF CORRELATED PATTERNS BY VECTOR PERCEPTRON WITH BINARIZED SYNAPTIC COEFFICIENTS</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Vladimir Kryzhanovskiy</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Present paper is dedicated to identification of correlated reference patterns. Correlation of reference patterns per se significantly reduces probability of an adequate identification of a vector neural network. It has been demonstrated in the present work that the binarized synaptic coefficients networks are far more efficient, accurate and reliable in terms of correlated reference patterns identification.</td> </tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">56</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">SIX NECESSARY QUALITIES OF SELF-LEARNING SYSTEMS - A Short Brainstorming</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Gabriele Peters</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">In this position paper the broad issue of learning and self-organisation is addressed. I deal with the question how biological and technological information processing systems can autonomously acquire cognitive capabilities only from data available in the environment. In the main part I claim six qualities that are, in my opinion, necessary qualities of self-learning systems. These qualities are (1) hierarchical processing, (2) emergence on all levels of hierarchy, (3) multi-directional information transfer between the levels of hierarchy, (4) generalization from few examples, (5) exploration, and (6) adaptivity. I try to support my considerations by theoretical reflections as well as by an informal introduction of a self-learning system that features these qualities and displays promising behavior in object recognition applications. Although this paper has more the character of a brainstorming the proposed qualities can be regarded as roadmap for problems to be addressed in future research in the field of autonomous learning.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36790/36790.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">63</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">PRELIMINARY RESULTS OF CLINICAL TESTS OF A NEW NEURAL-NETWORK-BASED OTITIS MEDIA ANALYSIS SYSTEM</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">M. Hannula, T. Holma, E. Löfgren, H. Hinkula and M. Sorri</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Evaluation of middle ear effusion is essential in diagnostics of otitis media. In this study a new otitis media diagnostic system based on acoustic reflectometry (AR) was preliminarily evaluated and tested with experimental clinical data on 114 ears of 57 children. In the study the ears of the children were measured with the new AR system and the corresponding ear status was definitively assessed in myringotomy by measuring the amount of effusion in the middle ear. The collected data included successful measurements of 71 normal ears (no effusion in the middle ear) and 43 ears with 0.02-0.37 g of middle ear effusion. In the analysis the correspondence between a neural network analysis of the AR measurement data and the corresponding amount of middle ear effusion was analysed using a leave-one-out validation procedure. The preliminary results were promising; the neural network analysis result and the amount of middle ear effusion correlated statistically significantly (p < 0.001), with correlation coefficient R = 0.37. In future studies more data will be collected to obtain higher correlation in the analysis.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36797/36797.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">68</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">A STATE-SPACE NEURAL NETWORK FOR MODELING DYNAMICAL NONLINEAR SYSTEMS</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Karima Amoura, Patrice Wira and Said Djennoune</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">In this paper, a specific neural-based model for identification of dynamical nonlinear systems is proposed. This artificial neural network, called State-Space Neural Network (SSNN), is different from other existing neural networks. Indeed, it uses a state-space representation while being able to adapt and learn its parameters. These parameters are the neural weights which are intelligible or understandable. After learning, the SSNN therefore is able to provide a state-space model of the dynamical nonlinear system. Examples are presented which show the capability of the SSNN for identification of multivariate dynamical nonlinear systems.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36805/36805.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">74</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">MODELING OF ABRASIVE WATER JET MACHINING USING TAGUCHI METHOD AND ARTIFICIAL NEURAL NETWORKS</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Menelaos Pappas, Ioannis Ntziantzias, John Kechagias and Nikolaos Vaxevanidis</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">This work presents a hybrid approach based on the Taguchi method and the Artificial Neural Networks (ANNs) for the modeling of surface quality characteristics in Abrasive Water Jet Machining (AWJM). The selected inputs of the ANN model are the thickness of steel sheet, the nozzle diameter, the stand-off distance and the traverse speed. The outputs of the ANN model are the surface quality characteristics, namely the kerf geometry and the surface roughness. The data used to train the ANN model was selected according to the Taguchi’s design of experiments. The acquired results indicate that the proposed modelling approach could be effectively used to predict the kerf geometry and the surface roughness in AWJM, thus supporting the decision making during process planning.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36811/36811.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">83</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">BIOLOGICALLY INSPIRED EDGE DETECTION USING SPIKING NEURAL NETWORKS AND HEXAGONAL IMAGES</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Marine Clogenson, Dermot Kerr, Martin McGinnity, Sonya Coleman and Qingxiang Wu</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Inspired by the structure and behaviour of the human visual system, we extend existing work using spiking neural networks for edge detection with a biologically plausible hexagonal pixel arrangement. Standard digital images are converted into a hexagonal pixel representation before being processed with a spiking neural network with scalable hexagonally shaped receptive fields. The performance is compared with different sized receptive fields implemented on standard rectangular images. Results illustrate that using hexagonal-shaped receptive fields provides improved performance over a range of scales compared with standard rectangular shaped receptive fields and images.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36821/36821.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">84</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">USING CO-EXISTING ATTRACTORS OF A SENSORIMOTOR LOOP FOR THE MOTION CONTROL OF A HUMANOID ROBOT</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Matthias Kubisch, Benjamin Werner and Manfred Hild</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">The implementation of a biped robot gait is a challenging task within the field of mobile robotics. Particularly, when the robot is subject to unknown disturbance in constantly changing terrain, a stable and robust gait is crucial. Regarding the machine together with the controller as an integrated system, the Dynamical Systems Approach yields a new perspective on legged robots. So called Limit CycleWalkers have shown their inherent stability against moderate disturbances of different kinds because gaits can be constructed as attractors of the dynamical system. Here, we will show how co-existing attractors in neural sensorimotor loops can be used for the construction of robot gaits and for easy switching among behaviours. The results are demonstrated using a humanoid robot with neural control and it is shown that walking and standing upright can be implemented as co-existing attractors of the same pure sensorimotor loop.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36822/36822.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">89</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">A COMPREHENSIVE EVALUATION MODEL AND INTELLIGENT PREDICTION METHOD OF WATER BLOOM</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Zaiwen Liu, Xiaoyi Wang and Wei Wei</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">An integrated evaluative function and intelligent prediction model for water bloom in lakes based on least squares support vector machine( LSSVM) is proposed in this paper, in which main influence factor of outbreak of water bloom is analyzed by rough set theory. First the study of the function involves three aspects: algal average activation energy of photosynthesis, integrated nutritional status index, and transparency, which are considered from the microcosmic level., the macroscopic level and the intuitionistic level respectively. The values of the function are classified properly. At the meantime, the weight value of each evaluative parameter is determined objectively, via the theory of multiple criteria decision making,. By analyzing and calculating the experimental data, the obtained values of the function and the classification results can be verified using the data of the samples. Good agreement is obtained between the results and the fact. The results of simulation and application show that: LSSVM improves the algorithm of support vector machine (SVM).; it has long-term prediction period, strong generalization ability, high prediction accuracy; and needs a small amount of sample and this model provides an efficient new way for medium-term water bloom prediction.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36827/36827.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">100</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">MEAN FIELD MONTE CARLO STUDIES OF ASSOCIATIVE MEMORY - Understanding the Dynamics of a Many-pattern Model</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Ish Dhand and Manoranjan P. Singh</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">Dynamics of a Hebbian model of associative memory is studied using Mean field Monte-Carlo method. Under the assumption of infinite system, we have derived single-spin equations, using the generating functional method from statistical mechanics, for the purpose of simulations. This approach circumvents the strong finite-size effects of the usual calculations on this system. We have tried to understand the retrieval of a stored pattern in presence of another condensed pattern undergoing reinforcement, positive or negative. We find that the retrieval is faster and the retrieval quality is better for the case of positive reinforcement.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36838/36838.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">103</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">USING NEURAL NETWORKS TO FORECAST RENEWABLE ENERGY RESOURCES</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Rafael Peña and Aurelio Medina</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">This contribution presents the application of feed-forward neural networks to the problem of time series forecasting. This forecast technique is applied to the water flow and wind speed time series. The results obtained from the forecasting of these two renewable resources can be used to determine the power generation capacity of micro or mini-hydraulic plants, and wind parks, respectively. The forecast values obtained with the neural network are compared against the original time series data in order to show the precision of this forecast technique.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36842/36842.pdf">Download</a></td></tr> </table> <hr/> <table> <tr> <td class="rowTitle">Paper Nr:</td> <td class="rowContent">112</td> </tr> <tr> <td class="rowTitle">Title:</td> <td class="rowContent"><h3 class="paperTitle">THE PERILS OF IGNORING DATA SUITABILITY - The Suitability of Data used to Train Neural Networks Deserves More Attention</h3></td> </tr> <tr> <td class="rowTitle">Authors:</td> <td class="rowContent"><h4 class="authors">Kevin Swingler</h4></td> </tr> <tr> <td class="rowTitle">Abstract:</td> <td class="rowContent">The quality and quantity (we call it suitability from now on) of data that are used for a machine learning task are as important as the capability of the machine learning algorithm itself. Yet these two aspects of machine learning are not given equal weight by the data mining, machine learning and neural computing communities. Data suitability is largely ignored compared to the effort expended on learning algorithm development. This position paper argues that some of the new algorithms and many of the tweaks to existing algorithms would be unnecessary if the data going into them were properly pre-processed, and calls for a shift in effort towards data suitability assessment and correction.</td> </tr><tr> <td class="rowTitle"><a href="https://www.scitepress.org/Papers/2011/36871/36871.pdf">Download</a></td></tr> </table> <hr/> </div> </span> </div> </form> </body> </html>