Handyman Business Startup Checklists

Handyman Business Startup Checklists

PGgyIGNsYXNzPSdmcy0zJz5UYWJsZSBPZiBDb250ZW50czwvaDI+PGRpdj48YSBocmVmPScja2V5LXRha2Vhd2F5cyc+S2V5IFRha2Vhd2F5czwvYT48L2Rpdj48ZGl2PjxhIGhyZWY9JyN1bmRlcnN0YW5kaW5nLXRoZS1oYW5keW1hbi1idXNpbmVzcy1sYW5kc2NhcGUnPlVuZGVyc3RhbmRpbmcgdGhlIEhhbmR5bWFuIEJ1c2luZXNzIExhbmRzY2FwZTwvYT48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxhIGhyZWY9JyNvdmVydmlldy1vZi1oYW5keW1hbi1idXNpbmVzc2VzJz5PdmVydmlldyBvZiBIYW5keW1hbiBCdXNpbmVzc2VzPC9hPjwvZGl2PjxkaXY+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PGEgaHJlZj0nI2JlbmVmaXRzLW9mLXN0YXJ0aW5nLWEtaGFuZHltYW4tYnVzaW5lc3MnPkJlbmVmaXRzIG9mIFN0YXJ0aW5nIGEgSGFuZHltYW4gQnVzaW5lc3M8L2E+PC9kaXY+PGRpdj48YSBocmVmPScjY3JhZnRpbmcteW91ci1oYW5keW1hbi1idXNpbmVzcy1wbGFuJz5DcmFmdGluZyBZb3VyIEhhbmR5bWFuIEJ1c2luZXNzIFBsYW48L2E+PC9kaXY+PGRpdj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8YSBocmVmPScja2V5LWNvbXBvbmVudHMtb2YtYS1oYW5keW1hbi1idXNpbmVzcy1wbGFuJz5LZXkgQ29tcG9uZW50cyBvZiBhIEhhbmR5bWFuIEJ1c2luZXNzIFBsYW48L2E+PC9kaXY+PGRpdj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8YSBocmVmPScjaWRlbnRpZnlpbmcteW91ci10YXJnZXQtbWFya2V0Jz5JZGVudGlmeWluZyBZb3VyIFRhcmdldCBNYXJrZXQ8L2E+PC9kaXY+PGRpdj48YSBocmVmPScjZXNzZW50aWFsLWhhbmR5bWFuLWJ1c2luZXNzLXN0YXJ0dXAtY2hlY2tsaXN0cyc+RXNzZW50aWFsIEhhbmR5bWFuIEJ1c2luZXNzIFN0YXJ0dXAgQ2hlY2tsaXN0czwvYT48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxhIGhyZWY9JyNjb21wcmVoZW5zaXZlLWhhbmR5bWFuLWJ1c2luZXNzLXN0YXJ0dXAtY2hlY2tsaXN0Jz5Db21wcmVoZW5zaXZlIEhhbmR5bWFuIEJ1c2luZXNzIFN0YXJ0dXAgQ2hlY2tsaXN0PC9hPjwvZGl2PjxkaXY+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PGEgaHJlZj0nI3N0ZXAtYnktc3RlcC1oYW5keW1hbi1idXNpbmVzcy1zdGVwcyc+U3RlcC1ieS1TdGVwIEhhbmR5bWFuIEJ1c2luZXNzIFN0ZXBzPC9hPjwvZGl2PjxkaXY+PGEgaHJlZj0nI2Nob29zaW5nLWEtYnVzaW5lc3Mtc3RydWN0dXJlLWZvci15b3VyLWhhbmR5bWFuLXN0YXJ0dXAnPkNob29zaW5nIGEgQnVzaW5lc3MgU3RydWN0dXJlIGZvciBZb3VyIEhhbmR5bWFuIFN0YXJ0dXA8L2E+PC9kaXY+PGRpdj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8YSBocmVmPScjc29sZS1wcm9wcmlldG9yc2hpcC12cy1sbGMtZm9yLWhhbmR5bWFuLWJ1c2luZXNzZXMnPlNvbGUgUHJvcHJpZXRvcnNoaXAgdnMuIExMQyBmb3IgSGFuZHltYW4gQnVzaW5lc3NlczwvYT48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxhIGhyZWY9JyNsaWNlbnNpbmctYW5kLXJlZ2lzdHJhdGlvbi1yZXF1aXJlbWVudHMnPkxpY2Vuc2luZyBhbmQgUmVnaXN0cmF0aW9uIFJlcXVpcmVtZW50czwvYT48L2Rpdj48ZGl2PjxhIGhyZWY9JyNkZXZlbG9waW5nLWEtc3Ryb25nLWhhbmR5bWFuLWJ1c2luZXNzLW5hbWUnPkRldmVsb3BpbmcgYSBTdHJvbmcgSGFuZHltYW4gQnVzaW5lc3MgTmFtZTwvYT48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxhIGhyZWY9JyN0aXBzLWZvci1jaG9vc2luZy1hLW1lbW9yYWJsZS1oYW5keW1hbi1idXNpbmVzcy1uYW1lJz5UaXBzIGZvciBDaG9vc2luZyBhIE1lbW9yYWJsZSBIYW5keW1hbiBCdXNpbmVzcyBOYW1lPC9hPjwvZGl2PjxkaXY+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PGEgaHJlZj0nI2ltcG9ydGFuY2Utb2YtYnJhbmQtaWRlbnRpdHktaW4taGFuZHltYW4tYnVzaW5lc3Nlcyc+SW1wb3J0YW5jZSBvZiBCcmFuZCBJZGVudGl0eSBpbiBIYW5keW1hbiBCdXNpbmVzc2VzPC9hPjwvZGl2PjxkaXY+PGEgaHJlZj0nI21hcmtldGluZy1zdHJhdGVnaWVzLWZvci1hLXRocml2aW5nLWhhbmR5bWFuLWJ1c2luZXNzJz5NYXJrZXRpbmcgU3RyYXRlZ2llcyBmb3IgYSBUaHJpdmluZyBIYW5keW1hbiBCdXNpbmVzczwvYT48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxhIGhyZWY9JyNjcmVhdGluZy1hbi1lZmZlY3RpdmUtaGFuZHltYW4tYnVzaW5lc3Mtd2Vic2l0ZSc+Q3JlYXRpbmcgYW4gRWZmZWN0aXZlIEhhbmR5bWFuIEJ1c2luZXNzIFdlYnNpdGU8L2E+PC9kaXY+PGRpdj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8YSBocmVmPScjbGV2ZXJhZ2luZy1zb2NpYWwtbWVkaWEtZm9yLWhhbmR5bWFuLWJ1c2luZXNzLXByb21vdGlvbic+TGV2ZXJhZ2luZyBTb2NpYWwgTWVkaWEgZm9yIEhhbmR5bWFuIEJ1c2luZXNzIFByb21vdGlvbjwvYT48L2Rpdj48ZGl2PjxhIGhyZWY9JyNlc3NlbnRpYWwtdG9vbHMtYW5kLXNvZnR3YXJlLWZvci1oYW5keW1hbi1zdGFydHVwcyc+RXNzZW50aWFsIFRvb2xzIGFuZCBTb2Z0d2FyZSBmb3IgSGFuZHltYW4gU3RhcnR1cHM8L2E+PC9kaXY+PGRpdj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8YSBocmVmPScjbXVzdC1oYXZlLWhhbmR5bWFuLWJ1c2luZXNzLXNvZnR3YXJlLXNvbHV0aW9ucyc+TXVzdC1IYXZlIEhhbmR5bWFuIEJ1c2luZXNzIFNvZnR3YXJlIFNvbHV0aW9uczwvYT48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxhIGhyZWY9JyN0b29scy10by1lbmhhbmNlLWVmZmljaWVuY3ktaW4taGFuZHltYW4tc2VydmljZXMnPlRvb2xzIHRvIEVuaGFuY2UgRWZmaWNpZW5jeSBpbiBIYW5keW1hbiBTZXJ2aWNlczwvYT48L2Rpdj48ZGl2PjxhIGhyZWY9JyNmaW5kaW5nLWFuZC1yZXRhaW5pbmctaGFuZHltYW4tYnVzaW5lc3MtY2xpZW50cyc+RmluZGluZyBhbmQgUmV0YWluaW5nIEhhbmR5bWFuIEJ1c2luZXNzIENsaWVudHM8L2E+PC9kaXY+PGRpdj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8YSBocmVmPScjYnVpbGRpbmctYS1jbGllbnQtZGF0YWJhc2UtZm9yLXlvdXItaGFuZHltYW4tYnVzaW5lc3MnPkJ1aWxkaW5nIGEgQ2xpZW50IERhdGFiYXNlIGZvciBZb3VyIEhhbmR5bWFuIEJ1c2luZXNzPC9hPjwvZGl2PjxkaXY+PGEgaHJlZj0nI2NvbmNsdXNpb24nPkNvbmNsdXNpb248L2E+PC9kaXY+PGRpdj48YSBocmVmPScjZmFxcyc+RkFRUzwvYT48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxhIGhyZWY9JyN3aGF0LXNob3VsZC1pLWluY2x1ZGUtaW4tbXktaGFuZHltYW4tYnVzaW5lc3MtY2hlY2tsaXN0LXRvLWVuc3VyZS1hLXN1Y2Nlc3NmdWwtaGFuZHltYW4tYnVzaW5lc3Mtc3RhcnR1cCc+V2hhdCBzaG91bGQgSSBpbmNsdWRlIGluIG15IGhhbmR5bWFuIGJ1c2luZXNzIGNoZWNrbGlzdCB0byBlbnN1cmUgYSBzdWNjZXNzZnVsIGhhbmR5bWFuIGJ1c2luZXNzIHN0YXJ0dXA/PC9hPjwvZGl2PjxkaXY+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PGEgaHJlZj0nI3doYXQtYXJlLXNvbWUtY3JlYXRpdmUtaGFuZHltYW4tYnVzaW5lc3MtaWRlYXMtaS1jYW4tY29uc2lkZXItYmVmb3JlLWxhdW5jaGluZy1teS1oYW5keW1hbi1idXNpbmVzcy1zdGFydHVwJz5XaGF0IGFyZSBzb21lIGNyZWF0aXZlIGhhbmR5bWFuIGJ1c2luZXNzIGlkZWFzIEkgY2FuIGNvbnNpZGVyIGJlZm9yZSBsYXVuY2hpbmcgbXkgaGFuZHltYW4gYnVzaW5lc3Mgc3RhcnR1cD88L2E+PC9kaXY+PGRpdj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8YSBocmVmPScjd2hhdC1hcmUtdGhlLWVzc2VudGlhbC1zdGVwcy10by10YWtlLXdoZW4tcHJlcGFyaW5nLWZvci1hLWhhbmR5bWFuLWJ1c2luZXNzLWlzbi1hbmQtaG93LWRvLWktZ28tYWJvdXQtYWNxdWlyaW5nLXRoZS1uZWNlc3NhcnktaGFuZHltYW4tdG9vbHMtZm9yLW15LXN0YXJ0dXAnPldoYXQgYXJlIHRoZSBlc3NlbnRpYWwgc3RlcHMgdG8gdGFrZSB3aGVuIHByZXBhcmluZyBmb3IgYSBoYW5keW1hbiBidXNpbmVzcyBpc24sIGFuZCBob3cgZG8gSSBnbyBhYm91dCBhY3F1aXJpbmcgdGhlIG5lY2Vzc2FyeSBoYW5keW1hbiB0b29scyBmb3IgbXkgc3RhcnR1cD88L2E+PC9kaXY+PGRpdj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8YSBocmVmPScjaG93LWNhbi1pLWVmZmVjdGl2ZWx5LW1hbmFnZS1teS1oYW5keW1hbi1idXNpbmVzcy1zby10aGF0LWl0LXRocml2ZXMtaW4tdGhlLWNvbXBldGl0aXZlLW1hcmtldC1vZi1oYW5keW1hbi1zZXJ2aWNlcyc+SG93IGNhbiBJIGVmZmVjdGl2ZWx5IG1hbmFnZSBteSBoYW5keW1hbiBidXNpbmVzcyBzbyB0aGF0IGl0IHRocml2ZXMgaW4gdGhlIGNvbXBldGl0aXZlIG1hcmtldCBvZiBoYW5keW1hbiBzZXJ2aWNlcz88L2E+PC9kaXY+PGRpdj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8YSBocmVmPScjd2hhdC1hcmUtdGhlLW1vc3QtY29tbW9uLW1pc3Rha2VzLXRvLWF2b2lkLXdoZW4tc3RhcnRpbmctYS1oYW5keW1hbi1idXNpbmVzcy10by1lbnN1cmUtc3VjY2Vzcy1pbi10aGlzLWNvbXBldGl0aXZlLWpvYi1tYXJrZXQnPldoYXQgYXJlIHRoZSBtb3N0IGNvbW1vbiBtaXN0YWtlcyB0byBhdm9pZCB3aGVuIHN0YXJ0aW5nIGEgaGFuZHltYW4gYnVzaW5lc3MgdG8gZW5zdXJlIHN1Y2Nlc3MgaW4gdGhpcyBjb21wZXRpdGl2ZSBqb2IgbWFya2V0PzwvYT48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxhIGhyZWY9JyNob3ctY2FuLWktY3JlYXRlLWEtY29tcHJlaGVuc2l2ZS1oYW5keW1hbi1idXNpbmVzcy1wbGFuLXRoYXQtb3V0bGluZXMtdGhlLWpvYi1yZXF1aXJlbWVudHMtZm9yLW15LWhhbmR5bWFuLWJ1c2luZXNzJz5Ib3cgY2FuIEkgY3JlYXRlIGEgY29tcHJlaGVuc2l2ZSBoYW5keW1hbiBidXNpbmVzcyBwbGFuIHRoYXQgb3V0bGluZXMgdGhlIGpvYiByZXF1aXJlbWVudHMgZm9yIG15IGhhbmR5bWFuIGJ1c2luZXNzPzwvYT48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxhIGhyZWY9JyNob3ctY2FuLWktZW5zdXJlLXRoYXQtbXktaGFuZHltYW4tYnVzaW5lc3Mtc3RhbmRzLW91dC1pbi1hLWNvbXBldGl0aXZlLW1hcmtldC13aGlsZS1vdXRsaW5pbmctdGhlLWpvYi1yZXF1aXJlbWVudHMtZWZmZWN0aXZlbHknPkhvdyBjYW4gSSBlbnN1cmUgdGhhdCBteSBoYW5keW1hbiBidXNpbmVzcyBzdGFuZHMgb3V0IGluIGEgY29tcGV0aXRpdmUgbWFya2V0IHdoaWxlIG91dGxpbmluZyB0aGUgam9iIHJlcXVpcmVtZW50cyBlZmZlY3RpdmVseT88L2E+PC9kaXY+PGRpdj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8YSBocmVmPScjaG93LWNhbi1pLW91dGxpbmUtdGhlLW5lY2Vzc2FyeS1qb2ItcmVxdWlyZW1lbnRzLWZvci1hLXN1Y2Nlc3NmdWwtaGFuZHltYW4tYnVzaW5lc3MnPkhvdyBjYW4gSSBvdXRsaW5lIHRoZSBuZWNlc3Nhcnkgam9iIHJlcXVpcmVtZW50cyBmb3IgYSBzdWNjZXNzZnVsIGhhbmR5bWFuIGJ1c2luZXNzPzwvYT48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxhIGhyZWY9JyNob3ctY2FuLWktbGV2ZXJhZ2UtdGVjaG5vbG9neS10by1lbmhhbmNlLW15LWhhbmR5bWFuLWJ1c2luZXNzLW9wZXJhdGlvbnMtYW5kLXByb3ZpZGUtYmV0dGVyLXNlcnZpY2VzJz5Ib3cgY2FuIEkgbGV2ZXJhZ2UgdGVjaG5vbG9neSB0byBlbmhhbmNlIG15IGhhbmR5bWFuIGJ1c2luZXNzIG9wZXJhdGlvbnMgYW5kIHByb3ZpZGUgYmV0dGVyIHNlcnZpY2VzPzwvYT48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxhIGhyZWY9JyNob3ctY2FuLWktZWZmZWN0aXZlbHktcHJvbW90ZS1teS1oYW5keW1hbi1idXNpbmVzcy10by1hdHRyYWN0LW1vcmUtY3VzdG9tZXJzLWFuZC1ncm93LW15LWJ1c2luZXNzJz5Ib3cgY2FuIEkgZWZmZWN0aXZlbHkgcHJvbW90ZSBteSBoYW5keW1hbiBidXNpbmVzcyB0byBhdHRyYWN0IG1vcmUgY3VzdG9tZXJzIGFuZCBncm93IG15IGJ1c2luZXNzPzwvYT48L2Rpdj48YnIvPjxoMiBpZD0ia2V5LXRha2Vhd2F5cyI+S2V5IFRha2Vhd2F5czwvaDI+PHVsPjxsaT4gR3Jhc3BpbmcgdGhlIGhhbmR5bWFuIGluZHVzdHJ5IGVudmlyb25tZW50IGlzIGNydWNpYWwgZm9yIHN1Y2Nlc3MuPC9saT48bGk+IEZvcm11bGF0aW5nIGFuIGVmZmVjdGl2ZSBzdHJhdGVneSBpcyB2aXRhbCBmb3IgeW91ciBoYW5keW1hbiB2ZW50dXJlLjwvbGk+PGxpPiBCYXNpYyBjaGVja2xpc3RzIGFyZSBuZWNlc3NhcnkgZm9yIGxhdW5jaGluZyB5b3VyIGhhbmR5bWFuIGJ1c2luZXNzLjwvbGk+PGxpPiBTZWxlY3RpbmcgdGhlIHJpZ2h0IGJ1c2luZXNzIGZyYW1ld29yayBpcyBpbXBvcnRhbnQgZm9yIHlvdXIgc3RhcnR1cC48L2xpPjxsaT4gQ3JlYXRpbmcgYSBjb21wZWxsaW5nIG5hbWUgaXMga2V5IHRvIGJyYW5kaW5nIHlvdXIgaGFuZHltYW4gc2VydmljZS48L2xpPjxsaT4gUHJvbW90aW9uYWwgdGFjdGljcyBhcmUgZXNzZW50aWFsIGZvciBhIGZsb3VyaXNoaW5nIGhhbmR5bWFuIGVudGVycHJpc2UuPC9saT48bGk+IE5lY2Vzc2FyeSBlcXVpcG1lbnQgYW5kIHNvZnR3YXJlIHBsYXkgYSBzaWduaWZpY2FudCByb2xlIGluIHN0YXJ0dXAgZWZmaWNpZW5jeS48L2xpPjxsaT4gQWNxdWlyaW5nIGFuZCBrZWVwaW5nIGNsaWVudHMgaXMgZnVuZGFtZW50YWwgZm9yIGhhbmR5bWFuIGJ1c2luZXNzIGdyb3d0aC48L2xpPjwvdWw+PGgyIGlkPSJ1bmRlcnN0YW5kaW5nLXRoZS1oYW5keW1hbi1idXNpbmVzcy1sYW5kc2NhcGUiPlVuZGVyc3RhbmRpbmcgdGhlIEhhbmR5bWFuIEJ1c2luZXNzIExhbmRzY2FwZTwvaDI+PHA+VGhlIGhhbmR5bWFuIGluZHVzdHJ5IG9mZmVycyBhIHVuaXF1ZSBsYW5kc2NhcGUgZm9yIGFzcGlyaW5nIGVudHJlcHJlbmV1cnMuIEEgc3VjY2Vzc2Z1bCBoYW5keW1hbiBidXNpbmVzcyBzdGFydHVwIGludm9sdmVzIG5hdmlnYXRpbmcgdmFyaW91cyBhc3BlY3RzLCBpbmNsdWRpbmcgZWZmZWN0aXZlIEhhbmR5bWFuIEJ1c2luZXNzIFN0YXJ0dXAgQ2hlY2tsaXN0cy4gRW50cmVwcmVuZXVycywgd2hldGhlciB0aGV5IGlkZW50aWZ5IGFzIGEgaGFuZHkgbWFuLCBoYW5keXdvbWFuLCBvciBoYW5keXBlcnNvbiwgbXVzdCBzZWN1cmUgc3RhcnR1cCBjYXBpdGFsIHRvIGNvdmVyIGluaXRpYWwgZXhwZW5zZXMsIHN1Y2ggYXMgdG9vbHMsIG1hcmtldGluZywgYW5kIGEgY2hlY2tpbmcgYWNjb3VudC4gSGFuZHltZW4gY2FuIGNhcGl0YWxpemUgb24gdGhlIGdyb3dpbmcgZGVtYW5kIGZvciBob21lIHJlcGFpciBzZXJ2aWNlcywgbWFraW5nIGl0IGVzc2VudGlhbCB0byBkZXZlbG9wIGEgY29tcHJlaGVuc2l2ZSBjaGVja2xpc3QgdGhhdCBhZGRyZXNzZXMgZXZlcnl0aGluZyBmcm9tIGxpY2Vuc2luZyByZXF1aXJlbWVudHMgdG8gY3VzdG9tZXIgYWNxdWlzaXRpb24gc3RyYXRlZ2llcy4gVW5kZXJzdGFuZGluZyB0aGUgbnVhbmNlcyBvZiB0aGUgaGFuZHltYW4gbWFya2V0IGlzIGNydWNpYWwgZm9yIGVuc3VyaW5nIGEgcHJvZml0YWJsZSBhbmQgc3VzdGFpbmFibGUgc3RhcnR1cC48L3A+PGRpdiBjbGFzcz0nbWItNCc+PHVsPjxsaT4gUmVzZWFyY2ggbG9jYWwgbWFya2V0IGRlbWFuZCBhbmQgY29tcGV0aXRpb248L2xpPjxsaT4gT2J0YWluIG5lY2Vzc2FyeSBsaWNlbnNlcyBhbmQgcGVybWl0czwvbGk+PGxpPiBJbnZlc3QgaW4gaGlnaC1xdWFsaXR5IHRvb2xzIGFuZCBtYXRlcmlhbHM8L2xpPjxsaT4gQ3JlYXRlIGEgZGV0YWlsZWQgYnVzaW5lc3MgcGxhbiBvdXRsaW5pbmcgc2VydmljZXMgb2ZmZXJlZDwvbGk+PGxpPiBEZXZlbG9wIGEgbWFya2V0aW5nIHN0cmF0ZWd5IHRvIHJlYWNoIHBvdGVudGlhbCBjbGllbnRzPC9saT48bGk+IFNldCBjb21wZXRpdGl2ZSBwcmljaW5nIGJhc2VkIG9uIG1hcmtldCB0cmVuZHM8L2xpPjxsaT4gRXN0YWJsaXNoIGEgcmVsaWFibGUgY3VzdG9tZXIgZmVlZGJhY2sgc3lzdGVtIGZvciBjb250aW51b3VzIGltcHJvdmVtZW50PC9saT48L3VsPjwvZGl2Pgo8aDMgaWQ9Im92ZXJ2aWV3LW9mLWhhbmR5bWFuLWJ1c2luZXNzZXMiPk92ZXJ2aWV3IG9mIEhhbmR5bWFuIEJ1c2luZXNzZXM8L2gzPjxwPkhhbmR5bWFuIGJ1c2luZXNzZXMgY2F0ZXIgdG8gYSB3aWRlIHJhbmdlIG9mIGhvbWUgcmVwYWlyIGFuZCBtYWludGVuYW5jZSBuZWVkcywgbWFraW5nIHRoZW0gZXNzZW50aWFsIGluIHRvZGF5J3MgbWFya2V0LiBGb3IgbWFueSBwcm9wcmlldG9ycywgc3RhcnRpbmcgYSBoYW5keW1hbiBidXNpbmVzcyBpbnZvbHZlcyBuYXZpZ2F0aW5nIHZhcmlvdXMgZGVjaXNpb25zLCBpbmNsdWRpbmcgd2hldGhlciB0byBlc3RhYmxpc2ggYSBzb2xlIHByb3ByaWV0b3JzaGlwIG9yIGFuIExMQy4gVGhpcyBjaG9pY2Ugc2lnbmlmaWNhbnRseSBpbXBhY3RzIHRoZSBoaXJpbmcgcHJvY2VzcyBhbmQgZmluYW5jaWFsIG1hbmFnZW1lbnQsIHN1Y2ggYXMgb2J0YWluaW5nIGFuIGVtcGxveWVyIGlkZW50aWZpY2F0aW9uIG51bWJlci4gRm9sbG93aW5nIGNvbXByZWhlbnNpdmUgSGFuZHltYW4gQnVzaW5lc3MgU3RhcnR1cCBDaGVja2xpc3RzIGNhbiBzdHJlYW1saW5lIHRoaXMgcHJvY2VzcywgZW5zdXJpbmcgY3J1Y2lhbCBzdGVwcyBhcmUgbm90IG92ZXJsb29rZWQuPGJyLz48YnIvPlVuZGVyc3RhbmRpbmcgdGhlIGlkZWFsIGN1c3RvbWVyIHByb2ZpbGUgaXMgdml0YWwgZm9yIHN1Y2Nlc3MgaW4gdGhlIGhhbmR5bWFuIGluZHVzdHJ5LiBNYW5hZ2VycyBhbmQgcHJvcHJpZXRvcnMgbXVzdCBpZGVudGlmeSB0aGUgc3BlY2lmaWMgbmVlZHMgb2YgdGhlaXIgdGFyZ2V0IGRlbW9ncmFwaGljIHRvIHRhaWxvciBzZXJ2aWNlcyBlZmZlY3RpdmVseS4gQXMgZXhwZXJ0IGluc2lnaHRzIHN1Z2dlc3QsIGEgY2xlYXIgY3VzdG9tZXIgdW5kZXJzdGFuZGluZyBjYW4gaW1wcm92ZSBtYXJrZXRpbmcgZWZmb3J0cyBhbmQgcmV0ZW50aW9uIHN0cmF0ZWdpZXMuIFdoZXRoZXIgb3BlcmF0aW5nIHVuZGVyIGEgc29sZSBwcm9wcmlldG9yc2hpcCBvciBhbm90aGVyIHN0cnVjdHVyZSwgYSBmb2N1c2VkIGFwcHJvYWNoIHRvIGNsaWVudCBlbmdhZ2VtZW50IGNhbiB5aWVsZCBsb25nLXRlcm0gZ3Jvd3RoIGFuZCBwcm9maXRhYmlsaXR5IGluIGEgY29tcGV0aXRpdmUgZW52aXJvbm1lbnQuPC9wPgo8aDMgaWQ9ImJlbmVmaXRzLW9mLXN0YXJ0aW5nLWEtaGFuZHltYW4tYnVzaW5lc3MiPkJlbmVmaXRzIG9mIFN0YXJ0aW5nIGEgSGFuZHltYW4gQnVzaW5lc3M8L2gzPjxwPkEgaGFuZHltYW4gYnVzaW5lc3Mgb2ZmZXJzIGZsZXhpYmlsaXR5IGZvciBzb2xlIHByb3ByaWV0b3JzIGxvb2tpbmcgdG8gZW50ZXIgdGhlIHNlcnZpY2UgaW5kdXN0cnkuIEJ5IHV0aWxpemluZyBIYW5keW1hbiBCdXNpbmVzcyBTdGFydHVwIENoZWNrbGlzdHMsIG5ldyBlbnRyZXByZW5ldXJzIGNhbiBlbnN1cmUgdGhleSBoYXZlIGFsbCBuZWNlc3NhcnkgdG9vbHMgYW5kIHNlcnZpY2VzIGluIHBsYWNlLiBUaGV5IGdhaW4gdGhlIG9wcG9ydHVuaXR5IHRvIHJ1biB0aGVpciBvd24gd29ya3Nob3AsIG1hbmFnZSBjbGllbnRlbGUsIGFuZCBjcmVhdGUgYSB0YWlsb3JlZCBhcHByb2FjaCB0byBjdXN0b21lciBzZXJ2aWNlLiBUaGUgc3RhcnR1cCBwcm9jZXNzIGNhbiBiZSBzaW1wbGlmaWVkIHdpdGggZ3VpZGFuY2UgZnJvbSByZXNvdXJjZXMgbGlrZSB0aGUgU21hbGwgQnVzaW5lc3MgQWRtaW5pc3RyYXRpb24sIHdoaWNoIHByb3ZpZGVzIGluc2lnaHRzIG9uIGVmZmVjdGl2ZSBidXNpbmVzcyBtYW5hZ2VtZW50Ljxici8+PGJyLz5DdXN0b21lciBzZXJ2aWNlIGlzIGNyaXRpY2FsIGluIGVzdGFibGlzaGluZyBhIHRydXN0d29ydGh5IHJlcHV0YXRpb24uIEludmVzdGluZyBpbiBjdXN0b21lciBzZXJ2aWNlIHRyYWluaW5nIGZvciBhbnkgZnV0dXJlIGVtcGxveWVlcyBjYW4gZm9zdGVyIGxveWFsdHkgYW5kIGJ1aWxkIGEgc3Ryb25nIGNsaWVudCBiYXNlLiBBZGRpdGlvbmFsbHksIHJlZ3VsYXIgdmlzaXRzIHRvIGEgaGFyZHdhcmUgc3RvcmUgZW5zdXJlIHRoYXQgaGFuZHltZW4gaGF2ZSB0aGUgYmVzdCBtYXRlcmlhbHMgZm9yIHRoZWlyIHByb2plY3RzLCBlbmhhbmNpbmcgdGhlaXIgc2VydmljZSBxdWFsaXR5LiBBIHByb2FjdGl2ZSBhcHByb2FjaCB0byBjdXN0b21lciBuZWVkcyBjYW4gZGlzdGluZ3Vpc2ggYSBoYW5keW1hbiBidXNpbmVzcyBpbiBhIGNvbXBldGl0aXZlIG1hcmtldCwgc29saWRpZnlpbmcgaXRzIGdyb3d0aCBwb3RlbnRpYWwuPC9wPgo8aDIgaWQ9ImNyYWZ0aW5nLXlvdXItaGFuZHltYW4tYnVzaW5lc3MtcGxhbiI+Q3JhZnRpbmcgWW91ciBIYW5keW1hbiBCdXNpbmVzcyBQbGFuPC9oMj48cD5BIHdlbGwtc3RydWN0dXJlZCBidXNpbmVzcyBwbGFuIGlzIHZpdGFsIGZvciBhbnkgaGFuZHltYW4gYnVzaW5lc3MsIGVzcGVjaWFsbHkgZm9yIHRob3NlIGxvb2tpbmcgdG8gc2VjdXJlIGEgc21hbGwgYnVzaW5lc3MgbG9hbi4gVGhlIHBsYW4gc2hvdWxkIGluY29ycG9yYXRlIEhhbmR5bWFuIEJ1c2luZXNzIFN0YXJ0dXAgQ2hlY2tsaXN0cyB0byBlbnN1cmUgYWxsIGNyaXRpY2FsIGFyZWFzIGFyZSBhZGRyZXNzZWQuIEJ5IGRlZmluaW5nIG1hbmFnZW1lbnQgc2tpbGxzIGFuZCBlbXBoYXNpemluZyBjdXN0b21lciBleHBlcmllbmNlLCB0aGUgcGxhbiBjYW4gb3V0bGluZSBzdHJhdGVnaWVzIGZvciBjdXN0b21lciByZXRlbnRpb24gYW5kIGVmZmVjdGl2ZSBjb21tdW5pY2F0aW9uLiBGb3Igc29sZSBwcm9wcmlldG9ycywgdGhpcyBibHVlcHJpbnQgbm90IG9ubHkgc2VydmVzIGFzIGEgcm9hZG1hcCBidXQgYWxzbyBoZWxwcyBpbiBwcmVzZW50aW5nIGEgcHJvZmVzc2lvbmFsIGltYWdlIHRvIHBvdGVudGlhbCBjbGllbnRzIGFuZCBsZW5kZXJzLiBVdGlsaXppbmcgc2VhcmNoIGVuZ2luZSBvcHRpbWl6YXRpb24gdGVjaG5pcXVlcyB3aXRoaW4gdGhlIHBsYW4gY2FuIGVuaGFuY2Ugb25saW5lIHZpc2liaWxpdHksIG1ha2luZyBpdCBlYXNpZXIgZm9yIGN1c3RvbWVycyB0byBmaW5kIHlvdXIgc2VydmljZXMgYW5kIGZvciB5b3UgdG8gZ3JvdyBhcyBhbiBlbXBsb3llciBpbiB0aGUgaGFuZHltYW4gaW5kdXN0cnkuPC9wPgo8aDMgaWQ9ImtleS1jb21wb25lbnRzLW9mLWEtaGFuZHltYW4tYnVzaW5lc3MtcGxhbiI+S2V5IENvbXBvbmVudHMgb2YgYSBIYW5keW1hbiBCdXNpbmVzcyBQbGFuPC9oMz48cD5BIGNvbXByZWhlbnNpdmUgaGFuZHltYW4gYnVzaW5lc3MgcGxhbiBzaG91bGQgaW5jbHVkZSBhIGRldGFpbGVkIGFzc2Vzc21lbnQgb2YgeW91ciBidXNpbmVzcyBlbnRpdHksIHdoZXRoZXIgeW91IGNob29zZSB0byBvcGVyYXRlIGFzIGEgc29sZSBwcm9wcmlldG9yc2hpcCBvciBhbiBMTEMuIFRoaXMgZGVjaXNpb24gYWZmZWN0cyB5b3VyIGxpYWJpbGl0eSwgdGF4ZXMsIGFuZCB0aGUgYWJpbGl0eSB0byBoaXJlIGVtcGxveWVlcy4gWW91IHdpbGwgYWxzbyBuZWVkIHRvIGluY29ycG9yYXRlIGVzc2VudGlhbCBjb21wb25lbnRzIHN1Y2ggYXMgb2J0YWluaW5nIGEgYnVzaW5lc3MgbGljZW5zZSBhbmQgYW55IHJlbGV2YW50IHByb2Zlc3Npb25hbCBjZXJ0aWZpY2F0aW9uIHRoYXQgc3RyZW5ndGhlbnMgeW91ciBjcmVkaWJpbGl0eSBhcyBhIHNraWxsZWQgdHJhZGVzcGVyc29uLiBVdGlsaXppbmcgYXBwcm9wcmlhdGUgaGFuZHltYW4gYnVzaW5lc3Mgc3RhcnR1cCBjaGVja2xpc3RzIGVuc3VyZXMgdGhhdCB5b3UgZG9u4oCZdCBtaXNzIGNyaXRpY2FsIHN0ZXBzIGluIHNldHRpbmcgdXAgeW91ciBjb21wYW55Ljxici8+PGJyLz5Bbm90aGVyIHZpdGFsIGFzcGVjdCBvZiB5b3VyIGJ1c2luZXNzIHBsYW4gaXMgdGhlIGludGVncmF0aW9uIG9mIHNvZnR3YXJlIHNvbHV0aW9ucyB0aGF0IHN0cmVhbWxpbmUgeW91ciBvcGVyYXRpb25zLiBGcm9tIHByb2plY3QgbWFuYWdlbWVudCB0b29scyB0byBjdXN0b21lciByZWxhdGlvbnNoaXAgbWFuYWdlbWVudCBzeXN0ZW1zLCBlZmZlY3RpdmUgc29mdHdhcmUgY2FuIGVuaGFuY2UgZWZmaWNpZW5jeSBpbiB5b3VyIHdvcmtwbGFjZS4gQ29uc2lkZXIgaG93IGdlbmVyYWwgY29udHJhY3RvcnMgbWFuYWdlIHRoZWlyIHByb2plY3RzIGFuZCBjbGllbnQgaW50ZXJhY3Rpb25zIGFzIGEgbW9kZWwgZm9yIHlvdXIgaGFuZHltYW4gc2VydmljZXMuIEVudmlzaW9uIHlvdXIgdG9vbGJveCwgbm90IGp1c3QgYXMgYSBwaHlzaWNhbCBzZXQgb2YgdG9vbHMsIGJ1dCBhbHNvIGFzIGEgbWV0YXBob3IgZm9yIHRoZSByZXNvdXJjZXMgeW91IHdpbGwgdXNlIHRvIGJ1aWxkIGEgc3VjY2Vzc2Z1bCBjb21wYW55LjwvcD4KPGgzIGlkPSJpZGVudGlmeWluZy15b3VyLXRhcmdldC1tYXJrZXQiPklkZW50aWZ5aW5nIFlvdXIgVGFyZ2V0IE1hcmtldDwvaDM+PHA+VW5kZXJzdGFuZGluZyB5b3VyIHRhcmdldCBtYXJrZXQgaXMgY3J1Y2lhbCBmb3IgYSBzdWNjZXNzZnVsIGhhbmR5bWFuIGJ1c2luZXNzIHN0YXJ0dXAuIFV0aWxpemUgaGFuZHltYW4gYnVzaW5lc3Mgc3RhcnR1cCBjaGVja2xpc3RzIHRvIGlkZW50aWZ5IGRlbW9ncmFwaGljcyB0aGF0IGFyZSBpbiBuZWVkIG9mIG1haW50ZW5hbmNlIHNlcnZpY2VzLiBDb25zaWRlciBmYWN0b3JzIGxpa2UgbG9jYXRpb24sIGluY29tZSBsZXZlbCwgYW5kIGhvbWVvd25lcnNoaXAgc3RhdHVzLiBBIGpvYmJlciBjYW4gYWxzbyBoZWxwIHRvIHN0cmVhbWxpbmUgeW91ciBwcm9jZXNzZXMgYW5kIGFsbG93IHlvdSB0byBmb2N1cyBvbiB0aGUgYXJlYXMgd2hlcmUgeW91ciBzZXJ2aWNlcyBhcmUgbW9zdCBuZWVkZWQuIENyZWF0aW5nIGVmZmVjdGl2ZSBtYXJrZXRpbmcgbWF0ZXJpYWxzLCBzdWNoIGFzIGJ1c2luZXNzIGNhcmRzLCBjYW4gaGVscCB5b3UgcmVhY2ggcG90ZW50aWFsIGN1c3RvbWVycyBtb3JlIGVmZmljaWVudGx5Ljxici8+PGJyLz5EZXZlbG9waW5nIGEgc3Ryb25nIG9ubGluZSBwcmVzZW5jZSBjYW4gZnVydGhlciBhc3Npc3QgaW4gaWRlbnRpZnlpbmcgeW91ciB0YXJnZXQgbWFya2V0LiBJbnZlc3RpbmcgaW4gYSB3ZWJzaXRlIGJ1aWxkZXIgZW5hYmxlcyB5b3UgdG8gc2hvd2Nhc2UgeW91ciBza2lsbHMgYW5kIHNlcnZpY2VzIGVmZmVjdGl2ZWx5LiBBZGRyZXNzaW5nIHNwZWNpZmljIG5lZWRzIHdpdGhpbiB5b3VyIGNob3NlbiBkZW1vZ3JhcGhpY3MgY2FuIGVuaGFuY2UgeW91ciBhcHBlYWwuIE1ha2Ugc3VyZSB5b3VyIGhhbmR5bWFuIGJ1c2luZXNzIHN0YXJ0dXAgY2hlY2tsaXN0IGluY2x1ZGVzIHJlc2VhcmNoaW5nIGNvbXBldGl0b3JzIGluIHlvdXIgYXJlYSwgYXMgdW5kZXJzdGFuZGluZyB0aGVpciBvZmZlcmluZ3MgY2FuIGhlbHAgeW91IHRhaWxvciB5b3VyIHNlcnZpY2VzIHRvIG1lZXQgdGhlIGRlbWFuZHMgb2YgeW91ciBjbGllbnRlbGUuPC9wPgo8aDIgaWQ9ImVzc2VudGlhbC1oYW5keW1hbi1idXNpbmVzcy1zdGFydHVwLWNoZWNrbGlzdHMiPkVzc2VudGlhbCBIYW5keW1hbiBCdXNpbmVzcyBTdGFydHVwIENoZWNrbGlzdHM8L2gyPjxwPkNyZWF0aW5nIGEgc3VjY2Vzc2Z1bCBoYW5keW1hbiBidXNpbmVzcyByZXF1aXJlcyBjYXJlZnVsIHBsYW5uaW5nIGFuZCBvcmdhbml6YXRpb24sIHdoaWNoIGlzIHdoZXJlIGhhbmR5bWFuIGJ1c2luZXNzIHN0YXJ0dXAgY2hlY2tsaXN0cyBjb21lIGludG8gcGxheS4gVGhlc2UgY2hlY2tsaXN0cyBvdXRsaW5lIGNydWNpYWwgaGFuZHltYW4gYnVzaW5lc3Mgc3RlcHMgdGhhdCBlbnN1cmUgZXZlcnkgYXNwZWN0IG9mIHlvdXIgdmVudHVyZSBpcyBtZXRpY3Vsb3VzbHkgYWRkcmVzc2VkLiBGcm9tIGRlZmluaW5nIHlvdXIgaGFuZHltYW4gYnVzaW5lc3MgaWRlYXMgYW5kIGNob29zaW5nIGFuIGFwcHJvcHJpYXRlIGhhbmR5bWFuIGJ1c2luZXNzIG5hbWUgdG8gZW5zdXJpbmcgdGhhdCB5b3VyIGhhbmR5bWFuIGJ1c2luZXNzIGNvbXBsaWVzIHdpdGggbG9jYWwgcmVndWxhdGlvbnMsIHRoZXNlIGNoZWNrbGlzdHMgc2VydmUgYXMgYSByb2FkbWFwLiBCeSBtZXRpY3Vsb3VzbHkgZm9sbG93aW5nIHRoZSBoYW5keW1hbiBidXNpbmVzcyBzdGFydHVwIGNoZWNrbGlzdHMsIGFzcGlyaW5nIGVudHJlcHJlbmV1cnMgY2FuIGVzdGFibGlzaCBhIHJvYnVzdCBoYW5keW1hbiBidXNpbmVzcyBwbGFuIHRoYXQgc2V0cyB0aGUgZm91bmRhdGlvbiBmb3IgZ3Jvd3RoIGFuZCBzdXN0YWluYWJpbGl0eSBpbiBhIGNvbXBldGl0aXZlIG1hcmtldC48L3A+CjxoMyBpZD0iY29tcHJlaGVuc2l2ZS1oYW5keW1hbi1idXNpbmVzcy1zdGFydHVwLWNoZWNrbGlzdCI+Q29tcHJlaGVuc2l2ZSBIYW5keW1hbiBCdXNpbmVzcyBTdGFydHVwIENoZWNrbGlzdDwvaDM+PHA+QSB3ZWxsLXN0cnVjdHVyZWQgc2V0IG9mIEhhbmR5bWFuIEJ1c2luZXNzIFN0YXJ0dXAgQ2hlY2tsaXN0cyBpcyBjcnVjaWFsIGZvciBhbnlvbmUgbG9va2luZyB0byBlc3RhYmxpc2ggdGhlaXIgb3duIGhhbmR5bWFuIGJ1c2luZXNzLiBUaGVzZSBjaGVja2xpc3RzIHNob3VsZCBlbmNvbXBhc3MgZXZlcnl0aGluZyBmcm9tIGluaXRpYWwgbWFya2V0IHJlc2VhcmNoIHRvIHRoZSBuZWNlc3NhcnkgcGVybWl0cyBhbmQgbGljZW5zZXMuIEEgbmV3IGhhbmR5bWFuIGJ1c2luZXNzIG93bmVyIG11c3QgY29uc2lkZXIgYWxsIGZhY2V0cyBvZiBvcGVyYXRpb24gdG8gZW5zdXJlIGEgc21vb3RoIGxhdW5jaC4gQXMgaGFuZHltYW4gY29tcGFuaWVzIG9mdGVuIHByb3ZpZGUgc3BlY2lhbGl6ZWQgc2VydmljZXMsIGl0J3MgZXNzZW50aWFsIHRvIHRhaWxvciBjaGVja2xpc3RzIHRvIHRoZSBzcGVjaWZpYyBuZWVkcyBvZiB0aGUgaGFuZHltYW4tbGlrZSBzZXJ2aWNlIGJ1c2luZXNzZXMgYmVpbmcgb2ZmZXJlZC4gPGJyLz48YnIvPkVzdGFibGlzaGluZyBhIHRocml2aW5nIGhhbmR5bWFuIGJ1c2luZXNzIHJlcXVpcmVzIGEgZm9jdXMgb24gb3JnYW5pemF0aW9uIGFuZCBlZmZpY2llbmN5LiBBIGNvbXByZWhlbnNpdmUgY2hlY2tsaXN0IGFsbG93cyBmb3IgdGhlIHByaW9yaXRpemF0aW9uIG9mIGNyaXRpY2FsIHRhc2tzLCBlbnN1cmluZyB0aGF0IGVhY2ggc3RlcCBpcyBjb21wbGV0ZWQgc3lzdGVtYXRpY2FsbHkuIEFzIHRoZSBoYW5keW1hbiBidXNpbmVzcyBncm93cywgbWFpbnRhaW5pbmcgYSB3ZWxsLW9yZ2FuaXplZCBvcGVyYXRpb24gYmVjb21lcyBpbmNyZWFzaW5nbHkgaW1wb3J0YW50LiBCeSBmb2xsb3dpbmcgSGFuZHltYW4gQnVzaW5lc3MgU3RhcnR1cCBDaGVja2xpc3RzLCBhc3BpcmluZyBlbnRyZXByZW5ldXJzIGNhbiBzZXQgYSBzb2xpZCBmb3VuZGF0aW9uIGZvciB0aGVpciB2ZW50dXJlLCBtYWtpbmcgaXQgZWFzaWVyIHRvIGF0dHJhY3QgY2xpZW50cyBhbmQgY3VsdGl2YXRlIGxhc3RpbmcgcmVsYXRpb25zaGlwcyB3aXRoaW4gdGhlaXIgY29tbXVuaXRpZXMuPC9wPgo8aDMgaWQ9InN0ZXAtYnktc3RlcC1oYW5keW1hbi1idXNpbmVzcy1zdGVwcyI+U3RlcC1ieS1TdGVwIEhhbmR5bWFuIEJ1c2luZXNzIFN0ZXBzPC9oMz48cD5MYXVuY2hpbmcgYSBoYW5keW1hbiBidXNpbmVzcyByZXF1aXJlcyBjYXJlZnVsIHBsYW5uaW5nIGFuZCBleGVjdXRpb24uIEEgY29tcHJlaGVuc2l2ZSB1bmRlcnN0YW5kaW5nIG9mIGhhbmR5bWFuIHNlcnZpY2VzIGxpc3RzIGNhbiBoZWxwIHN0cmVhbWxpbmUgdGhlIHByb2Nlc3MuIFNtYWxsIGhhbmR5bWFuIGJ1c2luZXNzZXMgb2Z0ZW4gdGhyaXZlIGJ5IGZvY3VzaW5nIG9uIHNwZWNpZmljIG5pY2hlcyB3aXRoaW4gdGhlIGxvY2FsIG1hcmtldCwgbWFraW5nIGl0IGVzc2VudGlhbCB0byBpZGVudGlmeSB3aGljaCBoYW5keW1hbiBqb2JzIHJlc29uYXRlIG1vc3Qgd2l0aCB0aGUgY29tbXVuaXR5LiBCeSBmb2xsb3dpbmcgZGV0YWlsZWQgaGFuZHltYW4gYnVzaW5lc3Mgc3RhcnR1cCBjaGVja2xpc3RzLCBuZXcgaGFuZHltYW4gYnVzaW5lc3NlcyBjYW4gZW5zdXJlIHRoZXkgY292ZXIgYWxsIG5lY2Vzc2FyeSBhc3BlY3RzLCBmcm9tIHNlY3VyaW5nIGxpY2Vuc2VzIHRvIGFjcXVpcmluZyBlc3NlbnRpYWwgdG9vbHMuPGJyLz48YnIvPkVzdGFibGlzaGluZyBhIHByb2ZpdGFibGUgaGFuZHltYW4gYnVzaW5lc3MgaW52b2x2ZXMgYnJlYWtpbmcgZG93biB0aGUgc3RlcHMgaW50byBtYW5hZ2VhYmxlIHRhc2tzLiBOZXcgZW50cmVwcmVuZXVycyBzaG91bGQgcHJpb3JpdGl6ZSBjcmVhdGluZyBhIHN0cm9uZyBicmFuZCBpZGVudGl0eSB3aGlsZSBleHBsb3JpbmcgdmFyaW91cyBtYXJrZXRpbmcgc3RyYXRlZ2llcyB0byByZWFjaCBwb3RlbnRpYWwgY2xpZW50cy4gTWFueSBoYW5keW1hbiBidXNpbmVzc2VzIGZpbmQgc3VjY2VzcyBieSBsZXZlcmFnaW5nIGxvY2FsIGFkdmVydGlzaW5nIGFuZCByZWZlcnJhbCBwcm9ncmFtcywgd2hpY2ggY2FuIGhlbHAgYnVpbGQgYSBjb25zaXN0ZW50IGNsaWVudCBiYXNlLiBBIHdlbGwtc3RydWN0dXJlZCBzdGFydHVwIGNoZWNrbGlzdCBjYW4gZ3VpZGUgbmV3IGJ1c2luZXNzIG93bmVycyBpbiBuYXZpZ2F0aW5nIHRoZSBjb21wbGV4aXRpZXMgb2YgbGF1bmNoaW5nIGEgam9iLWxpa2UgaGFuZHltYW4gYnVzaW5lc3MuPC9wPjx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtYm9yZGVyZWQgbWItNCBhcnRpY2xlLWNhcmQtdGV4dCI+CiAgPHRyPgogICAgPHRoPlN0ZXA8L3RoPgogICAgPHRoPkRlc2NyaXB0aW9uPC90aD4KICAgIDx0aD5TdGF0dXM8L3RoPgogIDwvdHI+CiAgPHRyPgogICAgPHRkPjEuIE1hcmtldCBSZXNlYXJjaDwvdGQ+CiAgICA8dGQ+SWRlbnRpZnkgc3BlY2lmaWMgaGFuZHltYW4gc2VydmljZXMgdGhhdCBhcmUgaW4gZGVtYW5kIGluIHlvdXIgbG9jYWwgYXJlYS48L3RkPgogICAgPHRkPuKclO+4jyBDb21wbGV0ZWQ8L3RkPgogIDwvdHI+CiAgPHRyPgogICAgPHRkPjIuIExpY2Vuc2luZzwvdGQ+CiAgICA8dGQ+U2VjdXJlIGFsbCBuZWNlc3NhcnkgbGljZW5zZXMgYW5kIHBlcm1pdHMgdG8gb3BlcmF0ZSBsZWdhbGx5LjwvdGQ+CiAgICA8dGQ+4pyU77iPIEluIFByb2dyZXNzPC90ZD4KICA8L3RyPgogIDx0cj4KICAgIDx0ZD4zLiBCcmFuZGluZzwvdGQ+CiAgICA8dGQ+RGV2ZWxvcCBhIHN0cm9uZyBicmFuZCBpZGVudGl0eSwgaW5jbHVkaW5nIGEgYnVzaW5lc3MgbmFtZSBhbmQgbG9nby48L3RkPgogICAgPHRkPuKclO+4jyBOb3QgU3RhcnRlZDwvdGQ+CiAgPC90cj4KICA8dHI+CiAgICA8dGQ+NC4gVG9vbCBBY3F1aXNpdGlvbjwvdGQ+CiAgICA8dGQ+UHVyY2hhc2UgZXNzZW50aWFsIHRvb2xzIGFuZCBlcXVpcG1lbnQgdG8gcGVyZm9ybSBoYW5keW1hbiBzZXJ2aWNlcyBlZmZlY3RpdmVseS48L3RkPgogICAgPHRkPuKclO+4jyBDb21wbGV0ZWQ8L3RkPgogIDwvdHI+CiAgPHRyPgogICAgPHRkPjUuIE1hcmtldGluZyBTdHJhdGVneTwvdGQ+CiAgICA8dGQ+SW1wbGVtZW50IGxvY2FsIGFkdmVydGlzaW5nIGFuZCByZWZlcnJhbCBwcm9ncmFtcyB0byBhdHRyYWN0IGNsaWVudHMuPC90ZD4KICAgIDx0ZD7inJTvuI8gTm90IFN0YXJ0ZWQ8L3RkPgogIDwvdHI+CjwvdGFibGU+CjxoMiBpZD0iY2hvb3NpbmctYS1idXNpbmVzcy1zdHJ1Y3R1cmUtZm9yLXlvdXItaGFuZHltYW4tc3RhcnR1cCI+Q2hvb3NpbmcgYSBCdXNpbmVzcyBTdHJ1Y3R1cmUgZm9yIFlvdXIgSGFuZHltYW4gU3RhcnR1cDwvaDI+PHA+RGVjaWRpbmcgb24gYSBidXNpbmVzcyBzdHJ1Y3R1cmUgaXMgYSBjcnVjaWFsIHN0ZXAgaW4geW91ciBoYW5keW1hbiBidXNpbmVzcyBzdGFydHVwIGNoZWNrbGlzdHMuIFRoZSBjaG9pY2UgYmV0d2VlbiBhIHNvbGUgcHJvcHJpZXRvcnNoaXAgYW5kIGFuIExMQyBjYW4gc2lnbmlmaWNhbnRseSBpbXBhY3QgeW91ciBsaWFiaWxpdHksIHRheGVzLCBhbmQgb3ZlcmFsbCBvcGVyYXRpb24gb2YgcHJvZml0YWJsZSBoYW5keW1hbiBidXNpbmVzc2VzLiBTb2xlIHByb3ByaWV0b3JzaGlwcyBvZmZlciBzaW1wbGljaXR5LCBidXQgdGhleSBleHBvc2UgeW91ciBwZXJzb25hbCBhc3NldHMgdG8gcmlzaywgbWFraW5nIHRoZW0gbGVzcyBmYXZvcmFibGUgZm9yIGhhbmR5bWFuL2hhbmR5d29tZW4gYnVzaW5lc3NlcyBzcGVjaWFsaXppbmcgaW4gc3BlY2lmaWMgaGFuZHltYW4gc2VydmljZXMuIE1lYW53aGlsZSwgZm9ybWluZyBhbiBMTEMgcHJvdmlkZXMgYSBsYXllciBvZiBwcm90ZWN0aW9uIGZvciB5b3VyIHBlcnNvbmFsIGFzc2V0cywgd2hpY2ggaXMgZXNzZW50aWFsIGZvciBsb2NhbCBoYW5keW1hbiBidXNpbmVzc2VzIGFpbWluZyB0byBlc3RhYmxpc2ggY3JlZGliaWxpdHkgYW5kIHRydXN0IHdpdGggaGFuZHltYW4gY2xpZW50cy4gUHJvcGVybHkgcmVnaXN0ZXJpbmcgeW91ciBoYW5keW1hbiBidXNpbmVzcyBvZmZpY2lhbCBlbmhhbmNlcyB5b3VyIGFiaWxpdHkgdG8gYXR0cmFjdCBtb3JlIGNsaWVudHMgYW5kIGVmZmljaWVudGx5IG1hbmFnZSBoYW5keW1hbiB3b3JrIHdoaWxlIGtlZXBpbmcgaW4gY29tcGxpYW5jZSB3aXRoIGFueSBsaWNlbnNpbmcgcmVxdWlyZW1lbnRzLjwvcD48aW1nIGFsdD0naGFuZHltYW4nIGNsYXNzPSdpbWctZmx1aWQgcm91bmRlZCBtYi01JyBoZWlnaHQ9JzQwMCcgc3JjPSdodHRwczovL3B1Yi0wYjI5N2ViNmZjOTM0OGJkODNmOTZiOWUyM2JkNzg3ZS5yMi5kZXYvaW1hZ2VzL2hhbmR5bWFuLWJ1c2luZXNzLXN0YXJ0dXAtY2hlY2tsaXN0cy04MDVmMi5wbmcnID4KPGgzIGlkPSJzb2xlLXByb3ByaWV0b3JzaGlwLXZzLWxsYy1mb3ItaGFuZHltYW4tYnVzaW5lc3NlcyI+U29sZSBQcm9wcmlldG9yc2hpcCB2cy4gTExDIGZvciBIYW5keW1hbiBCdXNpbmVzc2VzPC9oMz48cD5DaG9vc2luZyBiZXR3ZWVuIGEgc29sZSBwcm9wcmlldG9yc2hpcCBhbmQgYW4gTExDIGZvciB5b3VyIGhhbmR5bWFuIGJ1c2luZXNzIGNhbiBzaWduaWZpY2FudGx5IGltcGFjdCB5b3VyIG9wZXJhdGlvbnMuIEEgc29sZSBwcm9wcmlldG9yc2hpcCBpcyBzaW1wbGVyIHRvIGVzdGFibGlzaCBhbmQgcmVxdWlyZXMgbGVzcyBwYXBlcndvcmssIG1ha2luZyBpdCBpZGVhbCBmb3IgYSBsaXR0bGUgaGFuZHltYW4gYnVzaW5lc3Mgb3IgdGhvc2Ugb2ZmZXJpbmcgYmFzaWMgaGFuZHltYW4gc2VydmljZXMuIEhvd2V2ZXIsIGFzIHlvdXIgcHJvZmVzc2lvbmFsIGhhbmR5bWFuIHNlcnZpY2VzIGV4cGFuZCwgdW5kZXJzdGFuZGluZyB0aGUgbGltaXRhdGlvbnMgb2YgcGVyc29uYWwgbGlhYmlsaXR5IGlzIGVzc2VudGlhbC4gSWYgeW91IHNlZWsgcHJvdGVjdGlvbiBvZiBwZXJzb25hbCBhc3NldHMgYW5kIGEgbW9yZSBmb3JtYWwgc3RydWN0dXJlLCBhbiBMTEMgbWlnaHQgYmUgdGhlIGJldHRlciBjaG9pY2UsIGVzcGVjaWFsbHkgaW4gYSBjb21wZXRpdGl2ZSBoYW5keW1hbiBpbmR1c3RyeS48YnIvPjxici8+U3RhcnRpbmcgYSBoYW5keW1hbiBidXNpbmVzcyBhcyBhbiBMTEMgY2FuIGFsc28gZW5oYW5jZSB5b3VyIGhhbmR5bWFuIGJ1c2luZXNzIGFkdmVydGlzaW5nIGVmZm9ydHMuIFRoaXMgZGVzaWduYXRpb24gb2Z0ZW4gYWRkcyBjcmVkaWJpbGl0eSwgbWFraW5nIHBvdGVudGlhbCBjbGllbnRzIG1vcmUgbGlrZWx5IHRvIHRydXN0IHlvdXIgaGFuZHltYW4gaGVscC4gVXRpbGl6aW5nIGhhbmR5bWFuIHNvZnR3YXJlIGNhbiBzdHJlYW1saW5lIHlvdXIgb3BlcmF0aW9ucyBhbmQga2VlcCB5b3Ugb3JnYW5pemVkLCByZWdhcmRsZXNzIG9mIHlvdXIgYnVzaW5lc3Mgc3RydWN0dXJlLiBCb3RoIG9wdGlvbnMgaGF2ZSB0aGVpciBhZHZhbnRhZ2VzLCBzbyBjb25zaWRlciB3aGF0IGFsaWducyBiZXN0IHdpdGggeW91ciBsb25nLXRlcm0gZ29hbHMgYW5kIGNvbnN1bHQgeW91ciBIYW5keW1hbiBCdXNpbmVzcyBTdGFydHVwIENoZWNrbGlzdHMgdG8gZW5zdXJlIGFsbCBhc3BlY3RzIGFyZSBjb3ZlcmVkLjwvcD4KPGgzIGlkPSJsaWNlbnNpbmctYW5kLXJlZ2lzdHJhdGlvbi1yZXF1aXJlbWVudHMiPkxpY2Vuc2luZyBhbmQgUmVnaXN0cmF0aW9uIFJlcXVpcmVtZW50czwvaDM+PHA+TmF2aWdhdGluZyB0aGUgbGljZW5zaW5nIGFuZCByZWdpc3RyYXRpb24gbGFuZHNjYXBlIGlzIGNydWNpYWwgZm9yIGEgaGFuZHltYW4gYnVzaW5lc3MuIEEgY29tcHJlaGVuc2l2ZSBIYW5keW1hbiBCdXNpbmVzcyBTdGFydHVwIENoZWNrbGlzdCBjYW4gZ3VpZGUgZW50cmVwcmVuZXVycyB0aHJvdWdoIHRoZSBuZWNlc3Nhcnkgc3RlcHMgdG8gb2J0YWluIHBlcm1pdHMgYW5kIGNvbXBseSB3aXRoIGxvY2FsIHJlZ3VsYXRpb25zLiBNYW55IHN0YXRlcyByZXF1aXJlIGEgc3BlY2lmaWMgaGFuZHltYW4gbGljZW5zZSwgZXNwZWNpYWxseSB3aGVuIG9mZmVyaW5nIGdlbmVyYWwgaGFuZHltYW4gc2VydmljZXMuIEVzdGFibGlzaGluZyBhIGhhbmR5bWFuIExMQyBjYW4gcHJvdmlkZSBsZWdhbCBwcm90ZWN0aW9uIGFuZCBlbmhhbmNlIGNyZWRpYmlsaXR5IHdoZW4gdW5kZXJ0YWtpbmcgaGFuZHltYW4gdGFza3MuIEJ1c2luZXNzIG93bmVycyBuZWVkIHRvIGVuc3VyZSB0aGF0IHRoZXkgYXJlIGFkZXF1YXRlbHkgbGljZW5zZWQgdG8gb3BlcmF0ZSBsZWdhbGx5LCB3aGljaCBpcyBlc3NlbnRpYWwgZm9yIGJ1aWxkaW5nIHRydXN0IHdpdGggY2xpZW50cyBhbmQgZW5zdXJpbmcgYSBzdWNjZXNzZnVsIGhhbmR5bWFuIHZlbnR1cmUuPGJyLz48YnIvPlJlZ2lzdHJhdGlvbiByZXF1aXJlbWVudHMgdmFyeSBieSBzdGF0ZSBhbmQgbXVuaWNpcGFsaXR5LCBtYWtpbmcgaXQgZXNzZW50aWFsIHRvIHJlc2VhcmNoIGxvY2FsIHJlZ3VsYXRpb25zLiBCZXNpZGVzIG9idGFpbmluZyB0aGUgcmlnaHQgbGljZW5zZXMsIHNlY3VyaW5nIGJ1c2luZXNzIGluc3VyYW5jZSBpcyB2aXRhbCBmb3IgcHJvdGVjdGluZyB5b3VyIGludmVzdG1lbnQuIEEgd2VsbC1zdHJ1Y3R1cmVkIHN0YXJ0dXAgY2hlY2tsaXN0IHNlcnZlcyBhcyBhIHJvYWRtYXAgZHVyaW5nIHRoaXMgcHJvY2VzcywgaGVscGluZyB0byBrZWVwIHRyYWNrIG9mIG5lY2Vzc2FyeSBkb2N1bWVudGF0aW9uLiBDcmVhdGluZyBhIHNvbGlkIGZvdW5kYXRpb24gd2l0aCB0aGUgY29ycmVjdCBsaWNlbnNpbmcgbm90IG9ubHkgcGF2ZXMgdGhlIHdheSBmb3IgcHJvZml0YWJsZSBoYW5keW1hbiBzZXJ2aWNlcyBidXQgYWxzbyBzdXBwb3J0cyB0aGUgZGV2ZWxvcG1lbnQgb2YgdmFsdWFibGUgaGFuZHltYW4gc2tpbGxzLiBDaG9vc2luZyB0aGUgcmlnaHQgaGFuZHltYW4gc29mdHdhcmUgY2FuIGFsc28gc3RyZWFtbGluZSBhZG1pbmlzdHJhdGl2ZSB0YXNrcywgYWxsb3dpbmcgYnVzaW5lc3Mgb3duZXJzIHRvIGZvY3VzIG9uIGRlbGl2ZXJpbmcgZXhjZXB0aW9uYWwgaGFuZHltYW4gc2VydmljZXMuPC9wPgo8aDIgaWQ9ImRldmVsb3BpbmctYS1zdHJvbmctaGFuZHltYW4tYnVzaW5lc3MtbmFtZSI+RGV2ZWxvcGluZyBhIFN0cm9uZyBIYW5keW1hbiBCdXNpbmVzcyBOYW1lPC9oMj48cD5DaG9vc2luZyBhIG1lbW9yYWJsZSBuYW1lIGZvciB5b3VyIGhhbmR5bWFuIGJ1c2luZXNzIGlzIGNydWNpYWwgaW4gc3RhbmRpbmcgb3V0IGluIGEgY29tcGV0aXRpdmUgbWFya2V0LiBBIHN0cm9uZyBuYW1lIHNob3VsZCBlbmNhcHN1bGF0ZSB0aGUgZXNzZW5jZSBvZiB3aGF0IHlvdXIgc2VydmljZSBvZmZlcnMsIHNvIGNvbnNpZGVyIGluY29ycG9yYXRpbmcgZWxlbWVudHMgdGhhdCByZWZsZWN0IGdlbmVyYWwgaGFuZHltYW4gc2tpbGxzIGFuZCB0aGUgY29tcHJlaGVuc2l2ZSBoYW5keW1hbiBzZXJ2aWNlcyB5b3UgcHJvdmlkZS4gVGhpbmsgYWJvdXQgaG93IHlvdXIgbmFtZSByZWxhdGVzIHRvIHRoZSBoYW5keW1hbiBqb2IgZGVzY3JpcHRpb24gYW5kIGFwcGVhbHMgdG8gcG90ZW50aWFsIGNsaWVudHMgbG9va2luZyBmb3IgYSBwcm8gaGFuZHltYW4uIFJldmlzaXRpbmcgeW91ciBIYW5keW1hbiBCdXNpbmVzcyBTdGFydHVwIENoZWNrbGlzdHMgY2FuIGhlbHAgZW5zdXJlIHRoYXQgeW91ciBuYW1lIGFsaWducyB3aXRoIHlvdXIgYnJhbmQgaWRlbnRpdHkgYW5kIHJlc29uYXRlcyB3aXRoIHdoYXQgY3VzdG9tZXJzIGV4cGVjdCBmcm9tIGEgbmV3IGhhbmR5bWFuIHNlcnZpY2UuIEVmZmVjdGl2ZSBicmFuZGluZyBjYW4gZW5oYW5jZSB2aXNpYmlsaXR5IG9uIGhhbmR5bWFuIHNpdGVzLCBtYWtpbmcgaXQgZWFzaWVyIGZvciBjbGllbnRzIHRvIGZpbmQgYW5kIHRydXN0IHlvdXIgb2ZmZXJpbmcuPC9wPjxpbWcgYWx0PSdoYW5keW1hbicgY2xhc3M9J2ltZy1mbHVpZCByb3VuZGVkIG1iLTUnIGhlaWdodD0nNDAwJyBzcmM9J2h0dHBzOi8vcHViLTBiMjk3ZWI2ZmM5MzQ4YmQ4M2Y5NmI5ZTIzYmQ3ODdlLnIyLmRldi9pbWFnZXMvaGFuZHltYW4tYnVzaW5lc3Mtc3RhcnR1cC1jaGVja2xpc3RzLWM2OTBlLnBuZycgPgo8aDMgaWQ9InRpcHMtZm9yLWNob29zaW5nLWEtbWVtb3JhYmxlLWhhbmR5bWFuLWJ1c2luZXNzLW5hbWUiPlRpcHMgZm9yIENob29zaW5nIGEgTWVtb3JhYmxlIEhhbmR5bWFuIEJ1c2luZXNzIE5hbWU8L2gzPjxwPkNob29zaW5nIGEgbWVtb3JhYmxlIGJ1c2luZXNzIG5hbWUgcGxheXMgYSBjcnVjaWFsIHJvbGUgaW4gZXN0YWJsaXNoaW5nIHlvdXIgaGFuZHltYW4gY2FyZWVyLiBJdCBzaG91bGQgcmVmbGVjdCB5b3VyIHNlcnZpY2VzLCBzdWNoIGFzIGhhbmR5bWFuIHJlcGFpciwgYW5kIGVtcGhhc2l6ZSBxdWFsaXRpZXMgbGlrZSByZWxpYWJpbGl0eSwgZXNwZWNpYWxseSBpZiB5b3UgYWltIHRvIGF0dHJhY3QgY2xpZW50cyBzZWVraW5nIGEgcmVsaWFibGUgaGFuZHltYW4uIEF2b2lkIGdlbmVyaWMgbmFtZXMgYW5kIGluc3RlYWQgZm9jdXMgb24gdW5pcXVlIGNvbWJpbmF0aW9ucyB0aGF0IGNhbiBzdGFuZCBvdXQgaW4geW91ciBtYXJrZXRpbmcgZWZmb3J0cy4gRW5zdXJpbmcgdGhlIG5hbWUgaXMgZWFzeSB0byBzcGVsbCBhbmQgcHJvbm91bmNlIHdpbGwgbWFrZSBpdCBlYXNpZXIgZm9yIGN1c3RvbWVycyB0byBmaW5kIHlvdSBhbmQgcmVmZXIgeW91IHRvIG90aGVycy4gPGJyLz48YnIvPkEgY2F0Y2h5IG5hbWUgY2FuIGFsc28gaGlnaGxpZ2h0IHlvdXIgdGFyZ2V0IG1hcmtldCwgd2hldGhlciB5b3UgYXJlIHBvc2l0aW9uaW5nIHlvdXJzZWxmIGFzIGFuIGVudHJ5LWxldmVsIGhhbmR5bWFuIG9yIGFpbWluZyBmb3IgYSBtb3JlIHNwZWNpYWxpemVkIGhhbmR5d29tYW4gYnVzaW5lc3MuIEluY29ycG9yYXRpbmcgdGVybXMgcmVsYXRlZCB0byBlc3NlbnRpYWwgaGFuZHltYW4gc2tpbGxzIGNhbiBoZWxwIGNvbnZleSB5b3VyIGV4cGVydGlzZS4gQXMgeW91IGRldmVsb3AgeW91ciBicmFuZGluZywgY29uc2lkZXIgaG93IHlvdXIgYnVzaW5lc3MgbmFtZSBhbGlnbnMgd2l0aCB5b3VyIG92ZXJhbGwgc3RyYXRlZ3kgb3V0bGluZWQgaW4geW91ciBoYW5keW1hbiBidXNpbmVzcyBzdGFydHVwIGNoZWNrbGlzdHMuIEEgc3Ryb25nIGJyYW5kIGlkZW50aXR5IHdpbGwgc3VwcG9ydCB5b3VyIGdyb3d0aCBhbmQgc3VzdGFpbmFiaWxpdHkgaW4gYSBjb21wZXRpdGl2ZSBtYXJrZXQuPC9wPgo8aDMgaWQ9ImltcG9ydGFuY2Utb2YtYnJhbmQtaWRlbnRpdHktaW4taGFuZHltYW4tYnVzaW5lc3NlcyI+SW1wb3J0YW5jZSBvZiBCcmFuZCBJZGVudGl0eSBpbiBIYW5keW1hbiBCdXNpbmVzc2VzPC9oMz48cD5Fc3RhYmxpc2hpbmcgYSBzdHJvbmcgYnJhbmQgaWRlbnRpdHkgaXMgY3J1Y2lhbCBmb3IgYW55IGhhbmR5bWFuIGJ1c2luZXNzLCB3aGV0aGVyIHRoZSBwcm9mZXNzaW9uYWwgaXMgYSBmdWxsLXRpbWUgaGFuZHltYW4gb3IgYSBzZWxmLWVtcGxveWVkIGhhbmR5bWFuIHdvcmtpbmcgcGFydC10aW1lLiBBIHdlbGwtZGVmaW5lZCBicmFuZCBoZWxwcyBkaWZmZXJlbnRpYXRlIGJldHdlZW4gYSBmZXcgaGFuZHltYW4gc2VydmljZXMgYW5kIGNhbiBhdHRyYWN0IGNsaWVudHMgc2Vla2luZyByZWxpYWJsZSBhbmQgc2tpbGxlZCB3b3JrZXJzLiBIYW5keW1hbiBCdXNpbmVzcyBTdGFydHVwIENoZWNrbGlzdHMgb2Z0ZW4gaGlnaGxpZ2h0IHRoZSBzaWduaWZpY2FuY2Ugb2YgYnJhbmRpbmcsIGFzIGl0IGVuY29tcGFzc2VzIGVsZW1lbnRzIGxpa2UgbG9nb3MsIHRhZ2xpbmVzLCBhbmQgbWVzc2FnaW5nIHRoYXQgcmVzb25hdGUgd2l0aCBwb3RlbnRpYWwgY3VzdG9tZXJzLiBBIG1lbW9yYWJsZSBicmFuZCBjYW4gbWFrZSBhIHNpZ25pZmljYW50IGltcGFjdCBvbiB2aXNpYmlsaXR5IGFuZCB0cnVzdCwgZHJpdmluZyBjbGllbnRlbGUgdG8gcHJlZmVyIHlvdXIgc2VydmljZXMgb3ZlciBjb21wZXRpdG9ycy48YnIvPjxici8+QSB1bmlxdWUgYnJhbmQgaWRlbnRpdHkgbm90IG9ubHkgc3VwcG9ydHMgbWFya2V0aW5nIGVmZm9ydHMgYnV0IGFsc28gZW5oYW5jZXMgdGhlIG92ZXJhbGwgY3VzdG9tZXIgZXhwZXJpZW5jZSBpbiB0aGUgaGFuZHltYW4gc2VjdG9yLiBGb3IgdGhvc2UgZW5nYWdlZCBpbiBoYW5keXdvbWFuIGJ1c2luZXNzIHBsYW5uaW5nIG9yIG9wZXJhdGluZyBhcyBnZW5lcmFsIHJlcGFpciBoYW5keW1lbiwgZXN0YWJsaXNoaW5nIGEgcmVjb2duaXphYmxlIGJyYW5kIGNhbiBsZWFkIHRvIGluY3JlYXNlZCByZWZlcnJhbHMgYW5kIHJlcGVhdCBidXNpbmVzcy4gSGF2aW5nIGEgc3Ryb25nIGJyYW5kIGNhbiBhbHNvIGhlbHAgaW4gcHJvbW90aW5nIGZyZWUgaGFuZHltYW4gY29uc3VsdGF0aW9ucyBvciBwYWNrYWdlcywgY3JlYXRpbmcgYSBjb21wZWxsaW5nIHJlYXNvbiBmb3IgY3VzdG9tZXJzIHRvIGNob29zZSB5b3VyIHNlcnZpY2VzLiBXaXRoIHRoZSByaWdodCBicmFuZCBpZGVudGl0eSwgYSBoYW5keW1hbiBidXNpbmVzcyBjYW4gYnVpbGQgYSBsb3lhbCBjbGllbnQgYmFzZSBhbmQgdGhyaXZlIGluIGEgY29tcGV0aXRpdmUgbWFya2V0LjwvcD4KPGgyIGlkPSJtYXJrZXRpbmctc3RyYXRlZ2llcy1mb3ItYS10aHJpdmluZy1oYW5keW1hbi1idXNpbmVzcyI+TWFya2V0aW5nIFN0cmF0ZWdpZXMgZm9yIGEgVGhyaXZpbmcgSGFuZHltYW4gQnVzaW5lc3M8L2gyPjxwPkZvciBhIHN1Y2Nlc3NmdWwgaGFuZHltYW4gYnVzaW5lc3MsIGltcGxlbWVudGluZyByb2J1c3QgaGFuZHltYW4gbWFya2V0aW5nIHN0cmF0ZWdpZXMgaXMgZXNzZW50aWFsLiBBIHdlbGwtc3RydWN0dXJlZCBhcHByb2FjaCBhbGxvd3MgcmVsaWFibGUgaGFuZHltZW4gdG8gY29ubmVjdCB3aXRoIHBvdGVudGlhbCBjbGllbnRzIGVmZmVjdGl2ZWx5LiBTdGFydCBieSBkZXZlbG9waW5nIGEgY29tcHJlaGVuc2l2ZSBoYW5keW1hbiBidXNpbmVzcyBzdGFydHVwIGNoZWNrbGlzdCB0aGF0IGluY2x1ZGVzIGNyZWF0aW5nIGEgdXNlci1mcmllbmRseSB3ZWJzaXRlIHNob3djYXNpbmcgbWFueSBoYW5keW1hbiBzZXJ2aWNlcy4gVGhpcyB3ZWJzaXRlIHNob3VsZCBmZWF0dXJlIGNsZWFyIHByaWNpbmcgZm9yIGhhbmR5bWFuIGpvYnMsIGFsbG93aW5nIGN1c3RvbWVycyB0byBlYXNpbHkgdW5kZXJzdGFuZCBjb3N0cy4gVXRpbGl6aW5nIGZyZWUgaGFuZHltYW4gbWFya2V0aW5nIHRlY2huaXF1ZXMsIHN1Y2ggYXMgZW5nYWdpbmcgb24gc29jaWFsIG1lZGlhIGFuZCBvcHRpbWl6aW5nIGxvY2FsIHNlYXJjaCByZXN1bHRzLCBjYW4gc2lnbmlmaWNhbnRseSBlbmhhbmNlIHZpc2liaWxpdHkgaW4geW91ciBjb21tdW5pdHkuIFdoZW4gY2xpZW50cyBzZWVrIGxvY2FsIGhhbmR5bWFuIHNlcnZpY2VzLCBhIHN0cm9uZyBvbmxpbmUgcHJlc2VuY2UgZW5zdXJlcyB5b3VyIGJ1c2luZXNzIHN0YW5kcyBvdXQuIExhc3RseSwgZW5zdXJlIHRoYXQgeW91IGhhdmUgYSBjbGVhciBoYW5keW1hbiBjb250cmFjdCB0byBlc3RhYmxpc2ggdHJ1c3QgYW5kIHByb2Zlc3Npb25hbGlzbSB3aXRoIGV2ZXJ5IGpvYiB5b3UgdW5kZXJ0YWtlLjwvcD4KPGgzIGlkPSJjcmVhdGluZy1hbi1lZmZlY3RpdmUtaGFuZHltYW4tYnVzaW5lc3Mtd2Vic2l0ZSI+Q3JlYXRpbmcgYW4gRWZmZWN0aXZlIEhhbmR5bWFuIEJ1c2luZXNzIFdlYnNpdGU8L2gzPjxwPkEgd2VsbC1kZXNpZ25lZCB3ZWJzaXRlIGlzIGNydWNpYWwgZm9yIGFueSBoYW5keW1hbiBidXNpbmVzcyBzdGFydHVwLCBlbmFibGluZyBwb3RlbnRpYWwgY2xpZW50cyB0byBxdWlja2x5IGZpbmQgdGhlIHNlcnZpY2VzIHRoZXkgbmVlZC4gVGhpcyBpcyBlc3BlY2lhbGx5IGltcG9ydGFudCBnaXZlbiB0aGUgY29tcGV0aXRpb24sIGFzIG1hbnkgc2tpbGxlZCBoYW5keW1lbiB1dGlsaXplIHRoZWlyIG9ubGluZSBwcmVzZW5jZSB0byBzaG93Y2FzZSB0aGVpciBleHBlcnRpc2UuIEluY2x1ZGluZyBzZWN0aW9ucyB0aGF0IGRldGFpbCBoYW5keW1hbiBsYWJvciwgYXZlcmFnZSBoYW5keW1hbiByYXRlcywgYW5kIHRoZSBiYXNpYyBoYW5keW1hbiB0b29scyB1c2VkIGNhbiBoZWxwIHBvdGVudGlhbCBjdXN0b21lcnMgdW5kZXJzdGFuZCB0aGUgdmFsdWUgdGhleSByZWNlaXZlLiBJdCdzIGFsc28gZXNzZW50aWFsIHRvIGVuc3VyZSB0aGUgd2Vic2l0ZSBpcyB1c2VyLWZyaWVuZGx5LCBhbGxvd2luZyB2aXNpdG9ycyB0byBlYXNpbHkgYWNjZXNzIGluZm9ybWF0aW9uIGFib3V0IGhhbmR5bWFuIGxhd3MsIHNlcnZpY2VzLCBhbmQgaG93IHRvIGNvbnRhY3QgeW91Ljxici8+PGJyLz5UbyBhdHRyYWN0IGEgYnJvYWRlciBjbGllbnRlbGUsIGNvbnNpZGVyIGNyZWF0aW5nIGNvbnRlbnQgdGhhdCBoaWdobGlnaHRzIHlvdXIgcXVhbGlmaWNhdGlvbnMsIHN1Y2ggYXMgeW91ciBoYW5keW1hbiBsaWNlbnNlIGFuZCBleHBlcmllbmNlLiBGZWF0dXJpbmcgdGVzdGltb25pYWxzIGZyb20gc2F0aXNmaWVkIGN1c3RvbWVycyBjYW4gYnVpbGQgdHJ1c3QgYW5kIGNyZWRpYmlsaXR5LiBBIGRlZGljYXRlZCBwYWdlIHRoYXQgb3V0bGluZXMgY29tbW9uIGhhbmR5bWFuIHByb2JsZW1zIGFuZCBzb2x1dGlvbnMgY291bGQgcmVzb25hdGUgd2VsbCwgc2hvd2Nhc2luZyB5b3VyIHNraWxscyBhcyBhbiBleHBlcmllbmNlZCBoYW5keW1hbiBvciBoYW5keSBwZXJzb24uIFdpdGggYSBzb2xpZCBvbmxpbmUgcHJlc2VuY2UsIHlvdSB3aWxsIGJlIHdlbGwgb24geW91ciB3YXkgdG8gZXN0YWJsaXNoaW5nIGEgc3VjY2Vzc2Z1bCBoYW5keW1hbiBidXNpbmVzcyBhbmQgbmF2aWdhdGluZyB0aGUgZXNzZW50aWFsIGhhbmR5bWFuIGJ1c2luZXNzIHN0YXJ0dXAgY2hlY2tsaXN0cyBlZmZlY3RpdmVseS48L3A+PGRpdiBjbGFzcz0nbWItNCc+PHVsPjxsaT4gTWFrZSBzdXJlIHlvdXIgd2Vic2l0ZSBpcyBtb2JpbGUtZnJpZW5kbHkgdG8gY2F0ZXIgdG8gY2xpZW50cyB1c2luZyBzbWFydHBob25lcyBhbmQgdGFibGV0cy48L2xpPjxsaT4gSW5jbHVkZSBjbGVhciBjYWxscy10by1hY3Rpb24gb24gZWFjaCBwYWdlIHRvIGd1aWRlIHZpc2l0b3JzIHRvd2FyZCBib29raW5nIGEgc2VydmljZSBvciBjb250YWN0aW5nIHlvdS48L2xpPjxsaT4gT3B0aW1pemUgeW91ciB3ZWJzaXRlIGZvciBzZWFyY2ggZW5naW5lcyAoU0VPKSB0byBoZWxwIHBvdGVudGlhbCBjbGllbnRzIGZpbmQgeW91ciBzZXJ2aWNlcyBtb3JlIGVhc2lseSBvbmxpbmUuPC9saT48bGk+IFVzZSBoaWdoLXF1YWxpdHkgaW1hZ2VzIGFuZCB2aWRlb3MgdG8gZGVtb25zdHJhdGUgeW91ciB3b3JrIGFuZCBzaG93Y2FzZSBjb21wbGV0ZWQgcHJvamVjdHMuPC9saT48bGk+IFJlZ3VsYXJseSB1cGRhdGUgeW91ciBibG9nIG9yIHJlc291cmNlcyBzZWN0aW9uIHdpdGggaGVscGZ1bCB0aXBzIGFuZCBhZHZpY2UgdG8gZW5nYWdlIHlvdXIgYXVkaWVuY2UgYW5kIGltcHJvdmUgeW91ciB3ZWJzaXRlJ3MgcmFua2luZy48L2xpPjxsaT4gSW5jb3Jwb3JhdGUgYSBzaW1wbGUgYm9va2luZyBzeXN0ZW0gb3IgY29udGFjdCBmb3JtIHRvIHN0cmVhbWxpbmUgdGhlIHByb2Nlc3MgZm9yIHBvdGVudGlhbCBjdXN0b21lcnMuPC9saT48bGk+IE1vbml0b3IgeW91ciB3ZWJzaXRlJ3MgcGVyZm9ybWFuY2UgYW5kIG1ha2UgYWRqdXN0bWVudHMgYmFzZWQgb24gdXNlciBmZWVkYmFjayBhbmQgYW5hbHl0aWNzLjwvbGk+PC91bD48L2Rpdj4KPGgzIGlkPSJsZXZlcmFnaW5nLXNvY2lhbC1tZWRpYS1mb3ItaGFuZHltYW4tYnVzaW5lc3MtcHJvbW90aW9uIj5MZXZlcmFnaW5nIFNvY2lhbCBNZWRpYSBmb3IgSGFuZHltYW4gQnVzaW5lc3MgUHJvbW90aW9uPC9oMz48cD5Tb2NpYWwgbWVkaWEgc2VydmVzIGFzIGEgdml0YWwgdG9vbCBmb3IgcHJvbW90aW5nIGEgaGFuZHltYW4gYnVzaW5lc3Mgc3RhcnR1cC4gUGxhdGZvcm1zIGxpa2UgRmFjZWJvb2sgYW5kIEluc3RhZ3JhbSBhbGxvdyBsb2NhbCBoYW5keW1hbiBhZ2VuY2llcyB0byBzaG93Y2FzZSB0aGVpciB3b3JrLCBzaGFyZSBjbGllbnQgdGVzdGltb25pYWxzLCBhbmQgcG9zdCBiZWZvcmUtYW5kLWFmdGVyIHBob3RvcyBvZiBjb21wbGV0ZWQgcHJvamVjdHMuIEVuZ2FnaW5nIGNvbnRlbnQgY2FuIGF0dHJhY3QgcG90ZW50aWFsIGNsaWVudHMgd2hvIGFyZSBjdXJpb3VzIGFib3V0IGhhbmR5bWFuIHByaWNlcyBhbmQgcmF0ZXMgaW4gdGhlaXIgYXJlYS4gRWFjaCBwb3N0IGNhbiBlbXBoYXNpemUgdGhlIGltcG9ydGFuY2Ugb2YgaGF2aW5nIHRoZSByaWdodCBoYW5keW1hbiBsaWNlbnNlIGFuZCBpbnN1cmFuY2UgdG8gZW5zdXJlIHBlYWNlIG9mIG1pbmQgZm9yIGN1c3RvbWVycy4gSW5jb3Jwb3JhdGluZyBhIGhhbmR5bWFuIHJlY2VpcHQgdGVtcGxhdGUgaW50byBzb2NpYWwgbWVkaWEgY29udGVudCBjYW4gYWxzbyBwcm9qZWN0IGEgcHJvZmVzc2lvbmFsIGltYWdlLjxici8+PGJyLz5FZmZlY3RpdmUgc29jaWFsIG1lZGlhIG1hcmtldGluZyBjYW4gaW5jcmVhc2UgYnJhbmQgdmlzaWJpbGl0eSBhbmQgaGVscCBlc3RhYmxpc2ggYSBzb2xpZCBvbmxpbmUgcHJlc2VuY2UuIFBvc3RpbmcgcmVndWxhcmx5IGFib3V0IHJlbGV2YW50IHRvcGljcywgaW5jbHVkaW5nIGhhbmR5bWFuIGxhdyBvciB1cGRhdGVzIG9uIGhhbmR5bWFuIHJhdGVzLCBjYW4gcG9zaXRpb24geW91ciBidXNpbmVzcyBhcyBhbiBhdXRob3JpdHkgaW4gdGhlIGZpZWxkLiBCeSBzaGFyaW5nIHRpcHMgYW5kIGFkdmljZSByZWxhdGVkIHRvIGhhbmR5d29yaywgeW91IGNhbiBjcmVhdGUgYSBsb3lhbCBmb2xsb3dpbmcgdGhhdCB0cnVzdHMgeW91ciBleHBlcnRpc2UuIFV0aWxpemluZyB0aGVzZSBzdHJhdGVnaWVzIHdoaWxlIGFkaGVyaW5nIHRvIHlvdXIgaGFuZHltYW4gYnVzaW5lc3Mgc3RhcnR1cCBjaGVja2xpc3RzIGNhbiBsYXkgYSBzdHJvbmcgZm91bmRhdGlvbiBmb3IgYWNjZXNzaW5nIHBvdGVudGlhbCBjbGllbnRzIGluIG5lZWQgb2Ygc2VydmljZXMuPC9wPgo8aDIgaWQ9ImVzc2VudGlhbC10b29scy1hbmQtc29mdHdhcmUtZm9yLWhhbmR5bWFuLXN0YXJ0dXBzIj5Fc3NlbnRpYWwgVG9vbHMgYW5kIFNvZnR3YXJlIGZvciBIYW5keW1hbiBTdGFydHVwczwvaDI+PHA+RWZmZWN0aXZlIHRvb2xzIGFuZCBzb2Z0d2FyZSBhcmUgY3J1Y2lhbCBmb3IgZW5zdXJpbmcgdGhlIHN1Y2Nlc3Mgb2YgYSBoYW5keW1hbiBidXNpbmVzcy4gVmFyaW91cyBwbGF0Zm9ybXMgY2FuIGhlbHAgc3RyZWFtbGluZSBvcGVyYXRpb25zLCB3aGljaCBpcyBwYXJ0aWN1bGFybHkgYmVuZWZpY2lhbCBmb3IgZm9sbG93aW5nIEhhbmR5bWFuIEJ1c2luZXNzIFN0YXJ0dXAgQ2hlY2tsaXN0cy4gVXRpbGl6aW5nIHByb2plY3QgbWFuYWdlbWVudCBzb2Z0d2FyZSBhbGxvd3MgaGFuZHltZW4gYW5kIGhhbmR5d29tZW4gdG8gY29vcmRpbmF0ZSB0YXNrcyBlZmZpY2llbnRseSwgZW5zdXJpbmcgdGhleSBzdGF5IG9uIHRyYWNrIGR1cmluZyB0aGVpciBoYW5keW1hbiByb3V0ZS4gRm9yIHRoZSBhdmVyYWdlIGhhbmR5bWFuIG9yIGhhbmR5d29tYW4sIGhhdmluZyBhY2Nlc3MgdG8gZmluYW5jaWFsIG1hbmFnZW1lbnQgdG9vbHMgY2FuIGhlbHAgc2V0IGNvbXBldGl0aXZlIGhhbmR5bWFuIHJhdGVzIHdoaWxlIGtlZXBpbmcgdHJhY2sgb2YgZXhwZW5zZXMgcmVsYXRlZCB0byByZXF1aXJlZCBoYW5keW1hbiBsaWNlbnNlcyBhbmQgYW55IGFwcGxpY2FibGUgZmVlcy4gSXQncyBhbHNvIGltcG9ydGFudCB0byBjb25zaWRlciB0aGUgaW1wYWN0IG9mIG9ubGluZSBkaXJlY3RvcmllcyBmb3IgcHJvbW90aW5nIHNlcnZpY2VzLCBhcyBsb2NhbCBoYW5keXBlcnNvbnMgb2Z0ZW4gcmVseSBvbiB2aXNpYmlsaXR5IHRvIGF0dHJhY3QgY2xpZW50cy4gRW5nYWdpbmcgd2l0aCBjdXN0b21lcnMgdGhyb3VnaCB0aGVzZSBwbGF0Zm9ybXMgY2FuIGFsc28gYXNzaXN0IHVubGljZW5zZWQgaGFuZHltZW4gaW4gdHJhbnNpdGlvbmluZyB0byBsaWNlbnNlZCBvcGVyYXRvcnMsIGhlbHBpbmcgdGhlbSBzZWN1cmUgaGFuZHl3b21hbiBkZWFscyB0aHJvdWdoIGxlZ2l0aW1hdGUgbWVhbnMuPC9wPgo8aDMgaWQ9Im11c3QtaGF2ZS1oYW5keW1hbi1idXNpbmVzcy1zb2Z0d2FyZS1zb2x1dGlvbnMiPk11c3QtSGF2ZSBIYW5keW1hbiBCdXNpbmVzcyBTb2Z0d2FyZSBTb2x1dGlvbnM8L2gzPjxwPlNlbGVjdGluZyB0aGUgcmlnaHQgc29mdHdhcmUgaXMgY3J1Y2lhbCBmb3IgYSBoYW5keW1hbiBidXNpbmVzcyBvd25lciBuYXZpZ2F0aW5nIHRoZSBzdGFydHVwIHByb2Nlc3MuIFV0aWxpemluZyBlZmZlY3RpdmUgYnVzaW5lc3MgbWFuYWdlbWVudCB0b29scyBjYW4gc3RyZWFtbGluZSBvcGVyYXRpb25zIGFuZCBlbmhhbmNlIGVmZmljaWVuY3kuIEZvciBpbnN0YW5jZSwgc29mdHdhcmUgdGhhdCBoZWxwcyBtYW5hZ2UgeW91ciBwcm9mZXNzaW9uYWwgc2VydmljZXMgcHJvZmlsZSBjYW4gYmUgaW52YWx1YWJsZS4gVGhpcyBlbnN1cmVzIHBvdGVudGlhbCBjbGllbnRzIGNhbiBlYXNpbHkgdmlldyB5b3VyIGNhcGFiaWxpdGllcyB3aGlsZSBhbGxvd2luZyB5b3UgdG8gZm9jdXMgb24gb2J0YWluaW5nIGEgRmxvcmlkYSBoYW5keW1hbiBsaWNlbnNlLiBLZWVwaW5nIG9yZ2FuaXplZCB3aXRoIGRpZ2l0YWwgSGFuZHltYW4gQnVzaW5lc3MgU3RhcnR1cCBDaGVja2xpc3RzIGNhbiBwcmV2ZW50IG92ZXJzaWdodCwgcGFydGljdWxhcmx5IHdoZW4gc2VjdXJpbmcgc3VmZmljaWVudCBzdGFydHVwIGNhcGl0YWwgb3IgYXBwbHlpbmcgZm9yIGEgc21hbGwgc3RhcnR1cCBsb2FuLiA8YnIvPjxici8+SW52ZXN0aW5nIGluIHRoZSByaWdodCB0b29scyBjYW4gc2lnbmlmaWNhbnRseSBpbXBhY3QgeW91ciBidXNpbmVzcyBsb29rIGFuZCBjdXN0b21lciBzYXRpc2ZhY3Rpb24uIFNvZnR3YXJlIGRlc2lnbmVkIGZvciBzY2hlZHVsaW5nLCBpbnZvaWNpbmcsIGFuZCBjdXN0b21lciByZWxhdGlvbnNoaXAgbWFuYWdlbWVudCBjYW4gc2F2ZSB0aW1lIGFuZCByZWR1Y2UgYWRtaW5pc3RyYXRpdmUgYnVyZGVucy4gQXMgYSBzbWFsbCBidXNpbmVzcyBvd25lciwgbGV2ZXJhZ2luZyB0aGVzZSB0ZWNobm9sb2d5IHNvbHV0aW9ucyBhbGxvd3MgeW91IHRvIGNvbmNlbnRyYXRlIG9uIGRlbGl2ZXJpbmcgcXVhbGl0eSBzZXJ2aWNlcy4gRWZmZWN0aXZlIHNvZnR3YXJlIG5vdCBvbmx5IGFpZHMgaW4gbWFpbnRhaW5pbmcgY29tcGxpYW5jZSB3aXRoIGxvY2FsIHJlZ3VsYXRpb25zIGJ1dCBhbHNvIHN0cmVhbWxpbmVzIHRoZSBwcm9jZXNzZXMsIGVuc3VyaW5nIGEgc21vb3RoIG9wZXJhdGlvbiBmb3IgeW91ciBoYW5keW1hbiBidXNpbmVzcy48L3A+CjxoMyBpZD0idG9vbHMtdG8tZW5oYW5jZS1lZmZpY2llbmN5LWluLWhhbmR5bWFuLXNlcnZpY2VzIj5Ub29scyB0byBFbmhhbmNlIEVmZmljaWVuY3kgaW4gSGFuZHltYW4gU2VydmljZXM8L2gzPjxwPkVmZmljaWVuY3kgaXMgY3J1Y2lhbCBmb3IgYW55IHNlcnZpY2UgYnVzaW5lc3MsIGVzcGVjaWFsbHkgZm9yIGEgaGFuZHltYW4gdmVudHVyZS4gSW5jb3Jwb3JhdGluZyBhcHByb3ByaWF0ZSBzdGFydGVyIHRvb2xzIGNhbiBzaWduaWZpY2FudGx5IGJvb3N0IHByb2R1Y3Rpdml0eSBhbmQgc3RyZWFtbGluZSBvcGVyYXRpb25zLiBVdGlsaXppbmcgYm9va2tlZXBpbmcgc29mdHdhcmUgaGVscHMgbWFuYWdlIHN0YXJ0dXAgY29zdHMgZWZmZWN0aXZlbHksIGFsbG93aW5nIGJ1c2luZXNzIG93bmVycyB0byBrZWVwIHRyYWNrIG9mIGV4cGVuc2VzIGFuZCBpbmNvbWUgc2VhbWxlc3NseS4gSW1wbGVtZW50aW5nIGNvbXByZWhlbnNpdmUgSGFuZHltYW4gQnVzaW5lc3MgU3RhcnR1cCBDaGVja2xpc3RzIGNhbiBndWlkZSBwcm9wcmlldG9yc2hpcHMgdGhyb3VnaCBlc3NlbnRpYWwgdGFza3MsIGVuc3VyaW5nIG5vIHZpdGFsIGVsZW1lbnRzIGFyZSBvdmVybG9va2VkIGluIHRoZSBwbGFubmluZyBwcm9jZXNzLjxici8+PGJyLz5IYXZpbmcgYSB3ZWxsLW9wdGltaXplZCBHb29nbGUgQnVzaW5lc3MgUHJvZmlsZSBpcyBlc3NlbnRpYWwgZm9yIGF0dHJhY3Rpbmcgc3VyZSBjbGllbnRzIHRvIHlvdXIgaGFuZHltYW4gYnVzaW5lc3MuIFRoaXMgdG9vbCBub3Qgb25seSBlbmhhbmNlcyB2aXNpYmlsaXR5IGJ1dCBhbHNvIGVzdGFibGlzaGVzIGNyZWRpYmlsaXR5LiBMZXZlcmFnaW5nIHRlY2hub2xvZ3kgd2l0aCBlZmZpY2llbnQgdG9vbHMgZW5oYW5jZXMgc2VydmljZSBkZWxpdmVyeSBhbmQgY2xpZW50IHNhdGlzZmFjdGlvbi4gTWFraW5nIGluZm9ybWVkIGRlY2lzaW9ucyB3aXRoIHRoZSByaWdodCByZXNvdXJjZXMgd2lsbCB1bHRpbWF0ZWx5IGxlYWQgdG8gYnVzaW5lc3MgZ3Jvd3RoIGFuZCBzdWNjZXNzIGluIHRoZSBjb21wZXRpdGl2ZSBoYW5keW1hbiBtYXJrZXQuPC9wPgo8aDIgaWQ9ImZpbmRpbmctYW5kLXJldGFpbmluZy1oYW5keW1hbi1idXNpbmVzcy1jbGllbnRzIj5GaW5kaW5nIGFuZCBSZXRhaW5pbmcgSGFuZHltYW4gQnVzaW5lc3MgQ2xpZW50czwvaDI+PHA+QnVpbGRpbmcgYSByZWxpYWJsZSBjbGllbnQgYmFzZSBpcyBjcnVjaWFsIGZvciBhbnkgaGFuZHltYW4gYnVzaW5lc3MuIFNtYWxsIGJ1c2luZXNzIG93bmVycyBtdXN0IGltcGxlbWVudCBlZmZlY3RpdmUgc3RyYXRlZ2llcyB0byBhdHRyYWN0IGFuZCByZXRhaW4gY2xpZW50cy4gVXRpbGl6aW5nIEhhbmR5bWFuIEJ1c2luZXNzIFN0YXJ0dXAgQ2hlY2tsaXN0cyBjYW4gZ3VpZGUgYnVzaW5lc3Mgb3duZXJzIHRocm91Z2ggZXNzZW50aWFsIHN0ZXBzIGluIGVzdGFibGlzaGluZyB0aGVpciBjbGllbnQgcmVsYXRpb25zaGlwcy4gU2VydmljZS1iYXNlZCBidXNpbmVzc2VzLCBwYXJ0aWN1bGFybHkgdGhvc2UgaW4gcHJvZmVzc2lvbmFsIHNlcnZpY2VzLCBiZW5lZml0IHNpZ25pZmljYW50bHkgZnJvbSBhIHdlbGwtbWFpbnRhaW5lZCBkYXRhYmFzZSBvZiBjbGllbnRzLCB3aGljaCBjYW4gc3RyZWFtbGluZSBidXNpbmVzcyBvcGVyYXRpb25zIGFuZCBlbmhhbmNlIGN1c3RvbWVyIHNhdGlzZmFjdGlvbi4gQ29uc3VsdGFudHMgb2Z0ZW4gcmVjb21tZW5kIHV0aWxpemluZyBzZXJ2aWNlIGJ1c2luZXNzIGV4YW1wbGVzIHRvIGluc3BpcmUgaWRlYXMgZm9yIGVzdGFibGlzaGluZyBhIHN0cm9uZyBwcmVzZW5jZSBpbiB0aGUgbWFya2V0LiBBcyBwcm9wcmlldG9yc2hpcHMsIGhhbmR5bWFuIGJ1c2luZXNzZXMgc2hvdWxkIGZvY3VzIG9uIHBlcnNvbmFsaXplZCBzZXJ2aWNlLCBjcmVhdGluZyBtZWFuaW5nZnVsIGludGVyYWN0aW9ucyB0aGF0IGxlYWQgdG8gcmVwZWF0IGN1c3RvbWVycyBhbmQgcmVmZXJyYWxzLjwvcD4KPGgzIGlkPSJidWlsZGluZy1hLWNsaWVudC1kYXRhYmFzZS1mb3IteW91ci1oYW5keW1hbi1idXNpbmVzcyI+QnVpbGRpbmcgYSBDbGllbnQgRGF0YWJhc2UgZm9yIFlvdXIgSGFuZHltYW4gQnVzaW5lc3M8L2gzPjxwPkEgd2VsbC1vcmdhbml6ZWQgY2xpZW50IGRhdGFiYXNlIGZvcm1zIHRoZSBiYWNrYm9uZSBvZiBhbnkgc3VjY2Vzc2Z1bCBoYW5keW1hbiBidXNpbmVzcy4gQnkgdXRpbGl6aW5nIGEgcmVsaWFibGUgY2xpZW50IG1hbmFnZW1lbnQgdG9vbCwgeW91IGNhbiBzdHJlYW1saW5lIHlvdXIgb3BlcmF0aW9ucyBhbmQgbWFpbnRhaW4gdml0YWwgaW5mb3JtYXRpb24gYWJvdXQgeW91ciBjdXN0b21lcnMuIFRoaXMgaW5jbHVkZXMgY29udGFjdCBkZXRhaWxzLCBzZXJ2aWNlIGhpc3RvcnksIGFuZCBwcmVmZXJlbmNlcywgYWxsIG9mIHdoaWNoIGVuaGFuY2UgeW91ciBhYmlsaXR5IHRvIHByb3ZpZGUgcGVyc29uYWxpemVkIHNlcnZpY2UuIEluY29ycG9yYXRpbmcgdGhpcyBzeXN0ZW1hdGljIGFwcHJvYWNoIHdpbGwgaGVscCB5b3Ugc3RheSBhaGVhZCBpbiB5b3VyIGhhbmR5bWFuIGJ1c2luZXNzIHN0YXJ0dXAgY2hlY2tsaXN0cywgZW5zdXJpbmcgdGhhdCB5b3UgZG8gbm90IG92ZXJsb29rIGNydWNpYWwgZWxlbWVudHMgb2YgY2xpZW50IG1hbmFnZW1lbnQuPGJyLz48YnIvPkluIHRoZSBjb21wZXRpdGl2ZSBsYW5kc2NhcGUgb2YgaGFuZHltYW4gc2VydmljZXMsIGhhdmluZyBhIHJvYnVzdCBjbGllbnQgZGF0YWJhc2UgY2FuIGdpdmUgeW91ciBidXNpbmVzcyBhIHNpZ25pZmljYW50IGVkZ2UuIEl0IGFsbG93cyB5b3UgdG8gdHJhY2sgaW50ZXJhY3Rpb25zIGVmZmVjdGl2ZWx5LCBtYW5hZ2UgYXBwb2ludG1lbnRzIGVmZmljaWVudGx5LCBhbmQgZm9sbG93IHVwIHdpdGggY2xpZW50cyBmb3IgZnV0dXJlIHNlcnZpY2VzIG9yIHJlZmVycmFscy4gSW1wbGVtZW50aW5nIGEgY2xpZW50IG1hbmFnZW1lbnQgdG9vbCBub3Qgb25seSBzYXZlcyB0aW1lIGJ1dCBhbHNvIGhlbHBzIGluIGJ1aWxkaW5nIGxvbmctdGVybSByZWxhdGlvbnNoaXBzLiBBZGhlcmluZyB0byB5b3VyIGhhbmR5bWFuIGJ1c2luZXNzIHN0YXJ0dXAgY2hlY2tsaXN0cyB3aWxsIGVuc3VyZSB0aGF0IHlvdSBzZXQgdXAgdGhpcyBlc3NlbnRpYWwgZnJhbWV3b3JrIGZyb20gdGhlIHZlcnkgYmVnaW5uaW5nLCBlbmFibGluZyB5b3VyIGJ1c2luZXNzIHRvIHRocml2ZS4gPGJyLz48YnIvPk5vdGU6IFRoZSBjb250ZW50IGFib3ZlIHByb3ZpZGVzIGVzc2VudGlhbCBpbnNpZ2h0cyBpbnRvIGVzdGFibGlzaGluZyBhIGNsaWVudCBkYXRhYmFzZSBmb3IgeW91ciBoYW5keW1hbiBidXNpbmVzcy48L3A+PHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ib3JkZXJlZCBtYi00IGFydGljbGUtY2FyZC10ZXh0Ij4KICA8dHI+CiAgICA8dGg+Q2xpZW50IE5hbWU8L3RoPgogICAgPHRoPkNvbnRhY3QgTnVtYmVyPC90aD4KICAgIDx0aD5FbWFpbCBBZGRyZXNzPC90aD4KICAgIDx0aD5TZXJ2aWNlIEhpc3Rvcnk8L3RoPgogICAgPHRoPkxhc3QgQ29udGFjdCBEYXRlPC90aD4KICA8L3RyPgogIDx0cj4KICAgIDx0ZD5Kb2huIERvZTwvdGQ+CiAgICA8dGQ+KDU1NSkgMTIzLTQ1Njc8L3RkPgogICAgPHRkPmpvaG4uZG9lQGV4YW1wbGUuY29tPC90ZD4KICAgIDx0ZD5QbHVtYmluZywgUGFpbnRpbmc8L3RkPgogICAgPHRkPjIwMjMtMTAtMTU8L3RkPgogIDwvdHI+CiAgPHRyPgogICAgPHRkPkphbmUgU21pdGg8L3RkPgogICAgPHRkPig1NTUpIDk4Ny02NTQzPC90ZD4KICAgIDx0ZD5qYW5lLnNtaXRoQGV4YW1wbGUuY29tPC90ZD4KICAgIDx0ZD5FbGVjdHJpY2FsLCBDYXJwZW50cnk8L3RkPgogICAgPHRkPjIwMjMtMDktMjI8L3RkPgogIDwvdHI+CiAgPHRyPgogICAgPHRkPlNhbSBKb2huc29uPC90ZD4KICAgIDx0ZD4oNTU1KSA2NTQtMzIxMDwvdGQ+CiAgICA8dGQ+c2FtLmpvaG5zb25AZXhhbXBsZS5jb208L3RkPgogICAgPHRkPkxhbmRzY2FwaW5nLCBQcmVzc3VyZSBXYXNoaW5nPC90ZD4KICAgIDx0ZD4yMDIzLTEwLTAxPC90ZD4KICA8L3RyPgogIDx0cj4KICAgIDx0ZD5NYXJ5IFdpbHNvbjwvdGQ+CiAgICA8dGQ+KDU1NSkgMzIxLTc2NTQ8L3RkPgogICAgPHRkPm1hcnkud2lsc29uQGV4YW1wbGUuY29tPC90ZD4KICAgIDx0ZD5Sb29maW5nLCBUaWxpbmc8L3RkPgogICAgPHRkPjIwMjMtMTAtMDU8L3RkPgogIDwvdHI+CjwvdGFibGU+CjxoMiBpZD0iY29uY2x1c2lvbiI+Q29uY2x1c2lvbjwvaDI+PHA+QSBzdWNjZXNzZnVsIGhhbmR5bWFuIGJ1c2luZXNzIHJlbGllcyBoZWF2aWx5IG9uIGNvbXByZWhlbnNpdmUgSGFuZHltYW4gQnVzaW5lc3MgU3RhcnR1cCBDaGVja2xpc3RzIHRoYXQgZ3VpZGUgZW50cmVwcmVuZXVycyB0aHJvdWdoIGVzc2VudGlhbCBzdGVwcyBpbiBlc3RhYmxpc2hpbmcgdGhlaXIgdmVudHVyZXMuIEJ5IHByaW9yaXRpemluZyBjdXN0b21lciBzZXJ2aWNlLCBvd25lcnMgY2FuIGJ1aWxkIGxhc3RpbmcgcmVsYXRpb25zaGlwcyB3aXRoIHRoZWlyIGNsaWVudGVsZSwgZW5zdXJpbmcgc2F0aXNmYWN0aW9uIGFuZCByZXBlYXQgYnVzaW5lc3MuIEluY29ycG9yYXRpbmcgZWZmZWN0aXZlIGN1c3RvbWVyIHNlcnZpY2UgdHJhaW5pbmcgZm9yIGVtcGxveWVlcyB3aWxsIGZvc3RlciBhIHBvc2l0aXZlIGF0bW9zcGhlcmUsIGVuaGFuY2luZyBvdmVyYWxsIHBlcmZvcm1hbmNlLiBFbmdhZ2luZyB3aXRoIGxvY2FsIGhhcmR3YXJlIHN0b3JlcyBjYW4gcHJvdmlkZSB2YWx1YWJsZSByZXNvdXJjZXMgYW5kIGZvc3RlciBjb21tdW5pdHkgY29ubmVjdGlvbnMuIEFzcGlyaW5nIHNvbGUgcHJvcHJpZXRvcnMgbXVzdCBhbHNvIGNvbnNpZGVyIG1hbmFnZW1lbnQgc2tpbGxzIHRvIG5hdmlnYXRlIHRoZWlyIHJlc3BvbnNpYmlsaXRpZXMgZWZmZWN0aXZlbHksIGJhbGFuY2luZyB3b3Jrc2hvcCBvcGVyYXRpb25zIGFuZCBjdXN0b21lciBpbnRlcmFjdGlvbnMuIFV0aWxpemluZyByZXNvdXJjZXMgZnJvbSB0aGUgU21hbGwgQnVzaW5lc3MgQWRtaW5pc3RyYXRpb24gY2FuIGhlbHAgc3RyZWFtbGluZSB0aGlzIHByb2Nlc3MgYW5kIGVuc3VyZSBjb21wbGlhbmNlIHdpdGggcmVndWxhdGlvbnMsIHVsdGltYXRlbHkgcGF2aW5nIHRoZSB3YXkgZm9yIHN1c3RhaW5hYmxlIGdyb3d0aCBpbiB0aGUgaGFuZHltYW4gaW5kdXN0cnkuPC9wPgo8aDIgaWQ9ImZhcXMiPkZBUVM8L2gyPjxoMyBpZD0id2hhdC1zaG91bGQtaS1pbmNsdWRlLWluLW15LWhhbmR5bWFuLWJ1c2luZXNzLWNoZWNrbGlzdC10by1lbnN1cmUtYS1zdWNjZXNzZnVsLWhhbmR5bWFuLWJ1c2luZXNzLXN0YXJ0dXAiPldoYXQgc2hvdWxkIEkgaW5jbHVkZSBpbiBteSBoYW5keW1hbiBidXNpbmVzcyBjaGVja2xpc3QgdG8gZW5zdXJlIGEgc3VjY2Vzc2Z1bCBoYW5keW1hbiBidXNpbmVzcyBzdGFydHVwPzwvaDM+PHA+VG8gYWNoaWV2ZSBhIHN1Y2Nlc3NmdWwgaGFuZHltYW4gYnVzaW5lc3Mgc3RhcnR1cCwgeW91ciBoYW5keW1hbiBidXNpbmVzcyBjaGVja2xpc3Qgc2hvdWxkIGluY2x1ZGUgZXNzZW50aWFsIGl0ZW1zIHN1Y2ggYXMgbG9jYWwgaGFuZHltYW4gYWdlbmN5IHJlZ2lzdHJhdGlvbiwgaGFuZHltYW4gbGljZW5zZSByZXF1aXJlbWVudHMgZGVwZW5kaW5nIG9uIHlvdXIgc3RhdGUsIGhhbmR5bWFuIGluc3VyYW5jZSBmb3IgbGlhYmlsaXR5IGNvdmVyYWdlLCBwdXJjaGFzaW5nIGhhbmR5bWFuIHRvb2xzIHJlcXVpcmVkIGZvciB2YXJpb3VzIGpvYnMsIGFuZCBjcmVhdGluZyBhIHdlbGwtb3JnYW5pemVkIGhhbmR5bWFuIGJ1c2luZXNzIHBsYW4uIEFkZGl0aW9uYWxseSwgY29uc2lkZXIgZGlmZmVyZW50IGhhbmR5bWFuIGlkZWFzIGFuZCBzZXJ2aWNlIG9mZmVyaW5ncyB0aGF0IGNhdGVyIHRvIHlvdXIgdGFyZ2V0IG1hcmtldCwgd2hldGhlciB5b3UgcGxhbiB0byBvcGVyYXRlIGFzIGEgcGFydC10aW1lIGhhbmR5bWFuIG9yIHN0YXJ0IGEgZnVsbC10aW1lIGhhbmR5bWFuL2hhbmR5d29tYW4gYnVzaW5lc3MuPC9wPjxoMyBpZD0id2hhdC1hcmUtc29tZS1jcmVhdGl2ZS1oYW5keW1hbi1idXNpbmVzcy1pZGVhcy1pLWNhbi1jb25zaWRlci1iZWZvcmUtbGF1bmNoaW5nLW15LWhhbmR5bWFuLWJ1c2luZXNzLXN0YXJ0dXAiPldoYXQgYXJlIHNvbWUgY3JlYXRpdmUgaGFuZHltYW4gYnVzaW5lc3MgaWRlYXMgSSBjYW4gY29uc2lkZXIgYmVmb3JlIGxhdW5jaGluZyBteSBoYW5keW1hbiBidXNpbmVzcyBzdGFydHVwPzwvaDM+PHA+V2hlbiBleHBsb3JpbmcgaGFuZHltYW4gYnVzaW5lc3MgaWRlYXMsIGl0J3MgaW1wb3J0YW50IHRvIHRoaW5rIGFib3V0IG5pY2hlIG1hcmtldHMgb3Igc3BlY2lhbGl6ZWQgaGFuZHltYW4gb2ZmZXJpbmdzIHRoYXQgY2F0ZXIgdG8gc3BlY2lmaWMgY3VzdG9tZXIgbmVlZHMuIEFzIHlvdSBwbGFuIHlvdXIgaGFuZHltYW4gc3RhcnR1cCwgY29uc2lkZXIgd2hldGhlciB5b3Ugd2FudCB0byBwcm92aWRlIGdlbmVyYWwgcmVwYWlyIGhhbmR5bWFuIHNlcnZpY2VzIG9yIGZvY3VzIG9uIG1vcmUgZGVmaW5lZCBhcmVhcywgc3VjaCBhcyBob21lIGltcHJvdmVtZW50IG9yIGFwcGxpYW5jZSBpbnN0YWxsYXRpb24uIEFkZGl0aW9uYWxseSwgdW5kZXJzdGFuZGluZyBwcmljaW5nIGZvciBoYW5keW1hbiBqb2JzIGFuZCB0aGUgYXZlcmFnZSBoYW5keW1hbi9oYW5keXdvbWFuIHJhdGVzIGluIHlvdXIgYXJlYSBjYW4gaGVscCB5b3UgcG9zaXRpb24geW91ciBidXNpbmVzcyBlZmZlY3RpdmVseS4gRG9u4oCZdCBmb3JnZXQgdG8gY2hlY2sgdGhlIHJlcXVpcmVtZW50cyBmb3Igb2J0YWluaW5nIGEgaGFuZHltYW4vaGFuZHl3b21hbiBsaWNlbnNlLCBhcyBkaWZmZXJlbnQgcmVnaW9ucywgbGlrZSBGbG9yaWRhLCBtYXkgaGF2ZSB2YXJpZWQgcmVndWxhdGlvbnMuIEJ5IHJlc2VhcmNoaW5nIHRoZXNlIGFzcGVjdHMsIHlvdSBjYW4gdGFpbG9yIHlvdXIgb3duIGhhbmR5bWFuIHNlcnZpY2VzIHRvIG1lZXQgdGhlIGRlbWFuZHMgb2YgcHJvZmVzc2lvbmFsIGhhbmR5bWVuIGFuZCBleHBlcmllbmNlZCBoYW5keW1lbiBhbGlrZS48L3A+PGgzIGlkPSJ3aGF0LWFyZS10aGUtZXNzZW50aWFsLXN0ZXBzLXRvLXRha2Utd2hlbi1wcmVwYXJpbmctZm9yLWEtaGFuZHltYW4tYnVzaW5lc3MtaXNuLWFuZC1ob3ctZG8taS1nby1hYm91dC1hY3F1aXJpbmctdGhlLW5lY2Vzc2FyeS1oYW5keW1hbi10b29scy1mb3ItbXktc3RhcnR1cCI+V2hhdCBhcmUgdGhlIGVzc2VudGlhbCBzdGVwcyB0byB0YWtlIHdoZW4gcHJlcGFyaW5nIGZvciBhIGhhbmR5bWFuIGJ1c2luZXNzIGlzbiwgYW5kIGhvdyBkbyBJIGdvIGFib3V0IGFjcXVpcmluZyB0aGUgbmVjZXNzYXJ5IGhhbmR5bWFuIHRvb2xzIGZvciBteSBzdGFydHVwPzwvaDM+PHA+V2hlbiBwcmVwYXJpbmcgZm9yIGEgaGFuZHltYW4gYnVzaW5lc3MgaXNuLCB5b3Ugc2hvdWxkIGNyZWF0ZSBhIGRldGFpbGVkIGJ1c2luZXNzIHBsYW4gb3V0bGluaW5nIHlvdXIgYnVzaW5lc3MgbW9kZWwsIHRhcmdldCBtYXJrZXQsIGFuZCBtYXJrZXRpbmcgc3RyYXRlZ2llcy4gQWRkaXRpb25hbGx5LCBpdOKAmXMgY3J1Y2lhbCB0byByZXNlYXJjaCBkaWZmZXJlbnQgaGFuZHltYW4gbGljZW5zaW5nIHJlcXVpcmVtZW50cyBpbiB5b3VyIGFyZWEsIHN1Y2ggYXMgb2J0YWluaW5nIGEgRmxvcmlkYSBoYW5keW1hbiBsaWNlbnNl4oCUYW5kIHVuZGVyc3RhbmRpbmcgdGhlIHByaWNlIGhhbmR5bWFuIGpvYnMgaW4geW91ciByZWdpb24uIE9uY2UgeW91IGhhdmUgeW91ciBidXNpbmVzcyBzdHJ1Y3R1cmUgZGVmaW5lZCwgeW91IGNhbiBwcm9jZWVkIHRvIHB1cmNoYXNlIGhhbmR5bWFuIHRvb2xzIGFuZCByZXNvdXJjZXMgdGhhdCBwcm8gaGFuZHltZW4gdHlwaWNhbGx5IHVzZSB0byBlbnN1cmUgaGlnaC1xdWFsaXR5IHNlcnZpY2UgaW4geW91ciBoYW5keSBtYW4gYnVzaW5lc3MuPC9wPjxoMyBpZD0iaG93LWNhbi1pLWVmZmVjdGl2ZWx5LW1hbmFnZS1teS1oYW5keW1hbi1idXNpbmVzcy1zby10aGF0LWl0LXRocml2ZXMtaW4tdGhlLWNvbXBldGl0aXZlLW1hcmtldC1vZi1oYW5keW1hbi1zZXJ2aWNlcyI+SG93IGNhbiBJIGVmZmVjdGl2ZWx5IG1hbmFnZSBteSBoYW5keW1hbiBidXNpbmVzcyBzbyB0aGF0IGl0IHRocml2ZXMgaW4gdGhlIGNvbXBldGl0aXZlIG1hcmtldCBvZiBoYW5keW1hbiBzZXJ2aWNlcz88L2gzPjxwPlRvIGVuc3VyZSB5b3VyIGhhbmR5bWFuIGJ1c2luZXNzIHRocml2ZXMsIGZvY3VzIG9uIGRldmVsb3BpbmcgYSBzb2xpZCBidXNpbmVzcyBwbGFuLCBzaG93Y2FzaW5nIHlvdXIgc2tpbGxzIGluIHZhcmlvdXMgam9ic+KAlGxpa2UgaGFuZHltYW4gdGFza3MsIGFuZCBlc3RhYmxpc2hpbmcgYSBzdHJvbmcgb25saW5lIHByZXNlbmNlLiBBZGRpdGlvbmFsbHksIGNvbnNpZGVyIG5ldHdvcmtpbmcgd2l0aCBsb2NhbCBzdXBwbGllcnMgYW5kIG90aGVyIHByb2Zlc3Npb25hbHMgaW4gdGhlIGhhbmR5bWFuIGluZHVzdHJ5IHRvIGdhaW4gaW5zaWdodHMgYW5kIGJ1aWxkIHJlbGF0aW9uc2hpcHMgdGhhdCBjYW4gZW5oYW5jZSB5b3VyIGJ1c2luZXNzLiBNYWtlIHN1cmUgdG8gY29udGludWFsbHkgdXBkYXRlIHlvdXIga25vd2xlZGdlIGFuZCByZXNvdXJjZXMgaW4gdGhlIGhhbmR5bWFuIGZpZWxkLCBzbyB5b3Ugc3RheSByZWxldmFudCBhbmQgY29tcGV0aXRpdmUgaW4gdGhlIGhhbmR5bWFuIGJ1c2luZXNzIGxhbmRzY2FwZS48L3A+PGgzIGlkPSJ3aGF0LWFyZS10aGUtbW9zdC1jb21tb24tbWlzdGFrZXMtdG8tYXZvaWQtd2hlbi1zdGFydGluZy1hLWhhbmR5bWFuLWJ1c2luZXNzLXRvLWVuc3VyZS1zdWNjZXNzLWluLXRoaXMtY29tcGV0aXRpdmUtam9iLW1hcmtldCI+V2hhdCBhcmUgdGhlIG1vc3QgY29tbW9uIG1pc3Rha2VzIHRvIGF2b2lkIHdoZW4gc3RhcnRpbmcgYSBoYW5keW1hbiBidXNpbmVzcyB0byBlbnN1cmUgc3VjY2VzcyBpbiB0aGlzIGNvbXBldGl0aXZlIGpvYiBtYXJrZXQ/PC9oMz48cD5UbyBhdm9pZCBjb21tb24gbWlzdGFrZXMgaW4geW91ciBoYW5keW1hbiBidXNpbmVzcyBzdGFydHVwLCBiZSBzdXJlIHRvIGNvbmR1Y3QgdGhvcm91Z2ggcmVzZWFyY2ggb24gdGhlIGhhbmR5bWFuIHNlcnZpY2VzIG1hcmtldCwgdW5kZXJzdGFuZCB0aGUgbGVnYWwgcmVxdWlyZW1lbnRzIGZvciBzdGFydGluZyBhIGhhbmR5bWFuIGJ1c2luZXNzLCBhbmQgY3JlYXRlIGEgc29saWQgYnVzaW5lc3MgcGxhbi4gQWRkaXRpb25hbGx5LCBoYXZpbmcgdGhlIHJpZ2h0IGhhbmR5bWFuIHRvb2xzIGFuZCBlcXVpcG1lbnQgZnJvbSB0aGUgYmVnaW5uaW5nIGlzIGNydWNpYWwgZm9yIHN1Y2Nlc3MgaW4geW91ciBidXNpbmVzcy4gQXZvaWRpbmcgdGhlc2UgZXJyb3JzIGNhbiBsZWFkIHRvIGEgbW9yZSBzdWNjZXNzZnVsIGhhbmR5bWFuIGJ1c2luZXNzIGluIHRoZSBsb25nIHJ1bi48L3A+PGgzIGlkPSJob3ctY2FuLWktY3JlYXRlLWEtY29tcHJlaGVuc2l2ZS1oYW5keW1hbi1idXNpbmVzcy1wbGFuLXRoYXQtb3V0bGluZXMtdGhlLWpvYi1yZXF1aXJlbWVudHMtZm9yLW15LWhhbmR5bWFuLWJ1c2luZXNzIj5Ib3cgY2FuIEkgY3JlYXRlIGEgY29tcHJlaGVuc2l2ZSBoYW5keW1hbiBidXNpbmVzcyBwbGFuIHRoYXQgb3V0bGluZXMgdGhlIGpvYiByZXF1aXJlbWVudHMgZm9yIG15IGhhbmR5bWFuIGJ1c2luZXNzPzwvaDM+PHA+VG8gY3JlYXRlIGEgY29tcHJlaGVuc2l2ZSBoYW5keW1hbiBidXNpbmVzcyBwbGFuLCBvdXRsaW5lIHRoZSBzcGVjaWZpYyBqb2IgdGFza3MgYW5kIHJlc3BvbnNpYmlsaXRpZXMgcmVxdWlyZWQgZm9yIHlvdXIgaGFuZHltYW4gYnVzaW5lc3MuIENvbnNpZGVyIGluY2x1ZGluZyBzZWN0aW9ucyB0aGF0IGRldGFpbCB0aGUgc2VydmljZXMgeW91IG9mZmVyLCBzdWNoIGFzIGhhbmR5bWFuIGlzbiwgYXMgd2VsbCBhcyBmaW5hbmNpYWwgcHJvamVjdGlvbnMgYW5kIG1hcmtldGluZyBzdHJhdGVnaWVzLiBUaGlzIHBsYW4gc2hvdWxkIGFsc28gaGlnaGxpZ2h0IHRoZSBuZWNlc3NhcnkgaGFuZHltYW4gdG9vbHMgYW5kIGVxdWlwbWVudCB5b3Ugd2lsbCBuZWVkIHRvIHN1Y2Nlc3NmdWxseSBvcGVyYXRlIHlvdXIgYnVzaW5lc3MuIFdvcmRzIGxpa2UgaGFuZHltYW4gYnVzaW5lc3Mgc2hvdWxkIGJlIGluY29ycG9yYXRlZCB0aHJvdWdob3V0IHRoZSBwbGFuIHRvIG1haW50YWluIGEgY2xlYXIgZm9jdXMgb24geW91ciBvYmplY3RpdmVzIGFuZCBzZXJ2aWNlcy48L3A+PGgzIGlkPSJob3ctY2FuLWktZW5zdXJlLXRoYXQtbXktaGFuZHltYW4tYnVzaW5lc3Mtc3RhbmRzLW91dC1pbi1hLWNvbXBldGl0aXZlLW1hcmtldC13aGlsZS1vdXRsaW5pbmctdGhlLWpvYi1yZXF1aXJlbWVudHMtZWZmZWN0aXZlbHkiPkhvdyBjYW4gSSBlbnN1cmUgdGhhdCBteSBoYW5keW1hbiBidXNpbmVzcyBzdGFuZHMgb3V0IGluIGEgY29tcGV0aXRpdmUgbWFya2V0IHdoaWxlIG91dGxpbmluZyB0aGUgam9iIHJlcXVpcmVtZW50cyBlZmZlY3RpdmVseT88L2gzPjxwPlRvIGVuc3VyZSB5b3VyIGhhbmR5bWFuIGJ1c2luZXNzIHN0YW5kcyBvdXQgaW4gYSBjb21wZXRpdGl2ZSBtYXJrZXQsIGl0J3MgZXNzZW50aWFsIHRvIGhhdmUgYSBjb21wcmVoZW5zaXZlIGJ1c2luZXNzIHBsYW4gdGhhdCBjbGVhcmx5IGRlZmluZXMgdGhlIGpvYiByZXF1aXJlbWVudHMgZm9yIHlvdXIgaGFuZHltYW4gYnVzaW5lc3MuIEZvY3VzIG9uIGVzdGFibGlzaGluZyB5b3VyIGhhbmR5bWFuIG1lbm8sIHdoaWNoIGRldGFpbHMgdGhlIHNwZWNpZmljIHNlcnZpY2VzIHlvdSBvZmZlciBhbmQgaG93IHRoZXkgZGlmZmVyZW50aWF0ZSB5b3UuIFVzZSBjbGVhciBhbmQgaW1wYWN0ZnVsIHdvcmRzIHdoZW4gcHJvbW90aW5nIHlvdXIgaGFuZHltYW4gYnVzaW5lc3MsIGFzIHRoZXNlIGNhbiBoZWxwIGF0dHJhY3QgY2xpZW50cyBhbmQgY29udmV5IHRoZSBwcm9mZXNzaW9uYWxpc20geW91IGJyaW5nIHRvIHRoZSBqb2IuPC9wPjxoMyBpZD0iaG93LWNhbi1pLW91dGxpbmUtdGhlLW5lY2Vzc2FyeS1qb2ItcmVxdWlyZW1lbnRzLWZvci1hLXN1Y2Nlc3NmdWwtaGFuZHltYW4tYnVzaW5lc3MiPkhvdyBjYW4gSSBvdXRsaW5lIHRoZSBuZWNlc3Nhcnkgam9iIHJlcXVpcmVtZW50cyBmb3IgYSBzdWNjZXNzZnVsIGhhbmR5bWFuIGJ1c2luZXNzPzwvaDM+PHA+VG8gb3V0bGluZSB0aGUgbmVjZXNzYXJ5IGpvYiByZXF1aXJlbWVudHMgZm9yIGEgc3VjY2Vzc2Z1bCBoYW5keW1hbiBidXNpbmVzcywgc3RhcnQgYnkgaWRlbnRpZnlpbmcgdGhlIGNvcmUgc2VydmljZXMgeW91IHdpbGwgb2ZmZXIuIEVuc3VyZSB0aGF0IHlvdSBoYXZlIGEgY2xlYXIgZGVzY3JpcHRpb24gZm9yIGVhY2ggam9i4oCUbGlrZSBoYW5keW1hbiBidXNpbmVzcyB0YXNrcyB0aGF0IGluY2x1ZGUgcmVwYWlycywgaW5zdGFsbGF0aW9ucywgYW5kIG1haW50ZW5hbmNlLiBVc2UgcHJlY2lzZSB3b3JkcyBoYW5keW1hbiB0byBkZWZpbmUgdGhlIHNraWxscyByZXF1aXJlZCBmb3IgZWFjaCByb2xlIGluIHlvdXIgYnVzaW5lc3MuIFRoaXMgY2xhcml0eSB3aWxsIGhlbHAgcG90ZW50aWFsIGNsaWVudHMgdW5kZXJzdGFuZCB5b3VyIHNlcnZpY2VzIGFuZCB3aGF0IHRvIGV4cGVjdCBmcm9tIHlvdXIgYnVzaW5lc3MuPC9wPjxoMyBpZD0iaG93LWNhbi1pLWxldmVyYWdlLXRlY2hub2xvZ3ktdG8tZW5oYW5jZS1teS1oYW5keW1hbi1idXNpbmVzcy1vcGVyYXRpb25zLWFuZC1wcm92aWRlLWJldHRlci1zZXJ2aWNlcyI+SG93IGNhbiBJIGxldmVyYWdlIHRlY2hub2xvZ3kgdG8gZW5oYW5jZSBteSBoYW5keW1hbiBidXNpbmVzcyBvcGVyYXRpb25zIGFuZCBwcm92aWRlIGJldHRlciBzZXJ2aWNlcz88L2gzPjxwPlRvIGVuaGFuY2UgeW91ciBoYW5keW1hbiBidXNpbmVzcyBvcGVyYXRpb25zLCBjb25zaWRlciBhZG9wdGluZyB0b29scyBzdWNoIGFzIHNjaGVkdWxpbmcgc29mdHdhcmUsIGN1c3RvbWVyIG1hbmFnZW1lbnQgc3lzdGVtcywgYW5kIG1vYmlsZSBhcHBzIHRoYXQgZmFjaWxpdGF0ZSBjb21tdW5pY2F0aW9uLiBUaGlzIGludmVzdG1lbnQgaW4gdGVjaG5vbG9neSBjYW4gc3RyZWFtbGluZSB5b3VyIGJ1c2luZXNzIHByb2Nlc3NlcywgaW1wcm92ZSBjdXN0b21lciBpbnRlcmFjdGlvbnMsIGFuZCB1bHRpbWF0ZWx5IGxlYWQgdG8gaGlnaGVyIGN1c3RvbWVyIHNhdGlzZmFjdGlvbiBpbiB5b3VyIGhhbmR5bWFuIGJ1c2luZXNzLjwvcD48aDMgaWQ9Imhvdy1jYW4taS1lZmZlY3RpdmVseS1wcm9tb3RlLW15LWhhbmR5bWFuLWJ1c2luZXNzLXRvLWF0dHJhY3QtbW9yZS1jdXN0b21lcnMtYW5kLWdyb3ctbXktYnVzaW5lc3MiPkhvdyBjYW4gSSBlZmZlY3RpdmVseSBwcm9tb3RlIG15IGhhbmR5bWFuIGJ1c2luZXNzIHRvIGF0dHJhY3QgbW9yZSBjdXN0b21lcnMgYW5kIGdyb3cgbXkgYnVzaW5lc3M/PC9oMz48cD5UbyBlZmZlY3RpdmVseSBwcm9tb3RlIHlvdXIgaGFuZHltYW4gYnVzaW5lc3MsIGZvY3VzIG9uIHV0aWxpemluZyBzb2NpYWwgbWVkaWEgcGxhdGZvcm1zIGFuZCBsb2NhbCBhZHZlcnRpc2luZy4gQ3JlYXRlIGEgd2Vic2l0ZSB0aGF0IHNob3djYXNlcyB5b3VyIHNlcnZpY2VzIGFuZCBnYXRoZXIgY3VzdG9tZXIgdGVzdGltb25pYWxzIHRvIGJ1aWxkIHRydXN0LiBZb3UgY2FuIGFsc28gbmV0d29yayB3aXRoaW4geW91ciBjb21tdW5pdHkgYW5kIGNvbGxhYm9yYXRlIHdpdGggb3RoZXIgYnVzaW5lc3NlcyB0byBleHBhbmQgeW91ciByZWFjaC4gVGhpcyBjYW4gc2lnbmlmaWNhbnRseSBoZWxwIGluIGdyb3dpbmcgeW91ciBidXNpbmVzcy48L3A+