PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwvL0VOIj4NCjxIVE1MPg0KPEhFQUQ+DQoNCjxtZXRhIG5hbWU9ImNvcHlyaWdodCIgY29udGVudD0iQ29weXJpZ2h0IChjKSBUaGFsZXMgQ29ycG9yYXRlIFNlcnZpY2VzIFMuQS5TLCAyMDA5LiBUaGlzIHBhZ2UgaXMgbWFkZSBhdmFpbGFibGUgdW5kZXIgbGljZW5zZS4gRm9yIGZ1bGwgZGV0YWlscyBzZWUgdGhlIExFR0FMIGluIHRoZSBkb2N1bWVudGF0aW9uIGJvb2sgdGhhdCBjb250YWlucyB0aGlzIHBhZ2UuIiA+DQo8bWV0YSBuYW1lPSJhdXRob3IiIGNvbnRlbnQ9IkJlbm9pdCBMYW5nbG9pcyIgPg0KPG1ldGEgbmFtZT0ia2V5d29yZHMiIGNvbnRlbnQ9ImVnZixvdmVydmlldywgZmFjdG9yeSBjb21wb25lbnQsIGZhY3Rvcnksb3JjaGVzdHJhdGlvbiwgdmlld3BvaW50LCBnZW5lcmF0aW9uIHBhdHRlcm4iLz4NCg0KPE1FVEEgSFRUUC1FUVVJVj0iQ29udGVudC1UeXBlIiBDT05URU5UPSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMSI+DQo8TUVUQSBIVFRQLUVRVUlWPSJDb250ZW50LVN0eWxlLVR5cGUiIENPTlRFTlQ9InRleHQvY3NzIj4NCg0KPExJTksgUkVMPSJTVFlMRVNIRUVUIiBIUkVGPSIuLi9ib29rLmNzcyIgQ0hBUlNFVD0iSVNPLTg4NTktMSIgVFlQRT0idGV4dC9jc3MiPg0KPHRpdGxlPkVHRiBPdmVydmlldzwvdGl0bGU+DQo8L0hFQUQ+DQo8Qk9EWSBCR0NPTE9SPSIjZmZmZmZmIj4NCg0KPHRhYmxlIGJvcmRlcj0iMCIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIiB3aWR0aD0iMTAwJSI+DQogIDx0Ym9keT4NCiAgICA8dHI+DQogICAgCTx0ZCBjb2xzcGFuPSIyIiBhbGlnbj0ibGVmdCIgYmdjb2xvcj0iIzAwODBjMCIgdmFsaWduPSJ0b3AiPg0KICAgIAkgIDxoMj48Zm9udCBmYWNlPSJBcmlhbCxIZWx2ZXRpY2EiPjxmb250IGNvbG9yPSIjZmZmZmZmIj4NCiAgICAJICAmbmJzcDtFR0YgKEVjbGlwc2UgR2VuZXJhdGlvbiBGYWN0b3JpZXMpIE92ZXJ2aWV3DQogICAgCSAgPC9mb250PjwvZm9udD48L2gyPg0KICAgIAk8L3RkPg0KICAgIDwvdHI+DQoJPC90Ym9keT4NCjwvdGFibGU+DQoNCg0KPGEgbmFtZT0iaW50cm9kdWN0aW9uIj48aDI+SW50cm9kdWN0aW9uPC9oMj48L2E+DQoNCjxwIGNsYXNzPSJQYXJhIj5JbiBvcmRlciB0byBpbXByb3ZlIHNvZnR3YXJlIGRldmVsb3BtZW50IGluZHVzdHJpYWxpemF0aW9uLCBhIG1ham9yIHN0ZXAgY29uc2lzdHMgaW4gbWFzcy1wcm9kdWNpbmcgc29mdHdhcmUuIFRoaXMgbWFzcy1wcm9kdWN0aW9uIG11c3QgYmUgY3VzdG9taXphYmxlLCBhbmQgbXVzdCBiZSBhYmxlIHRvIHN1cHBvcnQgY29tcGxleCwgbGFyZ2Utc2NhbGUgYW5kIGhldGVyb2dlbmVvdXMgZ2VuZXJhdGlvbnMuIEdpdmVuIHRoZSB0b2RheZJzIGF2YWlsYWJsZSBFY2xpcHNlIHRvb2xzLCB0aGUgaXNzdWUgaGVyZSBpcyBub3QgdG8gcHJvdmlkZSBlaXRoZXIgYSBuZXcgdHJhbnNmb3JtYXRpb24gZW5naW5lIChtb2RlbC10by1tb2RlbCwgbW9kZWwtdG8tdGV4dCwgdGV4dC10by1tb2RlbCwgdGV4dC10by10ZXh0KSBvciBEU0wgZWRpdG9yIGJ1dCB0byByZWFsaXplIHRoZWlyIGludGVncmF0aW9uIGZvciBmbGV4aWJsZSBzb2Z0d2FyZSBtYXNzLXByb2R1Y3Rpb24uIFRoaXMgaXMgdGhlIDxhIGhyZWY9Imh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvcHJvcG9zYWxzL2VnZi8iPnB1cnBvc2Ugb2YgRUdGPC9hPi48L3A+DQoNCjxwIGNsYXNzPSJQYXJhIj5FR0YgZmVkZXJhdGVzIGdlbmVyYXRpb24gYXJvdW5kIHRoZSBwaXZvdGFsIGVsZW1lbnQgb2YgZmFjdG9yeSBjb21wb25lbnQuIEEgZmFjdG9yeSBjb21wb25lbnQgaXMgYSB1bml0IG9mIGdlbmVyYXRpb24gd2l0aCBhIGNsZWFyIG9iamVjdGl2ZSBvZiBnZW5lcmF0aW9uLiBJdCBoYXMgYSBjb250cmFjdCB0byBkZWNsYXJlIHRoZSBmYWN0b3J5IGNvbXBvbmVudCBwYXJhbWV0ZXJzLiBDb250cmFyeSB0byBhIGNsYXNzaWMgZ2VuZXJhdGlvbiB3aGljaCBhZ2dyZWdhdGVzIGFsbCB0aGUgZ2VuZXJhdGlvbiBwYXJhbWV0ZXJzLCBnZW5lcmF0aW9uIGRhdGEgYXJlIG9yZ2FuaXplZCBieSB2aWV3cG9pbnRzLCBzdWNoIGFzIGdlbmVyYXRpb24gcGF0dGVybiwgbGljZW5zZSBkZXNjcmlwdGlvbiBvciBkZXBsb3ltZW50IGRlY2xhcmF0aW9uLiBBbHRvZ2V0aGVyLCB2aWV3cG9pbnRzIGV4cGxpY2l0bHkgY29uZmlndXJlIGFsbCB0aGUgZ2VuZXJhdGlvbiBwYXJhbWV0ZXJzLiBUaGUgZ2VuZXJhdGlvbiBvcmNoZXN0cmF0aW9uIGlzIGRlZmluZWQgYnkgYSBwcm9kdWN0aW9uIHBsYW4uIEEgZ2VuZXJhdGlvbiBzdGVwIG9mIHRoZSBwcm9kdWN0aW9uIHBsYW4gY2FuIGVpdGhlciBiZSBhIEphdmEgdGFzayBvciwgYnkgYXNzZW1ibHksIGFuIGludm9jYXRpb24gdG8gYW5vdGhlciBmYWN0b3J5IGNvbXBvbmVudC4gUmVnYXJkaW5nIHRoZSBsaWZlY3ljbGUsIGEgZmFjdG9yeSBjb21wb25lbnQgY2FuIGJlIGVkaXRlZCBhbmQgZXhlY3V0ZWQuPC9wPg0KDQo8cCBjbGFzcz0iUGFyYSI+QSBmYWN0b3J5IGNvbXBvbmVudCBlbmNhcHN1bGF0ZXMgZ2VuZXJhdGlvbiBrbm93LWhvdy4gQSBwb3J0Zm9saW8gaXMgYSBjb25zaXN0ZW50IHNldCBvZiBmYWN0b3J5IGNvbXBvbmVudHMgd2l0aCBhIGNvbW1vbiBnZW5lcmF0aW9uIG9iamVjdGl2ZSwgdmFsdWFibGUgZm9yIGEgZGV2ZWxvcG1lbnQgdGVhbSBvciBhIHVzZXIgY29tbXVuaXR5LiBUaGUgcHVycG9zZSBpcyB0byBjcmVhdGUgb2ZmLXRoZS1zaGVsZiBmYWN0b3J5IGNvbXBvbmVudHMuIEZvciBpbnN0YW5jZSwgYSB0ZWNobmljYWwgaW5mcmFzdHJ1Y3R1cmUgZmFjdG9yeSBwcm92aWRlcyBhbGwgdGhlIG5lZWRlZCBtZWNoYW5pc21zIGZvciBhbiBhcHBsaWNhdGlvbiBkZXZlbG9wbWVudCAoZS5nLiwgdHJhbnNhY3Rpb24gbWFuYWdlbWVudCwgcGVyc2lzdGVuY2UgcG9saWN5KS48L3A+DQoNCg0KPGEgbmFtZT0iZXhhbXBsZSI+PGgyPkV4YW1wbGUgb2YgY3VzdG9taXphdGlvbiB3aXRoIGdlbmVyYXRpb24gcGF0dGVybnM8L2gyPjwvYT4NCg0KPHAgY2xhc3M9IlBhcmEiPlRoZSBmb2xsb3dpbmcgZmlndXJlIGV4ZW1wbGlmaWVzIGEgZ2VuZXJhdGlvbiBieSBmYWN0b3J5IGNvbXBvbmVudCBhc3NlbWJseTogc29tZSBmYWN0b3J5IGNvbXBvbmVudHMgaGF2ZSBhbiBhc3NlbWJseSByb2xlIHdoaWxlIG90aGVycyBnZW5lcmF0ZS4gVGhpcyBnZW5lcmF0aW9uIHJldXNlcyBhIHZpZXdwb2ludCBwcm92aWRlZCBieSBFR0YsIGEgTTJUIChtb2RlbC10by10ZXh0KSBnZW5lcmF0aW9uIHBhdHRlcm4gdmlld3BvaW50IGZvciB0aGUgZGVmaW5pdGlvbiBvZiBnZW5lcmF0aW9uIHBhdHRlcm5zLiBUaG9zZSBnZW5lcmF0aW9uIHBhdHRlcm5zLCBKZXQtYmFzZWQgdG9kYXksIHN1cHBvcnRzIHBhdHRlcm4gaW5oZXJpdGFuY2UuIFRoaXMgbWVhbnMgYSBNMlQgZ2VuZXJhdGlvbiBjYW4gb3ZlcmxvYWQgYW5vdGhlciBvbmUuIEluIHRoaXMgZXhhbXBsZSwgYnkgZGVmYXVsdCwgdGhlIEVNRiBtb2RlbC9lZGl0L2VkaXRvciBnZW5lcmF0aW9uIGlzIGFwcGxpZWQuIEl0IGNhbiBiZSBzcGVjaWFsaXplZCBieSBpbmhlcml0ZWQgcGF0dGVybnMuIFRoZSBzYW1lIHByaW5jaXBsZSBjYW4gYmUgYXBwbGllZCB0byBvdGhlciBnZW5lcmF0aW9ucyBvdGhlciB0aGFuIEVNRiwgZm9yIGluc3RhbmNlIHRvIHdlYiBzZXJ2aWNlcyBvciBkb2N1bWVudGF0aW9uLjwvcD4NCg0KPHAgYWxpZ249ImNlbnRlciI+DQogIDxpbWcgc3JjPSIuL2ltYWdlcy9leGFtcGxlRkNBc3NlbWJseS5qcGciIGFsdD0iRXhhbXBsZSBvZiBmYWN0b3J5IGNvbXBvbmVudCBhc3NlbWJseSB3aXRoIEVHRiIvPg0KPC9wPg0KPHAgYWxpZ249ImNlbnRlciI+DQogPGk+RmlndXJlIDEuIEV4YW1wbGUgb2YgZmFjdG9yeSBjb21wb25lbnQgYXNzZW1ibHkgd2l0aCBFR0Y8L2k+DQo8L3A+DQoNCjxwIGNsYXNzPSJQYXJhIj5OZXh0IGZpZ3VyZSBwcmVzZW50cyB0aGUgRUdGIHBlcnNwZWN0aXZlLiBXaXRoIHRoZSB2aWV3IG9uIHRoZSBsZWZ0LWhhbmQgc2lkZSwgdGhlIGZhY3RvcnkgY29tcG9uZW50IGRldmVsb3BlciBkZXZlbG9wcyBoaXMgb3duIGZhY3RvcnkgY29tcG9uZW50cywgd2hpbGUgd2l0aCB0aGUgdmlldyBvbiB0aGUgcmlnaHQtaGFuZCBzaWRlIGhlIHZpc3VhbGl6ZXMgdGhlIGRlcGxveWVkIGFuZCByZXVzYWJsZSBmYWN0b3J5IGNvbXBvbmVudHMuIFRoaXMgZmlndXJlIHNob3dzIHRoZSB2aWV3cG9pbnQvb3JjaGVzdHJhdGlvbiBzdHJ1Y3R1cmUgb2YgYSBmYWN0b3J5IGNvbXBvbmVudCBhbmQgdGhlIGdlbmVyYXRpb24gZGVsZWdhdGlvbiBiZXR3ZWVuIGZhY3RvcnkgY29tcG9uZW50cyB3aXRoIHBhcmFtZXRlciBwYXNzaW5nLjwvcD4NCg0KPHAgYWxpZ249ImNlbnRlciI+DQogIDxpbWcgc3JjPSIuL2ltYWdlcy9lZ2ZQZXJzcGVjdGl2ZS5qcGciIGFsdD0iVGhlIEVHRiBwZXJzcGVjdGl2ZSIvPg0KPC9wPg0KPHAgYWxpZ249ImNlbnRlciI+DQogPGk+RmlndXJlIDIuIFRoZSBFR0YgcGVyc3BlY3RpdmU8L2k+DQo8L3A+DQoNCg0KPGEgbmFtZT0idHdvTGV2ZWxzIj48aDI+VHdvIGxldmVscyBvZiBmYWN0b3J5IGNvbXBvbmVudCBkZXZlbG9wbWVudDwvaDI+PC9hPg0KDQo8cCBjbGFzcz0iUGFyYSI+QXMgcHJlc2VudGVkIGluIHRoZSBwcmV2aW91cyBleGFtcGxlLCB0aGUgbW9zdCBuYXR1cmFsIHdheSB0byBwdXQgZmFjdG9yeSBjb21wb25lbnRzIGludG8gcHJhY3RpY2UgaXMgdG8gZGV2ZWxvcCBhbmQgYXNzZW1ibGUgZmFjdG9yeSBjb21wb25lbnRzLiBUaGUgb2JqZWN0aXZlIGlzIHRvIGNyZWF0ZSB2YWx1YWJsZSBmYWN0b3J5IGNvbXBvbmVudHMsIGVpdGhlciBmb3Igb25lknMgdGVhbSBvciBsYXJnZXIgZGV2ZWxvcG1lbnQgdGVhbXMsIGFuZCB0byByZXVzZSB0aGVtIGluIGRpZmZlcmVudCBnZW5lcmF0aW9uIGNoYWlucy4gVGhlIGlzc3VlIGlzIHRvIGZpZ3VyZSBvdXQgZ2VuZXJhdGlvbiBwcmFjdGljZXMsIGhvdyB0byBpbXBsZW1lbnQgYW5kIGNvbXBvc2UgdGhlbSB3aXRoIGZhY3RvcnkgY29tcG9uZW50cywgYW5kIHRoZSBnZW5lcmF0aW9uIHZhcmlhYmlsaXR5LjwvcD4NCg0KPHAgY2xhc3M9IlBhcmEiPkZhY3RvcnkgY29tcG9uZW50cyBjYW4gYmUgdXNlZCB0byBhZGRyZXNzIHNpbXBsZSBnZW5lcmF0aW9ucy4gQnV0IGZsZXhpYmlsaXR5IGFuZCBjdXN0b21pemF0aW9uIG5lZWQgbW9yZSBzb3BoaXN0aWNhdGVkIG1lY2hhbmlzbXMuIEZvciBtZWV0aW5nIHRoaXMgbmVlZCwgRUdGIG9mZmVycyB0aGUgYWJpbGl0eSB0byBleHRlbmQgdGhlIGRlZmF1bHQgZmFjdG9yeSBjb21wb25lbnQgc3RydWN0dXJlIGFuZCBnZW5lcmF0aW9uIGJlaGF2aW9yLiBpKSBPbmUgY2FuIGFkZCBpdHMgb3duIHZpZXdwb2ludHMgaW4gb3JkZXIgdG8gYWRkIG5ldyBnZW5lcmF0aW9uIGRhdGEgc3RydWN0dXJlcywgYW5kIHRvIGF1Z21lbnQgdGhlIGNhcGFiaWxpdHkgdG8gcGFyYW1ldGVyaXplIGdlbmVyYXRpb25zLiBUaGlzIGltcGxpZXMgYXNzb2NpYXRlZCBmYWN0b3J5IGNvbXBvbmVudHMgYXJlIGFibGUgdG8gdXNlIHRob3NlIG5ldyB2aWV3cG9pbnRzLiBpaSkgT25lIGNhbiBhZGQgaXRzIG93biBvcmNoZXN0cmF0aW9uIHR5cGVzLiBUaGlzIG1lYW5zIG9yY2hlc3RyYXRpb24gaXMgbm90IHJlc3RyaWN0ZWQgdG8gYSB1bmlxdWUgb3JjaGVzdHJhdGlvbiBub3RhdGlvbiBhbmQgZW5naW5lLjwvcD4NCg0KPHAgY2xhc3M9IlBhcmEiPkluZHVzdHJpYWxpemF0aW9uIG9mIGxhcmdlLXNjYWxlIGRldmVsb3BtZW50IGNhbm5vdCBiZSBzdW0gdXAgdG8gYSBzdWNjZXNzaW9uIG9mIGdlbmVyYXRvcnMuIEl0IGludm9sdmVzIGFuIGFyY2hpdGVjdHVyZSBkZXNjcmlwdGlvbiBvZiBjb3JlIGNvbXBvbmVudHMsIHRlY2hub2xvZ2ljYWwgZ2VuZXJhdGlvbiBjb21wb25lbnRzIHdpdGggdGhlaXIgZXh0ZW5zaW9ucywgYW5kIHRoZSBkZWZpbml0aW9uIG9mIHRoZWlyIGdlbmVyYXRpb24gbGlmZWN5Y2xlcy4gRUdGIGJyaW5ncyBvbmUgc3RvbmUgdG8gdGhpcyB0b29saW5nIGFzcGVjdC48L3A+DQoNCg0KPGEgbmFtZT0icmVsYXRpb25zaGlwIj48aDI+RUdGIHJlbGF0aW9uc2hpcHM8L2gyPjwvYT4NCg0KPHAgY2xhc3M9IlBhcmEiPlJlbGF0ZWQgRUdGIHRvcGljczo8L3A+DQo8dWwgQ0xBU1M9IlVub3JkZXJlZExpc3QiPg0KICAgIDxsaSBDTEFTUz0iSXRlbSI+RGVmaW5pdGlvbiBvZiBnZW5lcmF0aW9uIGFyY2hpdGVjdHVyZTwvbGk+DQogICAgPGxpIENMQVNTPSJJdGVtIj5HZW5lcmF0aW9uIGNvbXBvc2l0aW9uIChnZW5lcmF0aW9uIHJlZGVmaW5pdGlvbiBhbmQgZXh0ZW5zaWJpbGl0eSwgbWVyZ2UsIGluY2x1ZGUvb3ZlcnJpZGUpPC9saT4NCiAgICA8bGkgQ0xBU1M9Ikl0ZW0iPkdlbmVyYXRpb24gb3JjaGVzdHJhdGlvbjwvbGk+DQogICAgPGxpIENMQVNTPSJJdGVtIj5EZWZpbml0aW9uIG9mIHRlY2huaWNhbCBhbmQgYnVzaW5lc3MgZ2VuZXJhdGlvbiBwb3J0Zm9saW9zPC9saT4NCiAgICA8bGkgQ0xBU1M9Ikl0ZW0iPlByb2R1Y3QgbGluZXM8L2xpPg0KPC91bD4NCg0KDQo8L2JvZHk+DQo8L2h0bWw+DQo=