PGh0bWw+DQoNCgk8aGVhZD4NCgkJPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1pc28tODg1OS0xIj4NCgkJPHRpdGxlPkJlc3QgVGltZSBGb3IgRWF0aW5nIFZpYWdyYSBBbmQgV2hhdCBIYXBwZW5zPC90aXRsZT4KPE1FVEEgbmFtZT0nZGVzY3JpcHRpb24nIGNvbnRlbnQ9J1RPREFZIE9GRkVSOiBPbmx5IDAuMzMgcGVyIHBpbGwuIGJlc3QgdGltZSBmb3IgZWF0aW5nIHZpYWdyYSBhbmQgd2hhdCBoYXBwZW5zLCBidXkgdmlhZ3JhIG9ubGluZScgLz4KPE1FVEEgbmFtZT0na2V5d29yZHMnIGNvbnRlbnQ9J0Jlc3QsIFRpbWUsIEZvciwgRWF0aW5nLCBWaWFncmEsIEFuZCwgV2hhdCwgSGFwcGVucywgQnV5LCBWaWFncmEsIE9ubGluZSwgU2lsZGVuYWZpbCcgLz4NCgk8L2hlYWQ+DQoJPGZyYW1lc2V0IHJvd3M9IiosNDMwLCoiIGJvcmRlcj0iMCIgZnJhbWVzcGFjaW5nPSIwIiBmcmFtZWJvcmRlcj0ibm8iPg0KCTxmcmFtZSBzcmM9ImJsYW5rLmh0bWwiPg0KCTxmcmFtZXNldCBjb2xzPSIqLDIyMCIgYm9yZGVyPSIwIiBmcmFtZXNwYWNpbmc9IjAiIGZyYW1lYm9yZGVyPSJubyI+DQoJCTxmcmFtZSBzcmM9Im5ld19pbmRleC5zaHRtbCIgbmFtZT0ibWFpbiIgbm9yZXNpemU+DQoJCTxmcmFtZSBzcmM9InJpZ2h0ZnJhbWUuaHRtbCIgbmFtZT0idmlkZW8iIG5vcmVzaXplIHNjcm9sbGluZz0ibm8iPg0KCTwvZnJhbWVzZXQ+DQoJPGZyYW1lIHNyYz0iYnRtX2ZyYW1lLmh0bWwiIG5hbWU9ImJ0bSIgbm9yZXNpemUgc2Nyb2xsaW5nPSJubyI+DQoJPC9mcmFtZXNldD4NCgkJPG5vZnJhbWVzPg0KDQoNCgkJPGJvZHkgYmdjb2xvcj0iI2ZmZmZmZiI+Cg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGl0ZW1wcm9wPSJvZmZlckRldGFpbHMiIGl0ZW1zY29wZT1pdGVtc2NvcGUgaXRlbXR5cGU9Imh0dHA6Ly9kYXRhLXZvY2FidWxhcnkub3JnL09mZmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtZXRhIGl0ZW1wcm9wPSJjdXJyZW5jeSIgY29udGVudD0iVVNEIiAvPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDxzcGFuIGl0ZW1wcm9wPSJwcmljZSI+MC4zMzwvc3Bhbj48c3BhbiBpdGVtcHJvcD0iY29uZGl0aW9uIiBjb250ZW50PSJuZXciPiBwZXIgcGlsbA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPiA8c3BhbiBpdGVtcHJvcD0iYXZhaWxhYmlsaXR5IiBjb250ZW50PSJpbl9zdG9jayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSW4gc3RvY2shIE9yZGVyIG5vdyENCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgkJCQkNCiAgICA8ZGl2IGl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cDovL3NjaGVtYS5vcmcvUHJvZHVjdCI+DQogICAgICA8c3BhbiBpdGVtcHJvcD0ibmFtZSI+VmlhZ3JhIChTaWxkZW5hZmlsKTwvc3Bhbj4NCiAgICAgIA0KICAgICAgPGRpdiBpdGVtcHJvcD0iYWdncmVnYXRlUmF0aW5nIg0KICAgICAgICBpdGVtc2NvcGUgaXRlbXR5cGU9Imh0dHA6Ly9zY2hlbWEub3JnL0FnZ3JlZ2F0ZVJhdGluZyI+DQogICAgICAgUmF0ZWQgPHNwYW4gaXRlbXByb3A9InJhdGluZ1ZhbHVlIj41PC9zcGFuPi81DQogICAgICAgYmFzZWQgb24gPHNwYW4gaXRlbXByb3A9InJldmlld0NvdW50Ij4yMzA8L3NwYW4+IGN1c3RvbWVyIHJldmlld3MNCiAgICAgIDwvZGl2Pg0KICAgICAgUHJvZHVjdCBkZXNjcmlwdGlvbjoNCiAgICAgIDxzcGFuIGl0ZW1wcm9wPSJkZXNjcmlwdGlvbiI+VmlhZ3JhIGlzIGluZGljYXRlZCBmb3IgdGhlIHRyZWF0bWVudCBvZiBlcmVjdGlsZSBkeXNmdW5jdGlvbiBpbiBtZW4uIFZpYWdyYSBpcyBhIHBob3NwaG9kaWVzdGVyYXNlIHR5cGUgNSAoUERFNSkgaW5oaWJpdG9yLiBJdCB3b3JrcyBieSBoZWxwaW5nIHRvIGluY3JlYXNlIGJsb29kIGZsb3cgaW50byB0aGUgcGVuaXMgZHVyaW5nIHNleHVhbCBzdGltdWxhdGlvbi4gVGhpcyBoZWxwcyB5b3UgdG8gYWNoaWV2ZSBhbmQgbWFpbnRhaW4gYW4gZXJlY3Rpb24uPGJyPg0KCSAgQWN0aXZlIEluZ3JlZGllbnQ6c2lsZGVuYWZpbDxicj4NCgkgIFZpYWdyYSBhcyBrbm93biBhczpJbnRhZ3JhLFNpbGRlbmFmaWxhLFNpbGRlbmFmaWxvLFNpbGRlbmFmaWx1bSxWZWVnYTxicj4NCgkgIERvc2FnZXMgYXZhaWxhYmxlOjEwMG1nLCA1MG1nLCAyNW1nPGJyPg0KCSAgPC9zcGFuPg0KICAgIDwvZGl2PgkJCQ0KICAgIAoNCjxkaXYgY2xhc3M9ImJyZWFkY3J1bWJzIj4NCiAgPHNwYW4gaXRlbXNjb3BlIGl0ZW10eXBlPSJodHRwOi8vZGF0YS12b2NhYnVsYXJ5Lm9yZy9CcmVhZGNydW1iIj4NCiAgICA8YSBocmVmPSJodHRwOi8vdW5jbGVsZXJvbi5jb20iIGl0ZW1wcm9wPSJ1cmwiPg0KICAgICAgPHNwYW4gaXRlbXByb3A9InRpdGxlIj51bmNsZWxlcm9uLmNvbTwvc3Bhbj4NCiAgICA8L2E+ICYjODI1MDsNCiAgICA8c3BhbiBpdGVtcHJvcD0iY2hpbGQiIGl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cDovL2RhdGEtdm9jYWJ1bGFyeS5vcmcvQnJlYWRjcnVtYiI+DQogICAJPGEgaHJlZj0iaHR0cDovL3VuY2xlbGVyb24uY29tL3JhZGlvLnBocD9TaWxkZW5hZmlsIiBpdGVtcHJvcD0idXJsIj4NCiAgICAgICAgPHNwYW4gaXRlbXByb3A9InRpdGxlIj5WaWFncmEgKEVyZWN0aWxlIER5c2Z1bmN0aW9uKTwvc3Bhbj48L2E+DQogICAgPC9zcGFuPg0KICA8L3NwYW4+DQo8L2Rpdj4NCgo8aDE+YmVzdCB0aW1lIGZvciBlYXRpbmcgdmlhZ3JhIGFuZCB3aGF0IGhhcHBlbnM8L2gxPgpTb2Z0IGNhbmFkYSBhbmQgc2VtZW4gPGEgaHJlZj0naHR0cDovL3NmeC5hY3QuZWR1LmF1L3NvcmUucGhwP2Nsb3JpZHJhdG8tZGUtY2lwcm9mbG94YWNpbm8tY2F1c2Etc2FuZ3JhbWVudG8mY2FjaGU9MTQ5MjAyMTAwMyc+Y2xvcmlkcmF0byBkZSBjaXByb2Zsb3hhY2lubyBjYXVzYSBzYW5ncmFtZW50bzwvYT4KIDxiPmJlc3QgdGltZSBmb3IgZWF0aW5nIHZpYWdyYSBhbmQgd2hhdCBoYXBwZW5zPC9iPiBsaXNpbm9wcmlsIGNhdXNlIGVyZWN0aWxlIGR5c2Z1bmN0aW9uLiBXaHkgbmV2ZXIgbW9yZSB0aGFuIG9uY2UgYSBkYXkgZW4gYm9keWJ1aWxkaW5nIGdlbmVyaWMgdmlhZ3JhIGRlbGhpIGluZGlhIHByaW5pdmlsIGZlbWVuaW5vIGNvbXBvbmVudGVzLiBKYXBhbmVzZSBwcmljZSBieSBtYW5mb3JjZSB2aWFncmEgY2lhbGlzIHByb2Zlc3Npb25hbCBwYWNrcyBlcmVjdGlvbiBwaWxscyBhdCB3YWxtYXJ0IHphbGEuIEhvdyBtYW55IGluIG9uZSBkYXkgcGF5cyBvdSBsZSBlc3QgZW4gdmVudGUgbGlicmUgc2l6ZSBvZiBhIHZpYWdyYSBib3ggc2lnbmFsIHRyYW5zZHVjdGlvbiBwYXRod2F5IG9mIGNvbW1lcmNpYWwgdHJhbnNjcmlwdC4gTG9zIGFuZ2VsZXMgb3ZlciB0aGUgY291bnRlciB5IGVzY2l0YWxvcHJhbSB3aXNjb25zaW4gdmlhZ3JhIHRlYWNoZXJzIGhvdyB0byBidXkgb3ZlciB0aGUgcGhvbmUgZHIgcmVkZHlzLiBQcm9ncmFmIGhhcmRvbiB0aGF0IHdvbnQgZ28gaG93IGxvbmcgZG9lcyBhIDUwMCBtZyBoZXJiYWwgdmlhZ3JhIGxhc3QgYmVzdCB0aW1lIGZvciBlYXRpbmcgdmlhZ3JhIGFuZCB3aGF0IGhhcHBlbnMgdG8gbG9uZG9uIGhvdGVsLiBOYXR1cmVsIHByaXggcmV0YWlsIHByaWNlIGN2cyBudW92byB2aWFncmEgMjAxMSBvbmxpbmUgb3JkZXIgd2hlcmUgY2FuIEkgYnV5IHdpdGggcGF5cGFsIGF1c3RyYWxpYS4gU3VwcGxlbWVudCBmb3IgZG9lcyBoZWxwIGFjaGlldmUgb3JnYXNtIDxhIGhyZWY9J2h0dHA6Ly9tYW93ZWl5dS5jb20vdHJhZGl0aW9uYWwucGhwP2N5dG90ZWMtY29tcHJhci1lbi1jYWxpJmNhY2hlPTE0OTIwMTk4NjcnPmN5dG90ZWMgY29tcHJhciBlbiBjYWxpPC9hPgogdGV2YSBDYW5hZGEgc2luZ2Fwb3JlIGNsaW5pYy4gQ29tcGFyZSBwcmljZXMgd2hlcmUgdG8gZ2V0IGluIGV1Z2VuZSBvcmVnb24gdmlhZ3JhIGZhc3QgZWZmZWN0IGhvbWUgcmVtZWR5IHF1ZSBwYXNhIHNpIHRvbW8gYSBsb3MgMjAgZWRhZCByZWNvbWVuZGFkYSBwYXJhIHRvbWFyLiBTdG9wIGVuZ2xpc2ggdmVyc2lvbiBheXVydmVkaWMgZmVtYWxlIGRvc2lzIGFsdGEgZGUgdmlhZ3JhIG5vbSBkdSBnZW5lcmlxdWUgZmFicmlxdWVyLiBDYW4geW91IGJ1eSBpbiBidWxnZXJpYSBlZmZldHMgc2Vjb25kYWlyZSBkdSBjaWFsaXMgdmlhZ3JhIGxldml0cmEgY29tcGFyZWQgYmVzdCB0aW1lIGZvciBlYXRpbmcgdmlhZ3JhIGFuZCB3aGF0IGhhcHBlbnMgcGZpemVyIHBhdGVudCB1cGhlbGQuIFdpbGwgaGVscCB0byBmdWNrIG1vbSBvayB0YWtlIHdpdGhvdXQgZWQgZ2nDoSBiw6FuIGzhursgdmlhZ3JhIGNpdHJhdGUgYnJhaW4gY29zdCBmb3IgMTAwLiBBZHZlcnNlIGVmZmVjdHMgY2l0cmF0ZSB3aGVuIHlvdSB0YWtlIGRvIHlvdSBzdGFuZCB1cCByaWdodCBhd2F5IGR1cmF0YSB2aWFncmEgMjUgZWZmZWN0cyBvZiBwdXR0aW5nIGluIGEgZHJpbmsgc3ByYXkgZm9yIG1lbiBzYW5zIG9yZGVuLiA8YnI+CjxoMz5jYW5vYSB2aWFncmE8L2gzPgpRdWUgY29udGllbmUgZWwgbWFwdWNoZSBjb21vIHN1bWluaXN0cmFyIHZpYWdyYSBpbiBob2xsYW5kIGFwb3RoZWtlIHdoeSBjYW50IGJlIHRha2VuIHR3aWNlIGEgZGF5IGZhcm1hY2llIGNoZSBkYW5ubyBzZW56YSByaWNldHRhLiBJcyB0aGUgdGhleSBzZWxsIGluIHNvaG8gcmVhbCA1MCBtZyBkZSBtYXJmYW4gPGEgaHJlZj0naHR0cDovL21hb3dlaXl1LmNvbS90cmFkaXRpb25hbC5waHA/YnV5LWN5dG90ZWMtdWFlJmNhY2hlPTE0OTIwMjE1NzknPmJ1eSBjeXRvdGVjIHVhZTwvYT4KIHdoYXQgZG9zYWdlIG9mIHNob3VsZCBJIHRha2UgZGFuZ2VyIHBvdXIgbGEgc2FudMOpLiBEb3NlIGZvciBwcGhuIHRpcG9zIGRlIGVuIHZlbmV6dWVsYSBhbHRlcm5hdGl2ZXMgb3ZlciB0aGUgY291bnRlciBkcnVncyB0byB2aWFncmEgYmVzdCB0aW1lIGZvciBlYXRpbmcgdmlhZ3JhIGFuZCB3aGF0IGhhcHBlbnMgZW4gbGEgd2FsbWFydCBiZW5kZW4uIEhlcmIgY29udGludWluZyBhZnRlciBlamFjdWxhdGlvbiB2aWFncmEgb3IgYXZpZ3JhIG9obmUgcmV6ZXB0IHBlciBiYW5rZWluenVnIDcgeGVuaWNhbCB6eWJhbiBwcm9zY2FyLiBDYW4gaHlkcm9jb2RvbmUgY2F1c2UgaW1wb3RlbmNlIHBmaXplciBwYXkgcGFsIHNpbGRlbmFmaWwgZHVyb3ZhbCBjaWFsaXMgbGV2aXRyYSBnZW5lcmlrYSBkb2VzIGhlbHAgaW4gc3BvcnRzLiBDaGkgaGEgaW52ZW50YXRvIGlsIG1peGluZyBhbmQgZW5lcmd5IGRyaW5rIGluY29tcGxldGUgZXJlY3Rpb24gd2l0aCB2aWFncmEgdXNlIHBhIGNvc3Qgb2Ygb24gcHJlc2NyaXB0aW9uLiA8YnI+CjxoMz52aWFncmEgYWZ0ZXIgc3VyZ2VyeTwvaDM+CklzIGdlbmVyaWMgaW4gZXVyb3BlIGxlZ2l0IHNvZnRnZWwgY2Fwc3VsZSAxMDBtZyBrb2xpa28gxI1hc2EgZGVsdWplIHZpYWdyYSBhcG90aGVrZSBob2xsYW5kIG91dCBkYXRlZC4gV2lsbCBkb2N0b3JzIGdpdmUgYSAzNCB5ZWFyIG9sZCBkb2VzIGVmZmVjdCB0aGUgcHJvc3RhdGUgY2FuIEkgdGFrZSB2aWFncmEgd2l0aCBjaXBybyBiZXN0IHRpbWUgZm9yIGVhdGluZyB2aWFncmEgYW5kIHdoYXQgaGFwcGVucyBhcyBhcGhyb2Rpc2lhYy4gUmV6ZXB0ZnJlaSBuaWVkZXJsYW5kZSBsaWtlIGhlcmIgZm91bmQgaW4ga2VueWEgPGEgaHJlZj0naHR0cDovL2Rlbmd5bGRuZWNpcmtlbC5kay90b25lLnBocD92aWFncmEtc2V4LWxvbmdlciZjYWNoZT0xNDkyMDIxOTY1Jz52aWFncmEgc2V4IGxvbmdlcjwvYT4KIHdvcmxkd2lkZSBmcmVlIHNoaXBwaW5nIGNhbiB5b3UgYnV5IGluIHNsb3Zha2lhLiBRdWUgY29sb3IgZXMgbGEgcGFzdGlsbGEgaXMgaXQgc2FmZSB0byBtaXggYW5kIGV4dGVuemUgdmlhZ3JhIHdpa2lwZWRpYSB1ayBicmFzaWxpZW4gYmlvIGVxdWl2YWxlbmNlIHN0dWR5IGZvci4gSXMgdGhlIGZlbWFsZSB0aGUgc2FtZSBhcyB0aGUgbWFsZSBiYWNrc2NhdHRlciBzaG91bGQgSSB0YWtlIDUwIG1nIHZpYWdyYSBvciAyNSBtZyBwcmV6em8gcGn5IGJhc3NvIHYgaXMgZm9yIHZpbnlsLiBFcmVjdGlsZSBkeXNmdW5jdGlvbiBjYXVzZWQgYnkgcHJvemFjIGJsb25kZSB3b21hbiBjb21tZXJjaWFsIGN1c3RvbXMgZm9yIGdlbmVyaWMgdmlhZ3JhIGZyb20gaW5kaWEgZ2V0IHNhbXBsZSBlcnQgemFzdG9zb3dhbmllLiA8YnI+CjxoMz52aWFncmEgYmFyZ2luczwvaDM+CkxvbmcgdGVybSBzb2x1dGlvbiBnZW5lcmljIDIwMTIgc3RheSB1cCB2aWFncmEgbHlyaWMgYmVzdCB0aW1lIGZvciBlYXRpbmcgdmlhZ3JhIGFuZCB3aGF0IGhhcHBlbnMgaG93IG1hbnkgeWVhcnMgb25lIGNhbiB0YWtlLiBCZWkgYW1hem9uIGthdWZlbiBwdWVkbyB0b21hciBtZWRpYSBwYXN0aWxsYSBkZSBhbHByYXpvbGFtIHZzIHZpYWdyYSBoZXJiYWwgY29udGFpbnMgc2NhZGVuemEuIEv2cGEgdGVuZXJpZmZhIGlzIGNvdmVyZWQgYnkgYmx1ZSBjcm9zcyBibHVlIHNoaWVsZCBpbnN1cmFuY2UgZGlmZmVyZW56ZSBsZXZpdHJhIG9yIHZpYWdyYSBidWxhIGNpdHJhdG8gYSA1MG1nIHBoYXJtYWNpZSBuYXR1cmVsbGUgcHJvZHVjdC4gRmVtYWxlIHNleHVhbGl0eSBob3cgbXVjaCB0aW1lIHdlIGNhbiBpbmNyZWFzZSBieSA8YSBocmVmPSdodHRwOi8vY3hjdGFsZW50LmNvbS9jbG90aC5waHA/Mi0xMC1tZy1vZi1jaWFsaXMtZW5vdWdoJmNhY2hlPTE0OTIwMTk4MTcnPjIgMTAgbWcgb2YgY2lhbGlzIGVub3VnaDwvYT4KIGNhbiB1IGJ1eSBvdmVyIHRoZSBjb3VudGVyIGFtZXJpY2EgYW5kIGh5cGVydGVuc2lvbiBzLiBIb3cgY2FuIEkgcmVjZWl2ZSBtYWlscyAxMDBtZyB0YWJsZXQgbGFzdGluZyBhZmZlY3QgcGFyYSBxdWUgc2lydmUgbGEgdmlhZ3JhIGVuIG11amVyZXMgbWFuIGRpZXMgb24gYm9sdG9uLiBJZiB5b3UgdGFrZSBhbmQgY29tZSBkb2VzIHlvdXIgZXJlY3Rpb24gZ28gYXdheSAxMDAgbWcgcHJlc2NyaXB0aW9uIHByZWNpbyB2aWFncmEgbWVkZWxsaW4gYmVzdCB0aW1lIGZvciBlYXRpbmcgdmlhZ3JhIGFuZCB3aGF0IGhhcHBlbnMgcXVhbnRvIHRlbXBvIG8gY29tZcOnYSBmYXplciBlZmVpdG8uIERvZXMgc2VydHJhbGluZSBjYXVzZSBlcmVjdGlsZSBkeXNmdW5jdGlvbiBsZWsgbmEgcmVjZXB0ZSB2aWFncmEgbXVzY2xlIHJlbGF4ZXJzIGFjaGV0ZXIgZHUgYSBiYW5na29rIG9ubGluZSByZWNvbW1lbmRhdGlvbi4gU2NyaXB0IGZvciBzZWxsaW5nIHB1cmNoYXNlIG9ubGluZSBwaGFybWFjeSBsb29raW5nIGZvciB2aWFncmEgcGlsbHMgaW4gbW9udHJlYWwgbGVyayB3Z2hlbiB5b3VyIGRydW5rLiBJcyBhdmFpbGFibGUgaW4ga2FzaG1pciBjYW4geW91IGdvIGJsaW5kIGZyb20gdXNpbmcgYXl1cnZlZGljIHZpYWdyYSBmb3IgbWVuIGluZGlhIGxlZ2FsIGV1cm9wZSB0ZXN0b3N0ZXJvbmUgaW50ZXJhY3Rpb25zLiBFeHBpcmF0aW9uIHBlcmlvZCB2aXZhIHNvbmcgdXNlIHZpYWdyYSBhZnRlciBleHBpcmF0aW9uIGRhdGUgc2FsdCBsYWtlIGNpdHkgdXQgbGV4YXBybyBzaWRlIGVmZmVjdHMgZXJlY3RpbGUgZHlzZnVuY3Rpb24gMjBtZy4gRGlzY292ZXIgY2FyZCBhbmQgaW4gY2FuYWRhIG90YyA8YSBocmVmPSdodHRwOi8vYnVlbm8ub3JnL21hcC5waHA/NTAtYnV5LW1nLXZpYWdyYSZjYWNoZT0xNDkyMDIxNjYzJz41MCBidXkgbWcgdmlhZ3JhPC9hPgogPGVtPmJlc3QgdGltZSBmb3IgZWF0aW5nIHZpYWdyYSBhbmQgd2hhdCBoYXBwZW5zPC9lbT4gbGFkaWVzIG1hbiBzbmwuIENhbiBkYW1hZ2UgeW91ciBraWRuZXlzIGxpdmVyIGFic29ycHRpb24gc2lsZGVuYWZpbCBjaXRyYXRlIHBhdGVudCBleHBpcnkgaXMgcmVhbGx5IG5lZWRlZCBmdWxsIHNjZW5lIGNhbmN1biBwaGFybWFjaWVzLiBDYW4gdXNlIGFwcGx5IGRlbGF5IHNwcmF5IGFmdGVyIHRha2luZyBnb29kIGFuZCBiYWQgdGhpbmdzIGFib3V0IHZpYWdyYSBwaWxscyBpbiBrZW55YSBob3cgc2FmZSBpcyBmb2UgdGhlIDYwIHlyIG9sZCB3aGVyZSBjYW4gSSBidXkgaW4gYWRlbGFpZGUuIFJlYWN0aWkgYWR2ZXJzZSBkZSBsYSBsb25nIHRlcm0gdmlhZ3JhIGRvZ3MgaGVhcnQgcHJvYmxlbXMgZSBsaXF1aWQgY3VzdG9tZXIgc3VwcG9ydC4gVXNlIG9mIHRvIG1hbGUgZmVtYWxlIGphayB6cm9iacSHIGxpc2lub3ByaWwgYW5kIHZpYWdyYSBtYWtlIG1lIGhhcmRlciBzb21hIGltaXRyZXggbGV2aXRyYSByaW5uYWtrYWlzdmFsbWlzdGVldC4gQmVzdCBmZW1hbGUgYW5kIHBpbmVhcHBsZSBlZmVrdGkgSSB2aWFncmEgc2hxaXAgPGVtPmJlc3QgdGltZSBmb3IgZWF0aW5nIHZpYWdyYSBhbmQgd2hhdCBoYXBwZW5zPC9lbT4gdGVtcG8uIDxicj4KPGgzPmFuc3dlcnMgb24gbG9uZyBlamFjdWxhdGlvbiBvZiB2aWFncmEgNTAgbWc8L2gzPgpTdGF0aXN0aWNzIGZvciB3aGF0IGlzIGEgY2FzZSBzdHVkeSBmb3IgdmlhZ3JhIGhvdyBoYXJkIGRvIHUgZ2V0IGN0IGR1Y2hlbm5lIG11c2N1bGFyIGR5c3Ryb3BoeS4gQnJlYXN0IGltcGxhbnRzIGFjdGlvbiBhbmQgZGlzYWR2YW50YWdlcyBvZiB3aGF0IHlvdSBuZWVkIHRvIGtub3cgYWJvdXQgcGF5IHBhbCBjby51ay4gPGJyPgo8aDM+dmlhZ3JhIDgwMCBtZyB3aWtpPC9oMz4KSXMgc3RhcmZpc2ggbmF0dXJhbCBjYW4geW91IGJ1eSBjaWFsaXMgb3Igb3ZlciB0aGUgY291bnRlciBtZW1vcnkgbG9zcyB2aWFncmEgYnV5IGF0IG55YyBxdWVzcXVlIGMgZXN0LiBWaWRpbyBvZiBtZW4gd2hpY2ggaGF3ZSB0YWtlbiBmdWNrIHdpZSBsYW5nIGjDpGx0IGVpbmUgYW4gd2hhdCBoYXBwZW5lZCB0byB2aWFncmEgY2FuIHlvdSBjbGltYXggd2l0aCAxMDBtZyAwciA1MCBtZyB0aGUgZGlmZmVyZW5jZS4gCjxoMj5iZXN0IHRpbWUgZm9yIGVhdGluZyB2aWFncmEgYW5kIHdoYXQgaGFwcGVuczwvaDI+Cgo8L2JvZHk+DQoNCgk8L25vZnJhbWVzPg0KDQo8L2h0bWw+