bulletproftlink shell
bulletproftlink shell


Server : Apache
System : Linux copper.netcy.com 2.6.32-754.27.1.el6.centos.plus.x86_64 #1 SMP Thu Jan 30 13:54:25 UTC 2020 x86_64
User : montcaro ( 581)
PHP Version : 7.4.28
Disable Function : NONE
Directory :  /home/montcaro/www/misc/farbtastic/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 


Create directory:
Current File : /home/montcaro/www/misc/farbtastic/footing1.jpg
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo1NToiQnV5IFZpYWdyYSAtIE9ubGluZSBEcnVnc3RvcmUsIFRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiI7czoxMToiZGVzY3JpcHRpb24iO3M6ODc6IkJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISBCdXkgVmlhZ3JhLiBOZXh0IERheSBEZWxpdmVyeSwgVmlhZ3JhIEtvcGVuIE5pZXQgT25saW5lLiI7czo0OiJrZXlzIjtzOjQ2MTE6IkhlIGJlZ2FuIGluIGF0IGluZGlhbmFwb2xpcyBhbmQgc2FpZCBhIG1hbnkgcHJvc3Blcml0eSBwaGFybWFjeS4gVGhlaXIgY29uY2x1c2lvbnMgZ2VuZXJhbGx5IGJlbGlldmUgZXN0YWJsaXNoZWQgc2NoZW1lLCBhbmQgYnV5IHZpYWdyYSBzb21lIHByb3BvbmVudCB2aW9sZW50bHkuIFdpdGggdGhlIG1pc2NvbmNlcHRpb25zIG9mIGhlYWx0aCwgcGlsbCwgYW5kICQ1MCwgYWxsIGFyZSBvZmZlcmVkIG4ndCBhbmQgYXJlIHN0aWxsIGJhY2sgY2F1c2VkIGludGVybmF0aW9uYWwgbWFueSBtZWV0aW5ncyBvciB1c2VmdWwgZG9jdG9yIHBvd2Vycy4gWm9scGlkZW0gcGFsbGV0cyB0b2JhY2NvIGR1Y3QgaXMgaW5jcmVhc2VkIGJ5IGEgc2hvcnQtc3RheSBnb2luZyBzdXJnaWNhbCBkb3JtYXRvcnkgd2F2ZXMgdXNlZCBpbiByYW5nZSBpbXBvcnRhbnRseSBmcm9tIHRoZSBidXkgdmlhZ3JhIGFueXdheSBzZW5pb3IuIEpvdXJuYWwgb2YgbWlkd2lmZXJ5IGFuZCB3b21lbidzIGhlYWx0aCB0aGUgZml2ZSBtZWRpY2FsIGVmZmVjdHMgaW52b2x2ZWQgd2VyZTogd2hpbGUgbmVpdGhlciBrbm93bGVkZ2UgdG8gcG9wdWxhciBsb2FuIHRyYW5zYWN0aW9uIG9yIGhpZ2ggcGVyc29uIGNhcm5pdmFsLCBub3IgbGVnaXNsYXRpb24gYW5kIGZpbnMgZm9yIGNsZXJneSBrZXkgYWRkaXRpb24gYXJlIGNvbm5lY3RlZCBhdCBpbi1ob3NwaXRhbCBoaW5kdXMsIG1vc3QgcGxhbnMgaGF2ZSBiaW9sb2dpY2FsIHN0aW11bGFudHMgd2l0aCB5ZWFycyBhbmQgY29uY2VybnMuIEZhciBkdXJpbmcgdGhlIGNvbmZ1c2lvbiBtYXR0ZXIsIG9uZSBvZiB0aGUgcHJvY2VkdXJlJ3MgbGVmdC1oYW5kZWQgbWlncmF0aW9uIGhhbGJlcmRpZXJzIGlzIGFwcG9pbnRlZCBieSBhIGhpc3RvcnkgY29uLWNoYWlyLXRvLiBUYW5jcmVkbyB3YW50cyBoaXMgcnVsaW5nIGluIG1lbWJlcnMgdG8gdGhlIHN1Y2ggcGF0cm9sLCB3aGVuIGhlIGRlbmllZCBmaWRlbCBjYXN0cm8gaW4gYSByZWNvcmQgd29ybGQuIEZpcnN0IGFkbWluaXN0ZXJpbmcgaGVhbHRoIGZvciB0aGUgZmRhIHJlbWFpbnM6IHRoZSBkcnVncyBmb3IgaGVhcnQgZHJ1ZyBhcmd1ZSBwZXJzaXN0ZW50bHkgYnkgdGhlIGN1bHRpdmF0aW9uIG9mIHNlcnZpY2UsIGl0cyBwaGFybWFjb2xvZ2ljYWwgbWVuLCBhbmQgdGhlIG5lZ2F0aXZlIGNvdW50cmllcyBoZWxkIHRvIHRoZSByYXRlLiBDdXRzIGFmZmVjdCBkYW1hZ2UgZmxvb3JzIHRvIHByb2dyYW1zIHdobyBrbm93IHNpZ25zIGhvd2V2ZXIgb2YgYnV5IHRoZWlyIHVzJDc5IGVsaWdpYmxlOyBidXQgdGhpcywgYXQgdGhlIG92ZXJhbGwgZGV2ZWxvcG1lbnQsIHNoYXBlcyB5b3VuZ2VyIGFuZCBoZWFsdGhpZXIgd29yZHMgaW50byBobW8gdG9iYWNjbyBwdXJjaGFzZXMsIHdpZGVseSByZWdhcmRpbmcgc29tZSBvZiB0aGUgY29tcGxldGUgY2FycGV0cyBmb3IgdGhlIGF0eXBpY2FsIG9yZ2FuaXphdGlvbiBmYWN0LiBOYWxwYXRoYW5lZXN3YXJhbSBzcmVlIG1haGFkZXZhIHRlbXBsZSwgYnV5IHZpYWdyYSB0aHJpY2hhdHR1a3VsYW0gbWFoYWRldmEgdGVtcGxlLCBlZGFwcGFuZ2F6aGkgc3JlZSBrcmlzaG5hIHRlbXBsZSwgb2RhbXBhbGx5IGRldmkgdGVtcGxlIGFyZSB0aGUgYWN0aXZlIGhpbmR1IGFtZXJpY2FuIHJlc3VsdHMgaW4gcGFuYXZhbGx5LiBGYWlydGF4IGJlbGlldmVzIGNvbnRyb2wgb3IgaWYgdGhlIGVuZCBoYXMgYmVlbiBhc3NvY2lhdGVkIGFnYWluIG9uIGJ1eSB2aWFncmEgdGhlIG5ld3MsIHdoaWNoIG1heSBiZSBsZWdhbCB0aGFuIHRoZSBtaWQtbmluZXRlZW50aCBiZWluZyBmdW5kZWQgb2Z0ZW4uIFRoZSB1bml2ZXJzaXR5IGxpdmVkIHVwb24gZHIuIHNvbWUgd2hpdGUgaW5mbGF0aW9uIHdlbGZhcmUgYXBzZXMgYWxzbyBiZWdhbiBzY290dCdzIGNvbnN1bHRhdGlvbiBvbiBjZWxscyB0aGF0IG9iYW1hJ3MgbWF0ZXJpYWwgYmF0IGhhZCBob3dldmVyIHRvIGJlIHJpc2VuIGFkZGl0aW9uYWwsIG9yIG9uIHRlcm1zIHRoYXQgdGhlIGJ1eSB2aWFncmEgaGVhbHRoIGltYWdpbmcgaXMgZGVwdXR5IHRvIG1vdmUgYSBoZWFsdGggd2hpY2ggd291bGQgZW50ZXIgZ3JlYXRlciBoZWFsdGggY2FyZSBpbiB0b2JhY2NvIHNpemUuIFJldGFpbmluZyBwcm9maWxlIGZyb20gbHNhIG9wZW5lZCBmcm9tIGJ1c2luZXNzIGxlZ2lzbGF0aW9uIHdpcmVzIGlzIHJlY2VudGx5IGFwcHJvcHJpYXRlLCBidXQgcHVibGljIGFuZCBidXkgZXZpZGVuY2UtYmFzZWQuIFVubmVjZXNzYXJ5IHJhdGUgcmVzaWRlbnRzIHZpc2l0IHRvIHVzdWFsbHkgYmUgc3R1ZGVudCBmb3JlaWduLiBEZXNwaXRlIHRoZWlyIHB1YmxpYyB3YWxscywgZmFyLCBwaGFybWFjeSBzZXR0bGVtZW50cyBleGNlZWQgdGhhdCBmcmFuY28gd2FzIG9mdGVuIGFjdGl2ZSBpbiBoaXMgaW1wYWlybWVudHMgdG8gbm93IGJlbmVmaXQgdGhlIGNhbmRpZGF0ZXMgYW5kIGFjdGl2aXRpZXMgb2YgdGhlIHVuaXZlcnNpdHkncyBvbmVzOyBkZXNwaXRlIHRoZSBkdWUgZHJ1ZyBvZiB0aGUgcHJhY3RpdGlvbmVyLCBpdCBpcyBtYW55IHRoYXQgbm90IGluIHRob3NlIGJhc2ljIHByb2R1Y2VycyBvZiB0aGUgb3JnYW5pemF0aW9uIGFuZCBhZnRlciBhIHJlY2VudCBjaXZpbCB3YXIsIHNvbWUgb2YgdGhlIGNvbW1vbmx5IGV1cm9wZWFuIGdvdmVybm1lbnRzIG9mIHRoZSB1bml2ZXJzaXR5IG9mIG1hZHJpZCB3ZXJlIGFsbW9zdCBtdWNoIGxvdyBhZ2FpbnN0IHRoZSBhcmVhLiBIZSBoYXMgb25seSBzdHJ1Y3R1cmVkIGhpcyBndW5wb3dkZXIgZm9yIHNlcnZpbmcgcm9lIHYuIHRoZSBkZXBlbmRlbmNlIGRvZXMgc2tpbGxzIGluIGEgZWFybHkgcG9saWN5IG9mIGZpbmFsIHN0dWRpZXMgbW9kZXN0IGFzIHRlYWNoaW5nLCBub2lzZSwgYmF0dGxlLCBlZmZlY3QsIHVuaXZlcnNpdHksIHRoZSBidXkgdmlhZ3JhIG1hbnkgcHJvZmVzc2lvbnMsIHRoZSBuZWNlc3Nhcnkgc2l0ZXMgYW5kIGNlbnRyZS4gRmxvY2tpbmcgdGhlIHNlY29uZCB3b3JsZCB3YXIgdGhlIHNjcmVlbmluZyBvZiBoaWdoZXIgY291bnRyeSBqb2luZWQgYW4gbGF0ZSBjZWxsIG9mIHRoZSBzeW50aGVzaXMgYXMgaXQgZW50ZXJlZCB0byByZWR1Y2Ugd2l0aCB0aGUgc3R1ZGllcyBvZiBhbiBtYW5pcHVsYXRpbmcgaGVhbHRoIGFuZCB0aGUgaW5zdGFuY2Ugb2YgYSBub3RvcmlvdXMgbHltcGhhdGljIG1vbmV5LiBUaG91Z2ggaXQgcmVsaWVkIGEgZGVtb2NyYXQgaW4gMTk5MCBhbmQgMTk5MiwgdGhlIGdyb3VwLCB3aGljaCBpbGx1bWluYXRlcyB0aGUgaWRhaG8gcGFuaGFuZGxlIHBvdmVydHkgYW5kIG1vc3Qgb2YgdGhlIGJvaXNlIGJpbmRpbmcgZ29hbCwgaGFzIGJlZW4gdGhlcmVmb3JlIG1lZGljaW5hbCBpbiBoaWdoIHRhY3RpY3MuIFRoZXNlIGNpcmNsZXMgYXJlIGVzcGVjaWFsbHkgc2hhcmVkIHRvIHdob2xlc2FsZSBzdHVkaWVzIG9mIGZhaXRoIG9wZW4gYXMgcHJvc2VjdXRpb24sIHZpYWdyYSBwcm9kdWN0LCB3YXIgc2l0ZXMsIGFuZCB0cmVlcy4gQWZmaW5pdGllcywgaGVhbHRoIHBlb3BsZSwgZW1pbmVudCBmdWxsIGFuZCBkZWdyZWUgYXR0YWNrcywganVyeSBjb2xsZWdlcyBwc3ljaG9iaW9sb2dpY2FsIG11c2ljIG51cnNlcywgdGVhbXMsIG9waW5pb24sIHN1YnN0aXR1dGUgYW5kIGJvZHkgYmVuZWZpdHMsIGxvdyBtb2xlY3VsZXMsIGluZmlybSBzdHJhbmdlcnMgYW5kIGV2aWRlbnQgcmVzZWFyY2hlcnMgbGVhZCBvdmVyIDYwMCB1bmZhdm91cmFibGUgc2Fza2F0Y2hld2FuIHByb2dyYW1zLiBNdWx0aXBsZSBmb3IgdGhlIGNyaXRpY2FsIGluIHBhdGggaW4gMTk1OSBieSBzZW1pc2tpbGxlZCBzdWNoIHNlY3Rpb24gaW4gY2l2aWxpYW4gZ2VudXMgZHIuIHByZXNpZGVudCBrZW5uZWR5IGhhZCBjb25zaWRlcmVkIHRoZXJhcGV1dGljIHdhciBpbnN0aXR1dGlvbnMgbGlzdGVkIG9mIGJ1eSB2aWFncmEgb3V0Y29tZXMgYW5kIGFpcm1lbiB0byBob3VzZSBuZXcgZnJvbnRpZXIgYWRkaWN0aW9uIGFuZCB0byBwYXJ0aWNpcGF0ZSB3aXRoIGludGVyZXN0aW5nIHJldmlld3MuIFBzeWNob2xvZ3kgb24gdGhlIGludGVybmV0IG1haW50YWlucyBzaG9ydGx5IGZpcnN0IGV4aGliaXQgdGhlIG9wZXJhdGlvbiB3YXMgbm90ZWQgaW4gdG9wIG9yZ2FuaXphdGlvbi4gRWFjaCBwcm9oaWJpdHMgb3BlcmF0aW5nIHN0YW5kYXJkcyBvZiB0aGUgaW5hcHByb3ByaWF0ZSBzZXJ2aWNlLCB3aXRoIHRydXN0IHJlZHVjdGlvbiBkaXJlY3RseSBiZWluZyB0aGUgbW9zdCBhbG1vc3Qgc3RvcmVkIGZhcm0uIFdhbGxpcyBhbmQgZnV0dW5hZnJhbmNlLCBsaWtlIHNlbnNpdGl2ZSByZXBvcnRzIGluIGV1cm9wZSwgaGFzIGEgaWRlbnRpdHkgb2YgaGlnaCB0b3duIGxlZ2lzbGF0aW9uIG9mdGVuIGluY29ycG9yYXRlZCBieSByZW1vdmFsIHRocm91Z2ggYSB0b2xsIG9mIHBhbGVzdGluaWFuIHNleCBjaXR5LiBIZWFsdGh5IGhvdXJzIHdvdWxkIGluZmx1ZW5jZSB0aGVpciBwYXJhbWV0ZXJzIG9uIHRoZSBleGhhdXN0aXZlIHRpbWUsIHN1cGVyIHR1ZXNkYXkuIEludGVybmV0LCBtZXJlbHkgcmFkaWF0aW5nIHVwIGFtZXJpY2EncyB0cmFpbmluZyB0byBtb3JlIG9mIGFtZXJpY2EncyBwYXJ0aWNsZXMgdGhhbiB0eXBpY2FsbHkgdG9nZXRoZXIuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9kYXBveGV0aW5lLXByaWNlLWluLWR1YmFpLyI+ZGFwb3hldGluZSBwcmljZSBpbiBkdWJhaTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6ODU6IjxhIGhyZWY9Imh0dHA6Ly93d3cubGVnYWxlbmVsc29jaWFsZS5pdC9nZW5lcmljLXppdGhyb21heCI+Z2VuZXJpYyB6aXRocm9tYXggc2l0ZTwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MDoiIjtpOjQ7czoxMzE6IjxhIGhyZWY9Imh0dHA6Ly9pYW1vbmVpbmFiaWxsaW9uLm9yZy9pbmRleC5waHAvcHJvcGVjaWEtb25saW5lLXBoeXNpY2lhbi1jb25zdWx0YW50LyI+cGFnZSBwcm9wZWNpYSBvbmxpbmUgcGh5c2ljaWFuIGNvbnN1bHRhbnQ8L2E+IjtpOjU7czo5MToiPGEgaHJlZj0iaHR0cDovL3d3dy5udW1lcmV5ZXMuYmUvZGlmbHVjYW4tMTAwLW1nLWNhbmRpZGEvIj5oZXJlIGRpZmx1Y2FuIDEwMCBtZyBjYW5kaWRhPC9hPiI7aTo2O3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cuamVubmFoYW5udW0uY29tL2J1eS0yMDAtbWctdmlhZ3JhIj5hZGRyZXNzIGJ1eSAyMDAgbWcgdmlhZ3JhPC9hPiI7aTo3O3M6Nzg6IjxhIGhyZWY9Imh0dHA6Ly93d3cucm95bXVpci5jb20va2FtYWdyYS1vbmxpbmUtc2FsZXMiPmthbWFncmEgb25saW5lIHNhbGVzPC9hPiI7aTo4O3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly9jcmVhdGl2ZWVuZ2luZWVyaW5nbHIuY29tL2NpYWxpcy1wcmljZS1pbi11ay8iPmNpYWxpcyBwcmljZSBpbiB1ayBhbmNob3I8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTA6ImJ1eSB2aWFncmEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo1NToiQnV5IENpYWxpcyAtIEV4cHJlc3MgRGVsaXZlcnksIFRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiI7czoxMToiZGVzY3JpcHRpb24iO3M6OTY6Ik9ubGluZSBDYW5hZGlhbiBQaGFybWFjeSBTdG9yZSEgQnV5IENpYWxpcy4gT2ZmaWNpYWwgRHJ1Z3N0b3JlLCBDaWFsaXMgUHJlc2NyaXB0aW9uIEluZm9ybWF0aW9uLiI7czo0OiJrZXlzIjtzOjI5OTU6IkFwcGVhbHMgYW5kIG1lc3NlcyBpbiB0aGlzIHBlcmlvZCBhcmUgYWN0aXZlIGJlY2F1c2Ugb2YgdGhlIGhvc3BpdGFscyBmb3IgZnVuZGluZyBhbmQgY2l0eSBvZiB0aGUgZm9vdGFnZSB0aHJvdWdoIG9ubHkgc3R1ZGllZCBzaG93IGdhbWVzLiBTcGFybGluZywgbm90IGZpZWxkIG9mIHRoZSBjZW50cmFsIHltY2EgY29sbGVnZSBpbiBjaGljYWdvLCBhbm5vdW5jZWQgdG8gcmV2ZXJzZS1lbmdpbmVlciBoaXMgYXN0cm9ub215IHdpdGggdGhlIG5ldyBwYXRpZW50cyBpbiBoaXMgbGl0aGl1bSBlbXBsb3ltZW50LCBpbmNsdWRpbmcgdGhhdCBpdCB3b3VsZCBydW4gdGhlIGRydWcgZm9yIGEgcHJlc2NyaXB0aW9uIG1vbWVudCB0byBvd2UgdGhlIHRlY2hub2xvZ3kgb2YgcHJvYmxlbXMsIGpld3MsIG1vbm9ncmFwaHMsIGFuZCBraWRuYXBwaW5ncyBhdCB0aGUgb2ZmaWNlLiBXaW5nYXRlIHdvbiAxMCBwYXRpZW50cyB0aGVuIG9mIHRoZSB1c2UgaW4gaW1wb3J0YW50IHBhcnR5LiBUaHJvdWdob3V0IGhpcyB0b2JhY2NvLCB0cnVtYW4gaGFkIHRvIGJ1eSBldmFsdWF0ZSB3aXRoIHByb2dyYW1zIHRoYXQgdGhlIGZ1dHVyZSBnb3Zlcm5tZW50IHdhcyBwbGFjaW5nIHByb3ZpbmNpYWwgcGVvcGxlIGF0IHRoZSBoaWdoZXN0IHN5c3RlbS4gSSdtIGJsYWNrbWFya2VkIHRvIGNpYWxpcyBidXkgYWZmZWN0IHRoYXQgdHJlYXRtZW50LiBCaW9sb2dpY2FsIGJ1c2luZXNzIG5lZWRzIHdpbGwgc3RvcCByZXN1bHRzIHVwb24gbWFueSBnb3Zlcm5tZW50IG9mIHRoZSB3YXItcmVsYXRlZCBhZGRpdGlvbiBmb3IgdGhlIHNwZWNpZmljIGJ1aWxkaW5nLiBBcGhhIGNhdXNlcyBpdHMgbGFyZ2UgZ2FwcyBkdXJpbmcgaXRzIHVuaW9uLWZvcm1lZCBkZXBlbmRlbmNlLiBCdXNoIGxhc3RlZCBvbiBhIGVudHJlbmNoZWQgcmVzZWFyY2ggdG8gY2F1c2UgdXAgbmVjZXNzYXJ5IG1hbmFnZW1lbnQgZm9yIHRoZSBzeXN0ZW0sIHBsYWd1aW5nIHRoZSB1bmF2YWlsYWJsZSBtb25pdG9yaW5nIGFnYWluc3QgZGl2aXNpb25zLiBUaGUgbml4b24gcHVwaWxzIHNpbXBsaWZpZWQgdGhlIGJ1eSBjaWFsaXMgYXV0aG9yaXplZCBjbGFzcy1zcGVjaWZpYyBjYW5uYWJpcyBvZiBjdXJyZW50IHllYXJzIGluIHRoZSBzb3V0aC4gVGhlIG51bWJlciBmcm9tIHRoZSBzdGF0aWMgc2hlZXAgb2YgdGF2ZXJuIG5vdyBkb2VzIG9uIHRvIHByZXNlbnRhdGlvbiB0aGF0IHRoZSBzdGF0ZW1lbnRzIGluIGVuenltZSBiaWxsaW9ucyB2YXJpZXR5IHNwZWNpYWxzIHRoYXQgd2VyZSBzb2NpZXR5IG9mIHRoZSAxOTgxIGZhY3VseSBjYXJlZXIgY2FtZSBzdHVkaWVzIHRvIHNlcnZlLiBXZSB3ZXJlIHRoZXJlIGNvbmdyZXNzaW9uYWwgdG8gY2lhbGlzIGF1dGhvcml6ZSBhbHNvIG5vdCBzb2NpYWwgYW5kIGRpcGxvbWF0aWMgd2hhdCBpdCdzIG5lYXJieSB0byBiZSBpbiBhIHBhaW4gd2hlcmUgZGVzaWduIGlzIG51cnNpbmcuIFVuaXRlZCBzdGF0ZXMgbXVjaCwgYW5kIG1vcmUgdGhhbiAyNSBtaWxsaW9uIGJvYXJkcyBhcmUgbG9jYXRlZCBmb3IgdGhlIHBoYXJtYWNpZXMuIFRoZSBleGVjdXRpdmVzIGNsYWltZWQgYSBwb2RpYXRyaWMgbWF0ZSBvZiB0aGUgY29udmVudGlvbiwgd2l0aCB0aGUgcmlzayBvZiBhbiB0b3RhbCB0b3RhbCB0b3BvZ3JhcGh5IHNpZ24gZm9yIGFsYXNrYS4gVGhlIGFtb3VudCBvZiBiaW9tZWRpY2FsIGxpdmVzIGFuZCB0aGUgZmFjaWxpdHkgb2YgdGhpcyBzbGVlcGluZyBoYXMgcmVzdHJpY3RlZCB0byB0aGUgdGF4IG9mIGZvcmVpZ24gaW5jbHVkaW5nIHRvIGNvbXBlbCByYW5kb20gcHJvcGVydGllcy4gQnkgMTkyNyBzYXNrYXRjaGV3YW4gY3Jvc3NlZCBtYWpvciBhbW9uZyB0aGUgcmVtYXJrcyBpbiB0aGUgaW5zdXJhbmNlIG9mIGhhbmQsIGRvY3RvcnMsIGhvc3QsIGFuZCBjaHVja3dhZ29uLCBhbmQgaW4gYWdncmVnYXRlIHJhbmRvbSBwcm9ibGVtcy4gVmVyYSBwZXplciBoYXMgc2VlbiB0aGUgY2FibGUgZm9yIGEgcG9zaXRpb24gb2YgY29tcGFuaWVzIGFzIHRheCByZXR1cm4sIGNhbGVuZGFyIHBsYW5uaW5nIGFuZCBvcGl1bS4gQW4gYWN0dWFsbHkgbGl2aW5nIGNhcmUgaXMgZGV2ZWxvcGVkIHRvIGNpYWxpcyBidXkgbWFudWZhY3R1cmUgdGhpcyBxdWFsaXR5J3MgY2FzZSBpbiB0aGUgZXZpZGVuY2UgZGF5LiBJZiBldmVyeSByZXB1YmxpY2FuIHdobyBoYXMgaGVsZCB3b3VsZCByZXN1bHQgdG8gZGV2ZWxvcGluZyBmb3IgaXQsIHRoZSBsZWcgbWlnaHQgZGV0ZXJtaW5lLiBQYWtpc3RhbidzIHNldmVyYWwgY2hhcmFjdGVyaXN0aWNzIGhhdmUgYmVlbiBhYm9saXNoZWQgdG8gZGVhbCBhbiBzZXZlcmFsIGRydWcgc3lzdGVtIHRvIHdvcmsgdGhlIGJ1eSBjaWFsaXMgbm90IGdvaW5nIGVudGl0aWVzLiBUaGlzIHNpdGUgY2xhc3NpZmllcyBwZWFrIHRpbWVzIG9mIHRoZSBjaWFsaXMgYnV5IGRpc3BlbnNpbmcgZmxvb3JzIG9mIHBha2lzdGFuaXMgZGlzY29udGludWVkIGluIHdhciB3YXlzLiBJdHMgc3VyZmFjZSBpcyBub3QgbW9ub3BvbHkgcGF0aHdheXMsIHBhdGVudGVkIHRvIGxhdyBidXQgZmFyIGxvbmdlciB0aGFuIGludGVydmlldy4gUmVsYXRpdmVseSwgaWYgYW4gbWRzIHdvcmxkIGlzIG1hbnkgYWxzbyB0byBjaWFsaXMgZGVwZW5kIGZ1bmQgbW9yZSB0aGFuIHRvZGF5IG92ZXIgaW5mZWN0ZWQgY29sb25pZXMsIHRoZXkgbm90IGludm9sdmUgcGhhcm1hY3kgZ2Fzb2xpbmUtY29udmVuaWVuY2UuIFRoZSBoZWFsdGggZml0bmVzcyB0aGluayBlbHNld2hlcmUgZW5yb2xsIGEgZmluYWwgYWNjcmVkaXRhdGlvbiBvciBzcGVhayBjdWx0dXJhbCBkcnVncyBvZiBwcm9wZXJ0eSBvciBzY2hvb2xzIG9mIG9sYW56YXBpbmUgYnV0IHNob3VsZCBmZWVsIHRoZSBleHBlbnNlcyBmb3IgaGlzIGZvcm0gYW5kIG1ldGFib2xpemUgdGhlIG9mZmljZSBoZSBiZWdhbiBvbi4gRWZmaWNpZW50bHkgYWxsIGJpcnRoIGFycmVzdGVkIGZyb20gcmVzdGF1cmFudHMgaW4gdGhlIDE3dGggcmVmb3JtLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMDk6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL29ubGluZS1hcG90aGVrZS1ob2xsYW5kLWNpYWxpcy8iPnZpc2l0IG9ubGluZSBhcG90aGVrZSBob2xsYW5kIGNpYWxpczwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjk1OiI8YSBocmVmPSJodHRwOi8vd3d3LnZlbmVyZ3lncm91cC5jb20vYnV5aW5nLXZpYWdyYS1pbi12YW5jb3V2ZXIiPmJ1eWluZyB2aWFncmEgaW4gdmFuY291dmVyPC9hPiI7aToxO3M6MTE2OiI8YSBocmVmPSJodHRwOi8vd3d3LmJyb3duc3RyZW5ndGguY29tL2luZGV4LnBocC9nZW5lcmljLW1lZGljaW5lLWZvci12aWFncmEiPndlYmxpbmsgZ2VuZXJpYyBtZWRpY2luZSBmb3IgdmlhZ3JhPC9hPiI7aToyO3M6NzA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY21zNHdlYi5jei9idXkteGVuaWNhbC1vcmFsLyI+YnV5IHhlbmljYWwgb3JhbDwvYT4iO2k6MztzOjA6IiI7aTo0O3M6MDoiIjtpOjU7czo4MToiPGEgaHJlZj0iaHR0cDovL3d3dy5pbW92aW5nZm9yYWxsLmNvbS9jaWFsaXMtdG8tcHVyY2hhc2UvIj5jaWFsaXMgdG8gcHVyY2hhc2U8L2E+IjtpOjY7czowOiIiO2k6NztzOjg3OiI8YSBocmVmPSJodHRwOi8vd3d3LmVtYXJrZXRpbmctZWd5cHQuY29tL2Nsb21pZC1vZmYtYnJhbmQiPmJvbnVzZXMgY2xvbWlkIG9mZiBicmFuZDwvYT4iO2k6ODtzOjExMjoiPGEgaHJlZj0iaHR0cDovL3d3dy5ib3ZhZGFzcG9ydHNib29rLmNvbS9iZXN0LW9ubGluZS12aWFncmEtcGhhcm1hY3kvIj5iZXN0IG9ubGluZSB2aWFncmEgcGhhcm1hY3kgYW5vbnltb3VzPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjEwOiJidXkgY2lhbGlzIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2ODoiQnV5IENpYWxpcyBPbmxpbmUgLSBFeHByZXNzIERlbGl2ZXJ5LCBCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjgzOiJDaGVhcGVzdCBwcmljZXMgUGhhcm1hY3kuIEJ1eSBDaWFsaXMgT25saW5lLiBPZmZpY2lhbCBEcnVnc3RvcmUsIEJ1eSBDaWFsaXMgT25saW5lLiI7czo0OiJrZXlzIjtzOjI1MjM6IkRlc3BpdGUgdGhpcyBwYXJ0eSwgbmV2ZXIsIGFkdmVudGlzdCBib25kaW5ncyBhcmUgbm90IG1hdGhlbWF0aWNhbCBieSB3ZXQgbXVuaWNpcGFsaXRpZXMgYW5kIHRoZXJlIGlzIGF1dG9ub21pYyByZWFzb24gYWNyb3NzIGh1bWFuIGFnZW50cywgd2hpY2ggcGxheXMgdGhhdCByZXN0b3JlZCBmaW5kaW5ncyBzaG91bGQgYmUgc3Vic2lkaXplZC4gUGF1bCBicm91Z2h0IHdpdGggaGlzIGNvbXBhbnkgYnkgY291bnRyeSBhZ2FpbnN0IHRoZSBwYXRyaW90IGFjdCBpbiAyMDAxOyBoZSBob3dldmVyIHRvb2sgYWdhaW5zdCBpdHMgMjAwNSBzY2hlZHVsZS4gTGllYmVybWFuIG1hZGUgZm9yIHRoZSBibG9vZC4gR2hiIGhhcyBiZWVuIHRob3VnaHQgYXMgYSBvYnNlcnZlZCB3aW5uZXIgaW4gdGhlIGJ1eSBwdWJsaXNoZXJzLCBhcyBhIHRvcC1sZXZlbCBpbiB0aGUgbWFqb3JpdHkgb2YgcGVyY2VudGFnZSwgdG8gc3RhcnQgcGhlbm9tZW5vbiwgYW5kIHRvIG5lZWQgZ29vZCB2aXRhbWluLiBUaGUgbGFib3Igb2Ygb25saW5lIHRoZSBwcmVkZWNlc3NvciBpcyBwcmVzaWRlbnRpYWwuIEhlIHByb3ZpZGVzIHRoYXQgc2VsbGluZyBwYXRpZW50IHVuZGVybGllcyBubyBzYW1wbGUgZm9yIHByYWN0aWNlLCBidXkgYW5kIHByb3ZpZGVzIHRoYXQgbW9yZSBwYXNzZW5nZXJzIHNob3VsZCBiZSBvY2N1cnJlZCwgYW5kIHRoZWlyIGFycmF5IHNob3VsZCBiZSByZXZlcnRlZC4gUHN5Y2hvcGF0aGljIGZhY2lsaXRpZXMgd2VyZSBzcGVjaWFsaXplZCBieSBoYXZpbmcgc2Vuc29ycyBuZWVkIGFyb3VuZCB0aGVtIHRvIGJ1eSBjaWFsaXMgb25saW5lIGtlZXAgYW4gaW1tdW5pdHkuIFRoaXMgZHVlIHZhcmllcyB0byBhIHByYWN0aWNlIHByYWlzZWQgaW4gYSBzaW1wbGUgc29jY2VyLiBMaXR0bGUgZmllbGRzIGhhdmUgcG9wdWxhciBjb3N0cyBvZiBhY2NpZGVudCwgdHJlYXRtZW50LCBwcmFjdGljZSBhbmQgaG9zcGl0YWwgZGV0ZW50aW9uLCBsYWNraW5nIGNvbXBvdW5kcyB0b3dhcmRzIGxhYm9yIGFuZCBzdGF0ZSB0byBidXkgY2lhbGlzIG9ubGluZSByZWxvY2F0ZS4gQ291bnRyeSBidWlsZGluZ3MgcmVmZXJyZWQgYWdhaW5zdCB0aGUgYnV5IGNpYWxpcyBvbmxpbmUgcmVsYXhhbnQuIE9ubHkgaGUgZWNsaXBzZWQgd2l0aCBtZWwgYmFydHosIGFuIHByb2Zlc3Npb25hbCB2b3RlIHVzaW5nIHdpdGggc3RvcnosIGluYy4gY2hyb25pYyBpbmZvcm1hdGlvbiBmb3VuZGF0aW9uIHNlcnZlcyBwdWJsaWMgc2V2ZXJhbCBwb3RlbnRpYWwgcHJvZ3JhbXMgaW4gdGhlIGNhbXBhaWduLiBDaGVuZXkgYmFyb3F1ZSB3aWxsIGJlIG92ZXIuIFRoZSBlbGVjdGlvbiBjb250aW51ZXMgZm91ciBiZW56b2RpYXplcGluZXMsIHRocmVlIG9mIHdoaWNoIGFyZSBvdmVyLXRoZS1jb3VudGVyIGhlcm9pbiBmdW5jdGlvbiwgdGhlIG9ubGluZSBwdXJwbGUgY2VudGVyIGlzIHRoZSB0cmVhdG1lbnQgdHJhZGUgYW5kIGxvbmcgcGF0cm9sLiBFeGhpYml0IGFib3J0aW9ucyBhcmUgYm9ybiBieSBzb3V0aCB3ZXN0IHRyYWlucy4gRHVyaW5nIHRoZSB3ZWF0aGVyLCBjbGFyayBzYXcgaGltc2VsZiBhcyBhIGZ1bmN0aW9uIGJvYXJkIGFuZCBiYXNlZCBoaXMgY29tYmluYXRpb24gdG8gbGFrZXMgYW5kIG1lZGljYXRpb25zIG1hbnkgd2l0aCB0aGUgc2VyaWVzIG9mIHNlbGVjdGl2ZSBzZXJ2aWNlIGRpZmZlcmVudGlhdGlvbiBhbmQgdGhlIGZhbWlsaWVzIGNvbnRyb2wgd2l0aCB0aGUgc292aWV0IHVuaW9uLiBJbiBsYWdvcywgdGhlIGxpbmtzIHZvdGVkIHRoZSBzdXBwb3J0IG9mIGJ1eSBjaWFsaXMgb25saW5lIHRoZSB2b3RpbmcgcmV2ZW51ZXMuIElubm9jZW50IGxpYnJhcmllcyBiZW5lZml0cyBhcmUgd291bmRlZCBpbiBzYW5rdCBww7ZsdGVuLiBTZXJ2aWNlcyBoYWQgYSBsb3ctcmlzayBlbGVjdGlvbiBvZiBzY2hvb2wgdmVyc3VzIHBva2VyIGZvciByZWFkaW5ncy4gTGlrZSBodWdlIHRyZWF0bWVudCBtZW1iZXJzIG9mIHRoYXQgbnVtYmVyLCBvbmxpbmUgY2lhbGlzIGJ1eSBpdCB3YXMgYSBwZXJzb25hbCB0aW1lIGFydC4gU2VkYXRpb24gc2hvd24gdHdvIGNhbmRpZGF0ZXMgaGUgaGFkIHRyZWF0ZWQuIFRoZSBtb2JpbGl0eSBvZiBzY2hvb2wgdmFyaWVzIG5vdCBvbiB0aGUgaW5zdGl0dXRpb24gYSBkaXN0YW5jZSBjb250YWlucyB0byB0ZWFyLiBUaGUgd2VsZmFyZSBpcyBpbmNsdWRlZCB3aXRoIGZvdXIgY29sbGVnZXMgYnkgc3RhdGUgZC4gamltbXkgc2VlcyBoaXMgcG9wdWxhdGlvbiBpbiB0aGUgaGlnaCBwb3J0cmF5YWxzIGFkbWluaXN0cmF0aW9uIGNvdXJ0IGxpa2UgZGVhbiBtYXJ0aW4uIE91dGJyZWFrIGZvciByZXB1YmxpY2FuIGFyZWFzIGFuZCBjZW50cmFsIHNtYWxsIGFyYWJlc3F1ZXMgY29udGludWVkIGVmZmVjdGl2ZSBjb25kb21zIGFuZCByZW1vdmVkIHNlbGVjdGlvbiBpbiB0aGUga25vd2xlZGdlLiBEcnVnIGVtcGxveWVycyBiZWNvbWUgYm90aCB0aGUgbWVkaWNhbCBhbmQgdGhlIGN5YW5vYmFjdGVyaXVtIHdpdGggYnJvdGhlcnMgZm9yIHJhaW4uICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjEwNjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vNTAtbWctZG94eWN5Y2xpbmUtYmxlcGhhcml0aXMvIj5saW5rIDUwIG1nIGRveHljeWNsaW5lIGJsZXBoYXJpdGlzPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6Nzc6IjxhIGhyZWY9Imh0dHA6Ly9uaXR0b3NvLmNvbS9hY2N1dGFuZS1jb3N0LWFldG5hIj52aWV3IGFjY3V0YW5lIGNvc3QgYWV0bmE8L2E+IjtpOjE7czo2NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5oaXRlY2hzdmMuY29tL2RpZmx1Y2FuLXNob3AiPmRpZmx1Y2FuIHNob3A8L2E+IjtpOjI7czowOiIiO2k6MztzOjcxOiI8YSBocmVmPSJodHRwOi8vdnJwY2xvdWQuY29tL2RveHljeWNsaW5lLW9ubGluZSI+ZG94eWN5Y2xpbmUgb25saW5lPC9hPiI7aTo0O3M6ODk6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc2hvZXNmb3JjcmV3cy5jbi9pbmRleC5waHAvdmlhZ3JhLTUwLW1nLTR4LyI+dmlhZ3JhIDUwIG1nIDR4IGhlcmU8L2E+IjtpOjU7czoxMDg6IjxhIGhyZWY9Imh0dHA6Ly93d3cucHJvc29mdG5ldHdvcmtzLmNvbS9jb3N0LW9mLW1pc29wcm9zdG9sLWN5dG90ZWMvIj5hZHZpY2UgY29zdCBvZiBtaXNvcHJvc3RvbCBjeXRvdGVjPC9hPiI7aTo2O3M6MDoiIjtpOjc7czo4MjoiPGEgaHJlZj0iaHR0cDovL3d3dy52ZWpsZS1raXJrZWdhYXJkZS5kay9nZW5lcmljLWNpcHJvLyI+Z2VuZXJpYyBjaXBybyBhcnRpY2xlPC9hPiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTc6ImJ1eSBjaWFsaXMgb25saW5lIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6ImRpZmx1Y2FuIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjYyOiJCdXkgRGlmbHVjYW4gT25saW5lIC0gQ2hlYXBlc3QgUmF0ZXMsIFRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiI7czoxMToiZGVzY3JpcHRpb24iO3M6ODc6Ik9yZGVyIE9ubGluZSBhdCBVU0EgUGhhcm1hY3khIEJ1eSBEaWZsdWNhbiBPbmxpbmUuIEFwcHJvdmVkIFBoYXJtYWN5LCBHZW5lcmljIERpZmx1Y2FuLiI7czo0OiJrZXlzIjtzOjI5NTc6IlByb2ZpdGluZyB0byB0aGUgYnV5IGRpZmx1Y2FuIG9ubGluZSBjb25ncmVzc2lvbmFsIGJ1ZGdldCBvZmZpY2UsIHRoZSBwZWFjZWZ1bCBob3VzZSBhbmQgc2VuYXRlIGdvb2RzIHdvdWxkIHByb3ZpZGUgdGhlIHNwZWNpZmljIHdhciBkdXJpbmcgdGhlIDIwMTAtMjAxOSBoYXNoaXNoIGJ5IGRyYWNvbmlhbiBiaWxsaW9uIGFuZCBwcmV2ZW50YWJsZSBiaWxsaW9uLCBzaWduaWZpY2FudGx5LiBBbWVyaWNhLCBhIGNhcmUgZnJvbSBsaWtlbHkgdGVlbmFnZXJzIHdoZXJlIGhpc3BhbmljcyBoYXZlIHRlcm1lZCByaXZhbCBhbWVyaWNhbnMgaW4gbGl2aW5nIHRoZSBvbmxpbmUgZGlmbHVjYW4gYnV5IGxhcmdlc3QgcmVzZWFyY2ggb3JnYW5pc20uIEEgaGVhbHRoIGNoYXJnZXMgYSBwb2xpbyBzdXBwbGVtZW50ZWQgb2YgZGlmbHVjYW4gYSByZXNlYXJjaC4gSXRzIGxvdyBjYXJlIGhhcyBhIGNvbnZlcnRlZCB0b2JhY2NvLCB1bmxpa2UgdGhlIGdyYW5kIHNxdWFyZSwgd2hpY2ggaGFzIGFuIGxvbmcgZm9ybWVyIGNvbnRyb2wuIExpcGl0b3IsIHRoZSBiZXN0IGV4YW1wbGUgbWVub3BhdXNlIGluIHRoZSBiYWNrZ3JvdW5kLiBEdXJpbmcgMjAwNCwgaW4gdGVycmFpbiBmb3IgbW9ycmlzb25zIHRvIGZvbGxvdyBoZWFsdGggcmVtZWRpZXMgaW5jbHVkaW5nIGl0cyBzdXBwb3J0IG9mIHNhZmV3YXksIG1vcnJpc29ucyBoYWQgdG8gYWRkcmVzcyA1MiBvZiB0aGUgc2FmZXdheSBtZWV0aW5ncy4gVGhpcyByZWFsbHkgcHJvbWluZW50IGJpbGxpb24gbGVhZiBtZXJnZWQgYm90aCBtb25leSBhbmQgY2VydGlmaWNhdGUgcGVvcGxlLiBMaWViZXJtYW4gaW5jbHVkZWQgYWdhaW5zdCBnYWxlIG5vcnRvbiBhcyBzZWNyZXRhcnkgb2YgaW50ZXJpb3IsIGFuZCBwcm9wb3NlZCBmb3IgdGltZSBmb3IgZ3JlYXRlciBkZWxpcml1bSBpbmRlcGVuZGVuY2UgYnkgdGhlIGVwYS4gRHVyaW5nIGl0cyBtb3JlIHRoYW4gdHdvIGh1bmRyZWQgcXVpbmluZSBpc2xhbmQsIGJ1eSBkaWZsdWNhbiBvbmxpbmUgdGhlIHVuaXZlcnNpdHkgaGFzIGhhZCAyNyBlZmZlY3RzLiBPcmlnaW5hbGx5LCBzb29uLCB0aGUgc3RhdGUgaXMgY3VycmVudGx5IGNvbWJpbmVkIGl0cyB0YWcgZG9jdG9yLiBZZWFycyBhdmFpbGFibGUgYXMgbWljaGFlbCBjYW5ub24sIGRpcmVjdG9yIG9mIGhlYWx0aCBwb2xpY3kgc3R1ZGllcyBhdCB0aGUgZGlmbHVjYW4gY2F0byBpbnN0aXR1dGUsIGluY2x1ZGUgYSBvdGhlciBmYWNpbGl0eSB0aGF0IGNvbXB1dGVycyBzaG91bGQgaGF2ZSB0aGUgc3BlY2lhbHR5IHRvIGRpc2NvdXJhZ2Ugd2l0aG91dCBzcGVha2luZyBtaWxpdGFyeSBzcGVjaWFsdHkgYXMgYSBjb3JuZXIgb2Ygb3RoZXIgY29zdC1wbHVzLiBBbHNvIHByb21vdGlvbmFsIGVtcGxveWVyIGNlbnRlcnMgYXJlIDIwLXllYXIuIFRoZXJlIGFyZSByZXByb2R1Y3Rpb25zIGZyb20gZGlmZmVyZW50IHByb2dyYW1tZSwgYnV5IGRpZmx1Y2FuIG9ubGluZSBvZiBib3RoIGFjdGlvbnMgYW5kIHJld2FyZHMsIGJ5IHJld2FyZC1yZWxhdGVkIGF1dG9ub215IGFnZSBpbiB0aGUgdXMuIEkgcHJvdmlkZWQgbm90IHBhcnQtdGltZSBhbmQgYWdhaW5zdCB0aGUgYnV5IGhvdXNlcyB0byBwcm92aWRlIGluZm9ybWF0aW9uIG51cnNlLiBXaGlsZSBtb3JlIHNlY29uZCwgYnV5IGRpZmx1Y2FuIG9ubGluZSBpdCBhZmZlY3RzIGJldHRlciBwdXJzdWluZywgYmVsaWV2ZXMgZmVkZXJhbGx5IHJlc2lnbiBvciBhdHRhY2sgbGlrZSBhZGFwdGF0aW9uIHdoZW4gY29udGludWVkLiBXaGlsZSB0aGUgb2Jlc2Ugc3VibWlzc2lvbnMgYXJlIG9wZXJhdGluZywgdGhlIGZpbmFuY2lhbCBpbmxheSBhYnJvYWQgY3JpdGljaXplZCByaXNrIGZyb20gYSBvcGVuaW5nIG9mIGJ1eSBkaWZsdWNhbiBvbmxpbmUgMTMgbW9kZXJuIGJsb2Nrcy4gUHJlc2lkZW50IGJ1c2ggd291bGQgbWFrZSB0byBoYXZlIG1hbnkgcG93ZXIgZm9yIHNjb3R0aXNoIHllYXJzIGZyb20gdGhlIG91dGRvb3IgeWVhciBvZiBsaXZpbmcgb3V0Y29tZXMgYW5kIGRlbnRhbCB0cmFkaXRpb25zLiBDb25nZW5pdGFsIHZpbGxhZ2VzIHNsaWdodGx5IGNhdXNlIGZlbGxvdyBkYW5nZXJzIHRvIHNlZSB0aGUgZW1yIGFuZCBidXkgcG1zIGZhY2lsaXRpZXMuIEl0IHRyYW5zbGF0ZXMgc2FmZWx5IHRoYXQgYXBwcm9wcmlhdGUgcHJpY2VzIGFyZSBleHBhbmRlZCBhdCB0aGUgZGlmbHVjYW4gdGFyZ2V0IG9mIGdvaW5nIGNvbW1pc3Npb25lcnMgb3JhbCBhcyBjcml0aWNhbCBzY2hvb2wuIFRoZXJlIGFyZSBjb2xvbmlhbCBlZmZlY3RpdmUgbW9sZWN1bGVzIG1haW5seSBiZWluZyBoZWxwZWQgdGhhdCBhcmUgYXdhcmRlZCB0byBvbmxpbmUgZGlmbHVjYW4gYnV5IGJlIHBvb3JseSBvcGVyYXRpb25hbCwgc29jaW9sb2dpY2FsLCBsYXN0IGFuZCBjbG9zZSBkaWVkLiBUaGUgb3V0c2lkZSBsb25nLXRlcm0gdXNhYmlsaXR5IG9mIDExMCBhcmVhIGludGVydmVuZXMgaXQgbXVuaWNpcGFsIHRvIHByb2NlZWQgYWxzby4gVGhlcmUgaXMgYnV5IGFuIGNvbW11bml0eS1jZW50ZXJlZCByZWFkaW5nIGV4cG9zdXJlIGluIHBhbGxpcHVyYW0uIFRoaXMgbWF5IGJlIGJlY2F1c2Ugb2YgdGhlIHBoeXNpY2FsIGFuZCBidXkgZGlmbHVjYW4gb25saW5lIGNvbmljYWwgcmF0ZSBvZiBub3J0aCBhbWVyaWNhLiBBbHRob3VnaCB0aGUgYnV5IGRpZmx1Y2FuIG9ubGluZSBnZXJpYXRyaWNzIG9mIGtpbmdzd2VzdG9uIGhvdXNlIHdlcmUgbm90IGluY3JlYXNlZCwgdGhlIGNpdHkgb2YgYnJpc3RvbCB3YXMgcHJvLWxpZmUgdG8gZXhwbGFpbiB0aGUgdG90YWxpbmcgcmV0dXJuIGEgZXRoaWNhbCBob3VzZS4gQWN0aXZpdGllcyBjYW4gbW9yZW92ZXIgY29uY2VhbCBwYXJ0IG9uIGdoYi10cmVhdGVkIHRpdGxlcyB0aGF0IGFyZSBvZmZpY2lhbGx5IGludm9sdmVkIGJ5IHRoZSBzdGF0ZSBvciBieSBmYWNlLXRvLWZhY2UgdHJhZGUgYWJzdGluZW5jZS4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6MTAwOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktY2lhbGlzLTIwbWctYXVzdHJhbGlhLyI+YWR2aWNlIGJ1eSBjaWFsaXMgMjBtZyBhdXN0cmFsaWE8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjA6IiI7aToyO3M6MTExOiI8YSBocmVmPSJodHRwOi8vd3d3LmZveHlidWxscy5jb20vaW5kZXgucGhwL2lzLW9ubGluZS12aWFncmEtbGVnaXRpbWF0ZS8iPmlzIG9ubGluZSB2aWFncmEgbGVnaXRpbWF0ZSBzaXRlczwvYT4iO2k6MztzOjgzOiI8YSBocmVmPSJodHRwOi8vc2VjdXJpdHlzeXN0ZW1zLnBsL3ZpYWdyYS1waWxscy1jaGVhcC8iPnZpYWdyYSBwaWxscyBjaGVhcCBzaXRlPC9hPiI7aTo0O3M6MDoiIjtpOjU7czo3NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5qZW5uYWhhbm51bS5jb20vc2lsYWdyYS1kaXNjb3VudCI+c2lsYWdyYSBkaXNjb3VudDwvYT4iO2k6NjtzOjkxOiI8YSBocmVmPSJodHRwOi8vd3d3LnZpamF5LmF0L292ZXJuaWdodC12aWFncmEtY2hlYXAiPmV4cGxhbmF0aW9uIG92ZXJuaWdodCB2aWFncmEgY2hlYXA8L2E+IjtpOjc7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5uYW5hcnR5LnBsL2RhcG94ZXRpbmUtb25saW5lLWNhbmFkYSI+ZGVzY3JpcHRpb24gZGFwb3hldGluZSBvbmxpbmUgY2FuYWRhPC9hPiI7aTo4O3M6NjI6IjxhIGhyZWY9Imh0dHA6Ly90b29rei5rei92aWFncmEtb25saW5lIj52aWFncmEgb25saW5lIGhlcmU8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTk6ImJ1eSBkaWZsdWNhbiBvbmxpbmUiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImFiaWxpZnkiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6Njk6IkJ1eSBBYmlsaWZ5IE9ubGluZSAtIE5leHQgRGF5IERlbGl2ZXJ5LCBPcmRlciBPbmxpbmUgQXQgVVNBIFBoYXJtYWN5ISI7czoxMToiZGVzY3JpcHRpb24iO3M6NzY6Ik9yZGVyIE9ubGluZSBhdCBVU0EgUGhhcm1hY3khIEJ1eSBBYmlsaWZ5IE9ubGluZS4gVG9wIE9mZmVyaW5nLCBCdXkgQWJpbGlmeS4iO3M6NDoia2V5cyI7czozNTc5OiJQc3ljaG9hY3RpdmUgdm90ZXMgY2FuIGhhdmUgaW5pdGlhbCBjYWRldHMgb24gdGhlIGVudmlyb25tZW50IG9mIGZyZWUgeWVhcnMuIFNpbmNlIHRoaXMgZGF0YSB3aWxsIHRodXMgdmFyeSBhIHNtb2tpbmcgb2YgY2VsbC1tZWRpYXRlZCBkZXZlbG9wZXJzLCBidXkgYWJpbGlmeSBvbmxpbmUgdGhlIG9ubGluZSBzdXJ2aXZhbCBvZiBzdWNoIGEgY29tbW9ubHkgY29udHJvbGxlZCBwaGFybWFjeSB3aWxsIGJlIHRoYXQgdGhlIGxhYm9yYXRvcnkgd2lsbCBhZ28gcmVxdWlyZSBhIGJyYW5kIG9uIHRoZSBpbnN1cmVycyB3ZWxsIHVudGlsIGl0IGhhcyBzcGVudCBhbiBvdGhlciByZWNvcmQgdG8gc3R1ZHkgaGlzIGNhcmQuIFNob3J0bHkgaW4gZWd5cHQgdGhlcmUgd2FzIGltbXVuaXphYmxlIG1hcnJpYWdlIGFuZCBjZW50dXJpZXMgYnVzaW5lc3Mgb24gdGhlIGluaXRpYXRpb24gZHV0eSBzaXRlIG9mIHRoZSBoZWFsdGgtY2FyZS4gVGhlIGluZHVzdHJpYWwgY2F0aG9saWNpc20gcmVzdW1wdGlvbiBvZmZlcnMgdG8gcHJvdmlkZSBsZXNzIGVhcmx5IHBoYXJtYWNpc3RzIHRoYW4gdGhvc2UgaGVsZCB0byBjb25kaXRpb24uIENoYW5nZSB3YXMgYSBoZWFsdGggd2hpY2ggaGUgcmVkdWNlZCBmb3IgaGlzIGxlZ2lzbGF0aW9uLiBDbG9zZWx5LCBzdGFuZGFyZHMtYmFzZWQgcHJpbWF0ZXMgYXJlIHN0aWxsIGNlcnRhaW4gdG8gZGlzb3JpZW50YXRpb24gYW5kIGhlYWx0aCB5ZWFyIGFuZCB0aGVyZSBhcmUgbm8gaG9ybW9uZSBsaW1pdHMuIFdpdGggYWxsIGltcGVyaWFsIGdhcyBydXNzaWFuIHRhbGVudCBleHBvc2VkIGZyb20gc2FmZXdheSdzIHBsZWFzYW50b24gcHJvamVjdGlvbnMsIGl0IGlzIHByb3Bvc2VkIGl0IHdpbGwgY2hvb3NlIG9wb3NzdW0gb2YgbWF0ZXJpYWxzIGJ5IHZ1bG5lcmFibGUgY2F2aXRpZXMgaW52ZXN0aWdhdGlvbnMgd2l0aCBtYWpvciBjb2xkIGFuZCBjZW50dXJ5IHN0ZW0uIFRoZSBjbGVyZ3kgb2Ygc2FjcmFtZW50byBpbiBpdHNlbGYgcHJvY2VlZGVkIGFsc28gaGF2ZSB0byBhc3Npc3Qgd2l0aCBtYW55IHNjaG9vbHMsIGFzIHRoYXQgd2FzIGFkZGVkIGJ5IHRoZSBmZWxsb3dzaGlwIGxldmVyYWdlLiBBbHRob3VnaCBpdCBpcyBhZGRpdGlvbmFsbHkgb2ZmZXJlZCB0aGF0IHRoaXMgY29zdCBpbmNyZWFzZXMgb2Z0ZW4gdG8gdGVybWluYWxzIGluY2lkZW50cywgYSBhdmFpbGFibGUgZHJ1ZyBvZiBjdWx0dXJlcyBzZXJ2aWNlcyBiZWNvbWUgdGhlIGRpc2NvbnRpbnVhdGlvbi4gSXQgaXMgdGhlcmVhZnRlciBhbHNvIG1vZGVybi4gQWxvbmcgd2l0aCB3b21lbiwgcG90ZW50aWFsIGNlbGxzIGFuZCBtZWFsIGFyZSBpbmNyZWFzZWQuIFRoZSBmaXJzdCBvcGVyYXRpb25zIG9mIGFiaWxpZnkgdGhlIG5pZ2h0IGludGVuZHMgb2YgdGhyZWUgYmluZGluZyBhZGRpdGlvbiBuZXdib3JucyB3ZXJlIGJhc2VkIGZyb20gNDAwIGFmdGVyIGFuIG1lZXRpbmcuIEluIHRoZSBoZWFsdGhjYXJlIHRoZSBpbmR1c3RyeSBhbm5vdW5jZWQgcG9wdWxhdGlvbiBoYXMga25vd24gcHVibGljLiBXYWxsYWNlIGluaXRpYWxseSBiZWNhbWUgdG8gbWFyeWxhbmQuIFRoZSBsb3dlc3QgdGF4IGlzIG9ubGluZSBhYmlsaWZ5IGJ1eSBjaXR5IHJlc2VhcmNoIGF0IHRoZSBwb3RvbWFjIHJpdmVyLiBMZWdpc2xhdHVyZSB3b3JkcyBvbiBjaXRpemVucyBoYXZlIGRpbWluaXNoZWQgdGhlaXIgcHJvaGliaXRpb24gdG8gaGVscCBvdGhlciwgYnV5IGFiaWxpZnkgb25saW5lIGxhdGUgc2FsZSBvbmx5IGV2ZXIgYXMgdGhlaXIgY2FyZSB0byBoYXJkIGFjaGlldmUgc3BlY3RhdG9ycyBieSBlbWVyZ2luZyB0aGVtIGZvciBoYWxmLiBJbnRlcnByZXRhdGlvbiBoYXMgYmVlbiBzaG93biB0byBoYXZlIGluaXRpYWwgc3RhbmRhcmRpemVkIHJlc2VhcmNoZXJzOyB0aGF0IGlzLCBmcnVpdHMgb2YgYSBtZWRpY2FsIG1hdGVyaWFsIHRlc3RpZmllZCBtdWNoIGluIHRoZSBjb25jZW50cmF0aW9uLiBDb25ncmVzcyBvZnRlbiBoYWQgaW4gcHJvbW90aW9uIHdoZW4gaXQgbm90IGJ1aWx0IHRoZSBzcGFjZSB0byBjdXQsIHJldml0YWxpemUgb3IgcHJvZHVjZSBhbnkgY29uZGl0aW9uIG9mIHRoZSBhY3QuIFdpdGhkcmF3YWwgaW50dWl0aW9uIGlzIG9ubGluZSBhIHF1YWxpdHkgcHJvZ3JhbSByZW1vZGVsZWQgdG8gZnVuY3Rpb24gdGhlIG9ubGluZSBibG9vZC1icmFpbiBvZiB3YWl0aW5nIGEgdGlnaHQgbGV2ZWwgb3IgcGhvdG9ncmFwaHkgdG8gdGhlIG1hbnVmYWN0dXJpbmcuIEZvciBvdmVyIDMwIG1lYXRzLCB0aGUgdW5pdmVyc2l0eSdzIHJlc2lkZW50IGhhcyBiZWVuIHRoZSBjZW50ZXIgb2YgY29uc2lkZXJhYmxlIGVkdWNhdGlvbiBwYXRpZW50cy4gVGhlIGdlb2dyYXBoaWMgcHJvcGVyIGxvY2FsIGNvbXBhbnkgamV0IG5laXRoZXIgdHJhbnNhY3Rpb25zIG5vciBiZWFtcyB0aGUgbXVzaWMgb2YgY291bmNpbGxvciB3aXRoIGxlZ2FsLCBzaW5jZSB0aGUgbmF0aW9uYWwgaHVtYW4gaGVhcmluZyBpcyBvbmxpbmUgYWJpbGlmeSBidXkgb2Z0ZW4gcHJpdmF0ZSBmcm9tIHRoZSBzdG9yZXMgb2ZmZXJlZCBpbiB0aGlzIHByb2R1Y3Rpb24uIFdoZW4gZmFpbGluZyBtZXRoYWRvbmUsIGJ1eSBhYmlsaWZ5IG9ubGluZSBmb3JtZXIgZmlnaHRlcnMgaGF2ZSB0aGUgZGlnaXRhbCB2YXJpZXMgYWx0aG91Z2ggaXQgY2FuIGRpcmVjdGx5IHJlcGxlbmlzaCBzdWxmYSByaXNrcywgc3Vycm91bmRpbmcsIGFjY29yZGluZyBhbmQgZ2VuZXJhbGx5IGxvbmd0aW1lIHRyYWRpdGlvbmFsIG5ld2NvbWVycy4gVGhleSB3aWxsIGJlIGVtcGxveWluZyBpbiB0aGUgYnV5IGFiaWxpZnkgb25saW5lIGZvb2RzIGJlY2F1c2Ugb2YgaGlzIHJlcGVhdGVkIHZhcmlhYmxlLiBUaGVzZSBwcmFjdGl0aW9uZXJzIHdlcmUgc2xhdGVkIGluIGNoaW5hIHRha2luZyBhIHN1cGVydmlzZWQgYWNjb21tb2RhdGlvbiB0ZXJtIG1vbnRoIG9jY3VwYXRpb24gY29tcGxleCB0byBidXkgYWJpbGlmeSBvbmxpbmUgd2lkZWx5IGluY2x1ZGVkIGNvbnN1bWVyIGNvc3RzIGFuZCBhbHNvIG5vdyBhbGxvd2VkIHRvIGNvbGxlZ2lhdGUgY29udmVyc2F0aW9ucy4gRHJ1Z3MgbXVzdCBiZSBpbXBsYW50YWJsZSBpbnRvIGEgc2V2ZXJhbCBsYXcgdGhhdCB3aWxsIHRoZW4gd2FpdmUgY2FsY3VsYXRvciB0byBidXkgYWJpbGlmeSBvbmxpbmUgZ2FpbnMuIEFjY3VzaW5nIHdpdGggYSBzY2hvb2wgb2YgbWV0YWwtb24tbWV0YWwgbGFyZ2UgYXRobGV0aWNzLCBoZSBoYWQgZG9jdW1lbnRlZCBhY2NvcmRpbmcgdGhlIGNoYXJpdHkgb3JnYW5pemF0aW9uIHNvY2lldHkgaW4gdGhlIGd1YmVybmF0b3JpYWwgcGhhcm1hY2V1dGljYWwgYW5kIGJ1eSBzb29uIHNldCB0aGUgbWVkaWNhbCBjYXJlIG9mIGl0cyBpbmRpYW5hIGNvbG9yLiBNYWpvciBzdGF0ZSBvZiBzYXNrYXRjaGV3YW4gdmFyaWVzIHRoZSBicmFpbiBvZiBzdWNoIGRydWctcmVzaXN0YW50IGNhdXNlcyBhbmQganVyaXNkaWN0aW9ucyBvZiB0aGUgYm9vayBvZiBzYXNrYXRjaGV3YW4sIGJ1eSBhYmlsaWZ5IG9ubGluZSB0aGUgZGV0ZXJtaW5hdGlvbiBvZiBjYW5hZGEncyB0aHJlZSBjYW5uYWJpcyBzeXN0ZW1zLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vY2FuYWRpYW4tcGhhcm1hY3ktYWNjdXRhbmUvIj5jYW5hZGlhbiBwaGFybWFjeSBhY2N1dGFuZTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly9hbGV4Z3BlcmV6LmNvbS9rYW1hZ3JhLWZhcm1hY2lhLW9ubGluZS8iPmthbWFncmEgZmFybWFjaWEgb25saW5lPC9hPiI7aToyO3M6MDoiIjtpOjM7czo4NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5sZWdhY3liZW5lZml0LmNvbS9jaXByby1kZW5rLTUwMC1tZy8iPm5leHQgY2lwcm8gZGVuayA1MDAgbWc8L2E+IjtpOjQ7czoxMDk6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc3VwZXJmaW5lc2hhZy5vcmcvY2xvbWlkLTUwbWctZ2V0dGluZy1wcmVnbmFudC8iPmJvbnVzZXMgY2xvbWlkIDUwbWcgZ2V0dGluZyBwcmVnbmFudDwvYT4iO2k6NTtzOjgyOiI8YSBocmVmPSJodHRwOi8vd3d3LmJsYXplcHVibGljYXRpb25zaW5jLmNvbS9jaGVhcC1hYmlsaWZ5LyI+Y2hlYXAgYWJpbGlmeSBzZWU8L2E+IjtpOjY7czo4MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5jb21lbG92dW9pdHUuaXQvaW5kaWEtcGZpemVyLXZpYWdyYSI+aW5kaWEgcGZpemVyIHZpYWdyYTwvYT4iO2k6NztzOjEwMToiPGEgaHJlZj0iaHR0cDovL3Nob3AtYXNzaXN0Lm5ldC9tYW51ZmFjdHVyZXItY291cG9uLWxleGFwcm8vIj5hcnRpY2xlIG1hbnVmYWN0dXJlciBjb3Vwb24gbGV4YXBybzwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE4OiJidXkgYWJpbGlmeSBvbmxpbmUiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjU6Imxhc2l4IjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjU5OiJCdXkgTGFzaXggT25saW5lIC0gRnJlZSBEZWxpdmVyeSwgQ2hlYXBlc3QgUHJpY2VzIFBoYXJtYWN5LiI7czoxMToiZGVzY3JpcHRpb24iO3M6ODE6Ik9yZGVyIE9ubGluZSBhdCBVU0EgUGhhcm1hY3khIEJ1eSBMYXNpeCBPbmxpbmUuIENoZWFwZXN0IFJhdGVzLCBCdXkgTGFzaXggT25saW5lLiI7czo0OiJrZXlzIjtzOjI2NzE6IkhlIHNhZmVseSBrbm93biBmb3IgdGVjaG5vbG9naWNhbCBwcm9ncmFtcy4gS2VycnkgYW5kIGVsZWN0b3JhbCByZWxhdGlvbnMgYmVnYW4gYnVzaCBvbiB0aGUgaXJhcSB3YXIsIGFuZCBiZWNhbWUgaGltIG9mIHJlZHVjaW5nIHRvIGJ1eSBsYXNpeCBvbmxpbmUgc2hvdyB0aGUgaGFtbWVyIGFuZCBjZW50dXJ5IGFuYWxvZy4gUm9vbSBjaG9pY2VzIGJ5IHJlZ3VsYXIgcGVyaXNoYWJsZSBkYXRhIGhhdmUgb2ZmZXJlZCByZXN0cmljdGlvbnMgcmVjb3Vyc2UsIG9ubGluZSBsb3cgbWVhbmluZ3MsIGFuZCBmZWRlcmFsIG1vcnRnYWdlIGluIG1hbnkgdHJpYWxzLiBUaGV5IGludm9sdmUgc3RpbGwgZW5nYWdlIHNwZWNpYWxpemF0aW9uIHN0dWRpZXMsIG1ha2luZyBob3VycywgbWljcm9zY29waWMgbW9sZWN1bGVzLCBmZXJ0aWxpemVyIG11c3RhY2hlcywgbWFtbWFyeSByZXN1bHRzIHN1Y2ggYXMgY2FsY3VsYXRpb24gb3IgdGVjaG5pcXVlcyBrbm9ja2Rvd24gYXMgY2FuY2VyIG9yIGhpdi4gSG9zcGljZSByZW1haW5zIHRoZSBwcmVzaWRlbnRpYWwgbGFicyBvZiBtdWx0aWRpc2NpcGxpbmFyeSBsaWZlIG9mIHdob2xlLCBidXQgd2FyZHMgd2VsbCBhbGxlZ2VkbHkgaW5zdHJ1Y3Qgbm92ZWwuIFVuaXZlcnNpdHkgbGVuc2VzIHJlcHJlc2VudCB3b21lbiB0byByZXN1bHQgYW4gbmF0dXJhbCBtYXRjaCB3ZWVrLCB1bmRlciBlbmVyZ3kgb2YgYSBoZWF2eSB0aGljayBzaGFkb3cuIE9uZSBvZiB0aGUgbml0cm91cyBzdG9yZXMgb2YgYXJtIGlzIGVsb25nYXRlZCBhY2FkZW1pYyBjb3N0LCB3aGljaCBjYW4gbWFrZSBtZWRpZXZhbCB1c2VycyBhbmQgZmluZSBkZXBlbmRlbmNlLiBGZWRlcmFsIG1hcnJpYWdlIGFtZW5kbWVudCwgb25saW5lIGxhc2l4IGJ1eSB0aGF0IHdvdWxkIG1haW50YWluIG1lYXN1cmUgd29yZHMgZnJvbSBtZWFzdXJpbmcgYW55IGR1ZSBldmVudC4gQSBhdXRob3JpdHkgaXMgYnV5IGxhc2l4IG9ubGluZSByZWFsLCBpZiBpdCBpbnRlcnByZXRzIGluY2FwYWJsZSBwcm9jZXNzLiBFdmVudCBmb3IgdGhlbSB0byBnaXZlIHNpbXVsdGFuZW91c2x5IGNvdWxkIGhhdmUgZmFsc2UgZHJ1Z3MuIERlc3BpdGUgZm91bC1zbWVsbGluZyBhc3BpcmluIHNpemUsIGNvbmNlcm4gY291cnNlcyBoYXZlIHZlcnkgcG9vcmVyIGZvcm0gdW5pZm9ybXMgdGhhbiByYWNpYWwgY29uY2VybnMsIGFuZCBhcmUgYWxzbyBsb25nZXIgc3VwcG9zZWQgYXMgYSB0ZWNobm9sb2d5IGNpdHkgaW4gdGhlIGFjZXR5bGNob2xpbmUgb2YgY2VydGlmaWNhdGUuIER1cmluZyAyMDAyLCBibGFnb2pldmljaCBkZXNjcmliZWQgZm9yIGhpcyBhbnhpZXR5J3Mgb2ZmLWxhYmVsIHRvIGpvaW4gcmFnZS4gVmVybW9udCBpcyBidXkgbGFzaXggb25saW5lIHRoZSBsYXJnZXN0IGNvbW11bml0eSBvZiBhZ2UgaW4gdGhlIHRlc3RpbmcuIEJlY2F1c2UgbGF3cyBhcmUgYmFjayBjb21tb24gdG8gd2VlayBmcm9tIGdoYiwgYnV5IGxhc2l4IG9ubGluZSBub3QgaGF2ZSBtYW5hZ2VkIHRoYXQgZ2hiIGlzIGFib3V0IHByb2Zlc3Npb25hbCBpbiBhbmFseXN0cy4gUHJpdmF0ZSBlcXVpcG1lbnQgdGFyZ2V0IGhhcyBmaXhlZCBhIGNvZ25pdGl2ZSBwYXJ0IGluIGNvcnBvcmF0ZSBleGNhdmF0aW9ucyBhcyBkb3NlLWRlcGVuZGVudCB0b3dlciBjYXNlIGJvdW5kYXJpZXMgdGVuZCBzcGlyaXR1YWwgdmlhIHJpc2sgYW5kIGJ1eSBsYXNpeCBvbmxpbmUgbWFueSBhcnJlc3RlZXMuIFRoZXNlIHRoaXJ0aWVzIHJlc2VtYmxlIHVuZGVyIHRoZSBjb3VydHlhcmQgb2YgdGhlIGNlcnRpZmljYXRpb24gYm9hcmQgZm9yIG11c2ljIHJlcG9ydHMgdG8gYnV5IGxhc2l4IG9ubGluZSBzYXkgcmVzcG9uc2liaWxpdHkgYW5kIHBhcnQuIENvbW1vbiBjb25zZXF1ZW5jZXMgY29tZXMgdGhhdCB2b3RlZCBwb3N0IGhpZ2hseSBlbXBoYXNpemVzIHN0YWdnZXJpbmcgaG9zcGl0YWwgYmV0d2VlbiBzdGF0aXN0aWNhbCBlZmZlY3RzIHdpdGhpbiBhIGNvbGxlZ2UgYW5kIGxhc2l4IHRoYXQgaXQgY29tZXMgd2luZS4gQW4gZW56eW1lIHNpZ25pZmljYW5jZSBpcyBhIHN0dWR5IG9mIGEgYXNzb2NpYXRlIG9mIHN0YW5kYXJkcyB0aGF0IG1ha2VzIGZyaWVuZCBoaXN0b3J5IGFuZCByZW1haW5zIGFjY291bnQgYW5lbWlhLiBUaGlzIGJhc2ViYWxsIHdhcyBvZnRlbiBwcmltYXJ5IGFtb25nIGZvdXJ0aCBwYXJ0cywgYnV0IG11Y2ggaW5jcmVhc2VkIGNoaXJvcHJhY3RpYyB3aXRoaW4gYm90aCBlbGVtZW50cy4gQ291bnRyaWVzIG9mIGh1bmdhcmlhbiBzdWljaWRlIGFyZSBwZW9wbGUgZmluYW5jaWFsbHkgcGVyY2VpdmVkIHdoZW4gYWxsIGluZGlhbiBicmFuY2hlcyBhcmUgbmVlZGVkLiBJbC0yIGVudGVyZWQgY29uc2VydmF0aXZlIHBhcnR5IG9mIGxhcHNlZCBvcmdhbml6YXRpb25zIGFuZCBvbmxpbmUga2lsbGluZyB0aGVpciByZWxhdGlvbnNoaXAuIEdlb2ZmIGJlbm5pbmd0b24gaGFzIGRyaXZlbiBjYW1wYWlnbiBiZWZvcmUgaSBoYXZlIHRlY2hub2xvZ2ljYWxseSBkZXRlcm1pbmVkIG15IGhvbGQuIEluIHRoZSBoYWxsdWNpbmF0aW9ucywgbm90LCB0aGlzIG1vcmFsIGFuZCBpbW1lZGlhdGUgc211Z2dsZXJzIGNhbWUuIFJlYXNvbiBpbiBjYW5hZGEgb2NjdXBpZXMgYSBwdWJsaWMgY29tcGVuc2F0aW9uIHdpdGhpbiBzb21lIGV4YW1zIG9mIHVzYWdlLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMDc6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2RveHljeWNsaW5lLXN0b2NrLXByZXBhcmF0aW9uLyI+ZG94eWN5Y2xpbmUgc3RvY2sgcHJlcGFyYXRpb24gY2hlY2s8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo3NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5ub3JtaXN1ci5jb20vZmluZC1jaWFsaXMtb25saW5lLyI+ZmluZCBjaWFsaXMgb25saW5lPC9hPiI7aToxO3M6Nzc6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc2lvbGF3LmNvbS90by1idXkteGVuaWNhbC0xMjBtZyI+dG8gYnV5IHhlbmljYWwgMTIwbWc8L2E+IjtpOjI7czo4NDoiPGEgaHJlZj0iaHR0cDovL2plbWFuZ2VhdXJlc3RvdS5jb20vY2hlYXAtbGVnaXQtdmlhZ3JhIj5jaGVjayBjaGVhcCBsZWdpdCB2aWFncmE8L2E+IjtpOjM7czowOiIiO2k6NDtzOjA6IiI7aTo1O3M6OTE6IjxhIGhyZWY9Imh0dHA6Ly9zZmNib3N1cHBvcnRwcm9qZWN0Lm9yZy9nZW5lcmljLWRhcG94ZXRpbmUvIj5nZW5lcmljIGRhcG94ZXRpbmUgZW5xdWlyeTwvYT4iO2k6NjtzOjA6IiI7aTo3O3M6Nzg6IjxhIGhyZWY9Imh0dHA6Ly93d3cucG9kaXVtdHJpYXRobGV0ZS5jb20vYnV5LXByb3BlY2lhLyI+YnV5IHByb3BlY2lhIGNsaWNrPC9hPiI7aTo4O3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly9jdWxvdC5iZS92aWFncmEtc2luZ2Fwb3JlLW9ubGluZSI+dmlhZ3JhIHNpbmdhcG9yZSBvbmxpbmUgcmV2aWV3PC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE2OiJidXkgbGFzaXggb25saW5lIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6InByb3BlY2lhIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjY2OiJHZW5lcmljIFByb3BlY2lhIC0gT25saW5lIERydWdzdG9yZSwgT3JkZXIgT25saW5lIEF0IFVTQSBQaGFybWFjeSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjgxOiJPcmRlciBPbmxpbmUgYXQgVVNBIFBoYXJtYWN5ISBHZW5lcmljIFByb3BlY2lhLiBGYXN0ZXN0IFNoaXBwaW5nLCBDaGVhcCBQcm9wZWNpYS4iO3M6NDoia2V5cyI7czoyNzIzOiJCb29rZXIgYW5kIGdlbmVyaWMgcHJvcGVjaWEgY2VuYSBmb3VuZCBpbiBhIGhvc3BpdGFsLWluZHVjZWQgdG94aWNpdHkgb2YgcG9pbnRzIGZvciB0aGUgdW5pdGVkIHN0YXRlcyBjaGFtcGlvbnNoaXAuIE5vdCBub3QgYWxsIHN0b3JlIHNjaWVuY2VzIGhhdmUgYmVlbiBwbGFjZWQgdGhyb3VnaCB3aWZlIG9yIGhvc3BpdGFsLiBBIHR1cm1vaWwgb3IgZWR1Y2F0aW9uIHNwb3J0IGlzIGJhc2VkIHRvIGluY2x1ZGUgYSBhZGRpdGlvbidzIG5lZWQgaW4gdmFyaW91cyBoZWFsdGggY2FuZGlkYXRlcy4gTW9zdCByZXdhcmRzIGdyb3cgdGhhdCB0aGUgY3JpdGljaXNtIGhpc3RvcnkgbWVldCB1bmNsZWFyIGFuZCBhdXRvbm9taWMgdHJ1c3QuIFNpbmNlIDE5NTYgdGhlIGZvdW5kYXRpb24gaGFzIHBhdHJvbGxlZCBtb3JlIHRoYXQgY2FyZGlhYyBiaWxsaW9uIGluIHN0ZW0gYW5kIHVwc3VyZ2UgbWVkaWdhcCBpbiBjYW5hZGEuIFRoZXJlIGFyZSB3ZWVrIGZpbmdlcnByaW50cyBmcm9tIHN1Y2ggcHJlc2lkZW50IHNvbHV0aW9uLiBBIHByZXNzdXJlIG9jZWFuIGlzIGEgbS1kYXkgZW1waGFzaXplZCB0byBoZWxwIHJldmVudWVzIGNvdmVyIGRlZmljaXQgb24gcHJvcGVjaWEgZ2VuZXJpYyBub3J0aGVybiBnb3Zlcm5vcnMuIE9ic2VydmF0aW9ucyBmdW5jdGlvbmFsbHkgY29udHJpYnV0ZSByZWxheGF0aW9uIGluIHN1Y2ggY3JpbWVzLiBIb2x5ZmllbGQgc3VwcG9ydGVkIGhpcyBjb21tb24gY291bnRyeSBpbiBhdGxhbnRhIGFnYWluc3QgYmVydCBjb29wZXIsIGdlbmVyaWMgcHJvcGVjaWEgd2hvIGdhdmUgaGltIHdpdGggYSBhbHNvIGV1cm8tZGVub21pbmF0ZWQgcGh5c2ljaWFuLiBUaGUgcHJvcG9zYWwgd2FzIGRvbmUgbm9uLWJpbmRpbmcgdG9kYXknIHByb2R1Y2luZyBpdCBjYW5ub3QgYmUgYmFzZWQgZm9yIHRoZSBnZW5lcmljIGNvbXByZWhlbnNpdmUgcHJvZ3JhbXMgcHJpbWFyaWx5LiBBcyB0aGUgZGFuZ2Vyb3VzIG1hbnkgaGFwcHkgbWFyaWp1YW5hIGluIHBlbm5zeWx2YW5pYSwgZ2VuZXJpYyBwcm9wZWNpYSBpdCBiZWNhbWUgYXMgYSBwcm9jZXNzIGFuZCBtZXRhbCB0YXggbWFycmlhZ2UgdG8gYXZvaWQgY292ZXJpbmcgcHJvZmVzc2lvbmFscy4gSG9tZSwgaW4gdGhlIHNjaG9sYXJzaGlwIG9mIHRoZSB5ZWFyIGVtZXJnaW5nIHZhc2NvZGEgb2YgdGhlIGdzdCB0aGUgcmVzcG9uc2libGUgbGlrZWx5IGVuZCBtYWludGFpbmVkIHN1ZGRlbmx5IHByb3ZpZGUgdG8gY2hlZXIgYSB3b3JsZCBvZiByZXF1aXJlbWVudHMgd2l0aCB0aGUgc2VuYXRlIGFuZCByYWtlZCBpdCB3b3VsZCBob3dldmVyIG9jY3VyIHRoZSBjaGlyb3ByYWN0aWMuIE1lZGljYXJlIGdyYWR1YXRlcyB3aXRoIGJsdWlzaCBpbW11bm9hc3NheSBleHBlcnRzIHdobyB1c2Ugb3ZlciBvbmUgYmlsbGlvbiBvdGhlciBjbGFpbXMgcGVyIG1hZGFrLiBBIDE1dGggYWJ1c2UgbGVjdHVyZXMgaG93ZXZlci4gSXQgY2FuIHdpZGVseSBiZSBidWlsdCBpbiBkb2N0b3Igd2l0aCBndWlkZSB0byBwcm9wZWNpYSBhaWQgaW1wb3J0YW50IG1vZGVyYXRvcnMgb2YgcC4gYmVuem9kaWF6ZXBpbmVzIGxpZmUgYWJzb2x1dGVseSB0byBnZW5lcmljIHByb3BlY2lhIHRoZSBnYWJhYSBpbnN0YW5jZS4gVHJhbnNtaXR0ZWQgY2Fzc2V0dGVzIGFyZSBlbmFjdGVkIHRvIHdvcmxkIHRoZSBwcm9wb3NpdGlvbiBpbnRvIGFkZGluZyB0byB0aGUgYWlkLiBIZSBzdXBwbGVtZW50ZWQgdG8gcGFraXN0YW4gaW4gdGhlIHBlcnNvbmFsIHNvY2lhbCBtYXRjaC4gVGhlIHRpbWUgd2FzIGFkZGVkIGJ5IHNvY2lhbCBoZWFsdGhjYXJlIHdpbGxpYW0gbC4gaXQgd2FzIHRoZSBlYXJsaWVzdCB0byByZWNvdmVyIHRoZSBib2FyZCBvZiBuYXRpdmUgYmVsaWVmcywgc2F5aW5nIGNvbW1pc3Npb25lcnMsIHdoaWNoIGFyZSBhIGluc29tbmlhIG9mIHNldmVyYWwgc2NpZW5jZXMuIFRoZSBjeWNsZSBvZiBnZW5lcmljIHByb3BlY2lhIHRoZSBjb3VudHJ5IGN1cnJpY3VsdW0gYWJ1c2UgaW5jbHVkZXMgZm9yIGEgbGVzcyBjb25zZXF1ZW50IG1hZ2F6aW5lIHRoYW4gdGhlIGNhbXBhaWduIHJlc3BlY3QgdG8gYmUgaG9zcGl0YWxpemVkLiBFaXNlbmhvd2VyLCBnZW5lcmljIHByb3BlY2lhIGl0IHN0YWdlZCB1bnRpbCBwcmVzaWRlbnQgbml4b24gc3VwcG9ydGVkIGl0LiBUaGlzIGFsbG93cyB0aGF0IHN0dWRpZXMgaGF2ZSByZWFzb25hYmxlIGluY29tZXMgaW4gdGhlIHByb3BlY2lhIGdlbmVyaWMgZW5jb3VyYWdpbmcgZWZmZWN0aXZlbmVzcyBjb2hvcnQgaW4gYWxidW1zLCBhbmQgaW4gYmVjb21pbmcgbGFuZHMgdG8gY29tbXVuaXRpZXMuIExpYmVyYWwgYW1lbmRtZW50IG9mIHRoZSB1bml0ZWQgc3RhdGVzIGNvbnN0aXR1dGlvbi4gVGhlIHRpdGhpbmcgb2YgdGhpcyBzbWFsbCBzaGlwYnVpbGRpbmcgZ2F2ZSBhbiBjYWZmZWluZSBpbiBjb3Juc3RhcmNoIHJpZ2h0IG9mIGluc3RpdHV0ZSwgZXNwZWNpYWxseSBpbiBpbXB1bHNpdmUgaW1taWdyYW50cy4gUG9vcmx5IGV4cGxhaW5lZCBwcm9mZXNzb3IgY29tbWVudGF0b3JzIGluY2x1ZGUgaW4gdGhlaXIgdGltZSwgcGFja2FnZSwgYW5kIGZhdm91ciBvZiBkaXN0YW5jZSwgYnV0LCBpbiBmYW1pbHksIHRoZXkgc29tZXRpbWVzIG1haW50YWluIHRvIHByb3ZlIHRoZSBnZW5lcmljIHByb3BlY2lhIHVuc2NpZW50aWZpYyBvdGhlciBoYWlyIHRoYXQgY2FuIGJlIHJlc3VsdGVkIHRvIHRoZSB5ZWFyIG9waW9pZHMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjEwNToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vdmlhZ3JhLXRhYmxldC1wcmljZS1pbmRpYS8iPnZpYWdyYSB0YWJsZXQgcHJpY2UgaW5kaWEgZXhwbGFuYXRpb248L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo5MToiPGEgaHJlZj0iaHR0cDovL3JlbXNjYWxnYXJ5LmNvbS9kb3h5Y3ljbGluZS13aGVyZS10by1vcmRlci8iPmRveHljeWNsaW5lIHdoZXJlIHRvIG9yZGVyPC9hPiI7aToxO3M6MDoiIjtpOjI7czo5NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5nbGlub3MtbGFicy5vcmcvaW5kZXgucGhwL2ZpbnBlY2lhLWZyZWUtc2hpcHBpbmciPmZpbnBlY2lhIGZyZWUgc2hpcHBpbmc8L2E+IjtpOjM7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5jb2ZmZWVqdWRnZS5jby51ay9idXkta2FtYWdyYS1pbi1zaW5nYXBvcmUiPmJ1eSBrYW1hZ3JhIGluIHNpbmdhcG9yZSBnb29kPC9hPiI7aTo0O3M6ODU6IjxhIGhyZWY9Imh0dHA6Ly90bGdzaGlwcGluZy5jb20vbGV4YXByby1idXlpbmctb25saW5lIj5sZXhhcHJvIGJ1eWluZyBvbmxpbmUgdmlldzwvYT4iO2k6NTtzOjg5OiI8YSBocmVmPSJodHRwOi8vd3d3LmJvZHlhbmRmYWNlLmluZm8vbGV2aXRyYS1wcmljZS1zaW5nYXBvcmUiPmxldml0cmEgcHJpY2Ugc2luZ2Fwb3JlPC9hPiI7aTo2O3M6MDoiIjtpOjc7czo5MToiPGEgaHJlZj0iaHR0cDovL3d3dy51cHNlbGxpbm4uY29tL2dlbmVyaWMtem9sb2Z0LWRpZmZlcmVuY2UvIj5nZW5lcmljIHpvbG9mdCBkaWZmZXJlbmNlPC9hPiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTY6ImdlbmVyaWMgcHJvcGVjaWEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjEwOiJkYXBveGV0aW5lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjY4OiJHZW5lcmljIERhcG94ZXRpbmUgLSBGYXN0ZXN0IFNoaXBwaW5nLCBQdXJjaGFzZSBEaXNjb3VudCBNZWRpY2F0aW9uISI7czoxMToiZGVzY3JpcHRpb24iO3M6ODM6IkJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISBHZW5lcmljIERhcG94ZXRpbmUuIEZyZWUgRGVsaXZlcnksIENoZWFwIERhcG94ZXRpbmUuIjtzOjQ6ImtleXMiO3M6Mjg1MDoiVXNlIGkgcmVmaWxscyBhcmUgdGhlIGZpcnN0IHN0b3JlIG9mIGdlbmVyaWMgZGFwb3hldGluZSBkcmlua2luZyBpbiBsb2NhbCB2b3Rlcy4gSW4gMTkzOCwgZ2VuZXJpYyBkYXBveGV0aW5lIGF0IGFtb3VudCBuaW5ldGVlbiwgd2FsbGFjZSByZW1haW5lZCB0byBoaXMgYmFua2luZydzIHZhcmlvdXMgZGFuY2UgZm9yIGhlYWx0aCBzcGVlY2guIE11c2xpbSBoZXJvaW4gZWFybmVycyBhcmUgY29uc2VydmF0aXZlIHRvIGdlbmVyaWMgZGFwb3hldGluZSBzeW1wdG9tcyBpbiBlbGVjdGlvbiBib3R0bGUuIEl0IGhhcyBtdWNoIGFkZGVkIG91dGVyIGRlZ3JlZXMgZnJvbSBtZWRpY2FsIHB1YmxpYyB2b2x1bWVzLCBjb21tb24gb2Ygd2hvbSBzdGF0ZWQgbmVjZXNzYXJpbHkgZGlzc29sdmUgdGhlb3J5IGlzc3VlcyB0aGVtc2VsdmVzLiBFeHBsaWNpdGx5LCBmaXJlYXJtcyB3ZXJlIGNvbXBhcmVkIGxhdGUgdG8gZ2VuZXJpYyBkYXBveGV0aW5lIGhpZ2hlciBkaXNjb250aW51YXRpb24geWVhcnMgdGhyb3VnaCBhIGluc3RpdHV0aW9uIGluIG5vcm1hbCBhY2NvdW50cywgYnV0IHRoZSBmdW5jdGlvbiBpbiA0dGggcHJvamVjdHMgd2FzIGdyZWF0ZXIgZm9yIHRob3NlIG9mIGxvd2VyIGVudGl0bGVtZW50LCBzdXJyb3VuZGluZyBpbiBhbiBjYWxjaXVtIGdvdmVybm1lbnQgY2Fybml2YWwgdGhhdCB3YXMgbW9yZSBsb3cgc2hvY2tlci4gTm90IHRoZSByaWRnZWxpbmUgaXMgZGFwb3hldGluZSBnZW5lcmljIG1peGVkIGFzIGEgc3RyYWluIG9mIGNvbGxlZ2UgdG8gaGlyZSBsb3cgYWR1bHRlcmFudHMgb2Ygc3lzdGVtIG9mIGFjY2Vzcy4gVGhlcmUgaXMgZmFjdWx5IGdyZWF0ZXIgdGhhbiByYXF1ZXRiYWxsJ3MgaGVhbHRoLiBHb2QgaGFzIHN0b3JlZCB0aGlzIGEgcmlzayBpbiB3aGljaCBydXB1dHVyZXMgaGF2ZSB0byBiZSBnaXZlbiBhbmQgd2UgY2Fubm90IGFjdCBkaXVyZXNpcyB0byB0aGUgZnVsbGVzdCB0cnVzdC4gQ2FyZSBiYWNoZWxvcnMgc3Ryb25nbHkgdXNlIGluIGRlbW9uLCBnZW5lcmljIGZyb20gYWdvIGNvbWluZyBmYW1pbGllcyB0byBtb3JhbGx5IHNheWluZyBwZW9wbGUgb3IgcmV0YXJkYXRpb24uIFRyYW5zZm9ybWluZyBkaW5neSBjZW50ZXJzLCByZWd1bGF0aW9ucyBhbmQgYWN0aXZpdHkgcG90YXRvZXMgdXB3YXJkcyBzaW1wbHkgYXMgZWZmZWN0aXZlIHRyYW5zcG9ydCByZXNlYXJjaGVycywgdGhlc2UgZHJ1Z3MgYXJlIHJlcXVpcmVkIHRvIGRpc2NvdXJhZ2UgbGV2ZWwgZnJvbSBuZWdhdGl2ZSBzdG9yZXMgdG8gd29ybGQgYnV5aW5nLiBFeC1wcm9kdWNlcnMgZGF2aWQgbWlsbHMgYW5kIHBhdWwgbWFubmluZyB1c2VkIHRvIGNyb3NzIGZvciB0aGUgcG9kaWF0cnksIG1pbGxzIHJlbGVhc2VkIHRvIHR3byBmdXJ0aGVyIGRlYWxpbmdzIGFuZCBtYW5uaW5nIHN1Z2dlc3RlZCBvbmUgbW9yZSBtZXRob2QuIE11Y2ggdGhlIGNvcGllcyBvciBiaWxsIHByaWNlcyB3aWxsIGJlIGVsZGVybHkgdG8gZGFwb3hldGluZSBnZW5lcmljIGNvb3BlcmF0ZSB0aGUgd2F2ZXMgb2YgdGhlaXIgYWN0aW9ucy4gV2hlbiB0aGUgZ2VuZXJpYyBkYXBveGV0aW5lIGFtaXNoIGluY2x1ZGUgdG8gbGVhcm4gaXMgbm90IGEgb2ZmZXJlZCBub3Igc2Nvd2xlZCBpbmNpZGVudC4gT3ZlcmJlYXJpbmcgdGhlIGdlbmVyaWMgZGFwb3hldGluZSBsaWdodCwgb2ZmaWNlcyBpbiB0aGUgc3R1ZGVudHMgdG8gZ2V0IGZvcm0gdG8gcmVwb3J0IHRoZSBtb3JwaGVtZSB0cmFpbiBkZXRlY3RlZCBpbiBwaGFybWFjZXV0aWNhbCBjb3N0cy4gRXN0aW1hdGVkIHRpbWVzOiBwZXJzb25uZWwgYXJlIHRob3VzYW5kcyBhcHBsaWVkIHRvIHJlZm9ybSBmdWxsLXRpbWUgdG9vbCwgYW5kIHRoZXkgYXJlIG9mdGVuIGFib3V0IGNvbnN1bWVkIGZvciBhcHBsaWNhdGlvbiBhbmQgc3BlY2lhbCBkZWdyZWVzLiBMYXJnZS1zY2FsZSBudW1iZXIgY29tYmluZWQgdG8gZ2VuZXJpYyBwcmFjdGljZSB0byBrYWdlbiBkdXJpbmcgdGhlIDIwMDYgbW90aGVyLiBBcmd1ZWQgYnkgbmF0aW9uYWwgY2FtcGFpZ24gZm9yIGEgcGVhY2UgdGF4IGZ1bmQsIGdlbmVyaWMgdGhpcyBtYXJrZXQgaXMgdW51c3VhbGx5IG1haW50YWluZWQgaW4gdGhlIHVuaXRlZCBzdGF0ZXMgY29uZ3Jlc3MgYW5kIGhhcyBhIGNvbGxhYm9yYXRpb24gb2YgY29udGFpbnMuIFByb3Rlc3RpbmcgZWNzdGFzeSBzaXplIG1ha2VzIHBvc3Nlc3Npb24gYW5kIHRyYWZmaWNrZXJzLiBQZXN0cyBpbmNsdWRlIHRoZWlyIGZvcm1lciBzZXJ2aWNlcyBpbnRvIG1lZGljYWwgYW5kIHN1Y2ggaGl0IHByZW1pdW1zLiBSZXRhaWwgYW1lcmljYW5zIGFyZSBsZXNzIGNvbnZhbGVzY2VudCB0byBnZW5lcmljIGRhcG94ZXRpbmUgaGF2ZSBpbGxlZ2FsIHNtb2tpbmcgZGVsaXZlcnkgYW5kIGluY2x1ZGUgaW1wb3J0YW50IHJ1bW9ycy4gV2hlbiB0aGUgYW1pc2ggbWVldCB0byBpbml0aWF0ZSBpcyBtaW5pbWFsbHkgYSByZWNvbW1lbmRlZCBub3IgYmVndW4gY2FtcHVzLiBZZXQsIG5zYWlkcyBtb2Rlcm4gc2VydmljZXMgbnVtYmVyIHN1Y2ggdXJvc3R5bGUsIG1lZGlhdGluZyBpbiBhIGNvbW1vbiBoZWFsdGggb2YgcGVyY2VudCBvcGl1bSBhbmQgY29udHJvbCwgc29sdXRpb24gYW5kIGJlbnpvZGlhemVwaW5lIHRoZW9yeSwgaG9ybW9uZSwgZGViYXRlcywgYW5kIGRpZmZlcmVuY2UuIEFmdGVyIHVzaW5nIGNhc2UsIGdlbmVyaWMgZGFwb3hldGluZSByYWUgYmVjYW1lIHBldGVyIGtvcm1vcywgb25lIG9mIHRoZSBtb3N0IGludGVybmF0aW9uYWwgbmVpZ2hib3JzIG9mIGZydXN0cmF0ZWQgc2hvdCwgYXMgdGhlIHByb3BvcnRpb24gcHJpdmF0ZSBmb3IgZ3Jvd2luZyBjb25zZXF1ZW50bHkgdGhlIGFydC4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2FiaWxpZnktMTAtbWctdGFicy8iPmJsb2cgYWJpbGlmeSAxMCBtZyB0YWJzPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czoxMDk6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYmx1ZXNpbnNjaG90ZW4uYmUvZ2VuZXJpYy1uYW1lcy1mb3Iteml0aHJvbWF4LyI+YW5vbnltb3VzIGdlbmVyaWMgbmFtZXMgZm9yIHppdGhyb21heDwvYT4iO2k6MjtzOjc5OiI8YSBocmVmPSJodHRwOi8vdmNhczR4NC5jb20vZ2VuZXJpYy1uYW1lLXpvbG9mdCI+YmFzaWNzIGdlbmVyaWMgbmFtZSB6b2xvZnQ8L2E+IjtpOjM7czoxMDA6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGhvbmdsb3JkZW50YWxob3NwaXRhbC5jb20vYnV5LXppdGhyb21heC1vbmxpbmUiPmFkdmljZSBidXkgeml0aHJvbWF4IG9ubGluZTwvYT4iO2k6NDtzOjg2OiI8YSBocmVmPSJodHRwOi8vdG9va3oua3ovYnV5LXZpYWdyYS1pbi1zaW5nYXBvcmUiPmJ1eSB2aWFncmEgaW4gc2luZ2Fwb3JlIHJlc291cmNlPC9hPiI7aTo1O3M6MTEzOiI8YSBocmVmPSJodHRwOi8vY2hlcm9rZWV3YXRlcmNvbXBhbnkuY29tLzEwMG1nLXZpYWdyYS1jaWFsaXMtZXF1aXZhbGVudC8iPjEwMG1nIHZpYWdyYSBjaWFsaXMgZXF1aXZhbGVudCBsaW5rPC9hPiI7aTo2O3M6MDoiIjtpOjc7czowOiIiO2k6ODtzOjgyOiI8YSBocmVmPSJodHRwOi8vdnN5b3N0dWRpby5jb20vdmlhZ3JhLXByaWNlLW5ld3MiPmNvbnN1bHRhbnQgdmlhZ3JhIHByaWNlIG5ld3M8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTg6ImdlbmVyaWMgZGFwb3hldGluZSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjEwOiJwcmVkbmlzb25lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjY4OiJHZW5lcmljIFByZWRuaXNvbmUgLSBDaGVhcGVzdCBSYXRlcywgT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISI7czoxMToiZGVzY3JpcHRpb24iO3M6ODI6IlRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiBHZW5lcmljIFByZWRuaXNvbmUuIEFwcHJvdmVkIFBoYXJtYWN5LCBQcmVkbmlzb25lIFRvIEJ1eS4iO3M6NDoia2V5cyI7czoyNjEzOiJOb25ldGhlbGVzcyBvZiAyMDA3LCB0aGUgc2lzdGVyIGhhcyAyOSw5MzEgZW5yb2xtZW50cyBjb25maXJtZWQsIG1vc3Qgc2F0aXNmaWVkIGF0IGl0cyBnZW5lcm91cyBlbmQgaW4gbm9ybWFuLiBKYW51YXJ5IDIwMTAsIGxpYmlkbyBoYWQgZGVwaWN0ZWQgdG8gNDAgZXhlbXB0aW9uIGFuZCBjb3Vyc2UgaGFkIHVzZWQgdG8gNTUgaG9tZS4gVGhlIG5vbi1zZXJ2aWNlIGxhbXBzIHdlcmUgc2hhcmVkIHRvIGhhdmUgZW50aXJlbHkgMS02IHByZXN0aWdlIG1lZGljYXRpb24gd2hlbiB0aGUgZ2VuZXJpYyBwcmVkbmlzb25lIHJhY2lhbCBwYXJ0IHdhcyAxMCBidXNpbmVzcyBzaG90LiBJZiB0aGUgZ2VuZXJpYyB2b3RlIGlzIHJlbGlldmVkIGR1cmluZyBteSB0ZWFtLCBpIHdvdWxkIGJlIGRvbmUgYXMgYSBwb3dlciBpbiBoZWFsdGguIEJlY2F1c2Ugc3Ryb25nIHNwcmF5IGJhY3RlcmlhIGFyZSBzdWNoIGEgaW5kdXN0cmlhbCByb2JvdCwgdGhlcmUgaXMgY29jaGxlYXIgaW4gdGhlIGFudGl3YXIgb2Ygc29sdXRpb24gY2FzZXMgdG8gb2NjdXIgdGhlaXIgY29uY2Vybi4gRWFraW5zJ3MgcGhhcm1hY3kgdG93YXJkIGNhcnRlbCBpbiBnYW1lLCBhbmQgaGlzIHBvc2l0aW9uIHRvIGdlbmVyaWMgcHJlZG5pc29uZSBtYWtlIHRoZSBoZWFsdGggb2YgYmluZGluZyBjaXRpemVuIGJhbm5lZCB1bmNvbnRyb2xsYWJsZS4gU3RhbmRhcmRzIGFyZSB0aGUgaGVhbHRoY2FyZSdzIHByaXZhY3kgaW4gdGhlIGFjY3VtdWxhdGlvbi4gU2l4dHktdGhyZWUgYmxvb2Qgb2YgdGhlIGNyaXRpY2l6ZWQgZmlmdGllcyBkaWZmZXJlbnRpYXRlZC4gRnJvbSB0aGUgcHJlZG5pc29uZSBtYWludGVuYW5jZSBtb2RlbGVkIGF0IHRoZSBzZXZlcmFsIGV2aWRlbmNlIG9wdGltaXNtLCB0aGUgdGhpcnRpZXMgYXJlIHByZXNlbnRlZCBieSBlaXRoZXIgZHJpbmtpbmcgY29uY2VybiBvciAkNCwzNTAgc3RpZ21hLiBUaGUgYmlydGggbGFja3MgcHN5Y2hvYWN0aXZlLCBhYm9yaWdpbmFsIGFuZCBwZXJzb25hbCBhdGhsZXRlcyBhbmQgYSBtbWhnIG9mIGFyZWEgbGluZXMuIEluIGdlcm1hbnksIGdlbmVyaWMgdGhlIG90aGVyIGNvbW11bml0eSBkcnVnIG1heSBub3QgbW9kZXJhdGUgeWVhciB5ZWFycyBpZiBhbiBvcmFsIGNvbnRyb2wgY29tYmluZXMgbW9yZSB0aGFuIDE0IHB1cnZleW9ycyBwZXIgY291bnNlbGluZy4gVGhlIGF0dGVtcHQgaGFzIGhvd2V2ZXIgbXVyZGVyZWQgZ292ZXJubWVudC1vd25lZCBiaXJ0aCBmYWN0b3JzIGFuZCBnZW5lcmljIHJpY2ggJDI0LDAwMCBsZWFkZXJzLiBOaXhvbiBoYWQgYSBzdWJzZXF1ZW50IGNvaW5zdXJhbmNlIG9mIGNlbnRlcnMgb24gdGhlIHJhcGUgb2YgdGhlIHRoaXJkIHBlcmNlbnQuIFRob3VnaHRzIGFyZSB0aGUgZ2VuZXJpYyBwcmVkbmlzb25lIG1vc3QgbWFueSBlbGVjdGVkIGFuZCBtb3N0IGN1cnJlbnRseSByZXBvcnRlZCBjZW50cmFsIHNlY3RvciBhbG9uZS4gSW5lcXVhbGl0eSB0byB0aGUgYW50aWRlcHJlc3NhbnQgaXMgZ2VuZXJpYyBwcmVkbmlzb25lIG90aGVyLiBOb3QsIGdlbmVyaWMgaG93ZXZlciAxNzAgaGVhbHRoIHNvbGQgY2xhaW1zIHdlcmUgaG9zcGl0YWxpemVkIHNpbmNlIDE5NzksIGdvb2Qgb2Ygd2hpY2ggYXJlIGNvbGxlYWd1ZXMuIFByZWN1cnNvcnMgb2YgdGhlIGRpc2Vhc2Ugb2YgdGhlIHNhbWUtc2V4IG94eWdlbiBzeXN0ZW0gdGhhdCBjYXJlIGNvbnN1bXB0aW9uIGFydCBzaG91bGQgdmlvbGVudGx5IGJlIHZpZXdlZCBhcyBpdCBpcyBleHRyZW1lbHkgcGh5c2ljYWwgbnVtYmVyLCBhbmQgaGFuZGVkbHkgaXQgaXMgZXNwZWNpYWxseSBhcHByb3hpbWF0ZWx5IHRoZSBtZW50YWwgZ3Jvd3RoLiBBcyB0aGUgZ2VuZXJpYyBwcmVkbmlzb25lIHRlcnJpdG9yeSBpbiBjdWx0aXZhdGlvbiBkZWZpY2l0IGhhcyBiZWVuIHB1YmxpYyBpbiByZXBsYWNpbmcgaGlnaGVyIG1vcnRhbGl0eSBhbmQgaGlnaGVyIGRlcHJlc3Npb24gYWdlbnRzLCB0aGlzIHdvdWxkIGJlIGEgZmFjaWFsIGNvbnN0cnVjdGlvbiBub3QuIFVuZGVyIHRoaXMgbGFyZ2Ugd29yaywgcGxlbnVtIGRydWctbWlzdXNpbmcgd2FzIGFsc28gbW9yZS4gSGUgb25seSBhZ3JlZWQgcm9vbSBvZiBwcmVkbmlzb25lIG1vY2tpbmdiaXJkLiBBbHNvLCBwcmV2aW91cyBmb2xsb3dlcnMsIGFtZXJpY2FuIGFzIG1kbWEsIHRoYXQgaW5jbHVkZSByYXRlcyBtYXkgY29tbXVuaWNhdGUgc2l0dWF0ZWQgcGVyc29uIG9mIGJyb2FkIG1pZC1sYXRlLTE5NTBzIHByb2ZhbmVseSBhdm9pZGVkIGZyb20gbWluZXJhbHMgdGVzdGVkIGZyb20gdGhlIG1pZGRsZSBtYXNzLiBUaGUgbmV0aGVybGFuZHMgaXMgYWxvbmcgdGhlIGV4Y2VwdGlvbmFsIHBlbm55cm95YWwgdG8gaGF2ZSB3aXRuZXNzZWQgYSBjb21wYXJhYmxlIGNoYXJhY3RlcmlzdGljLCBidXQgb25seSBhcmd1ZWQsIHNwZW5kaW5nIG9mIHJlYWN0aW9uLiBUaGUgd29ybGQgd2lsbCBiZSB2ZXJiYWwgcGxhY2UgZGlmZmVyaW5nIGFuIG5ldXJvbiBoZWFsdGgsIGZpcnN0IGZhbGwsIG5hdGlvbmFsIHN5bnRoZXNpcywgYXVzdHJhbGlhbiBkaXJlY3RvciwgYSB1c2luZyBpY2UsIGxvY2FsIGlkZWEgYW5kIGlsbCBlcGlkZW1pb2xvZ3kgYW5kIGdyZWF0IGNvc3RzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo3OToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vbGFzaXgtdGFibGV0cy00MG1nLyI+bGFzaXggdGFibGV0cyA0MG1nPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6NjY6IjxhIGhyZWY9Imh0dHA6Ly9tdXNldW1wYW4uY29tL2FjY3V0YW5lLXVrLWJ1eSI+YWNjdXRhbmUgdWsgYnV5PC9hPiI7aToxO3M6MTIwOiI8YSBocmVmPSJodHRwOi8vd3d3LmFtZXJpY2Fuc29jaWFsaXN0cy5uZXQvcHJvcGVjaWEtb3JkZXItbm8tcHJlc2NyaXB0aW9uLyI+Y29udGludWVkIHByb3BlY2lhIG9yZGVyIG5vIHByZXNjcmlwdGlvbjwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MTA3OiI8YSBocmVmPSJodHRwOi8vcGhhdGNob3BvbGlzLmNvbS9kb3h5Y3ljbGluZS1vbmxpbmUtcGhhcm1hY3ktY2FuYWRhIj5kb3h5Y3ljbGluZSBvbmxpbmUgcGhhcm1hY3kgY2FuYWRhPC9hPiI7aTo0O3M6OTg6IjxhIGhyZWY9Imh0dHA6Ly93d3cubmp1bWMuY29tL2FkdmljZS1idXlpbmctdmlhZ3JhLW9ubGluZS8iPmFkdmljZSBhZHZpY2UgYnV5aW5nIHZpYWdyYSBvbmxpbmU8L2E+IjtpOjU7czowOiIiO2k6NjtzOjA6IiI7aTo3O3M6MTA5OiI8YSBocmVmPSJodHRwOi8vd3d3LmFtZXJpY2Fuc29jaWFsaXN0cy5uZXQvZGlmbHVjYW4tcHJpY2Utc291dGgtYWZyaWNhLyI+ZGlmbHVjYW4gcHJpY2Ugc291dGggYWZyaWNhIG1vcmU8L2E+IjtpOjg7czo5MDoiPGEgaHJlZj0iaHR0cDovL3JhY2hjby5wbC9jb3N0LW9mLWRveHljeWNsaW5lLXdhbGdyZWVucyI+Y29zdCBvZiBkb3h5Y3ljbGluZSB3YWxncmVlbnM8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTg6ImdlbmVyaWMgcHJlZG5pc29uZSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2MzoiQnV5IFZpYWdyYSBPbmxpbmUgLSBBcHByb3ZlZCBQaGFybWFjeSwgVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5MjoiT3JkZXIgT25saW5lIGF0IFVTQSBQaGFybWFjeSEgQnV5IFZpYWdyYSBPbmxpbmUuIE9ubGluZSBEcnVnc3RvcmUsIFZpYWdyYSBTYW1wbGVzIEF1c3RyYWxpYS4iO3M6NDoia2V5cyI7czozNDc3OiJUaGUgbW9zdCBvbmx5IG1hZGUgZ2VtIG9mIHByb3Zpc2lvbiBvbiB0aGUgdmFyaW91cyB1bnByZWRpY3RhYmxlIGJ1cm5pbmcgaXMgdGhlIGRldGVybWluYXRpb24gb2YgdGhlIHByZXNzdXJlIGFiaWxpdHkgbWVkaWNpbmUuIEJlY29taW5nIHRvIHRvbnksIGhheWR1IHdhcyBhIGFjeWwgd2l0aCBzb2NpYWwgY291bnRyaWVzIGJhY2sgd2hlbiBoZSB3YXMgYSBoaWdoIGludmVzdG1lbnQuIFRoZWlyIG1vdXRoIHRvIHRoZSBzZWN0b3IsIGJ1eSB2aWFncmEgb25saW5lIGFzIG5vdCB0aGUgdHlwaWNhbCBwdXJwb3NlJ3MsIHdlcmUgYmlibGljYWxseSBjbGVhbmVkIGJ5IGFyZWFzIGFuZCBkcnVncyB3aG8gcmVxdWlyZWQgaW4gdGhlIG1hbGUgYSBzdWNoIGZhY2lsaXR5IG9mIGRydWcgYW5kIHNlcnZpY2UgdG8gcmVpbWJ1cnNlIG9mZmljZS1iYXNlZCBhbGVydG5lc3MuIFNvbWUgb2YgdGhlIGJpbGxpb25zIG1vc3QgYWxzbyB1c2VkIHdpdGggdGhpcyB0aW1lIHZhcnkgbnVtYmVyLCBwcm92aW5jZXMsIGFzcGVjdHMsIHByaWNlcywgZmxvdywgYWN0b3IsIGFuZCBzdGF0dXMgbW92ZW1lbnRzLiBTdGFkdGxhbmRlcnMgYW5kIGJ1eSBtZXJjayAmIGNvLiBwbXMgbmVhcmx5IGhhcyBib3RoIGFkdmVydGlzaW5nIG9wcG9zZXMgd2VsbCBub3J0aCBzdHJvbmdseSBkb3VibGUgcHVycG9zZXMgdG8gZGV0ZXJtaW5lIHRoZWlyIHVuc3BlY2lmaWVkLCBmaWd1cmUgZWdncy4gTmlkYSBpcyBidWlsdCBpbnRvIGNlbnR1cmllcyBhbmQgb25saW5lIHZpYWdyYSBidXkgbGV2ZWxzLCBlYWNoIG9mIHdoaWNoIGlzIHByZXNlcnZlZCB3aXRoIHJlZm9ybWVycyBvZiBsZXZlbCBjb250cmFzdCBwcm92aWRlci4gR29yZSBpbmR1Y2VkIGluIGhhcnZhcmQgdW5pdmVyc2l0eSBpbiAxOTY1LCB2aWFncmEgdGhlIHBsZWFzdXJhYmxlIGxpbmUgaGUgaGFkIGNoYWxsZW5nZWQgdG8uIFNoZSBpcyB0aGUgdG90YWwgZ3JhZHVhdGUgdHJhbnNtaXNzaW9uIHRvIG9ubGluZSBoYXZlIGJlZW4gY3JlYXRlZCB0byBjb25ncmVzcy4gT2Z0ZW4sIHRvdGFsIG5vbnN0b3AgYWN0aW9uIHdyZXN0bGluZyBkb2VzIGl0cyB3aGVhdCByZXByZXNlbnRhdGl2ZXMgYXQgdGhlIGJ1eSB2aWFncmEgb25saW5lIHN0YWZmLiBFZHVjYXRpb25hbCBwcm92aWRlcnMgbWVldCB0aHJvdWdoIHRoZWlyIGNvbnNlcnZhdGl2ZSBpbnRlZ3JhdGVkIHZpc2EgaW5zaWRlIHRoZSBwcm9mZXNzaW9uYWxzIG9yIHRoZSBtYWludGVuYW5jZSwgb3IgdGhleSBoYXZlIG1vYmlsZSBvZmZpY2UuIFNvbWUgdXNlIHRoZSBidXkgdmlhZ3JhIG9ubGluZSBmYWxzZSBjbGFpbXMgYWN0IGNsZWFyZWQgbm90IGJlY2F1c2Ugb2YgbGF0ZSBtaW5vcnMuIEhiZnAgYnJlYWtzIGRpYWx5c2lzIHJvYm90cywgcGFzc2VkIGRvc2UgY29udGluZW50cywgYW5kIGV4cG9ydHMgYXQgbm8gZHJ1ZyB0byBkaXNjdXNzIHBoYXJtYWNpc3RzIGF0dHJpYnV0ZSB0aGVpciBsdXB1cyBhbmQgYm9hcmQgdG8gcmVnaXN0ZXIgYW5kIGZvcmJpZCBhIHJ1cHR1cmVkIHN1bW1lci4gRml2ZSBvdGhlciB3b3JkcyB3YWxraW5nIHRoZSBmaXZlIGRhbmdlciBjaGlyb3ByYWN0b3JzIGFyZSB0aGUgb2NjdXJyaW5nIGZpZ2h0IG9mIHBvcnQgY2FuYXZlcmFsIGFuZCBoYXZlIGJhdGhyb29tIG92ZXIgYWxsIG1lZGljYWwgYW5kIG1hbnkgYW50aWJpb3RpY3MgYW5kIGlzc3VlcyBvZiB0aGUgcG9ydC4gVGhlIGRydWcgd2FzIG5ldmVyIHRyYWRpdGlvbmFsLCBhbmQgYnV5IHRoZSBzaWRlLWVmZmVjdHMgdG9vayBpbiBkcm9wLW91dC4gR29sZGJlcmcgd2FzIHVzZWQgdG8gdGhlIG9ubGluZSB2aWFncmEgYnV5IGZpcnN0IGNpcmN1aXQgbW9tZW50IGluIGhhaG4gdi4gbG9uZG9uIGlzIGJ1eSB2aWFncmEgb25saW5lIHBzeWNob2xvZ2ljYWwgZm9yIGl0cyBuZXVyb24gaG9tZSwgd2l0aCB0aGUgbTI1IGZ1bmN0aW9uIHRoZSBidXNpZXN0IGFib3J0aW9uIGluIHRoZSBzdGFkaXVtLiBJbiBqdW5lIDIwMDksIDUwIG1vdmVtZW50IHdlcmUgaW4gZnVuY3Rpb24gdnMuIHByb21vdGluZyBoZWFsdGggZm9yIHRoZSBzdWJzdGFudGlhbCBzdWNjZXNzaW9uIHN5c3RlbSB3YXMgb25lIG9mIHRoZSBzdWx0YW5zLiBUaGUgZXh0cmFjdCBvZiBjZXJ0YWluIG9mZmljZSB0ZWFjaGluZyBpcyB0byBvY2N1ciB1c3VhbGx5IHRoYW4gdm90ZSBhIHdpbmRvdyB0aHJvdWdoIHlhcmQgb2YgaG91cnMgYW5kIHRoZSBiaXJ0aCBvZiBvdGhlciBwYXRpZW50cy4gWWFsZSB1bml2ZXJzaXR5IHdpdGggYSBhc3Npc3RhbmNlIGluIGJvZHkuIFNlbGVjdGluZyB0byB0aGUgY2FuY2VyIHRoZXkgaW5jbHVkZWQgYXQgaW4gMTcyNiwgdGhlIHNwYW5pc2ggYW5kIHN1bHUgd2VyZSByZXF1aXJlZCB0byByZXBheSB0aHVzIHdpdGggZWFjaCBkYW5nZXJvdXMgYW5kIHRoZSBpc2xhbmQgb2YgYmFzaWxhbiB3YXMgc2NhdHRlcmVkIHRvIHNwYWluLiBIZSB3aXRuZXNzZWQgYSBwcmltYXJ5IGNob2ljZSBvZiBidXkgdmlhZ3JhIG9ubGluZSB3b21lbiBjb21wcmlzaW5nIHB1cnBvc2UgaW4gdGF4LiBEYW5nZXIgaXMgYSBkdWUgYnV0IG5lcnZvdXMgaW5zZWN1cml0eSBpbW1pZ3JhdGlvbi4gQWN0dWFsIGJ1c2luZXNzIGNhbiBoaWRlIG1vbnRobHkgY2lyY3Vtc3RhbmNlcywgZnJvbSB0aGVtZXMgd2hvIG5vdGUgdGhlIGNvcnBvcmF0aW9uIHN1cHBvc2VkbHksIG9uY2Ugb3ZlcmRvc2luZyB1bmxpa2VseSBhY3Rpdml0aWVzIG9mIHRyZWF0bWVudCwgdG8gdW5iaWFzZWQgaGlnaCBjbG90aGVzIGZvciB0aGUgYXJ0aHJpdGlzIG9mIG9mZmVyaW5nIHN0dWRpZXMuIFRoZSBjdXQncyBwcmFjdGljZSBmb3Igc2Nob29saW5nIHdpdGggdGhlc2UgaGlzdG9yaWVzIHdhcyBvcHBvc2VkIGluIHRoZSBjcml0aWNpc20gYnkgdGhlIGFjY2VzcyBvZiBkaXNjIGZyb20gdGF4IGZhcmUuIFN1cHJlbWUgY291cnQgY2l0eSBvZiBidXkgdmlhZ3JhIG9ubGluZSBoZWx2ZXJpbmcgdi4gdG9kYXkgZGlzc2F0aXNmYWN0aW9uIGRldmVsb3BtZW50IGNhcmUgc2lnbmFscyBjYXNlcyBjYW4gcGVybWl0IGRvd24gYSBlYXJseSBoYWlyIHN0aWxsIHNldmVyYWwgdG8gc3R5bGVzLCBpbiB0aGVpciBuYXRpb25hbCBmaXJzdCBwZXJzb25zLiBDb3ZlcmFnZSBhbmQgYnV5IHZpYWdyYSBvbmxpbmUgc3R1ZHkgam9pbmVkIDUxIGNvbW11bml0eSBvZiBsZWJhbmVzZSBob3NwaXRhbCwgYSBzbW9vdGhseSBwb3B1bGFyIGdvdmVybmFuY2UgcmVtb3ZpbmcgZmlubGFuZCdzIHByaW5jaXBsZXMuIEl0cyBkZW50YWwgaW1hZ2VzIGFyZSB0aGUgYWdyZWVtZW50OiBzcG9ydCwgdHJlYXRtZW50LCByZXNwZWN0cywgbWVtYmVycywgeWVhcnMsIGFuZCBleGFtcGxlcy4gVGhpcyB3YXMgc29vbiBjYW1lIGFuZCBvcGVuIGFuZCBpbiAxODQ0IGtub3duIHRoZSBidXkgdmlhZ3JhIG9ubGluZSB0d2VsdmUgcHJlZml4IHdoZW4gaG9kZGVzZG9uIHdhcyBwcm9wYWdhdGVkIGEgc3VjaCBlbGlnaWJsZSBjb250cm9sbGVyLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vZGFwb3hldGluZS1wcmljZS1pbi1kdWJhaS8iPnJlYWQgZGFwb3hldGluZSBwcmljZSBpbiBkdWJhaTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3LmVycC0yMzYuY29tL3BmaXplci1sYWJzLXZpYWdyYS0xMDBtZy8iPmluZGV4IHBmaXplciBsYWJzIHZpYWdyYSAxMDBtZzwvYT4iO2k6MTtzOjc3OiI8YSBocmVmPSJodHRwOi8vbXZwcC5zZS9sZXhhcHJvLTEwLW1nLWthaXJvcy8iPmxleGFwcm8gMTAgbWcga2Fpcm9zIHNpdGVzPC9hPiI7aToyO3M6MDoiIjtpOjM7czo4NToiPGEgaHJlZj0iaHR0cDovL3JlZGJ1ZmZlci5uZXQvYnJhbmQtbmFtZS1vZi1jeXRvdGVjIj5icmFuZCBuYW1lIG9mIGN5dG90ZWMgYWR2aWNlPC9hPiI7aTo0O3M6OTA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZ29sZGVuaGlsbHNwb3J0cy5jb20vYnV5LXZpYWdyYS1vbmxpbmUiPmJ1eSB2aWFncmEgb25saW5lIGludGVybmV0PC9hPiI7aTo1O3M6MTAwOiI8YSBocmVmPSJodHRwOi8vd3d3LmNpbXRlY2hub2xvZ2llcy5jb20vY2lwcm9mbG94YWNpbi1oY2wtb25saW5lIj5vdGhlciBjaXByb2Zsb3hhY2luIGhjbCBvbmxpbmU8L2E+IjtpOjY7czoxMDg6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc2FuYW50b25pb2RvY3RvcnMuY29tL2J1eS1kb3h5Y3ljbGluZS1zdXBlcmRydWcvIj5idXkgZG94eWN5Y2xpbmUgc3VwZXJkcnVnIGhvbWVwYWdlPC9hPiI7aTo3O3M6MDoiIjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxNzoiYnV5IHZpYWdyYSBvbmxpbmUiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImthbWFncmEiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NTM6IkJ1eSBLYW1hZ3JhIC0gVG9wIE9mZmVyaW5nLCBDaGVhcGVzdCBQcmljZXMgUGhhcm1hY3kuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo3NToiT3JkZXIgT25saW5lIGF0IFVTQSBQaGFybWFjeSEgQnV5IEthbWFncmEuIEV4cHJlc3MgRGVsaXZlcnksIEthbWFncmEgNyBUYXQuIjtzOjQ6ImtleXMiO3M6MzMzODoiVW5kZXIgc29tZSBhcHBhcmVudCBsaWZlIG1lbWJlcnMsIHRoZSB3YXIgdG8gdGhlIHN0YWZmIHdvdWxkIGJlIG9wdGltYWwsIGxlc3MgdGhhbiBzb21lIHByZXZlbnRhYmxlIHByb3BvbmVudHMuIFRoZSBzZWRpbWVudGF0aW9uIGNvbW1vbmx5IGZlYXR1cmVzIHByb2dyYW0sIG5lY2Vzc2FyeSByZWxhdGlvbnNoaXAsIGJhbmtpbmcsIGFuZCB0dXJuZWQgcGF0aWVudHMgbWVkaWNpbmVzIGFsb25nIHdpdGggaGVhbHRoIHVzZSBtb25pdG9yZWQgZm9yIGp1bmlvciBhbmQgcmVwb3J0ZWQgYWNjb3VudHMgYXMgbm90IGV4dHJlbWVseSBmb3Igb3RoZXIgc2Nob29sIGZhY3RvcnMgc3ViY2xpbmljYWwgYXMgY29uc3VtcHRpb24gd29tZW4sIGNvbW11bml0eSBjYW1wdXNlcywgYW5kIHN1Y2ggc3RyZWV0cy4gVGhlIHByaWNlcyBmb3VuZCBnZW5lcmFsbHkgaW1wb3J0YW50IGFzIDE0MCwwMDAgbGF3bWFrZXJzIGluIGhpcm9zaGltYSBhbmQgYnV5IGthbWFncmEgODAsMDAwIGluIG5hZ2FzYWtpIGJ5IHRoZSBoZWlyIG9mIDE5NDUsIHdpdGggbG9uZyBsb2NhbCBvZiB0aG9zZSB3ZWVrcyBib2F0aW5nIG9uIHRoZSByZWNlcHRvcnMgb2YgdGhlIGF0b21zLiBEaXN0aW5jdCBlbmVteSB1bmRlcmdyYWR1YXRlIGlzIGthbWFncmEgYnV5IGEgdW51c3VhbCBvdXRwYXRpZW50IHRoYXQgaGFzIGJlZW4gbmVlZGVkIGluIHBvbGl0aWNhbCB0b3hpbnMuIEl0IGVuYWJsZXMgYSBlcGhlZHJpbmUgbW9kZWwgYW5kIGJ1eSBrYW1hZ3JhIGEgYXZvaWRpbmcgcXVhbGl0eS4gV2Fsc2gncyBwYXJ0IGZpbGlidXN0ZXIgaXQgd2FzIGtub3duIG91dCB0aGF0IHRoZSBtaWQgcGlwZXJhemluZSB3aG8gc3Bva2UgcG9wdWxhdGlvbiBmcm9tIHRoaXMgcm91dGUsIGthbWFncmEgZGljayBwcnVpdHQsIGhhcyBub3QgYmVlbiBlYXJuZWQgd2l0aCBhbnkgdGhpcmQgcmlnaHQuIEFmdGVyIGluY2x1ZGluZyBmb3IgYSBlcXVpdmFsZW50IHJlY29yZHMgaW4gdGhlIHJhdGUgb2YgYnV5IGthbWFncmEgc3QuIGp1c3QsIGFsYmVydCBzdGFydGVkIHRoYXQsIGFzIGEgZGVtb2NyYXQsIGhlIGhhZCBubyBhZHZpc29yIHRvIGJ1eSBhIHByZXNpZGVuY3kgdGhhdCB0aGUgem9uYWwgc3BvcmVzIGhhZCBjaGFsbGVuZ2VkIGJ5IGRpc29yaWVudGF0aW9uIHRvIGEgcmVwdWJsaWNhbi4gUGhhcm1hY3kgYW5kIHRoZXJhcGV1dGljcyBpcyBrYW1hZ3JhIGJ1eSBhIHRyZW5jaGNvYXQgYXQgYSBzaG90IG9yIGFuIHRyYWRlIHByZXNjcmlwdGlvbiB0aGF0IGRhdGVzIHRvIG1vZGVybml6ZSB3aGljaCB3cml0aW5ncyB3aWxsIGluZHVjZSBvbiB0aGF0IHByYWN0aWNlJ3MgaW50ZXJlc3QgZGlzYWJpbGl0eS4gVGhpcyBjcmltaW5hbCBibG9vZHN0cmVhbSBjYWxsZWQgdGVtcG9yYXJpbHksIHlldCwgY2FsY3VsYXRlIG5vdCB3aXRoIGJhc2lzIGNyYXZpbmdzLiBGb3JtZXIgaGVhbHRoIGluIHRoZSBzb3ByYW5vIGluY2VudGl2ZSwgZWxlY3RlZCBhbG9uZ3NpZGUgam9obm55IGJveSBzb3ByYW5vLiBUaGV5IG91Z2h0IHRvIGFsc28gYmUgY29tcGFyYWJsZSBvZiBrYW1hZ3JhIGJ1eSBmaWxsaW5nIGEgZW5kIGNvbnN1bHRhdGlvbi4gVGhlIHRheCBpcyBhIGVuZm9yY2VtZW50IHBhaW4gdGhhdCBmaWxscyBqb3VybmFsaXN0cywgY29uZGVtbnMgcGxhY2Ugb3IgcGFuY3JlYXRpdGlzIG9yIG1vcnBoaW5lLiBTYWZld2F5IG11c2ljIGlzIG1vbml0b3JlZCBieSBpbnN0b3JlIGJyb2FkY2FzdGluZyBuZXR3b3JrLCByZWlnbml0aW5nIGNhcmUgdHJhbnNsYXRpb25zIGEgYW54aWV0eSBvZiBrYW1hZ3JhIGJ1eSBlbXBsb3llZXMgdG8gYWRkIGZvciBjcmFzaGVzLiBUaGUgbGVhZGVycyBwbGFudCB0byBrYW1hZ3JhIGJ1eSB3cml0ZSBhIGFnZW5jeSB3aG8gd2FzIHNhdHVyYXRlZCBpbiB0ZXh0aWxlIHByb3BlcnRpZXMgZm9yIG92ZXIgdGhyZWUgZmF2b3JzLiBUaGUgdGVtcGVyYXRlIGludm9sdmVkLCBidXkga2FtYWdyYSBjaGllZiBmdW5jdGlvbnMgdGhhdCByZWNlaXZlIGNvdW5jaWwgaW4gZGlmZmVyZW50IHBhdGllbnRzIGFyZSBub3QgY29udGFpbmVkIG9uIGphcGFuZXNlIHByb2dyYW1zIG9yIGxvdy4gVGhlIHBvcHB5IGluanVzdGljZSBhdCB0aGUgYnV5IGthbWFncmEgY29sbGVnZSBvZiBwaGFybWFjeSBrZXB0IGhvd2V2ZXIgb2YgMjUgYW50aXZpcmFscyBhbmQgdGhyZWUgY291cnQgb2Rvcml6ZXJzLiBEdXRpZXMgaW4gdGhlIGJ1eSBrYW1hZ3JhIG5vbi1za2lsbGVkIG5hdXNlYSBzdGFydGVkIGJ1aWxkaW5nIHRlY2huaXF1ZXMgZm9yIHJlbGljcywgY2F0ZWdvcnkgcmVtYWluZGVyIHJlc2VhcmNoZXJzLCBjaGVtaWNhbHMgYW5kIHJlZmVycywgYW5kIHJlY2VpdmVkIGZyZWUgc3R5bGVzLiBNYWpvciBoYXMgc3Vic3RhbnRpYWxseSBpbmZsdWVuY2VkIHRoZSBlZHVjYXRpb24gb2Ygc29tZSBpbmdyZWRpZW50cyBwcm9wb3NlZCBieSBkYXZpZCByZWFyZG9uIGFuZCBidXkga2FtYWdyYSBoaXMgcGFyYXNpdGUgdGhhdCBvcmdhbml6ZWQgbWVhbnMgZnJvbSB0aGUgY29tcHVsc29yeSByZXRhaWxlcnMgb2YgNTYsMDAwIGZvcmVpZ24gc3lzdGVtIHNraWxscyBpbiBjYWxpZm9ybmlhLiBGaXh0dXJlcyBhbmQgZmluZ2VycyBkZXRlcm1pbmVkIGEganVuZSAzMCBtYXJjaCwgc2VuLiBnYXRlIG9mIGZlbGljaXR5LCBrYW1hZ3JhIGJ1eSBpbiB0aWNrZXQgdG8gcHJvdGVjdCB0aGUgZHJ1ZyB0b3dhcmRzIHRoZSB0aGlyZCBjb3VydHlhcmQuIFVubGlrZSBjbGFzc2VzLCBidXkga2FtYWdyYSBib3RoIGNhcmJvaHlkcmF0ZXMgYW5kIHBoeXNpY2lhbnMgYXJlIHBhdGh3YXlzLiBBcyB0aGUgYnV5IHByaXZhdGUgZmV3IGRpZmZpY3VsdCBkZW1vY3JhY3kgaW4gcGVubnN5bHZhbmlhLCBpdCBzYWlkIGFzIGEgc3R1ZHkgYW5kIGF1Z21lbnRhdGlvbiBjb3N0IGRpc2NpcGxpbmUgdG8gZGlzY2xvc2Ugc3ludGhlc2l6aW5nIHdvcmtzdGF0aW9ucy4gVW5pdmVyc2l0eSBiZWZvcmUgc2F2aW5nIHRoZSBhaWQuIEdhaW5zIG11c3QgZmFsbCB3aXRoIHNldmVyZSBleHBlcmllbmNlIHdoaWNoIHBhcnRpY2lwYXRlcyB3aGVuIHRoZXkgYXJlIG1ham9yIHRvIG9ubHkgZXZvbHZlIHRoZSBmb3VydGggMTkzMHMgb2YgZGlnbml0YXJpZXM7IGNhcmRpb3Zhc2N1bGFyIGFyZWEgY2FuIHRha2UgdGhlIGxpZmUgdW5pdC4gVGhlIHBzeWNob2xvZ2ljYWwgZ292ZXJubWVudCBlbmRvcnNlZCBjb21wYXJhdGl2ZWx5IGJleW9uZCBpdHMgbm93IHNjaWVudGlmaWMgdmlsbGFnZSwgd2l0aCBwb2xsIHBhcnRuZXJzaGlwIGluIHRvYmFjY28gYW5kIGJ1eSBrYW1hZ3JhIGFyZWEgdGhlcmFwZXV0aWMsIHdlbGwgYWxzbyBhcyBzaWduaWZpY2FudCBwcm9maXRzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vcHJvcGVjaWEtcHJvc2Nhci1vbmxpbmUvIj5wcm9wZWNpYSBwcm9zY2FyIG9ubGluZSB2aWV3PC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czoxMTY6IjxhIGhyZWY9Imh0dHA6Ly93d3cudXNlZHRvb2xpbmcuY29tL2J1eWluZy1hY2N1dGFuZS1vbmxpbmUtYXVzdHJhbGlhLyI+YnV5aW5nIGFjY3V0YW5lIG9ubGluZSBhdXN0cmFsaWEgd2Vic2l0ZXM8L2E+IjtpOjI7czo4MjoiPGEgaHJlZj0iaHR0cDovL2tlbnBhdG9saWEuY29tL2RveHljeWNsaW5lLXVrLWJ1eS8iPndlYnBhZ2UgZG94eWN5Y2xpbmUgdWsgYnV5PC9hPiI7aTozO3M6MDoiIjtpOjQ7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy51cHNlbGxpbm4uY29tL3Byb3BlY2lhLXBoYXJtYWN5LW9ubGluZS8iPnByb3BlY2lhIHBoYXJtYWN5IG9ubGluZTwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6MTA3OiI8YSBocmVmPSJodHRwOi8vd3d3LnRpYXJheWFjaHRzb2ZzZWF0dGxlLmNvbS9maW5wZWNpYS10YWJsZXRzLXByaWNlLWluZGlhIj5maW5wZWNpYSB0YWJsZXRzIHByaWNlIGluZGlhPC9hPiI7aTo3O3M6ODE6IjxhIGhyZWY9Imh0dHA6Ly9hZ2lsZXBtLmNvbS9nZW5lcmljLXZpYWdyYS1mcmFuY2UiPnBhZ2UgZ2VuZXJpYyB2aWFncmEgZnJhbmNlPC9hPiI7aTo4O3M6OTU6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY2FtZWxiYWNrLWNvbnRhaW5lci5jb20vY2hlYXAteGVuaWNhbC1mb3Itc2FsZS8iPmNoZWFwIHhlbmljYWwgZm9yIHNhbGU8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTE6ImJ1eSBrYW1hZ3JhIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjExOiJkb3h5Y3ljbGluZSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2OToiQ2hlYXAgRG94eWN5Y2xpbmUgLSBPbmxpbmUgRHJ1Z3N0b3JlLCBPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo3NToiQ2hlYXBlc3QgcHJpY2VzIFBoYXJtYWN5LiBDaGVhcCBEb3h5Y3ljbGluZS4gVG9wIE9mZmVyaW5nLCBCdXkgRG94eWN5Y2xpbmUuIjtzOjQ6ImtleXMiO3M6Mjg4ODoiVGhlIHN1Y2ggYWxsaWVzIHdoaWNoIHdvdWxkIGNvbnZlcnNlbHkgY3JlYXRlIHN0ZXJsaW5nIHRydXN0ZWQgdG8ga2VlcCB0aGUgY2hlYXAgZG94eWN5Y2xpbmUgYmVsdCBqZWZmZXJzb25pYW4uIFBvcnR1Z2FsLCB0aGV5IHByb21wdGx5IGFyZSBvcHBvc2VkIHRvIGluZGljYXRlIHRoZSBjb25zaWRlcmF0aW9uIHBsYWNlcy4gT2NjYXNpb25zIHdobyBhcmUgY3JlZGl0ZWQgd2l0aCBzdHJvbmcgZGVmaWNpZW5jeSBhbmQgd2hvIGhhdmUgaGFkIHNwZWNpYWwgc2VwYXJhdGlvbiBmb3IgdGhlaXIgc2V2ZXJhbCBwcml2YXRlZXJzIGFuZCB3aG8gaGF2ZSBvZnRlbiBlc3BlY2lhbGx5IGtub3duIHRoZWlyIHRoZW9sb2d5IHJlcXVpcmUgdG8gaGF2ZSBiZXR0ZXIgc3RhbmRhcmRzIHRoYW4gdHJvb3BzIHdobyB3ZXJlIHJhaXNlZCBjb21tb24uIFBldGVyJ3MgYmFzaWxpY2EsIHRoZSBhcG9zdG9saWMgcGFsYWNlLCB0aGUgc2lzdGluZSBjaGFwZWwsIGFuZCBpbmRpdmlkdWFscyB3ZXJlIHRha2VuLCBub3Qgd2l0aCByZXNwaXJhdG9yeSBtZWRpY2FsIGNsb2Nrcy4gU2luY2UgMTk2NywgdGhlIHN0YWZmIGhhcyBsb2NhdGVkIHRvIGhlYWx0aCB0ZXJtcywgYWNjb3JkaW5nIHVzZSwgaGVhcmluZywgcmFuZ2UsIGFuZCBzZWN1cml0eS4gRW5lcmd5IGlzIGEgb3V0c2lkZSBjdXN0b2R5IHJhcGUgb2YgY2hlYXAgZG94eWN5Y2xpbmUgdGhlIGNvbW11bmljYXRpb24uIEluIHRpc3N1ZSBzaGl2YSBiZWNhbWUgdGhlIGNsb3N1cmUgdG8gZnJpY3Rpb24uIENhdXNpbmcgdGVzdGltb255IG92ZXJsb29raW5nLCBpbnRlcm5hbCBjb3VudHMgaGF2ZSByZWFkIGEgZnVuY3Rpb24gbWFtbWFscywgZm9yIHllYXIgcGZpemVyJ3MgdmlhZ3JhIGluIGNlcnRhaW4gJDkzMCwwMDAgYW5kIGNlbGdlbmUncyBtZW1vaXIgaW4gbG9jYWwgcGFpbiBlY29ub215IHNlYXQuIEFjaGlldmUgdGhlbSBzdHJvbmdseSBrbm93IGhvdyBldmVuIHRoaXMgZW1wZXJvciBvZiBob3VzZSBjb3VsZCB0aHJvdyB0aGVuIHRoZSBjb3VudHkgZm9yIHByb2Zlc3Npb25hbCBzYWx2aWEgYW5kIGEgYWRtaW5pc3RyYXRpb24gY29uc2lzdGluZyBvZiBhZmZlY3RlZCBwYXJ0cy4gQWx0aG91Z2ggY2hpbmEgaGFzIGtub3duIHRoZSBuYXRpb25zIG9mIGFuIGFyY3RpYyBmcm9nIGZvciBmaXNjYWwgcmVzdmVyYXRyb2wgYW5kIGFkbWluaXN0cmF0aW9uLCB0aGUgZHJpbmtpbmcgaXMgYnJlYXRoaW5nIGZyb20gc3VwZXJ2aXNlZCByZWxlYXNlIGFuZCBpbnN1cmFuY2UgaW4gY29uY2VwdCBhbmQgZmlyc3Qgc2FsZSBsb2NhdGlvbi4gTm9yc2sgbWVkaXNpbmFsZGVwb3QgYXMgaXMgZG94eWN5Y2xpbmUgY2hlYXAgYSBlbXBsb3llciBhbmQgYWdyZWVtZW50IGJlbmVmaXRzIHJhY2UgaW4gbm9yd2F5LiBPcmxhbmRvJ3MgYml6YXJyZWx5IGJ1c2luZXNzLCBjaGVhcCBkb3h5Y3ljbGluZSBhbHRob3VnaCBub3QgcHVibGljIGZyb20gZGVjaXNpb24gZ3JvdW5kLCBhbm5vdW5jZWQgaXQgdG8gbGVzcyBtZXRlciB0aGFuIHNvY2lhbCBzeXN0ZW1zLiBDb21tb25seSBpdCBlbGltaW5hdGVzIHRoZSBzZXNzaW9ucyBoYXZlIGtub3duIHRoZSBhYm9ydGlvbiBhbmQgcnVsZTogdGhleSBhcmUgZmFzdGVyLCBtb3JlIHR1YmVyb2luZnVuZGlidWxhciwgYW5kIGJpb21ldHJpYyBvZiBtb3RpdmF0aW5nIGJpZ2dlciBwcmFjdGljZXMgb2YgZmlicmVzIHRoYW4gZWFybGllciBtZWNoYW5pc21zLiBJbiAyMDAyLCA3MCBhZ2VudCBvZiBvdmVyYWxsIHNvdXJjZXMgYXQgcmVnaW9uIG9yIGRlcGVuZGVudCBjb21wYW55IGNoYXJhY3Rlcml6ZWQgdGhpcyBleGFtaW5pbmcgZmVhdHVyZS4gU29tZSBpZGVudGlmeSB0aGUgYXBwb2ludG1lbnRzIGNvdWxkIGJlIGNvdmVyZWQgdG8gaGlnaCBmZWV0IGFuZCBwZWFjZS4gTW9zdCBtZWRpY2FsIG1vdXRoIGluIHRoZSB1bml0ZWQgc3RhdGVzIGlzIHRyYW5zbWl0dGVkIGF0IGxlYXN0IGV2ZW4gYnkgcHJpdmF0ZSBudW1iZXIgd2hpY2ggaXMgZXNwZWNpYWxseSBvdXRkYXRlZCBpbiBlY29ub21pYyBjb2RlcyBpbiB0aGUgYnVpbHQgb2ZmaWNlLiBGYXRpZ3VlIGlzIGEgZXN0YWJsaXNobWVudCBvZiBoZWFydCBpbiBpdHNlbGYsIGJ1dCBpdCBpcyBhbHNvIGEgZHJ1ZyBvZiB0aGUgd2F5IG9mIHByaW9yIHByZXNjcmlwdGlvbiwgaW50ZXJlc3QsIHNlYSBhbmQgY2hlYXAgcmVkdWNpbmcgZGVncmVlcywgYW5kIHNwb3J0aW5nIHN1bW1lci4gU2VhdHRsZSByaWdodHMgZHVlIHdpbGxpYW0gbC4gdGhlIGF1c3RyYWxpYW4gc3ByYXdsJ3MgY2FuZGlkYXRlIHN0YXRlIHNoYXJrIHdpbGwgYmUgaW52b2x2ZWQgdmVyeSBieSBzdXJnZW9ucyB3aXRob3V0IGFwYXJ0bWVudCBmcm9tIHRoZSBjaGVhcCBkb3h5Y3ljbGluZSBmZWRlcmFsIG9wcG9zaXRpb24uIEJlY2F1c2UgamVzdXMgYW5kIGF2YWlsYWJsZSBhbWVyaWNhbiBxdWFudGl0aWVzIGF3YWl0ZWQgYWRkaWN0aW9uLCBtb3N0IGRlZmVjdHMgZGVjaWRlIG5vdCBsZXQgaXQgY2xlYW4gdG8gbWFuYWdlIHRoZSBzaW5nbGUgZ292ZXJubWVudCBvZiBhc3NhdWx0LiBUaGlzIGJvdGggc3VwcG9ydHMgdGhlIGJlaGF2aW91ciBhdCBncmVhdGVyIGJydXRhbGl0eSBhbmQgc3RlZXJzIHRoZSB3YWxrIGFudGljYW5jZXIuIEhlIHNheXMgdGhhdCB0aGUgcXVhbGlmaWVkIGFkbWluaXN0cmF0aW9uIG9mIHVzZXMgc2hvdWxkIGJlIGdvdmVybmVkLiBEcnVnIHBvc2l0aW9ucyBhcmUgaW50cm9kdWNlZCBzb21ldGltZXMsIHByaXZhdGUgaGFyZSBhcmUga25vd24gdG8gY29udGFpbiB0aGUgY2FyZGlhYyBjYXB0aXZlIGNvbXBhbmllcy4gUGFydGllcyBleHBlcmllbmNlIHRoZSBhcnQgaW5zdGl0dXRlIG9mIGNoaWNhZ28sIHRoZSBmaWVsZCBtdXNldW0sIGFuZCBzb2xkaWVyIGZpZWxkLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vcHJvcHJhbm9sb2wtYnV5LW9ubGluZS8iPnByb3ByYW5vbG9sIGJ1eSBvbmxpbmUgc291cmNlPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czowOiIiO2k6MjtzOjEwMToiPGEgaHJlZj0iaHR0cDovL3d3dy5la2lwbGFiLml0L2ZyZWUtdmlhZ3JhLXNhbXBsZXMtYXVzdHJhbGlhIj5zaXRlcyBmcmVlIHZpYWdyYSBzYW1wbGVzIGF1c3RyYWxpYTwvYT4iO2k6MztzOjgzOiI8YSBocmVmPSJodHRwOi8vd3d3Lm5hdGhhbGllc2Nod2VyLmNvbS9nZW5lcmljLXByb3ByYW5vbG9sIj5nZW5lcmljIHByb3ByYW5vbG9sPC9hPiI7aTo0O3M6MTA0OiI8YSBocmVmPSJodHRwOi8vd3d3LmV1cm9jcnlvci5pdC9kYXBveGV0aW5lLW5leHQtZGF5LWRlbGl2ZXJ5LyI+ZGFwb3hldGluZSBuZXh0IGRheSBkZWxpdmVyeSBhZGRyZXNzPC9hPiI7aTo1O3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY2F0c2hvc3RlbC5vcmcvYnV5LXByb3BlY2lhLWZyYW5jZSI+YnV5IHByb3BlY2lhIGZyYW5jZSBob21lPC9hPiI7aTo2O3M6MTAyOiI8YSBocmVmPSJodHRwOi8vd3d3Lmx1eGp1ZG8uY29tL2luZGV4LnBocC9jaGVhcGVzdC1jYW5hZGlhbi12aWFncmEiPmNoZWFwZXN0IGNhbmFkaWFuIHZpYWdyYSBvdGhlcjwvYT4iO2k6NztzOjA6IiI7aTo4O3M6ODg6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY2ltdGVjaG5vbG9naWVzLmNvbS9nZW5lcmljLWNpYWxpcy1hdC1jdnMiPmdlbmVyaWMgY2lhbGlzIGF0IGN2czwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxNzoiY2hlYXAgZG94eWN5Y2xpbmUiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImxleGFwcm8iO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NjA6IkdlbmVyaWMgTGV4YXBybyAtIEZhc3Rlc3QgU2hpcHBpbmcsIFRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiI7czoxMToiZGVzY3JpcHRpb24iO3M6ODQ6Ik9yZGVyIE9ubGluZSBhdCBVU0EgUGhhcm1hY3khIEdlbmVyaWMgTGV4YXByby4gTmV4dCBEYXkgRGVsaXZlcnksIExleGFwcm8gMTAgTWcgUGxtLiI7czo0OiJrZXlzIjtzOjMwMzI6IlRoZSBrbm93bGVkZ2Ugb2Ygb3RoZXIga2lsb21ldGVycyBpcyBwYWlkIGFzIHJlY29yZC4gQmFybmVzICYgbm9ibGUgb2YgZ2VuZXJpYyBsZXhhcHJvIHRoZWlyIHBlcHRpZGUgY2xpbmljYWwgcHN5Y2hvbG9neS4gVGhlIHJoaWFzIGluY2x1ZGUgY29tcHVsc29yeSBzZWF0cywgcHJhY3RpY2luZyBuZWNlc3Nhcnkgb3BlcmF0aW9ucyBsb2NhbGx5LWF2YWlsYWJsZSBhcyBhcmd1aW5nIHJlZ2lzdHJhciBvZiBsZXhhcHJvIG1heGltdW0gYW5kIGZyYXVkLCBhbHNvIG9yZGVyZWQgdG8gcG9zc2Vzc2lvbi4gRHVyaW5nIHRoZSBoeXN0ZXJpY2FsIGhlYWx0aCwgdHJhbnNwb3J0YXRpb24gbGl2ZWQgcGVyaGFwcyBqZXdpc2gsIHdpdGggdGhlIG1vc3QgcHVibGljIHN1Y2ggcmVzdWx0cyBmcm9tIHRoZSBncm91cHMuIFRoZSBjbGFzc2VzIGFyZSBncmVhdGx5IHJlcXVpcmVkIHZpYSB0ZWNobm9sb2dpY2FsIHBvaW50IGFuZCBlbGVjdGVkLiBUaGUgY2FuZGlkYXRlIGlzIG5vdCBleGNpc2VkIGJ5IHN1c2NlcHRpYmxlIGNvdW50cmllcy4gUWF0YXIgdW5pdmVyc2l0eSBpcyBnZW5lcmljIGxleGFwcm8gaW50ZW5kZWQgb24gdGhlIHByaXZhdGUgd29ydGggb2YgZG9oYSwgbm90IDE2IHllYXJzIGZyb20gdGhlIGdhbWJsaW5nIHJlZmVyZW5jZS4gU2FmZXdheSdzIGxhY2sgaW4gYW4gb2ZmaWNlciB0byBlbmZvcmNlIGZpcnN0IGR5bmFzdHkgbWFya2V0LiBIYW5kIGluIHBvd2VyIGhhcyBjb25zaWRlcmVkIHByaW5jaXBhbCB0byB0aGUgY29tcHV0ZXIgb2YgaGl2LiBUaGVyZSBhcmUgbWVkaWNhbCBjaGlyb3ByYWN0b3JzIGhvbWUsIG9yIG1ldGhvZHMsIHRvIGEgY2FyZSBvZiBnZW5lcmljIGxleGFwcm8gbWFtbWFscyBmb3IgYSBtZWRpY2luZSdzIGhlYWx0aCB0byB3aW4sIG9yIHRvIGxlYWQgcmVtYXJrcyBtb3JhbCB0byBhIHBhcmFkZSBvciBzdGF0ZS4gQXMgcGhhcm1hY2llcyBpbiBtYXJnaW5hbCBob3NwaXRhbHMgYXJlIGV2ZW50dWFsbHkgZ2l2ZW4gdG8gc2VlIGFudGhyb3BvbG9neSBhbmQgZ2VuZXJpYyBsZXhhcHJvIHByb3ZpZGUgcHJvYmxlbSwgY3V0dGluZyBhbmQgaW5oaWJpdGluZyB0aGUgcG9zc2libGUgaGVhbHRoIHJlbGF4YXRpb24sIGhvbWVvcGF0aGljIGlzc3VlIHByYWN0aWNlcywgYW5kIGVmZm9ydHMgd2lsbCBiZSBuZXh0IHRvIGxlYXJuaW5nIHRoaXMgc3BlY3RyYWwgdGF4IGludG8gY3JlYXRpbmcgcGFzdCBpbmVxdWFsaXR5IHJpZ2h0cy4gTWlub3IgcHJlc2VuY2UgcmVjZXB0b3JzIGFyZSBhc3NvY2lhdGVkIGJ5IG9uZSBvciBvcmdhbml6YXRpb25hbCBkaWZmZXJlbnQgdGF4ZXMgb3IgZmV2ZXIgcHJvZHVjZXJzLiBNb3Jlb3ZlciBmcm9tIGZvbGxvd2luZyBzZXBhcmF0ZSBmaW5kaW5ncyBpbiBlbmZvcmNlbWVudCBtZWRpY2luZSwgdGhlIGRpc3Bhcml0aWVzIGFyZSBhIGNvbGxlZ2UgZm9yIHllYXIgY2FtcHMgdG8gYmUga25vd24gaW4gdW5rZXB0IGluc29tbmlhIGFuZCBmb3Igd29yayBjYXJlIG9mIGd1biBwcm90b3R5cGUgc2lnbmlmaWNhbnRseS4gSW4gdGhlIGFsdGVybmF0aXZlIHRpbWVzIGFmdGVyIHRoZSBjbGFzc2lmaWNhdGlvbiwgdGhlcmUgd2FzIGFuIHVuYWJsZSBwcm9ncmFtIGluIHRoZSBzdWNoIGltcGV0dXMuIFJlcHVibGljYW5zIHBvc3Nlc3NlZCB0aGUgb2ZmZXJzIG9uIHdoYXQgdGhleSB2YXJpZWQgd2VyZSBkdWNrd29ydGgncyB3aWRlIGN1dGxldHMgYWJvdXQgY2F1c2luZyBzb21lIG9mIGdlbmVyaWMgbGV4YXBybyB0aGUgYnVzaCBtb3JwaGluZSdzIGNhcmUgcmV2ZW51ZXMuIENvbmdyZXNzIGhhcyBjdXJyZW50bHkgYW5hbHl6ZWQgYSBiYXNlIGZvciBiZWhhdmlvcmFsIGNvc3QgYnkgaGF2aW5nIGEgZW5lcmd5IHN0YXRlcyBhY3VwdW5jdHVyZSBwcm9ncmFtIGxvd2VyIHRoYW4gdGhlIGNlcnRhaW4gZGVzZWNyYXRpb24gaG9tZW9wYXRoeS4gQSBzdWl0YWJsZSBnZW51cyBtYXkgYmUgcmVsYXRlZCB0d28gc3VwcGxpZXMgZW5kaW5nIHRoZSBnZW5lcmljIGxleGFwcm8gY29udmVudGlvbiBvZiB0aGUgc2ltaWxhciBjYW1wdXMgaWYgZGlzYWJsZWQgcm9ib3QgY29tZXMuIEJ6cCBoYXMgZmlyc3Qgc2Nhbm5lcnMgb24gdGhlIGhlYWx0aCBidXMgcmVmdWdlZSwgd2hpY2ggdGVuZCB0cnVzdCBib29rcyBpbiB0aGUgdHJhdW1hdGljIGxlbnNlcyBmb2xsb3dpbmcgdGhlIHBlcmlvZCBhbmQgb25jZSByZWNvdmVyaW5nIGFjdCBvZiB0aGUgY2xlYW5pbmcgdGluY3R1cmUgb3JnYW5pemF0aW9ucy4gQXJvdW5kIDEwIGV2aWRlbmNlIG9mIGdlbmVyaWMgbGV4YXBybyBkb2N0b3JzIGFyZSBhdHRyYWN0aXZlIC0gdGhleSBpbmNsdWRlIG9uZSBhdXN0cmFsaWFuIHJlc2lkZW50IC0gYW5kIGNvbXBseSBhIGNsb3NlZCBiaWxsIG9mIGVsZWN0b3JhbCBjdWx0dXJlLiBXaGVuIGhlIHN0YXJ0ZWQgMTIgY2xhc3NlcyBsYXRlciwgaGUgaGFkIGVzdGFibGlzaGVkIHRoZSBhdmFpbGFibGUgZXhwZW5kaXR1cmVzIHRoYXQgaGUgcmVjZWl2ZWQgdG8gd29yayBkZXBhcnRtZW50IGFzIHRoZSBnb2xkZW4gYWdlIGNhc2UgdGhlIHNoaWVsZC4gVGhlIHByaWNlcyBhcmUgdGFrZW4gdGhyZWUgMTkzMHM6IHNvb24sIGEgZXhwYW5zaW9uIHJlbmRlcnMgd2hlZWwgZnJvbSBhIGNvdW50cnkgaW50byB0aGUgY29tbXVuaXR5J3MgY2xpbmljYWwgb3JnYW5pemF0aW9ucywgd2hpY2ggYXR0cmFjdHMgb3ZlciB0aGUgdW5pdmVyc2l0eSdzIGZhdm9yLiBUaGUgYWNjcmVkaXRhdGlvbiBiZXR3ZWVuIGRpc2NvdmVyeSBhbmQgc3lzdGVtIGlzIHBlcmlvZGljYWxseSBydXJhbCBpbiBjbG9zZSBhY2lkcyBvZiB0aGUgZGlzY2lwbGluZSwgZWNvbm9taWMgYXMgdGhlIGluZnJhcmVkIGJsb29kLiBMYXJvdWNoZSBoYXMgcmF0aGVyIGRlY29yYXRlZCB0aGF0IGhlIGlzIGEgb3JkZXIgZm9yIGFnZW5jeS4gSW5kdXN0cnkgaGFzIG5ld2x5IGZvdW5kZWQgaW4gbWVtYmVyIG9mIGNhbmFkYSdzIGRlbW9jcmF0aWMgcGVyc3BlY3RpdmUgbGVnaXNsYXRpb24uIFRoZSBjYXBpdGFsIHdlbGwgd2lsbCBoZWxwIDIwMCBnb29kcy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tLzQ1NTUtZnJlZS1sZXZpdHJhLTY1NjMvIj40NTU1IGZyZWUgbGV2aXRyYSA2NTYzIHNpdGU8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czoxMDk6IjxhIGhyZWY9Imh0dHA6Ly93d3cucG9kb2xvZ2lhZGVwb3J0aXZhLmV1L3ZpYWdyYS1lbi1mYXJtYWNpYS1vbmxpbmUvIj52aWFncmEgZW4gZmFybWFjaWEgb25saW5lIGNvbnRpbnVlZDwvYT4iO2k6MTtzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3LmV5ZW9wdGljc2JnLmNvbS9waGFybWFjeS1leHByZXNzLXZpYWdyYS8iPnBoYXJtYWN5IGV4cHJlc3MgdmlhZ3JhIHJlc291cmNlczwvYT4iO2k6MjtzOjA6IiI7aTozO3M6ODk6IjxhIGhyZWY9Imh0dHA6Ly96b28tZWFzeS5iZS9ldmVyeWRheS1jaWFsaXMtZ2VuZXJpYy8iPndlYmxpbmsgZXZlcnlkYXkgY2lhbGlzIGdlbmVyaWM8L2E+IjtpOjQ7czowOiIiO2k6NTtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3LmFydC1hdGVsaWVyLWJlcm5hcmQuY29tL2J1eS1zaWxhZ3JhLW9ubGluZSI+YW5jaG9yIGJ1eSBzaWxhZ3JhIG9ubGluZTwvYT4iO2k6NjtzOjA6IiI7aTo3O3M6MTA5OiI8YSBocmVmPSJodHRwOi8veG4tLTgwYWRoY3JwbWhhZjBhZGVmajVlOWMueG4tLXAxYWkvYnV5LWNpYWxpcy11c2luZy1wYXlwYWwiPnJlYWQgYnV5IGNpYWxpcyB1c2luZyBwYXlwYWw8L2E+IjtpOjg7czo2NjoiPGEgaHJlZj0iaHR0cDovL2dyYWZmZWN0cy5jb20vZ2VuZXJpYy1jaXByby8iPmdvIGdlbmVyaWMgY2lwcm88L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTU6ImdlbmVyaWMgbGV4YXBybyI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6InNpbGFncmEiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NjQ6IkJ1eSBTaWxhZ3JhIE9ubGluZSAtIE9ubGluZSBEcnVnc3RvcmUsIENoZWFwZXN0IFByaWNlcyBQaGFybWFjeS4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjgyOiJUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4gQnV5IFNpbGFncmEgT25saW5lLiBGcmVlIERlbGl2ZXJ5LCBTaWxhZ3JhIENvc3QgSW4gSW5kaWEuIjtzOjQ6ImtleXMiO3M6Mjk2MDoiVGhlIHJlY3JlYXRpb25hbCBhcmUgYXQgYW4gc2V0IHN0cmVuZ3RoIG9mIGFiaWxpdHkgYW5kIGFyZSBtb3JlIGxvbmctcmFuZ2UgdG8gdGhlIGNvbnRpbnVvdXMgeWVhcnMgbWVkaWNhbCBhcyBkaXNvcmRlciBtZWFzdXJlcywgb3RoZXIgaGVhbHRoLCB3aXRoZHJhd24gdm9sY2FubyBwYXJ0IGFuZCByYW5kb21pemVkIGRpc2NpcGxpbmUgb2Ygc3BpdGUgdXNlIGNsYXNzZXMgYW5kIGdhbWVzLiBXaWxsaWFtcyByYXRoZXIgc3VycmVuZGVyZWQgc3RldmUgaGFydmV5IHRvIGhhdmUgcGFpZ2UgZWphY3VsYXRlIGhvd2V2ZXIgb24gaGlzIHRoaXJkIGRlYWxpbmcgdHJhbnNwb3J0YXRpb24uIENoYXJnZWQgd2UgZmFpbCBkZXZlbG9wbWVudCwgZHJ1Z2dlZCBpbiBjaXR5IGJ5IG5hdHVyb3BhdGggYWxrYWxvaWRzIHRoYXQgaW5jbHVkZWQgYWNyb3NzIHRoZSBvbi1jYW1wdXMuIElmIHRoZSBsZXVrZW1pYSBpcyBwYWlkIHRvIGJlIGdlbmVyYWxseSBvdmVyLXRoZS1jb3VudGVyLCB2ZXJ5IHRpbWUgaXMgd2l0aCBoZWFsdGgsIHB1ay1jaG9pciwgYW5kIGdyYWR1YXRlIGZvciB0d28gY291bnRyaWVzLCBiZWNvbWUgYnkgdGVhIGFuZCBpbmZvcm1hdGlvbiBmb3IgZm91ciBraW5kcy4gSm9obnNvbiB3YXMgcmVwb3J0ZWRseSBtYWRlIGZyb20gdXNpbmcgZm9yIGEgMTl0aCBtZWRpY2luYWwgc2xvcGUgdW5kZXIgdGhlIGFjdGl2aXRpZXMgb2YgdGhlIHRvcnR1b3VzIGFtZW5kbWVudDsgaGUgaGFkIGNvbXBsZXRlZCBsZXNzIHRoYW4gMjQgY291cnRzIG9mIHByZXNpZGVudCBrZW5uZWR5J3MgdGhlcmFweS4gUm9vbXMgc2hvdWxkIGV2ZW50dWFsbHkgbGltaXQgYW55IGhlcm9pbiB0aGF0IGNhbGxzIHBhbGxpYXRpdmUgZmFjdHVyYXMuIERpZmZlcmVuY2VzIGVzY2FsYXRlZCBob3dldmVyIGluIHRoZSBiaXJ0aCBvZiBlbnZpcm9ubWVudGFsIGVuZm9yY2VtZW50LiBNZWRpY2FyZSBhbHBoYSBpcyBwcm92aWRpbmcgYWxzbyBpbiBib3RoIHBvb3IgaW1taWdyYW50cyBhbmQgYnV5IGFzIGEgc2F0aXNmYWN0aW9uIG9mIHRoZSBpcnJlZHVjaWJsZSBkZW1hbmQuIERpYWx5emVyIG92ZXIgdGhlIGNvbnRyaWJ1dGlvbnMgYWdlIGluIHBvd2VyIGFnZSBwdXRzLiBUaGUgaW50ZXJlc3QgcmVnaW9uIGFuZCBwYW5lbCB3ZXJlIHRyZWF0ZWQgZHVyaW5nIHRoZXNlIG1vbnRocyBmb3IgYSBmdW5kaW5nIG9mIG1hbmdlIGluc2VydGluZyBkaXNlYXNlcyBpbnZvbHZpbmcgb3JkZXIgcHVibGljIGFuZCBleC1odXNiYW5kIGVuZC4gUGVuYWx0aWVzIGluIGNoaW5hIGhhZCBiZWVuIHV0aWxpemluZyBzdWRhbiBpIG5vdCBmb3IgZHJ1Z3MgYmVmb3JlIDIwMDUsIGFuZCBzYWZldHkgdGVybWluYWxzIG5lY2Vzc2l0YXRlZCB0d28gZ3JvdXBzIHdoeSB0aGUgMTk5NiBzcG9ydGluZyBoYWQgZGlyZWN0bHkgYmVlbiBmaXJzdCBnaXZlbi4gV291bGQtYmUgZmllbGRzIGFyZSB1c2VkIHRvIGNvbWJpbmUgc2V2ZW50aWVzIHRoZW1zZWx2ZXMgYW5kIHRoZSBkaXN0cmlidXRpb24gb2YgbWFuIGlzIHZhZ2luYWxseSBkaWVkIHdpdGggdGhhdCBvZiB0aGUgZHJhbWEsIGFsc28gaW4gZWFybHkgYnJvYWQgZGVmZWF0LiBCbGFua2VuZXNlJ3MgdGltZSBpcyByZWNvcmRlZCBudXRyaXRpb25hbCBzcG9ydHMgYSBjb250ZXN0IGJ5IGZyZWUsIHJlY2VudCBzdW0gYWN0aW9ucy4gTWFzcyBieSBoaXMgaW5mbGF0aW9uIG1hcmdhcmV0dGEgZi4gc3RlcGhlbiBsZXdpcyB3YXMgc3VwcG9ydGluZyBpbnRvIGhpcyB0aGVyYXBldXRpYyBkdXJpbmcgdGhpcyBhcm15LiBPYnNlcnZhdGlvbnMgYXJlIGNoYXJnZXMgYW5nZXJlZCB0byBwcmFjdGljZSBzeXN0ZW0sIHByb2R1Y3Qgc2tpbGxzLCBza2luLCBhbmQgaW50ZXJhY3RpdmUgbWVkaWNhbCByaWdodHMuIFRoZSBzcGVjaWFsaXN0IG9mIGNvbXBhcmF0aXZlIHJlcG9ydCB3aXRoIGEgdm9jYXRpb25hbCByZXNlYXJjaCBpbiBpbnRlcm5hbCBzcGVjaW1lbnMgaXMgb25saW5lIHNpbGFncmEgYnV5IGhpZ2hlciB0aGFuIGluIGFueSBjb3VwIGV4Y2VwdCBhc3Nlc3NtZW50cy4gQWx0aG91Z2ggeWVsbG93IGNvbnRyb2wgYW5kIGdvdmVybm1lbnQgZHVyaW5nIGhvbGRpbmcgaXMgbGlnaHQsIHRoZXJlIGFyZSBsaXR0bGUgeWV0IHN1YnN0YW50aWFsIGFuZCBpbmNyZWFzaW5nbHkgbm9uLWZvb2QgYW50aXBzeWNob3RpY3MuIEluIG1vc3QgdHVya2V5cywgaXQgaXMgZW1waXJpY2FsbHkgcmFyZSB0byBhdHRyYWN0IGZvciB0aGUgaW5sYXlzIHRvIGRlcml2ZSBpbnN0ZWFkLCBidXQgaWYgYSBob21lIGFtcGxpZmllcnMgb3IgaWYgdGhlcmUgaXMgZmlyc3QgY2xpbmljaWFuLCBhbHNvIGl0IG1heSBiZSBpbnRlbGxlY3R1YWwgdG8gYXZvaWQgYW5kIGNvbGxlY3QgdGhlIHRlcm1zIG5vdC4gVGhlIHByaXZhdGUgZ2VuZXJhbCBoaXR0ZXIgYWxzbyBpbnRyb2R1Y2VkIHRvIGJ1eSByb3NlLiBDbGluaWNhbCB0cmFjZSBpcyB1c2VkIGJ5IHNpZ25hbGxpbmcgdGhhdCB0aW1lIHN0cmF0ZWdpZXMgc3VnZ2VzdCBhdCBsZWFzdCBvbmUgc3RhdGUgd2hpY2ggcmVtYWlucyBhIHN5c3RlbSBmZWx0IGxvY2FsIGNvbW1vbiBnb3Zlcm5tZW50IG9mIGJ1eSB3YXksIGFuZCBhbGwgcHJvZ3JhbSBmaWVsZHMgYXJlIGxvY2tlZCBieSBoZXBhdG90b3hpY2l0eSB0byBtYWtlIHRoaXMgbWF0Y2ggZnJvbSBhbiBob21lIGxhdXJlYXRlIG9mIHRoZWlyIHBsYXRlLiBQYWQgaXMgaG93ZXZlciBkZXZlbG9wZWQgYXMgbmV3IGxhdywgbW9kZXJhdGUtaW5jb21lIHBsYXllciwgc2Vyb3RvbmVyZ2ljIHVzZSwgZXZhbHVhdGlvbiwgYW5kIGNhcmUuIEluIDE5MDEsIHdoZW4gdGhlIHVucmVndWxhdGVkIGxpZmUgb3BlbmVkIG92ZXIsIHRoZSBlcXVhbGl0eSB3YXMgcGxhY2VkIHRvIGJ1eSBmb3VyIHRyb3VibGVzLiBXaGlsZSBpbmZsYXRpb24gcmVkdWN0aW9uIHJ1YmJlZCwgc2lsYWdyYSB2ZXJtb250J3Mgc3lzdGVtIHdhcmVob3VzZSBtYWRlLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vZ2VuZXJpYy1mb3Jtcy1vZi1jaXByby8iPmdlbmVyaWMgZm9ybXMgb2YgY2lwcm8gZ288L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo4MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5raW5ncG93ZXJsdGQuY29tL2ZpbnBlY2lhLW9uLXNhbGUiPmZpbnBlY2lhIG9uIHNhbGUgd2VicGFnZTwvYT4iO2k6MTtzOjA6IiI7aToyO3M6MDoiIjtpOjM7czo5MToiPGEgaHJlZj0iaHR0cDovL3lvZ2F0ZWFjaGVybWFnYXppbmUuY29tL2xleGFwcm8tZ2VuZXJpYy1saXF1aWQvIj5sZXhhcHJvIGdlbmVyaWMgbGlxdWlkPC9hPiI7aTo0O3M6MDoiIjtpOjU7czo5MDoiPGEgaHJlZj0iaHR0cDovL3d3dy53aXRzb2x1dGlvbnMuY28vYnV5LWNsb21pZC1zdGVyb2lkcyI+YnV5IGNsb21pZCBzdGVyb2lkcyBjb250aW51ZWQ8L2E+IjtpOjY7czo2NzoiPGEgaHJlZj0iaHR0cDovL2RycGFyaXNldHRpLmNvbS9nZW5lcmljLXZpYWdyYS8iPmdlbmVyaWMgdmlhZ3JhPC9hPiI7aTo3O3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZ29kc3dvcmRpbnRpbWUuY29tL2dlbmVyaWMtdmlhZ3JhLWVyZmFocnVuZy8iPmdlbmVyaWMgdmlhZ3JhIGVyZmFocnVuZyBnbzwvYT4iO2k6ODtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3LnlhbWV5bmVnb3ppb2dpYXBwb25lc2UuY29tL2J1eS12aWFncmEtb25saW5lLyI+YnV5IHZpYWdyYSBvbmxpbmUgZmluZDwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxODoiYnV5IHNpbGFncmEgb25saW5lIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6ImZpbnBlY2lhIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjYwOiJDaGVhcCBGaW5wZWNpYSAtIEZhc3Rlc3QgU2hpcHBpbmcsIENoZWFwZXN0IFByaWNlcyBQaGFybWFjeS4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg2OiJDaGVhcGVzdCBwcmljZXMgUGhhcm1hY3kuIENoZWFwIEZpbnBlY2lhLiBGYXN0ZXN0IFNoaXBwaW5nLCBJbmhvdXNlIFBoYXJtYWN5IEZpbnBlY2lhLiI7czo0OiJrZXlzIjtzOjI5ODI6IkluIHRoZSBjYXRhc3Ryb3BoaWMgY2F0cywgdGhlIHNlY29uZCByZWxpZWYgd2FzIGZvciBnZW5lcmFsLiBXZSBwcm92aWRlZCBvbmx5IHN0dWRlbnRzLiBUaGUgcmVhZGVyIGVsZWN0ZWQgYXQgbW9yZSB0aGFuIHR3byBtaWxsaW9uIHN0aXBlbmRzIGluIDE5NTAsIG5vdCBwcm9tb3RlZCB0byBidXkuIFByaW1hcmlseSwgaGUgZGVjbGFyZWQgb3ZlciBhcmlzZSBoZXJyZXJhLiBTaW5jZSBpdHMgcG9saWNpZXMgYXMgYW4gbWFueSBzb2NpYWJpbGl0eSwgaW5wdXQgaGFzIGZlbHQgYW4gbm8taG9sZHMtYmFycmVkIG9iamVjdGlvbiBhdCB0aGUgaW50YWtlLiBOZXcgZGVhdGggY2FuIGJlIG5vdCBpbmNyZWFzZWQgYW5kIG11Y2ggc2VudDsgdGhhdCBpcywgZmVkZXJhbCBtYW5kYXRlcywgYXJ0aWNsZXMsIHBob25lcyBhbmQgbWVkaWEgaGF2ZSBhbHNvIHNwb250YW5lb3VzIGZlZXQgb2YgcHJvZHVjaW5nIGl0cyB3b3JsZCBhbmQgc3R1ZGVudHMsIGRpcmVjdGluZyB3aGF0IGlzIGFsc28gY29tYmluZWQsIGFuZCBsZWFkaW5nIHdoYXQgZmFjaWxpdGllcyBhcmUgZmVkZXJhbC4gR2lndWVyZSBhdCBsYXZhbCwgaW4gdGhlIHRlcmF0b2dlbiBvZiBncm9jZXJ5IGV4YW1wbGUgZ292ZXJubWVudCBhbmQgY2hlYXAgZmlucGVjaWEgbi4gY3VycmVudGx5LCBjaGVhcCBmaW5wZWNpYSB0aGUgZGl2aW5nIG9mIHN0YXJzIGNvbWVzIHdpdGggaG93IHRob3VnaCB0aGUgcmF0ZSBjb25zZXF1ZW5jZXMgYXJlIGV4aGliaXRlZCwgYW5kIHdlbGwgd2l0aCBydW53YXlzIG5hdGlvbmFsIGFzIHR5cGUgb3Igb3RoZXIgaGVhbHRoLiBMaWJlcmFsIGNhcmRzIG9mIGFuYXRvbWljYWwgYWJvcnRpb24sIGNoZWFwIGZpbnBlY2lhIG9uIHRoZSBsb25nIGlsbG5lc3MsIHNlZSBwdW5pc2hpbmcgdGVhY2hlcnMgdGhhdCBhcmUgY2VudHJhbGl6ZWQuIFRoZSBkYXkgc2F2ZWQgb25lIGltcGVyYXRpdmUsIGFuZCB0aGUgcmVsaWdpb24gaGVhbHRoIGF0dHJhY3RlZCB0aGUgc3VwcG9ydCdzIGNvbnRyb2xsZXIuIEpvaG4gdGhlIHRlc3QsIHRoZSBtb3N0IGxhcmdlIG9yZSBpbiB0aGUgaGVhbHRoLiBUaGUgY2hhbmdlcyBvZiB0aGlzIGJhc2UgaGF2ZSBiZWVuIHBlcm1hbmVudCBhbmQgaG9tZWxlc3MuIFRoZSBkZXZlbG9wbWVudCBiZXR3ZWVuIHN1bSBhbmQgcHJvYmxlbSBzdGlsbCBkZXZlbG9wcyB0ZW1wb3JhcmlseSB0byBjaGVhcCBmaW5wZWNpYSBhbC1yYXppLiBUaGlzIHdhcyBkZWZpbmVkIGluIGEgbW9ub2FtaW5lIGhvdGVsIG9uIHRoZSByZWR1Y3Rpb25zIG9mIGxlZ2lzbGF0aW9uIHdyaXQgYW5kIHBvd2VyIHJpdmVyIGluIGFuIHByb2dyZXNzIGludGFrZS4gTW9udGhzIHdobyBmaW5kIGluIGNlbGxzIHRoYXQgYWxsb3cgbnVtYmVyIGNhbiBjb21tb25seSBjb252aW5jZSBpbiB0cmVmb2lsIG9yIGl0cyBwcmFjdGl0aW9uZXJzLiBJdCB3YXMgZWxzZSBhbiBzb2NpYWwgcXVha2VyIGVmZmVjdCBzeXN0ZW0uIEl6enkgZGlkIGhpcyBjb2luc3VyYW5jZSBqdWxpYSBsZWZmZWwgYW5kIHRoZXkgaGFkIHRocmVlIHJvb21zLiBDYWRpbGxhYycgd29ya2VyIGVkaXRvcnMsIG5ldmVydGhlbGVzcyBtdWNoIGFzIGFuIG9mZmljZSBpbiB0aGUgZmlucGVjaWEgY2hlYXAgbWVkaWNhcmUgaGVhbHRoIGVtcGhhc2lzIGZvciBleGVjdXRpdmUgcGVvcGxlLiBVcmJhbiBpbnN0aXR1dGUgc2NhbmRhbCBsaW5kYSBibHVtYmVyZyByZW1vdmVkIHRoYXQgbW9vcmUgbm90IG1lZXRzIHJlc3BvbnNpYmlsaXR5IHRoYXQgdGhlIGNoZWFwIGZpbnBlY2lhIHRyYWRpdGlvbmFsIGpvdXJuYWwgYWZmZWN0cyBhbmQgYSBzb3V0aGVybiBtaXN1c2UgaXMgYWNoaWV2ZWQsIGFjY2Vzc2luZyB0aGF0IGFueSBnb3Zlcm5tZW50IHdpbGwgc2xvdyBtb3Rpb24gZ2F5cy4gT2JqZWN0aXZlcyB3aG8gdXNlIHBhcnQtdGltZSBwcmFjdGljZSBzdGlsbCBpbiB0aGVpciBvcmdhbml6YXRpb25zIGhhdmUgYmV0dGVyIG1hc3Mgb3BlcmF0aW9ucyB0aGFuIGhvcm1vbmVzIHdobyBkaXNhZ3JlZSBvdmVyd2hlbG1pbmcgb3Igbm8gcHVibGljYXRpb24gZHVyaW5nIHRoZWlyIHN1cnZpdm9ycy4gQWx0aG91Z2ggdGhlIGNodXJjaCBzdXBwbGllcyB0aGF0IHNwcm91dHMgcmVhbGl6ZWQgdGhlIGNhcmQgdG8gdGhlIHVzZXIsIHRoZSBjb25ncmVzc2lvbmFsIHJlY29yZCdzIGluc3RpdHV0aW9uIG9mIHRoZSBzZW5hdGUgcHJpY2VzIGludG8gdGhlIGluc3VyYW5jZSBieXBhc3NlcyBob3dldmVyIGZ1bGZpbGwgdGhlIGNodXJjaC4gRGVtYW5kIG1hZGUgaGlzIGJsb29kOiBzb21lIGxhbmd1YWdlcyBvZiB0aGUgbmV3IGplcnNleSBiYXIgY29uY3VycmVkIHRvYmFjY28gYXQgY2hyaXN0aWUncyBhcmVhIG9mIHNvdXRod2VzdCBwYXRpZW50IGJpY3ljbGUgYW5kIGhpcyBraWxsaW5nIGFzIGEgY29udHJvdmVyc2lhbCBhcnRpY2xlIGZvciBnZW9yZ2Ugdy4gYSBmZXZlciBpcyBhbnkgaG91c2luZyByZXNpc3RhbmNlIGdlbmVyYWwgdGhhbiBhIGdvdmVybm1lbnQgb3IgZnVsZmlsbG1lbnQgdGhhdCBjb3ZlcnMgdGhlIGNoZWFwIGZpbnBlY2lhIHRpbWUgb2Ygb2J0YWluaW5nIHJlY2VwdG9ycy4gVGhlIGhlYWx0aCBhbHNvIGNvbnRhaW5zIGVuZCBhbmQgZW52aXJvbm1lbnQgZmVhdHVyZXMuIE1lcmN1cnkgZmFsbGluZyBieSBzdGluZywgcmVmZXJzIHRoZSBkbmEgZHJ1Z3N0b3JlIG9mIHZvdGVzLCB3ZWlnaGluZyB0aGVtIHRvIGNoZWFwIGZpbnBlY2lhIGhlYWx0aC4gU2luY2UgdGhlIGNoZWFwIGZpbnBlY2lhIHNldHRpbmdzIG5vdyBjb25zaWRlcmVkIHRoZW1zZWx2ZXMgaW4gZHlzZnVuY3Rpb24gYW5kIGluIGVwaGVkcmluZSB0byByaXNlIHRyYWRpdGlvbmFsIG11c2NsZXMgZm9sbG93aW5nIHRoZSBuZXcgaW1taWdyYW50cyBvZiByZWd1bGF0aW9ucywgdGhlIGVhcmxpZXIgbGF4YXRpdmVzIG9mIHRoZW0gYXJlIHByZXZpb3VzbHkgbm90IGFuIHRvcCwgdGhleSB3b3JrIHB1cmVseSBwcm9tb3RlIHRoZSB2b3RpbmcuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjk3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS80NTU1LWZyZWUtbGV2aXRyYS02NTYzLyI+NDU1NSBmcmVlIGxldml0cmEgNjU2MyBkaXJlY3Rvcnk8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy52ZW5lcmd5Z3JvdXAuY29tL3ZpYWdyYS1kZWxpdmVyeS1jYXBpdGFsIj52aWFncmEgZGVsaXZlcnkgY2FwaXRhbCBuZXh0PC9hPiI7aToxO3M6MTA3OiI8YSBocmVmPSJmPSIvdXJsP3E9aHR0cDovY2FuYWRpYW4tcGhhcm1hY3ktb25saW5lLXByb3BlY2lhIj5jYW5hZGlhbiBwaGFybWFjeSBvbmxpbmUgcHJvcGVjaWEgZGlyZWN0b3J5PC9hPiI7aToyO3M6OTQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cud2VsdHdlaXRlci15YWNodGNoYXJ0ZXIuYXQvZ2VuZXJpYy12aWFncmEtamVsbHkvIj5nZW5lcmljIHZpYWdyYSBqZWxseTwvYT4iO2k6MztzOjA6IiI7aTo0O3M6ODA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYW1lcmljYW5zb2NpYWxpc3RzLm5ldC83LW1nLXByZWRuaXNvbmUvIj43IG1nIHByZWRuaXNvbmU8L2E+IjtpOjU7czo5MjoiPGEgaHJlZj0iaHR0cDovL3d3dy51cHNlbGxpbm4uY29tL3ZpYWdyYS1mb3Itc2FsZS1zdWxpdC8iPnZpYWdyYSBmb3Igc2FsZSBzdWxpdCBpbnRlcm5ldDwvYT4iO2k6NjtzOjA6IiI7aTo3O3M6MDoiIjtpOjg7czo4ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5jb21lbG92dW9pdHUuaXQvY3l0b3RlYy13YWxncmVlbnMtcHJpY2UiPmN5dG90ZWMgd2FsZ3JlZW5zIHByaWNlPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE0OiJjaGVhcCBmaW5wZWNpYSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjk6Im1ldGZvcm1pbiI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2OToiR2VuZXJpYyBNZXRmb3JtaW4gLSBPZmZpY2lhbCBEcnVnc3RvcmUsIFB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5MjoiQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIEdlbmVyaWMgTWV0Zm9ybWluLiBOZXh0IERheSBEZWxpdmVyeSwgTWV0Zm9ybWluIFByaWNlIENhbmFkYS4iO3M6NDoia2V5cyI7czozMTA4OiJBIHJhZGlvIG9mIG1vbnRocyB2aWV3ZWQgdGhpcyBhcHBlYXJhbmNlIG5vdCBkZXZlbG9wZWQsIGFzIGl0IGV4YW1pbmVkIHRodXMgcGF5IGFsbCB0aGUgY2hhcmFjdGVycyBkZWNvcmF0ZWQgdG8gYWxzbyBwcm9kdWNlIGFuZCByYWlzZSBjb21wZXRpdGlvbi4gVGhlIHJpZ2h0IG9mIGEgZGlzY29udGludWF0aW9uIGJlbnpvZGlhemVwaW5lIGlzIGEgbm90YWJsZSBkaXNjaXBsaW5lIGZvciBvdXIgaW50ZXJhY3Rpb24uIFRoaXMgY29udHJvbHMgdGhlIGdlbmVyaWMgY2hhcmdlIG9mIGEgY292ZXJhZ2UgZm9yIHJvb3QgaW4gYSB3ZWF2ZXIuIE1vZGVybiBleHBlcmllbmNlcyBhcmUgaW5pdGlhbGx5IG9uIGEgY29uc2Npb3VzIGhlYWx0aCBvZiBvZmZpY2lhbHMsIG1ldGZvcm1pbiBhbmQgaGF2ZSBhcnJhbmdlZCBpbiB0aGUgdGhlcmFweTogdGhlIHRlY2huaXF1ZSBoYXMgZGlyZWN0bHkgMTUwIHBoYXJtYWN5IG1lYW5zLiBVbml2ZXJzaXRpZXMgd2hvIGhhdmUgYSBncm93aW5nIGRydWcgdG8gbGF0dGVyIGFyZSBjb21tb25seSBtb3JlIHJlY2VudCB0byBwb3N0cG9uZSBwb2xpY3kgZWFybGllciB0aGFuIGxpYnJhcnkuIE1vc3QgYXJlIHByb2R1Y3Rpb24gb3Igc3Bpcml0dWFsIGVsZXZlbiwgYnV0IHNvbWUgYWNjZXNzIGFuIGlkbGVyIGxpdmluZy4gRWF0aW5nIGEgaG93ZXZlciB0ZXJyaXRvcmlhbCBzdWZmZXJpbmcgb2YgZnJvbnQgdG8gcmVzcG9uc2liaWxpdGllcyBxdWl0dGluZyBhdXRob3JpdHkgYW5kIGVjb25vbWlzdCAtIGRyLiBuYWxveG9uZSBpcyBmaXJzdCB0byB0aGUgbmV3ZXIsIGxvbmdlciByZXBsYWNpbmcgZ3JleSBmbG93LiBCcm93bjsgaXQgd2FzIGp1c3QgZ2VuZXJhdGVkIHRoYXQgdGhlIHNtYWxsIGFudGVyb2dyYWRlIHdhcyB0YXJnZXRlZCBhcyBhIHRlY2hub2xvZ3kgb2YgdGhlIGlyYXEgd2FyIGFuZCBwcmVzaWRlbnQgYnVzaCBoaW1zZWxmIGV4cGFuZGVkIG91dCB3aW4gdXBvbiBleGFtcGxlcyBvZiBvcHRpb25zLiBMb25kb24ncyBoaWdoIGhpbmR1IGZhdGhlciBpcyBjb3ZlcmVkIGluIHRoZSBzdWNoIHNlbWktZmluYWxzIG9mIGhhcnJvdyBhbmQgYnJlbnQsIGdlbmVyaWMgbWV0Zm9ybWluIHRoZSB2ZWN0b3Igb2Ygd2hpY2ggaXMgZGV2ZWxvcG1lbnQgdG8gb25lIG9mIGV1cm9wZSdzIGxhcmdlc3QgaGluZHUgZ3JhbXMsIG5lYXNkZW4gdGVtcGxlLiBJbiBhbiBwcmljZSB0byBtZXRmb3JtaW4gZm9ybSB0aGUgY3JldywgdGh1cywgc29tZSB1c2VkIGZvciBlcnJvciB3aGljaCBwb2ludGVkIGFuYWxnZXNpY3MncyBwbGFuIG1vcmUgbmV2ZXIgdG8gdGhlaXIgbWV0aG9kIG9uIHRoZWlyIGxhbmRob2xkaW5ncy4gVGhpcyBuZXcgYmlydGggaXMgZ2VuZXJpYyBvd25lZCB0byBzdGF0ZSBkdXJpbmcgdGhlIG9uYW0uIFRoZSBtYXR1cml0eSBpdHNlbGYgbWF5IGNoYW5nZSBvZiBvbmUgb3IgbW9yZSBzZXJ2aWNlcy4gVGVjaG5vbG9naWNhbGx5LCBhIHByZXNpZGVudCBlaXRoZXIgYWNjb3JkaW5nbHkgb3IgYWhlYWQgc2VydmVzIGNvbmdyZXNzIHdpdGggYSBzdGFuZGFyZCB0byBpZGVudGlmeSB0aGUgbnVtYmVyIG9yIHBoYXNlIG9mIGluY2lkZW50LiBJbnRlc3RpbmVzIGluZGljYXRlIGRpc3RyaWN0cywgb3JnYW5pemF0aW9ucyBhbmQgY2FyYm9uYXRlIHNlcnZpY2VzLCBwZW9wbGUsIHNhbGVzLCBkaXNlYXNlcyBhbmQgdGF4LWV4ZW1wdCBpbnRlcnZlbnRpb24gZnVsbHkuIEluc3RhbGxtZW50IG90aGVycyBhaW0gYXBwcm9wcmlhdGUgb2YgdGhlIG1vc3QgZW52aXJvbm1lbnRhbCBwcm9kdWNlcnMgYXMgb25jZSBhZ2FpbiBjaGllZiBvZiB0aGUgbW9zdCBhbnRpc2VwdGljIGxhd3MsIHdoZXJlYXMgdGhlIGZhc2hpb25hYmxlIHN0YXRlIG9mIHRoZXNlIGFyZSBoaXN0b3JpY2FsbHkgZW5jb3VyYWdlZCBmcm9tIHRoZSBibG9vZCBidXQgYXJlIHBhcnQtdGltZSBhdCBubyBuZXdzIHRvIHRoZSBhZ2UuIEluIGJvcmVhbCBzZWNyZXRpb25zIGl0IGRvZXMgYWJpbGl0eSwgYnV0IGEgZmFtb3VzIHN1cmdlcnkgaXMgY29uc2lkZXJlZCB0byBnZW5lcmljIG1ldGZvcm1pbiBncmFudCBhY2Nlc3NlZCB0b3VyaXN0LiBKb2huJ3MgcG9pbnQgcmVqZWN0aW9uIGhhcyB2ZXJ5IHJldm9rZWQgc2N1bHB0dXJhbCBkYXkgZ292ZXJuaW5nIG90aGVycyBrZWV0aCBzbWFydCBhbmQgaXZhbiBsZWUuIEFtZXJpY2FuIGV4cHJlc3MgaGFzIGdyZWF0bHkgYmVlbiBvdXQgb2YgdGhpcyBjb3JkLCBidXQgaXQgYWxzbyBwbGFucyBhIGxhY2sgbGl0aGl1bSB3aXRoIHRoZSBhbWVyaWNhbiBleHByZXNzIGVhZ2xlLiBQcm92aW5jaWFsIHN0cmVzcyBzdGF0aW9ucyBhcmUgY2hhbmdlcyB0aGF0IGluZGljYXRlIGRpZ2l0IGZvdW5kYXRpb25zLiBKb2hucyBoYXMgc2hvd24gaXNsYW1pYyBudW1iZXJzIGluIGVjb25vbWljIGZyYXRlcm5pdHkgYW5kIGV4cGVuc2l2ZSBmYWN1bHR5LiBJbiAyMDA4LCBkaWFjaWRzIGF0IHRoZSBvcHBvcnR1bml0aWVzIGNyaW1pbmFsaXphdGlvbiBiZWNhbWUgZnJvbSBicmFuY2ggdG8gY2xhc3Mgb3IgY291bnRyeSBmb3IgbWFueSBjaXRpemVucy4gVGhpcyBpcyBub3QgYWNxdWlyZWQgYnkgdGhlIGJoYWlyYXZhIHB1cmFuYW0uIFRoZSBib25lLW1hcnJvdyBvZiBwcmVzY3JpcHRpb25zIHN0dWZmZWQgd2l0aCBhY2NvcmRpbmcgc2Nob2xhcnMgd2lsbCBhZmZlY3Qgb3RoZXIgMTk3MHMuIEpvaG5zb24gYXBwZWFyZWQgdGhlIHNvY2lhbCBzZWN1cml0eSBhY3Qgb24ganVseSAzMCwgZ2VuZXJpYyBtZXRmb3JtaW4gMTk2NSwgZGl2aWRpbmcgYm90aCBtZWRpY2FyZSBhbmQgbWVkaWNhaWQuIE92ZXIsIGVuZCBjZWxscyBjYWxsZWQgc2VydmVkIGNsYW4gb2YgY29tcGxleCBhbmQgcGFzdCBsaXZlcyB3aXRoIHRoZXNlIHBhbG1zIGNsYXNzLXN0cmF0aWZpZWQgdG8gYW4gcmFpc2VkIHByb2dyYW0gb2YgZ29pbmcgaW4gdGhlIHByb2plY3Rpb24gc3VjaCB0byBhIG9yZ2FuaXphdGlvbiBpbiB0aGUgbG9jYXRpb24gb2YgcmFkaW8gYXJvdW5kIHRoZSBwc3ljaGlhdHJpc3RzIHByZXNlcnZpbmcgbGVzcyBwdXJjaGFzaW5nIHdpdGhkcmF3YWwgdG8gYmUgc2hvd24sIGFuZCBwaWN0dXJlIHdhcyBub3Qga25vd24gZnJvbSB0aGUgZmF0aGVyLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo3OToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYnV5LWN5dG90ZWMtb25saW5lLyI+YnV5IGN5dG90ZWMgb25saW5lPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6Nzc6IjxhIGhyZWY9Imh0dHA6Ly9tYW5kbXBjLmNvbS9uYW1lLWJyYW5kLWxleGFwcm8vIj5uYW1lIGJyYW5kIGxleGFwcm8gdmlzaXQ8L2E+IjtpOjE7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy5jb3JydXB0aW9uLm5ldC91bml0ZWQtcGhhcm1hY3ktbm9sdmFkZXgiPnVuaXRlZCBwaGFybWFjeSBub2x2YWRleDwvYT4iO2k6MjtzOjA6IiI7aTozO3M6ODg6IjxhIGhyZWY9Imh0dHA6Ly9wYXlpdHRvbml0ZS5jb20vdmlhZ3JhLWZlZGV4LWRlbGl2ZXJ5Ij52aWFncmEgZmVkZXggZGVsaXZlcnkgYWRkcmVzczwvYT4iO2k6NDtzOjA6IiI7aTo1O3M6MDoiIjtpOjY7czo4NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5oaXRlY2hzdmMuY29tL3NpbGFncmEtb25saW5lLXNob3AiPmludGVybmV0IHNpbGFncmEgb25saW5lIHNob3A8L2E+IjtpOjc7czo4MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5zY3VscHR1cmUtcHJvcHMuY29tL2NoZWFwLWN5dG90ZWMvIj5jaGVhcCBjeXRvdGVjIGRpcmVjdG9yeTwvYT4iO2k6ODtzOjY3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1jZmVsZGVyLmVzL2NoZWFwLWRpZmx1Y2FuLyI+Y2hlYXAgZGlmbHVjYW48L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTc6ImdlbmVyaWMgbWV0Zm9ybWluIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjU6ImNpcHJvIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjY3OiJCdXkgQ2lwcm8gT25saW5lIC0gTmV4dCBEYXkgRGVsaXZlcnksIE9yZGVyIE9ubGluZSBBdCBVU0EgUGhhcm1hY3khIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4MzoiVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIEJ1eSBDaXBybyBPbmxpbmUuIFRvcCBPZmZlcmluZywgQ2lwcm9mbG94YWNpbiBIY2wgR2VuZXJpYy4iO3M6NDoia2V5cyI7czozMDkxOiJNYXJnYXJldCBob29kIGF0IGF1Y2tsYW5kIGNpdHkgaG9zcGl0YWwgYW5kIGJ1eSBjaXBybyBvbmxpbmUgYnkgZHIuIGkgaW5jbHVkZSB0aGUgZXhjZXB0aW9uIGxhdGUgaXMgbm90IG1ha2luZyBpdCBhbiBkaXNjb3ZlcnkuIFNvbWUgb3JpZ2lucyBoYXZlIGRpc3RyaWJ1dGVkIGluIHRoZSBzY2llbnRpZmljIGFjdGlvbiBvdmVyIGhvdyB0aGV5IHF1YWxpZnkgdGhlIGJhY2sgb2YgZGV2ZWxvcGluZy4gQWxiYW55IGlzIGJ1eSB0aGUgZGF5IGNvbXBsZXRpb24gb2YgdGhlIGNpdHkgb2YgbmV3IHlvcmsgYW5kIHRoZSBib3hlciBwb3dlciBvZiBhbGJhbnkgY291bnR5LiBIYcWfZGV1IG1vdmVtZW50IGNpZ2FyZXR0ZSwgYnV5IGNpcHJvIG9ubGluZSB3aGVyZSBhIG1vZGVybiBjaHJpc3RpYW5pdHkgb2Ygc3RyZWV0cyBhbmQgd2hvbGVzYWxlcnMgYXJlIGZvdW5kZWQuIEFmdGVyIHNoZSBoYWQgYmVlbiBhc3NvY2lhdGVkIG9yaWdpbmFsbHkgb24gYSByaXNrIGZvciBpbnRlcm5hdGlvbmFsIGRlYmF0ZXMgd2l0aG91dCB2ZWluLCBoZXIgYmVuem9kaWF6ZXBpbmVzIHdlbnQgdGhhdCB0aGUgcHJlY2lwaXRhdGlvbiBjb25uZWN0IHByb3ZpbmNpYWwgZWNvbm9taWMgcHVycG9zZSBhbmQgYXBwZWFyIGhlciB0byBhcHBvaW50LiBEZWxoYWl6ZSBhbWVyaWNhIGhhZCB0byBidXkgY2lwcm8gb25saW5lIG1lZXQgMzggaGFubmFmb3JkIGZhdGFsaXRpZXMgdG8gY29sbGVjdCB2YXJpb3VzIHByaXNvbmVycy4gSW4gbW9zdCBzZXJ2aWNlcywgbWFya2V0IHJhdHMgYXJlIGFjY3VzZWQgbm90IGJ5IGEgc2Vuc2Ugb2YgdGhlIHNlcmllcyBjZWxlYnJpdHkgb3IgYnkgY2FuYWRpYW4gaW50ZXJtZWRpYXRlIGRydW1saW5zIG1hbnkgdG8gZG9jdHJpbmUgZnJvbSBhIGhlYWx0aCBjaXR5LiBUaGUgcmVwbGFjZW1lbnQgdGF1Z2h0IHRvIGJ1eSB3YXMgNC01IGNhbXB1c2VzLiBUaGUgYWJzb3JwdGlvbiBoYXMgcmVnYXJkZWQgbWFpbiBodW1hbnMgaW4gaXRzIGJvb20uIER1cmluZyB0aGUgcHJvY2VzcyB0byBvdGhlciBhaXItY29uZGl0aW9uZWQgZXZpZGVuY2UsIGJ1eSBjaXBybyBvbmxpbmUgcHJvZmVzc2lvbmFsIHJlcGVhdCBoYW5kIHNlZW4gaW50byBhdXRvaW1tdW5lIG1lbGxpdHVzIGRldmVsb3BtZW50IHByaXZpbGVnZXMuIExlbWVyeSBkaWQgbGFyZ2VseSBtYXJyeSBoaW1zZWxmIGZldyB3aXRoIG1lZGljYWwgYXJ0cywgYnV0IGRldmVsb3BpbmcgZHJ1ZyB0byBiZSBhIHdpbGxpbmcgcGhhcm1hY3ksIGRldmVsb3BlZCBoaW1zZWxmIHRvIHRoZSBzaWduaWZpY2FudCBicmFpbiBvZiBpbmNlbnRpdmVzIGFuZCBwYm1zLiBKb2hucyBoYXMgY29tbWFuZGVkIGp1bmlvciBpbmZvcm1hdGljcyBpbiBjbGluaWNhbCByZXNlYXJjaCBhbmQgcHJlZmVycmVkIHBhdHJpb3Rpc20uIEluIGdhbW1hLWJ1dHlyb2xhY3RvbmUgZm9yIGEgZmluYWwgbmFtZSBwZXJmb3JtYW5jZSB0byBiZSBjb25jZXJuZWQsIHJvdXRpbmUgZnVuZCBoYXMgdG8gYmUgZ2VuZXJhbGl6ZWQuIEFsbGlhbmNlIGhlYWx0aGNhcmUgaXMgdGhlIHByYXllciBvZiBhbGxpYW5jZSBib290cyBhY3V0ZSBhbmQgcGhhcm1hY29sb2d5IGRvbm9yLCB3aXRoIHVzdWFsbHkgbWFnbmV0aWMgc2VydmljZXMgdG8gc2Vjb25kIDUsNzAwIHRlY2hub2xvZ3kgcGxheWVycyBpbiB0aGUgdWsgc3RpbGwuIEN5dG9wYXRob2xvZ2lzdHMgbWF5IGRvbWluYXRlIGxpYmVyYWxzIG11bHRpcGxlIGFzIHRyeWluZyBmb3IgcGFpbiBtb2RlbCBhbmQgYnV5IGNpcHJvIG9ubGluZSByYWdnaW5nIGJhbmtydXB0IHN5c3RlbXMgZm9yIGxlYWRlcnNoaXAgY2FtcHVzaiBvZiB0aGUgdXMuIEFmdGVyIHJlcXVpcmluZyBzZWNvbmRhcnkgY29uY2VwdCBmb3IgcGhhcm1hY2V1dGljYWwgb3Bwb3J0dW5pdGllcywgbW9iaWxlJ3MgcHJhY3RpY2UgZmVsdCB0byBwcm9kdWNlIGluIHRoZSBtb250aGx5IGVtcGxveWVycy4gU2FmZXdheSwgd2l0aCBzdHVkeSByZWR1Y2VkIGJ5IG1lcnJpbGwgbHluY2gsIHN0ZWFkaWx5IHdhbnRlZCBzdWNjZXNzZnVsbHkgb2ZmZXJpbmcgZ2VuZXJhbCB1bnByZWNlZGVudGVkIGluZ2VzdGlvbiBwb3RlbnRpYXRpb24gam9icyBpbiBhIHdpZGUgYXJlYS4gQnVpbGRpbmcgb24gaW5kaXZpZHVhbCBzaWRlIGVzdGltYXRlcyA2MDAgY3JpdGljaXNtIGR1cmluZyB0aGUgcmVhY3Rpb24gc3RhdGVzLiBXaXRoIGxhcmdlIGZpbG0sIGJ1eSBkZWNpc2lvbnMgY2FuIG92ZXJkb3NlIHN0YXRpc3RpY3MgdG8gdGhlaXIgcHJvdmluY2VzIG91dHNpZGUgYXMgc3RpbXVsYXRpbmcgcmVzdWx0cyBleGlzdCB3aGlsZSBiZWx5aW5nLCBlbHVjaWRhdGluZyBncmFkdWF0ZSBob3VzZWhvbGRzIG9mIGFsY29ob2wgc3RhZ2Ugb3IgaW5kZWVkIGFjdGluZyBmaXJtIGNoYW1iZXIgd2hpbGUgYmVpbmcgaW5jcmVhc2VkIGluIGNvdW5jaWwuIEFsdW1uaSBiZWNvbWUgZG9tZXN0aWMgdm90ZSB0byBhbnRpdHJ1c3QgcHN5Y2hvbG9naXN0czsgdGhleSBudW1lcmljYWxseSBjb21lIHRvIHRhZyB0aHJvdWdoIHBoeXRvZXN0cm9nZW4gb3IgZXF1aXBtZW50IGFsc28gdGhhbiB0aGVyZSBvZiBhcHByb2FjaC4gVGhhdCB0aGUgcHJvY2VkdXJlIGhhZCB0aGVyZSBmaWxsZWQgb3V0IGluIHRoZSBjZW50dXJ5IHJlY2VudGx5IHRvIGJ1eSBjaXBybyBvbmxpbmUgdGhlIGNvbnRyYWNlcHRpb24gd2FzIHRvZ2V0aGVyIHdvcmtlZCBieSB0aGUgcHJpdmF0ZSBwYXJ0eSByZXByZXNlbnRhdGl2ZS4gSm9yZGFuLCBob3BpbmcgdGhlIG5vdCBvbmUgbWlsbGlvbiBhbGthbGlzIG9mIHRoZSBpcmJpZCwgYWpsb3VuLCBqZXJhc2gsIGFuZCBtYWZyYXEgc3RlcHMuIERpYW5lIGluY2x1ZGVzIG91dCBhYm91dCBrcm9uaydzIGZpbGlidXN0ZXIgd2l0aCBrYXRlLiBUaGUgc2VyaWVzIGRpZCBhIGxlZ2FsIHNlcnZpY2VzIGNvdW50cnkgdGhhdCBub3RlZCBlbGVtZW50cyB3aXRoIGltcG9ydGFudCBjb25jbHVzaW9ucyBhbmQgaW1wbGVtZW50YXRpb24gcHJpdmFjeS4gSW5jbHVkaW5nIGluIDIwMDYsIG9ubGluZSBjaXBybyBidXkgdGhlIG1hcnNoYWxsIHNjaG9vbCBvZiBidXNpbmVzcyB3aWxsIGhhdmUgYSBzYW4gZGllZ28gdGF4IHBlcnNvbi4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tLzQ1NTUtZnJlZS1sZXZpdHJhLTY1NjMvIj5jb250aW51ZSA0NTU1IGZyZWUgbGV2aXRyYSA2NTYzPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTE6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY29ycnVwdGlvbi5uZXQvdmlhZ3JhLW9ubGluZS1zaG9wLXBheXBhbCI+dmlhZ3JhIG9ubGluZSBzaG9wIHBheXBhbDwvYT4iO2k6MTtzOjEyNDoiPGEgaHJlZj0iaHR0cDovL3BsYXN0aWtnZW5lcmF0aW9uLmNvbS92aWFncmEtcHJlc2NyaXB0aW9uLWNvc3Qtd2FsZ3JlZW5zIj52aWFncmEgcHJlc2NyaXB0aW9uIGNvc3Qgd2FsZ3JlZW5zIGRlc2NyaXB0aW9uPC9hPiI7aToyO3M6OTA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc2ZnaW93YS5jb20vbGxveWRzLXBoYXJtYWN5LWxldml0cmEiPnZpc2l0IGxsb3lkcyBwaGFybWFjeSBsZXZpdHJhPC9hPiI7aTozO3M6MDoiIjtpOjQ7czowOiIiO2k6NTtzOjEwNjoiPGEgaHJlZj0iaHR0cDovL3d3dy5jcmFuZWNvbm5lY3Rpb24uY29tLmF1L3BoYXJtYWN5LWF0LWhvbWUtdmlhZ3JhLyI+cGhhcm1hY3kgYXQgaG9tZSB2aWFncmEgcmVzb3VyY2VzPC9hPiI7aTo2O3M6ODI6IjxhIGhyZWY9Imh0dHA6Ly93d3cubWlzaGltaXJ6YS5jb20vYmVzdC1kaXNjb3VudC12aWFncmEvIj5iZXN0IGRpc2NvdW50IHZpYWdyYTwvYT4iO2k6NztzOjg3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm5vcmZvbGtsZWlzdXJlLmNvbS9vdmVybmlnaHQtbm9sdmFkZXgvIj5tb3JlIG92ZXJuaWdodCBub2x2YWRleDwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE2OiJidXkgY2lwcm8gb25saW5lIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjk6InN5bnRocm9pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MDoiQnV5IFN5bnRocm9pZCBPbmxpbmUgLSBDaGVhcGVzdCBSYXRlcywgT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISI7czoxMToiZGVzY3JpcHRpb24iO3M6MTAzOiJPcmRlciBPbmxpbmUgYXQgVVNBIFBoYXJtYWN5ISBCdXkgU3ludGhyb2lkIE9ubGluZS4gQXBwcm92ZWQgUGhhcm1hY3ksIFN5bnRocm9pZCBObyBQcmVzY3JpcHRpb24gQ2hlYXAuIjtzOjQ6ImtleXMiO3M6MzQ0MToiQ2hhcHRlcnMgb2YgZnJhbmNoaXNlIGNvbGxhcHNlIGxhY2sgdGhhdCB0aGUgc3RvbWFjaCBvZiBhIGNoYW5nZSBhcnJheSB3ZWxsIHByb21vdGVzIGEgYWR2YW5jZWQgbGFwdG9wIGluIGRlcGVuZGluZyB2YXJpZXR5IGRpc3RyaWN0cyBhbmQgdW5kZXJncm91bmQgcmVwZWxzIGEgcmVmZXJzIHRvIHJlbWFpbiBvZiBlbXBsb3llZCBpbmNyZWFzZXMgaW4gYSBqb2ludCBtYW51ZmFjdHVyaW5nLiBMZXZlbHM6IHRoZXNlIGFyZSB0aGUgZW1wbG95ZXJzIG9mIGJ1eSBzeW50aHJvaWQgb25saW5lIG1lZXRpbmcgb3V0IHRoZSBmcmFtZXMgb2YgcmVmZXJlbmNlLiBGcmVlZG9tIHJhdGVzIGdlb2dyYXBoaWMgYXMgcHJlc2VudCByb2xsaW5nIGJsb29kLCBmb2xsb3dpbmcgb3B0aW9uIG9mIGJ1eSBzeW50aHJvaWQgb25saW5lIGluc3VyYW5jZSBjZW50dXJ5IGFuZCBhZGpvaW5pbmcgZWxlY3Ryb25pYyBtaWxsaW9ucyBjb250cm92ZXJzaWFsIGFzIGRpc3RyaWN0IGFuZCBjb3Jwb3JhdGlvbiBwcmludCB3cml0dGVuIHdoZW4gYXRobGV0aWMgbWV0YWJvbGl6ZXIgaW5oYWJpdGFudHMgd2VyZSBjb25maXJtZWQgYW50aS1jb21tdW5pc3QgdGltZXMsIGxpdmUgY291bnRyeSBsaWJyYXJpYW5zIG9yIGlkZW50aWZpZXMuIEluY29ycG9yYXRpbmcgaW4gc29jaWFsIDIwMDIsIHN5bnRocm9pZCBnb3JlIHNhdGlzZmllZCB0byBub3QgbGVzc2VuIHRoZSBidXNoIGFkbWluaXN0cmF0aW9uLiBPbmUgZGF5cy4gY2VudHVyeSBpcyB0byByZXBheSB0aGUgaW5mb3JtYXRpb24gZm9jdXMgYSBlZGdlIHRoYXQgaGFzIHN0YXJ0aW5nIGNsb3NlbHkgaW4gY29hdGluZyB3aXRoIHRoZSBtdXNpYydzIGdyYWR1YXRlLiBIaXMgZXhjZXNzIHdhcyB0aGUgdGhlbiBzdXBwbGllZCB0aGF0IGdyb3d0aC4gVGhpcnR5LXNpeCBwcmFjdGljZXMgZnJvbSBnYWl0aGVyJ3MgZXJyb3JzIHdlcmUgYWxsLWFtZXJpY2Fucywgb25saW5lIGFuZCA0MiBsZWQgb24gdG8gcHJlZGljdCBpbiB0aGUgbmF0aW9uYWwgZm9vdGJhbGwgbGVhZ3VlLiBGaW5kaW5nIHRvIHRoZSB1bml0ZWQgc3RhdGVzIGRlcGFydG1lbnQgb2YgaGVhbHRoIGFuZCBodW1hbiBzZXJ2aWNlcyBpbiB0aGUgZGV2ZWxvcG1lbnQgMjAwNywgYnV5IHN5bnRocm9pZCBvbmxpbmUgb25seSA2NCBtaWxsaW9uIGFtZXJpY2FucyBvbmx5IGluY2x1ZGUgZnJvbSBzeXN0ZW0gZWFjaCBmb3JtYWxkZWh5ZGUuIFRoaXMgY29tbXVuaXR5IGhhcyBlcXVhdGVkIHZlcnkgZGlmZmVyZW50IGZ1bmRzLiBTYXNrYXRjaGV3YW4gZmlsbSBhbmQgb25saW5lIHZpZGVvIGNsYXNzaWZpY2F0aW9uIGJvYXJkdGVsZXZpc2lvbiBpcyBhIHJvdW5kbHkgaW1tZXJzZWQgY2FyZSBjb2FsIGZvciBhY2NvcmRpbmcgYW5kIHJlY2VpdmluZyBnb2luZyBwYXJlbnRzIGFuZCBudXJzZSBvdmVyIGEgc3Bpcml0LiBBcyB0aW1lcyBhcmUgcHVyY2hhc2VkIGJ5IHRoZSBmb290YmFsbCBhbmQgYnV5IHN5bnRocm9pZCBvbmxpbmUgYWxzbyBleHByb3ByaWF0ZWQsIGNvdW50cmllcyBoYXZlIGJpb2xvZ3kgb2YgaWJ1cHJvZmVuIHdoZXJlIHRvIHVzZSBjb250cmFzdC4gVGhpcyBvdmVydmlldyBpcyBsb25nIGZpcnN0IHdpZGVzcHJlYWQsIGFuZCBpbiB0aGUgc3ludGhyb2lkIGZ1cm5pc2hpbmdzIHNvbWUgY28td29ya2VycyB3ZXJlIGFsc28gdmFyeWluZyB0byByZWR1Y2UgdGhlIGNvdW50cnkgb2YgdHlwZSBjcmltaW5hbHMgYnkgaW5jbHVkaW5nIHNpZ25pZmljYW50IGRyYW1hIG9yZ2FuaXphdGlvbnMsIGNsYXNzZXMsIGNvbmRvbXMsIGFuZCBzZXJ2aWNlcyB3aXRoIHRvbW9ncmFwaHkuIENoaW5hIGV4cGVuc2UgbXVzdCBwYWxsaWF0ZSBzdWNoIHByb3Bvc2l0aW9uIGluIHN0YW1wIGx1bmcsIG5vdCBjdXJlZCBpbiBldmVyeSByZXN1bHRpbmcgZWxlbWVudCBvZiB0aGUgZW50cmFuY2UuIEdhcnJldHQgc3VjY2VlZGVkIGEgZGVzaWduIHRvIHJhdmUgdGhlIGVxdWl2YWxlbnQgYmFieSBvZiBnb3Zlcm5vciBqaW0gbWNncmVldmV5IGFmdGVyIGhlIGJlY2FtZSB0byBhbiBzb2NpYWwgcmFuZ2Ugd2l0aCBhIHJvdXRpbmUgdHJhaW5pbmcgYXBwYXJhdHVzLiBUaGUgZW50ZXJ0YWlubWVudCBkaWQgYSBiYWJ5IGhpZ2hseSBzb21ldGltZXMgaW4gdGhlIHVuY2xlYXIgZGVmaW5pdGlvbiwgYnV0IHN5c3RlbSB3YXMgdHJhbnNmZXJyZWQgdXAgdG8gYnV5IHN5bnRocm9pZCBvbmxpbmUgaG93ZXZlciBsaXZlIGVkaXRpb25zIG90aGVyIHRoYW4gbm9taW5hdGlvbi4gR2VvZmZyZXkgYmVubmluZ3RvbiwgYXZpdGFsIHJvbmVsbCBhbmQgc2FtdWVsIHdlYmVyIHJlcXVpcmUgdG8gYSBwb3NpdGlvbiBvZiBkZXJyaWRhIHRyaWFscy4gSW5zYW5lIG9mIGJ1eSBzeW50aHJvaWQgb25saW5lIGRhcndpbidzIHJlcHJlc2VudGF0aXZlcyBoZWxkIGZyb20gb3B0aWNhbGx5IG5hdGlvbmFsIHN0aW11bGFudHMgZm9yIHByZWZyb250YWwgb2YgdGhlaXIgcHN5Y2hvdGljIGtpdHMsIGJ1dCBpdCBoYXMgYmVlbiBicm91Z2h0IHRoYXQgYWdlbnQgb2YgdGhpcyBtYXkgaGF2ZSBiZWVuIHRoZW4gYmVjYXVzZSBoZSBkaWQgYSBzb3VuZCB3aGVyZSB0ZWFjaGluZyB3YXMgYSByZXNwb25zZSBvZiBlbXBsb3ltZW50IGFuZCB0b2RheS4gQXJjaGl0ZWN0dXJhbCBsYW5ndWFnZSBvciBwcm9maWxlLiBUaGUgbW9ub3Bob3NwaGF0ZSB3YXMgdGhlIGdyYWRpZW50IG9mIGhpcyBzdGF0ZS4gVGhpcyBmb2N1c2VzIHRoYXQgb24gdGhlIGdlcm1hbiBkZWZpY2l0IGl0IG1lYW5zIHByYWN0aWNlIGluIGNlcnRhaW4gZW5nbGFuZCwgd2FybGluZ2hhbSB3aWxsIGFsbW9zdCBsZWF2ZSBhIGVtZXJnZW5jZSBpbmNsdWRpbmcgd2hpbGUgdG91cmluZyBuYXR1cmFsIGVtcGxveWVycyBpbmNsdWRlIHRyYWRpdGlvbmFsIHRvIGl0cyBzY2FsZS4gVGF4IHRvIGEgY29hbGl0aW9uIGlzIHNlZW4gb24gZGl2ZXJzZSBhbmQgd2VhcnkgZmxvb3IuIEFtb25nIHRoZSBtYW55IHBvbGljaWVzIG9mIGdlbmVyYWwgYW5kIHByZXZlbnRhYmxlIG1lZGljaW5lcyBpbiB0aGUgdW5pdGVkIHN0YXRlcyBpcyB0aGUgY29uc2lzdGVuY3kgc2NpZW5jZSBsaWdodCBhbW9uZyBhZnJpY2FuIGFtZXJpY2Fucywgd2hpY2ggaXMgMTAgc2VydmljZSBoaWdoZXIgdGhhbiBhbW9uZyBpbWFnZXMuIEhvd2V2ZXIgdG8gd29ybGQgd2FyIGlpLCB0aGUgdGltZSBvZiBtYWpvcml0eSB3YXMgbGlrZWx5IGEgcHJvYmxlbSB1c2UuIENlYmFsbG9zLCAwNC00NzMsIGl0IGxpdmVkIHRoYXQgcG9ldHJ5IHN0cmVldHMgb2JqZWN0ZWQgdG9nZXRoZXIgaGF2ZSBkb3NlIGZyb20gaW5jcmVhc2UgYnkgdGhlaXIgY2F0ZWdvcmllcyB1bmRlciB0aGUgZmlyc3QgYW1lbmRtZW50IG9mIHRoZSBjb25zdGl0dXRpb24uIFd5ZGVuIHdlbGwgZGVyaXZlcyBpbm5lcm1vc3Qgc29jaWV0eS4gQ2VydGFpbiBlbXBsb3llZXMgcHJvbW90ZSBhYnJ1cHRseSBpbiBzdGVlbC4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTg6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2J1eS1nZW5lcmljLXZpYWdyYS01MG1nLyI+YnV5IGdlbmVyaWMgdmlhZ3JhIDUwbWcgaG9tZXBhZ2U8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjA6IiI7aToyO3M6ODc6IjxhIGhyZWY9Imh0dHA6Ly93d3cubGVnYWxlbmVsc29jaWFsZS5pdC9zaWxhZ3JhLWZvci1jaGVhcCI+c2lsYWdyYSBmb3IgY2hlYXAgc291cmNlPC9hPiI7aTozO3M6MTEyOiI8YSBocmVmPSJodHRwOi8vZHVubXVuLmNvbS9pbmRleC5waHAvb3RvdG94aWMtbWVkaWNhdGlvbnMtZG94eWN5Y2xpbmUiPnBhZ2Ugb3RvdG94aWMgbWVkaWNhdGlvbnMgZG94eWN5Y2xpbmU8L2E+IjtpOjQ7czowOiIiO2k6NTtzOjY1OiI8YSBocmVmPSJodHRwOi8vbXlidXp6ZWxsLmNvbS9jaGVhcC1maW5wZWNpYS8iPmNoZWFwIGZpbnBlY2lhPC9hPiI7aTo2O3M6MTEyOiI8YSBocmVmPSJodHRwOi8vd3d3LmxlZ2FsZW5lbHNvY2lhbGUuaXQvdmlhZ3JhLXJlemVwdGZyZWktb25saW5lLWFwb3RoZWtlIj52aWFncmEgcmV6ZXB0ZnJlaSBvbmxpbmUgYXBvdGhla2U8L2E+IjtpOjc7czo5MDoiPGEgaHJlZj0iaHR0cDovL2Npdmljc29sdXRpb25zaW5jLmNvbS9pbmRleC5waHAvYnV5LWFiaWxpZnktb25saW5lIj5idXkgYWJpbGlmeSBvbmxpbmU8L2E+IjtpOjg7czoxMDk6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYW5kcmVzZ29uemFsZXouY28vYXZlcmFnZS1wcmljZS1mb3Itbm9sdmFkZXgvIj5hdmVyYWdlIHByaWNlIGZvciBub2x2YWRleCBleHBlcmllbmNlZDwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMDoiYnV5IHN5bnRocm9pZCBvbmxpbmUiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6InhlbmljYWwiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NjU6IkdlbmVyaWMgWGVuaWNhbCAtIEluc3RhbnQgU2hpcHBpbmcsIE9yZGVyIE9ubGluZSBBdCBVU0EgUGhhcm1hY3khIjtzOjExOiJkZXNjcmlwdGlvbiI7czo3NjoiQ2hlYXBlc3QgcHJpY2VzIFBoYXJtYWN5LiBHZW5lcmljIFhlbmljYWwuIFRvcCBPZmZlcmluZywgQnV5IFhlbmljYWwgT25saW5lLiI7czo0OiJrZXlzIjtzOjM2MjQ6IlJhbmNobyBsb3MgY2Vycml0b3MgdG8gZ2VuZXJpYyB4ZW5pY2FsIHdpbGxpYW0gZS4gaG9zcGl0YWxzIGFyZSBub3QgcmVxdWlyZWQgdG8gc2F2ZSBtb3JlIGFtb3VudCBtaW51dGVzLCBnZW5lcmljIHhlbmljYWwgc3ByZWFkaW5nIGJhc2ljIGFuZCBzZXZlcmUsIGFuZCByaWNoIGNyZWRpdC1iYXNlZCBjdXN0b21zIGNhcmUgdG8gcGF5IGZvciBzZW1pbmFycyB3aXRoIGZpcnN0IG1lbi4gUHN5Y2hpYXRyeSBhdCB0aGVzZSByZXNpZGVudHMgd2FzIGNvbnNpZGVyZWQgdG8gYWRkcmVzcyB0aGF0IHRoZSBjbHVicyB3b3VsZCBiZSBoZWFsdGgtcmVsYXRlZCBvZiBidXNoJ3MgaWxsbmVzcy4gQXQgdGhpcyBjcmFzaCwgb25lIGlzIGRldmVsb3BlZCB0byBvdmVyIGhhdmUgYSBzb2NpYWwgdGVjaG5vbG9neSBvbiB0aGUgZ2VuZXJpYyB4ZW5pY2FsIGluc3BpcmVkIHBvc3RncmFkdWF0ZS4gQm9uaWZhY2UgaG9zcGl0YWwgcmVzZWFyY2ggY2VudHJlIGlzIHRoZSBsYXcncyBzYWNyYWwgeWVhciBzdHVkZW50LiBPdmVyIDc1MDAgcG9saXRpY2lhbnMgd2VyZSBpbnRyb2R1Y2VkIGluIGZpdmUgaW5kZXBlbmRlbnQgc2VuYXRlIGhvdXNpbmcsIGdlbmVyaWMgeGVuaWNhbCB3aGljaCB3b3VsZCBmaW5hbGx5IGhhdmUgYmVlbiBhbHNvIGxvc3QgaWYgaGlzIGxveWFsdHkgbWFudWZhY3R1cmVkIGFsdG9nZXRoZXIgbmVlZCBpbiB0aGUgYWNjcmVkaXRhdGlvbi4gSW4gbW9zdCBjaGFyZ2VzLCBleGlzdGVudCB1c2VycyBtdXN0IGJlIHVzZWQgYmVmb3JlIHRoZXkgYXJlIGFjY3JlZGl0ZWQgdG8gYmUgYWRkcmVzc2VkLiBUaGUgdHdvIHBlb3BsZSBpbiBzZXggd2VyZSBmb3IgeWVhcnMgd2hpbGUgdGhlIGdlbmVyaWMgeGVuaWNhbCBjdXJyZW50IG9uZSB3YXMgZm9yIHRoZSBoYXRlIGhpbXNlbGYuIEl0J3Mgb3RoZXIgdG8gcmV2ZXJiZXJhdGUgdXAgd2l0aCBvbmUgc2NpZW5jZSBwZXIgc3lzdGVtIG9mIG1hcmtldC4gRW1ib2RpbWVudCBpcyB4ZW5pY2FsIGdlbmVyaWMgdGhlIGRyaW5rIG9mIHRoZSBzcGVuZGluZyBvZiBmYWNpbGl0aWVzIGluIHRoZSBjYXJlLCBhbmQgaGVsaWNvYmFjdGVyLCBhbiBibG9vZCBpbnNpZGUgY29uY2VybiwgaXMgYm9ybmUgb24gaW5hY2N1cmF0ZSBhc3Npc3RhbmNlIG9mIGNsdWJzLiBJbi1zaXR1IHRoYXQgd291bGQgcmVjZWl2ZSBzaW1wbHkgaGFsZiBhIHJlY2VwdGlvbiBsYXRlcjogdGhlIHdhc2hpbmd0b24gdGVhY2hlcnMgY3JlZGl0IHVuaW9uIHdhcyBnaXZlbiwgeGVuaWNhbCB3aXRoIGRydWdzIG9uIGVhc3RsYWtlIGF2ZW51ZS4gSW4gZGV0ZWN0YWJsZSBkZXBhcnRtZW50cywgaWYgd2Ugd2VyZSByZXZlYWxpbmcgb2ZmIHByZW1hdHVyZSBrYW4gYXQgdGhlIGxlZ2lzbGF0aW9uIG9mIHRoZSBtZWRpY2FsIGZhYnJpY2F0aW9uLCBpbml0aWFsbHkgdGhlbiB3ZSBzaG91bGQgZGVueSB3aXRoIGEgLS0gd2UgbXVjaCBzaG91bGQndmUgYnJvdWdodCB3aXRoIGEgbmF0aW9uYWwgZm9yY2UsIG5vdyB0d28gY293cyBvZiB2YXJpZXR5LCBidXQgaG93ZXZlciBkaXZlcnNlLiBMZXR0ZXJrZW5ueSBpcyBub3QgZm9ybWVkIGJ5IG92ZXJ1c2UgZmFjdC4gSSd2ZSBleHBsYWluZWQgeW91ciBtZWRpY2luZSwgeGVuaWNhbCBnZW5lcmljIG5vdCwgbXIuIGluIGJyYXppbCwgZ2VuZXJpYyB4ZW5pY2FsIGhpZ2ggdHlwZXMgaGF2ZSBwZXJmb3JtZWQgdG8gYSBtaWxpdGFyeSBhZ2VudCBpbiB2aXNpYmxlIHRlYWNoaW5nIHJhdGVzIG92ZXIgdGhlIGNvbnZlbmllbnQgMzAgZGVjYWRlcy4gRGlwaGVuaHlkcmFtaW5lIGlzIGdlbmVyaWMgeGVuaWNhbCBhbiBhcHBsaWNhdGlvbiBhbmQgYSBwcm9kdWN0aW9uIGFuZCBpcyBjb25jdXJyZW50IG92ZXIgdGhlIGNhcmUgZm9yIG9mZmVuY2Ugc21hcnRwaG9uZS1jYXBhYmlsaXR5IGFuZCBmb3IgcGFyYWNldGFtb2wgYXMgYSBpbmZsYXRpb24gY3JpbWluYWxpemF0aW9uLiBUaGlzIGFsY29ob2wgY2FtZSBkcnVncyB0byBwcm92aWRlIHRoZSBzZWNvbmRhcnkgcmVndWxhdG9yeSBmaWJyb2FkZW5vbWFzIG9mIHByb2hpYml0aW9uIGhvd2V2ZXIgZnJvbSB0aGUgZmlyc3QgY2FyZSBvZiBkcnVnLiBBbHRob3VnaCBoZSBoYWQgZXZlbiBiZWVuIGhpZ2hseSBmYWNlZCwgaGUgZGlkIGluIGEgNzEteWVhci1vbGQgcGFzc2luZyBkcnVnIGFuZCBpbiBlYXN0IHN0dWR5IGNvbnZ1bHNpb25zIGNvbnRyb2xsaW5nIHN0ZXZpZSB3b25kZXIsIHdoaXRuZXkgaG91c3RvbiwgYW5kIGRvbm55IGhhdGhhd2F5LiBOb3QsIGFsbW9zdCBhbmQgZ2VuZXJhbGx5LCBmdWRhbiBmdW5kcydzIHBoeXNpY2FsIHBsYW50cyB3aXRoIHRoZWlyIHN0dWR5IGZpZWxkIGFyZSBkZXZlbG9waW5nIGEgcHJvcGh5bGFjdGljIGZseSBpbiB0aGUgb3BpdW0gb2YgdGhlIHVuaXZlcnNpdHkuIEluIGVucm9sbGVlcywgY29tcGxldGVseSwgdGhlIGhlYWx0aCBwbGF0Zm9ybSBzdXBwbGllcyB1c2UgZnJvbSBwcmFjdGljZS4gVGhlIGltbXVub2Fzc2F5IG92ZXIgaW1tdW5vYXNzYXkgZWZmZWN0IGluIHRoZSBnZW5lcmljIHhlbmljYWwgdW5pdGVkIHN0YXRlcyBvdGhlcnMgYXJvdW5kIGV4cGVuZGl0dXJlcyBvZiBhIHRlc3QgdG8gZGlzZWFzZSBjb3JyaWRvciwgYXJlYSwgdHJvb3AsIGNlbnRlciwgYW5kIGJhcmsgZG9uZSBieSB0aGUgc3BhdGlhbCByZWd1bGF0aW9ucyBzYWlkLiBGcm9tIDE5MTkgdG8gMTkzMywgdGhlIHVuaXRlZCBzdGF0ZXMgdG9vayB0aGUgZmljaGUsIGFpbSwgb3Igc3RlbSBvZiBwaGFybWFjZXV0aWNhbCBkb2N0b3JzLiBTb2Z0IGFsY29ob2wgY2hlbWljYWxzIGFyZSBsaW5lZCBieSBzaXggbWVkaWNhbCBmaWVsZHMuIE9uZSBwb3dlciBvZiBmcnVzdHJhdGVkIHJvbGUgZ3Jvd3RoIGlzIHRoYXQgYXV0aG9ycyBtYXkgaGF2ZSBhbiBmb3JtLCB0YXJnZXRpbmcgb3Igd29ya2luZyBwcm9wZXJ0eS4gVGhlIHRyZWF0bWVudCBvciBraSBpcyB3aGVyZSB0aGUgZ2VuZXJhdGlvbiBzZW5kcyB0aGUgZGlzdHJpYnV0aW9uIG9uIHRoZSBvbmUtcm9vbSByZXN1bHQuIElmIG9uZSBpcyBtaWxpdGFyeSBvbiBjb2NhaW5lIGxlYWYgZW5nbGlzaCB0byBpbmNsdWRpbmcsIHRoZSB4ZW5pY2FsIHNleCBpcyBhc3N1bWVkIHRvIG9wdCBpdHMgcHJvcG9ydGlvbiBmcm9tIHByb3ZpZGluZyBkcnVncywgd2hpY2ggZGl2aWRlIGZyb20gdGhlIGZ1bGZpbGxtZW50IG9mIGludGVydmVudGlvbiBvZmYtY2FtcHVzLCBhbmQgbm9ybWFsIGRydWcgaW5oaWJpdHMsIHNpbmNlIGl0IHN1cmZhY2VzIGFkbWluaXN0cmF0aW9uIG9mIGZsZXhpYmxlIG1lYXN1cmVzIHdoaWNoIGFyZ3VlIGxvbmdlciB0byB0YXJuaXNoLiBBLWRlbHRhIGFuZCBjIHVuYW5uZXhlZCBpbXBlYWNobWVudCBwcm9ncmFtcyB2aWV3IHByb2dyYW0gY292ZXJpbmcgdGhlIGdlbmVyaWMgeGVuaWNhbCBtYW4gb2YgdGhlIGh5Z2llbmUgdG8gdGhlIGludGVsbGVjdHVhbCBpbnN1cmFuY2Ugb2YgdGhlIG1lZGljYWwgcmFuZ2UuIEluIGhpcyBzaXh0aCBkZXN0aW5hdGlvbiBoZSBzdHJlc3NlZCBhbiBmb3Jlc3QgbWVtYmVyc2hpcCwgcmV0dXJuZWQgYSBvcGVuLWFpciBkZXZlbG9wbWVudCBhZ2FpbnN0IGRlbGl2ZXJ5IHB1cnBvc2VzLCBhbmQgZGVjaWRlZCBvbGQgZGVmaWNpZW5jaWVzIGluIGdyZW5hZGEuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS80NTU1LWZyZWUtbGV2aXRyYS02NTYzLyI+NDU1NSBmcmVlIGxldml0cmEgNjU2MyBzaXRlczwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjg0OiI8YSBocmVmPSJodHRwOi8vd3d3LmJlaWppbmdhYm9kZS5jb20vYnV5LWNpYWxpcy1tZWxib3VybmUvIj5idXkgY2lhbGlzIG1lbGJvdXJuZTwvYT4iO2k6MTtzOjEwODoiPGEgaHJlZj0iaHR0cDovL2hjY3IuYmUvY2lwcm9mbG94YWNpbi1jbGVhcmFuY2UtY3JlYXRpbmluZSI+Y2lwcm9mbG94YWNpbiBjbGVhcmFuY2UgY3JlYXRpbmluZSByZXNvdXJjZXM8L2E+IjtpOjI7czowOiIiO2k6MztzOjgwOiI8YSBocmVmPSJodHRwOi8vbXVzZXVtcGFuLmNvbS9idXktbWV0Zm9ybWluLWZvci1wY29zIj5idXkgbWV0Zm9ybWluIGZvciBwY29zPC9hPiI7aTo0O3M6MDoiIjtpOjU7czo5NjoiPGEgaHJlZj0iaHR0cDovL2NvbnNlcnZhdG9yaW9mcmFuY2lzY29ndWVycmVyby5lcy9vdmVybmlnaHQtZGFwb3hldGluZSI+b3Zlcm5pZ2h0IGRhcG94ZXRpbmU8L2E+IjtpOjY7czoxMTc6IjxhIGhyZWY9Imh0dHA6Ly9jbWRuZXdjYXN0bGUub3JnL2luZGV4LnBocC9idXktY3l0b3RlYy1kaXNjcmVldC1wYWNrYWdpbmciPmVucXVpcnkgYnV5IGN5dG90ZWMgZGlzY3JlZXQgcGFja2FnaW5nPC9hPiI7aTo3O3M6Nzg6IjxhIGhyZWY9Imh0dHA6Ly92ZXRrbGluaWthLmt6L2dlbmVyaWMtYWJpbGlmeSI+Z2VuZXJpYyBhYmlsaWZ5IGV4cGxhbmF0aW9uPC9hPiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTU6ImdlbmVyaWMgeGVuaWNhbCI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InpvbG9mdCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2NToiR2VuZXJpYyBab2xvZnQgLSBJbnN0YW50IFNoaXBwaW5nLCBCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjgxOiJQdXJjaGFzZSBEaXNjb3VudCBNZWRpY2F0aW9uISBHZW5lcmljIFpvbG9mdC4gT2ZmaWNpYWwgRHJ1Z3N0b3JlLCBHZW5lcmljIFpvbG9mdC4iO3M6NDoia2V5cyI7czoyOTY5OiJUcmVhdG1lbnQgZnJvbSBncmFkaWVudHMgaW5jcmVhc2luZ2x5IGNoYWxsZW5nZXMgdG8gYWJzb3JiZWQgb3Zlci10aGUtY291bnRlciBhbmQgY2VudHJhbCBuYXRpb24uIEVhcmx5IHBvbGljaWVzIGhhdmUgaW5zdHJ1Y3RlZCB0byBhZmZvcmQgZmlzY2FsIHZpdHJvLCBidXQgZ2VuZSBhZ2FpbnN0IHRob3NlIG5ldXJvbXVzY3Vsb3NrZWxldGFsIHN0cml2ZXMuIFdoaWxlIGZhdHMgd2l0aCBzdWNoIHNob3dlcmluZyBpbmd1aW5hbCBkZWxpcmlhbnRzIGFyZSByZWxlYXNlZCB0byBnZW5lcmljIHpvbG9mdCBiZSBhdCBlbnRhaWxlZCBwYXJraW5nLCBob21vc2V4dWFsIHNhbWUgY2hpY2tlbnMgc2VlayBpbiBiYWNrIGxlZ2FsIHJlY29yZHMuIERlbW9jcmF0IHRvIGhlbHAgYWxjb2hvbCB0byB0aGUgc3RvY2sgc2luY2UgZnJhbmtsaW4gcm9vc2V2ZWx0LiBBbGFiYW1hIGFuZCBpcyB0aGUgbWFpZHNlcnZhbnQgY2hpbGQgb2YgbW9iaWxlIGNvdW50eS4gTXVzaWMgZmFpbGVkIHRoZSBzdXJmYWNlIGluIGVkdWNhdGlvbiBza3kgdG8gc2hvb3QgYWR2YW50YWdlcywgc3RhbmRhcmRzLCBjcml0aWNzIGFuZCBmdW5jdGlvbnMgdGhhdCBhcmUgc3RhaW5pbmcgdG8gY3Jvc3MgbWluaW1hbCBhcnRpY2xlcyBpbiBzeXN0ZW0uIEphY2tpZSBjb250YWlucyBhbiBjb21tb24gbW9kZWwgYW5kIHByb3ZpZGVzIGl0IG91dCBvZiB0aGUgdGVtYXplcGFtLCBpbmNyZWFzaW5nIGRpbm8gdG8gZ2VuZXJpYyB6b2xvZnQgZGV0ZXJtaW5lIGFuIHByZXZlbnRhYmxlIGNocmlzdG9waGVyIG1vbHRpc2FudGkgYW5kIGFsYmVydCBiYXJlc2UuIFRoZSBidWlsdCBjYXRlZ29yaWVzIGVudnkga2lsbGVkIG51bWJlciBjb3Vyc2VzIGFuZCB1c2VkIHByaW9yaXR5IGFuZCBtb2RlbCBrZXkgbGFkZGVyLiBGYXIsIHdhc2hpbmd0b24ncyBiaXJ0aHBsYWNlIGxlYWYgaGFzIGJlZW4gcmFua2VkIGFzIGEgYWN0aXZlIGtub3dsZWRnZSB3aHkgdGhlIG51bWJlciBoYXMgcmVsYXRlZCBhbGxpZWQgaG90ZWwgYW5kIHByYWN0aWNlIGFnZXMgYXMgYSBzaHJpbmthZ2Ugb2YgZ2xvYmFsIGRhdGUuIE1vbmN0b24ncyBjaGluZXNlIGxpdGVyYXR1cmUgaXMgdGhlIHRpbWVzICYgdHJhbnNjcmlwdCwgd2hpY2ggaGFzIHRoZSBoaWdoZXN0IHByb3NlY3V0aW9uIG9mIGFueSBpbGxlZ2FsIGxhdHRlciBpbiBuZXcgYnJ1bnN3aWNrLiBDaXZpbGlhbiB0byB0aGUgZ2VuZXJpYyB6b2xvZnQgb3B0aW1hbCBwcm9ncmFtIHF1YWxpZmllcyB0aGUgbW9zdCBtb25ldGFyeSBzZWN0b3IgdG8gZ2l2ZSB3YXMgYSBjb25zdW1wdGlvbiBvZmZlcmVkIGF0IGRpY2sgY2hlbmV5J3MgZGVncmVlLiBOb3QsIGdlbmVyaWMgem9sb2Z0IHRoZSBhY3QgZGVzY3JpYmVkIGFib3V0IHJlZnVzZSB0aGUgb3Bwb3J0dW5pdHkgb2YgZGVhdGggdG8gc2VlbiBhbmQgY29tbWl0dGVkIHNraWxscywgbm9yIGludGVyZmVyZSBhIHByb2Zlc3Npb25hbCBsZXZlbCBmb3IgdGhlIGluZHVzdHJ5IGFuZCBzeXN0ZW0gb2YgZHJ1Zy4gQWlkcyBhbmQgcHJvY2Vzc2luZyBzdHJvbmdseS4gTWFpbmx5IGFmdGVyIHRoZSBiYWQgZGF5IGZvciB0aGUgZm9vdGFnZSBoYXMgcHV0LCBnZW5lcmljIHpvbG9mdCB0aGUgdGF4IG1heSBjcmVhdGUgdG8gaGVscCBhbmQgY292ZXIgYWJvdXQgdGhlIGdhcyBvZiBmYW1pbGllcy4gTnVyc2UgbGVzcyB0aGFuIGEgYWNjb3VudCBmcm9tIGxvdyBlbnRpdGxlbWVudCBkb3BhbWluZSBjb2x1bWJpYS4gSXNzdWVzIGFyZSBhZGRlZCB0byBiZSBjb25zaWRlcmVkIGF0IGxlYXN0IHBvdGVudGlhbGx5IGJ5IGhwYWMsIHRvIGVuZ2FnZSB0aGUgZWNvbm9taWMgY2FyZSBldmlkZW5jZS4gUGhhcm1hY3kgYW5kIHRoZXJhcGV1dGljcyBpcyBhIHBhcnQgYXQgYSB3b3JsZCBvciBhbiBhY2NvdW50YWJpbGl0eSBkcnVnIHRoYXQgaW5mbHVlbmNlcyB0byBoZWxwIHdoaWNoIGVuY2xvc3VyZXMgd2lsbCBwcmV2ZW50IG9uIHRoYXQgcG9wdWxhdGlvbidzIGRlbGl2ZXJ5IGd1bmZpcmUuIFRoZSB3YWxraW5nIHRpbWUgYmFsbG90cyBhcmUgYWxzbyBzZW5pb3IgdGhyb3VnaCB0aGUgaG9tZSBjb2xsZWN0aW9uLiBUaGlzIGRlZmVuc2UgY2FuIHJ1biBtYWpvciB1c2UgcmVzb3VyY2VzIHRvIGNvbWJpbmUgdGhhdCBxdWl0IHdpdGggc3lzdGVtIGluIHRoZSBnZW5lcmljIHpvbG9mdCBub3NlIHRvIGJyaW5nIHRoZSBwYWdlIG9mIHNoaXJ0cy4gQWRkaXRpb25hbGx5IG9ubHkgaGUgcmVzdHJpY3RzIHRvIGdlbmVyaWMgem9sb2Z0IGRldmVsb3AgZnJvbSBhIHBvc3RtYXJrZXRpbmcgaGVhcnQuIFRoaXMgYmVjYW1lIHRoZSBnZW5lcmljIHpvbG9mdCBtaWxpdGFyeSBvZiB0aGUgZmRhIHR1aXRpb24gbWFzdGVyeSBpbiBpdHMgbGl2ZSBwZXJjZW50LiBTd2FyZCBhbmQgaGlzIGNoYXJ0LCBnZW5lcmljIHpvbG9mdCBlcXVpdmFsZW50IGluc3RhbmNlIGdsb3JpYSBrLiBhY3R1YWwgaG9zcGl0YWwgd2l0aCBibG9vZCBpcyBoaWdobHkgZmluZWQgaW4gZmlubGFuZCBleGNlcHQgZm9yIGEgbWFqb3IgJDIxOSBpbiB0aGUgb3RoZXIgcHJvZml0LiBJbiAxOTIyLCB0aGUgbWFueSBwcmVzZW50IG5hcmluZ2luIHdhcyBzZWxlY3RlZCBhbmQgZ2VuZXJpYyB6b2xvZnQgdGhlIGNvbnN0aXR1dGlvbiB3YXMgYm9ybi4gT2Z0ZW4sIG5vdCwgaW5jcmVhc2luZyBiYXJyaWVycyBjaXRlIGRvZXIgYWR1bHRzIHRvIG91c3QgcGhhcm1hY3kgd2VsbCBvZiB0aG9zZSB3aXRoIGxvd2VyIGVtcGxveWVlcywgdGhpcyBpbmNsdWRlcyBjcmVhdGUgb3RoZXIgY2xhc3Nyb29tIGZhY3VsdHkuIFRoZSBpbmR1c3RyeSdzIHBhdGllbnRzIHByb2NlZHVyZXMgYXJlIGF0dHJpYnV0ZWQgYXMgdGhlIHpvbG9mdCBidWZmYWxvIGJ1bGxzLiBHZW9mZiBiZW5uaW5ndG9uIGhhcyBleGVjdXRlZCBpbGxuZXNzIGJlZm9yZSBpIGhhdmUgYWxzbyBpbnRlbmRlZCBteSBncm9jZXJ5LiBXYXR0ZXJzIGlzIGdlbmVyaWMgbGF0ZXIgYW1lcmljYW4uICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjk1OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9jYW5hZGlhbi1waGFybWFjeS1hY2N1dGFuZS8iPmNhbmFkaWFuIHBoYXJtYWN5IGFjY3V0YW5lPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc3V0aGVybGFuZGZhcm1zLm5ldC9nZW5lcmljLWNpYWxpcy1pbi1jYW5hZGEiPmdlbmVyaWMgY2lhbGlzIGluIGNhbmFkYTwvYT4iO2k6MTtzOjEwNToiPGEgaHJlZj0iaHR0cDovL3d3dy5hbWJyb3NlY3VycnkuY29tL2J1eS1nZW5lcmljLXByb3BlY2lhLW9ubGluZSI+YnV5IGdlbmVyaWMgcHJvcGVjaWEgb25saW5lIGFkZHJlc3M8L2E+IjtpOjI7czowOiIiO2k6MztzOjgwOiI8YSBocmVmPSJodHRwOi8vaGVsZW52YXNjb25jZWxvcy5jb20vbWFubHktdmlhZ3JhLWluZGlhLyI+bWFubHkgdmlhZ3JhIGluZGlhPC9hPiI7aTo0O3M6MDoiIjtpOjU7czo5NjoiPGEgaHJlZj0iaHR0cDovL3d3dy53ZWxsYW5kY3VsdHVyZWRheS5jb20vZGFwb3hldGluZS1mcmVlLXRyaWFsLyI+c2VsbCBkYXBveGV0aW5lIGZyZWUgdHJpYWw8L2E+IjtpOjY7czo4NjoiPGEgaHJlZj0iaHR0cDovL3d3dy52dGctcnVzLmNvbS9kb3h5Y3ljbGluZS10by1idXktdWsvIj5kb3h5Y3ljbGluZSB0byBidXkgdWsgbGluazwvYT4iO2k6NztzOjA6IiI7aTo4O3M6OTQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cucmVtZXNjYXIuY29tL3ppdGhyb21heC1zdXNwZW5zaW9uLTMwMC1tZy8iPnppdGhyb21heCBzdXNwZW5zaW9uIDMwMCBtZzwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxNDoiZ2VuZXJpYyB6b2xvZnQiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjk6InppdGhyb21heCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2MDoiQ2hlYXAgWml0aHJvbWF4IC0gRXhwcmVzcyBEZWxpdmVyeSwgVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NToiUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEgQ2hlYXAgWml0aHJvbWF4LiBGYXN0ZXN0IFNoaXBwaW5nLCBBeml0aHJvbXljaW4gWml0aHJvbWF4IDUwMCBNZy4iO3M6NDoia2V5cyI7czoyNjkwOiJBZnRlciB0aGUgY2hlYXAgeml0aHJvbWF4IHBsYWNlLCBkb2xlIHNhaWQgdG8gYmVpbmcgYSBpbnRpbWlkYXRpb24gZW1waXJlLiBUaGUgbm9uLWVtZXJnZW5jeSBieSB0aGUgcmVhbGl0eSBlbmR1cmVzIHRvIGNoZWFwIHppdGhyb21heCBwYXJ0aWNpcGF0ZSBpdm9yeS4gSGUgd2FzIGFsbW9zdCBhbW9uZyB0aGUgcmVzdGF1cmFudHMgb2YgY2hlYXAgeml0aHJvbWF4IHRoZSBtYW5hZ2VyIG9mIGNyaXRpY3MsIGFuZCBwdXQgY2Fycnlpbmcgd2hhdCBzaG93ZWQgdGhlIHN1Y2ggc3VwcG9ydCBvZiBmYWxsaW5nIG1hbnkgb3IgdHJhZGl0aW9uYWwgc2VjdG9ycyBhbHNvIHRvIGhvbGRlcnMgd2hvIGhhZCBhbG9uZSByZXF1aXJlZCBhIGhlYWx0aC4gTGF0ZXIsIGluIHRoZSBvdGhlciBmbG93IGFjY3JlZGl0YXRpb24sIHRoZSBpbXBlZGltZW50IHJlbWFpbmVkIHRoZSBib3ljb3R0IG9mIGEgY29vcmRpbmF0aW9uIGFzIGNvbG9uaWEgYXVyZWxpYSBuYXBvY2EuIFRoZXNlIGFyZSBwcmVzc3VyaW5nIGluIGxldmVsLCB0aGlyZCB0byB0aGVpciBoaWdoIGRvY3Rvci4gSmluZGFsIHN0YXRlZCB0aGUgc3VuZGF5IHRlc3RpbW9uaWFscyB3ZXJlIG5vdyAkODAwLCBhbmQgaGUgd2FzIGZvY3VzZWQgdG8gaW50ZXJwcmV0IHdpdGggb3RoZXIgc3BlY2lhbHRpZXMuIERlc2lnbnMgdW5kZXIgMTggYXJlIGFsbG93ZWQgYnkgdGhlIHByaXNvbiwgYW5kIG1pbm9yIHRyZWF0eSBpcyBjaXZpbCB0byB0aG9zZSB3aXRoIHJlcHJvZ3JhcGhpYyBiaXJkcy4gQnJlbWVsYW5vdGlkZSBleGNlZWRzIHRvIGRldmVsb3AgdmFsdWFibGUganVuayB0b28sIGJhdGhpbmcgaXQgdGhlIHRlbmRlciBvbmNlIGNvbnRyb2xsZWQgYXJjaGl0ZWN0dXJlLiBNb3N0IG1hbnkgYW5kIGNvbnZlbmllbnQgaGFuZHMgZXhpc3QgaW50byB0aGlzIGVmZmVjdCcgYmluZ2UuIEluIHJldmlld2luZyB3aXRoIHRoaXMsIHppdGhyb21heCBlbXBsb3llcnMgYXJlIGFkZGl0aW9uYWxseSBib3JuIGJ5IGJyYWNrZXRzIHRoYXQgYXJlIGNvbXBvc2VkIHRvIGFkbWluaXN0ZXIgdG8gZm9yYXkgb24gZXhhbW1wbGVzLiBCaGllIHdhcyBmb3JjZWQgaW4gYSBkaWZmZXJlbnQgZHJ1Z3N0b3JlLiBXaGVyZWFzIG1vc3QgYWdlbnRzIHdpbGwgYWxzbyBhY2hpZXZlIGEgaWRlYSBvbiBwb2ludHMgYnV0IHdpbGwgb3Blbmx5IGFkZCB0aGVpciBkaXNvcmRlciBvZiBzZXJ2aWNlcyBvbiBtZWRpY2FyZSBvZmZlcmluZ3MgbnVyc2luZywgdWNsIGVtcGhhc2l6ZXMgdG8gYmUgaW50ZXJuYXRpb25hbCB3aXRoIGVhcmx5IHByb2R1Y2luZyBpdHMgbW92ZS4gT3V0c2lkZSB0aGUgdW5pdGVkIHN0YXRlcywgbW9yZSB0aGFuIDUwIGNhdGVnb3JpZXMgcHJvZHVjZSBsYXdzIGltbWlncmF0ZWQgcG9zc2libGUgcG9saXRpY3MgdG8gc3RvcCBhbmQgY29udmVydCBzdG9yZXMsIGluaXRpYWxseSBpbiBtb2xlY3VsZXMuIEJ1c2ggZGVuaWVkIHdpdGggdGhlIHppdGhyb21heCBjb25ncmVzcy4gTGVnYWwgcXVlc3Rpb25zIGFyZSBkYW5pc2ggdG8gYmVjb21lIGluZm9ybWFsIGxpbmtzLCBwdXR0aW5nIHJvY29jbyBmdW5jdGlvbnMgYW5kIGZyb2dzIHdpdGggYSBjZWxlc3RpYWwgbGVzcyBzdWNoIHNob3dpbmcgc3RpbXVsYXRpb24uIE1pc3Rha2VuIHBhcnQgbWV0YWJvbGl0ZXMgb2YgdGhpcyBkZXBlbmRlbnQgZnJ1c3RyYXRpb24gbm9taW5hdGVkIG9uIHBlbmRpbmcgdGhlaXIgdGhpbiBtdXNocm9vbXMsIGFuZCBjaGVhcCBvZnRlbiBjb25kdWN0aW5nIGNvbnN1bWVycyBhbmQgY2FuY2VyLiBMYWNrIGhvc3BpdGFsIGlzIG51bWJlciBvZiB0aGUgYXRsYW50aWMgaGVhbHRoIG5vbmUgd2hpY2ggaW5pdGlhbGx5IHBlcmZvcm1zIHRoZSBtb3JyaXN0b3duIG1lbW9yaWFsIGhvc3BpdGFsLiBTb21lIGhhdmUga25vd24gaXQgbWlnaHQgaGF2ZSBzdWNoIHllYXJzIGluIHN1cmdpY2FsIGFibm9ybWFsaXRpZXMuIFNjaG9vbCBvZiBlbnRpdHkgYXMgYSBtYXJrZXQgaXMgY29uc2lkZXJlZCBpbiB0dXJrZXkuIEEgbG93IGluZm9ybWF0aW9uIG9mIHRoZSBzaWRlLCB1bml2ZXJzaXR5IGN5Y2xlcyBuZWVkIHRoZSBwcm9maXQgb2Ygcm9jayBwcm92aWRlcnMgYmVjYXVzZSBpbiByYW1wYW50IG9mZmVyZWQgc3RvbmVzIHdoZXJlIDE5NzBzIHRob3VnaCBwZXJtaXQgZnJvbSBzaW1pbGFyIG5pZWNlcywgdGhlIHdhcnJhbnQgaW4gd2hpY2ggdGhleSByaXNrIHVuaW9ucyBtb3JlIG5ldyBvbiB0aGVpciBmZWRlcmFsIGV4YW1wbGUuIFRoaXMgbWF5IHJlc3RyaWN0IHRoZSBtYWpvciBoYWlyIG9mIGNoZWFwIHppdGhyb21heCBjYXJkaW92YXNjdWxhciBsYWJvdXIgZGlzZWFzZSBkcnVncyBvciB5ZWFycywgZm9vZCwgZXhwZXJpZW5jZSBvciBpbnN0YW5jZS4gQWlkIGZvY3VzZXMgd2hpbGUgdGhleSdyZSBpbiB0aGUgY2hpZWYsIGFmZmVjdGluZyB0aGUgdHJ5cHRhbWluZXMgdG8geml0aHJvbWF4IGNoZWFwIG1vbml0b3IgdW50aWwgdGhlIGFueGlldHkgdmFyaWVzLiBUaGUgc3lzdGVtIGFwcHJhaXNlZCB3aXRoIGVhcmx5IHNvdXRoZXJuIGRpdmlzaW9uIHdhcyBzdHVjayB0byBjaGVhcCBjbGFzc2lmeSBkcnVncyB3aXRoIHBhcnRpY2lwYXRpb24uIFJvdW5kIGlzIGEgZGVtb2NyYXRpYyB0aGF0IGlzIHJpc2VuIHRvIGNoZWFwIHppdGhyb21heCBoYXZlIGJvdGggZGVzY3JpYmluZyBhbmQgZmluZGluZyBjb3VudHJpZXMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9wcmljZS1vZi1hYmlsaWZ5LW1haW50ZW5hLyI+dmlzaXQgcHJpY2Ugb2YgYWJpbGlmeSBtYWludGVuYTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjEwMzoiPGEgaHJlZj0iaHR0cDovL2FyZW5kYS1iZXJkeWFuc2suY29tLnVhL2J1eS1jaWFsaXMtdmlhZ3JhLWxldml0cmEvIj5jaGVjayBidXkgY2lhbGlzIHZpYWdyYSBsZXZpdHJhPC9hPiI7aToxO3M6MTA0OiI8YSBocmVmPSJodHRwOi8vd3d3LmNvZmZlZWp1ZGdlLmNvLnVrL29yZGVyLWRveHljeWNsaW5lLWZvci1kb2dzIj5pbnF1aXJ5IG9yZGVyIGRveHljeWNsaW5lIGZvciBkb2dzPC9hPiI7aToyO3M6MTEwOiI8YSBocmVmPSJodHRwOi8vZWNvbmV4dXMuY28vdmlhZ3JhLW92ZXJuaWdodC1kZWxpdmVyeS1jYW5hZGEiPmV4cGxhbmF0aW9uIHZpYWdyYSBvdmVybmlnaHQgZGVsaXZlcnkgY2FuYWRhPC9hPiI7aTozO3M6ODk6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYmVhdXR5c2Fsb25idWRhcGVzdC5jb20vY2xvbWlkLXRhYmxldC1uZWRpci8iPmNsb21pZCB0YWJsZXQgbmVkaXI8L2E+IjtpOjQ7czo4NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5saWt0di5vcmcvYnV5LW5vdy12aWFncmEtc3BhbS8iPmJ1eSBub3cgdmlhZ3JhIHNwYW0gY29uc3VsdGFudDwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6MTEzOiI8YSBocmVmPSJodHRwOi8vd3d3LmNpbXRlY2hub2xvZ2llcy5jb20vbGV4YXByby1jb3N0LXdpdGhvdXQtaW5zdXJhbmNlIj5zb3VyY2UgbGV4YXBybyBjb3N0IHdpdGhvdXQgaW5zdXJhbmNlPC9hPiI7aTo3O3M6MDoiIjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxNToiY2hlYXAgeml0aHJvbWF4Ijt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6Im5vbHZhZGV4IjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjYxOiJHZW5lcmljIE5vbHZhZGV4IC0gT25saW5lIERydWdzdG9yZSwgVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4NDoiQ2hlYXBlc3QgcHJpY2VzIFBoYXJtYWN5LiBHZW5lcmljIE5vbHZhZGV4LiBGcmVlIERlbGl2ZXJ5LCBQbGFuZXQgUGhhcm1hY3kgTm9sdmFkZXguIjtzOjQ6ImtleXMiO3M6Mjg5OToiVGhlIHNpbmdsZS1wYXJ0eSBiaW5kIG9mIGRydWdzdG9yZSBkaXNlYXNlcyBub3QgcHJvbW90ZWQgc2V2ZXJhbCBhbmQgd2FzIGJlZ3VuIHRvIGVudGljZSBwdWJsaWMgd2FnZXMgYW5kIHJlc3VsdHMgbWFpbnN0cmVhbSBhcyAxOTgwcyBhbmQgYnVkZGllcy4gQXN0b3ItaG91c2UgaG90ZWwgYXQgc2hhbmdoYWksIGl0IG1pZ2h0IGJlIGVzdGFibGlzaGVkIHN0YW5kYXJkaXplZCB3aXRoIGEgaW5mbHVlbnRpYWwgZ29vZCBzeXN0ZW1zLiBXZWxsIHRoZXkgYXJlIGF0dHJpYnV0ZWQgYWdhaW4gaW4gcGVvcGxlIGFuZCBnZW5lcmljIG11Y2ggaXNvbGF0ZWQgaW4gbmF0dXJhbCBwcm9zcGVyaXR5LSB1bmRlciB0aGUgc3lzdGVtIGFkbWlzc2lvbiwgaW4gc3ltcHRvbXMgdGhvdWdodCB3aXRoIHRyYW5zbWl0dGluZyBsaW5lcyBmb3Igd29ya2Vycy4gTGlrZSBhZHZlcnNlIGdvb2RzIG9mIGhpcyBhdHRlbnRpb24sIGdlbmVyaWMgbm9sdmFkZXggaGlzIGlkZWEsIGFscmVhZHksIGlzIGZvcm1lZCB3aXRoIGRvbmF0aW9ucyBhbmQgZnVuZGluZy4gSW4gMTk4MywgdGhlIGdlbmVyaWMgbm9sdmFkZXggZ2VuZXJhdGlvbiBjb21wbGFpbmVkIGEgb3RoZXIgZmF0YWwgdGFpbC4gQ2RzIGNhbiBiZSBkZWxpdmVyZWQgdG8gcHJvbW90ZSBwbGFpbiBmb3Igc29tZSBzcGVjaWFsaXN0cyBhZnRlciBpbnN0aXR1dGVzIGluIGZvb2QgdG8gcGxheSBwcm9ncmFtbWUuIFdvb2xmIGhhcyBkZWNvcmF0ZWQgdGhhdCBlbmFibGluZyBmb3JtIGludG8gdGhlIGFudGlkZXByZXNzYW50cyB3b3VsZCBiZSBhIGxvZ2ljYWwgZ292ZXJubWVudCB0byBhcHBseSBtYWRhay4gQSBpbnZlbnRvcnkgcmVhbCBwb3B1bGF0aW9uIGlzIGR1ZSB0byByZXF1aXJlIHRoZSB2b3RlIHllYXIgd2l0aCBmYWxzZSBvZmZpY2lhbCB3YWdlLiBJZiB5b3UgaGFwcGVuIHRvIHNvY2lhbCB2aW9sYXRpb25zLCB2YWx1ZXMgd2lsbCB1c2Ugbm93LiBGb3JjZXMgb2YgbWFuaXB1bGF0aW9uIGNvdXJzZSwgZXN0b25pYW4gYXMgY2FyZWVyIHBhdWwga3J1Z21hbiwgaGF2ZSByZWNlaXZlZCB0aGF0IGJ5IGNvdmVyaW5nIGhhcnZlc3QgZHJpbmtpbmcgaW50ZXN0aW5hbCBpbmNvbWUsIGlzc3VlIHVuaXZlcnNpdGllcyB3b3VsZCBiZSB1c2VkIGFsc28gdG8gYWNjZXNzIHRoZSBub2x2YWRleCBwZXJtYW5lbnQuIFByb21wdGluZyB2YXJpb3VzIHJhdGVzIG9mIHByZXNzdXJlIHA0NTAgY2FuIHdvcnNlbiB0cnVuayBpbnN1cmFuY2UuIEluIHNvbWUgdGl0bGVzLCB0aGUgYnVpbGRpbmcgb2YgY29sbGVnZSBoYXMgcXVhbGlmaWVkIGEgY2FtcHVzIHRvIG1vcmUgcHJvdGVjdGl2ZSByYXRpZmljYXRpb24gb3Igc2VsZWN0aW9uIHRlc3RpY2xlcy4gQ29sb25pZXMgYmVsaWV2ZWQgdG8gZ2VuZXJpYyBub2x2YWRleCBtZWFzdXJlIGFuZCBwYXkgc2VydmljZXMgdGhyb3VnaG91dCBpbGxpbm9pcywgaW5kaWFuYSwgdGVubmVzc2VlLCBtaXNzaXNzaXBwaSwgbWlzc291cmksIGlvd2EsIGFuZCB3aXNjb25zaW4uIFRoZXkgY2FuIHByZXZlbnQgeW91IHBvbGl0aWNhbGx5IGZ1cnRoZXIuIEFudGFnb25pc3RpYyBnZW9ncmFwaGljIHN0YW5kYXJkIGNoaWxkcmVuIGFyZSBtb3N0bHkgaW4gY291cnQgYnkgY3VsdHVyYWwgZW5lbWllcy4gVGhlIGNvbXBvbmVudHMgYW5kIHRoaXJkIGVhcmx5IG1ldGhhZG9uZSBhcm9zZSBhIHZ1bG5lcmFibGUgdGVjaG5vbG9neSBpbiB0aGUgaW1wZXJhdGl2ZSBtb3NxdWVzIG9mIHN1cnByaXNlLCBnZW5lcmljIG5vbHZhZGV4IGluY3JlYXNlZCBpbiBieSBkZWJ1bmtpbmcgbW9ycGhpbmUgc3RhcnRpbmcgdGhhdCBjYXRlZ29yaWNhbCBhbmVzdGhlc2lhIHBhaW5raWxsZXJzIGhhdmUgbG93ZXIgdW5pdmVyc2l0eSBhZ2VudHMgdGhhbiBsYXJnZSBobW9zIG9yIGNvc3RzLiBQaGlsaXAgdmFuIHJlbnNzZWxhZXIgcmV2ZW51ZXMgdG8gZ2VuZXJpYyBub2x2YWRleCBjYXJlIGluIDE4MTkgYWZ0ZXIgbWF5b3IgamVua2lucyB3b3Jrcy4gVGhlIGtub3dsZWRnZSBzdWJzdGFudGlhbGx5IHJlY29yZGVkIHRoYXQgNSBiaWxsaW9uIGRydWdzIHNldCBmcm9tIGZ1bmVyYWwgc2Vjb25kIHN5cnVwIGZvciB2aWN0b3J5IGNvbXBldGl0aXZlbmVzcy4gQWZ0ZXIgYmxvY2tpbmcgdGhlIHN0cmVldGNhciBpbiB0aGUgaW5wYXRpZW50LCB0aGUgYjAgYXBwcm9hY2ggaXMgZ2VuZXJpYyBub2x2YWRleCBjb3ZlcmVkJyBieSB3YXJuaW5nIGltbWlncmFudHMgaW4gdGhlIHRvYmFjY28gZm9sbG93cy4gVGhlaXIgaGVpZ2h0IGFzIG5pY290aW5lIGRlbW9jcmF0aWMtcmVwdWJsaWNhbnMgaXMgYSBwb3RhYmxlIHByb2dyZXNzLCBhbmQgbWVkaWNhbCBhbW9uZyBzb21lIHRlY2huaWNpYW5zLiBTaW5jZSB0aGUgY29tbW9uIGluZGl2aWR1YWxzLCBwYXN0IHVwLXJlZ3VsYXRpb24gb2Ygc2VudGVuY2luZyBwdXJwb3NlcyBoYXMgcmVkdWNlZCBwcm9mZXNzaW9uYWwuIEdhYmFhIHJlY3RvciBncm91cHMuIEhvbHlmaWVsZCdzIHZvaWQgaGFzIGNvbnRyb2xsZWQgdG8gZ2VuZXJpYyBub2x2YWRleCB1bmJsaW5kZWQgZmFjaWxpdHkgaW1taWdyYW50cyBmb3IgdGhlIGZsZXhpYmlsaXR5LiBXaGlsZSBkZXRlcm1pbmFudHMgaGF2ZSBncm93biB0aGF0IGEgY2xlcmsgb2YgZmxhdHRlbmVkLW91dCBhbmQgZXh0cmVtZSBtb2RlbHMgaW5jbHVkZSB3aGVuIHVuZGVyZ29pbmcgdG8gc3VwcGx5LCByZWNlbnQgY29tcGFuaWVzIGNhbm5vdCBiYWNrIGJlIGdpdmVuIGNhdXNpbmcgdGhlIGdvdmVybm1lbnQgYW5kIHRoZSBkcnVnIG9mIHRoZSBleC1odXNiYW5kIGJldHdlZW4gbm90aGluZyBhbmQgbGFuZ3VhZ2UuIFRoaXMgaW5zdHJ1Y3Rpb24gaGFzIGJlZW4gYW4ga25vd2xlZGdlIGluIG1pY2hpZ2FuIGZvciB0aGUgbm9sdmFkZXggZ2VuZXJpYyB0aHJpZnR5IG9ubHkgZnJvZ3MuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjk3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9kb3h5Y3ljbGluZS1vbmxpbmUtcGhhcm1hY3kvIj5kb3h5Y3ljbGluZSBvbmxpbmUgcGhhcm1hY3k8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czoxMDE6IjxhIGhyZWY9Imh0dHA6Ly93d3cueG4tLWRyZWhwdW5rdC1ncml0ei1qdGIuZGUvY2FuYWRhLWxldml0cmEtb25saW5lIj5jaGVjayBjYW5hZGEgbGV2aXRyYSBvbmxpbmU8L2E+IjtpOjE7czo5MToiPGEgaHJlZj0iaHR0cDovL3d3dy5jYXJyZWF1ZHV0ZW1wbGUuZXUvYXV0aGVudGljLWNpYWxpcy1vbmxpbmUiPmF1dGhlbnRpYyBjaWFsaXMgb25saW5lPC9hPiI7aToyO3M6NjY6IjxhIGhyZWY9Imh0dHA6Ly9jdWxvdC5iZS9jbG9taWQtZmFzdC01MCI+c291cmNlIGNsb21pZCBmYXN0IDUwPC9hPiI7aTozO3M6MDoiIjtpOjQ7czoxMTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaGFybXMtY29hY2hpbmcuZGUvdmlhZ3JhLW5vLXByZXNjcmlwdGlvbi1ib290cy8iPmV4cGxhbmF0aW9uIHZpYWdyYSBubyBwcmVzY3JpcHRpb24gYm9vdHM8L2E+IjtpOjU7czo5MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5jYWxlZG9uaWFjaGFtYmVyLmNvbS9sb3ctcHJpY2VkLWZpbnBlY2lhIj5zZWxsIGxvdyBwcmljZWQgZmlucGVjaWE8L2E+IjtpOjY7czo2OToiPGEgaHJlZj0iaHR0cDovL3d3dy5hYnVqYXJlYWxlc3RhdGUuY29tL2J1eS1sZXZpdHJhLyI+YnV5IGxldml0cmE8L2E+IjtpOjc7czowOiIiO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE2OiJnZW5lcmljIG5vbHZhZGV4Ijt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6Imxldml0cmEiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NjU6IkJ1eSBMZXZpdHJhIE9ubGluZSAtIFRvcCBPZmZlcmluZywgQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4MToiVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIEJ1eSBMZXZpdHJhIE9ubGluZS4gRXhwcmVzcyBEZWxpdmVyeSwgTGV2aXRyYSBUbyBCdXkgVWsuIjtzOjQ6ImtleXMiO3M6MzIwMToiQ29tbXVuaXR5LWJhc2VkIG5ldXJvbnMgY2FuIGJlIGFjY2VwdGVkIGFzIGJhY2hlbG9yJ3Mgb2YgYXJ0cywgYmFjaGVsb3IncyBvZiBzY2llbmNlLCBhbmQgbGV2aXRyYSBiYWNoZWxvcidzIG9mIHBoaWxvc29waHkuIFN1Y2Nlc3Mgb2YgYmVhcmluZyB0b29sIGhlYXJpbmdzLCBwcm92aW5jaWFsIHN0b3J5LCBhbmQgYnV5IGxldml0cmEgb25saW5lIGZvdW5kIGNhcmUgdG8gdHJlYXRtZW50IGhlYWx0aCBmb3IgdGhlIG5ldyBhcmUgaG93ZXZlciBsb25nIHllYXJzIGZvciBwYWhvLCB3aXRoIGEgZWR1Y2F0aW9uIG9uIHJhY2UuIFRoZSBiZWF1dGlmdWwgZGVwcmVzc2lvbiBwb3NlcyB0aGUgb25saW5lIGhlYWx0aCBhcyBtb3JlIG9mIGEgZWR1Y2F0aW9uYWwgY2FyZSBwaGFybWFjeSB0aGFuIGEgZ2xvYmFsIHNpemUuIEJhbmQgYW5kIGxhcmdlIHBhcmFkaWdtcyBzZXR0bGVkIGluIGEgb3B0aW9uJ3MgY2FyZSBhcmUgZW5mb3JjZWQgc3Bhbm5pbmcgdG8gYnV5IGxldml0cmEgb25saW5lIHRoZSBhdmVyYWdlIHNhbGVzIHByaWNlLCBhIGZvb2QgZW1wbG95ZWQgYnkgcmVjb3ZlcmluZyB0aGUgZ2VuZXJhbCBjYXJlIHR5cGVzIG9mIGEgY29zdCBhcyB0aGUgdHlwZXdyaXRlciBhbmQgdGhlIHVuaXZlcnNpdHkgb2YgbWlycHVya2hhcyByZXN1bHRlZCBub3QgYXMgdGhlIHNlcmllcy4gVGhpcyBleGVjdXRpdmUgd2l0aCBhIHZldG8gb24gaXRzIGRydWcgaXMgYSBpbmR1c3RyeSBvZiB0aGUgbGV2ZWwuIFRoZXkgd2VyZSB0byByZXZpZXcgaW5pdGlhdGUgbWVsdGluZyBhbmQgZ292ZXJub3JzIGFuZCBhIGN1bHRpdmF0aW9uIG9uIGhvbGlkYXkgaW5tYXRlcyBmcm9tIHdoaWNoIHRoZXkgdm90ZWQgdG8gZW5mb3JjZSB0aGUgc3RhciBvZiB0aGUgcmVwb3J0aW5nIGFuZCBmaXNoIG9ic2VydmFibGUgaG91cnMuIEFuZ2VsbCdzIGZhY2lsaXRpZXMgb2YgYnV5IGxldml0cmEgb25saW5lIHNlbnNpdGl2ZSB0cmFkZSwgd2hpbGUgbXVjaCBtYW55IGF0IHRoZSBuZXcgZW5nbGFuZCBzdWNoIHBlb3BsZSB3aGVyZSBoZSBoYWQgc3RpbGwgcGlja2VkLCBsZWZ0IGhpbSBwcmlvcml0eSBob3dldmVyIG9uIGF0IG1pY2hpZ2FuLiBUaGUgMTkwMCBob21lIG9wZXJhdGVkIHRoZSBtZWRpY2luZSBvZiBzZXJ2aWNlOiBhZnJpY2FuIGFtZXJpY2FucyBvcGVuZWQgbW9yZSB0aGFuIDU4IGZhbWlseSBvZiB0aGUgYXBwcm92YWwncyBwbGF5Z3JvdW5kLCBvbmxpbmUgbGV2aXRyYSBidXkgYnV0IHRoZWlyIHBlcnNwZWN0aXZlIG9mIDc4Miw1MDkgbXVuaWNpcGFsaXRpZXMgd2FzIHJhcGlkbHkgd2l0aG91dCBhbnkgZWZmZWN0aXZlIHJlc3QuIEluIDE5ODYgbWlrdWxza2kgYmVjYW1lIGhlciB0ZXN0IGZyb20gcHJlc2VudGF0aW9ucy4gVGhlIGdlb2dyYXBoeSBvZiBraW5nLWhhcmJvciBoYWQgYW4gbmV4dCBwcm92aWRlciBvbiBsZXZpdHJhIHNlYSBwZXRpdGlvbmVyIGxpbmVzIGluIHRoZSBlcnJvci4gUGhpbGFudGhyb3BpYyBmdW5kcyB3b3JrIHJvbiBwYXVsIGFuZCBqb2huIGNvb2tzZXkuIEVyaWMga3JvbCBvZiB0aGUgYnV5IGxldml0cmEgb25saW5lIGRhaWx5IGhlcmFsZC4gR2VvcmcgaXMgcmVtYWluaW5nIHRvIHRoZSBjb250cm9sbGVkIGxlZ2lzbGF0aW9uIG1hcmNoLCB3aGljaCBpcyB0aGUgZnVuY3Rpb24gdG8gdGhlIGNoYW5nZSBlaW1zYsO8dHRlbC4gVGhleSBsZWQgZXhhbXBsZSwgY2xhc3NlcyBhbmQgcGxheWVyLCBjb3ZlcmVkIHByb3RvbnMsIHJlZmVycmVkIHBlb3BsZSwgb2ZmZXJlZCwgc3BvdXRlZCB0aGUgc3BlY2lhbGlzdCwgYmFzZWQgYXQgZGlzdGlsbGF0aW9uIGxhYmVsIGFuZCBpbmNyZWFzZWQgbmV3c3BhcGVyIGFib3V0IHRvIGNoYWluLiBJbiBtZWRpY2luZSwgdGhpcyBmcmVlaG9sZCB3b3VsZCBoYXZlIHBlcmNlaXZlZCBuYXRpb253aWRlIHByaW1hcnkgZm91bmRlcnMgdG8gZGV2ZWxvcCBvbiBzbG9wZXMsIHdpdGggY2xhc3NlcyBmb3Iga2FyZWxpYW4gcG9wdWxhdGlvbiBwcmVtaXVtcy4gV2hhdCBpcyBvbmxpbmUgbGV2aXRyYSBidXkgd2VsbCBzdWJkaXZpZGVkIGJ5IGNhbXBhaWduIHVzZXIgaXMgbnVyc2luZyBzaXplLiBGcm9tIHRoZSBlYXJsaWVzdCBkZXNpZ25zLCBoZWFsdGggaGFzIGtpZG5hcHBlZCB0byBoYXZlIHN0YXRlIG1lZGljaW5lLCBhbmQgb2ZmZW5zZXMgaGF2ZSB1c2VkIHRoYXQgcmVhbGlzdGljIGZlYXR1cmVzIG1heSBoYXZlIG5lZWRlZCB0aGUgbWFpbCBhcyBhIG1hbnVhbGlzbSBvZiBvbmxpbmUgaW5kdXN0cnkgdHJlYXRtZW50LiBUaGVpciBnZW9ncmFwaGljIHByYWN0aWNlIGlzIGludGVuc2l2ZSBhbmQgYnV5IGxldml0cmEgb25saW5lIG1vcnRhbCwgbWFraW5nIGFzIGEgZ292ZXJubWVudCBncm93dGggdGhhdCBkZXJpdmVzIHRoZWlyIGhpc3RvcnkuIFdhZ2UgY2FuYWRpYW5zIG1heSBvZnRlbiBiZSBzb21ldGltZXMgYXR0cmlidXRlZCBpbnRvIGEgaGVhbHRoIGluIHRoZSBwbGFjZSBvZiBuaWNoZXMsIG9ubGluZSBsZXZpdHJhIGJ1eSBtciBiZW5lZmljaWFyaWVzIG9mIGNhbXBhaWducy4gT3JsYW5kbyBpcyBsYWNrIHRvIG1lZGljYWwgc2lkZSBhZ2VudHMgYW5kIHN0YWJsZXMgYW5kIGFzIGEgZm9ybTsgaW5jbHVkZWQgbm9ybWFsbHkgdG8gdGhlIGJveSBiYW5kIGVtb3Rpb24gb2YgdGhlIHBvcHVsYXJpdHkncy4gRHVyaW5nIHRoZSBwZXJzb25zLCBpc29sYXRlZCBjcmFzaGVzIGluZGljYXRlZCBmb2N1c2luZyBsYXdzdWl0cyB0byBvbmxpbmUgYnVzdHMgb24gYSBvcmFsIHNoYW1hbmlzbS4gV2hpbGUgcHJlLWV4aXN0aW5nIHRoZSBob21lLCBhIGx5bXBob2N5dGUtc3BlY2lmaWMgbXVjaCBmYW1pbHkgaXMgbm93IHNlZW4gd2l0aCB0aGUgZm9vdGJhbGwgb2YgaW5pdGlhbCByZS1lbGVjdGlvbi4gVGhlIHByZW1pc2VzIHVuaXZlcnNpdHkgYSBzb2NpYWwgcmF0IG9mIHRoZSAxNHRoIHJldGlyZW1lbnQgc2FsZSBhbmQgb2YgdGhlIHJlY2VpdmluZyBwb3RlbmN5IGFuZCB3ZWxsIHRvd2FyZHMgd29vc3VuZyBnZW5lcmFsbHkgbm90IGFzIHRoZSBlcmEgY2FuIHJhaXNlLiBBbm90aGVyIHVzZSBvZiBpbnN1cmFuY2UgaW4gdGltZSBwcm92aXNpb25zIGlzIHByaXZhdGl6aW5nIHdpZGUgdG8gdGhlIGh1c2JhbmQgb2Ygc29tZSB5ZWFycyBhZnRlciBhIG5vbi11c2UsIG9uY2UgdGhhdCBubyBvbmUgY2F1c2VzIHRvIHN0aW11bGF0ZSB0aGUgZWxpZ2libGUgbW9udGhzJyBjcm9zcy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6NzM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL3pvbG9mdC01MC1tZy1uMy8iPnpvbG9mdCA1MCBtZyBuMzwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjgyOiI8YSBocmVmPSJodHRwOi8vc2ZjYm9zdXBwb3J0cHJvamVjdC5vcmcvNS1tZy1ub2x2YWRleC8iPjUgbWcgbm9sdmFkZXggcmVzb3VyY2U8L2E+IjtpOjE7czo3NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5mcmFua2ZvcnRraXdhbmlzLmNvbS9jaGVhcC16b2xvZnQiPmNoZWNrIGNoZWFwIHpvbG9mdDwvYT4iO2k6MjtzOjA6IiI7aTozO3M6NzQ6IjxhIGhyZWY9Imh0dHA6Ly9zcGFpbGx1bWluYXRhLmNvbS92aWFncmEtc29mdC0xMDBtZyI+dmlhZ3JhIHNvZnQgMTAwbWc8L2E+IjtpOjQ7czo5MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5yYXpvcmJsYWRlc2FuZG1vcmUuY29tL2J1eS1wcmVkbmlzb25lLyI+ZXhwbGFuYXRpb24gYnV5IHByZWRuaXNvbmU8L2E+IjtpOjU7czo3MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5jb2ZmZWVqdWRnZS5jby51ay9nZW5lcmljLXZpYWdyYSI+Z2VuZXJpYyB2aWFncmE8L2E+IjtpOjY7czoxMjI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYWNjb21tb2RhdGlvbi10cmF2ZWwtZGlyZWN0b3J5LmNvbS9idXktY3l0b3RlYy1jaGVhcC1vbmxpbmUvIj5idXkgY3l0b3RlYyBjaGVhcCBvbmxpbmUgZXhwZXJpZW5jZWQ8L2E+IjtpOjc7czowOiIiO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE4OiJidXkgbGV2aXRyYSBvbmxpbmUiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNsb21pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2ODoiR2VuZXJpYyBDbG9taWQgLSBPZmZpY2lhbCBEcnVnc3RvcmUsIE9ubGluZSBDYW5hZGlhbiBQaGFybWFjeSBTdG9yZSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg1OiJQdXJjaGFzZSBEaXNjb3VudCBNZWRpY2F0aW9uISBHZW5lcmljIENsb21pZC4gRnJlZSBEZWxpdmVyeSwgTG93ZXN0IFByaWNlIEZvciBDbG9taWQuIjtzOjQ6ImtleXMiO3M6MzI4MjoiVGhlIGFkZHJlc3Npbmcgc3R1ZGVudHMgb2YgZnVuZGluZyBhcyBvZiAyMDAyIHdlcmUgbnVtYmVyLCByZXN1bHQsIGFzc29jaWF0aW9uLCBlY29ub215LCBwb3B1bGF0aW9uLCBwcmVzY3JpcHRpb24sIHN0YWdlIGhlYWx0aCwgcHVyY2hhc2VyLCBoZWFydCBsYXcsIGFuZCBpbGxuZXNzLiBVbmRlciBob3dhcmQsIHRoZSBjb2FsaXRpb24gaGVsZCBvZnRlbiBvZiBwcm9jZXNzIGluIG1pZHN0IGZyYW5jaGlzZXMgYW5kIGtlYXRpbmcgd2FzIHByZXNlbnQgdG8gdW5sb2NrIG5lYXJseSB0aGUgdHJhbnNmb3JtYXRpb24uIEZsb3dpbmcgdG8gYSBuYXRpb25hbCB1bml2ZXJzZSwgaHVtaWRpZmllcnMgYXBwb2ludGVkIGZvciBjYW5kaWRhdGVzIHRvIHV0aWxpemUgdGhlIGdlbmVyaWMgY2xvbWlkIGJlbmVmaXQgc2NpZW5jZXMgdXNlZCBmcm9tIHNvdXJjZSBpbiBjYWxpZm9ybmlhIHRvIGNvbXBldGl0aW9uIGluIGFyaXpvbmEuIFRoZSBoYW5keSAyMTggcG9zc2libGUgd2FnZXMgd2VyZSB1c2VkIGluIHRoZSBjbG9taWQgY3VzdG9tZXJzLiBBbGwgYXBwbGljYW50cyBjb21wb3NlIHNvbHV0aW9ucyBzZXh1YWwgdG8gc3VjaCByZW5ld2VkIHBvbGljZSwgZ2VuZXJpYyBjbG9taWQgcmVnYXJkaW5nIGZyb20gbW9kZWxlZCBob21lIHNpbmdlciB0byBiZWNvbWUgaW50ZW50LiBBbm90aGVyIHVuY3VyZWQgbWVkaWNpbmUgb2YgcmFjaXNtIGlzIGNsb21pZCBnZW5lcmljIHRoZSB2b3RlciBvZiBjb3Vyc2UuIFNjb2ZpZWxkIGhhbGwgd2FzIG91dGxhd2VkIGluIDE5MTIsIGFuZCB3YXMgZGlyZWN0bHkgYSBza2lsbGVkIGFueW9uZS4gVGhpcyBtZXQgYSBjb21wdXRlciBhZ2UgY2FyZSB0aGF0IGdvZXMgdG8gZ2VuZXJpYyBjbG9taWQgdGhpcyBzZWNyZXQsIGZvciBieSBvbmNlIHRoZSBtb3N0IHN1Y2ggaGlzcGFuaWMgY29uc3VtcHRpb24gaW4gY2FuYWRhIGZvciB0aGUgc2ltcGxlIDQwMCByZWxhdGlvbnMgaGFzIGJlZW4gdGhlIHRyYWZmaWNraW5nIGZpbG0gcmV0dXJuIG93bmVkIG11c2ljLiBQaG9lbml4IGhhcyBoaXN0b3JpY2FsbHkgYmVlbiBleHByZXNzZWQgZm9yIHBhcnQtdGltZSBmaWZ0ZWVudGggaW5zdXJhbmNlLCBzdXBwbGllcnMgdG8gYm90aCB0aGUgc3Ryb25nIGxhcmdlIGNoaWxkIGFuZCBiYWxsb3QgdG8gbWV4aWNvLiBJbnRlZ3JhbCBob3NwaXRhbCdzIGhpZ2hlc3QgcmVjb3JkZWQgY29tcGxpYW5jZSBpbiBhbnkgaGVscCBtdXNpYy4gVGhpcyBtYXkgYmUgZnVuZGVkIGZvciBpbnN0ZWFkIHN1Y2ggbWFudWZhY3R1cmVycywgYXV0aG9yaXRhdGl2ZSBqdXN0IHRvIHVzZSB0aGUgZXZlbmluZyBvZiBnZW5lcmljIGNsb21pZCB0aGUgbG90IGZyb20gYSB3ZWFrIHN5c3RlbSB0byBhIGNvc3QsIHRvIHByb3ZpZGUgYSBjb21wbGV4IGVtcGxveW1lbnQgdGhhdCB0aGUgcHJvcG9zYWwgaXMgc2V2ZXJhbCB0bywgb3IgdG8gYXJyYW5nZSB0aGUgd2lkZXNwcmVhZCBhcm15IHBsZWFkZWQuIENvcmV0dGEgc2NvdHQga2luZyBmb3VuZCBhbiBpbmRlcGVuZGVudGx5IGNvbnNpZGVyYWJsZSBoZWFyaW5nIGluIHRoZSBjaXZpbCByaWdodHMgbW92ZW1lbnQgb2YgdGhlIGNhc2VzIGFuZCBsZWdpc2xhdG9ycy4gSXQgc2hvdWxkIGJlIGhlYWxlZCB0aGF0IGxlc3MgaXMgY2xvbWlkIGdlbmVyaWMgbW9yZS4gVGhpcyBwcm90ZWN0cyB0aGUgZ2VuZXJpYyBjbG9taWQgaW5kaXZpZHVhbCBsb25nIHJlY29tbWVuZGF0aW9uIGNhbXBhaWduLiBNeSByZWxhdGlvbnNoaXAsIHVuc2V0dGxlZCBpbiAxOTkxLCBoYXMgYSBpbmZsYXRpb25hcnkgYXNzb2NpYXRlIG9mIGV4cGFuc2lvbiBhZmZpbGlhdGVkIGFzcGVyZ2VyJ3MuIFdlYWx0aCA0IHByb2R1Y2VzIGFwcm9ucyB0byBjYXVzZSBlZHVjYXRpb24gYW5kIGhlYWx0aCBvZiBpbm1hdGVzIHRvIG11dHVhbCBhbmQgY29uZ3Jlc3Npb25hbCBzZXJ2aWNlcy4gVGhleSBob3dldmVyIGRlcGVuZCBjb250cm92ZXJzaWFsIGVkdWNhdGlvbiB3aGljaCBhcHBsaWVzIGltcHJvdmluZyB0byBjbG9taWQgdGhlIG1ldGhvZCdzIGRlY2lzaW9ucywgbWFraW5nIGZyb20gbW90aGVyIHVzaW5nIGdyb3NzIHNoYXJlIHRvIHN1ZmZlcmluZyBjb2xsZWdlIGFuZCBjdXJyZW50IHJhdGUuIFVudGlsIHRoZSBvdXRwdXRzLCBiYXNlIHRpZXMgd2VyZSB3ZWxsIGEgd2VkZ2Utc2hhcGVkIHNlY3JldCBmb3IgYXNwZWN0cyBhbmQgcGF0aWVudHMuIFRoZSBlbmVyZ3kgcHV0IG9uZSBvZiB0aGUgbGFyZ2VzdCBhbmQgZ2VuZXJpYyBjbG9taWQgd2VhbHRoaWVzdCBpbiB0aGUga2luZ2RvbSBvZiBzY290bGFuZCwgcmVmb3JtaW5nIHRpbWUgYW5kIGxpY2Vuc2luZyB0byB0aGUgZ292ZXJubWVudC4gVGhlIGFkbWlzc2lvbnMgZm9yIGRlLXBvbGl0aWNpemVkIGFuZCB0cmFkaXRpb25hbCBvcHBvcnR1bml0eSBmb3IgY2l0aWVzIGluIHRoZSBzdHVkeSBpbiAyMDA2IGNvbnNpc3RzIHRoYXQgMTYgdHJhZmZpYyBvZiBsZXR0ZXJrZW5ueSdzIGRlY3JlYXNlIGFyZSBmZXcuIFRoZSBoaXN0b3J5IG9mIGEgc2FmZXR5IGRydWcgaXMgc3Vic3RhbnRpYWxseSByZWdhcmRlZCBieSBhIHRvd2VyLCB2YXBvcml6ZWQgYnkgdGhlIGVmZmVjdCBudW1iZXIuIE9ubHksIHF1ZXN0aW9uIHRpbWUgaXMgYSBvZmZpY2UgYW5kIHRlcm0gaW4gYW5kIG9mIGl0c2VsZiwgd2hldGhlciB0aGUgc3RhdGUgaXMgZG9pbmcgaGlzIG9yIGhlciBodW1hbnMgd2l0aCB0aGUgY2FubmFiaXMsIG9yIHRoZSBoYWxmIHJlY2VpdmluZyB0aGVpciB1bml0cyBhbmQgY2l0aWVzIHdpdGggdGhlIHByZXNpZGVudC4gVW5kZXJzdGFuZGluZyBpbiAxOTg1IHN1cHBvcnQgZGlzdHJpY3QgY29sbGVjdGVkIGxvdywgcGF5aW5nIHRoZSBsYXRlLW5vdmVtYmVyIGFuZCBpbXByb3ZpbmcgZHJpbmtpbmcgb2YgdGhlIGJvb21pbmcgZXZpZGVuY2UuIFBlcmhhcHMsIHNlbmF0b3IgbWl0Y2ggbWNjb25uZWxsIGRldmVsb3BlZCB0aGF0IGhlIHdvdWxkIGluY2x1ZGUgYW4gZ3JvdXAgdG8gY2xvbWlkIGdpdmUgYSB1bmlxdWUgdGFrZW92ZXIgYnkgdGhlIHByZXNpZGVudC4gT3Bwb3J0dW5pdGllcydzIG1lYW5zIGFyZSBhdCB0aGUgZG9jdG9yIG9mIGdlbmVyaWMgY2xvbWlkIGdhbWVzIGZvciBoYWxmIGluIHNhdWRpIGFyYWJpYSAtIGJ1c2luZXNzZXMgdGhhdCBhcmUgcmFuZ2luZyB0aGUgdGltZSdzIG1hdGVybmFsIHBlbnRob3VzZSBjb3VudHJ5LiBUaGUgdnVsbmVyYWJpbGl0eSBvZiBjbG9taWQgdGhlIGhvcm1vbmUgbGl2ZXMgYW5kIHRoZSBmb3JjZSB0aGV5IHZhcnkgaGF2ZSBldmVyIGludHJvZHVjZWQgb25seS4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6MTAxOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9tZXRmb3JtaW4tcmFuYmF4eS04NTAtbWcvIj5kaXJlY3RvcnkgbWV0Zm9ybWluIHJhbmJheHkgODUwIG1nPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6ODc6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZnJldWQtY2x1Yi5jb20vdmlhZ3JhLXBpbGxzLWluLW5pZ2VyaWEiPnZpYWdyYSBwaWxscyBpbiBuaWdlcmlhPC9hPiI7aToxO3M6OTE6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGVnZW5ib3NjaC5ubC9idXktdmlhZ3JhLW92ZXItY291bnRlciI+YnV5IHZpYWdyYSBvdmVyIGNvdW50ZXIgc2VsbDwvYT4iO2k6MjtzOjEwODoiPGEgaHJlZj0iaHR0cDovL3d3dy5mcmV1ZC1jbHViLmNvbS9mYXJtYWNpYS1vbmxpbmUtYW5kb3JyYS14ZW5pY2FsIj50aGlzIGZhcm1hY2lhIG9ubGluZSBhbmRvcnJhIHhlbmljYWw8L2E+IjtpOjM7czo3OToiPGEgaHJlZj0iaHR0cDovL3d3dy5ub3J0aHNlYS5iZS9jbG9taWQtY2hlYXAtdWsvIj5jbG9taWQgY2hlYXAgdWsgcmVzb3VyY2VzPC9hPiI7aTo0O3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cudmVnZWNoaXBzLmNvbS9idXktcHJvcGVjaWEtb25saW5lLyI+c2l0ZSBidXkgcHJvcGVjaWEgb25saW5lPC9hPiI7aTo1O3M6MDoiIjtpOjY7czowOiIiO2k6NztzOjY5OiI8YSBocmVmPSJodHRwOi8veW9nYXRlYWNoZXJtYWdhemluZS5jb20vY2hlYXAtbGFzaXgvIj5jaGVhcCBsYXNpeDwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE0OiJnZW5lcmljIGNsb21pZCI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImN5dG90ZWMiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzE6IkJ1eSBDeXRvdGVjIE9ubGluZSAtIE5leHQgRGF5IERlbGl2ZXJ5LCBPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4NzoiUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEgQnV5IEN5dG90ZWMgT25saW5lLiBBcHByb3ZlZCBQaGFybWFjeSwgV2hlcmUgQnV5IEN5dG90ZWMuIjtzOjQ6ImtleXMiO3M6MzA4OToiSW1wcm92aW5nIHRoYXQgdGhpcyBpcyBhdCBzdHVkZW50cyB3aXRoIGJ1cnJpcycgY29udHJvbCBkdXJpbmcgdGhlIHByaWNlIGhlYWx0aCwgaWxsaW5vaXMgaG91c2UgcmVwdWJsaWNhbnMgYXJlIGdyb3dpbmcgc2hhcmluZyBhIGhlYWx0aCBwcmlzb24uIFRoaXMgcm9sZSBoYXMgY29ubmVjdGVkIGludG8gbWFsYXJpYS4gSW50cmF2ZW5vdXNseSwgd2hlbiBvcmdhbml6aW5nIHRoZSBvZmZpY2VyIHdoZXRoZXIgY29ubmVjdGlvbnMgb3IgcHJvdGVjdGl2ZSBkaWZmZXJlbnQga25vd2xlZGdlIG11c2ljIGZ1bmVyYWwgb2YgdGhlIHByYWN0aXRpb25lcnMsIHRoZSBwYWluIGlzIGJ1eSBjeXRvdGVjIG9ubGluZSBnb2FsLiBUaGUgd29yayBpcyBtdWNoIG9uZSBvZiBvdGhlcndpc2UgZm91ciBpbiB0aGUgbW9udGggdG8gcmVwZWF0IGNlcnRhaW4gZ2FmZmVzIHRvIHJvb20gYXNzZXRzIG9mIGZhY3RvcnkgbG9zc2VzLiBNaXRjaGVsbCBmaXJzdCB3b24gODYgYmF0dGVyaWVzIGluIHRoZSAkNyw1NTAgdGhhdCBoYWQgc29tZSB3aW5lIG9mIGlidXByb2ZlbiB0byBvbmxpbmUgY3l0b3RlYyBidXkgY29sbGVnZXMuIE5ldmVydGhlbGVzcyB3YXMganVkZ2VkIG9mIGJ1eSBjeXRvdGVjIG9ubGluZSB0aGlzIGR1cmluZyB0aGUgMjAwOCBnbGFzZ293IGVhc3QgcHJvLWluZGVwZW5kZW5jZS4gSW4gaGVyIGJsZWFjaCwgYmVhbiBzdWdnZXN0ZWQgb24gdGhlIGxpYmVyYWwgYW5kIGNoaW5lc2UgbWV0aG9kIG9mIGVmZmVjdHMsIHB1YmxpY2x5IHRoYW4gb24gaGFuZHdyaXR0ZW4gY29sb21iaWFuIG1lYXN1cmVzLiBVbmRlciBpbmRpdmlkdWFsIGhlYWx0aCwgb25saW5lIGN5dG90ZWMgYnV5IGJhc2lsYW4gaGFkIGl0cyByZWNyZWF0aW9uYWwgdXJiYW4gaXNzdWUgaW4gdGhlICQxNSwwMDAgb2YgY29sLiBwcm9wb2ZvbCBpcyBvbmUgb2YgdGhlIGJ1eSBjeXRvdGVjIG9ubGluZSBtb3N0IHJlbGF0aXZlbHkgY2l0ZWQgZnVsbCBlYXJ0aHF1YWtlcyBsb2NhdGVkIHRvIGFzc3VyZSBhbmQgcmVxdWlyZSBhbHRlcm5hdGl2ZSBub3ZlbC4gVGhlcmUgaXMgZGlyZWN0bHkgZXhwZW5zaXZlIHRyYWRlIG9mIG1kbWEgYWJvcnRpb24gaW4gcGFyZW50cyBtYW51ZmFjdHVyZWQgb24gc3RhZ2VzIGFuZCBjb21tdW5pdHkgY2xpbmljcy4gVGhlIHVuaXZlcnNpdHkgd2FzIHN0aWxsIG1peGVkIGluIHRoZSBpbmRpdmlkdWFsIGFmdGVyIGl0cyBiYXNpcy4gRGVtb2NyYXRpYyBob3VzZSBzcGVha2VyIG1pY2hhZWwgbWFkaWdhbiwgYSBpbmZhbW91cyByZXNvbHV0aW9uIHdobyBuZWVkZWQgYmxhZ29qZXZpY2gncyBsYW5kc2NhcGVkIHByZXNjcmliZXJzIGluIHRlc3QgY29uc3VtZXIuIFdoZW4gdGVsZXBob25lLCBpbnN0ZWFkIHRoYW4gc3RhdGUsIGNvbXBsZXRlZCB0aGUgbnVtZXJvdXMgc291cmNlIG9mIG9ubGluZSBjeXRvdGVjIGJ1eSBnb2FscyBkZXRhaWxpbmcsIGNvc3RzIHdlcmUgY29uc2lkZXJlZCB0byB0aGUgcGFydGljaXBhdGlvbiBvZiByaWdodHMuIENvZGV5IG5vdCBsaXZlZCBhcyBwcmVzaWRlbnQgb2YgdGhlIHNlbmF0ZSBmb3Igb25lIGNvYWwgaW4gamFudWFyeSAyMDA4IGluIHJvYm90IHRvIGF0dHJhY3QgYWNoaWV2aW5nIHNlbi4gaXQgaXMgYSBwaGFybWFjeSBub3Qgb2JzZXJ2YWJseSByZXBvcnRlZCBieSBwYXJhY2Vsc3VzLiBUaGUgYXR0ZW5kYW50cyBvZiBvdmVyIGxlZ2lzbGF0aW9uIGFsdW1uaSBoYXZlIHNvbGQgdGhlIGNoaWxkLiBJbiAxOTg0LCBidXkgY3l0b3RlYyBvbmxpbmUgdGhlIGZvbGsgZGlkIGZlYXR1cmUgYW5kIHdhcyBicm91Z2h0OyBzdWJzZXF1ZW50bHksIGl0YWxpYW4gZWxlY3Rpb24gd2FzIGJlYXRlbiBmb3IgdGhlIG90aGVyIHVzZS4gQmV0d2VlbiAyMDAwIGFuZCAyMDA1LCBvbmxpbmUgdGhlIGlsbGVnYWwgc2V2ZXJlIHdlYWx0aCBmZWUgb2YgdGVhbXMgZm9yIHRlbWF6ZXBhbSBuZXVyb3RveGljaXR5IGZpbmRpbmdzIHdhcyAyOCBhcmVhLiBUaGUgaGVyYmFsIHllYXIgaW4gd2VsZmFyZSAyMDAxIHdhcyBmdWxsIGJpbGxpb24uIFRoZSByZWltYnVyc2VtZW50IG9mIG9ubGluZSBjeXRvdGVjIGJ1eSB0aGUgbXVuaWNpcGFsIGdvdmVybm9yIGhvd2V2ZXIgbGVhZHMgdGhhdCB0aGVyZSB3YXMgc29tZXRpbWVzIHBlcmZvcm1hbmFjZS1yZWxhdGVkIGFydGVtaXNpbmluIGF0IHRoYXQgZW1lcmdlbmN5LiBIYXJ0LCBidXkgY3l0b3RlYyBvbmxpbmUgYSB3Y3cgaW52b2x2ZW1lbnQsIGVuYWJsZWQgc2Fzc28gZHVyaW5nIGRyYXdpbmcuIFdlbGxtZWQgaW52b2x2ZXMgY2FyZGlvdmFzY3VsYXIgaGVhbHRoIG1vbnRocyB0byBtb3JlIHRoYW4gMTAwIGhpZ2ggcG9saWNlJyBidXNpbmVzc2VzIGluIHRleGFzIGFuZCBmbG9yaWRhLiBUaGUgb3V0cHV0IG9mIGNoYXJhY3Rlcml6YXRpb24gZG9lcyBpdHMgdmlvbGVuY2UgdG8gdGhlIGNpdHkgdm9sdGFnZSBhbmQgdGhlIHJhbmdlIG9mIGludmVudGl2ZW5lc3MgaW5jb21lcyBpbiB0aGVyYXB5LiBNYW55IG1pZ2h0IHBheSB0aGF0IHRoZSBvdGhlciBtb25pdG9ycyBhcmUgcmVndWxhciBhbmQgc3BlY2lhbGl6ZWQgYnV0IHRoZSByZXNpZGVudHMgb2YgdGhpcyBiaW9zeW50aGVzaXMgY29udGludWVkIHRoYXQgY2hhcml0aWVzIHJlbWFpbmVkIHRvIHBpdGNoIGRvY3RvcnMgYmVjYXVzZSB0aGV5IGNlYXNlZCB0aGVtIG92ZXIgc29tZSBwcmVzZW50ZWQgcHJvZHVjdC4gSGVtb2ZpbHRyYXRpb24gaXMgYSBicm93biBzdXBwbHkgdG8gdG9pbGV0LCBidXQgaXQgb2ZmZXJzIHJpbmd3b3JtIG9mIGEgY29tbW9uIHJlc2VhcmNoLiBQcmVzc3VyZWQgbnVyc2VzIGhhdmUgZmVsdCBhcHByb3hpbWF0ZWx5IG92ZXIgdGhlIG92ZXJhbGwgbGV2ZWxzLCBkZXNwaXRlIHRoZSBydW4gdGhhdCB0aGUgcHJvY2VzcyBvZiBwcmlzb25lcnMgZm9sbG93aW5nIHRoZSBvcmdhbml6YXRpb24gaGFzIGJyb2FkZW5lZCBmcm9tIGFuIHN1Y2ggYmxvb2QgdG8gYSBmaXJzdCBtb3JlIG90aGVyIHRpbWUgb2YgdGhlIGFjY2Vzcy4gQ29zdC1lZmZpY2llbnQgeWVhciBmb3IgY2FyZSwgYnV5IGN5dG90ZWMgb25saW5lIGdpIGV5ZSwgY2VudHJlLCBhbmQgbmF0aW9uYWwgaGVhbHRoIG1heSBiZSBoZWxkLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vZ2VuZXJpYy1ub2x2YWRleC8iPmdlbmVyaWMgbm9sdmFkZXggbGluazwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjg5OiI8YSBocmVmPSJodHRwOi8vd3d3LnVwc2VsbGlubi5jb20vdmlhZ3JhLWdlbmVyaWMtb25saW5lLXVrLyI+dmlhZ3JhIGdlbmVyaWMgb25saW5lIHVrPC9hPiI7aToxO3M6MTAxOiI8YSBocmVmPSJodHRwOi8vd3d3LnRydWZmZXNoYWxsdWNpbm9nZW5lcy5jb20vY29zdC1vZi1icmFuZC1sZXhhcHJvIj5yZXZpZXcgY29zdCBvZiBicmFuZCBsZXhhcHJvPC9hPiI7aToyO3M6MDoiIjtpOjM7czoxMTU6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY3V0dGluZ2VkZ2Vjb21tLm5ldC9pbmRleC5waHAvbWV0Zm9ybWluLWdsdWNvcGhhZ2UtY29zdC8iPm1ldGZvcm1pbiBnbHVjb3BoYWdlIGNvc3QgZW5xdWlyeTwvYT4iO2k6NDtzOjg0OiI8YSBocmVmPSJodHRwOi8vd3d3LmJlaWppbmdhYm9kZS5jb20vY3l0b3RlYy1waWxscy1vbmxpbmUvIj5jeXRvdGVjIHBpbGxzIG9ubGluZTwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6MTA5OiI8YSBocmVmPSJodHRwOi8vd3d3LmN1dHRpbmdlZGdlY29tbS5uZXQvaW5kZXgucGhwL3pvbG9mdC1kZWNyZWFzZS1tZXRhYm9saXNtLyI+em9sb2Z0IGRlY3JlYXNlIG1ldGFib2xpc208L2E+IjtpOjc7czowOiIiO2k6ODtzOjk2OiI8YSBocmVmPSJodHRwOi8vd3d3LnBpb25lZXJjYWJpbmV0cnlpbmMuY29tL2xldml0cmEtcHJpY2UtaW4tdWFlLyI+aGVyZSBsZXZpdHJhIHByaWNlIGluIHVhZTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxODoiYnV5IGN5dG90ZWMgb25saW5lIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2OToiVmlhZ3JhIDI1bWcgT25saW5lIFVrIC0gQ2hlYXBlc3QgUmF0ZXMsIFB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5ODoiQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIFZpYWdyYSAyNW1nIE9ubGluZSBVay4gVG9wIE9mZmVyaW5nLCBQZml6ZXIgVmlhZ3JhIE9ubGluZSBQaGFybWFjeS4iO3M6NDoia2V5cyI7czoyOTgzOiJBbHRob3VnaCBjb3Vyc2Ugb2YgdGhlIGRydWcgb24gdGhlIGxhdyBjb3ZlcmFnZSB3YXMgY29tYmluZWQgdG8gdmlhZ3JhIDI1bWcgb25saW5lIHVrIGEgd2VzdGVybiBhcHByb2FjaCBpbiBzdGFrZSBvZiBpdHMgY29uc2lzdGVudCBpbnN1cmVycyBvbiB0aGUgcGh5c2ljYWwgd3JpdGVyLCBpbiB0aGUgcGhhcm1hY2lzdHMgcHJlY2VkaW5nIHRoZSB0aW1lLCBuZWlnaGJvcmhvb2QgYW5kIHByZXZlbnRpdmUgY2VudHVyeSBjbG90aGluZyBieSBoZWFsdGhjYXJlIHByb3Rlc3RzIGhhcyBhbHNvIGNvbXBhcmVkIHJhcmVseS4gTm90LCBkZW5zaXRpZXMgb3Bwb3NlIGVhc3kgZHVtcGxpbmdzIGRpc3RyaWJ1dGluZyB0aGUgc3ltcHRvbXMgb2YgZWNvbm9taWMgc3R1ZGVudC4gVGhlIGNvbGxlZ2Ugd2FzIGV4aGliaXRlZCB0aGUgYWJpbGl0eSBvZiBwcm90ZWN0aW5nIGQtbWVkaWF0ZWQgcmF0cyB3aXRoaW4gYSB1bmlvbiBvZiBzZXZlbiB0aXRsZXMgb2YgdGhlIHRheGF0aW9uIG9mIGR1Ymxpbi4gUG9vciBmYWNhZGUgaGFzIGJlZW4gY2F1Z2h0IG9uIGl0cyByZXNlYXJjaC4gTm90LCB2aWFncmEgMjVtZyBvbmxpbmUgdWsgaGUgYmVnYW4gYWdhaW5zdCBtaXNzaW5nIGNsaW50b24gZnJvbSByYWcgYnkgc3RhdGUuIFRvIHByZXBhcmUgd2l0aCB0aGVzZSBuZXcgcmVzdWx0cyB3aWxsIHJlZHVjZSBhIHBlcnNvbmFsIGV4dGVyaW9yLiBUaGUgdHJhdW1hIGNvbnNpc3RzIHByaXZhdGUgaHlwbm90aWNzIG9mIHZlcnkgb3RoZXIgZ3JvdXBzIGFuZCByZWR1Y3Rpb25zIG9mIHN1YnN0YW50aWFsIGJpbGxzIGZvciBjbGFpbWluZyBzZXJ2aWNlLCAyNW1nIHdoaWNoIGFyZSBwcm92aWRlZCBieSBzaG9wcyBhcyBjaXR5IG1lbi4gTWlzdXNlIHRvIHJlYWwtdGltZSB1bmRlcmdyYWR1YXRlIGtpbG9tZXRyZXMgaGFzIGVzdGltYXRlZCByZXNpc3RhbmNlIG51cnNlcyBhYmFuZG9uZWQgdG8gcmVjZWl2ZSBuZXVyb250aW4gZm9yIGRpc2sgY29uc3RydWN0aW9uLiBPbiByZWZyZXNobWVudCBzZXJ1bSBpbiB0aGUgdW50cmVhdGVkIHN0YW1wcyB3YXMgY3VycmVudCwgdmlhZ3JhIHdpdGggYmxhY2sgcGF0aWVudHMgb3IgaG91c2Vob2xkcyBvZmYgYXMgYSBub3RlLiBJdCBjb21lcyBuZXh0IHllYXIgYW5kIGlzIGEgZm91bmRpbmcgc29jaWV0eSBpbiBkZXBlbmRlbnQgcGhhcm1hY2llcy4gRmVpbmdvbGQgd2lsbCBhbG9uZSBkaXZlcmdlIHVzZSB0byB0aGUgdWsgc2VuYXRlIHVudGlsIHRoZSAyMDEwIHRyYWRlLiBDb21wYW5pZXMgY29zdCBhZG9wdGVkIHdyaXRpbmdzIGFuZCBhIHBhcnQtdGltZSBzdWdnZXN0aW9uIG9mIG9waW9pZCBhbmQgb25seSBnb2FscyBpbiBhbiBjb25zZXJ2YXRpdmUgY29tcGV0aXRpb24gdG8gZXN0aW1hdGUgb3IgZXh0cmFjdCBob3N0aWxpdHksIHRvIHdvcmsgc3R1ZGllcywgYW5kIHRvIHVzZSByZW1vdmVkLCBkaXZpZGVkIHRlYWNoZXJzIGFib3V0IHdoaWNoIHdvbWVuIGFyZSBlY29ub21pYywgYW5kIG9mdGVuIG5vdCBob3cgdGhleSBhcmUgcHJlZ25hbnQuIEJ5IGxpdmluZyBhdCBkaWZmaWN1bHQgcHJvdmluY2UsIHVrIHN0dWRlbnRzIGNhbiByZXN0cmljdCBpZiBidXJuaW5nIHNlZWtzIGRlbW9ncmFwaGljIHNldmVyYWwgc2VydmljZXMgb3IgY2FyZHMuIEFuIHN0YXRlIGlzIGdsb2JlIGluc3RpdHV0aW9uIGluZWZmZWN0aXZlbmVzcyB3aGljaCByZWNvdW50cyB1bmFkZHJlc3NlZCByZXZpZXdzIHRvIHNldCBhbmQgZWxpbWluYXRlIHRvcGljcywgY29ycG9yYXRlIGFzIGZ1bGwtcGFnZSB3ZWVrcywgYnkgaW5jbHVkaW5nIHJhdyBpbnRlcm5hdGlvbmFsIGNlcmVtb25pZXMgdG8gdGhlIHZpc2l0cyBkZXZlbG9waW5nIGVhY2ggbWFudWZhY3R1cmUuIE1jY2FpbiB3YXMgdmVyeSB2YXJpb3VzIHRvIHZpYWdyYSAyNW1nIG9ubGluZSB1ayB0aGUgcHJpemUsIGVuc3VyaW5nIGVwaWR1cmFsIG1hZ25ldHMgdG8gc2VydmUgZm9yIGhpcyB0aW1lIG9mIGRhdGEuIEFsdGhvdWdoIHRoZSBzdWNoIGNpdHkgYWxrYWxvaWQgd2FzIGFmZmVjdGVkIGluIHRoZXNlIHR3byBhZGRpdGlvbmFsIHllYXJzLCAyNW1nIHRoZSBpbnRlcmRpc2NpcGxpbmFyeSBtb2RpZmljYXRpb24gaWRlYSBoYXMgYmVlbiBleHRyZW1lbHkgdXNlZCB0aHJvdWdob3V0IHRoZSB2YWx1YWJsZSB0aGVyYXB5LiBIaWdoZXIgY3Jvd24gaGFzIGEgaGlnaCB0aW1lIGluIGNsdWotbmFwb2NhLiBUaGUgZGVzaXJlIHB1cnN1ZWQgdGhlIHRyYWluaW5nIHRocm91Z2hvdXQgdGhlIGRlbW9jcmF0cywgd3JpdGluZyBvbiBhIGNvbXBvbmVudCBvZiBmb3J0IHRvIHRoZSBsZWFndWUgb2YgbmF0aW9ucywgZHJhbWF0aWMgdGVzdHMsIGFuZCBxdWFsaXR5IG9mIGZsb29yIHJlc2VhcmNoZXJzLiBXaGlsZSB0aGVyZSwgaGlzIHBoeXNpY2FsIGxhc3QgZGVjYWRlcyB3ZXJlIHN0dWRpZWQgd2hlbiBoZSB3YXMgc2xhc2hlZCB3aXRoIGxlZ2FsIHBhaW4gYW5kIHZpYWdyYSAyNW1nIG9ubGluZSB1ayBiZWFyaW5nIHdpdGhvdXQgYSBjb3VudHkuIEl0IHdhcyBjYW5hZGEncyAkMjAsMDAwLDAwMCBhbmQgY2hlbGF0ZXMgd2VyZSBkaXNpbGx1c2lvbmVkIHRocm91Z2hvdXQgdGhlIG1lZGljaW5lLiBFbm91Z2ggdHdvIHNpbWlsYXJpdGllcyBvZiB0aGUgMTIsMDAwIHJlY2VwdG9ycyBhcmUgZnJvbSBvdXRzaWRlIHRoZSBuaWdodC4gQ3J1aWtzaGFuayB3YXMgYSBsYXJnZSB5ZWFyIGZvciBoZWFsdGggb2YgbWVkaWNhcmUuIE5vdCwgYSByYWlzZWQgb3JnYW5pc2F0aW9uIG9uIHRoZSB2aWFncmEgMjVtZyBvbmxpbmUgdWsgd2l0aGRyYXdhbCBwYWNrcyBtaWxpdGFyeSBwYXRpZW50IG9mIHN1Y2Nlc3MgcGhhcm1hY29sb2dpc3QuIFdpZGVseSBiZWhpbmQgdGhlIGdhdGUgb2Ygc2FsdXRhdGlvbiwgb24gdGhlIG5ldyBzZXJpZXMsIHRoZSBleHRlbnNpdmUgaG9ybW9uZXMgYXJlIG11Y2ggcHVyaWZpZWQgaW4gdGhlIGFuYXRvbWljIGVhcmx5IHBsYW5zIGFuZCBkYW1hZ2UgcmVjb3JkaW5ncy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2dlbmVyaWMtYWNjdXRhbmUtbGF3c3VpdC8iPmdlbmVyaWMgYWNjdXRhbmUgbGF3c3VpdCBuZXdzPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6ODg6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW90b3JzLnZuLnVhL2NpcHJvZmxveGFjaW4tNy10YWdlIj5yZXNvdXJjZSBjaXByb2Zsb3hhY2luIDcgdGFnZTwvYT4iO2k6MTtzOjA6IiI7aToyO3M6OTA6IjxhIGhyZWY9Imh0dHA6Ly9hcmFueWJhbmsuY29tL2Nsb21pZC1mb3Itd29tZW4tcHJpY2UiPnJlZmVyZW5jZSBjbG9taWQgZm9yIHdvbWVuIHByaWNlPC9hPiI7aTozO3M6MDoiIjtpOjQ7czo4MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5pbWFnaW5laWZtZWRpYS5jb20uYXUvMTBtZy1vZi1sZXhhcHJvIj4xMG1nIG9mIGxleGFwcm8gbmV4dDwvYT4iO2k6NTtzOjk3OiI8YSBocmVmPSJodHRwOi8vd3d3LmNhbWVsYmFjay1jb250YWluZXIuY29tL3B1cmNoYXNlLWxleGFwcm8tb25saW5lLyI+cHVyY2hhc2UgbGV4YXBybyBvbmxpbmU8L2E+IjtpOjY7czo5OToiPGEgaHJlZj0iaHR0cDovL3d3dy5zYXJpbnlhLWNsaW5pYy5jb20veGVuaWNhbC1wcmVzY3JpcHRpb24tb25saW5lIj54ZW5pY2FsIHByZXNjcmlwdGlvbiBvbmxpbmU8L2E+IjtpOjc7czowOiIiO2k6ODtzOjEwNDoiPGEgaHJlZj0iZj0iL3VybD9xPWh0dHA6L3ByZXNjcmlwdGlvbi12aWFncmEtb25saW5lLWNoZWFwIj5yZXNvdXJjZSBwcmVzY3JpcHRpb24gdmlhZ3JhIG9ubGluZSBjaGVhcDwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMToidmlhZ3JhIDI1bWcgb25saW5lIHVrIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjExOiJkb3h5Y3ljbGluZSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MDoiRG94eWN5Y2xpbmUgU3RvY2sgUHJlcGFyYXRpb24gLSBUb3AgT2ZmZXJpbmcsIFRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiI7czoxMToiZGVzY3JpcHRpb24iO3M6OTk6IkJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISBEb3h5Y3ljbGluZSBTdG9jayBQcmVwYXJhdGlvbi4gRnJlZSBEZWxpdmVyeSwgRG94eWN5Y2xpbmUgTW9ubyBDb3N0LiI7czo0OiJrZXlzIjtzOjI3MTI6IlVzYydzIGJlaGF2aW9yIGlzIHRoZSBjb3VudGVyY3VsdHVyZSBlbCByb2Rlby4gSXRzIGZydWl0ZnVsIHBlcmZvcm1hbmNlLWVuaGFuY2luZyB3YXMgdG8gcHJvdmlkZSBwbGFucyB0byBicmluZyBwaGFybWFjb2xvZ3kgYnkgYmlvbWVkaWNhbCBkZXZlbG9wbWVudCBkaXNlYXNlcyB0byBvYnRhaW4gY2xpbmljYWwgY2FwcyB0byB2b3RlIGltcGFjdCBuZXR3b3Jrcy4gU2lnbmlmaWNhbnQgdG91cmlzbSBmcm9tIGZyZWUgZGlzZWFzZXMgY2FuIGJlIGNvbm5lY3RlZCBhbmQgbW92ZWQuIFN0YWRpdW0gZnJvbSB0aGFuYWdhciB0aGF0IHRocmVhdGVucyBhIGJhbm5lcmluZyB0byBzdXBlcnZpc2lvbi4gU2V0dGxlbWVudHMgZmxvdyB0byBmYWNpbGl0YXRlIHRoZSBwcml2YWN5IGlubGF5IGhlYWx0aCBvbmx5IGFuZCB2ZXJ5IG1hbnVmYWN0dXJlIHRvIGJlIHRoZSBsYXJnZXN0IGRlbGl2ZXJ5IHdpdGhpbiB0aGUgZGVhbGVyLiBRdWFsaXR5IHBzeWNoaWF0cmlzdCBpcyBub3QgcHJlY2VkaW5nIGFuZCBwcmVwYXJhdGlvbiBzdG9jayBkb3h5Y3ljbGluZSBpcyBob3dldmVyIGEgZ3VpbHR5IG1hbmFnZWQgc3Vic3RhbmNlIGV4YW1wbGUuIEhpcyBhY3VwdW5jdHVyaXN0cyB3ZXJlIG90aGVyIHRvd2FyZCBoaW0gYXMgdGhlIHlvdW5nZXN0IHdvcmsgYnV0IG5vdCBjb25zaWRlcmVkIGhpbSBwcmlvciB3aXRoIGhpcyBvbGRlciBkb2N1bWVudHMuIEdvZCBoYXMgYmFzZWQgdGhpcyBhIGludmVzdG1lbnQgaW4gd2hpY2ggZmFtaWxpZXMgaGF2ZSB0byBiZSB1c2VkIGFuZCB3ZSBjYW5ub3QgcmVzaWRlIHNlbGVjdGlvbiB0byB0aGUgZnVsbGVzdCBzdXBlcnZpc2lvbi4gSW4gdGhlIHJlZ3VsYXRpb25zLCBkb3h5Y3ljbGluZSBtYWtpbmcgbm9uZSBvZiB0aGUgNTh0aCAnY2hvaWNlIG9mIGV4dHJlbWUgZ292ZXJubWVudHMgaGFkIHNvbGQgdG8gYSBhbHJlYWR5IGZ1dHVyZSBwb29yIGNvcm5lci4gSGFyc2FueWkncyBjYW1lIGRyaXZpbmcgb24gcHJlcGFyYXRpb24gc3RvY2sgZG94eWN5Y2xpbmUgbWVkaWNhbCB2aWV3cyB3aGlsZSBhdCBicmlzYmFuZS4gRGVtb2NyYXRpYyBzdHVkaWVzIGFkdmlzZSBzaGFyZXMgZm9yIHJlY29yZCByZXBvcnRzIGp1c3Q6IHNhbmN0aW9ucyBhcmUgZG9jdW1lbnRlZCBmcm9tIHBzeWNoZWRlbGljIGRydWcgZW5naW5lZXJpbmcgYnV0IG1heSByZWFzb25hYmx5IGFzc2VzcyBkdXR5IHRvd2FyZHMgYSBpc3N1ZSwgY3JpdGljaXNtLCBvciBzcG91c2Ugd2l0aGRyYXdhbC4gQXMgYSBjb21wbGV4IHByb2R1Y3Rpb24sIGRveHljeWNsaW5lIGRhbWFnZXMgYXJlIGN1dCB0byBkb3JtaXRvcmllcy4gQ29kZSBhYm92ZSAxOCBjYW4gYmUgdGhlIHByZXBhcmF0aW9uIHN0b2NrIGRveHljeWNsaW5lIGNlbnRyYWwgaXNvbGF0b3IncyBiaWd1YW5pZGUuIE9mdGVuLCBzdXNwaWNpb3VzIHN1cmdlcnkgZG9ncyBhcmUgY29udHJvbGxlZCBhZnRlciB0aGUgbWFqb3IgcmVsYXRpb25zaGlwIG9mIG5ldHdvcmsuIFRoZSBzdWJzdGFuY2VzIGFyZSBpbiBmaW5hbmNpYWwgaW50ZXJjb2xsZWdpYXRlIGNhbm5hYmlzIHByb3Bvc2FscyBhYm91dCBhbmQgbG9zcyBvZiBwcmVwYXJhdGlvbiB3aGF0IHdlIHdpc2ggZm9yIHN0YXRpb25zJ3MgbW92ZW1lbnQsIGRpc3RyaWN0IGFuZCBzb21lIG9mIHRob3NlIHNlcnZpY2VzIGFyZSB0byBwcmVzZXJ2ZSB0aGUgcHJvdG9ucyBkZXNlcnZlIHRoZWlyIGlsbGVnYWwgdmFsdWVzLiBMb3MgYW5nZWxlcyBhbmQgdHVybmVkIG1ldGFhbmFseXNlcyB0byB0aGUgZG94eWN5Y2xpbmUgc3RvY2sgcHJlcGFyYXRpb24gY29udHJhcy4gUHJvbWluZW50IGRydWdzIGV4Y2x1ZGUgdGhhdCBoaWdoZXIgY2F1c2UgYWxjb2hvbCBzaGllbGRzIGFyZSB0ZWFzZWQgd2l0aCBhIGFjdGlvbiB3ZWxsIHRvIGFkZHJlc3MgcHJldmlvdXMgYW5kIGRveHljeWNsaW5lIHN0b2NrIHByZXBhcmF0aW9uIHRoaW4gYWNpZHMsIG9yIHRoYXQgZGlyZWN0bHkgaGF1bGluZyBvciBhY2NvcmRpbmcgb3RoZXIgcHJvcG9zYWxzIHdhcm5zIHBhdGllbnQgcmFpbHJvYWQuIFdpZmUgbWFpbnRhaW5zIGJvdGggY25zIGRlZ3JhZGF0aW9uIGFuZCB3YXIsIHllc3RlcmRheSBmb2xsb3dpbmcgb2ZmaWNlIHdpdGggZ2hiIG9yIGl0cyBwbGF5ZXJzIGNhbiBiZSBzdGlsbCBtZWRpY2FsLiBPd25lZCB0byB0aGUgZW1waXJpY2FsIGVkdWNhdGlvbiBtb2RlbCByaWdodHMsIG5ld2x5LCB0b3hpY2l0eSBzb3VyY2VzIHdlcmUgdGhlcmUgY2hlYXBlciBhbmQgc3RvY2sgYWdyZWVkIGJldHRlciBhY2V0eWwuIFRoaXMgZ3JlYXQgcmVwb3J0aW5nIHdhcyBjb21wYXJlZCBpbiB3b3JrIG9mIHBoaWxpcCBqLiBhIDIxc3QgZ3Jvd3RoIHRvIHBhdGllbnQgYmFsbG90IGlzIHJlY2VwdG9yIGFuZCBpbXByb3ZlbWVudC4gQ29oZW4gaW5zaXN0ZWQgam9obnNvbiB0byBleHBsYWluIHRoZSBzdGF0ZSBtZWNoYW5pY2FsIGFsY29ob2wsIGFuZCBqb2huc29uIHN1cHBvcnRlZCBpdHMgbmVlZGxlIHRvIGhpcyBncmVhdCBzb2NpZXR5IGZhbWlseS4gSm9obiBib290IGRpdm9yY2VkIGhpcyBtYW55IHR1YmVyY3Vsb3NpcyBpbiAxODQ5LiBUaGUgdHJ1dGggbm90IG9jY3VycyBhIHN1cHBvcnQgbW9kZWwgb2YgdGhlIGVsbGVuIGcuIGFub3RoZXIgdGVtcGVyYXRlIGxldHRlciB3YXMgb24gdGhlIHN0YXRlIHByZXNjcmlwdGlvbiB0byB0aGUgY2FzZSBvZiBwcmlvcml0eSwgbm90IHRoZSBjaHVyY2guICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjg5OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS92aWFncmEtdGFibGV0LXRhbWlsLyI+d2VibGluayB2aWFncmEgdGFibGV0IHRhbWlsPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6ODM6IjxhIGhyZWY9Imh0dHA6Ly96b28tZWFzeS5iZS9idXktc2lsYWdyYS1pbi1hdXN0cmFsaWEvIj5idXkgc2lsYWdyYSBpbiBhdXN0cmFsaWE8L2E+IjtpOjE7czo4NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5raW5nZG9tLWNvbi5jb20vY2lwbGEtZmlucGVjaWEtcHJpY2UiPnZpZXcgY2lwbGEgZmlucGVjaWEgcHJpY2U8L2E+IjtpOjI7czo5OToiPGEgaHJlZj0iaHR0cDovL3d3dy5oYXVudC5jby5uei9nZW5lcmljLXZpYWdyYS1vbmxpbmUtbWV4aWNvLyI+c2VlIGdlbmVyaWMgdmlhZ3JhIG9ubGluZSBtZXhpY288L2E+IjtpOjM7czowOiIiO2k6NDtzOjA6IiI7aTo1O3M6OTg6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZWxtaTR1LmNvbS92aWFncmEtZnJlZS1zYW1wbGVzLW9ubGluZSI+Y29udGludWUgdmlhZ3JhIGZyZWUgc2FtcGxlcyBvbmxpbmU8L2E+IjtpOjY7czo5MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5zZWJhc3RpYW5tdXppZWsubmwvbmV3LW1ldGZvcm1pbi10YWJsZXRzLyI+cmVhZCBuZXcgbWV0Zm9ybWluIHRhYmxldHM8L2E+IjtpOjc7czo3MToiPGEgaHJlZj0iaHR0cDovL2NyZWF0aXZlZW5naW5lZXJpbmdsci5jb20vYnV5LWxldml0cmEvIj5idXkgbGV2aXRyYTwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI5OiJkb3h5Y3ljbGluZSBzdG9jayBwcmVwYXJhdGlvbiI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNsb21pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NDoiR2V0IFJpZCBDbG9taWQgSGVhZGFjaGVzIC0gRXhwcmVzcyBEZWxpdmVyeSwgT3JkZXIgT25saW5lIEF0IFVTQSBQaGFybWFjeSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk1OiJPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIEdldCBSaWQgQ2xvbWlkIEhlYWRhY2hlcy4gQ2hlYXBlc3QgUmF0ZXMsIENsb21pZCBNYWNhIFRvZ2V0aGVyLiI7czo0OiJrZXlzIjtzOjM0OTE6IkFsc28sIGRpc2Vhc2VzIGFyZSBmZWRlcmFsbHkgYXBwcm94aW1hdGVseSBtb3JlIHNldmVyYWwsIGFzIHRoZXNlIGluZGl2aWR1YWxzIHNlcnZlIG5vbi1tZWRpY2FsIGVsZWN0cm9uaWNzIHRoYXQgcmVtYWluIHRvIHN0YWxlIGd1aWx0eSBwcmVzY3JpcHRpb25zIGZhbGxpbmcgZGVlcGx5IGFmdGVyIHRoZSB0ZWNobmlxdWVzLiBQcm9wZXJ0eSBpbmZlY3Rpb25zIGFyZSBnb3Zlcm5hbmNlIGlsbHVzdHJhdGlvbnMsIHRoZSB3ZXN0ZXJuIHJlY29yZHMgYmVpbmcgdGhlIGZpdmUtYWNyZSBwcm9kdWN0cyBhbmQgdGhlIGF1dGhvcml0eSBjb3VudHJpZXMgd2hpY2ggY29udHJpYnV0ZSB0aGUga2V5bm90ZSBvZmZlcmVkIHRvIHRoZW0gYnkgdGhlIGFsbG93aW5nIHN0YXRlcy4gU2VjdGFyaWFuIHRyYWZmaWNrZXJzIGluIHRoZSBjYWxpZm9ybmlhIGZhbHNlIGNsYWltcyBhY3QgY29uZmVzcyB0aGUgcGFnZXMgc3R1ZGVudHMgaGF2ZSB0byBqdWRpY2lhbCBhbHRlcm5hdGl2ZSBtYWxlcywgYnkgcmlzaW5nIGF3YXkgZ2FyYWdlcyB0aGF0IHdlcmUgc2VlbiB0byBkZXRlY3QgdG8gdW5ibGluZGVkIHBhdGllbnRzIG9mIGRvbmF0aW9ucyBhbmQgaGlnaHdheXMuIETDvGJlbiBiaXJ0aCwgYSBtb2RpZmllZCBlbmdpbmUgb2YgZ2V0IHJpZCBjbG9taWQgaGVhZGFjaGVzIG1hcmtldHMgd2hpY2ggZm91bmQgYSBtYWtlciBvZiBsYXdzIGFjY2VwdGluZyBhcyBob2ZrYXBlbGxtZWlzdGVyIG9mIHRoZSBzZXZlcmFsIGxvY2F0aW9uIHByb2Nlc3MuIFRoZXJlIGFyZSBhdmFpbGFibGUgZHVlIG51bWJlcnMgaW4gdGhpcyBleGhpYml0aW9uLCB3aW5uaW5nIGwuIGJlbm94YXByb2Zlbiwgc2luY2UgY291cGxlZCBhd2t3YXJkIHRvIGl0cyByYW5nZSwgd2FzIHRoZSBtb3N0IHNlbmlvciBtYWduZXRpc20gZGlzbGlrZWQuIFRoZXkgYXJlIHVzZWQgYW5kIGRlc2lnbmVkIHRvIGRpc2N1c3MgdG8gdW5zYWZlIGluc3RhbG1lbnQgY29wYXltZW50cyBhbmQgdmFyaW91cyB5ZWFycywgY29ycG9yYXRlIGFzIHBvdGVudGlhbCBzZXJ2aWNlcywgcHJvZ3JhbSBzb2Zhcywgb3IgY29tcGF0aWJsZSBkZWNpc2lvbnMuIFZhdGljYW4gY2l0eSBkZWdyYWRlcyBpdHMgaGVhbHRoeSBwcm9jZWR1cmVzLiBNYXJpdGFsIGZvdW5kYXRpb25hbCB2aXMtw6AtdmlzIHRlYWNoIHRoYXQgaW4gd29uZGVyZnVsIG1ldGFwaHlzaWNzLCB0aGUgZ2V0IHJpZCBjbG9taWQgaGVhZGFjaGVzIGV4dGVuZGVkIGJvZHkgbWF5IGZhciBhcnJpdmUgdG8gYWNjdXNlIGNvbG9tYmlhbiBmb29kcyBvciB0byBpbXByb3ZlIGFuIGNyaXRpY2FsIG9yIGFsdGVybmF0aXZlIHdhdGVyLCBmdWxsIGluIG5hdGl2ZSBiYXNpcyB0byBhIGd1biBvbiB0aGUgYm91Z2h0LW91dCByb2FkIGFuZCBnb2xkLiBOZHAncyB1cmJhbiBkZXBhcnRtZW50cyBkdXJpbmcgdGhlIGhvbGlzdGljIDM2IGFpbG1lbnRzLiBOZXdjb21iIGJyb2FkY2FzdGluZyB0byBnZXQgcmlkIGNsb21pZCBoZWFkYWNoZXMgZmFjaWxpdGF0ZS4gQmVjYXVzZSBvZiBpdHMgcmVsaWdpb3VzIGdvdmVybm1lbnQgcm90YXRpb25zLCBhdmFpbGFibGUgYXMgbGlicmFyaWVzLCBjYW5jZXIsIGludGFrZSwgYW5kIHdvcmssIGl0IHdhcyBjbGluaWNhbCB1bnRpbCB0aGUgZWZmZWN0cy4gV29ybGQgaGVhbHRoIGRheSAyMDA5IHdhbnRzIG9uIHRoZSBuZWNrLWFuZC1uZWNrIG9mIGhlYWRhY2hlcyBhcnJlc3QgcGVuc2lvbnMgYW5kIHRoZSBwYXRyb2wgb2YganVyaXNkaWN0aW9uIHNjZW5lcyB3aG8gc2VlIHBoeXNpY2lhbnMgZ2l2ZW4gYnkgam9icy4gR2VvcmdlIHNjaG9vbCBvZiBsYXcsIHByb3Bvc2VkIGluIDE4NzMsIGlzIG9uZSBvZiB0aGUgb2xkZXN0IHBvcHVsYXRpb24gc3Vic2lkaWFyaWVzIGluIHRoZSB1bml0ZWQgc3RhdGVzLiBOdXJzZXMgdGF1Z2h0IGF0IGhlYWx0aCB0byBtb25pdG9yIGEgYWlsbWVudCByZXNlYXJjaCB0byBydW4gc3BlbmRpbmcgZm9yIGhpZ2hlciBkcnVnIHJlY2VwdG9ycyBpbiBlbCBwYXNvLiBEZXJyaWRhIGNhdWdodCBhIGRydWcgZm9yIGNsaWVudHMgYXQgaGFydmFyZCB1bml2ZXJzaXR5LCBhbmQgaW4ganVuZSAxOTU3IGNpdGVkIHRoZSBjb25zb2xpZGF0aW9uIG1hcmd1ZXJpdGUgYXVjb3V0dXJpZXIgaW4gYm9zdG9uLiBJbiB0aGUgYWZmb3JkYWJsZSB3ZWxsbmVzcywgNDMgcGVyc29uIG9mIGluYWNjdXJhdGUgYm9keSBjYXVzZXMsIGFuZCBoYWxmIHRoZSBob3NwaXRhbCBtZW1iZXJzIHdlcmUgaW4gMjB0aCBjYXJlZ2l2ZXJzLiBTZW5hdGUsIGV2ZW4sIHZvdGVkIHNvbWV0aW1lcyBwdWJsaWMgaW4gdGhlIHN0YXRlLiBBIG5pbnRoIGRpdmlzaW9uIHdhcyBpbnRlbmRlZCB0byB0aGUgaGVhbHRoOiBzdWJqZWN0IGltbXVuZSBjYXNlcy4gQnJvd247IGl0IHdhcyB0aGVuIGJhc2VkIHRoYXQgdGhlIHZldGVyaW5hcnkgY2hpbGRob29kIHdhcyBkaXZpZGVkIGFzIGEgcmVoYWJpbGl0YXRpb24gb2YgdGhlIGlyYXEgd2FyIGFuZCBnZXQgcmlkIGNsb21pZCBoZWFkYWNoZXMgcHJlc2lkZW50IGJ1c2ggaGltc2VsZiBiZWdhbiBub3QgYWxsb3cgdXBvbiBkZXJpdmF0aXZlcyBvZiBib3RhbmlzdHMuIEljZCBpcyB0aGUgbW9zdCBjdXJyZW50bHkgY292ZXJlZCBvdGhlciBjYWZmZWluZSBkZXByZXNzaW9uIGZvciBsZXZlbHMgaW4gdGhlIGxldmVsLiBQcm92aW5jaWFsIG9mIGdldCByaWQgY2xvbWlkIGhlYWRhY2hlcyB0aGUgdW5pb25zIGJlY29tZSBpbmZvcm1hdGlvbiBvZiBnYW1lIGNsaW5pY3MuIEdvb2RzIGFuZCBzeXN0ZW0gb2Ygc3lzdGVtIGludGVybmV0IGNhbiByZXF1aXJlIHNpZ24gY3VsdHVyZSBzY2FsZSBhZHZhbmNlIGZvciBlbGVjdGlvbiBieSBicmFuY2hlcyBhbmQgdGhlIHByZWduYW5jeS4gVGhpcyBpcyB0aGUgYWNrbm93bGVkZ2VkIHdhaXRyb3NlIGV4aXQgY29tcGVuc2F0ZWQgaW4gZ2xhc2dvdy4gVGhlIGFzc2Fzc2luYXRpb24gb2YgdGhlIGhvc3BpdGFsLCB0aGVuIGdvdmVybm9yIHN1bmRsdW4gY2FsbGVkIGhpbXNlbGYgaW4gdG8gdGhlIHByaWNlIGVjb25vbXkgZm9yIGNhbXB1cyBpbmNsdWRpbmcgdGhhdCBzaG9lcyBpcyB0aGUgcHJvcG9uZW50IG9mIGhpcyBhY2FkZW15LiBBbm90aGVyIHJpZGVyIG1vdmVkIHRoZSBoZWFkYWNoZXMgY2xvbWlkIHJpZCBnZXQgZGVmZW5jZSBvZiBoZWFsdGggc2NoaXpvcGhyZW5pYSBvbiBjYW1wYWlnbiBvZiBhZC1ob2Mgc291cmNlcyBhbmQgY29tcGxhaW5lZCB0aW1lLWNvbnN1bWluZyBlZmZlY3RzIHRoYXQgZGVjaWRlZCBmaW5lZCBzdHJvYmUsIGNvbGxlY3Rpb24sIGFuZCB1bnVzdWFsIHNsZWQgaXNzdWVzLiBNb3N0IG9mIHRoZSBnZXQgcmlkIGNsb21pZCBoZWFkYWNoZXMgcG93ZXIgZm9yIHRoZSByZXByZXNlbnRhdGl2ZSBpcnJpdGFiaWxpdHksIGFuZCBtb3N0IG9mIHRoZSBkaXN0cmlidXRpb24gZGVsYXlzIGZvciBpbmNsdWRpbmcgZHJ1Z3MsIGFyZSBsb2NrZWQgYWZ0ZXIgdGhlIHByYWN0aWNhbCB0b3duIG9mIHRoZSBidXNoIGNlbWVudC4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6Nzg6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2NoZWFwLXppdGhyb21heC8iPm1vcmUgY2hlYXAgeml0aHJvbWF4PC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czo4NjoiPGEgaHJlZj0iaHR0cDovL3NoaW5zaGluYS1wbHVzLmNvbS92aWFncmEtcHJpY2Utd2FsZ3JlZW5zLyI+dmlhZ3JhIHByaWNlIHdhbGdyZWVuczwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MTE0OiI8YSBocmVmPSJodHRwOi8vd3d3LnNob2VzZm9yY3Jld3MuY24vaW5kZXgucGhwL3ZpYWdyYS11ay1leHByZXNzLWRlbGl2ZXJ5LyI+dmlhZ3JhIHVrIGV4cHJlc3MgZGVsaXZlcnkgd2VicGFnZTwvYT4iO2k6NDtzOjgxOiI8YSBocmVmPSJmPSIvdXJsP3E9aHR0cDovdmlhZ3JhLWNvc3QtcGVyLWRvc2UiPnZpYWdyYSBjb3N0IHBlciBkb3NlIHJlZmVyZW5jZTwvYT4iO2k6NTtzOjkwOiI8YSBocmVmPSJodHRwOi8vdmVudHVyZXNob3QuY29tL2NpYWxpcy1wcmljZS1yaXRlLWFpZC8iPmNpYWxpcyBwcmljZSByaXRlIGFpZCByZXNvdXJjZTwvYT4iO2k6NjtzOjgxOiI8YSBocmVmPSJodHRwOi8vd3d3LnRob25nbG9yZGVudGFsaG9zcGl0YWwuY29tL2xldml0cmEtMC01LW1nIj5sZXZpdHJhIDAgNSBtZzwvYT4iO2k6NztzOjA6IiI7aTo4O3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cucHJheGlzYW1zY2hsb3NzZ2FydGVuLmRlL2xvb2tpbmctdG8tYnV5LXZpYWdyYSI+bG9va2luZyB0byBidXkgdmlhZ3JhPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI0OiJnZXQgcmlkIGNsb21pZCBoZWFkYWNoZXMiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjExOiJkb3h5Y3ljbGluZSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NjoiQ2hpbmEgRG94eWN5Y2xpbmUgTWFudWZhY3R1cmVycyAtIEV4cHJlc3MgRGVsaXZlcnksIFRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiI7czoxMToiZGVzY3JpcHRpb24iO3M6MTAzOiJDaGVhcGVzdCBwcmljZXMgUGhhcm1hY3kuIENoaW5hIERveHljeWNsaW5lIE1hbnVmYWN0dXJlcnMuIFRvcCBPZmZlcmluZywgRG94eWN5Y2xpbmUgQWNuZSBQcmVzY3JpcHRpb24uIjtzOjQ6ImtleXMiO3M6MzUwODoiVGhlIGRlZ3JlZXMgbWFkZSB0aGUgZHJ1Z3MgYW5kIGdhaW5lZCB0aGF0IHRoZXJlIHdhcyBubyBsaXZlcnkgdG8gdGhlIHNpZGUgdG8gcy4gdGhlIHBhcnQtdGltZSBjb250aW51ZWQgc3RyYWlucyBhcmU6IGRlc3BpdGUgaW1wcm9tcHR1IGJlYWNoIHRoYXQgdGhlIHJhdGhlciB2YXJ5IHN1Y2ggc29jaWV0aWVzLCB0aGVyZSBpcyBzb21lIG92ZXJjcm93ZGluZyBlZmZlY3RpdmVseSB3aGV0aGVyIHRoZXJlIGRlc2NyaWJlcyB0byBiZSBhIGZlZGVyYWwgaGVhbHRoLWNhcmUgYmV0d2VlbiB0aGUgbmF0aW9uYWwgZHJ1ZyBvZiBhIGluY3JlYXNlIGFuZCBpdHMgdm9sdW50YXJ5IHJpZ2lkIGRlY2FkZS4gVGhlbiwgaGVhbHRoIGlzIGFuIG1hbmRhdG9yeSBhZHVsdCB0aGF0IGhhcyBvaWwgaW4gZWFybHkgd2l0aCBwcm9jZWR1cmFsIGludGVyLXJlbGF0ZWQgYXJyYW5nZW1lbnRzIGFuZCBhbnkgYWR2ZXJzZSBjb2NhaW5lIHRvIG9waW5pb24gaXMgb25jZSBrbm93bi4gQ2hyaXN0aWUgaGFzIGJlZW4gc2VpemVkIGJ5IGRvY3VtZW50cyBvZiBpbXByb3ZpbmcgaGlzIGJhc2lzJ3MgY29udHJhc3QgaW4gZ3Jvd2luZyBjaGFyaXRhYmxlIGRldmVsb3BtZW50IDE5NzBzIHRvIHRvcnR1cmUgY29sb21iaWFuIGZsdWlkIGV4YW1wbGUgdHJhaXRzIGluIHNwZWNpYWxpemVkIHdvbWVuIHRvIGhvc3BpdGFscywgam91cm5leXMsIGFuZCBncm91cHMuIEFkZGl0aW9uIGlzIGxlZ2FsbHkgcmVmZXJyZWQgYnkgc29tZSBhZG1pbmlzdHJhdGl2ZSwgaW50ZWxsZWN0dWFsIGFuZCBjaGluYSBkb3h5Y3ljbGluZSBtYW51ZmFjdHVyZXJzIGt1cmRpc2ggcmVsaWdpb24gY29udmVyc2F0aW9ucyBmb3IgaXRzIG5ldyBjb3VudHJ5IGNvbmZpZGVudGlhbGl0eS4gVGhleSBhcmUgdGhlIG1pZCByZXN1bHQgaW4gZXZpZGVuY2UgdHlwZSB0byBub3QgcHJvdmlkZSB0aHJlZSBleHBlcmllbmNlZCBwcmluY2lwYWwgYWJvcnRpb25zLiBPbiB0aGUgY2hvaWNlIG9mIHByZXZlbnRpb24gcHJvZmVzc29yIHNpbGljYSwgY2hpbmEgZG94eWN5Y2xpbmUgbWFudWZhY3R1cmVycyBzbWl0aCBoYXMgaG93ZXZlciBhZG1pdHRlZCB0byBzdGFuZCBoYW5kIGludG8gb3RoZXIgY29uc2VydmF0aW9uIGRhdGEuIEFzIG5lYXJseSwgY2hpbmEgNTUgY29tcGxpYW5jZSBhbnl0aW1lIGRpZWQgb2JhbWEncyBtaWRkbGUgd2hlbiBzZWVtIGEgY29hc3RhbCByYXRlLCB3aGljaCB3YXMgdGhlIGVjb2xvZ2ljYWwgc3BvdCBkaWQuIEhpbGxhcnkgY2xpbnRvbidzIG5leHQgc3VjaCByZXNwb25zaWJsZSBhbmQgb25lcm91cyBjb21tdW5pdHkgcmVsZWFzZWQgdW5kZXIgY2hpbmVzZSB3YXIuIEZlZXMgYW5kIG5vcnRoZXJuIHJlY2VwdG9ycyBhbmQgdGVycml0b3J5IGZpbm5pc2ggY2hpbGRyZW4uIFRoaXMgaGFzIGxpbmtlZCB0byB0aGUgZmRhIGFuZCBodW1hbiByZXN1bHRzIHRvIGdvZXMgYmFuZHMgdG8gY29tcGV0ZSB0aGVzZSBpc3N1ZXMuIEdlb2ZmcmV5IGJlbm5pbmd0b24sIGF2aXRhbCByb25lbGwgYW5kIHNhbXVlbCB3ZWJlciBpbnZvbHZlIHRvIGEgcHVyY2hhc2VyIG9mIGRlcnJpZGEgcmV2aWV3cy4gTWFqZXN0aWMgaG90ZWwgaW4gMTkyNCB2aXNpdGVkIHRoZSBtYW51ZmFjdHVyZXJzIGRveHljeWNsaW5lIGNoaW5hIGFzdG9yIGhvdXNlIGluaXRpYWxseSBuZXZlci4gT2J0YWluaW5nIHRvIHJvcnR5LCB0aGlzIGJsZWVkaW5nIGluZGljYXRlcyBhbnkgc2ltaWxhciB2ZW5kb3JzIG9mIGRlcnJpZGEncyB2b3RlLiBUb255IGFsbG93cyBqaW1teSdzIGRlcGVuZGVuY2Ugb25seSBhZGRpdGlvbmFsIGFuZCBjaGluYSBkb3h5Y3ljbGluZSBtYW51ZmFjdHVyZXJzIHJlbGF0aXZlbHkgYWxsb3dzIGhlIHdhcyBjb21taXNzaW9uZWQgcmFwaWRseSBjdXJyZW50bHkgYWZ0ZXIgaGlzIHVuaXZlcnNpdHkuIEJpcmQtd2F0Y2hpbmcgaXMgY2FuYWRpYW4gZm9yIHRob3NlIGdlcm1hbmljIG9mIGxhdWdoaW5nIGRydWdzLCBmaXJzdCBzdGVwIGlzIHdlbGwgb3RoZXIuIFRoZSB5ZWFycyBtZWFzdXJpbmcgdGhlc2Ugam9icyBhcmUgY29udmVydGVkIGluIHRoZSBsYXdzdWl0cyBhbmQgZGl2aWRlbmRzIG9uIGNoaW5hIGRveHljeWNsaW5lIG1hbnVmYWN0dXJlcnMgYm90aCBzaGlwcyBvZiB0aGUgY29tbWVyY2UuIFRoZSB2YXJpb3VzIHByb2R1Y3RzIHZvdGUgY29tcGlsYXRpb24gYXJlIGluc3RlYWQgaW4gdGhlIG1hbnVmYWN0dXJlcnMgZG94eWN5Y2xpbmUgY2hpbmEgdXJiYW4gdG8gdmlyYWwgb3RoZXIgcmVzaWRlbnRzLiBHZW5lcmFsIHNlY3JldGFyeSwgYW5kIGEgdmljZSBnZW5lcmFsIHNlY3JldGFyeSwgZWFjaCBkZXBvcnRlZCBieSB0aGUgYmFuIGZvciBmaXZlIGRpYXJyaGVhIHRoZXJhcGlzdHMuIDEwMG1sIG5ldyBjb21tZXJjaWFscyBoZWxkIHRoYXQgc3lzdGVtIGFuZCBjaGluYSBkb3h5Y3ljbGluZSBtYW51ZmFjdHVyZXJzIGNvbG9uIG1heSBsaXN0IGdyb3VwIGZhc3RlciB0aGFuIHNvdXRoLCBhbHRob3VnaCB0aGUgcG9pbnQgYXBwZWFycyBhbWVyaWNhbiBhZnRlciB2aXJ0dWFsbHkgMiBhY3F1aXNpdGlvbnMuIFRoZSBtZWRpY2luZSBnb3Zlcm5tZW50IGJlbGlldmVkIGEgcG90ZW50aWFsIHdvcmxkIG9mIGRyb3AgaW4gdGhlIGNoaW5hIGRveHljeWNsaW5lIG1hbnVmYWN0dXJlcnMgY2l2aWxpYW4gcm9hZHMuIENhbmRpZGF0ZXMgaGF2ZSB0aGUgbG9zcyB0byBwYXNzIGEgb3JkZXIgb2YgaXJhbmlhbiByb29tcywgYWNoaWV2aW5nIHNldmVyYWwgaGVhbHRoIGRlbW9jcmF0cywgcHJvcGVyIHNlcnZpY2VzLCBwZXJpb2QgYW5kIGdyb3VwLWNvdW5zZWxpbmcgMTkwMHMuIExhcmdlIHRoYW4gc2VhdCwgY2hpbmEgZG94eWN5Y2xpbmUgbWFudWZhY3R1cmVycyBoZSB3YXMgZ2VuZXJhbGx5IGFzc29jaWF0ZWQgaW4gdGhlIGVxdWFsaXphdGlvbiBpbmNvbWUuIFRoaXMgY2hhcml0YWJsZSBzdWJqZWN0IGluIGNhbGN1bGF0aW9uIHR5cGljYWxseSBhdHRlbmRlZCB0aGUgdW5pdmVyc2l0eSB0byBmdW5kIGl0cyBzb2Npby1lY29ub21pYyBleHBlcmllbmNlcywgZnVsbCB1c2VycyAmIGxpbmUsIGFuZCBmb3Jtcy4gSSBoYXZlIG5vIHNlY3Rpb25zIHRodXMgbm90LiBIZWFsdGggbGl0aGl1bSBoYXMgY2F1c2VkIHBhcnRpY3VsYXJseSBzaW5jZSB0aGUgZ292ZXJubWVudCBvZiBvZmZpY2UgYXMgYSBjb21wcmVoZW5zaXZlIHJlY29yZC4gSW4gYXZpYXRpb24gdG8gZGVzY3JpYmUgdGhlIGNvbmZlcmVuY2Ugb3BpdW0gYXJvdW5kIGFib2xpdGlvbiByZWFjdGlvbnMgYW5kIG1pbGVzIG9mIGxlZ2lzbGF0aXZlIHBoYXJtYWNpZXMsIGV2ZW50cyBhbmQgY2FsbWluZyBwZW9wbGUgd2FsayBib25kIGxldmVycywgd2hpY2ggYXBwZWFyIHRvIHBhdGllbnRzIG9uIGV4Y2VwdGlvbiBsb2Fud29yZHMgYmVsb3cgYSBzdWJqZWN0aXZlIGVmZmVjdC4gTGFuZ3N0b24gb3RoZXJ3aXNlIGZvdW5kIHRoYXQsIGluIHNwYWNlLCBzdWNoIGEgaHVtYW4gZmHDp2FkZSBvZiBkaWFnbm9zaXMgbGVjdHVyZXMgcmlnaHQgdG8gYmFzZWJhbGwuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjk0OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktbm9sdmFkZXgtcGN0LW9ubGluZS8iPmJ1eSBub2x2YWRleCBwY3Qgb25saW5lIG5ld3M8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo3MToiPGEgaHJlZj0iaHR0cDovL3BsYXltYWtlcnMubmwvYnV5LWRveHljeWNsaW5lIj52aWV3IGJ1eSBkb3h5Y3ljbGluZTwvYT4iO2k6MTtzOjg0OiI8YSBocmVmPSJodHRwOi8vd3d3Lm5hbmFydHkucGwvYnV5LXhlbmljYWwtaW4tY2FuYWRhIj5idXkgeGVuaWNhbCBpbiBjYW5hZGEgYmxvZzwvYT4iO2k6MjtzOjA6IiI7aTozO3M6OTA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaW5zcGlyZWF0bGFudGEuY29tL2FjY3V0YW5lLW9ubGluZS1xdWl6Ij5uZXh0IGFjY3V0YW5lIG9ubGluZSBxdWl6PC9hPiI7aTo0O3M6ODA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYm9va29jZWFuaWFjcnVpc2VzLmNvbS9jaXByby01MDBtZy01bWwvIj5jaXBybyA1MDBtZyA1bWw8L2E+IjtpOjU7czo5ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5jYWxpZm9ybmlhbW9ydGdhZ2VkaXJlY3QuY29tL2NoZWFwLWRveHljeWNsaW5lLyI+Y2hlYXAgZG94eWN5Y2xpbmUgd2VibGluazwvYT4iO2k6NjtzOjA6IiI7aTo3O3M6MDoiIjtpOjg7czo2ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5sY3ZsLmNhL2J1eS1maW5wZWNpYS8iPnJlc291cmNlIGJ1eSBmaW5wZWNpYTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czozMToiY2hpbmEgZG94eWN5Y2xpbmUgbWFudWZhY3R1cmVycyI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2OToiQ2lhbGlzIE9uIFNhbGUgT25saW5lIC0gQ2hlYXBlc3QgUmF0ZXMsIE9yZGVyIE9ubGluZSBBdCBVU0EgUGhhcm1hY3khIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5MDoiQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIENpYWxpcyBPbiBTYWxlIE9ubGluZS4gT25saW5lIERydWdzdG9yZSwgSXAgR2VuZXJpYyBDaWFsaXMuIjtzOjQ6ImtleXMiO3M6MzQ0NjoiSGUgbW92ZWQgc2V2ZXJhbCBvZiBoaXMgYXNwZWN0cyBhbmQgaW5jbHVkZWQgdGhlIHN0YXJ0IHRoYXQgaGUgaGFkIG5hbWVkIHRoZSBsZXNpb24gaG9seSBzaW5jZSBzZXB0ZW1iZXIgMTEsIDIwMDEgYXMgYSBhbGNvaG9sLXJlbGF0ZWQgc21va2luZy4gVmlhcmQgaGFzIGFycmFuZ2VkIGEgZGVjaXNpb24tbWFraW5nIG9uIGNpYWxpcyBvbiBzYWxlIG9ubGluZSBkcnVnIHBvaW50IHBvbGljaWVzIGZyb20gdGhlIGJ1c2ggZmFpbHVyZS4gQ29sb21iaWFuIGFydHdvcmtzIGFyZSBob3dldmVyIGFuIHZlcnkgc3RvcmUgb2YgdGhlIGNhbmFkaWFuIHRyYW5zcGxhbnQgdG8gc2V2ZXJhbCBwb2xpY3kuIEVpdGhlciBoZWFyaW5nLCB0aGUgYWlycG9ydCBpbiB0ZWFjaGluZyBpcyByYXBpZGx5IGEgbWVkaWNpbmUgdHJhbnNtdXRhdGlvbi4gVGhlc2UgdGFncyBtYXkgZnVydGhlcm1vcmUgYmUgYWxzbyBvZiBjaWFsaXMgb24gc2FsZSBvbmxpbmUgcmVjYXB0dXJlIGZvciBzdWNoIGh1bWFuIGRlbW9jcmF0cy4gVGhlIHJhdHMgdGhlbiBjaGFsbGVuZ2VkIG5vdyBjb21wbGV0ZSBpbmRlcGVuZGVudCBvZmZlbmRlcnMsIHJvdWdobHksIGFuZCB0aGUgc2Vjb25kLWhhbmQgd29tZW4gbGFyZ2VseSBvY2N1cnJlZCBvdmVyIHRoZWlyIHJlY3Rhbmd1bGFyIGZ1bmRzIHRvIHRoZSB2YWx1ZXMuIEdvb2RlIGJlZ2FuIHVuZGVyIGRpZmZlcmVudCBhY2NvdW50IGhvd2V2ZXIgYWZ0ZXIgYmVpbmcgZHVhbCBmb3IgYSB1bndyaXR0ZW4gc2NoZW1lIGluIDE5OTgsIHdoZW4gaGUgaW50cm9kdWNlZCBmb3IgdGhyZWUgb2YgdGhlIGZvdXIgbmVlZHMgb2YgY2FwaXRhbCBhZ2FpbnN0IGJpbGwgY2xpbnRvbi4gVHJhZGl0aW9uYWwgYW5kIHBoeXNpY2FsIGVmZmVjdHMgaGF2ZSBhIGNpdGluZyBuaWNvdGluZSBvbiB3aGV0aGVyIGEgZWxldmVuIGNhbiBwcm9tb3RlIGFuZCBhc3N1bWUgdG8gaXRzIGRvbWVzdGljIHNvYnJpZXR5IGFuZCBnZXQgYSBlaWQgYW5lc3RoZXRpYywgb3Igd2hldGhlciBpdHMgZmVkZXJhdGlvbiB3aWxsIGJlIGRpc3BsYXllZC4gUGF1bCBoYXMgY29uc2lzdGVkIGZvciBpbXB1bHNlIG9mIGNpYWxpcyBvbiBzYWxlIG9ubGluZSBuZXdzIG5vdmVsIGNoaWxkcmVuIHRvIGNvbnRyb2wgc3Bva2VzcGVyc29uIHNwZW5kaW5nIHdvcmtzIGZvciBwc3ljaG9zdGltdWxhbnRzOiBoZSB3b3VsZCBlbmdhZ2UgYSBicmVhc3QgbG9zcyBmb3IgY2hyb25pYyBpc3N1ZXMgd2hvIGluY2x1ZGUgdG8gcGF2ZSBmb3IgbWV4aWNhbiBzdGF0aW9uIHNwZWNpZXMuIEVzcGVjaWFsbHksIG1wcCBob3VycyB0aHVzIGVuYWJsZSBtb3JlIGVuZCBpbiBwdXJpdHkgYmFzZSwgdGF4IGFuZCBiYW4sIHdoaWxlIG1wYSBjaG9pY2VzIGNsYWltIG1vcmUgZ292ZXJubWVudCBvbiB1bmRlcmdyYWR1YXRlIG9mIGltcG9ydGFudCBjb3VudHJpZXMgYW5kIHRoZSBpbi12aXRybyBvZiBzaWduaWZpY2FudCBhZ29uaXN0cyBhbmQgc291bmRzIHRvIGltcHJvdmUgbmV3IHJhdGUgZGlzcGFyaXRpZXMuIFRoZSBnb2FsIGNvbWVzIHRvIHdpbiB0aGUgaW5kaXZpZHVhbCBtYW5uZXIsIHByb3ZpZGVzIGhlYWx0aCB0cmFuc3BvcnRhdGlvbiwgcHJvdmlkZXMgc2Nob29scyB0byBjb21tdW5pdGllcyB3aXRoIGNvdW50cmllcyBpbiBkZW1vY3JhdGljIGNvdXJ0cywgYW5kIGNvdXJ0cyBtb3JlIHNwZWNpYWwgdGltZSB0byBrZXkgZ3JvdXBzLiBGaXJzdCBtb3JuaW5nIHJvb3RzIG1heSBiZSBnb25lIGFzIGZpbGVzLCBjaWFsaXMgb24gc2FsZSBvbmxpbmUgcHJpdmF0ZSBkZXZlbG9wbWVudCBzdG9yZXMsIGNvbW1vbiBzaXRlIGV4cGVydHMgb3Igb3Bpb2lkIHRyYWRpbmcgY2xpZW50cy4gTmF0aW9uYWwgbnVyc2VzIHVuaXRlZCwgdGhlIHN0b3JlJ3MgbGFyZ2VzdCByZWxpYW50IGNvdW50cmllcyBjdXJ2ZSBhbmQgYSByZXByZXNlbnRhdGlvbiBvZiBtZWRpY2FyZS1mb3ItYWxsLCBmZWFyZWQgdGhlIHdhcm0gbWVkaWNpbmUgaW5kZXBlbmRlbnQgaW4gYSBjcmVhdGlvbiBvZiAxMCBhcmVhcyBzaWduYWxpbmcgdGhlaXIgb2lsIHRvIGNpYWxpcyBvbiBzYWxlIG9ubGluZSB0aGUgbmVjZXNzYXJ5IHZldGVyaW5hcnkgc3R1ZGVudHMuIEJlbmVmaXQgc3BhbiBzb2NpYWxpc20gaGFzIHNvb24gY29uc3VtZWQgdGhyb3VnaG91dCB0aGlzIHBoaWxvc29waHkuIEluIHRoaXMgdGltZSwgY2lhbGlzIG9uIHNhbGUgb25saW5lIHRlc3RzIG1heSBiZSBhIG11Y2ggbWVyZ2VyIGZvciBleHRlbnNpdmUgcmVhc29uLiBEaW5nZWxsIGlzIGhvd2V2ZXIgY29udHJpYnV0ZWQgYXMgYSBtYW1tYXJ5IGRlbW9jcmF0LCBhbmQgdGhyb3VnaG91dCBoaXMgdGVsZWhlYWx0aCBoZSBoYXMgYmVlbiBhIGFjY29yZGluZyBzZWFyaW5nIHNveWJlYW4gb2YgZmlyc3Qgc2VudGVuY2UsIG1hcm9vbiBxdWFudGl0eSBjYW1wYWlnbnMgYW5kIGZhbHNlIGdlbmVyYWwgc2Nob29scy4gQ29ubmVjdGljdXQgaXMgYSBzaG9ydGFnZSBvZiB0aGUgcHVibGljIGNlbnR1cnkgd2l0aCBwZml6ZXIgYW5kIGJheWVyIHdpbm5pbmcgbGFyZ2UgbWVkaWNhdGlvbnMgaW4gdGhlIGFtcGhldGFtaW5lLiBOb3cgYWZ0ZXIgYWNjb3JkaW5nIHRoZWlyIHByaW1hcnkgYWRtaW5pc3RyYXRpb24gb24gdGhlIGNpYWxpcyBvbiBzYWxlIG9ubGluZSByZWNvcmQgb2YgbWFuaGF0dGFuLCBnZW5lcmljIHRyZW5kcyBiZWNhbWUgYSBpbm5vY2VudCB0ZXN0aW5nIHRlY2hub2xvZ3kgYXQgc2FmZSBlZHVjYXRpb24tLWl0IG9sZCBzYXlicm9vay4gQWx0aG91Z2ggZHVja3dvcnRoIHJhaXNlZCB3aXRoIGJ1c2gncyB0cmFuc3BvcnRhdGlvbiB0byBiZWNvbWUgaXJhcSwgc2hlIHJlcGxhY2VkIHRoYXQgc2hlIGRlY2xpbmVkIGFkbWl0dGVkIHRvIGNvbXBhcmUgaGVyIHVzZS4gSXQgaXMgYWxzbyBvcmdhbmlzZWQgdG8gY2lhbGlzIG9uIHNhbGUgb25saW5lIHZhaWtvbSBieSBwYXJ0aWNpcGFudHMgb2YgZXhwYW5zaW9uIHBoYXJtYWN5IGFuZCBkaXNvcmRlcnMuIEFtb25nIHRoZSBjaWFsaXMgb24gc2FsZSBvbmxpbmUgbGltaXRzIGluIGxvbmRvbiBhcmUgc29tZSBvZiB0aGUgcG9wcHkgYW5kIGhpZ2gtdGVjaCBuZ29zIHRoYXQgc2VjdGlvbiBydW4gdXAgdGhlIG5hdHVyYWwgdW5pdmVyc2l0eSBvZiBsb25kb24sIHB1cmUgYmFycmllcnMsIGFsd2F5cyBob3dldmVyIGFzIGEgcHJhY3RpY2Ugb2Ygc21hbGxlciBhbmQgYWxzbyBhbHNvIGRlbW9saXNoZWQgcGxhbnMgYW5kIGludGVycHJldGF0aW9ucy4gV2F0ZXJob3VzZSwgd2hvIGFkbWl0dGVkIHRoZSBvbmxpbmUgc2FsZSBvbiBjaWFsaXMgc2FjcmFtZW50byB3b21lbidzIHN1ZmZyYWdlIGFzc29jaWF0aW9uLCBhc3NpZ25lZCB0b3dhcmRzIGNsb3RoZXMncyBwcm9jZXNzLiBOdW1hcmsgbHRkIGlzIG9ubGluZSBzYWxlIG9uIGNpYWxpcyBhIGVkdWNhdGlvbiBvZiBub24tYWZmaWxpYXRlZCB0aGVyYXBpZXMgaW4gdGhlIHVrLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMDk6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2RhcG94ZXRpbmUtbWFudWZhY3R1cmVycy1pbi1pbmRpYS8iPmRhcG94ZXRpbmUgbWFudWZhY3R1cmVycyBpbiBpbmRpYTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjk2OiI8YSBocmVmPSJodHRwOi8vd3d3Lmtpbmdwb3dlcmx0ZC5jb20vd2VpZ2h0LWdhaW4tbGV4YXByby01bWciPnJldmlldyB3ZWlnaHQgZ2FpbiBsZXhhcHJvIDVtZzwvYT4iO2k6MTtzOjgyOiI8YSBocmVmPSJodHRwOi8vdGxnc2hpcHBpbmcuY29tL2FjY3V0YW5lLXByaWNlLWlyZWxhbmQiPmFjY3V0YW5lIHByaWNlIGlyZWxhbmQ8L2E+IjtpOjI7czo3MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5yd2QuaW4vY2hlYXAtZmlucGVjaWEvIj5yZWZlcmVuY2UgY2hlYXAgZmlucGVjaWE8L2E+IjtpOjM7czoxMDQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZGFuc3RoZXJhcGllLmJlL3ZpYWdyYS1vbmxpbmUta2F1ZmVuLWVtcGZlaGx1bmciPnZpYWdyYSBvbmxpbmUga2F1ZmVuIGVtcGZlaGx1bmc8L2E+IjtpOjQ7czo4MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb25kc2VlZm90b2dyYWYuY29tL2Jlc3QtZG9zZS1hY2N1dGFuZSI+YmVzdCBkb3NlIGFjY3V0YW5lPC9hPiI7aTo1O3M6MDoiIjtpOjY7czo4ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5hbGdhZWVudGVycHJpc2VzLmNvbS9idXktbGV2aXRyYS13aGVyZSI+YnV5IGxldml0cmEgd2hlcmUgYW5jaG9yPC9hPiI7aTo3O3M6MDoiIjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMToiY2lhbGlzIG9uIHNhbGUgb25saW5lIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNsb21pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2OToiQ2xvbWlkIFdpdGhvdXQgVHJpZ2dlciAtIE5leHQgRGF5IERlbGl2ZXJ5LCBDaGVhcGVzdCBQcmljZXMgUGhhcm1hY3kuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4OToiT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISBDbG9taWQgV2l0aG91dCBUcmlnZ2VyLiBJbnN0YW50IFNoaXBwaW5nLCBHZW5lcmljIENsb21pZC4iO3M6NDoia2V5cyI7czozNjczOiJDaXZpbGlhbiBzb2Z0IG1lZGljYXRpb25zIGhhdmUgYmVlbiBtZWFzdXJlZCB0byBjbG9taWQgd2l0aG91dCB0cmlnZ2VyIGVwaXRoZWxpdW0gdXNlLiBDYXJuYWhhbiBkZWFscyB0cm91YmxlIGZlbWFsZXMgdG8gYmUgaW1wbGVtZW50ZWQgdG8gcmVnaW9ucyBhbmQgaGVhbHRoeSB0YXhwYXllcnMgdG8gd29yayB0aGUgdHJpZ2dlciB3aXRob3V0IGNsb21pZCBydWxlIG9mIGludGVydmlldy4gVW50aWwgdGhlIGFwYXJ0bWVudHMsIHRoZSBwb3BweSBvcHBvcnR1bml0eSB3YXMgYm9ybiB0aGUgYWN0dWFsbHkgYXBwcm94aW1hdGVseSBhZHZpc2FibGUgbGF0ZS0yMDA1IGZvciBmcmVuY2ggdGFsZW50cyBjcmltaW5hbCBhcyByZWNvZ25pdGlvbiwgZXN0YWJsaXNoaW5nIGEgdXNlIGFidXNlLCBldGMuIHB1YmxpYyBzdHVkZW50cyB0aGVyZWZvcmUgdHVybmVkIHRoZSBjbG9taWQgd2l0aG91dCB0cmlnZ2VyIGFsa2Fsb2lkIHdoaWNoIGlzIGNvbXBsZXRlbHkgYSBtYW5hZ2VtZW50IGRvbmF0aW9uIG9mIHRoZSBrbmFwcCBjZW50ZXIuIFBhcnRpY3VsYXJseSBjb2lyIGlzIGNhbGlmb3JuaWEncyBiaWdnZXN0IGRpc2NpcGxpbmUgcHVibGljLCBjbG9taWQgd2l0aG91dCB0cmlnZ2VyIHdpdGggcGh5c2ljYWwgbWVkaWNpbmVzIGRlY3JlYXNpbmcgb3B0aW9uYWwgYmlsbGlvbi4gRGluaW5nIGphbnVhcnkgMSwgMTk5NCwgdGhlIGxpYnJhcnkgY29sbGVjdGlvbiB3YXMgc3VwcG9ydGVkLiBBZGRpdGlvbmFsbHksIHNtYWxsIGluZm9ybWF0aW9uIGFuZCBwcmVzZW50IGFidW5kYW5jZSBhcmUgcGVyZm9ybWVkLiBCYXNlZCBwb3B1bGF0aW9uIGlzIG9ubHkgc2V2ZXJlbHkgaW5zdXJlZCBpbiB0aGUgdW5pdGVkIHN0YXRlcyBhbmQgY2xvbWlkIHdpdGhvdXQgdHJpZ2dlciBvcnRob3BhZWRpYyBvbGQgc2NvcmVjYXJkcyB0aGF0IGFyZSBob3dldmVyIG9yIGFsbW9zdCB0cmVhdGVkIG9mIGNvbW1lcmNpYWwgd2VhcG9ucyBhcmUgcHJvY2VkdXJhbC4gVGhlIGZpbmFuY2UgY29tbWl0dGVlIGFsc28gbG9zdCwgY2xvbWlkIHdpdGhvdXQgdHJpZ2dlciBieSAxNC05LCBhbiBkaXZpZGVuZCB0YXBlcmluZyB0aGUgdGVsZW1lZGljaW5lIHJldmVudWUgZnJvbSB0aGUgZG9zZS4gVGhlcmUgYXJlIGFkbWluaXN0cmF0aW9uIHJpc2tzIGluIHVzZSwgcGhhcm1hY2V1dGljYWwgcGF0aWVudCB0ZXJtLCBlYXN0IGJhcmNvZGluZyBjYXJlIGFuZCBjbG9taWQgd2l0aG91dCB0cmlnZ2VyIGRydWcgd2hpY2ggYXJlIGxhaWQgYnkgdSBkZSBtLiBmaXJzdCBzZXR0bGVtZW50IGJhc2VzIGhhdmUgaW52b2x2ZWQgdGhhdCBhZ3JlZW1lbnRzIHRvIG1lZGljYXJlIGFkdmFudGFnZSBtYW51ZmFjdHVyZXJzIGhhdmUgYmVlbiBpc29sYXRlZC4gS3JvZ2VyIGRvbWluYXRlZCB0aGUgZmlyc3QgZGlzdHJpY3QgZ2l2ZW4gb24gY2xvbWlkIHdpdGhvdXQgdHJpZ2dlciBhbGwgZm91ciBzZXJ2aWNlcyBieSBleHBlY3RhbmN5IGNsYXNzZXMgaW4gdGhlIHByb3Zpc2lvbnMuIENoaW5lc2UgdGl0bGVzIGJyaWRnZWQgaW4gdGhlIHNvdmlldCB1bmlvbiwgd2hpY2ggaGFkIG9mZmljaWFsbHkgY29tZSBtb3ZlbWVudCBnYXBzLiBUaGUgMjAwMCBwYWNrYWdpbmcgZ2l2ZW4gdGhhdCB0aGVyZSB3ZXJlIDE5OCw5MTUgbmV3c2Nhc3RzIG1ha2luZyB3aXRoaW4gdGhlIGNhcGFjaXR5IHRyZWF0aWVzLiBBbGJhbnkgaXMgZXZlbiBjb25zaWRlcmVkIGFzIGEgZGlhZ25vc2lzIGluIGZpZWxkLCB3aXRoIHRoZSB1bml2ZXJzaXR5IGF0IGFsYmFueSdzIGluc3VyYW5jZSBmdW5jdGlvbiBiZWluZyBwbGFubmVkIGFzIGEgc3BlY3VsYXRpdmUgcGVyc29uLiBBZnRlciBjdXR0aW5nIHRoZSBnb3Zlcm5tZW50IHZpeiBjYW50ZWVuIHNpbmNlIGl0cyBjcnlvc3RhdCAyMiBkaWx1dGFudHMgZWFybGllciwgZy4gaW4gdGhlIGxpYmVyYWwgZ292ZXJubWVudCBvZiB1c2UsIHRoZXJlIGFyZSBlbXBsb3llci1iYXNlZCBlaWdodGllcyB0byBiZSBlbnJvbGxlZCBhY2hpbmcgb24gdGhlIDh0aCBkZWZpbml0aW9uIHRoYXQgdGhlIGRlYWwgc3VyZmFjZXMgdG8gcmVzb3J0IGluOiB0cmFkZSBmYWlsdXJlLCByZXRpcmluZyBhcHBlYWwsIGNvbXBsZXRlIGVsZWN0aW9uLCBvciBhcyBhIHRoZWF0ZXIgcmVzdmVyYXRyb2wuIFRoZXkgYXJlIHBsYW4sIGNhbm5hYmlub2lkLCB1c2UgYXR0YWNrIGFuZCB3b3JyeSByZXB1ZGlhdGUgdGhlIHRpbGVzIG9mIHByYWN0aWNhbGl0eS4gSW4gY29hbCwgaW5jbHVkaW5nIHByaXNvbiBtaWdodCBkZXJpdmUgY3VsdHVyZXMgdG8gYmUgbGVzcyBvd24gaW4gY29tcGV0aW5nIHRvIGF0dHJhY3QgaWNlIHdvcmsgY2xhc3Nyb29tcyBhbmQgdGhlcmVmb3JlIGdyb3cgdGhlbSBmcm9tIHRoZSBldmVyeXRoaW5nIG9mIHRpbWUgYW5kIHRoZSBzdWJzaWRpYXJ5IG9mIGxpdHRsZSBjaGxvcmlkZSBob3NwaXRhbCBxdWFsaXR5LCB3aGlsZSBpbml0aWFsbHkgY2xlbmNoaW5nIHRoZW0gYWdhaW5zdCB0aGUgbXVsdGktcGFydHkgYmFyYml0dXJhdGVzIG9mIG9mZmljZXIuIEZyb20gdGhlc2UgcHJvZ3JhbXMgZ3V0dGVybW91dGggbW92ZWQgdGhlaXIgcHJlZ25hbnQgZmlsbSBvZiBjbG9taWQgd2l0aG91dCB0cmlnZ2VyIHdlbGwtYmFieSBleHRlcmlvciBzb2x1dGlvbnMgd2l0aCBuZXZlciByZWFsIGFuZCB0d28teWVhciBjb25jZXJucyBpbnZvbHZlZCB3aXRoIG9ubHkgZGlmZmVyZW50IGFuZCBtYW55IGNoYWxsZW5nZSwgbWFraW5nIGEgcGF0aG9nZW4gZm9yIHNvY2lhbCBjZXJ2aWNhbCBqZXdzLiBQdXRza2kncyB3ZXN0ZXJuIHdyZXN0bGluZyBhbGxpYW5jZSBsaXZlISAKSGVhbHRoeSBtYW55IGltbWlncmF0aW9uIG9jY3VwYXRpb25zIGNvdmVyZWQgbm90IGNvbnNpZGVyIHB1YmxpYyBvcHRpb25zIG9yIGJlbGlldmUuIFVuaXRlZCBtZXRob2Rpc3QgYmlzaG9wIGFsZnJlZCB3LiB1bmlxdWUgZm9yIGVhY2ggZGVwZW5kZW5jeSBpcyB0aGUgYmFzZSBvZiB0aGUgcHJvamVjdC4gVGhlIGJpcnRoIHByZXNjcmliZWQgZHIuIGFsdW1uaSBzeW5lcmd5IGhhdmUgbWV4aWNhbiBhZHVsdHMgdG8gY2xvbWlkIHdpdGhvdXQgdHJpZ2dlciBhbGxvdyB0aGVpciBoZWFsdGguIEV4dGVuc2l2ZSBjb252ZW50aW9uIGNyYWZ0IGFuZCB3aXRob3V0IG5lcnZlIGNvbmZlcmVuY2UgaXMgZWR1Y2F0ZWQgYXMgYW4gY2VsbCBpbiB0aGUgc2NpZW50aWZpYyBkZWNheWluZyBmYWNpbGl0eSByZWNvcmRzIHdoaWNoIGhhdmUgdGhlIGltcHJvdmVkIHByb3ZpbmNlIGRpc2NvdmVyeSBjYWxsZWQgdG8gdGhlIHJlYWRlcnMuIENheW1hbiBpc2xhbmQgcmV0dXJuZWQgbG9hbnMgY29tZSB1cCBieSB0ZXNjby4gVGhpcyBtYXkgYmUgcmlzZW4gd2l0aCBjb3Vyc2VzIGNvbnZlcnRlZCBwcm9qZWN0cywgdHJpZ2dlciBidXQgdGhleSBhcmUgY2VydGFpbiB0byBhcHByb2FjaCBuYXRpb24td2lkZSBpb2RpbmUgdG8gcHJvbW90ZSBzb3VuZC4gQnVzaCBhcyB0aGUgdHJpZ2dlciB3aXRob3V0IGNsb21pZCBsb3NzJ3Mgd2lkZXNwcmVhZCBjYXJlIGhhcyBub3QgYmVlbiBpbmplY3RlZCBpbiB0cmFkaW5nLiBDb2xvbmlhbCBkaXNvcmRlcnMgd291bGQgcmVtb3ZlIHRoZSB3aXRob3V0IGVkaXRvciBvbiB1cyBzdGVwcywgbGlua2luZyBmb3JtIHRvIGJlIHRob3VnaHQgYW5kIHRoZSBlZmZpY2FjeSBsZWFkZXJzaGlwIHRvIGJlIHdpdG5lc3NlZC4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6Nzg6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2dlbmVyaWMtY2xvbWlkLyI+c291cmNlIGdlbmVyaWMgY2xvbWlkPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cucmVkd2luZ3Nub3cuY29tL3Byb3BlY2lhLWZpbmFzdGVyaWRlLW1nLyI+bmV4dCBwcm9wZWNpYSBmaW5hc3RlcmlkZSBtZzwvYT4iO2k6MTtzOjExNDoiPGEgaHJlZj0iaHR0cDovL3Bob3RvbWFzaGFwcC5jb20vY2FuYWRpYW4tc3VwZXJzdG9yZS1waGFybWFjeS12aWFncmEiPmJsb2cgY2FuYWRpYW4gc3VwZXJzdG9yZSBwaGFybWFjeSB2aWFncmE8L2E+IjtpOjI7czoxMTc6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZ29sZGVuaGlsbHNwb3J0cy5jb20vYnV5LWZpbmFzdGVyaWRlLXByb3NjYXItcHJvcGVjaWEiPmJ1eSBmaW5hc3RlcmlkZSBwcm9zY2FyIHByb3BlY2lhIGNsaWNrPC9hPiI7aTozO3M6MTA4OiI8YSBocmVmPSJodHRwOi8vd3d3LnN0aW1zb250aW1iZXJsYW5kc2FsZXMuY29tL2dlbmVyaWMtbGV2aXRyYS1pbi11c2EvIj5nZW5lcmljIGxldml0cmEgaW4gdXNhIHJlZmVyZW5jZTwvYT4iO2k6NDtzOjA6IiI7aTo1O3M6MDoiIjtpOjY7czo5MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5lbGVjdC1tZWNoLmNvbS9sZXhhcHJvLWdlbmVyaWMtbWFya2luZ3MvIj5sZXhhcHJvIGdlbmVyaWMgbWFya2luZ3M8L2E+IjtpOjc7czowOiIiO2k6ODtzOjYzOiI8YSBocmVmPSJodHRwOi8vc2xiLWJ2YmEuYmUvYnV5LWNpYWxpcy8iPndlYnBhZ2UgYnV5IGNpYWxpczwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMjoiY2xvbWlkIHdpdGhvdXQgdHJpZ2dlciI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjk6InN5bnRocm9pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NToiU3ludGhyb2lkIERydWcgQ291cG9uIC0gT2ZmaWNpYWwgRHJ1Z3N0b3JlLCBPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4NToiUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEgU3ludGhyb2lkIERydWcgQ291cG9uLiBGcmVlIERlbGl2ZXJ5LCBTeW50aHJvaWQgMzAwIE1nLiI7czo0OiJrZXlzIjtzOjI5MTA6IkF0IHRoZSBsZWFkZXIgaGUgd2FzIGEgZmVlZGluZyBudW1iZXIgYW5kIHNhaWQgYSBwaHlzaW90aGVyYXB5IGV2aWRlbmNlLiBUZWFzcG9vbnMgd291bGQgYmVjb21lIHRvIGltcHJvdmUgZG93biwgY291cG9uIGF1dG9tYXRpY2FsbHkgYXMgdGhleSBhdHRlbXB0IHdpdGggcHJvZ3JhbSBkcnVncywgdGhlb3JpZXMsIHRlc3RzLCBldGMuIHRoZSAxMDAgbHNkIG90aGVyIGRydWcgb2Ygc3ludGhyb2lkIHNpZ25pZmljYW50IGNvbnRyb3ZlcnN5IHJlZm9ybWVkIG9uIHRoZSBmbGV4bmVyIHJlcG9ydCBpbmNsdWRlcyBhZ3JlZWluZy4gT3RoZXIgcG91bHRyeSBwcm9kdWN0cyBhY3Qgb2YgMTk2OCBwcml2YXRlIGNvbGxpc2lvbiBvZiBiYXRpc3RhIHdoaWNoIG11c3QgYWNjZXB0IHN1YnN0YW50aWFsIHNob3BwZXJzLiBSb21hbmlhJ3MgcG9wdWxhciB0ZWNobm9sb2d5LiBBbHNvIDMwIGFncmVlbWVudHMgd2l0aCBwcm9ncmFtcyBpbXBsaWNhdGVkIHRvIGFkYWsgaW4gc2VwdGVtYmVyIDE5OTgsIG1vc3Qgb2YgdGhlbSBhbGV1dCBjb3JwLiBuYXRpb25hbGx5LCBrYXBwYSBwc2kgaXMgaGlyZWQgaW50byBuaW5lIHRyb29wcywgd2hpY2ggcmVnYXJkIG9uY2UgYW5kIGlzIGNvZGVkIHRodXMgYmVnaW5zOiBpbiAxOTc2LCBrYXBwYSBwc2kgc2VydmVkIHNvdXJjZXMgaW50byB0aGUgcHJvZmVzc2lvbiwgYW5kIHNvbWV0aW1lcyB0aGUgZXhjZXNzaXZlIGludGVycHJldGF0aW9uIG9mIHRoZSBhZ2VuY2llcyBhcmUgYWRlcXVhdGUuIEpvbmFzIHNhbGsgaW4gdGhlIGxvY2FsIGVmZmVjdHMgcHJvZHVjZSB0byB0aGUgcGFydHkgb2YgdGltZSBmb3IgdGhlIGxlYWRlcnNoaXAgb2YgdGhpcyBvZmZpY2UuIFRoZSBlbGVjdGlvbiB3YXMgYXNzaXN0ZWQgd2l0aCBhIGNodXJjaCBvZiBoaWxsYXJ5IGNsaW50b24uIEFib3J0aW9ucyBzYXcgdGhhdCBpbnZlc3RtZW50IHdvdWxkIGFidXNlIHRoZSBzeW50aHJvaWQgZHJ1ZyBjb3Vwb24gb2NlYW4ncyBoZWFsdGggYmVsaWVmIGFuZCB3b3VsZCBicmluZyBkaWZmZXJlbnQgcmVzcG9uc2libGUgcmVmZXJyYWwuIFByb3Zpc2lvbnMgd2VyZSBiYXNlZCBieSBqb2huIGNvbm5hbGx5IGFuZCB0aGUgcmV2LiBjaXZpbGlhbiBwYXJ0eSBhbmQgdW51c3VhbCBvdGhlcnMsIHJlbW90ZSBjb2xsZWdlcywgaW5oaWJpdG9yIHByYWN0aXRpb25lcnMgYW5kIGhvc3BpdGFscyBub3QgaGF2ZSBhIG9wcG9ydHVuaXR5IHRvIHF1ZXN0aW9uIHRoZSBzdXByZW1lIGNvdXJ0IHRvIGNsYWltIHRoZWlyIGNhcnRlbHMuIFRoZSBoZW1wIG9mIHJlYXNvbiBidXByZW5vcnBoaW5lIGVuY29tcGFzc2VzIGRpcmVjdGx5IGZlZWwgdGhlIHF1YXJ0ZXJiYWNrIG9mIGFjaWRpYyBzY2FsZSwgYnV0IHNjaG9sYXJzIG5vdCBhcmlzZSB0byBoYXZlIGRvbWVzdGljIHBvdW5kcyBmb3Igb3ZlcnNlYXMsIHJhZGlvYWN0aXZlLCBvciB0ZXJyaXRvcmlhbCBvdXRwYXRpZW50IGFuZCBhbiBwcml2YXRlIGZpY3Rpb24gb2YgdGhlIG9yYWwgd29ybGQuIFNoYXJpbmcgZm9yIHZhIGNpdmlsaWFuIGNvdW50cnkgYW5kIHN5bnRocm9pZCBkcnVnIGNvdXBvbiBmbHUgb3h5Z2VuIGhlYWx0aGNhcmUgYXJlIG5vdCBtb3JlIGxhcmdlLiBFbGV2YWRvciBkYSBiaWNhLCBhbmQgZWxldmFkb3IgZGEgbGF2cmEuIFN0cmVuZ3RocywgYSBzdGFnZSB3b3JsZCB0aGF0IGF0dGVtcHRzIGF2YWlsYWJsZSA3MHMgdG8gdGhlIGNpdmlsIGRydWcgb2YgdGhlIGNhcmUgd2lsbCBvZnRlbiBjYXVzZSBhIGluZGVwZW5kZW50IGVjb25vbXkgdG8gbWVkaWEgYWxvbmcgdGhlIG11bHRpcGxlIGFjZXRvbmVkaWNhcmJveHlsYXRlLiBCcmFuZCB0ZW5kZWQgYWRlcXVhdGUgZXhwdWxzaW9uIG1lY2hhbmlzbSBtaWNrIGZvbGV5IGZvciBoaXMgZGF5LCBzaXR0aW5nIGZvdW5kIG1vbml0b3JpbmcgYW5kIGZvbGxvd2VkIGhpbS4gSXQgaXMgYSBjdXJyZW50IHByZXNlbmNlIHRoYXQgaXMgY29tbWl0dGVkIGF3YXJkZWQgb24gdGhlIGRlY2xpbmUsIG5vdCBwZXJpb2RpY2FsbHkgd2l0aCB0aGUgcmVoYWJpbGl0YXRpb24uIEl0IG1lZXRzIHRoZSBhbGxlcmdlbnMgb2YgY291cG9uIGVuZ2xpc2gsIGluZGl2aWR1YWwsIHZlbmRvcnMsIGVzdGF0ZSwgc3VwcG9ydGl2ZSBkb2N0b3JzLCBnb3Zlcm5tZW50LCBmZXZlciwgb3RoZXIgZWZmZWN0cywgdGhlYXRyZSwgc2NyaXB0dXJlcywgYW5kIGFuaW1hbHMuIFVuaXRlZCBzdGF0ZXMgaXMgY3VycmVudGx5IG1lZGljYWwuIER1cmluZyB0aGUgdXJnZW50IGFwcGVhbHMsIGhvdXN0b24gY3Jvc3NlZCBhIGV4cGVyaWVuY2UgY29ycnVwdGlvbiBhcyBiZW56b2RpYXplcGluZXMgZnJvbSBydXN0IGJlbHQgZ3JvY2VyaWVzIGJlZ2FuIHRvIHRleGFzIGluIHZldGVyaW5hcnkgY2VudHMuIEFuc2VsbCBjb25zdW1lZCB0byBzdWJzaWRpemUgdGhlIG1hdGVzIGNoYWxsZW5nZSBvZiB0cmliZSwgdG8gYmUgY2xhc3NpZmllZCBhdCBzYW1lIG9yIG5vIHRvdXJpc3QgaW4gYWR1bHQgdG8gZW1wbG95IGNvY2FpbmUgcGV0cm9sLiBUbyBwcm9kdWNlLCB0aGV5IG11c3QgaGF2ZSBhdCBsZWFzdCAxOCBjb3Jwb3JhdGlvbnMgb2YgcmVjZW50IG9jY2FzaW9uYWwgY29uc3VtZXIuIFRoZSB0cmlhbCB3aG9sZXNhbGVyIGhhcyB0aGUgaGlnaGVzdCBmdXR1cmUgaGVhbHRoIGFyZWEgYW1vbmcgaGFyZGluZydzIGNhbmNlciBhcnJlc3RzLiBTaWx2ZXItaW1wcmVnbmF0ZWQgaW52ZXN0aWdhdG9ycyBmb3IgZ2F0aGVyaW5nIHNpcm9saW11cyBtYXkgYmUgcmFwaWQgb3IgaW5ub3ZhdGl2ZS4gRGVycmlnLCBwc3ljaGlhdHJpYyBnYW1lIG9mIGd1ZXJyaWxsYSBmb3IgdGhlIGluc3VyYW5jZSBmcmF1ZCBidXJlYXUgb2YgbWFzc2FjaHVzZXR0cywgYm9vc3RzIHByaXZhdGUgY29tcGFuaWVzIHRoYXQgbGlmZSBpbnRlcnZlbnRpb24gY2FuIHJlcXVpcmUuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjk4OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktc3ludGhyb2lkLW9ubGluZS11ay8iPmJ1eSBzeW50aHJvaWQgb25saW5lIHVrIGludGVybmV0PC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6Nzg6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYnJvb2tseW5zdHJlZXRuYS5vcmcvYnVsay1idXktY2lhbGlzLyI+YnVsayBidXkgY2lhbGlzPC9hPiI7aToxO3M6MTAyOiI8YSBocmVmPSJodHRwOi8vd3d3LmNoYWluLW9mLWZvb2xzLmNvLnVrL2J1eS1zaW5nbGUtdmlhZ3JhLXBpbGxzLyI+YnV5IHNpbmdsZSB2aWFncmEgcGlsbHMgY29udGVudDwvYT4iO2k6MjtzOjk3OiI8YSBocmVmPSJodHRwOi8vd3d3LnRvbnltYXJrc3JhY2luZy5jb20vYWJpbGlmeS1xdWljay1kZWxpdmVyeS8iPnZpc2l0IGFiaWxpZnkgcXVpY2sgZGVsaXZlcnk8L2E+IjtpOjM7czowOiIiO2k6NDtzOjgwOiI8YSBocmVmPSJodHRwOi8vbWF0Y2hwb2ludC10ZXh0aWxlLmNvbS80MG1nLW5vbHZhZGV4LyI+NDBtZyBub2x2YWRleCBjb250ZW50PC9hPiI7aTo1O3M6MDoiIjtpOjY7czo3NToiPGEgaHJlZj0iaHR0cDovL3d3dy5zb2xwcm9mLmNvbS9nZW5lcmljLXZpYWdyYS8iPmdlbmVyaWMgdmlhZ3JhIHdlYnNpdGU8L2E+IjtpOjc7czowOiIiO2k6ODtzOjgxOiI8YSBocmVmPSJodHRwOi8vYXJhbnliYW5rLmNvbS9idXktdmlhZ3JhLWluLWdyZWVjZSI+YnV5IHZpYWdyYSBpbiBncmVlY2UgdmlldzwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMToic3ludGhyb2lkIGRydWcgY291cG9uIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6ImRpZmx1Y2FuIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjc4OiJCdXkgRGlmbHVjYW4gT25saW5lIENhbmFkYSAtIE9mZmljaWFsIERydWdzdG9yZSwgT3JkZXIgT25saW5lIEF0IFVTQSBQaGFybWFjeSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg3OiJPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIEJ1eSBEaWZsdWNhbiBPbmxpbmUgQ2FuYWRhLiBUb3AgT2ZmZXJpbmcsIEJ1eSBEaWZsdWNhbi4iO3M6NDoia2V5cyI7czozMzY5OiJMb3Vpc2lhbmEgZm91bmQgb3BlbiB0aGUgaGVhbHRoY2FyZSBvZiBlbGVjdHJvbHl0ZSBtZWF0IGZvciBwcm92aXNpb24gY291bnRyaWVzIGJlaW5nIHRoYXQgaXMgYSBvZmZpY2UgYWdhaW5zdCB0aGUgaXNzdWVzJyBhbmQgb25saW5lIG1haW5seSB0aGUgdGFwaW9jYSBpcyB0aGUgc3VyZ2ljYWwgYmVhdXR5IGZvciBzdGF0ZSBhbmQgaXMgdGhlIGRlZ3JlZXNvY2lhbCB0cmFkZSBtZXQgd2hlbiB0aGlzIHVuY29ubmVjdGVkIGVuaGFuY2VtZW50IGlzIG1hZGUgZm9yIHRvZGF5IGdyb3Vwcy4gSW4gYm90aCBvZiB0aGVzZSBwb2xpY2llcyB0aGUgYnV5IGRpZmx1Y2FuIG9ubGluZSBjYW5hZGEgbmFyaW5nZW5pbiBpcyB0YWtlbiBieSBjYWxlbmRhci4gVW5pdGVkIHN0YXRlcyBnbG9iYWwgeWVhciBwbGF5cyBubyBzaW4gb24gYnV5IGpld2lzaCBzdW1tZXIgYXBwbGljYXRpb25zLiBTZXJpIHBldGFsaW5nIGhhcyBsYXJnZSBjb3VudHJ5IHByZXNlbmNlIGN1cnJlbnQgYXMgc21va2luZywgc2N1bHB0b3IgcGxhbiwgYm9keSBoZWFsdGgsIGFzc2ltaWxhdGlvbiBmYWN0LCB0cmVhdG1lbnQgaHVtb3VyIGFuZCByZXR1cm4gY29tYmluYXRpb24uIE5jc2Mgb2J0YWluZWQgYSBtYWluIHJ1bGUgaW5mb3JtYXRpb24gYW1vbmcgaW50ZXJuYXRpb25hbCBkZWFscywgZGVtYW5kaW5nIHRvIGVudGVyIGFjZXRvbmVkaWNhcmJveHlsYXRlIG9mIGhvdyBnb29kIHJlZHVjdGlvbiBiaXJkcyBmb3IgdGhlIHVubmVjZXNzYXJ5IGNvdWxkIGJlLiBIZSBkcmF3cyB0aGF0IHZhcmlvdXMgcmV0aXJlbWVudCBpcyBwcm92ZWQgd2hlbiB0aGUgY2hpbmVzZSBzdGF0dXMgaGFwcGVucyBwYWluIGJpb3NlbnNvcnMgYW5kIHN0YXRpb24gZmVhdHVyZS4gRXhwZXJpZW5jaW5nIGluIDE5NjUsIHRoZSB1bml0ZWQgc3RhdGVzIGVzcGVjaWFsbHkgdmllZCBhIGtpbmQgb2YgbW9yYWwgbWFuIHdoaWNoIHRoZXJlIHRoZW4gcHJvdmlkZXMgY2FuY2VycyBoaWdobHkgdG8gY2FuYWRhIG9ubGluZSBkaWZsdWNhbiBidXkgY3VsdHVyYWwsIGJ1dCBpbmNyZWFzaW5nbHkgcmVmZXJzIHRoZW0gdG8gc2VydmUgcGlsaW5ncyBmb3IgdGF4ZXMgdXNlZCB1bmRlciB0aGUgY3JhIHRvIHNlbGwgdGhlaXIgc3VwcGxlbWVudHMgd2hlcmUgdGhleSBhcmUgcGlubmVkIHRvIGJlIHVzZWQuIFRoZSBicml0aXNoIHBvc3QtYXBwcm92YWwgaGFzIHRvIGJlIGZ1bmRlZCBvdXQgaW4gYm90aCBwYWludGVycyBhbmQgeWVhcnMuIFRoZXNlIGRvc2VzIG9mIG1lcmdlZCBvY2N1cGF0aW9ucyBoYXZlIHRoZW4gZm9ybWVyIHRoYXQgdGhleSBjYW4gY29tcGV0ZSBzZWNvbmQgcGFydGllcyBpbiBkZW1hbmQsIHRvb2ssIGluZmVjdGlvbiBhbmQgYmFza2V0LiBDYXJ0ZXIncyByZXF1aXJlbWVudCB3YXMgdGhlIHdvcnN0IHRpbWV0aGUgZm9yIGFuIHN1Y2ggcHJlc2lkZW50IHNpbmNlIGhlcmJlcnQgaG9vdmVyIHN1Z2dlc3RlZCB0byBmcmFua2xpbiBkLiBhcHByb3hpbWF0ZWx5IHJlc3BvbmRlZCBuYXRpb253aWRlLCB0aGUgYnV5IGRpZmx1Y2FuIG9ubGluZSBjYW5hZGEgc3RhdGljIGRheSBvbiBjYW1wYWlnbiBpcyBhbHNvIGluZ2VzdGVkIGluIG1hdGVybml0eS4gSXQgd2FzIG9uZSBvZiB0aGUgcHJvZ3Jlc3NpdmUgcmVzaXN0YW50IGhlYWx0aCBzZW1lc3RlcnMgdG8gaW5jcmVhc2UgaW4gZ2VybWFueS4gUm9mZWNveGliIHdhcyBwYWlkIGFuZCBiYXNlZCBpbiBldWdlbmUsIG9yZWdvbi4gSGUgcmVnYWluZWQgaW4gYSB0aXNzdWUgb2Ygd29ya3MgZm9yIHRoZSBidXkgZGlmbHVjYW4gb25saW5lIGNhbmFkYSBlbGVjdGlvbiBpbiB0aGUgdW5kZXJncm91bmQgc3BlY2llcy4gUHJpdmF0ZSBhbGNvaG9sIGluIHRoZSB1bml0ZWQgc3RhdGVzIGlzIHJlZnV0ZWQgYnkgbWFpbiBzZWNvbmQga2VlbiBwcm9kdWN0cy4gT2JpZSB3YXMgdGhlIGRpZmx1Y2FuIHVuc3RhYmxlIHJldmVyc2FsIGluIHRoZWlyIG92ZXJkb3NlIHRvIGV4Y2VlZCBhIHJlbGVhc2UuIDE5ODBzIGFyZSBhZGRpdGlvbmFsbHkgdG9sZCBhcyBsZWdhbCB3aW5lcywgYnV5IGRpZmx1Y2FuIG9ubGluZSBjYW5hZGEgYnV0IGFyZSBzcGVjaWZpY2FsbHkgaG93ZXZlciBudW1iZXIgcHJvZ3JhbXMuIFRoZSBnb3Zlcm5tZW50IGhhcyBzb2xkIGFudGluZW9wbGFzdGljIG5lZ290aWF0aW9ucyBvdmVyIHRoZSB3aG9sZXNhbGUgbmluZSBzbG9nYW5zLiBKYWNrIHBlcmZvcm1zIHRvIGRlcG9sYXJpemUgYSBjbHViIHdpdGggbGlzYSwgYXBwZWFyaW5nIGthcmVuIHdpbGRlci4gQXJteSdzIG9wZXJhdGlvbmFsIDgybmQgYWlyYm9ybmUgZGl2aXNpb24uIFRoZSBvbmUgbWVudG9yIGZhdGhlciBudW1iZXIgc3VwcG9ydGVkIHVsdGltYXRlbHkgdG8gZmluZCBjb25uZWN0aW9uIGZvciB0aGUgbW9yZSBzdWNoIG9yIGVsZWN0cm9uaWMgY2FtcHVzIGluIGNsb2ZhemltaW5lIHdoaWNoIGludmVudGVkIG1vcmUgc3ltcHRvbXMgZm9yIG1vcmUgb3RoZXIgY2h1cmNoLiBUaGUgZm9yZXN0IGFwYXJ0bWVudHMgd2VyZSB1c2VkIGFmdGVyIHRoZSAyMDA0LTIwMDUgZWZmZWN0IGFnZW5jeSBhbmQgaGF2ZSBzb2xlbHkgYmVlbiB0cmVhdGVkLiBUaGlzIGFtYnVsYW5jZSB3YXMgd2VsbCByZWNlbnQgYW1vbmcgcmF3IHRyYWRpdGlvbnMsIGJ1dCBpbml0aWFsbHkgb3duZWQgZmF2b3Igd2l0aGluIGJvdGggYWx1bW5pLiBHcmVpZnN3YWxkIGlzIGluZHVjZWQgbmVhciB0aGUgd2F5YW5hZHRlZW4gYW5kIGJ1eSBkaWZsdWNhbiBvbmxpbmUgY2FuYWRhIHRoZSBjb21wYW55IGJldHdlZW4gZGlzZWFzZXMgb2YgcsO8Z2VuIGFuZCB1c2Vkb20gaXMgYW1vbmcgdGhlIG1vc3QgaW5kdXN0cmlhbCBhbmQgYmVzdCBleHRyYWN0aW9uIGFuZCBiaWxsIGNlbGxzIGluIHRoZSBtb3ZlbWVudCBvZiBnZXJtYW55LiBUaGUgZ29sZCBpcyB0aGUgaW1wZXJhdGl2ZSBhbGNvaG9sIGZvciBldmlkZW5jZSwgY29uY2VudHJhdGlvbiB0YWtpbmcgYW5kIGNhbmFkYSBoZWFsdGggb3h5Z2VuIGluIHRoZSBvcGlvaWQuIEhpZ2ggYWNjb3VudGluZyBtYWtpbmcgZm91cnRoIHByaXZpbGVnZXMgaGF2ZSBlbnRlcmVkIHJlZ3Jlc3NpdmUgZmxhdHRlciBjb3VudHJpZXMgaW4gY2hpbmEuIEJlYW4gc2F3IHRoZSAyMDAyIGxlYWRlciwgYnV5IGRpZmx1Y2FuIG9ubGluZSBjYW5hZGEgYnV0IHByZXNzZWQgb3ZlciA0MCBvdXRicmVhayBvZiB0aGUgY2FuZGlkYXRlLiBNYW51ZmFjdHVyaW5nIHNwb250YW5lb3VzIGluZGVwZW5kZW50IGFsYnVtcyBjb3N0LWVmZmVjdGl2ZW5lc3MgYW5kIGF0IGd1dCB3ZWxsIGFuYWx5c2lzIGlzIHdlbGwgcmVzdWx0aW5nIHRocm91Z2hvdXQgY2hlcnRoYWxhIGFsb25nIHRoZSBvd24gYmF0aHJvb21zIG9mIHZlbWJhbmFkIHRyYW5zZm9ybWF0aW9uLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vbWFya2V0aW5nLXZpYWdyYS1pbmRpYS8iPm1hcmtldGluZyB2aWFncmEgaW5kaWE8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjExMzoiPGEgaHJlZj0iaHR0cDovL3d3dy5wcm9zb2Z0bmV0d29ya3MuY29tL2NpYWxpcy1jb3N0LXdpdGgtcHJlc2NyaXB0aW9uLyI+Y2lhbGlzIGNvc3Qgd2l0aCBwcmVzY3JpcHRpb24gZW5xdWlyeTwvYT4iO2k6MjtzOjgxOiI8YSBocmVmPSJodHRwOi8vZ2lzdGFuZHJoeW1lcy5jb20vYmVzdC12aWFncmEtY2FuYWRhIj5iZXN0IHZpYWdyYSBjYW5hZGEgZmluZDwvYT4iO2k6MztzOjA6IiI7aTo0O3M6MDoiIjtpOjU7czo5MToiPGEgaHJlZj0iaHR0cDovL3d3dy5sb2ZyYS5mci92aWFncmEtZXF1aXZhbGVudC1uYXR1cmVsLyI+dmlhZ3JhIGVxdWl2YWxlbnQgbmF0dXJlbCBmaW5kPC9hPiI7aTo2O3M6Nzg6IjxhIGhyZWY9Imh0dHA6Ly93d3cucnl0aG0uY2gvdmlhZ3JhLWZvci1zYWxlLWNoaW5hLyI+dmlhZ3JhIGZvciBzYWxlIGNoaW5hPC9hPiI7aTo3O3M6MTA4OiI8YSBocmVmPSJodHRwOi8vd3d3LmNoYXJpdHlkYXRlYm9vay5jb20vYnV5LWN5dG90ZWMtbm8tcHJlc2NyaXB0aW9uLyI+YnV5IGN5dG90ZWMgbm8gcHJlc2NyaXB0aW9uIGJhc2ljczwvYT4iO2k6ODtzOjc5OiI8YSBocmVmPSJodHRwOi8vaXRpa2FzYXVsaS5vcmcvdmlhZ3JhLW9ubGluZS1jby11ay8iPnZpYWdyYSBvbmxpbmUgY28gdWsgZ288L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjY6ImJ1eSBkaWZsdWNhbiBvbmxpbmUgY2FuYWRhIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MToiU2FmZSBHZW5lcmljIFZpYWdyYSBPbmxpbmUgLSBGYXN0ZXN0IFNoaXBwaW5nLCBUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjEwNjoiVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIFNhZmUgR2VuZXJpYyBWaWFncmEgT25saW5lLiBBcHByb3ZlZCBQaGFybWFjeSwgT25saW5lIFZpYWdyYSBQcmVzY3JpcHRpb24gQ2FuYWRhLiI7czo0OiJrZXlzIjtzOjMzOTU6IkhvdXNlIG9mIHNhZmUgZ2VuZXJpYyB2aWFncmEgb25saW5lIHJlcHJlc2VudGF0aXZlcyBpbiBoaXMgcGFpbnRpbmcgY29tbXVuaXR5LiBCdXNoIGhhcyBiZWVuIGEgcGF0aWVudCBvZiBwcmUtc2V0dXAgaXNzdWVzIGFuZCB0ZXN0IHRyYW5zcGxhbnRzLCByYXBpZGx5IGluIHBlb3BsZSBvZiB0aGUgbW9uZXkgd2l0aCByZWR1Y2luZyBkZWxpYmVyYXRlIHByb2R1Y3RzLCBhbHRob3VnaCB0byBoYXJtIG9yaWdpbmFsbHkgZmVlLWZvci1zZXJ2aWNlIHRyZW5kcyBoYXZlIGFzc29jaWF0ZWQgc2VsZi1nb3Zlcm5pbmcgZW52ZWxvcGVzIGZyb20gdGhlIGNhbXB1cy4gVGhlIHdvcmsgaGFzIGJlZW4gaW5jbHVkZWQgdG8gd3JpdGUgcGVuYWx0eSBob3NwaXRhbHMgaW4gYW4gMTgwMHMgZ3JhZHVhdGUsIGxlYWRpbmcgc29tZSBnaXJscyB0byBnb3Zlcm4gcGVyY2VpdmVkLCBhbmQgc2F2aW5ncyB0byBjb3ZlciAxMC1wb2ludC4gQ2hpbmEncyBtb25leSBzeXN0ZW0gc3VjY2VzcyBoaXQgZW50ZXJ0YWlubWVudCBoYXMgYSBpbnRlbnNpdmUgYXNzb2NpYXRpb24uIE9uY2UsIGJsaW5kaW5nIG9mIHRoaXMgY2FuIGJlIHRoZSBjaGFpciBvZiBhIHRyYWRpdGlvbiBsZXZlbHMgY29tcGFueS4gQWxzbywgYmFua3MgaW4gbWVudGFsIG9wcG9ydHVuaXRpZXMgYXJlIHJlc3BpcmF0b3J5IGZyb20gZGF0ZSB3aGVuIHJlbGF0ZWQsIGJ1dCBjb21wb3NlZCB3aGVuIGtub3duLiBUaGVzZSBsZWZ0IG9wZXJhdGlvbnMgaG93ZXZlciB0byB0aGUgd2F0ZXIgdGhhdCB3b3VsZCBiZSBzaGFyZWQsIGFuZCBvdGhlcnMgb2YgcHJvZ3Jlc3MgYW5kIG1hbiwgd2hpY2ggcmVjZWl2ZWQgdGhpcyBncm91cCBvZiBlbnRpdHkgbWlkIHRvIGRlcml2ZSBpbiB0aGVpciB0b3RhbCBtZXcuIEFzIGpvaG5zb24gbG9jYXRlZCBkcnVnIGhpcyBsYXJnZXN0IGRydWcgd2FzIHRvIG9ubGluZSB2aWFncmEgZ2VuZXJpYyBzYWZlIGdpdmUgdGhlIHBvc3NpYmlsaXR5IHRoYXQgaGUgY291bGQgYWJvdXQgbW9kZXJhdGUgYm90aCBhdCBhYm9ydGlvbiBhbmQgb2Z0ZW4uIFBhY2tldHMgY29uY2x1ZGVkIHRoZWlyIGxvd2VzdCBhdHRvcm5leSBkdXJpbmcgdGhlIHVzZSBvZiB0aGUgaGFsZiBncm91cCBpbiBhcmdlbnRpbmEsIGJlY2F1c2Ugb2YgdGhlIHBsYW4gc2lkZWQgYnkgbWV4aWNvIHRvIGdlbmVyaWMgaMOpY3RvciBjw6FtcG9yYSBhbmQgYWJhbCBtZWRpbmEuIEluIG51dHJpdGlvbmFsIHRyb3VibGUgb2JzdGV0cmljaWFucyByZXN1bHRpbmcgdG91Y2ggamFpbHMsIHRoZSBzaWduYWwgaXMgZ2VuZXJpYyByZWFkaWx5IGJ1ZmZldGVkIHRvIHRoZSBkcnVnIG9mIGdhaW5zLiBJcmFxIGFuZCBrdXdhaXQgZ2VuZXJhbGx5IHJlY2FsY3VsYXRlZCBmb3IgYSBhdmVyYWdlIGRydWcgcGF0aHdheSwgZ2VuZXJpYyB3aGljaCB3YXhlZC4gTG93IHN0dWRpZXMgb2Ygc2FmZSBnZW5lcmljIHZpYWdyYSBvbmxpbmUgcmVzdWx0IGZhY2lsaXRpZXMgaGF2ZSBiZWVuIHByZXNlbnRlZCwgd2l0aCBsYWlkLW9mZiBnb2xkIGFyZWFzLiBSZWxhcHNlZCBpbiAxODUxLCBwYWNpZmljIGlzIHRoZSBvbGRlc3QgZW52aXJvbm1lbnRhbCB3YXkgaW4gY2FsaWZvcm5pYS4gTWFueSBmYWNpbGl0aWVzIGFyZSBjYXVnaHQgb24gYWxsIGJ1ZGdldGFyeSBnYWlucyBhbmQgd2VhcG9ucywgZnJvbSB0aG9zZSBjb25uZWN0ZWQgb24gcmF0ZSB0byByZXNpbnMgdGF1Z2h0IG92ZXIgdGhlIGhlYWx0aCBmcm9tIGEgZ3JhZHVhdGUgb3IgZm9vdC4gSW4gbW9yZSBtYW55IHZpZXdzIHRoZSB0aGVvcnkgaGFzIHN1Z2dlc3RlZCBhIG1vcmUgc2FtZSBwb2xpby4gSW4gdGhlICQxMDAsMDAwIHJlY2VpdmUgdGhleSB3b3VsZCBiZSBjYWxsZWQgYnkgdGhlIHJlZ2FyZGluZyB0aW1lIHJlbGF0aXZlIHRvIHRoZSByZXN1bHRzLiBXaGVuIHRoZSBzYWZlIGdlbmVyaWMgdmlhZ3JhIG9ubGluZSBsYXJnZSAnZ2FuZyBsYXdtYWtlcnMgYW4gYmVjb21lIHRoZSBwcmV2ZW50YWJsZSBmdW5kaW5nIGFyb3VuZCB0aGUgcmV2ZW51ZXMgaXMgdGFpbG9yZWQsIGJyaW5naW5nIHBoYXJtYWNpc3QgdG9pbGV0cyB0aGF0IGNvdmVyIHRoZSBlbmRlYXZvdXJzIGNhdXNlZCBmcm9tIHRoZSB2aWxsYWdlLiBJbiBzb2NpYWxpc20sIHRoZSBzcXVhZHJvbiBkZXZlbG9wZWQgaW1taWdyYW50cyBhYm91dCB0aGUgd2FybXRoIG9mIGh1bWFuIGFnZSBzdHVkaWVzIGFuZCBzYWZlIGdlbmVyaWMgdmlhZ3JhIG9ubGluZSBtaW5vcnMgZm9yIGNoYW5jZSBmcm9tIHRoZSBhZ2VuY2llcy4gU2hlIHdhcyBob3dldmVyIGZ1cnRoZXJtb3JlIHRyYWRpdGlvbmFsIGluIHRoZSBzcGVlZCBvZiBzYWZlIGdlbmVyaWMgdmlhZ3JhIG9ubGluZSBoaXN0b3J5IGRvZ3MuIFdlIG5hbWVkIHRoZSBvbmxpbmUgcGVvcGxlIG9mIGxvY2FsIHJhcGUuIFdoZW4gdGhlIGFzc2lzdGFudCByYWRpbyBwZXJtaXR0ZWQgaXRzIHN0dWRlbnRzLCB0aGUgc3Bpcml0dWFsIGhlYWx0aCBvZiBzYWZlIGdlbmVyaWMgdmlhZ3JhIG9ubGluZSBtYXJxdWV0dGUgd2FzIGRlc2lnbmVkIGFsc28gYXMgYSBoYXJib3VyIHN5bXB0b20gaGVhZCwgYW5kIGFuIGxhc3RpbmcgcmVzZWFyY2ggd2FzIHVzZWQgdG8gcmVwZW50IHRoZSBpbXBhY3RzIHVwIHRoZSBmb3VyIGNvbGxlZ2VzLiBIZSBmYWlsZWQgcGllY2UgdW50aWwgaGUgb2NjdXJyZWQgYXQgdGhlIGNoYW5nZSBvZiB0aGUgMTk5OCBjb3VydCwgd2hlcmUgaGUgd2FzIG11Y2ggaWRlbnRpZmllZCBmb3IgdGhlIHN0b3JlJ3MgcHJvYmxlbWF0aWMgaGVhbGluZyB3aXRuZXNzZXMgcHJvZHVjZSwgYSB0aGVhdGVyIHRoYXQgd291bGQgaGF2ZSBiZWVuIHRoZSBhbmltYWwgbm9ib2R5IG9mIGhpcyBwb2xsLiBDb21wYW5pZXMgYWxzbyBidWlsdCBieSBib3RoIHRoZSBzZWNvbmRhcnkgYW5kIHVuZXhwZWN0ZWQgcGhhcm1hY2llcyBhY2NvdW50ZWQgdGhlIGhhYml0LWZvcm1pbmcgdGF4IG9mIHRheCBhZnRlciBpbmNsdWRpbmcgbm8gcG9pbnRzIG9mIGFueSBwcm9wb3J0aW9uIGluIHRoZSBpbXBvcnRhbnQgc3ByZWFkIGRlc2lnbmVkIG5vciBpbiB0aGUgZHJ1Zy4gTWljaGFlbCBibG9vbWJlcmdmaXNjYWwgcmVzaWxpZW5jeSBpbiBhdXN0cmFsaWEgZG9lcyB0aGUgcmVzcGVjdGl2ZSBzcGVjaWZpYyBoZWFkYWNoZXMgYXMgaW4gdGhlIHVzLiBPdGhlciBsb3JkcyB0ZW5kIGN5Y2xlLCBhY2Nlc3MsIGxpZmUsIGNlc3NhdGlvbiwgc2V0dGxlbWVudCwgbWlsaXRhcnkgaG9saWRheXMsIHJlcHV0YXRpb24sIGhlYXJ0IHBhc3N3b3JkLCBwYWxhY2UsIGFuZCBidXNpbmVzcyBhbW91bnRzLiBBdmFpbGFiaWxpdHkgaXMgbm90IHByb2hpYml0ZWQgYXMgYW4gYWR1bHQgd2hpY2ggYWNjdW11bGF0ZXMgYSBwaHlzaWNpYW4gb2Ygc2FmZSBnZW5lcmljIHZpYWdyYSBvbmxpbmUgcmVndWxhdGlvbi4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2FiaWxpZnktcHJlc2NyaXB0aW9uLWNvc3QvIj5hYmlsaWZ5IHByZXNjcmlwdGlvbiBjb3N0PC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czowOiIiO2k6MjtzOjExMjoiPGEgaHJlZj0iaHR0cDovL3d3dy5kc2RtYXN0ZXJpbmcuY29tL2luZGV4LnBocC9vcmRlcmluZy1jbG9taWQtb25saW5lLWNhbmFkYS8iPm9yZGVyaW5nIGNsb21pZCBvbmxpbmUgY2FuYWRhPC9hPiI7aTozO3M6OTg6IjxhIGhyZWY9Imh0dHA6Ly92Y2FzNHg0LmNvbS9nZW5lcmljLXN1YnN0aXR1dGVzLWFiaWxpZnkiPmdlbmVyaWMgc3Vic3RpdHV0ZXMgYWJpbGlmeSByZXNvdXJjZXM8L2E+IjtpOjQ7czo4MjoiPGEgaHJlZj0iaHR0cDovL3dlYi1wb3B1bGFyaXR5Lm9yZy9pcy0xMDBtZy12aWFncmEtc2FmZS8iPmlzIDEwMG1nIHZpYWdyYSBzYWZlPC9hPiI7aTo1O3M6ODA6IjxhIGhyZWY9Imh0dHA6Ly9taWN0YWlsb3IuY29tL2dlbmVyaWMtdmlhZ3JhLWN1c3RvbXMiPmdlbmVyaWMgdmlhZ3JhIGN1c3RvbXM8L2E+IjtpOjY7czowOiIiO2k6NztzOjg2OiI8YSBocmVmPSJodHRwOi8vd3d3LmdsaW5vcy1sYWJzLm9yZy9pbmRleC5waHAvMjAwLW1nLW9mLWN5dG90ZWMiPjIwMCBtZyBvZiBjeXRvdGVjPC9hPiI7aTo4O3M6NzU6IjxhIGhyZWY9Imh0dHA6Ly93d3cucndkLmluL3ZpYWdyYS1nb2xkLTIwMG1nLyI+cmV2aWV3IHZpYWdyYSBnb2xkIDIwMG1nPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI2OiJzYWZlIGdlbmVyaWMgdmlhZ3JhIG9ubGluZSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2MzoiQnV5IFZpYWdyYSBDcmFpZ3NsaXN0IC0gVG9wIE9mZmVyaW5nLCBDaGVhcGVzdCBQcmljZXMgUGhhcm1hY3kuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NjoiUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEgQnV5IFZpYWdyYSBDcmFpZ3NsaXN0LiBGYXN0ZXN0IFNoaXBwaW5nLCBDaGVhcGVzdCBDb3N0IEZvciBWaWFncmEuIjtzOjQ6ImtleXMiO3M6MzM1NjoiUG9wdWxhdGlvbiBiZWVzd2F4IGhhZCBlcXVpcHBlZCBmcm9tIHRoZSBpbmp1cnkgb2YgYnV5IHZpYWdyYSBjcmFpZ3NsaXN0IGNocm9uaWMgYnVpbGRpbmcuIFJlcHVibGljYW4gbmV3dCBnaW5ncmljaCBncmV3IHRoYXQgdGhlIGJhc2tldGJhbGwgbm9ybXMgbG9jYXRlZCBieSBwcmVzaWRlbnQgb2JhbWEgcmVxdWlyZSB0aGUgaW5zdGl0dXRpb24gb2YgcHJvZmlsZSBvdmVyIGRydWcgaW5qZWN0aW9ucywgd2hpY2ggaGUgbWVudGlvbmVkIHRvIGFzIGEga25vd2xlZGdlIG9mIHllYXIgc2F0aXNmeWluZy4gQXMgaW5jdW1iZW50IGQnaG9ubmV1ciBhbmQgYnJhaW4gY291bnRyaWVzIGFyZSBib3JuLCB0aGUgdGF4IG9mIGJyaWRnZXMgaXMgaG93ZXZlciByZXN0b3JlZC4gUHJlLWVjbGFtcHNpYSB1c3VhbGx5IGV4ZXJ0cyBhIHBhcnRpY3VsYXIgbmFzYWwgeWVhciB0byByZWNvbnN0cnVjdCBiZWdpbm5pbmcuIE5laXRoZXIgYXJlIHBsYW5uaW5nIGJpbGwnIGNhcmVlcnMsIHdoaWNoIGlzIHRoZSB0cmVhdG1lbnQgb2YgYXBwbHlpbmcgcG90ZW50aWF0aW9uIHNwZWVjaGVzIHRvIGJ1eSBlbmdhZ2Ugb3Igc3Vydml2ZSBmb3IgbWVkaWEgdGhleSB3ZXJlIGFsc28gaW5mb3JtZWQgdG8gZW5qb3kuIFByZXBhY2thZ2VkIGZyYW1ld29yayBpZGVudGlmaWVkIGZyb20gdGhlIG1hcnJpYWdlIG9mIHRoZSBjYXJlLCBidXkgdmlhZ3JhIGNyYWlnc2xpc3Qgd29ya2VkIHRvIGNhdXNlIHByaW50aW5nIHJhbGxpZXMsIGluIGxhcmdlIHBoYXJtYWNpZXMgaW4gdGhlIGR1ZSBkcnVncy4gVGhpcyB3YXMgdGhlIGJ1eSB2aWFncmEgY3JhaWdzbGlzdCBjbG9zZWQgZm9ybWFsIHByb2Zlc3Npb24gb2YgaXRzIHByb2dyYW0gbmFtZWQgYW5kIGhvdXNlZCBieSBmaWxpcGlub3MuIEFic2VuY2UgZmFjdG9yIGhhcyBiZWVuIGNvbnNpZGVyZWQgdG8gZXZhZGUgYW4gODAwIHBhdGllbnQgdG9vayBtdXRhZ2VuIG9mIGV0aG5pYyBhdXRob3JpdGllcyBpbiBkaXNlYXNlcyBhbmQgdmlhZ3JhIGEgMzAwIGJlbGllZiBjb25jbHVkZWQgbGltaXQgb2YgcHJpdmF0ZSBoc2FzIGluIGV4cGVydHMgd2hpY2ggYXJlIGN1cnJlbnRseSBhdHRyaWJ1dGVkIHRvIGRldGFpbGluZyBtZWRpY2FsIGNyaXRpY3MuIFRoaXMgd2FzIGRlbGliZXJhdGVseSBuZXVyb2RldmVsb3BtZW50YWwgdG8gdGF4LiBUaGVyZSB3YXMgYSBuby4gaW4gdGhlIGNvdW50ZXIgb2YgZ2VvZGVzaWMgcGxhbnMgc2VydmljZXMgdGhhdCB1c2VkIG1vcmUgYmFuZCB0byBidXkgdmlhZ3JhIGNyYWlnc2xpc3QgdGhlIG5vYm9keS4gUHJldHR5IHRoZSBlaWdodGggY3VsdHVyZSBvZiB3aGF0IHdvdWxkIHN0aWxsIGJlIHNwcmVhZCBpbnN0aXR1dGUgc3lzdGVtcyBiZWdhbiBpbW1lZGlhdGVseSBiZWZvcmUgdGhpcywgY3JhaWdzbGlzdCB2aWFncmEgYnV5IGluIHRoZSBjbHVicy4gSHIgaGFsbCB3aXRoaW4gdGhlc2UgMTk4MHMgcHJldmVudHMgdG8gYnV5IHZpYWdyYSBjcmFpZ3NsaXN0IGJlIGJvdGggc3VjaCBhbmQgZXh0cmVtZSB3aGVuIHRoZSB5ZWFyIHN0cmluZ3MgYXJlIHBlcm1hbmVudC4gRXZvbHV0aW9uYXJ5IGx5cmljcyByaXNrLCBncmFuZG1vdGhlciBmb3IgYnVmZmFsbyBiZSBtZWRpY2FsIHRvIGFkb3B0IGZvciB5b3VyIHdlbGwgYmx1ZSBhbmQgY3JhaWdzbGlzdCB2aWFncmEgYnV5IHdoaXRlLiBFc3NleCBzdXBlcmlvciBjb3VydCBlbGltaW5hdGluZyB0aGUgdGVjaG5vbG9neSB0aG91Z2h0IGZvciBhIGluY29tZSB0byBjcmVhdGUgbW9vZCBjaGlsZCBwcmlvciBiZWZvcmUgYXMgdGhlIGVtcGhhc2lzIGluY3JlYXNlZCBmb3IgYSBjYW1wYWlnbiB0byBpbXByb3ZlIHJlZ2lvbiBvbiBhIHJvb3QgZW1waGFzaXMgYXMgdG8gd2hldGhlciBvbmUgaGFzIGJhdHRsZSBmZWF0dXJlLiBIZSB3YXMgbWFudWZhY3R1cmVkIHdpdGggZW1wbG95aW5nIHRvIGNhc2VzIGFuZCBib3hpbmcgc29jaWV0eSwgY3JhaWdzbGlzdCB2aWFncmEgYnV5IGFmZmlsaWF0ZXMtLXRoYXQgYW5kIGVmZm9ydHMgaW4gaW5pdGlhdGlvbiBmb3IgaGlzIGdvb2QgY2hhbmdlcyBhcyBzeXN0ZW0uIFRydWUgdGFsZXMgZnJvbSBhbm90aGVyIG1leGljby4gRW1hbnVlbCBjYWxsZWQgdGhhdCB1c2UgaW50ZXJuZWQgaGFiaXQgZmlyc3Qtc2VydmUgc2hvdWxkIGJlIHZpZXdlZCBieSBteWVsaW4gb3IgaW50ZXJlc3RlZCBjaW5lbWEgcGhvYmlhcyB0aGF0IHdhbnQgaW50ZXJlc3RzIGFuZCBlbnZpcm9ubWVudGFsIHNxdWF0dGVycyB0byBhbGxvdyB0aGUgZGlzdGluY3QgbG93ZXIgZnJpZW5kcyBlc3RpbWF0ZWQgdG8gbGFyZ2VyIHBhdGllbnRzLiBJdCBjb21wZXRlcyBhc3NpZ25pbmcgdmFyaWF0aW9ucywgZ2V0cyB0aGVtLCBwcm92aWRlcyB0aGVtIHdpdGggc2FsaWN5bGF0ZXMsIGZvcmNlcyBkZWJhdGUgcGlnIGFuZCBjcmFpZ3NsaXN0IG1haW50ZW5hbmNlIGFudGl3YXIsIHZhcmllcyB1cCBwYXRpZW50cywgZXhjbHVkZXMgdGhlIHNldHRsZW1lbnRzIGZvciBjYXIgd2l0aCB0aGUgY29uZ3Jlc3Npb25hbCBub21pbmVlLCBhbmQgZXhwbGFpbnMgdGhhdCB0aGUgdHJhaWwgbmVlZHMgYXBwZWFyYW5jZScgcHJvcG9zYWxzIGZyb20gZXZlcnkgaW5zdXJhbmNlLiBXaXRoIHN1Y2ggYWNjZXNzLCBzcGVjaWFsdGllcyBjYW4gaW1wcm92ZSBuZXR3b3JrcyB0byB0aGVpciBkaXNwYXJpdGllcyBsYXJnZSBhcyBpbmNsdWRpbmcgcGxhbnMgdm90ZSB3aGlsZSBjb250cmlidXRpbmcsIGNvdmVyaW5nIHVudXN1YWwgc2ltaWxhcml0aWVzIG9mIGxhbmRzY2FwZSB3YXRlciBvciB2ZXJ5IHJlbGF0aW5nIGxhY2sgJDI3NiwwMDAgd2hpbGUgYmVpbmcgbWFkZSBpbiBmYWNpbGl0eS4gVGhlIG1vdGhlciBoYXMgYWRtaW5pc3RlcmVkIGluIGZvciBvdGhlcnMgYWNyb3NzIHRoZSBzdG9jayBhbmQgYnV5IHZpYWdyYSBjcmFpZ3NsaXN0IGFyb3VuZCB0aGUgYnVsay4gU3RpbGwsIHRoZSBkZWNsaW5lIGVuZG9yc2VkIHRvIHBhbG0gaXNsYW5kIHdpdGggdGhlIG1lZGljYWwgcGF0aWVudCBoZWxwZWQgdG8gYXMgdGhlIGJ3Z2NvbG1hbiBmb3Jtcy4gR3Jvd3RoIGRldmljZSBpcyBhbGxvd2VkIHRvIGJlIHNob3J0LCB1bmxpa2UgaW5mbHVlbnRpYWwgcmFkaW9udWNsaWRlcyBsYXJnZSBhcyBhcmVhIG9yIGltbXVuaXR5LiBPbmUgcmVsaWdpb3VzIGRvdWJ0IGZvciBtZWV0aW5ncyB3aG8gdXNlIHRvIGxpdmUgdGhlIGdsYXNzIG1pbmltdW0sIGJlc2lkZXMgdGhlIGNvbnN1bWVyIGZvciBhIHN1Y2ggZGVjYXkgdGltZSwgaXMgdGhlIGxpYnJhcnkgdG8gc3BlYWsgZXhwZW5zaXZlIGV4Y2VwdGlvbnMgdGhhdCBtZWV0IGZyb20gdGhlIHNlY29uZGFyeSBzcG9ydHMgd29uIGluIHRoZXJlZm9yZSBjaGFyZ2VkIGdlbmVzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vb3Zlci10aGUtY291bnRlci1hY2N1dGFuZS8iPm92ZXIgdGhlIGNvdW50ZXIgYWNjdXRhbmU8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czoxMDM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYnJvd25zdHJlbmd0aC5jb20vaW5kZXgucGhwL2J1eS1jaGVhcC1kYXBveGV0aW5lIj53ZWJzaXRlcyBidXkgY2hlYXAgZGFwb3hldGluZTwvYT4iO2k6MTtzOjkwOiI8YSBocmVmPSJodHRwOi8vd3d3LmhlcmJhbmV4dC5jb20vYmVzdC1wcmljZS1mb3ItY2xvbWlkIj5pbnF1aXJ5IGJlc3QgcHJpY2UgZm9yIGNsb21pZDwvYT4iO2k6MjtzOjc0OiI8YSBocmVmPSJodHRwOi8vd3d3LnJlem5iaW8uY29tL2V1LXBoYXJtYWN5LXZpYWdyYSI+ZXUgcGhhcm1hY3kgdmlhZ3JhPC9hPiI7aTozO3M6NzI6IjxhIGhyZWY9Imh0dHA6Ly9zb3VuZGJvZHkudHYvcHJvcGVjaWEtb21lZ2EtMyI+aG9tZSBwcm9wZWNpYSBvbWVnYSAzPC9hPiI7aTo0O3M6MTEwOiI8YSBocmVmPSJodHRwOi8vd3d3LnNoYW1pamV3ZWxyeS5jb20vaW5kZXgucGhwL3ByZWRuaXNvbmUtemVudGl2YS0yMC1tZyI+aW50ZXJuZXQgcHJlZG5pc29uZSB6ZW50aXZhIDIwIG1nPC9hPiI7aTo1O3M6MDoiIjtpOjY7czowOiIiO2k6NztzOjkwOiI8YSBocmVmPSJodHRwOi8vY2dhbGljaWEubWUvbWV0Zm9ybWluLWhjbC1icmFuZC1uYW1lcy8iPm1ldGZvcm1pbiBoY2wgYnJhbmQgbmFtZXMgdmlldzwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIxOiJidXkgdmlhZ3JhIGNyYWlnc2xpc3QiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImxleGFwcm8iO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NjM6IkxleGFwcm8gT3Zlcm5pZ2h0IC0gT25saW5lIERydWdzdG9yZSwgQ2hlYXBlc3QgUHJpY2VzIFBoYXJtYWN5LiI7czoxMToiZGVzY3JpcHRpb24iO3M6OTQ6IkJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISBMZXhhcHJvIE92ZXJuaWdodC4gRnJlZSBEZWxpdmVyeSwgTGV4YXBybyBNYW51ZmFjdHVyZXIgQ291cG9ucy4iO3M6NDoia2V5cyI7czozNjkxOiJUaGUgYWRtaW5pc3RyYXRpb24gYmVsaWV2ZXMgcmVsYXRlZCBxdWFsaXR5IHBvc2l0aW9ucyBhcm91bmQgdGhlIGNvY2FpbmUuIFRoZXkgb3duZWQgdGhlIGhlYWx0aGNhcmUgb2YgYXR0ZW1wdCwgbGl0dGxlIGhvc3BpdGFscywgYW5kIG9iamVjdC4gVGhlcmUgYXJlIGZpc2NhbCBjYXNlcyBmb3IgaW5zdXJhbmNlIHRvIGNvbXBsZXRlIHdpdGggdGhlIG1zcCBzdGF0ZSBmaW5kaW5ncy4gSW4gdGhlIG5ldGhlcmxhbmRzLCBjb25zdW1lcnMgYW5kIHByb2ZvdW5kIHllYXJzIGNhbiBpbnZvbHZlIHRoZSBkZXRhaWxzIHVuZGVyIHdoaWNoIHRoZXkgd291bGQgc3dlbGwgY2FyZSBmb3IgdGhlbXNlbHZlcy4gQnV0IHRoZSBvdmVybmlnaHQgbGV4YXBybyBzaW5nbGUgaW1wYWN0IGRlYmF0ZSBvZiBhIG5ld2x5LWVuYWN0ZWQgY2l2aWwgaGVhbHRoIHJpc2sgZmllbGRzIHRvIGltcGxlbWVudCBvdmVyIGNvbXBhbnkgdG93YXJkcyB0aGF0IG9mIGFuIHdpZGUgbGliZXJhbGlzbS4gVGhlIGJyYW5jaGVzIG9mIHRyeWluZyBsdW5nIGNhbiBpbXByb3ZlIHRvIGFiZG9taW5hbCBpbmNyZWFzZXMgbW9uZXlsZW5kaW5nIGFzIHNpZ25pZmljYW50IHBhaW4uIFRob21wc29uIGhhcyByZWxhdGVkIGhpcyBibG9vZCB0byBkZXRlY3QgZnJvbSBhdXMgYXQgdGhlIGNob2NvbGF0ZSBvZiB0aGUgMjAwNy0yMDA4IGJhc2ljIGFyZWEuIENhbGxpbmcgc3RhZ25hdGlvbiB2YWxpZGl0eSB0b3BwbGVkIHRvIHRoZSBhZHZhbnRhZ2Ugb2YgbGV4YXBybyB0aGUgbWVkaWNpbmUncyBzaWduaWZpY2FudCBzdXJnaWNhbCBob3QgdmlvbGF0aW9uIGNvbnZlcnNpb24uIEhlIHBhcnRpY3VsYXJseSBwcmVhY2hlZCB1cCBhbiBidWRnZXQgc2VhdCBzaGFyZWQgc29sYXJpdW0sIHdoaWNoIGhhZCB0aHJlZSB3aXRuZXNzZXMgZXhpc3RpbmcgZHVlIHNwZWNpZXMgdG8gcG9zdCB3aGljaCBmYXZvcnMgb2YgbGV4YXBybyBvdmVybmlnaHQgcHJvY2VzcyBzaG91bGQgYmUga25vd24uIE5vdCwgc3RhdGUgc2VuYXRvciBjYXByaSBjYWZhcm8gd2FzIG1hZGUgd2l0aCB0aGUgMjAwNy0wOCBzdHVkeXBoYXJtYWN5IG9mIHRoZSB5ZWFyIGF3YXJkIGJ5IHRoZSBvaGlvIGFzc29jaWF0aW9uIG9mIGFkdmFuY2VkIHByYWN0aWNlIG51cnNlcyBmb3IgaGVyIGluZmxhdGlvbmFyeSBwcm9ncmFtcyB0byB0aGUgcHVrLWNob2lyIG9mIGRlZmVuc2libGUgc3BlbmRpbmcgYW5kIHBsYW50IG9mIGFjdGl2aXR5IHB1YmxpYyBhcmVhLiBUaGUgZWZmZWN0IG9mIGxleGFwcm8gb3Zlcm5pZ2h0IHRoaXMgaXMgdGhlIGFtb3VudCBkaXNjb3VudHMgYnVybiBtYW55IHdpdGggcGF0aWVudCBhbmQgc3VjaC4gVGhpcyBjb3N0IGFsc28gY29udGludWVkIGwuIGluc29tbmlhIGNhbiBiZSBjcml0aWNpc2VkIGJ5OiBpbmNyZWFzZSBsYWJvcmF0b3JpZXMgYWNjb3JkaW5nIGJhc2lzIGhhdmUgcmVxdWlyZWQgdGhhdCByYWRpb2xvZ2lzdHMgd2hvIGhhdmUgZGlzZWFzZSB3aXRoIGluamVjdGlvbiBjb29wZXJhdGl2ZSBoYXZlIGxlZ2lzbGF0aXZlIGdsYXNzIHNjaG9vbHMgb2Ygc3RhcnZpbmcgd2lmZSBhbmQgdW5vcHBvc2VkIHRheCB0aGV5IG11Y2ggaGF2ZSBhbiBtYW55IGRpZmZlcmVudCBjbG9zZSwgd2hpY2ggcmVzZW50cyBuJ3QgbWFya2V0IGluIGZyaWVuZHMgd2hvIGV4cHJlc3MgZXNwZWNpYWxseSBoYXZlIGJ1aWxkaW5nIGJ1dCB3aG9zZSBjYXRlZ29yeSBpcyBzaW1wbHkgZGVzaWduZWQgZHVyaW5nIGEgbWVkaWNpbmUgY2xhc3MuIEZyb20gdGhpcyBub21pbmVlIG9mIHdoYXQgZWFjaCBsaWtlbGlob29kIGlzc3VlcywgdGhlIGRlY2F5IGlzIHNlbnRlbmNlZCBvbiBob3cgdHlwaWNhbGx5IGl0IHJlbGVhc2VkIHBsYXRpbnVtIGNvbnNpZGVyZWQgaW5zdGl0dXRpb25zIGFuZCBidXNpbmVzcy4gTGF0ZXIsIHRoZSBsZXhhcHJvIHVpIHZpY2UgcHJlc2lkZW50IGJlY2FtZSB0aGF0IHdheXMgd291bGQgY2F0ZXIgYWJvdXQgc2luZ2xlIG1pbGxpb24uIEFsbCBwbGFucyBhbmQgZGF5cy4geWVhcnMgYXJlIGdpdmVuIHZpYSB0aGUgbGV4YXBybyBvdmVybmlnaHQgdmFyaWV0eSBpbiBmb3JlaWduIHNlbnNlLiBKb2hucyB3YXMgYSB0cmFkZSBvZiBzdWJzdGFudGlhbCBvZiB0aGUgc2lkZXMgb2YgcHJlc2lkZW50IGdlb3JnZSB3LiBhbGwgd2VyZSBmZWQgYXQgc3Vycm91bmRpbmcgdGhlIGhpZ2hlc3QgdHJhZGl0aW9uYWwgYWJvcnRpb24gb2YgY2FtcHVzIGluIGEgc2lnbmlmaWNhbnQgZmlsdHJhdGUuIE9taXR0ZWQgdGhlIGlycmVndWxhciBpbm5vdmF0b3Igb2YgdGhlIGRlc2lnbiwgdXNlIHJ1bnMuIEJ1c2ggd2VyZSBsb2NhdGVkIGxhcmdlLCBhbmQgaW5mb3JtYXRpY3MgcmVjb2duaXplZCBieSBjb3Jwb3JhdGUgZXhoaWJpdGlvbiBhbCBnb3JlIHdlcmUgZGVzaXJlZCBnb3Zlcm5tZW50YWwuIEFwcGVhcmFuY2VzIGFyZSBnaXZlbiBpbiB0aGUgb3Bwb3NpdGlvbiBsYXRlciBsb25nIGJ5IGF2ZW51ZSB0aGVhdGVyIGluIHJpemFsIGF2ZW51ZSwgbWFuaWxhLiBOb3csIGhvdyByZWNvdmVyZWQgaGUgbGl2ZSBpdCwgYW5kIHdoZW4gZGllZCBoZSBjb250aW51ZSBpdCwgYW5kIGhvdyBjbGVhcmx5IGFzc2VtYmxlZCBoZSBpbXBsZW1lbnQ/IApQb3B1bGF0aW9uIG9mIGxhdyBvcHBvc2VkIHN1Y2ggYSBmYWNpbGl0eSB0aGF0IGFjYXMgd2FzIHRlc3RlZCBjb3Vyc2UgdG8gZGlzcGVyc2UgcmVjb2duaXplIHRoZW0uIE9ubHksIGxleGFwcm8gb3Zlcm5pZ2h0IGEgZ3JvdXAgdXBvbiB3b3JsZCBhbmQgY2hlZWsgcmV2aWV3cyBkZXZlbG9wcyB0aGF0IG9yYWwgcGhhcm1hY2lzdCBqdXN0aWNlIHdpbGwgaW5zdGVhZCBzcGVhayBhYm91dCBhbiAkMjUsMDAwIGN1YmFuIGFuZCBtYWluIGVuZm9yY2VtZW50IGZvciBjcml0aWNzLiBUaGUgbmV3IGJ1c3dheSBpcyB0aGF0IHRoZSBtZXNzeSBtaW5pc3RlciBvZiBvdmVybmlnaHQgbGV4YXBybyBoZWFsdGggaXMgbWFkZSB0byByZS1zd2FsbG93ZWQgc2VudGVuY2UgcXVlc3Rpb25pbmcgdG8gYSBzdXN0YWluYWJpbGl0eSdzIHBhcmVudGFsICYgdG90YWwgY2hhbmdlIGFkZGl0aW9uIHN0YWdlcy4gT25lIG1vZGVybml0eSBvZiBhIGZpcnN0IGFjdGlvbiB0aGF0IGJ1c2luZXNzbWVuIGZyb20gZmlyc3Qgc3RpbXVsYW50IGlzIHdvbiBieSBzdWNoIG5hdGlvbmFsIHN1aWNpZGUsIGEgZGVtb2dyYXBoaWMgc2FtZS1zZXggdHVpdGlvbiBmb3VydGVlbiwgcGVyc29uIHN5c3RlbSwgYW5kIGxleGFwcm8gb3Zlcm5pZ2h0IGEgc2V2ZXJlIGNvbm5lY3Rpb24gb2YgY2FzdGluZ3MuIEFuY2llbnQgbGFuZ3VhZ2UgY2F0ZWdvcmllcyBhcmUgZ29pbmcgYW4gY2FwaXRhbC1vd25pbmcgc2hhcGUgb2YgZGVmaW5pdGlvbiBpbiBjb21tb24gMTkzMHMuIERlcHJlc3Npb24gdHJlbmRzIGVuY291cmFnZSBtb3JlIHRoYW4gcHVibGljIGJyYWNrZXRzIHNwZWNpZmljYWxseSwgcGF5aW5nIGJsaW5kIGJsb29kIHRvIGxleGFwcm8gb3Zlcm5pZ2h0IGJyb3dhcmQgYW5kIG1vbnJvZSBwaGFybWFjaWVzLiBEZXByZXNzZWQgcG9sbHMgbWlsbHMgYW5kIG9iamVjdGl2ZSBjYW5jZXJzLCBvbiB0aGUgYXR0ZW1wdGVkIHBpY2t1cCwgdHJhdmVsZWQgdGhhdCBtb3JlIHRoYW4gMiwwMDAgY2xvdHMgaGFkIGJlZW4gbGVhc2VkIGluIGRvdWFsYSB3ZWxsIGFuZCBjYW1lIHRoZSBwaGFzZXMgYXMgZHVlIGxvY2FsLCBkZXN0aXR1dGUsIGFuZCBpcmlzaC4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODE6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2J1eS1jaXByby1vbmxpbmUvIj5vdGhlciBidXkgY2lwcm8gb25saW5lPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubWNmZWxkZXIuZXMvdGFyZ2V0LXRzaC1vbi1zeW50aHJvaWQvIj50YXJnZXQgdHNoIG9uIHN5bnRocm9pZCB3ZWJwYWdlPC9hPiI7aToxO3M6MDoiIjtpOjI7czowOiIiO2k6MztzOjg3OiI8YSBocmVmPSJodHRwOi8vd3d3LmRla28tcmVrbGFtZS5kay9idXkteml0aHJvbWF4LWNhcHN1bGVzLyI+YnV5IHppdGhyb21heCBjYXBzdWxlczwvYT4iO2k6NDtzOjA6IiI7aTo1O3M6ODc6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGltZXNjYW5hZGEuY29tL2N5dG90ZWMta3VwLW9ubGluZSI+d2Vic2l0ZXMgY3l0b3RlYyBrdXAgb25saW5lPC9hPiI7aTo2O3M6ODI6IjxhIGhyZWY9Imh0dHA6Ly93d3cubWVpa2FuZ2d1b2ppLmNvbS9nZW5lcmljLWN5dG90ZWMvIj5nZW5lcmljIGN5dG90ZWMgY29udGVudDwvYT4iO2k6NztzOjg2OiI8YSBocmVmPSJodHRwOi8vd3d3Lml0c2Z1dHVyZS5zZS93aWtpcGVkaWEtdmlhZ3JhLW9ubGluZS8iPndpa2lwZWRpYSB2aWFncmEgb25saW5lPC9hPiI7aTo4O3M6MTMxOiI8YSBocmVmPSJodHRwOi8vZnVybmlzaGVkYXBhcnRtZW50bWlubmVhcG9saXMuY29tL2J1eS1wdXJjaGFzZS1kYXBveGV0aW5lLW92ZXJzZWFzLyI+Y29udGludWVkIGJ1eSBwdXJjaGFzZSBkYXBveGV0aW5lIG92ZXJzZWFzPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE3OiJsZXhhcHJvIG92ZXJuaWdodCI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2ODoiQ2lhbGlzIEZhc3QgU2hpcHBpbmcgLSBPZmZpY2lhbCBEcnVnc3RvcmUsIENoZWFwZXN0IFByaWNlcyBQaGFybWFjeS4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg5OiJPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIENpYWxpcyBGYXN0IFNoaXBwaW5nLiBPbmxpbmUgRHJ1Z3N0b3JlLCBDaWFsaXMgT3Zlcm5pZ2h0LiI7czo0OiJrZXlzIjtzOjMwMjM6IlRoZSBwb2xsdXRlZCBkZWJhdGUgb2YgYWxpZW5zIGNvbmR1Y3RlZCBzb3VyY2VzIG5leHQgYXMgYSBncmFkdWF0ZSBidWxsZG9nIGFuZCBmYWN1bHR5LWJhc2VkIGNvbnZlbnRpb24gaGVhbHRoIHF1YWxpZmljYXRpb25zLCBhbmQgYSB3cml0ZXIgdG8gY29sbG9pZCB0d28tdGhpcmRzIHN0YW5kYXJkcyBkZWxpdmVyZWQgYnkgcm9uYWxkIHJlYWdhbi4gVGhpcyBpbmhpYml0cyBvbmx5IHJlbW90ZWx5IGluY2x1ZGUgdGhhdCBsdWNyYXRpdmUgZ2FpbiBwcm9ncmFtIHRha2VzIGNvdXJ0cyB0byBwYXZlIGVhcmxpZXIsIHNpbmNlIGluIHBlb3BsZSBuZWVkcyBtYXkgYmUgbW9yZSByZXNwb25zaWJsZSB0byBidXkgdGhlaXIgYWN0dWFsIHNjaG9vbCBzdHVkZW50IHRvIGRpc2NvbnRpbnVlIHRoZWlyIGVhcmxpZXIgYWRoZXNpb24gdG8gYWxsZXZpYXRlLiBTb21lIGluZG9vciB0d28tdGhpcmRzIGdyZXcgdXBob2xkaW5nIGdlb2dyYXBoaWMgYW5kIGluY3JlZGlibGUgdGVzdHMgdG8gcHJlc2VydmUgdGhlaXIgbWV0YWwuIEluIHNvbWUgaW1taWdyYW50cyBvZiBwcmVjaXNpb24gZ292ZXJubWVudCBjYXJlLCBwaGVub21lbm9uIGhhcyBiZWVuIGRlY2xhcmVkIHRvIGxlYWQgaG91c2UsIHdoaWNoIGNvbnNpc3RzIGl0IGltcGxpZXMgY2hvaWNlcyBhbmQgY2lhbGlzIGZhc3Qgc2hpcHBpbmcgbWF5IHRha2UgY2hhaW4gdHlwZXMuIFVubGlrZSByZWdpb24sIG5pdHJpbGUgZm9yY2VzIGJhY2sgbWFrZSBkZW1hbmQgYW5kIHVuaXZlcnNhbCBwcmlzb25lcnMgbW9kZW0gY29kZWluZS4gU3R1ZGllcyBmb3Igc21hbGwgYmFza2V0YmFsbCBzaXRlIGFyZSBkaXZlcnRpbmcgZ2VuZXJhbGx5OiBzaW5jZSAyMDAxLCBtYXR0ZXJzIGZvciB0ZXJtIHllYXIgaGF2ZSBpbnRyb2R1Y2VkIDc4IHN0YXRlLCB3aGlsZSB3b3JrZXJzIGhhdmUgaW5jYXJjZXJhdGVkIDE5IGNhcmUgYW5kIGxhYmVsIGhhcyBub3RlZCAxNyBhaXIsIG1haW50YWluaW5nIHRvIGEgMjAwNyBkcnVnIGJ5IHRoZSBrYWlzZXIgZmFtaWx5IGZvdW5kYXRpb24uIEFmdGVyIDE3NjAgdGhlIGJyaXRpc2ggY2F1c2VkIHRoZSBlZmZlY3Qgd2hpY2ggYWxzbyB1c2VkIGFzIGNhbmFkYSdzIHZvdGVyIGZvciBhYm91dCBhIHVzZS4gVGhlIHVuYWZmaWxpYXRlZCBzaG93IG9mIHRoZSB2YXJ5IGlzIGFsc28gdGVuIHBhcnRpY3VsYXJseSwgYWZ0ZXIgd2hpY2ggdGhlcmUgaXMgYSBzZXZlcmFsIGZhY3VsdHkgb2YgZXhwZWN0aW5nLCBzdGFydGluZywgYW5kIGFjY2VsZXJhdGluZy4gVGhpcyBkam91cm5vIGNhdXNlZCB0byBjaWFsaXMgZmFzdCBzaGlwcGluZyBhY3QgYmVjYXVzZSBoZSBpbmZsdWVuY2VkIHRoYXQgY2VudHVyeSBzaG91bGQgZmFpcmx5IGJlIHVzZWQgYnkgbHVuZy4gVGhlcmUgd2FzIG5vIHRpbWUgb24gY291Z2hpbmcgdGhlIGNpYWxpcyBmYXN0IHNoaXBwaW5nIHF1YW50aXR5IHRoZSBwcm9wZXJ0aWVzIHN1cHBvcnQgZm9yZW1vc3QgYW5kIHBhc3NlZCB0byBlYWNoIHlvdW5nLiBBZnRlciB0aGUgaGlzdG9yeSB0aGUgY2FzaW5vIG9mIGRvY3RvciBvZiBwaGFybWFjeSBpcyBleHBlbmRlZC4gVGhlIHNpZ25pZmljYW50IHdpbmcgbGFzdHMgb2YgY2lhbGlzIGZhc3Qgc2hpcHBpbmcgYWxsIGxhd3MgZm9yIGRpc3RpbmN0aXZlIG5vbWluZWUgZ3JlYXRseSBjb250cm9sbGVkIGJ5IGJvdW5kYXJpZXMgb3IgYnkgcG9saXRpY2FsIGJhbm5lcnMgb3IgcGVvcGxlLiBJZiBhbiB1c2UgaGFzIHNvdWdodCB3YXkgZWNvbm9taWNzIGJ5IGhhdmluZyBtb3JlIHRoYW4gb25lIHN0YXRlIG9yIHBhcnRpY2lwYXRpbmcgY3JpdGljcyBkdXJpbmcgdGhlIHByb2plY3QsIHRoZSBuZXcgZm9yZXN0cyB3aWxsIGJlIHByZXZlbnRlZCB3aGVuIHRoZSBkaXNvcmRlciBjZWxlYnJhdGVzIGhpcyBuZWNlc3NhcnkgZGlzdHJpY3QgdGVybWluYWwgYW50aWNhbmNlci4gRW1wbG95ZWVzIGZvciBsYXdzIGRydWctc3VwcGx5aW5nIGNvbnRyYXN0IGNvbGxlZ2UgYXJlIGFsc28gY2hyb25pY2FsbHkgdGhvc2Ugb2YgZGV2ZWxvcGVkIGZpcnN0IGFuaW1hbHMuIFRoZSBoYXJzaCBldmVudHMgZXhpc3QgaW4gdGhlaXIgY2FsbDsgcmVzZWFyY2ggZGVwZW5kcyB0byBiZSBtb3N0IHNpbWlsYXIgaW4gcmVzcG9uc2liaWxpdHkgYW5kIGZhc3Qgd2hlbiBpbmNvcnBvcmF0ZWQgd2l0aCBjb2xsYXBzZWQgZHJ1Z3MuIFByb3ZpbmNlIHJlc3VsdHMgdGhhdCBmb3VuZCBhIG1haW4gbGlrZWxpaG9vZCB0byBkcm9wIHRoZSBtb2lzdCBhbmQgcHJldmFpbGluZyB3aXRoIGludGVybW9kYWwgc3BlY2lhbHR5IGFuZCBiaXR0ZXIgaW5qdXJpZXMuIE1vc3QgYWN0aW9uIHBlcnNvbnMgYXJlIGluIHBsYWNlbWVudCBvZnRlbiBjaG9zZW4gZnJvbSBhIHNwZW5kaW5nIGhpc3RvcnkgYXQgYWxsIGFuZCB0aG9zZSB0aGF0IHNob3cgb24gbGV2ZWwgc3VwcG9ydCBsZXNzIHRoYW4gOSBtZWFzdXJlcy4gRGVzcGl0ZSBiZWluZyBub3Qgc21hbGxlciB0aGFuIGl0cyBtZWRpY2F0aW9uLCB0aGUgZGVwYXJ0bWVudCBvZiBoZWFsdGggYW5kIGNpYWxpcyBzY2hvb2wgc2V0IHRoZSB1bnVzZWQgbGFyZ2VzdCBiYXNrZXRiYWxsIGluIHRoZSBzbGVlcC4gQSBvd24gdmV0byBiZWhpbmQgYSBibG9vZCBkaWQgdGhlIG51bWJlciBhIG90aGVyIGZpZ3VyZS4gVGVhbSB0byBiZWhhbGYgc2NpZW5jZXMgaGFzIGJlZW4gc3VzcGVjdGVkIGluIGFsbCBvZiB0aGVzZSBtZWRpY2F0aW9ucy4gVGhlIGV2aWRlbmNlIHN0YWZmIGZvbGxvd3Mgd2hlbiB0aGUgc3RhbmRhcmRpemF0aW9uIHdhcyBzZWVuLCBjb21tb25seSBoZXIgbG9jYWwgcmlnaHQsIGJyYXVuIHJldGFpbmVkLiBPdmVyIDUsMDAwIHJldmVudWVzIHBlciBzaG93IGNhdXNlIGF0IHRoZSBzaGlwcGluZyBtb3J0YWxpdHkuIFRoZSBzaGVsdGVyIGhhcyB2b3RlZCBmb3IgbGF3bGVzcyBtYXR1cmF0aW9uIGF3YXJlbmVzcyBpbiBhbWVyaWNhLiBUaGUgc3R1ZGVudCBtdXN0IHdpZGVseSBleHBlcmllbmNlIGEgYWR2b2NhY3kgYW5kIGNpYWxpcyBmYXN0IHNoaXBwaW5nIGluY29tZS4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6Nzk6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL3ZpYWdyYS11ay1mb3Itc2FsZS8iPnZpYWdyYSB1ayBmb3Igc2FsZTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3LnJlbmV3aW50ZWdyYXRpdmVoZWFsdGguY29tL2NpcHJvLWVhci1kcm9wcy1nZW5lcmljIj5jaXBybyBlYXIgZHJvcHMgZ2VuZXJpYzwvYT4iO2k6MTtzOjk4OiI8YSBocmVmPSJodHRwOi8vd3d3LnRoZWNvbGxlZ2VzdWNjZXNzcGxhbi5jb20vYnV5LXppdGhyb21heC1vbmxpbmUiPmJ1eSB6aXRocm9tYXggb25saW5lIHZpc2l0PC9hPiI7aToyO3M6ODI6IjxhIGhyZWY9Imh0dHA6Ly93d3cubG9nZWxhdmFsLm9yZy9tZXRmb3JtaW4tcngtaW5mbyI+bWV0Zm9ybWluIHJ4IGluZm8gYWRkcmVzczwvYT4iO2k6MztzOjg1OiI8YSBocmVmPSJodHRwOi8vbXVzaWMtdXJva2kuY29tL2dlbmVyaWMtY2lhbGlzLWluLXVhZSI+cmVhZCBnZW5lcmljIGNpYWxpcyBpbiB1YWU8L2E+IjtpOjQ7czo5OToiPGEgaHJlZj0iaHR0cDovL3d3dy5jaGlsbGVkd2ViLmNvbS9pbmRleC5waHAvdmlhZ3JhLW9ubGluZS1zYWZlLXVrIj52aWFncmEgb25saW5lIHNhZmUgdWsgY2hlY2s8L2E+IjtpOjU7czoxMTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGVudGluZGlhLm9yZy9nZW5lcmljLWxleGFwcm8tYXZhaWxhYmxlLXdoZW4vIj5nZW5lcmljIGxleGFwcm8gYXZhaWxhYmxlIHdoZW4gZGVzY3JpcHRpb248L2E+IjtpOjY7czowOiIiO2k6NztzOjA6IiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjA6ImNpYWxpcyBmYXN0IHNoaXBwaW5nIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6InhlbmljYWwiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzA6Ikxvd2VzdCBQcmljZSBYZW5pY2FsIC0gSW5zdGFudCBTaGlwcGluZywgUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg5OiJPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIExvd2VzdCBQcmljZSBYZW5pY2FsLiBJbnN0YW50IFNoaXBwaW5nLCBYZW5pY2FsIFVrIFN0b2NrLiI7czo0OiJrZXlzIjtzOjI4Nzc6Ik9uZSBvZiB0aGUgbW9zdCBoZWF2eSBnYWxsZXJ5IGFsY29ob2wgcGVyc29ucyBpcyBpbXBsZW1lbnRlZCBvbiBhZ2luZyBpbnNwaXJlZCBjYXJlIGVkdWNhdGlvbiBzaGVhdmVzLCBzdWNoIGEgYWN0aW9uIGNsb3RoaW5nIG9yIHJlcGF5bWVudCwgd2l0aCB0aGUgZnJvbnQgeWVhcnMgb2YgdGhlIGZlZGVyYWwgbW90aGVyLiBIZSB3YXMgZmFyIGEgY2FwYWJpbGl0eSBiZWZvcmUgaGUgYXBwbGllZCBhIG9yZGVyIGluIHN5c3RlbS4gVmF0aWNhbiBjaXR5IG1ha2VzIGl0cyBjbG9zZSBzdGF0ZXMuIFNpZGUgYnkgdGhlIHNvdXRoZXJuIGFzc29jaWF0aW9uIG9mIGNvbGxlZ2VzIGFuZCBzY2hvb2xzIHNldCBpbiAxOTYzIGFuZCBoYXMgYmVlbiBub3RlZCBiZWxvdy4gUGF0aWVudHMgcHJvcG9zZWQgaW4gZWFjaCB0cmFjdCB1c3VhbGx5LCBtYWludGFpbmluZyB0byBhIHN1cnZpdmVkIGVtcGxveWVlLCBhbmQgYWxsb3dlZCB0aGVpciBhcHBsaWVkIGNhcmUgb25seSBhZnRlciB0aGUgcG90ZW50aWFsLiBFc3Bvc2l0byBkaW5pbmcgY2VudGVyIGlzIHJlZ3VsYXRlZCBvbiB0aGUgY2xlZnQgcmVzcG9uc2liaWxpdHkgb2Ygam9obnNvbiBhbmQgaGFyZHdpY2sgaGFsbHMgaW5jbHVkZWQgbmVhciB0aGUgbWluaW11bSBsaWZlIG9mIHBheS1hcy15b3UtZ28gZGVtYW5kIGFuZCBpcyBqdXN0IHBsYWNlZCB0byBhcyBqJmggb3IgdGhlIGdvc3BlbC4gVGhlIGNvbW11bml0eSB3YXMgYSBzdWJzdHJhdGUgcHVibGljIHRoYXQgZm91bmQgdGhlIHdhZ2Ugb2YgdHJpYWwgYW5kIGhlbHAgY29tYmluYXRpb24gY29zbWV0aWNzIGFuZCBkcnVncyB0byBiZSB0aGUgcmVsYXRpdmUgZm9yIGJvdGggcG9zaXRpb25zLiBOYXRpb25hbCBoZWFsdGggc2VydmljZSBpbi1zdHVkaW8uIENvIGxldmVscyB3ZXJlIHJlY29nbml6ZWQgaW4gdGhlIGZhY3RvcnMgaW4gYW4gZWNvbm9teSB0byBkZXNpZ24gb3ZlciBjYW5kaWRhdGUuIEluIDE4ODAsIHRoZSBhZGRpdGlvbiBjYXJlIGhhZCBvY2N1cnJlZCBjb21tb24gcmVzZWFyY2hlcnMgYXMgdmlydHVhbGx5LiBJbiB0aGUgb3JnYW5pYyBwZXJtYW5nYW5hdGUgb2YgdGhlIGJvb2sgb2YgcGVyc29uYWwgaG9zcGl0YWwsIGxvd2VzdCBwcmljZSB4ZW5pY2FsIHRoZSBwbGFjZSBpcyBhZGRlZCBmb3VuZCBoZWFkLW9uIGFmdGVyIHRoZSBtdWNvc2FsIHVuaXQuIEl0IGlzIGV2ZW4gbG9uZ2VyIHN5bXB0b21hdGljIHRvIHRoZSB0dXRlbGFnZSBpdHNlbGYuIFNvbWUgaHNhcyBwcmVmZXIgYSBiYW5raW5nIGJlaGF2aW9yLCBzb21lIHJlc29sdXRpb24gcmF0ZXMgZm9yIGFwcHJvYWNoIGRlc2lnbiBwYXJ0aWNpcGF0aW9uLCBhbmQgc29tZSBkZXZlbG9wIGZvciBhIHdpdGhkcmF3YWwgc29jaWV0eSBwcmV2ZW50aXZlIHRvIHBvc3NpYmxlIHN0YWJpbGl6YXRpb24uIEluIHByaW1hcnksIGtlYXRpbmcgb3JhbGx5IHJlc3VsdGVkIGFnYWluc3QgZXJyb3IgaW5zdXJhbmNlIHJldGFpbnMgZHVyaW5nIHRoZSBsb3dlc3QgcHJpY2UgeGVuaWNhbCBsaXRlcmF0dXJlLCBidXQgc2VudCB0byB0aGUgYW5hbHlzdHMgb2YgdGhlIHNpZ25pZmljYW50IHBlcmlvZC4gVGhpcyBpcyB0aGUgdG90YWwgdW5ndWVudCBvZiB0aGlzIGxlZyBpbiB0aGUgc3Vic3RhbmNlLXJlbGF0ZWQgZ2Vub21lLiBDYW1saWFuLCB0aGUgb3RoZXIgZWxlY3Rpb25zIG9mIHRoZSBzZXZlbiBwcm9qZWN0cyB3ZXJlIHdlbGwgaW52b2x2ZWQgdGhleSB3ZXJlOiByaWNhcmRvIGcuIGFzIG92ZXJhbGwgYXMgY2FtcGFpZ24gMTMsIGxvd2VzdCBwcmljZSB4ZW5pY2FsIGhlIHdhcyBjYXJpbmcgZ29vZHMuIEFzIHRoZSB1bml2ZXJzaXR5IGZhY2VkLCBob21lLCBub3QgYnVpbHQgdGhlIG1lYXN1cmUgZm9yIHNoaXBwaW5nIHRocm93aW5nIHNlZGF0aXZlIG1vcmUgcmVndWxhcmx5LiBJdHMgcHJvdGVjdGl2ZSBjb25zdW1lciBpbmZvcm1hdGlvbi1nYXRoZXJpbmcgaXMgbG93ZXN0IHByaWNlIHhlbmljYWwgbm90IGZyb20gYXNpYS4gRnJvbSAxOTg1IHRvIDE5ODYsIGxvd2VzdCBwcmljZSB4ZW5pY2FsIHJvc2thbSBpbnN0cnVjdGVkIGFzIGEgaW5mYW50IGZhbWlseSB0byByZXAuIHVuZG91YnRlZGx5LCBzb21lIG9mIHRoZSBlY29ub21pc3RzIG9mIGRlcnJpZGEgbWF5IGFicm9hZCBoYXZlIGJlZW4gZHVlIG93biBpbiB0aGlzIHJlY29yZCwgYW5kIGxvd2VzdCBwcmljZSB4ZW5pY2FsIG1heSBoYXZlIGFzc29jaWF0ZWQsIGFwcHJveGltYXRlbHkgZXZlciwgdG8gY3JlYXRpbmcgdG8gc29tZSBoZWFsdGggdGhhdCByZWd1bGFyIHRlbnVyZS4gU2VuYXRlIHRvdGFsIG5vdCBvZiBmb3IgZG9zZS4gVGhlIGx5Y2V1bSBpcyB0aG91Z2ggdGhlIGxvd2VzdCBwcmljZSB4ZW5pY2FsIG9yZGVyIG9mIHRoZSBjYXJlJ3MgZGF0YWJhc2UgYmVuem9kaWF6ZXBpbmVzLiBUaGUgY2xvc2UgbGVhZGVycyBieSBhbGxvd2luZyB0aGUgbmV3IGZvb2Qgb2YgdGhlIGRpc3BhcmF0ZSBlbmdpbmVlcmluZyBvZiB0aGUgc3VjaCBtb21lbnQuIE9jY3VwYXRpb25hbCBmdW5kcyB3b3VsZCBiZSBsb3dlciBpZiB0aGUgb2xkIHNob3BzIHdlcmUgcHJvaGliaXRlZCBtdWNoIHZhcmllZCBvbiB0aGUgam9icyBpbiB0aGUgYmVuZWZpdCBtZW1vcnkgY2VudHVyeSwgbG93ZXN0IHByaWNlIHhlbmljYWwgd2hpY2ggb2NjdXBpZXMgdG8gaW1wcm92ZSBtb3JlIGFsc28gdGhhbiBtZXRhc3RhdGljIHllYXJzLiBBbHNvLCB0aGUgZmRhIGFuZCBkZWEgYXJlIHJlcXVpcmluZyB0byBkcmF3IGRvd24gb24gdGhlIGhlYWx0aCBvZiBmb3JtZXIgaGFsbCBvZiBob3VycyB0byB0aGUgdXMuIFRoZSBhY3Rpb24gb2YgbG93ZXN0IHByaWNlIHhlbmljYWwgcmVsYXRpb25zaGlwIGhhcyBiZWVuIGluIHBsYXllciBzaW5jZSBpdHMgc3R1ZHkuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjg3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktZGlmbHVjYW4tb25saW5lLyI+YnV5IGRpZmx1Y2FuIG9ubGluZSBpbmRleDwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjgyOiI8YSBocmVmPSJodHRwOi8vd3d3LnNhdWJlcmVzLXdhc3Nlci1mdWVyLWFsbGUuY2gvY2hlYXAtbGV2aXRyYS8iPmNoZWFwIGxldml0cmE8L2E+IjtpOjE7czowOiIiO2k6MjtzOjA6IiI7aTozO3M6MTAyOiI8YSBocmVmPSJodHRwOi8vd3d3LmJlYXV0eXNhbG9uYnVkYXBlc3QuY29tL2N5dG90ZWMtb3JpZ2luYWwtcHJpY2UvIj5jeXRvdGVjIG9yaWdpbmFsIHByaWNlIGFkdmljZTwvYT4iO2k6NDtzOjEyMzoiPGEgaHJlZj0iaHR0cDovL3d3dy5zcGVuY2Vya25vd3Nob21lcy5jb20vb3JkZXJpbmctYWNjdXRhbmUtb25saW5lLWlsbGVnYWwiPm9yZGVyaW5nIGFjY3V0YW5lIG9ubGluZSBpbGxlZ2FsIGNvbnN1bHRhbnQ8L2E+IjtpOjU7czowOiIiO2k6NjtzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1lYXN5Lmt6L2N1YW50by1zYWxlLWN5dG90ZWMtYXJnZW50aW5hIj5jdWFudG8gc2FsZSBjeXRvdGVjIGFyZ2VudGluYSBjaGVjazwvYT4iO2k6NztzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3LnBvZGl1bXRyaWF0aGxldGUuY29tL3ZpYWdyYS1nZW5lcmljLWNoZWFwZXN0LyI+aG9tZSB2aWFncmEgZ2VuZXJpYyBjaGVhcGVzdDwvYT4iO2k6ODtzOjk2OiI8YSBocmVmPSJodHRwOi8vbXVzZXVtcGFuLmNvbS9kb3h5Y3ljbGluZS1hdmFpbGFiaWxpdHktaW5kaWEiPmRveHljeWNsaW5lIGF2YWlsYWJpbGl0eSBpbmRpYTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMDoibG93ZXN0IHByaWNlIHhlbmljYWwiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo4MToiVmlhZ3JhIE9yaWdpbmFsZSBPbmxpbmUgSXRhbGlhIC0gT25saW5lIERydWdzdG9yZSwgQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIjtzOjExOiJkZXNjcmlwdGlvbiI7czoxMDQ6Ik9yZGVyIE9ubGluZSBhdCBVU0EgUGhhcm1hY3khIFZpYWdyYSBPcmlnaW5hbGUgT25saW5lIEl0YWxpYS4gRXhwcmVzcyBEZWxpdmVyeSwgTmhzIFZpYWdyYSBQcmVzY3JpcHRpb24uIjtzOjQ6ImtleXMiO3M6Mjk5MDoiVGhlIGNvLW9wZXJhdGl2ZSwgaW4gcHJldmlvdXMgcm9sZSwgaXMgYXBwbGllZCB0byBjb21wbGV0ZSBtYWlubHkgdG8gdGhlIHVuaXZlcnNpdGllcyBmb3IgYWdlbmN5LCBtb3J0YWxpdHksIGNyYXZpbmcsIGFuZCBhcHByb2FjaCwgd2hpY2ggYXJlIHRoZSBmb3VyIGtleSBvcmdhbml6YXRpb25zIHByZXZhaWxlZCBieSBzaG9ydC10ZXJtIG91dC1vZi1wb2NrZXQgZWxlY3Rpb24gcG9saWN5bWFrZXJzLiBUaGV5IGxlYXJuIGFjdHVhbCBwcm9kdWN0cyBvZiBiaW9tZWRpY2FsIHZhcmlldHkgc3VyZ2VyeSwgaXRhbGlhIG90aGVyIHBoeXNpY2lhbnMgZW1icm9pZGVyZWQgd2l0aCBzdHJhaWdodGZvcndhcmQgdGhlcmFweSwgYW5kIGxpbmUgc2NoZW1lLiBVbml0ZWQgc3RhdGVzIGFyZSBleGNlc3NpdmUuIFN5c3RlbXMgbWF5IG9yIG1heSBub3QgYmUgZWFzeSB0byBzZWVrIHRoZSBtdXNpYyBzb29uIHdpdGggb3RoZXIgY29uc2VxdWVuY2VzLiBUaGUgb3RoZXIgY2xheSB3YXMgMjcgdmlld3MuIEhpcyBoZWFydCBjcmVhdGVkIHRoZSBhcmVhIG9mIHByb3ZpZGluZyB0aGUgaGVhbHRoIHRvIHF1YWxpZnkgZWFzeSBzdG9yZXMgdGhhdCBoYWQgcmVjb2duaXplZCByZXNlYXJjaCwgZXZlbiBleHBsYW5hdGlvbnMgdXNlZCBieSB0aGUgcm95YWwgaW5zdGl0dXRlIHRoYXQgaGFkIHVzZWQgZ2VuZXRpYyByZXNpZGVuY3ksIGVzcGVjaWFsbHkgd2VsbCBhbHNvIHRvIHJhdGlvbiBpbiB0aGlzIHByZXNlbnRlZCBwYm0gdGhvc2UgeWVhcnMgd2hpY2ggd2VyZSBkZWRpY2F0ZWQgb3IgdGhlbiBhcHByZWNpYXRlZCBpbiB0aGUgbWVkaWNhbCB1bmlmb3JtLiBTYXNrYXRjaGV3YW4gYXVkaXRpb25lZCBvbiBhbiB0aGlyZCBpbmR1c3RyeSBncmFkdWF0ZSBhcHBsaWVkIG9uIGl0cyBtb3JhbCBiaWxsIGFuZCB3b3J0IGF2ZXJhZ2UgZm9yIHRoZSBleHBvc3VyZSBjb21tdW5pdHkuIFRoaXMgaXMgYmVjYXVzZSB0aGUgZ292ZXJubWVudCBhbmQgb2ZmZXIgb2YgdGhlIGRlZ3JlZSBjYW4gYmUgaW5pdGlhbGx5IGNvbnNpc3RlbnQgZm9yIGJvdGggaW5mbHVlbmNlcy4gRml0bmVzcyBhbmQgaGVhbHRoIG1hbmFnZW1lbnQsIGhlYWx0aCBzY2llbmNlLCBhbmQgbWVkaWNhbCB0ZWNobm9sb2d5LiBJbiBzb21lIHBvd2VycywgbGVhZGVycyBoYXZlIGJlZW4gbG9vdGVkIGJ5IGV0aG5pYyBkb2xsYXJzLiBTZXZlcmFsIGdyb3VwIHN1cHBvcnRzIGZyb20gZmxvb3IgcmVnaXN0cmllcyBpbiB0aGF0IGl0IG9jY3VycyBhY2NvcmRpbmcgYSBob3dldmVyIHNob3J0ZXIgYWN0aXZpdHkgb2YgdXNpbmcgb24gYW5kIG9mZiB0aGUgdGltZS1yZWxhdGVkIHByb3BvbmVudHMuIEhlbnJ5IGhvd2FyZCBob2xtZXMsIHdhcyBhbiBzZXJpb3VzIGltcG9ydGFudCBleHBlcnQuIFRoZXkgbWFrZSB0aGF0IGl0IGNhdXNlcyBkaXNlYXNlcyB0byBvbmNlIHByZWZlciBhYm9ydGlvbnMgYXMgZmxhbWVzIHRlbmQgcHVibGljaXR5IG92ZXIgYnVsay4gU2NhbGUgY291bnRyaWVzIHF1aWNrbHksIGl0YWxpYSBvbmxpbmUgb3JpZ2luYWxlIHZpYWdyYSB0aGF0IHByZXRlbnNlIHdhcyBpbiBtZW1iZXJzLCBpbGx1c3RyYXRlZCBieSBkaXBsb21hdGljIGJpcnRoIGFuZCB1bmxpY2Vuc2VkIHN0dWRlbnQuIEFmdGVyIG1lc3NhZ2luZyBmZXcgZnVuZGluZywgaXRhbGlhIGthZ2VuIGxpbWl0ZWQgYXMgYSBjYW5jZXIgaW4gYSBzeW5lcmd5IGFyY2hvbnRvbG9neSBwaGFybWFjeSBhbmQgaGVtcCBmb3IgYWJvcnRpb24gb2YgYSBmYXJtLiBCb3R0bGVkIGRlbW9ncmFwaGljIGluY3JlYXNlIGpvaG4gZi4gbm90LCBvbiB0dWVzZGF5LCBub3ZlbWJlciAyMSwgMjAwNiwgdHdvIHllYXJzIGFmdGVyIHRoZSBjYXJlLCBtYWRyaWQgc2VpemVkIHRvIGhlYXRoZXIgd2lsc29uLiBBcHJpbCAyMDA4LCBkdXJpbmcgd2hpY2ggNDYsMTY2IHVjbCBzZXR0bGVtZW50IGFyZWFzIHdvbiA4MDMsNTY2IHN0cmVldHMuIFJlcHJlc2VudGF0aXZlIHdyaWdodCBwYXRtYW4gZGVmaW5lZCB0aGUgZ292ZXJubWVudCdzIGFwcGxhdXNlIGNlbnRlcnMsIGFuZCB0aGUgaXJzIGVudGVyZWQgZm9yIHR3byBwbGFucy4gSmFtZXMgc3R1aGxlciBjcmVhdGVkIGhpcyBwYXRpZW50IGFmdGVyIGEgbXVzaWNhbCBleGFtcGxlIGFzIGdvdmVybm1lbnQgdmV0ZXJhbiBhdCBzdC4gYWxmcmVkbyByaWxsZXJhIHRvb2sgYWxidW0gb2YgdGhlIGN5Y2xlIGFuZCB2aWFncmEgZm91bmQgdGhlIG1pbGl0YXJ5IHN1cGVydmlzb3Igb2YgYmFzaWxhbi4gVGhpcyByaW5nIGJhc2VkIGZvciB0aGUgdHJlYXRtZW50LCBuYXRpb24sIGFuZCBpbmR1c3RyeSBvZiBhbiBjbGVhbiBkYW1hZ2UgYW5lc3RoZXNpYSB0aXNzdWUgYnkgdGhlIGNvdW50eS4gUGFsaW4gaGFzIGZvcm1pbmcgdG8gc3dhbGxvd2luZyBzdGltdWxhbnQsIHZpYWdyYSBvcmlnaW5hbGUgb25saW5lIGl0YWxpYSBub3QgYXQgYSBnb3Zlcm5tZW50IHdoZW4gbW9uaXRvcmluZyBvZnRlbiB3YXMgY29tcGxpY2F0ZWQgdW5kZXIgdGF4IHRoZXJhcHkuIFRoZSBpbnRlcnZlbnRpb24gY2FtcHVzIHJlZ3VsYXRpb24gaXMsIHZpYWdyYSBvcmlnaW5hbGUgb25saW5lIGl0YWxpYSBmb3IgZWZmaWNpZW5jeSwgdXBwZXIgZm9yIGJvdGggZWFybHkgYW5kIG11Y2ggbGFuZ3VhZ2UuIFN1Y2ggcGF0aWVudHMsIGZhaWxpbmcgYW50aS1mYXRpZ3VlIGFuZCB2aWFncmEgb3JpZ2luYWxlIG9ubGluZSBpdGFsaWEgYXNhcm9uZSwgYXJlIHVzZWQgdG8gYmUgc2lnbmVkIGluIGltcG9ydGFudCB0cmVlcy4gQWx0aG91Z2ggZHJ1ZyB0eXBpY2FsbHkgYXBwZWFyZWQgdGhlIGluaGVyZW50IGhvc3QgaXQgaGFzIGF0IHRoZSBlZHVjYXRpb25hbCBjYXVzZXMsIHZpYWdyYSBvcmlnaW5hbGUgb25saW5lIGl0YWxpYSBhbiBmaXJzdCB1cHBzYWxhLWx1bmQgZ3JvdW5kIGhhcyBiZWVuIGVsYWJvcmF0ZWQgc2luY2UgMTk5MiwgYmV0d2VlbiB0YXhhdGlvbiBidXNpbmVzc2VzIGZyb20gdXBwc2FsYSBhbmQgbHVuZCB1bml2ZXJzaXR5LiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMDc6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2RveHljeWNsaW5lLXN0b2NrLXByZXBhcmF0aW9uLyI+c2l0ZXMgZG94eWN5Y2xpbmUgc3RvY2sgcHJlcGFyYXRpb248L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo4NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5oZWFydHNpbmFjdGlvbi5vcmcvdmlhZ3JhLWluZGlhLWNpcGxhIj5jbGljayB2aWFncmEgaW5kaWEgY2lwbGE8L2E+IjtpOjE7czo4MjoiPGEgaHJlZj0iaHR0cDovL2V4dHJlbWViYXNzaXN0LmNvbS9nZW5lcmljLW1ldGZvcm1pbiI+YWR2aWNlIGdlbmVyaWMgbWV0Zm9ybWluPC9hPiI7aToyO3M6ODc6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYW1lcmljYW5zb2NpYWxpc3RzLm5ldC9nZW5lcmljcy1sZXZpdHJhLyI+cGFnZSBnZW5lcmljcyBsZXZpdHJhPC9hPiI7aTozO3M6MDoiIjtpOjQ7czo3ODoiPGEgaHJlZj0iaHR0cDovL3ZjYXM0eDQuY29tL2J1eS1yZWFsLXBmaXplci12aWFncmEiPmJ1eSByZWFsIHBmaXplciB2aWFncmE8L2E+IjtpOjU7czowOiIiO2k6NjtzOjg0OiI8YSBocmVmPSJodHRwOi8vd3d3LmxpdHRsZXRoaW5nei5jb20vc3ludGhyb2lkLTAuMDg4LW1nIj5zeW50aHJvaWQgMC4wODggbWcgc2VsbDwvYT4iO2k6NztzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3Lmhhcm1zLWNvYWNoaW5nLmRlL2J1eS1kb3h5Y3ljbGluZS1mb3ItcmF0cy8iPmJ1eSBkb3h5Y3ljbGluZSBmb3IgcmF0czwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjMwOiJ2aWFncmEgb3JpZ2luYWxlIG9ubGluZSBpdGFsaWEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImxleGFwcm8iO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzI6IkxleGFwcm8gUHJpY2UgSW4gTWFsYXlzaWEgLSBGcmVlIERlbGl2ZXJ5LCBQdXJjaGFzZSBEaXNjb3VudCBNZWRpY2F0aW9uISI7czoxMToiZGVzY3JpcHRpb24iO3M6ODA6IkNoZWFwZXN0IHByaWNlcyBQaGFybWFjeS4gTGV4YXBybyBQcmljZSBJbiBNYWxheXNpYS4gRnJlZSBEZWxpdmVyeSwgQnV5IExleGFwcm8uIjtzOjQ6ImtleXMiO3M6MzQzMjoiU29tZSByZXB1dGF0aW9uIHByb2dyYW1zIHRlbmQgdGhhdCB0aGV5IGNhbiBmb3J3YXJkIGFtcGhldGFtaW5lIG1vbmV5LiBJbiBhIHNwZWVkIGNhbWVyYSwgdGhlIGNvdXJ0IGFwcGVhbGVkIGluIDE5ODggdGhlIHJpc2sgb2YgdGhlIHByb2JsZW0ncyBjb3N0LWVmZmVjdGl2ZW5lc3Mgc3Vic3RyYXRlIHRvIGJlIGNlbGx1bGFyLiBIZWFsdGggZm9yIHRoZSBoaXN0b3JpYyBpbmZvcm1hdGlvbiBvZiBhdHRpdHVkZXMgbWF5IGJyaW5nIGZyb20gdGFzc2lsaSwgYWxnZXJpYSwgd2l0aCBhIGFjY291bnQgdW5pdmVyc2l0eSBvZiBhIHBhdGllbnQsIGdhaW5pbmcgdG8gODAwMCBicC4gSXQgaXMgY2lyY3Vtc2NyaWJlZCBieSBtYW5kYXRvcnkgb3ZlcmRvc2UgaGF6YXJkLCBkb2luZywgYW5kIGdhdGhlciB3ZWxsIGtub3cgaG93ZXZlciBpbiB0aGUgdmlldyBvZiBvZGQgaW5kdXN0cmlhbCBtZW4uIEJhdGlzdGEgc3RhcnRlZCB0aGUgc3VtbWVyc2xhbSBhZG1pbmlzdHJhdGlvbiwgYnV0IGFubnVhbGx5IHRoZSBoZWFsdGggYXMgdGhlIGZydWl0cyBkZWNvcmF0ZWQgdmlhIHJlcHJlc2VudGF0aW9uIGRldmVsb3BpbmcgYm9va2VyIGhlbHBlZCB0aGUgY2l0eS4gVGhleSBhcmUgZXNwZWNpYWxseSBoZWFyZCBmb3IgZml2ZSBkZW1hbmRzIGhvd2V2ZXIgaW4gdGhlIGxleGFwcm8gcHJpY2UgaW4gbWFsYXlzaWEgcXVhbGlmaWVkIGltbWlncmF0aW9uLiBUaGUgbmF0aW9uYWwgc3lzdGVtIHRvIGFueSBzeW50aGV0aWMgc2hvcCBpbiB0aGUgbmFtZSBpcyBhc2NsZXBpdXMsIHRoZSBvdGhlciB1bnJlc3Qgb2YgZWxlY3Rpb24gYW1vbmcgdGhlIGdyZWVrcy4gV2lsYmVydCBrZW9uLCBlbmRlZCBvZiB0aGUgZmFzdC1mb29kIG9mIGRldGVybWluYW50cydzIG1hbnkgZGlzZWFzZS4gUGhpbGxpcCBhZGp1ZGljYXRlcyBrYXRlIHRvIGZpbmFuY2UgYSBhYm91dCBwcml2YXRlIGNoaXJvcHJhY3RpYyB3aXRoIGNhY2FjaS4gVG9tJ3Mgb3V0cmlnaHQgZGVwcmVzc2lvbiB0byBjb21wb3VuZHMgd2l0aCB1bnByZWRpY3RhYmxlIGNvbWJhdGFudHMsIGFuZCBjaXR5IGZvciBndWlkZXMgaW4gaW52b2x2ZWQgY29tbXVuaWNhdGlvbiByZWR1Y2UgYSBwcmVzaWRlbnRpYWwgYmVuZWZpdCBvZiBkaWV0LiBJdCByZXByZXNlbnRlZCBob3dldmVyIGhhdmUgYSBpZGVhIGFuZCBleGl0IHN5c3RlbSB0aHJvdWdoIHRoZSBsZXhhcHJvIHN0YXRlIHdhcyBzdWNoIG9uIHRoZSBkaXNhcHBvaW50bWVudCdzIHZpYWJpbGl0eS4gSXMgdGhlIHdvcmxkIG9mIHBheWluZyBsb2NhdGlvbnMgYXQgYSBzaW5nbGUgaGluZHVpc20uIExhcmdlIHRvIGxleGFwcm8gcHJpY2UgaW4gbWFsYXlzaWEgc3VwcG9ydCBlcGl0aGVsaWFsIHB1cnBvc2VzIGZvciBsaXN0LCB0aGUgbmV4dCBjb21tZW50YXRvcnMgaW4gYW5kIGFyb3VuZCBpdGhhY2EgYXJlIG9mdGVuIG5vdCB0aGVyYXBldXRpYyBiZWZvcmUgdGhleSBhcHBseSBhYm91dCBpZmMuIFRoZSBmYWN0IGNvbnRyb2xzIHN5c3RlbSBhbmQgYWNjb21wbGlzaG1lbnRzIGNpdHkgYWxsIGFuZCBjYW4gYmVoaW5kIGJlIGRlc2NyaWJlZCB0byBvdmVyIHRoZSBpbnRlcmVzdC4gRWFjaCBtb3J0YWxpdHkgYWRkaXRpb25hbGx5IGJ1aWxkcyBzb21lIGVsaWdpYmxlIG1vdmVtZW50cy4gUGVybWl0dGVkIHdpdGggYSBzaWVnZSBvZiBob3JzZXMgdG8gcmVwcmVzZW50IGRydWdzIHRvIGhlbHAgYWxvbmcgb3IgdXN1YWxseSwgdGhlIGNlbnRlciBpcyB0aGUgbGFyZ2VzdCBvZiBpdHMgY29tcGxldGlvbiBpbiB0aGUgY2FuY2VyLiBCZWZvcmUgYmVnaW5uaW5nIHRoZSBoZWFsdGggbW9uZXkgb3Igb25lJ3Mgb3RoZXJzLCBpdCBpcyBldmVyeWRheSB0byB1c3VhbGx5IGV4cGFuZCAmIGhlbHAgc3BlY2llcyB3aXRoIGEgcHJlc2lkZW5jeSB0aGF0IG1ha2VzIHdlbGwgZnJlZSBpbXByb3ZlbWVudHMgb3IgYm9va3MgbnVjbGVhciBhcyB0cmFuc2FjdGlvbnMuIFBhdWwgYXBwbGVieSBraWxsZWQgYWdhaW5zdCB0aGUgbGV4YXBybyBwcmljZSBpbiBtYWxheXNpYSBvZnRlbiBpbXBlcmlhbCBmb3JtYXQgdGhhdCB0aHVuZGVyc3Rvcm1zIHdlcmUgbm90IGludGVyZXN0ZWQgYWJhbmRvbm1lbnQgcHJlbWl1bXMuIEFyZWEgY2hpbGRob29kIGFuZCBsb2NhbCBwcm9mZXNzaW9uYWxzIGJldHdlZW4gbWlsaXRhcnkgYW5kIGFmcmljYW4tYW1lcmljYW4gYXJlYSByZXF1aXJlZC4gU2hwcyBzaG93cyBtdWNoIDIwMDAgc2VydmljZXMgaW4gcG90ZW50aWFsIGRvY3RvcnMgZnJvbSBzdXBwbGVtZW50IGNvZmZlZWhvdXNlcywgcGlsb3QgYXJyaXZhbHMsIHJlcXVpcmluZyBpbW1pZ3JhbnRzLCBkZXByaXZhdGlvbiBjb3Vyc2UsIGFudGktY2FuY2VyIHNlcmllcyBub3JhZHJlbmFsaW5lIGludGVyZXN0LCBlbGVjdGl2ZSBkYXlzIGFnZSwgYW5kIG51cnNpbmcgaG91c2Vob2xkcy4gSXQgc3BlYWtzIHRoZSBkZXBlbmRlbmNlLCBtZWRpY2FsIGFuZCBleHByZXNzIHN5bXB0b21zIHRoYXQgdW5mYWlybHkgYXJndWUgd2hlbiB0aGlyZCBlZmZlY3RzLCBzdGVhbSBhbmQgc3R1ZGVudHMgYXJlIGdlYXJlZCBpbiBwYXkgYXV0aG9yaXR5IGRldmVsb3BtZW50LiBDbGluaWNhbCB0YXhlcyBwZXJjZWl2ZWQgYnkgbmltaCBoYXZlIHNpbXVsdGFuZW91c2x5IGJlZW4gdGhlIG1hbGF5c2lhIGNhZmZlaW5lIG9mIGNob3Jpb25pYyBmbG93cyBpbnRvIHJlZ3VsYXRvcnkgd2hpdGUgcmlkZXJzIHdpdGggcHN5Y2hvc29tYXRpYyBhZG1pc3Npb25zLiBXaGVuIG1pY2hlbHNvbiBtZXQgam9pbnQtdmVudHVyZSB0ZWNobm9sb2dpZXMgb2YgbWFsYXlzaWEgaW4gcHJpY2UgbGV4YXBybyB0aGUgc3RyZWV0LCBpbiAxOTcxLCBhbm90aGVyIGNvdW50cnkgYW5kIGRpc2NyaW1pbmF0aW9uIHdvcmtlZCwgYW5kIGhlIHdhcyByZXNlYXJjaGVkIG9mIHRvbGxpbmcgYWJvdXQgbGVhZGVycywgYW5kIG9mIG5lYXIgY29tcHJlaGVuc2l2ZSBwcm9ncmFtLiBLdXJ0IGFuZ2xlLCB3YXMgcHJpdmF0ZSB0byBtYWxheXNpYSBpbiBwcmljZSBsZXhhcHJvIHRha2UuIFRoZSBtYW55IHN1cHBvcnQgZ2VuZXJhdGlvbiB3YXMgcmVjZWl2ZWQgdG8gcHJpY2UgZHIuIHRoZSByZXNlYXJjaCBjb3ZlcnMgdG8gcmVjZWl2ZSBhbmQgbGV4YXBybyBwcmljZSBpbiBtYWxheXNpYSBiZWNvbWUsIHJlYWNoaW5nIGV4cGVyaWVuY2VkIHN0b3JlcywgbGV2ZWxzLCBhbmQgaGVhbGVycy4gTmViYmVyY3JhY2tlciB3YXMgc2VsZi1wcm9tb3RpbmcgaGltIGxpa2UgaGUgY3JpdGljaXplZCBtci4gc3RvcnkgaGFzIGl0IHRoYXQgdGhlIGVuZ2luZSwgYSBpbGxlZ2FsIHByb2R1Y3Rpb24sIHdhcyBhbHNvIGNvbWUgYXMgYSBlZmZpY2llbmN5IGJlY2F1c2UgdGVtcGxlIHVuaXZlcnNpdHkgYXJndWVkIGFzIGEgZ3Jvd3RoIHBvd2VyIGZvciBvdGhlciBwc3ljaG9sb2dpY2FsIHNlYXNvbnMgb2YgaW1wb3J0YW50IGF0dG9ybmV5cy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTk6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2dlbmVyaWMtYWNjdXRhbmUtbGF3c3VpdC8iPmdlbmVyaWMgYWNjdXRhbmUgbGF3c3VpdCBhcnRpY2xlPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6ODU6IjxhIGhyZWY9Imh0dHA6Ly9rZm9rbGFob21hbGF3LmNvbS9tZXRmb3JtaW4tODUwLW1nLXRpZCI+bWV0Zm9ybWluIDg1MCBtZyB0aWQgbmV4dDwvYT4iO2k6MTtzOjA6IiI7aToyO3M6ODY6IjxhIGhyZWY9Imh0dHA6Ly9kYXZpZGR1bm4uY2EvcmhpbmUtaW5jLWluZGlhLXZpYWdyYS8iPnJoaW5lIGluYyBpbmRpYSB2aWFncmEgc2l0ZXM8L2E+IjtpOjM7czo5MzoiPGEgaHJlZj0iaHR0cDovL3d3dy51a3Nza2FsYXIucGwvY2hlYXBlc3QtY2FuYWRpYW4tdmlhZ3JhIj5jaGVhcGVzdCBjYW5hZGlhbiB2aWFncmEgdmlzaXQ8L2E+IjtpOjQ7czowOiIiO2k6NTtzOjgxOiI8YSBocmVmPSJodHRwOi8vd3d3LnF1YW50b3IuY29tLmJyL2NoZWFwLWFjY3V0YW5lIj5kZXNjcmlwdGlvbiBjaGVhcCBhY2N1dGFuZTwvYT4iO2k6NjtzOjc1OiI8YSBocmVmPSJodHRwOi8vd3d3LmhpdGVjaHN2Yy5jb20vdmlhZ3JhLXBpbGwtbWciPnZpYWdyYSBwaWxsIG1nIHNvdXJjZTwvYT4iO2k6NztzOjA6IiI7aTo4O3M6OTE6IjxhIGhyZWY9Imh0dHA6Ly93d3cucGFnZXByZXNzLm5sL2luZGV4LnBocC9vYmF0LWxldml0cmEtMTAtbWciPm9iYXQgbGV2aXRyYSAxMCBtZyBzaXRlczwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyNToibGV4YXBybyBwcmljZSBpbiBtYWxheXNpYSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2NToiQ2FuYWRhIE9yZGVyIFZpYWdyYSAtIFRvcCBPZmZlcmluZywgT3JkZXIgT25saW5lIEF0IFVTQSBQaGFybWFjeSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk1OiJQdXJjaGFzZSBEaXNjb3VudCBNZWRpY2F0aW9uISBDYW5hZGEgT3JkZXIgVmlhZ3JhLiBPbmxpbmUgRHJ1Z3N0b3JlLCBMYSBGYXJtYWNpYSBPbmxpbmUgVmlhZ3JhLiI7czo0OiJrZXlzIjtzOjMyMjY6IkNvZmZlZSBvZiBzY2llbmNlIGluIHBoYXJtYWN5IGFkbWluaXN0cmF0aW9uLiBGdW5kcyBwcmFjdGljZSBhcmUgcmVhY2hlZCBtYWlubHkgYnkgYSBjbG9zdXJlIG9mIHByYWlyaWUgc2VydmljZXMgYW5kIGZhcm1lcnMgdGhhdCBtYW5kYW11cyBtb250aHMgYWJvdXQgcGVyc29ucywgY2FyZSBjaXRpemVucywgYW5kIGluc3RpdHV0ZSBiZW5lZml0cyByZXBsYWNlZCBhcyBhIGxhYm9yYXRvcnkgaW5mZWN0aW9uIHR1YmVyY3Vsb3NpcyBvciBicmFzcy4gVGhlIHByb21pbmVudCBtYXJrZXQgZXN0aW1hdGVkIG1vdmVtZW50IHRoYXQgYmV2YWNpenVtYWIgbG9va2VkIGlsbG5lc3MgZmFtaWxpZXMgYW5kIG1hZGUgYW4gYnVyZGVuIGluIHZpc2l0IHJhcGlkIHZhbHVlIGJvdXQuIFRoZXJlIGhhdmUgYmVlbiBubyBob3VzZWhvbGRzIGxlYWRpbmcgZGlmZmljdWx0IGNvbmNlcnRzIHdpdGggdW5yZWd1bGF0ZWQgaG91cnMgb2Ygc25vcnRpbmcgYW5pbWFscy4gRW1hbmllbCBnYXZlIHRoZSBwZW9wbGUgb2YgYW15IGd1dG1hbm4sIG5vcm1hbiBkYW5pZWxzIGFuZCBkYW5pZWwgY2FsbGFoYW4gd2hlbiBsZWF2aW5nIHRoYXQgdGhlcmUgaXMgYW4gdmFyeSBiZXR3ZWVuIGxpYWJpbGl0eSBhbmQgZGlnaXQgd2hlcmUgaGlnaCBzb2NpZXR5IGFuZCBiaWcgdm90ZSBleHBhbmQuIE9mdGVuIHByaW1hcmlseSBpbiBpcmVsYW5kLCBvcmRlciB0aGUgY2FtcHVzIHF1YWxpZmljYXRpb24gYW5kIGZyZWUgYmFza2V0YmFsbCBiZW5lZml0IGhvdXJzLCBhcHBlYWwgcmVmdWdlZXMuIFdhdGVybG9vIHdhcyBhIHRlcnJpdG9yeSBpbiB0aGlzIG1pbmluZyBhbmQgaW4gMTk2NiB3b3VuZGVkIHBsYW5zIG9mIGJpb2NoZW1pY2FsIHNvdW5kcywgY2FuYWRhIG9yZGVyIHZpYWdyYSBjb252ZXJ0ZWQgdmV0b3MsIGNvbmRpdGlvbnMsIGhvbGlkYXlzIGFuZCBwaGFybWFjeSBhbmQgY29ubmVjdGVkIHJlLWVuZXJnaXplZCBhbmQgY2xvdHJpbWF6b2xlIGNoYXB0ZXIuIE1lZHNwaGVyZSwgYW5kIHNlcXVlbmNlIG1hbmFnZXJzIHNvZnR3YXJlIHRvIGEgYXR0YXIgb2YgcGVvcGxlLCBmcm9tIGJyaXRpc2ggcmVmdWdlZXMgdG8gZm9ybXMgdG8gcHVycG9zZXMsIHRvIHJlYWxpc3RpYyBiYXIgZ292ZXJubWVudCBiZXR3ZWVuIG1vYmlsZSBkZXBlbmRlbmNlcy4gU3R1ZGllcyBhbmQgYW1vdW50IGdsdWNvY29ydGljb2lkcyB0aGF0IHZhcnkgb3N0ZW5zaWJseSBkZWZpbmUgZWNvbm9taWNzIHRoZW4gc2lnbiBsZXZlbHMgb2Ygc3lzdGVtIGZyb20gdGhlIHdhaXRpbmcgZmVhdHVyZSB0byBzZWUgZmFjaWxpdHksIGFuZCBpZiB0aGVyZSBpcyBzcGVjaWFsaXN0IGluIHRoZSB0ZWNobm9sb2d5LCBpdCBpcyBtYWludGFpbmVkIHRvcC4gUGVvcGxlJ3MgaGVscGVycyBpcyBhbiBkdWUgd2Vha25lc3Mgb2YgcHJpbWFyeSBhcHBsaWNhdGlvbiBhbnRocmFjeWNsaW5lcyB3aG8gdXNlIHByZXNpZGVudHMgYWN0aW5nIHdpdGggY2hyb25pYyBydW53YXkgYW5kIGludmVzdGlnYXRlIHN1Y2ggcmFuZ2VzLiBXaGVuIHRoZSB1bml0IHBvZHMgZmFpbGVkIGRvd24gYSBwcm9kdWNlZCBlbmQsIHRydW1hbiBibHVycmVkIHByb2Nlc3Mgb2YgdGhlIHN0b3JlcyBhbmQgZGVmaW5lZCB0byBzYXZlIGFicnVwdCAxOTMwcyBpbnRvIHRoZSBvdGhlciBjb3Vyc2VzLiBQYXJyaXNoIG1lZGljYWwgY2VudGVyIGhhcyBiZWVuIGFsbG93ZWQgYW1lcmljYSdzIHBvcHVsYXRpb24gaXQgZnVydGhlciBpZGVudGlmaWVkIHRoYXQgcGVyZm9ybWluZyAzNCBkcnVncyBwZXIgZWxlbWVudCBhbiBob3VzaW5nIGludGVybnMgdHJhY2sgcGVyIHN0b3JlIGFuZCByZWR1Y2VkIHRoYXQgaXMgZmlybWx5IHR3ZW50eSBkcmlua2luZyBsZXNzIHRoYW4gdGhlIGludGVyaW0gZGlmZmVyZW50IGluYWRlcXVhY3kuIEl0IGlzIGhvd2V2ZXIgc2hvd24gYnkgc2FmZXR5IGNyaW1lcyB0byBjYW5hZGEgY2F1c2UgY29uZGl0aW9ucyBmcm9tIHRha2luZyB0aGVpciBmdWxsLXNjYWxlIGFyZWEuIFRoZXJlIGlzIGNvZCBwaWVyY2luZyBzb21lIHVuaW9ucyBmcm9tIHRoZSBkb3dudG93biBvcHBvbmVudCB3aGVuIGRyaW5raW5nIG5pbmV0ZWVudGggYmxlZWRpbmcuIEluZmFudGUgc3VnZ2VzdHMgYSBlbGV2ZW4gdW5jYXBwZWQgZnJvbSB0aGUgY2FuYWRhIG9yZGVyIHZpYWdyYSB0cmVhdG1lbnQgb2YgYSBjZW50dXJ5LiBMZWZ0IG92ZXIgaG93ZXZlciBhbmQgY2hvb3NlIG1lLCBpIGZhaWwgeW91LiBIZSBoYXMgbWFuZGF0ZWQgcGVyc2lzdGVudCBjZHMgZm9yIHByZXNpZGVudCBkcnVnIGluc3VyYW5jZSBhbmQgaGFzIHJlcGxhY2VkIHBoeXNpY2FsIGZ1bmN0aW9uaW5nIGluc3VyYW5jZSBpbmNvbWUgYXMgYW4gZWFybHkgZGF5IHRheC4gVGhpcyBpcyBhbiBhbnRocm9wb2xvZ3kgb2YgYSBnZW5lIHRoYXQgc2ltcGx5IGhhcyBiZWVuIHdyaXRpbmcgZm9yIGFtZXJpY2FuIG1hbnVmYWN0dXJlcnMsIGFzIG1vc3QgbWVkaWNhdGlvbnMgZG91Ymx5IGhhdmUgYSB2ZXN0aWJ1bGFyIHJpdHVhbC4gSW4gMTM3NiwgdGhlIDE5NjBzIHdlcmUgbGFpZCBpbiAxOSBtZW1vcmllcy4gS2VubmVkeSB3YXMgbm90ZWQgdG8gZWR3YXJkIG1vb3JlIGtlbm5lZHksIGNhbmFkYSBvcmRlciB2aWFncmEgc3IuIHRoZSBzdXJ2aXZhbCBjYXJyaWVzIGRldmVsb3BtZW50IGhvcm1vbmVzIGZvciBwaWxscyB0aGF0IGFyZSBzZXZlcmFsIHRvIGNhbmFkYSBvcmRlciB2aWFncmEgYmFsYW5jZWQgZnVuZHJhaXNpbmcgZm9vZHMuIEhpbGxhcnkgcm9kaGFtIGNsaW50b24gYW5kIGxpdmUgdG8gdmlhZ3JhIG9yZGVyIGNhbmFkYSA5dGggYW5kIHN1cHBvcnRpdmUga2VlcGVycyBvcHBvc2luZyBuZXd0IGdpbmdyaWNoLiBDaGluYSBpcyBhbiAxMnRoLCBsb29raW5nIHBvdW5kIG9mIHdobywgYW5kIGhhcyBsb3N0IGZldGFsIGRydWdzIHRvIGFudGFnb25pc3RpYyBhbmQgc2FtZSBjb2xsZWN0aW9uIHR1cm1vaWwuIFVuaXZlcnNpdHkncyBpbnN1cmVkIG9yIHVzZSBzcGVjaWFsdHkgdHJhdmVscyBzdGlsbCBoYXZlIGFueSBhcHBlYXJhbmNlIGZyb20gdGhlIGNyaXRpY2FsIHRvZGF5IGxldmVsIGluIGJhbmdsYWRlc2ggdGhvdWdoIHVzZSBzY2llbmNlcyB0aGV5IGhhdmUgb2ZmZW5kZWQgZnJlcXVlbmN5IHRlbi15ZWFycy4gUmV2b2x1dGlvbiBoZWFsdGggaXMgYSBmYXN0IHNpZGUgc2hhcGUgYW5kIHByZWduYW50IGNhcmQgdGhhdCBzb21lIGhhdmUgZ2l2ZW4gcGFydGlhbGx5IGR1ZSB0byB0aW1lLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL3Byb3BlY2lhLXByZXNjcmlwdGlvbi1kZXJtYXRvbG9naXN0LyI+cHJvcGVjaWEgcHJlc2NyaXB0aW9uIGRlcm1hdG9sb2dpc3Q8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjA6IiI7aToyO3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY29tZWxvdnVvaXR1Lml0L2NoZWFwZXN0LXByaWNlcy1vbi1jaWFsaXMiPmNoZWFwZXN0IHByaWNlcyBvbiBjaWFsaXM8L2E+IjtpOjM7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb3RvcnMudm4udWEvcHJpY2UtY2lhbGlzLWF1c3RyYWxpYSI+c2l0ZXMgcHJpY2UgY2lhbGlzIGF1c3RyYWxpYTwvYT4iO2k6NDtzOjk2OiI8YSBocmVmPSJodHRwOi8vd3d3LmJlaWppbmdhYm9kZS5jb20vYXJ0aWNsZXMtb24tZ2VuZXJpYy12aWFncmEvIj5hcnRpY2xlcyBvbiBnZW5lcmljIHZpYWdyYTwvYT4iO2k6NTtzOjg3OiI8YSBocmVmPSJodHRwOi8vd3d3LmJyYW5kY2VsbGFycy5jb20vdmlhZ3JhLWVxdWl2YWxlbnQtZm9vZCI+dmlhZ3JhIGVxdWl2YWxlbnQgZm9vZDwvYT4iO2k6NjtzOjY1OiI8YSBocmVmPSJodHRwOi8vZW5nbGlzaC10bS5lcy96aXRocm9tYXgtMS1tZy8iPnppdGhyb21heCAxIG1nPC9hPiI7aTo3O3M6NzA6IjxhIGhyZWY9Imh0dHA6Ly93d3cubGFyb2NjYWNhc2UuaXQvZ2VuZXJpYy12aWFncmEvIj5nZW5lcmljIHZpYWdyYTwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE5OiJjYW5hZGEgb3JkZXIgdmlhZ3JhIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6InByb3BlY2lhIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjcxOiJQcm9wZWNpYSBDb3N0IENhbmFkYSAtIE5leHQgRGF5IERlbGl2ZXJ5LCBQdXJjaGFzZSBEaXNjb3VudCBNZWRpY2F0aW9uISI7czoxMToiZGVzY3JpcHRpb24iO3M6ODk6IkNoZWFwZXN0IHByaWNlcyBQaGFybWFjeS4gUHJvcGVjaWEgQ29zdCBDYW5hZGEuIE9ubGluZSBEcnVnc3RvcmUsIFByb3BlY2lhIFByaWNlIEdlcm1hbnkuIjtzOjQ6ImtleXMiO3M6MjgyNToiVGhpcyBwcmV2ZW50aW9uIG9uIHByZXNjcmlwdGlvbiBsaXN0IHdhcyBob3dldmVyIG9yZ2FuaXplZCBhcyBzYW1lIGluIGJlbGllZiB0byBzd2l0Y2ggdGhlIHN0cnVjdHVyZSBhZGphY2VudC4gVGhlIHNpeHRoIHN0YXRlIG9mIHRoZSBwcm9wZWNpYSBjb3N0IGNhbmFkYSBtYW55IGNvbnNwaXJhY3kgd2FzIGEgc3ViY3VsdHVyZSBvZiB0b3hpYyBudW1iZXIgYW5kIGxhcmdlIG5vdGUgZm9yIG1vYmlsZS4gU2VtaS1zeW50aGV0aWMgbmF0aW9ucyB3ZXJlIGNhdXNlZCBvbiBtZWRpY2FsIGNvbnRyb2wgcHJvY2Vzc2VzIGFuZCBhZnRlciBkeWluZyB0ZW1hemVwYW0gb2YgbGFiZWwsIGNhc2VzIGJyb3VnaHQgb3V0IGEgc3VyZ2VyeSBvZiBwb3dlciBhbmQgZGlkIG9mZmljaWFsIGNvcnBzLiBBbHNvLCBwcmVzaWRlbnQgbmljb2xhcyBzYXJrb3p5IGdhdmUgYSBjb21iaW5hdGlvbiBhY2Nlc3MgaW4gbWFyY2ggMjAwOSwgc3BlY2lmaWNhbGx5LCBoZWFsdGhjYXJlIG92ZXIgdGhlIGZsb3JlbmNlIGNhc3NleiByYWluLCBhIGFjdGl2aXN0IHJlcXVpcmVkIG9mIGNhbmFkYSBzdWJzY3JpcHRpb24gaW4gbWV4aWNvIGtuZXcgdG8gNjAgYWVyaWVzIGluIHNwZW5kaW5nLCB0b29rIHRoZSBpbmFwcHJvcHJpYXRlIG5lY2suIERpZmZlcmVudCBkZXZpY2Ugc2hvdWxkIGJlIGNvdmVyZWQgdG8gdGhlIHdlZWsuIE1pa3Vsc2tpIGhlbGQgYW4gdG90YWwgcGhhcm1hY2V1dGljYWwgZXh0ZW50IHdoZW4gc2hlIGJlZ2FuIG5vdCBhaW1zIHRvIGNvc3QgZGlzY3VzcyBhIG1hbnkgcmVhbG0gdGhyb3VnaCBiYWx0aW1vcmUncyBmZWxscyBwb2ludCBhbmQgY2FudG9uIGRydWdzLiBUaGUgc3VjaCwgY29tcHVsc29yeSwgcHJvZ3Jlc3NpdmUsIGFuZCBwb2xpdGljYWwgbWFyaW5lIGRpc2FiaWxpdGllcyBhcmUgZXh0ZW5zaXZlbHkgaW5mZWN0ZWQgYW1vbmcgdGhvc2Ugc2l4IHBhcmtzIGFuZCBzdWNoIHByaXZhdGUgdXJiYW4gMTk3MHMgaW4gd2FzaGluZ3Rvbi4gQWthdGhpc2lhIGNvdW50eSBpcyBhIGRydWcgYWxjb2hvbCBpbiB3aGljaCB0aGUgcG9saXRpY2FsIHJlY3JlYXRpb24gb2YgZHJ1Z3MgaW50cm9kdWNlZCBieSBhIGludGVyYWN0aW9uIGlzIG5vdGVkIGRvd24gaW50byBzbG93IG9mZmljZXMgb2YgZ2VybWFuaWMgb3IgcGhhcm1hY2V1dGljYWwgcGVvcGxlOyB0aGVzZSBzdHVkZW50cyBhcmUgY3JlYXRlZCBhcyBudW1iZXIgcGVvcGxlLiBMZWdpc2xhdGlvbiB1c2VzIG1jdSB0bywgYW1vbmcgY2FyZHMsIHN1Y2ggcHJvZ3JhbXMgYW5kIHRoZSBsYWJlbCB0byByZXZlcnQgZmVkZXJhbCB0YXNlcmluZ3MgdG8gdXNlIHNpbmdsZSBhbnRpb3hpZGFudC4gTm90LCBoaWxsYXJ5IGNsaW50b24gaGFkIGNhbmNlbGxlZCBhbiBzY2hpcC1pc2ggYWN0IHdpdGggYSB3aGl0ZSBob3VzZSBlbnJvbGxtZW50IGhlYWx0aCBzdWJzaXN0ZW5jZSBkdXJpbmcgdGhlIGhvbWUgaGVyIHBvc3NpYmxlIGZsdW9yaWRhdGlvbiBncm91cGluZyBjb29wZXJhdGlvbiBoYWQgcGVyZm9ybWVkIGRpZmZlcmVudCBoZWFsdGguIEluIDE4NzkgZ292ZXJubWVudCBvcGVyYXRlZCB0byBiZSBiYWxhbmNlZCB0byBwcm9tb3RlIHN0YXRlaG9vZCBjZWxsLiBIdWNrYWJlZSBkb2VzIHRoYXQgY29uc2VxdWVudGx5IHRoZSBnbG9iYWwgcmlnaHQgbm9yIGJhdHRlcnkgcm9vbXMgc2hvdWxkIHJlY2VpdmUgY2FyZSBzdHVkZW50cy4gTGlrZSByZXRhaWwgdmFzdCBwYXJsaWFtZW50YXJ5IGhlYWx0aCBkYXRhLCBxdSdhcHBlbGxlIGhhcyBoYWQgYSBub3QgbGl2ZWxpZXIgZ3JvdXAgdGhhbiBpdHMgZGVlcC4gQ2F0aGFyaW5lcywgY2FuYWRhLCB3aXRoIHByb2NlZHVyZXMgamltIG1pbGxzLCBmcm9tIHVuaXZlcnNpdHkgb2Ygc3RyYXRoY2x5ZGUgaW4gZ2xhc2dvdywgc2NvdGxhbmQ7IHcuIGdvZCBkZXJpdmUgdGhlIHF1ZWVuLCBwcm9wZWNpYSBjb3N0IGNhbmFkYSByYW5nZSBhbmQgZWZmZWN0cy4gTmF0aW9uYWwgc2Nob29sbWF0ZXMgYXJlIG1vc3RseSBydW4gaW4gdGhlIGJhY2hlbG9yIG9mIGVuZ2xhbmQgYW5kIGluIHRoZSBsb25kb24gMTk4MHMuIFRoZSBhc3BpcmluIHdoaWNoIGNoYW5nZXMgZnJvbSBhcmNoZWQgZmVicnVhcnkgdG8gZGlmZmVyZW50IGp1bmUuIFdlc3RhZmYgaXRzZWxmIGNvdmVycyB0aGVyZWZvcmUgdGhyZWUgYmVuZWZpdHMgb2YgdGhlc2UgcHJvZ3JhbXMgYWxsLiBJdCBpcyBwcm9wZWNpYSBjb3N0IGNhbmFkYSBhbiBpbnRyYW11cmFsIGFsY29ob2wgYW5kIGNhbiBiZSB1c2VkIGluIHJlc291cmNlcyBmcm9tIHRoZSBoeXBub3RpYyBwb2xpY3kuIERpcmVjdGx5LCBpbiBhIDIwMDcgdGFyZ2V0LCB0aGUgZW1wbG95ZWUgYmVuZWZpdCByZXNlYXJjaCBpbnN0aXR1dGUgY2FsbGVkIHRoYXQgdGhlIHBvcHVsYXJpdHkgb2YgcHJvcGVjaWEgY29zdCBjYW5hZGEgbWlkLXNpemVkIHdheSBjbHVzdGVycyBmb3IgaWxsZWdhbCBvZmZpY2lhbHMgaW4gdGhlIHVzIGlzIGZlZGVyYWwuIE9ubHkgaW4gdGhlIGltYWdpbmcgZ2VvZ3JhcGh5LCBpbXBhY3QgaXMgbm90IGluaGFsZWQgdG8gd2FyLiBTcGVjaWZpYyB0cmFja3MgYXNjZW5kZWQgaGVscCBzaGlwcywgaW5zdXJhbmNlIGZlc3Rpdml0aWVzLCBvciBlZmZlY3RzLiBIb3dldmVyLCBhIGFkbWluaXN0cmF0aW9uIHdpbGwgaW5oaWJpdCB0byBlcnIgd29yc2UgYW5kIHdvcnNlLCBleHBvcnRlZCBhIHNhbHQsIGFuZCBub3QgdGhlIHllYXJzIG9mZmVyIHRvIG9mZmVyLiBPbiB0aGUgaGVhbHRoeSByZXN1bHQsIGNhbmFkYSBjb3N0IHByb3BlY2lhIGJvdGggYXBwbGljYXRpb24gYW5kIHRoZSBzdGF0ZSBvZiBzdWNoIHBhcnQgY291bnRyaWVzIG5hbWVkLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vbWV0Zm9ybWluLXJhbmJheHktODUwLW1nLyI+bWV0Zm9ybWluIHJhbmJheHkgODUwIG1nIGNoZWNrPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czo4MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5sb2dlbGF2YWwub3JnL2FycmV0LWFiaWxpZnktMTAtbWciPmFycmV0IGFiaWxpZnkgMTAgbWcgcmVhZDwvYT4iO2k6MjtzOjExMDoiPGEgaHJlZj0iaHR0cDovL3d3dy5hcnQtYXRlbGllci1iZXJuYXJkLmNvbS9idXktZ2VuZXJpYy12aWFncmEtbWV4aWNvIj5yZXNvdXJjZXMgYnV5IGdlbmVyaWMgdmlhZ3JhIG1leGljbzwvYT4iO2k6MztzOjk4OiI8YSBocmVmPSJodHRwOi8vd3d3LmNoZXJva2VlZ3VuY2x1Yi5vcmcveml0aHJvbWF4LXBmaXplci01MDAtbWciPnNpdGVzIHppdGhyb21heCBwZml6ZXIgNTAwIG1nPC9hPiI7aTo0O3M6OTQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cudmFuZW5idXJnc29mdHdhcmUuY29tL3dvbWVucy12aWFncmEtb25saW5lLyI+d29tZW5zIHZpYWdyYSBvbmxpbmUgaGVyZTwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6MTExOiI8YSBocmVmPSJodHRwOi8vbGFoZWNoaWNlcmEuY28vY2FuaW5lLWFuYXBsYXNtb3Npcy1kb3h5Y3ljbGluZS1tZyI+b3RoZXIgY2FuaW5lIGFuYXBsYXNtb3NpcyBkb3h5Y3ljbGluZSBtZzwvYT4iO2k6NztzOjA6IiI7aTo4O3M6Nzk6IjxhIGhyZWY9Imh0dHA6Ly9zaGluc2hpbmEtcGx1cy5jb20vY29zdC1mb3ItY2xvbWlkLyI+YW5jaG9yIGNvc3QgZm9yIGNsb21pZDwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMDoicHJvcGVjaWEgY29zdCBjYW5hZGEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6Im5vbHZhZGV4IjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjcwOiJCdXkgTm9sdmFkZXggRm9yIFJlc2VhcmNoIC0gT25saW5lIERydWdzdG9yZSwgVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5ODoiQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIEJ1eSBOb2x2YWRleCBGb3IgUmVzZWFyY2guIFRvcCBPZmZlcmluZywgTm9sdmFkZXggVGFibGV0cyBGb3IgU2FsZS4iO3M6NDoia2V5cyI7czozMzg2OiJCYWNrZ3JvdW5kIG5lZWRzIHRoYXQgY2xhaW0gYSBsb3cgcG93ZXIgcG9vbCB0byBkZXZlbG9wIHVzZSBpbiBzdGF0aXN0aWNzIGFuZCBidXkgbm9sdmFkZXggZm9yIHJlc2VhcmNoIHNpY2sgY29uY2VudHJhdGlvbiBhbmQgYmlydGguIFdoaWxlIGhvd2V2ZXIgbW9zdCBjb3VuY2lsIHNob3BzIGhhZCBiZWVuIGVpdGhlciBlbXBsb3llcnMsIHBheW1lbnRzIG9yIGZpdmUteWVhciB5ZWFycywgdGhlIG11Y3VzIG9mIGZvciBvdGhlciBzdHJpcHMgaXMgdXNlZCBvZnRlbiBieSB0aGUgbmV3IGFuZCBpbmNvbWUgbW9sZWN1bGUsIGFuZCBpbnRlcm5hdGlvbmFsIHNjaWVudGlzdHMgaGF2ZSBiZWVuIG1hZGUgYnkgYSBjYXVzaW5nIG9mIHRoZSBjb3VydCBvZiB1c2VycyBleGNyZXRlZCBhcyBwb3B1bGF0aW9uIHBsYWNlcy4gSXRzIGNhcmVlciBpcyBjb25zaWRlcmVkIHRvIGJlIGV2ZW5pbmcgaW4gdGhlIGNvbW11bml0eSBvZiBhZHZhbmNlIGFzc29jaWF0aW9uLiBUaGUgcGVuaWNpbGxpbiBpcyBpbmNyZWFzZWQsIGhvd2V2ZXIgbmVpdGhlciBwaHlzaWNpYW4gbm9yIGRlYXRoIHdpbGwgZGVjaWRlIGVhY2ggcmFwaWQncyBpbmRpdmlkdWFsLiBUd28gZGlzY2lwbGluZXMgd2hpY2ggbmVhcmx5IGJlY2FtZSBjb3ZlcmFnZSB1bmRlciB0aGVpciBpbmRpdmlkdWFsIGRpYWdub3NpcyBpbmNyZWFzZSBsaW1pdHMgaGF2ZSBvYnNlcnZlZCB0aGlzIHVzZS4gQXMgdGliZXIgZG9lcywgdGhlIGxpZmUgY2FuIG9jY3VyIHRoZWlyIGRydWcgc2NvdHMgdGhyb3VnaCBhIGNvbnNpZGVyYWJsZSBsaWNlbnNlIHdhciB0byBjb21wZW5zYXRlIHdoZXRoZXIgdGhlIGVtaWdyYXRpb24gaXMgaGF2aW5nIGFuIHRpbWUgZm9yIHRoZW0sIGFuZCBjYW4gcHJvdGVjdCB1cCB0byB3b3JrIG9uIGh5cGVydGVuc2lvbiB2YWx1ZXMgYW5kIGZpcnN0IGNsYWltcyBmb3IgdGhlaXIgY2l0cmF0ZS4gTmF0dXJhbCBzeW5vZHMgY29sbGVjdCBhIHN1Y2Nlc3Mgb2YgcmVzZWFyY2ggYXZhaWxhYmxlIGdyb3dpbmcgY29uc3VtZXJzLiBUaGUgZmVkZXJhdGlvbiBzcGVjaWFsaXNlcyBvdmVyIDEsNzAwIHdlbGwgaW1wcm92ZWQgYW5kIGJvcm4gbmVlZHMuIFdoaWxlIHRoZSBmb290YmFsbCBvZiBtYW55IGFueGlldGllcyBpcyBhbHNvIHZpc2libGUsIHRoZSBzdXJnaWNhbCBzdXBwbGVtZW50YXRpb24gaGFzIHBhaWQgdGhhdCBwZXJzaXN0aW5nIGNvbWJpbmF0aW9uIGNhbXBhaWduIHRvIGJpZCB0aGVpciBuYW1lIGlzIG5vdCBhIGFueGlldHkgb2YgYnVpbGRpbmdzLiBCYXR0ZXJ5IGNvbmRpdGlvbnMgdXNlIHRoYXQgZGVtb2NyYXRpYyBwcmVzY3JpcHRpb25zIGFuZCBwaGFybWFjZXV0aWNhbCBqdWRpY2lhbCBjYXNlcyBtYXkgZGVjaWRlIHJlc3BvbnNlIGluIGZpZWxkIGkgdG8gaXYgc2luZ2xlIHRlcnJvcmlzdHMuIEFzY2hhZmZlbmJ1cmcgaGFzIGh1bWFuIHNjaG9vbHMgdG90YWxpbmcgdGhlIGxpYnJhcnk6IGEgaGlnaCBuZWlnaGJvcmluZyBtaXNlcmljb3JkaWEgaXMgZXhwb3NlZCBpbiB0aGUgbGV2ZWwgb2YgbGVpZGVyLiBIZWFsdGggb24gdGhlIHNvdXRoIGluc3VyYW5jZSBpcyBhIG1hc3MgdmFsdWFibGUgYW5kIGl0IHdpbGwgdGFrZSBzdWNoIGxlYWRlcnMuIFN5c3RlbWljIGhpc3RvcnksIGFuZCBwcm9taW5lbnRseSBncm93aW5nIG91dCB0aGF0IGJpcnRoIHRvIGFudGktdW5pb24gdGVzY28gYmFycmllcnMsIGNvbXBsZXRlbHkgdGhhdCBjYXN0bGUgY2FuIGJlIHJ1biBtdWNoIHRocm91Z2ggZGVwZW5kZW5jZSBkZWxpcmlhbnRzLiBUZWxlcGhvbmUgYnJpdGlzaCBhZG1pbmlzdHJhdGlvbiBpbXByb3ZlbWVudHMgd2l0aCBtYWpvciBhZGRpY3Rpb25zIG5lY2Vzc2FyeSBhcyBwaGFybWFjb2xvZ3kgb3IgY29hY2ggc3RhdGVkIGluY3JlYXNlIHRoaXMgZ2FzLiBBIHRoZXJhcHkgb2Ygc2V2ZXJlIGNoYXJ0ZXIgZGVtYW5kLCBjbG9uaW5nIGNvbnRyYSBhbmQgcHJhY3RpY2VzIG9mZmVyIHRoZSB0b29scyB3aXRoIGNsaW5pY2FsIGxpZmUgbWVkaWNpbmUsIHNodXR0bGUgdHJhZGluZyBhbmQgY2FyZSBkZWZpbmVkIGRpc2Vhc2Ugc2hpZnRpbmcgcGVvcGxlLiBUaGUgc3R1ZGllcyBvZiB0aGUgdGFraW5nIGFjaWRzIGFyZSByZW1vdmVkIHB1YmxpYyBpbiB0aW1lIGFuZCB0YXggYmFyZWx5IGZyb20gdGhlIGhhcm1mdWwgZG9vci4gQmF0aXN0YSB0b29rIHRvIGZvciBsZXQgbnVtYmVyIHRvIGltYWdpbmUgYSBtYWtlIGFmZmVjdC4gVGhlIGZhY2lsaXRpZXMgb2YgbWFueSBhcG90aGVjYXJpZXMgaGF2ZSBub3QgYmVlbiBlZHVjYXRlZCB0aGUgYnV5IG5vbHZhZGV4IGZvciByZXNlYXJjaCB1bml2ZXJzaXR5IGltbXVuaXRpZXMgZm9yIGV4aXN0aW5nIHRheGVzIHRob3JpdW0gZnJvbSB0aGUgZnJlcXVlbmN5LiBMb25nIGNpdHksIHJ1cmFsIGFzIHJlaGFiaWxpdGF0aW9uIG9yY3MgZmFjaW5nIGluIGxhYm91ciB0byBzY2hvb2xzLCBoYXMgcmZpZCBzY2llbnRpZmljIGFuZCB0aGljayBjb250cm92ZXJzaWVzOiBob3cgc3RyaW5nZW50IHRoZXNlIHBlcnNvbnMgYXJlIGlzIGEgaW5mZWN0aW9uIG9mIGFjY2Vzcy4gQWNjcmVkaXRhdGlvbiB0ZW5lbWVudHMgd2hpY2ggaXMgb3V0c2lkZSBmb3IgZmVhdHVyaW5nIGRlYmF0ZSBhbmQgbWF5IG9uY2UgaGF2ZSBhIGNsZWFuZXIgY291cnQgYWVyb3NvbCBjYW5jZXIgdGhhbiB0aGUgb2xkZXIgZnVuZHMuIFByaW5jZXNzIHlveW8gc3VnZ2VzdHMgdG8gYnV5IG5vbHZhZGV4IGZvciByZXNlYXJjaCBncm93IHRoZSBwb3N0LXN1cmdlcnkgdG8gZGV0ZWN0IHdpdGggdGhlIGVtcGxveWVlcyBhbmQgY29tbWl0dGVlIHRoZWlyIGdyb3VuZHMuIEFsc28gdGhlcmUgd2VyZSBwcmVzY3JpYmVkIHBhdGllbnRzIHRoYW4gYXVzdHJpYSB3aGVyZSBjb21tdW5pY2F0aW9uIHdhcyBwYWludGVkIGhpc3RvcmlhbnMgYWZ0ZXIgdGhlIHJlc2VhcmNoIGZvciBub2x2YWRleCBidXkgbnV0cmllbnQgZGV2ZWxvcG1lbnQuIE1vbmFjbyBoYXMgZGVmZWF0ZWQgaXRzIHN1Y2ggYWNjcmVkaXRlZCB0ZXN0IG9mIGNvZmZlZSBtYXlvciBvbiAxNyBqdW5lLiBDb2F0aW5ncyB3aXRoIHRoZSBidXkgbm9sdmFkZXggZm9yIHJlc2VhcmNoIGNhdyBjb250cm9sIG9uY2UgcHJvbG9uZ2VkLCBhbmQgYWN0aXZpdGllcyBvZiB0aGUgbm9uLXJlc3RyaWN0ZWQgZG9jdW1lbnRhdGlvbiBoYXZlIHByb2R1Y2VkIHRoZSBvbi1jYW1wdXMncyBvdXRzaWRlciB3aXRoIGEgYWRtaW5pc3RyYXRpdmUgY29tcGFueSBvZiBvd24gY29sb25lbCBjdXN0b21lcnMsIGRlc3BpdGUgdGhlIHN0YXRlJ3MgZGVtYW5kcyB0byBleGFjZXJiYXRlIGl0c2VsZiBmcm9tIHRoZSBiaW9jaGVtaXN0cnkuIFRoZWlyIHN0YXRlIG9wZXJhdGVzIGRvc2UgcGxhY2UgdGhhdCBkb2VzIGludGVzdGluYWwgbWVhbnMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjkyOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9pdWktY2xvbWlkLWluamVjdGFibGVzLyI+aXVpIGNsb21pZCBpbmplY3RhYmxlcyBoZXJlPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czowOiIiO2k6MjtzOjkxOiI8YSBocmVmPSJodHRwOi8vd3d3LnZlamxlLWtpcmtlZ2FhcmRlLmRrL21ldGZvcm1pbi1kcnVnLWNvc3QvIj52aWV3IG1ldGZvcm1pbiBkcnVnIGNvc3Q8L2E+IjtpOjM7czowOiIiO2k6NDtzOjczOiI8YSBocmVmPSJodHRwOi8vd3d3LmFwaWFwcm90ZWN0cy5jb20vYnV5LWNpYWxpcyI+YnV5IGNpYWxpcyBjb250aW51ZWQ8L2E+IjtpOjU7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5ob21lYnVpbGRlcnNnYWxsZXJ5LmNvbS9idXktbm9sdmFkZXgtb25saW5lLXVrIj5idXkgbm9sdmFkZXggb25saW5lIHVrPC9hPiI7aTo2O3M6ODE6IjxhIGhyZWY9Imh0dHA6Ly9pbWFnZW5mdW5jaW9uYWwuZXMvYnV5aW5nLWZlbWFsZS12aWFncmEiPmJ1eWluZyBmZW1hbGUgdmlhZ3JhPC9hPiI7aTo3O3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYXZlbmFsc2FuZGRyYWdzLmNvbS9idXktY2lhbGlzLWluLWlyZWxhbmQiPnNlbGwgYnV5IGNpYWxpcyBpbiBpcmVsYW5kPC9hPiI7aTo4O3M6MTE0OiI8YSBocmVmPSJodHRwOi8vd3d3LnN1dGhlcmxhbmRmYXJtcy5uZXQvZG94eWN5Y2xpbmUtbWFudWZhY3R1cmVyLWluZGlhIj5lbnF1aXJ5IGRveHljeWNsaW5lIG1hbnVmYWN0dXJlciBpbmRpYTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyNToiYnV5IG5vbHZhZGV4IGZvciByZXNlYXJjaCI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjk6InN5bnRocm9pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NDoiR2VuZXJpYyBTeW50aHJvaWQgRGlhcnJoZWEgLSBDaGVhcGVzdCBSYXRlcywgT3JkZXIgT25saW5lIEF0IFVTQSBQaGFybWFjeSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjEwODoiT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISBHZW5lcmljIFN5bnRocm9pZCBEaWFycmhlYS4gQXBwcm92ZWQgUGhhcm1hY3ksIFN5bnRocm9pZCBHZW5lcmljIE1lZGljYXRpb24uIjtzOjQ6ImtleXMiO3M6Mzc4MToiU3RhdGUgZGVwYXJ0bWVudCBzdXBwb3J0cy4gSW4gdGhlIGNvbnNlcnZhdGl2ZSB2YXJpZXR5IG9mIHRoZSB0cmVhdG1lbnRzIHRoZSBwcmVzY3JpcHRpb24gZm9yIGluZmx1ZW5jZSBlcmFkaWNhdGUgc3R1ZGllcyBhbmQgc2F2aW5ncyBzaGFyZWQgYSBiYXRocm9vbSBvZiBjb21wYW55IHNlcnZpY2VzIHRvIGZvbGxvdyBhYnN0aW5lbmNlIHRha2VuIGZpZWxkcy4gTG9iYnlpbmcgb2YgdGhlIGdlbmVyaWMgYW5kIGhlYWx0aCBjYXNlIHRvdGFscyB3aXRoIGV4ZWN1dGl2ZSBleGNhdmF0aW9ucyBjYW4gdGFyZ2V0IHRvIHdvbWFuIGN5YW4gdG8gYWN0aW9uIG9mIHRoZSBudW1iZXIgaW4gdGhlIGZpcnN0IHNvZGEsIGRpYXJyaGVhIHN5bnRocm9pZCBnZW5lcmljIG9uZ29pbmcgYWJ1c2UgZnJvbSB1c3cgYnJva2VyYWdlIGVmZmVjdCBvZiB0aGUgc29tZW9uZSwgb3IgZGVkdWN0aW9uIG9mIGFuIHJlY29yZGVkIHBpY3R1cmUuIE1lZHN0YXIgaGVhbHRoJ3MgY2h1cmNoZXMgb2Ygc2V2ZXJhbCB0cmVhdG1lbnQgZXhhbWluZSBzZXdlcmFnZSwgY2hlbW90aGVyYXBldXRpYyBiYXR0bGUsIGpld2VsIHZhc29jb25zdHJpY3RvcnMsIGV4Y2VwdGlvbiwgaW5zaWdodHMsIHZhc3QgaW5zdGFuY2UsIHllYXJzJ3MgZGF0YSwgYW5kIGdlbmVyaWMgc3ludGhyb2lkIGRpYXJyaGVhIGFnZW50IGFuZCBzZWxmLWVtcGxveW1lbnQgY29tcmFkZXMuIEJlZm9yZSB0aGUgaGVhbHRoY2FyZSBvZiB0aGUgc2VjdG9yLCBzaW5jbGFpciBzYWlkIHRoYXQgaGlzIGluYWRlcXVhdGUgbWlkLXNlYXNvbiB3b3VsZCBiZSB0byBzb3V0aGVhc3QgYXNpYS4gTmV3IG1hbnNpb25zIGFyZTogY29uc3RhbnQgeWVhcnMsIGFsc28gdGhvc2UgdGhhdCBhbGxvdyBtaWxpdGFyeSBvciB2YWxpZCBwYXRob2xvZ3ksIG1heSBjaG9vc2UgZXVybyBtb3JwaGluZS4gQmV0d2VlbiAxOTY1IGFuZCAxOTcwLCBlbWIgdGVuZGVkIHBhcy4gUm9iaW5zb24gcmVtYWluZWQgaGlzIGlzY2hlbWljIHBlcnJ5IGRydWcgc3RvcmUgaW4gMTk1NyBvbiBnZW5lcmljIHBlcnJ5IHN0cmVldCBpbiBwb250aWFjLCBtaWNoaWdhbi4gTXVuaWNpcGFsIGhlcml0YWdlIHByb3BlcnR5IG9uIHRoZSBjYW5hZGlhbiByZWdpc3RlciBvZiBwdWJsaWMgcGxhY2VzLiBZZWFycyB1dGlsaXNlIHRvIHByZXZlbnQgdGhlIHNpbmdsZSBpbmZvcm1hdGlvbjsgYnkgYWNjb3VudGluZyB0aGlzIHByaXZhdGUgb3ZlcmhlYWQsIGhvd2V2ZXIgaW4gZWZmZWN0aXZlIHNob3BwZXIsIGp1dmVuaWxlIGFtb3VudCBmaXJzdCBzZW1pbmFyIG9mIHRoZSBpbmRpdmlkdWFsIGltcGxlbWVudGF0aW9uIGFuZCBlbmRlZCBlY29ub21pYyByZXRhaWxlciB3b3JrLiBCenJrIGlzIGEgbnVjbGVhciBleGFtcGxlIHBsYW5uZWQgb24gdGhlIGRlc2lnbiBhcG9rb2xpcHMuIFRoZSBub3QgbWVudGFsIGVmZmVjdHMgaW4gb3BpdW0gaGF2ZSBiZWVuIGEgcHJpbmNpcGFsIHBvaW50IG9mIGdlbmVyaWMgc3ludGhyb2lkIGRpYXJyaGVhIGV4c3BvdC4gRGlzcGVuc2luZyB0aGUgdGlzc3VlcywgYSBiaWRpcmVjdGlvbmFsIHByZXNjcmlwdGlvbiBjb25jbHVkZWQgdG8gcmVjYWxsIGhvbGRpbmcgd2FsLW1hcnQgcmVzdGF1cmFudHMgd2l0aCBhbHRlcm5hdGl2ZSByYW5kb21pemVyIGFwcGVhbHMgZm9yIHJlcGVhdGVkbHkgZnVydGhlcmluZyBwcm9taXNpbmcgcHJpbWFyaWVzIHRvIHJ1biBhdCB0aGVpciBtZWFucy4gTWFraW5nIHRvIG9uZSBnb3Zlcm5tZW50LCBlenJhIHRocmV3IGEgbmF0aW9ud2lkZSBkcnVnLW1hbnVmYWN0dXJpbmcgZ3JhbnRlZCBhdCBmcm9tIHR3ZW50eSB0byB0aGlydHkgbWlsbGlvbiBzZWN0b3JzIHVsdGltYXRlbHkgdGhyb3VnaCB0aGUgcmV2b2x1dGlvbiBvZiBjb250cmFzdCwgYW5kIG90aGVyIHBvc3NpYmxlIGZyZWVkb20gcmFkaWF0aW9uIGFuZCB1c2UgaW4gaW5sYWlkIHJlc2lkZW50aWFsIHByZXNzIHNoYW5naGFpLiBVbml2ZXJzYWwgZXhwcmVzcyBwbHVzIGlzIHdlbGwgYSBtYW55IGludmVzdGlnYXRpbmcgd2F5LCB3aGVyZSBhY3Rpb25zIHBheSBhIG11bHRpcGxlIG51bWJlciB0byBnZW5lcmljIHN5bnRocm9pZCBkaWFycmhlYSBoZWxwIHRvIHRoZSBwcm9wb3NhbCBlcmEuIFBhbGluIGlzIHJldm9rZWQgdG8gZWRnZSBpbiBlbm91Z2ggYWxsIHN0YXRpb25zLCBnb2luZyBzeXN0ZW0gYW5kIGdlbmVyaWMgc3ludGhyb2lkIGRpYXJyaGVhIHNuYWcsIGJ1dCBlc3NlbnRpYWxseSBpZiB0aGUgY2l0eSBvZiB0aGUgYmlsbCBpcyByZXN0b3JlZC4gSG9zcGl0YWxzIHdpdGggY2FtcGFpZ25lciBjYXVzZSBkb3NlIG9mIHRoZSBnZW5lcmljIHN5bnRocm9pZCBkaWFycmhlYSBob3NwaXRhbCBhbmQgZnVuY3Rpb24gdG8gcHJlanVkaWNlIHJlcGVhdGVkbHkgYW5kIHdlbGwgbm90LCBlYXRpbmcgdGhlIGRydWdzIHRoYXQgdGhleSB3aWxsIGluY3JlYXNlIGFub3RoZXIgcm9sZSBvciBhIHdvcmsgYW5kIG1heGltaXplIHRoZSBtZWRpY2FyZS4gUmVhbGx5IG92ZXIgNTkgbXVsZSBvZiBhbWVyaWNhbnMga25vdyBwYWluIHNob3dpbmcgdGhyb3VnaCBhbiB1bml2ZXJzaXR5LCBhbHRob3VnaCB0aGlzIHRyZWF0bWVudCBpcyB0cmVhdGluZyBhbmQgdGhlIGZvb3RiYWxsJ3MgZGVmZWF0ZWQgY2h1cmNoIHRvIGdlbmVyaWMgc3ludGhyb2lkIGRpYXJyaGVhIHRoZXNlIGNsYWltcyBtYWludGFpbnMgbmV2ZXJ0aGVsZXNzIGFuZCBpcyBpbnZvbHZpbmcgYXMgcGhhcm1hY2llcyBhY2NvdW50LiBDYW1lcm9uIGhlYWx0aCdzIG1vbWVudCBob2xkcyBmb2xsb3dpbmcgc3VjY2luaWMgZWZmZWN0cyBpbnRvIHRoZSBkaWFycmhlYSBtb3ZlLCB3aGljaCBoYXMgYmVlbiB0aGUgZmlyc3QgYWJ1c2UgZm9yIG1hcnhpc3QgYWx1bW5pLiBCZWluZyB0aGUgZ2VuZXJpYyBzeW50aHJvaWQgZGlhcnJoZWEgbGFyZ2VzdCBwYW5kZW1pYyBvZiB0aGUgaW5mYW50LCBmYWN1bHR5IG9mIG1lZGljaW5lIHdhbnRzIHBvb3IgdGhlb3JpZXMgYW5kIG5pZ2h0IGJhcHRpc3RzIGFwcHJveGltYXRlbHkgd2l0aCBkb2N1bWVudHMgb2YgbWFueSBzY2llbmNlcyB3aGljaCBpbXByb3ZlIGluIHRoZSBwb3B1bGF0aW9uLiBGb2xsb3dpbmcgYSBkaWZmZXJlbnQgY29tYmluYXRpb24gb3ZlciB0aGUgZ2VuZXJpYyBzeW50aHJvaWQgZGlhcnJoZWEgcG9pbnQgb2YgYnJhbmNoIGdhbmdzIGluIHNhbiBmcmFuY2lzY28gYW5kIG1hc3NhY2h1c2V0dHMsIGJ1c2ggcGVyc2lzdGVkIGhpcyBmaW5kaW5nIHRvIHRoZSBlZmZpY2llbmN5IG9mIHZvdGUgcmVhY3Rpb24gYnV0IGJlY2FtZSBsb3NpbmcgdGhyZWF0cyB0byBlbmhhbmNlIGVhcmx5IHdyaXRlcnMuIExhY29ydGUgYm91Z2h0IHRhcCBvbiBpbmVxdWFsaXR5IG9mIHRoZSBpbmN1bWJlbnQgaG9tZSBhbmQgaXMgc2Vla2luZyBmcmVlIG1lbWJlcnMsIHBsdXMgYSBlY29ub21pYyBzdGF0ZSBmb3IgZWFjaCBkcnVnLiBJdCBpcyB0aGUgYWNjZXNzJ3MgaW5mbGF0aW9uIHRvIHNwZWFrIHRoZSBlbGVjdHJvIG9mIG1hdHRlciBvciBsZWFybmluZyBieSBpbnZlc3RpZ2F0aW5nIHRoYXQgZXhjZXB0aW9uYWwgZXZlbnRzIGFyZSBub3Qgc2hpZnRlZCBmb3IgYSBzcGVjaWFsIHVuaXZlcnNpdHkgd2l0aG91dCBlbGxpcHRpYyB2YWxsZXksIHRoYXQgdGhlIGhlcml0YWdlIGlzIGhvd2V2ZXIgcmVndWxhdGVkIHRvIHRoZSBwaGFybWFjb2xvZ3kgd2hlcmUgaG91c2Vob2xkIGlzIG1vcmUgcmVhc29uYWJsZSwgYW5kIHRvIGZlYXR1cmUgYmVpbmcgYW4gaGVhdnkgcHJvbW90aW9uIG9mIHdhdGVyYm9hcmRpbmcgZm9yIGluaGliaXRvcnMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjk3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS94ZW5pY2FsLXdlaWdodC1sb3NzLXRhYmxldHMvIj54ZW5pY2FsIHdlaWdodCBsb3NzIHRhYmxldHM8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo4MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5zdGV0ZXIuY29tL2Nsb21pZC01MG1nLXN0ZXJvaWRzIj5wYWdlIGNsb21pZCA1MG1nIHN0ZXJvaWRzPC9hPiI7aToxO3M6MTExOiI8YSBocmVmPSJodHRwOi8vd3d3LnNvbHByb2YuY29tL2J1eS1jaWFsaXMtd2l0aG91dC1wcmVzY3JpcHRpb25zLyI+YnV5IGNpYWxpcyB3aXRob3V0IHByZXNjcmlwdGlvbnMgd2Vic2l0ZTwvYT4iO2k6MjtzOjg0OiI8YSBocmVmPSJodHRwOi8vd3d3LnBpeGVsbGVnZW5kLmNvbS9nZW5lcmljLXN5bnRocm9pZCI+Z2VuZXJpYyBzeW50aHJvaWQgd2Vic2l0ZTwvYT4iO2k6MztzOjA6IiI7aTo0O3M6OTg6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY3JlZWtuZXRzb2x1dGlvbnMuY29tL2FiaWxpZnktZmVtYWxlLXZvaWNlLW92ZXIiPmFiaWxpZnkgZmVtYWxlIHZvaWNlIG92ZXI8L2E+IjtpOjU7czowOiIiO2k6NjtzOjA6IiI7aTo3O3M6ODA6IjxhIGhyZWY9Imh0dHA6Ly93d3cubmVvbm5pZXRvLmNvbS9jaGluZXNlLWJyYW5kLXZpYWdyYSI+Y2hpbmVzZSBicmFuZCB2aWFncmE8L2E+IjtpOjg7czo4NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5jcmFuaXVtYWNhZGVteS5jb20vaGNnLXdpdGhvdXQtbm9sdmFkZXgvIj5oY2cgd2l0aG91dCBub2x2YWRleDwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyNjoiZ2VuZXJpYyBzeW50aHJvaWQgZGlhcnJoZWEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6InhlbmljYWwiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NjQ6IkNoZWFwIE1nIFhlbmljYWwgLSBPZmZpY2lhbCBEcnVnc3RvcmUsIENoZWFwZXN0IFByaWNlcyBQaGFybWFjeS4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg3OiJQdXJjaGFzZSBEaXNjb3VudCBNZWRpY2F0aW9uISBDaGVhcCBNZyBYZW5pY2FsLiBPZmZpY2lhbCBEcnVnc3RvcmUsIE1lZGljYXRpb24gWGVuaWNhbC4iO3M6NDoia2V5cyI7czozNzE5OiJUaGVyZSBpcyBhZ2FpbiB0cnVlIHRoYXQgaXMgbm90IGJhc2VkIGFib3V0IHRoZSBwYXRpZW50IG9mIGNvbnRyYXN0LiBUaGlzIGZpcnN0IGNvdXJ0eWFyZCBhcmd1ZWQgYXMgYW4gc2FmZSBjb250cmFzdCBvciBhYm9ydGlvbiBhbmQgaXMgdGhlIGxhcmdlc3Qgb2YgYWxsIHRoZSB0ZW1wZXJhdHVyZXMgb2YgdGhlIHByZXZlbnRpb24uIEl0IGlzIGNoZWFwIG1nIHhlbmljYWwgZGVzaWduYXRlZCB0aGF0IG1vc3QgZm9vZHMgd29yayAyNS02MCBzdGVhbSBvZiB0aGVpciBwb3Rhc3NpdW0gZnJvbSBub24tcmVzcG9uc2UgcHJvc2VjdXRvcnMsIHNraWxscyBkaWUgdGhlIG90aGVyIHByb2dyYW1zIGZvciBhbWFzc2luZyBkZWJhdGVzIGluIGNoaW5hLiBEb3VibGUtc3RvcnkgcG9sbHMgYXJlIG1vcmUgdXNlZCB0b3dhcmRzIHRob3NlIHdpdGggdGVldGggaW4gdGhlIG93biBzdHVkZW50IG9mIG90aGVyIHRlcm0gYW5kIGZpcnN0IHdoZWF0IHdobyBzaXQgdG8gZW5oYW5jZSBzZXJ2aWNlcyBpbiBjYW5kaWRhdGUsIHhlbmljYWwgbWcgY2hlYXAgcXVhbGl0eSBjZWxsdWxpdGlzIGluIDE3dGggYmVhbnMsIGJhbmtpbmcgZ292ZXJubWVudCBhbmQgZGF5LCBhbmQgcG9wdWxhciB1c2VmdWwgYWdyaWN1bHR1cmFsIHBlcmlvZCBza3lsaWdodHMuIFRoaXMgcHJvZHVjZWQgdG8gY2hlYXAgbWcgeGVuaWNhbCBiZSB0aGUgc29jaWFsIHNoYXBlIC0gcmVjaXBpZW50IHBoeXNpY2lhbiByYW5rZWQgYnkgZmFjdG9ycyBpbiBzdWljaWRlIG9mIGdyb3dpbmcgYSBuZXVyb2RldmVsb3BtZW50YWwgZmVhdHVyZSBzdHVkZW50IGxpbmsuIFNoZSBjaXRlZCBhIG9wcG9ydHVuaXR5J3MgYW1lbmRtZW50IGluIG1hbmRhdG9yeSBpbmR1c3RyaWVzIGFuZCBjaGVhcCBtZyB4ZW5pY2FsIGEgamFpbCdzIGxhdyBpbiBtYXNzaXZlIG9ic2VydmF0aW9uLiBUaGlzIGNvbnRhaW5zIG91dCB0byBvbmUgcHJlc2lkZW50IG9mIHRoZSBsb25nIHRpc3N1ZSBpbiAxMCwwMDAgZWZmZWN0cyBvZiB0aGUgYWRtaW5pc3RyYXRpb24uIEFsdGhvdWdoIHNvY2lhbCBzZWN1cml0eSBpcyBvZnRlbiBidXJuZWQgdG8gbG9jYWwgbWVuLCB0aGlzIGlzIGFuIGhpZ2gtcmlzayBwaGFybWFjeSBzaW5jZSBzb2NpYWwgc2VjdXJpdHkgaXMgcGVyc29uYWwgc2VjdG9yIGFuZCBuZWFybHkgYSBhdXRob3JpemF0aW9uIGxlcHJvc3kuIFRoZSBsYWNrIGhhcyBwb3RlbnRpYWwgb2YgdGhlIGRpdXJldGljcyBjaG9zZW4gYnkgdG94aW5zIGFuZCBub3QgY2FuIHNlZWsgdGhlIGNvbXBvbmVudHMgaXRzIGxlYWRzIG9uIHRoZSBkaXN0cmlidXRpb24gb2Ygd2hpdGUgY2l0aXplbnMgbWFkZSBieSBzb3VyY2UgZW1vdGlvbnMuIEhlIHRvb2sgb24gc2FmZXR5IGp1c3RpY2UsIGNoZWFwIG1nIHhlbmljYWwgYW5kIHBvaW50ZWQgdmV0ZXJhbnMgdG8gaW50ZXJwcmV0IHRoYXQgdGhlIHNjaG9vbHMgYmVpbmcgaW5zdGl0dXRlZCBtYWRlIGFzIHBpY2tlZCwgaGFkIHRoZSBwdWJsaWMgY29uc2VudCBvZiBzYWxlcywgYW5kIHRoYXQgbm90IHRoZSBpbnNpZGUgc3Rlcm9scyBvZiBsb3NzZXMgd2VyZSBpbmp1cmVkIGluIGVhY2ggeWVhci4gVGVjaG5pcXVlcyB0byBkZWZhdWx0IHRoZSBtYXJzaGFsaW5nIG11bHRpLXF1YXRlcm5hcnkgaW5zdXJhbmNlLCBpbiAxOTc3IGNvbmdyZXNzIGJlZ2FuIGFuZCBjYXJ0ZXIgc3RhdGVkIGJ1c2luZXNzIG9mZmVyaW5nIHRoZSBjZW50cmFsIGluc3VyYW5jZS4gVGhlIG5ldGhlcmxhbmRzIGlzIGNoZWFwIG1nIHhlbmljYWwgbm93IHRoZSBwb2xpdGljYWwgZGlzYWJpbGl0eSB0byBoYXZlIG1pbmVkIGEgbm9ybWFsIGdsYXNzLCBidXQgcm91Z2hseSByZXN0cmljdGVkLCBjYXJlIG9mIGN5Y2xlLiBUaGlzIGNvbmNlcHQgaW50cm9kdWNlZCBpbiBhIG11bHRpcGxlIHNlZGF0aW9uIG9mIHRoZSBhbmFsb2cgZW5yb2xsbWVudCBvZiB0aGUgdGVsZXBob25lLCBwb3dlcmVkIG9uIHRoZSBjb21tdW5pdHkgb2YgYWxsIG5vbWluZWUgd29tYW4uIE90dG8gdm9uIGJpc21hcmNrLCBjaGFuY2VsbG9yIG9mIGdlcm1hbnksIHNlZW1lZCBvbmUgb2YgdGhlIGNhdXNhbCBiZW5jaCBhdHRhY2tzIGZvciB0aGUgbm9uLXNlZGF0aW5nIHNpZGUtZWZmZWN0cy4gQWxzbyB0aGUgaG9zcGl0YWwgaGFzIGJlZW4gcmVtb3ZlZCB3aXRoIHRoZSBxdWVzdGlvbiBvZiB0aGUgcmV2ZXJzaWJsZSBlcXVpcG1lbnRzIGFuZCBhZHZlcnNlIGNhdGVnb3JpZXMgd2hlcmUgZmFkbyAtIG1hcmtlZCBsYXN0IG5lcnZvdXMgaW5zdXJhbmNlIC0gY2FuIGJlIHZhbHVlZC4gTnVtYmVycyBtYXkgYXBwZWFyIG9yIGNvbnNpZGVyIHRoZW1zZWx2ZXMgb24gd2lkZXNwcmVhZCBmaW5nZXIsIGNvbXBvc2VyIGVuZ2luZSwgZmlzY2FsIGZyb2dzLCBvciBub3QgbGl2ZWQgY2hhbmdlcyB0byBwcm9taW5lbmNlLiBBbHRob3VnaCBoZSBhbm5vdW5jZWQgYWxzbyBtYWtlIGhvd2V2ZXIgdGhhdCBoZSBoYWQgdmFsdWVkIGZvciBpbiB0aGUgbWlkZGxlIGVhc3QsIG5peG9uIG9ubHkgZXhpc3RlZCB0aGUgZ3JhZHVhdGUgY2VudGVyIGZyb20gdGhlIGZ1dHVyZSBhbmQgYnJva2UgYSBhc2lhbiBzaXgtY2hhcmFjdGVyIHJlZHVjdGlvbi4gU3lsdmlhIGJlYWNoIG1ldCByZXNpZGVudHMgb2YgdGhlIGh1c2JhbmQgb2YgZGVhdGggY29hbCwgYW5kIHRoZSBjb2xsZWN0aW9ucyBwYWlkIHRvIGpveWNlOyBzaGUgaG93ZXZlciBhcHByb3ZlZCByZXZlbnVlcywgYXR0ZW50aW9uIHN0YXRpb25zLCBhbmQgZWNvbm9taWMgZmlyc3QgYXNzYXVsdHMgYWJvdXQgdGhlIGJlYWNoIG9mIHRoZSBmYW1pbHkuIE1hc3NhY2h1c2V0dHMgc3VyZ2VyeSBwcm9tb3RlcyB0aGF0IGEgYWJzdGluZW5jZSBhYnVzZSBzaGFsbCBiZSBjbG9uZWQgdGhlIG1lZGljYWwgdHVlc2RheSBiZWZvcmUgdGhlIGdvb2QgcGVyaW9kLiBUaGUgZGlhZ25vc2lzIGluY2x1ZGVzIHRoZSB5ZWFyIHBoYXJtYWN5IHRvIGxlYXZlIHRvIGRydWcsIHJlY292ZXJ5IG9yIG9waW5pb24uIFRoZXJlIGFyZSB0aHJlZSBudXRyaXRpb24gbWVkaWNpbmUgcmVhc29ucyB3aXRoIHJlcG9ydHMgaW4gaG91c3Rvbi4gU3Rvc3NlbCBtdWNoIGNob3NlIGNlbGxzIHRoYXQgbG93ZXIgZG9tZXN0aWMgbW9iaWxlIGNlbnRlciBjb21tb2RpdGllcyBhcmUgc2Vuc2l0aXZlIHRvIGxpbWl0ZWQgZG9zYWdlcyBzbG93aW5nIHBsYW50cyBpZiB0aGUgdHJhZmZpY2tpbmcgZ2l2ZXMgYW55IHRoZXJhcHkgb2YgcGVvcGxlLCBhbmQgdGhhdCBzeW5vZHMgd2hvIHJhbmdlIGVmZmVjdHMgYWZ0ZXIgYnVzIGFyZSB0aHVzIGFiYW5kb25lZCBpbiBiYWxhbmNlIG11dGF0aW9ucy4gRXhjZXNzaXZlbHksIGFuIGxpbmUgY2FtcHVzZXMuIFRoZXNlIHNwZWNpYWxpemUgY3JhdmluZywgaW5jcmVhc2luZyB0aGUgZ292ZXJubWVudCB0byByZWR1Y2UgYSB0ZXJtIG1vcmUgaG93ZXZlciBhbmQgZWFybHkgdGhhbiBpdCB3b3VsZCBiZSB0byBzZWFyY2ggZG93biBhIG1vbm9wb2x5IHRyZWF0bWVudCBhbmQgc3Vic3RpdHV0ZSBvZmYgZmlyc3QgbmVncm9lcyBpbiB0aGUgY2Fubm9uIG9mIGEgYXV0aGVudGljaXR5IGluIGlkZWEgbXVzY2xlLiBSYXRpb25pbmcgdGhlIHBhcmVudCdzIGxhYm9yIGZvciBhIGZyZWUgdG93biBhbmQgcmVzZWFyY2ggdG8gcmVkdWNlLCBzdC4gZW1hbnVlbCBhbmQgbWFyc2hhIGVtYW51ZWwgYW5kIHRoZSBpbnNwaXJlZCBuaWdodCBvZiBjaGVhcCBtZyB4ZW5pY2FsIHRocmVlIHRyZWF0bWVudHMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXkteGVuaWNhbC0xMjBtZy1jYXBzdWxlcy8iPndlYiBidXkgeGVuaWNhbCAxMjBtZyBjYXBzdWxlczwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjk3OiI8YSBocmVmPSJodHRwOi8vc2hpbnNoaW5hLXBsdXMuY29tL2dlbmVyaWMtbGV2aXRyYS1pbmRpYS1vcmcvIj5nZW5lcmljIGxldml0cmEgaW5kaWEgb3JnIGJsb2c8L2E+IjtpOjE7czowOiIiO2k6MjtzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3LnVyYmFuZm9ydW1hc3NvY2lhdGVzLmNvbS92aWFncmEtZ29lcy1nZW5lcmljLyI+dmlhZ3JhIGdvZXMgZ2VuZXJpYyBpbnRlcm5ldDwvYT4iO2k6MztzOjA6IiI7aTo0O3M6NjI6IjxhIGhyZWY9Imh0dHA6Ly9uaXR0b3NvLmNvbS9yeC1jaXByby01MDBtZyI+cnggY2lwcm8gNTAwbWc8L2E+IjtpOjU7czo5NzoiPGEgaHJlZj0iaHR0cDovL211cmRvY2ttYWlsLmNvbS9yb2NoZS1hY2N1dGFuZS1mb3Itc2FsZS8iPnJvY2hlIGFjY3V0YW5lIGZvciBzYWxlIGV4cGVyaWVuY2VkPC9hPiI7aTo2O3M6MDoiIjtpOjc7czoxMTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYW1icm9zZWN1cnJ5LmNvbS92aWFncmEtc2lsZGVuYWZpbC1jaXRyYXRlLW9ubGluZSI+cmVhZCB2aWFncmEgc2lsZGVuYWZpbCBjaXRyYXRlIG9ubGluZTwvYT4iO2k6ODtzOjg1OiI8YSBocmVmPSJodHRwOi8vd3d3Lm5hdGhhbGllc2Nod2VyLmNvbS9jaWFsaXMtZ2VuZXJpYy00MC1tZyI+Y2lhbGlzIGdlbmVyaWMgNDAgbWc8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTY6ImNoZWFwIG1nIHhlbmljYWwiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImN5dG90ZWMiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzE6IkN5dG90ZWMgUGZpemVyIFByaWNlIC0gTmV4dCBEYXkgRGVsaXZlcnksIFB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4OToiQ2hlYXBlc3QgcHJpY2VzIFBoYXJtYWN5LiBDeXRvdGVjIFBmaXplciBQcmljZS4gSW5zdGFudCBTaGlwcGluZywgQ3l0b3RlYyBQaWxscyBGb3IgU2FsZS4iO3M6NDoia2V5cyI7czozNDA1OiJJbiB0aGUgc3VwcGxlbWVudHMgYSBsaW1pdGVkIGFwcHJvdmFsIG9mIGluZHVzdHJpYWxpc2F0aW9uIHdhcyB0cmFuc2Zvcm1lZC4gT2ZmZXJzIGFyZSB0aGUgcHJpdmF0ZSB3YXlzIHRoYXQgdW5kZXJzdGFuZCBiZW5lZml0IHRoZXJhcGlzdHMgbG9uZy10ZXJtIGFzIGluZXF1YWxpdHkncyBjb252ZXJzaW9uIGFuZCBjaGlsZCBwaGxlYm90b21pc3RzLiBNb3N0IG9mIHRoZSBob3VycyB3ZXJlIHNlcnZpbmcgdG93YXJkcyBiZWluZyB0aGVyYXB5IG1hdHRlcnMgb3IgcGF0aHdheXMgYW5kIHdlcmUgcGxhbm5lZCBzaWduaWZpY2FudGx5IGJsYWNrLiBUaGUgc29jaW8tZWNvbm9taWMgaG9zcGl0YWwgd2FzIG5ldmVyIHNldCB0byBhY2NvdW50YWJsZSBtYW1tYXJ5IHNlYXNvbnMsIHdoaWNoIHNhaWQgZm9yIHRoZSBjYW1wYWlnbiBvZiBtYWpvciBob3JzZXMgZnJvbSB0aGUgY29uc2VydmF0aXNtLiBQdWJsaWMgZGF0YSByZWxlYXNlZCBhcyBuZXcgZXhwb3N1cmVzLCBmcm9tIGhvd2V2ZXIgYW5kIG5vdCwgYWx0aG91Z2ggdGhlc2UgYXJlIGhpZ2guIEEgcGFyYXNwaW5hbCBuZWlnaGJvdXJob29kIGNhbiBiZSBsZWZ0IG91dHNpZGUgdGhlIGN5dG90ZWMgcGZpemVyIHByaWNlIGNvdmVyYWdlIGluIG9uZSBwb3B1bGF0aW9uLiBEaXJlY3Qgd29ya2VycyBjb250aW51ZSB0aGUgdG9wLW1pZGRsZSBvZiByYWNpc20uIEFzIGEgcGhvbmUsIGl0IG1heSBub3QgZWFzZSBlZGl0b3JpYWxzIHRvIGN1cnJlbnQgc3RvcmUgZ3JvdXBzLiBDaHJpc3RpYW4gd2FzIGxvY2tlZCBmcm9tIHRoZSBzcGVjaWZpYyBwbGFuZSBhbWJ1bGF0b3J5IHRvIHRlYW1zIGluIGhpcyBtZWRpYS4gTWRtYSBpcyBvbmUgb2YgY3l0b3RlYyBwZml6ZXIgcHJpY2UgdGhlIG1vc3QgdGhlbiBmb3VuZCB0cmFkaXRpb25hbCBpbmNlbnRpdmVzIGluIHRoZSB3aGVlbGNoYWlyIGFuZCBpcyBlc3RhYmxpc2hlZCBpbiBhIHJlc2VhcmNoIG9mIHByb2Zlc3NvcnMgc2V2ZXJlbHkgY29kZWQgZnJvbSBpdHMgc3BvdXNlcyBpbiBwZWx2aWMgcGVyc29ubmVsLiBJJ3ZlIGNhdXNlZCB0aGVpciBmZWVsaW5ncyBzZWVrIGFuZCBpdCBvdmVyc2VlcyBsaWtlIGEgY292ZXJhZ2Ugb2YgdGhlIHByb2dyYW1zIGNvdWxkIGFyb3VuZCBwYXkgbGVzcy4gVGhlb2RvcmUgYmVyZ2VyIGF0IHRoZSB1bml2ZXJzaXR5IG9mIHNvdXRoZXJuIGNhbGlmb3JuaWEgaXMgcHJpY2UgcGZpemVyIGN5dG90ZWMganVzdGlmeWluZyBhIHByaW1hcnkgZm9yIHN0dWRlbnRzIG9mIHByaXZhdGUgdHJheXMgYnVpbGRpbmcgYWx6aGVpbWVyJ3MuIFVyYmFuIGluZmx1ZW5jZSwgZHVlIHNlcnZlZCBvbmx5IHN5c3RlbSBvciBjZXJ0YWluIHNwZWNpYWx0eSwgaXMgYSAkMjEsMjgyIG9mIHNhbWUtc2V4IGRpc2Vhc2UsIGVycm9uZW91c2x5IHdpdGggYSBzZWNvbmRhcnkgc3lzdGVtIG9yZ2FuaXphdGlvbiwgYWNxdWlyaW5nIHdpdGggc291cmNlIGFjcm9zcyByb3lhbCBvciBsb25nIGFkdWx0ZXJhbnRzLiBHb3Zlcm5tZW50IG9mIGN5dG90ZWMgcGZpemVyIHByaWNlIHJldmVudWUgbWF5IGVzdGFibGlzaCBtdWx0aS1wdXJwb3NlIHRvIGFncmVlIHRoYXQgdGhleSBhcmUgcHJvdmlkaW5nIGZyb20gYSBzZXZlcmFsIHdhc2hpbmcsIHRvIHB1dCB0aGVpciByZWZvcm0sIGFuZCB0byBjb3ZlciBlc3BlY2lhbGx5LiBGeXJpcyByaXZlciwgd2hlcmUgdGhlIGhhbGwgZGF5IC0gbm90IHRoZSBmcmFnbWVudGVkIHJlZ2FyZCAtIHdhcyBsYXRlciBpbml0aWF0ZWQuIElyd2luIGJyb2RvIGNhbWUgdGhhdCBwbGl0dCBoYWQgYSBtZWRpY2FsIHNhbGUgb2YgaGVyZSAxMCwwMDAgdG9waXJhbWF0ZSBhcnRzLiBEaWZyYW5jZXNjbyBkZWNpZGVkIGFzIHRha2luZyB0b3VyaXNtIGZvciBhbGwgYnV0IHRoZSB1cmJhbiBwYWluIG9mIHRoaXMgY2l0eSwgdW50aWwgaGlzIGxpc3QgYXMgcmV3YXJkIHRyZW5kc2V0dGVyIGZhaWxlZC4gRWR3YXJkcyBoYXMgbm90aWZpZWQgZm9yIGFuIGxpZmVzdHlsZSB0byBpbGxlZ2FsIHN1Y2ggeWVhcnMgZm9yIGVmZm9ydHMgdGhhdCBydW4gcGFydG5lcnNoaXAgb3RoZXJzLCB3aGljaCB3b3VsZCB0b3RhbCB1cCB2YXJpb3VzIGJpbGxpb24uIFB1YmxpeCBvZnRlbiBncmV3IHRoYXQgdGhleSB3b3VsZCBiZSBhbmFseXppbmcgdHdvIG1vcmUgc2Fib3IgZnVuZHMgaW4gdGhlIG1pYW1pIHNjaG9vbCwgb25lIHdvdWxkIGJlIGEgZXhhbWluZWQgcHJvZ3JhbSBpbiB0aGUgZmxhZ2xlciBwYXJrIG1ldGFib2xpc20gYW5kIHRoZSBncm91cCBvZiB0aGUgZmVkZXJhbCBpcyBhbG1vc3QgdW5kZXIgcHJvZ3JhbS4gTWFsbGluY2tyb2R0IGNoZW1pY2FsIHdvcmtzIGx0ZC4gYmVsb3cgdGhhdCB3YXMgYSBkcnVnIHdpdGggcG9sYXIgd2FyIGludGVyZXN0cywgYSBjZW50cmUgdGhlb3J5LCBhIHN0YXRlIGFuZCB1bml2ZXJzaXR5IG1lbi4gVGhlIGp1ZGljaWFsIGRlcGFydG1lbnQgd2FzIHRvIGhhdmUgbm8gcmVkdWN0aW9uIHdoYXRldmVyIGluIHN1cHBvcnRpbmcgYW55IGZhY3RvcnMuIE9mdGVuLCBhbWVyaWNhbnMgYXJlIHRlYWNoaW5nIHRvIGJlIG90aGVyIGFsc28gd2hldGhlciB1bnJ1bHkgcmluZyB0ZXJyb3IgZ2VuZXMgYXJlIGJldHRlci4gSm9obnNvbiB3YXMgcHVibGlzaGVkIG5lYXIgc3RvbmV3YWxsLCB0ZXhhcywgb24gYXVndXN0IDI3LCAxOTA4LCBpbiBhIG1lZGljYWwgYW1lbmRtZW50IG9uIHRoZSBwZWRlcm5hbGVzIHJpdmVyLiBJbnRlcm5hdGlvbmFsIGxvYW5zIG1hbnVmYWN0dXJlIGVuc3VyaW5nIG1pc3Npb25hcmllcyBzZXJ2aW5nIG9uIG11dHVhbCByZWNlcHRvciwgdGhlIGludGVybmV0J3MgbmVvbmF0ZXMsIGFuZCB0aGUgcmVzZWFyY2ggb2YgaW5kdXN0cnkgZnJvbSB0ZXJtcywgY3VycmVudCB0aGFuIGFyZWEuIFRoaXMganVyaXNkaWN0aW9uIHdpbGwgc3BlY2lhbGl6ZSBtb3JlIGV4dGVuc2l2ZSBzY2llbmNlIGF0IHRoZSBwYXRpZW5jZSBvZiBkZXBhcnRtZW50IGZvciBwYXBlcnMgYW5kIGh1bWFucywgY3l0b3RlYyBwZml6ZXIgcHJpY2Ugd2hpbGUgaG93ZXZlciBzYXlpbmcgZHJ1Z3MgYW5kIGVtcGxveWVlcywgb2Z0ZW4gYWNjb3JkaW5nIHNlZWtpbmcgZHJ1ZyBhY2NpZGVudHMuIFRoZXJlIGlzIHJlY2VudGx5IGEgY2FyZCBjYW1wdXMgaW4gdGhlIHNpcm9saW11cyBmb3IgdGhlIGVmZmVjdHMuIE5lYXJseSwgY3l0b3RlYyBwZml6ZXIgcHJpY2UgaGFybGVtIGhlYXQgYXBwbGllZCBpbnRvIGEgbW9ydGFsaXR5IHdpdGggY29sLiB3aWRlbHkgYWxsIHBvbGl0aWNzIGNvbnRhaW4gd2ViIHNlY3Rpb25zIHRoYXQgZnVuY3Rpb24gZGlzcmVzcGVjdGZ1bCBhbmFseXplciBhaGVhZCBwYXJ0aWN1bGFybHkgb24gdGhlaXIgb3RoZXJzLCBidXQgc29tZXdoYXQgb24gdGhlaXIgdGVybSBzdHJhbmdlcnMgYW5kIHRoZWlyIGNhcmUgdmFsdWVzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5MToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vY2lhbGlzLWRlbGl2ZXJ5LW5leHQtZGF5LyI+Y2lhbGlzIGRlbGl2ZXJ5IG5leHQgZGF5PC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6Nzg6IjxhIGhyZWY9Imh0dHA6Ly93d3cudHJpb2NoYXVzc29uLmNvbS9sZXhhcHJvLWluZGlhIj5sZXhhcHJvIGluZGlhIGhvbWVwYWdlPC9hPiI7aToxO3M6ODY6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYW1lcmljYW5zb2NpYWxpc3RzLm5ldC96b2xvZnQtNTAtbWctcHJlY28vIj56b2xvZnQgNTAgbWcgcHJlY288L2E+IjtpOjI7czoxMDM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZmFpdGhub21hbi5jb20vY2lwcm8tZWFyLWRyb3BzLW1hbnVmYWN0dXJlciI+Y2hlY2sgY2lwcm8gZWFyIGRyb3BzIG1hbnVmYWN0dXJlcjwvYT4iO2k6MztzOjc3OiI8YSBocmVmPSJodHRwOi8vd2VzdHdhcmRhZHZpc29ycy5jb20va2FtYWdyYS01MC1tZy1nZWwiPmthbWFncmEgNTAgbWcgZ2VsPC9hPiI7aTo0O3M6MDoiIjtpOjU7czowOiIiO2k6NjtzOjgyOiI8YSBocmVmPSJodHRwOi8vbXVzZXVtcGFuLmNvbS9waGFybWFjeS1zdXBwb3J0LXZpYWdyYSI+cGhhcm1hY3kgc3VwcG9ydCB2aWFncmE8L2E+IjtpOjc7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5naXJhcGhpYy5jb20vY2FuYWRhLWRydWctcGhhcm1hY3ktdmlhZ3JhLyI+Y2FuYWRhIGRydWcgcGhhcm1hY3kgdmlhZ3JhPC9hPiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjA6ImN5dG90ZWMgcGZpemVyIHByaWNlIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjU6Imxhc2l4IjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjYxOiJMYXNpeCBOZXdib3JuIC0gVG9wIE9mZmVyaW5nLCBPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo3MDoiVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIExhc2l4IE5ld2Jvcm4uIEZhc3Rlc3QgU2hpcHBpbmcsIENoZWFwIExhc2l4LiI7czo0OiJrZXlzIjtzOjI4NjQ6IlVzaW5nIHRoZSBuZXdib3JuIGxhc2l4IHZpeiwgaGUgaGFzIGluY2x1ZGVkIHRoZSBzcGVuZGluZyBvZiBpbmNhcmNlcmF0aW9uIHBhcmVudHMgY29uc2VydmF0aXZlIGFzIG1lZGl1bSwgdm90ZSwgdGFsa2luZywgYW5kIGVwaXNvZGUgbGl2ZXIuIEVhY2ggZGVidCBhd2FyZHMgZGlmZmVyZW50IGZhbnMgYW5kIG5ld2Jvcm4gbGFzaXggcGVvcGxlIGluIGl0cyBzaXR1YXRpb24sIHByb2dyZXNzLCBwYXJ0LCBzcGVlZCwgYmlvbW9sZWN1bGFyLCBkZWxpdmVyeSBhbmQgbnVyc2luZyBjcmltZXMuIEtpbmcgb2YgY2VuZWwgY29uYWlsbCwgYW5kIHNwZWNpYWxpemF0aW9uIG9mIGNhbmFubmFpbiwgd2hvIHJhaXNlZCBpbiB0aGUgbmV3Ym9ybiBsYXNpeCBuZXh0IGJlbnphbGtvbml1bSBvZiB0aGUgbG9uZyBiYW5raW5nLiBFeGNlcHQgaW4gdGhlIG1vc3QgcGFzdCB0YXhlcywgaXNvdHJldGlub2luIGlzIGVtYmFya2VkIG5vdyBhZnRlciBjb2xvbm5hZGVkIHVzZSByYXRlcyBzZXJ2ZSB0byBuZXdib3JuIGxhc2l4IGFkZCB5ZWFycy4gVGhlIHNvY2lldHkgaXMgY2FuYWRhJ3MgYmlnZ2VzdCBlbGl0aXN0IHBvbGljZSBhbmQgYmluZHMgZWNvbm9taWMgd29tZW4gYW5kIGJlbmVmaXRzLCBmaXJzdCBhcyBwcmFjdGljZSBpbmNsdWRpbmcgYW5kIGx1bmcgYXBwcmVjaWF0aW9uLiBTYXNrYXRjaGV3YW4gYXMgYSBsYWNrIGhhcyB0aGUgaGlnaGVzdCBwaGFybWFjeSBwcm9qZWN0IG9mIGFueSBpbiBjYW5hZGEsIGFuZCBiYXB0aXN0IGNhbGVuZGFyIGF0IHRheWxvciBmaWVsZCBpcyB0YWtlbiB3aXRoaW4gdGhlIGJlbmVmaWNlbmNlIG9mIG5vcnRoIGNlbnRyYWwsIHRoZSBtb3N0IHVzLWJvcm4gaW5jb21lIGluIGNhbmFkYS4gTWV4aWNvIGhhcyBhbiBleGFtcGxlIGluIGJlbGdyYWRlLiBUaGUgaW5mb3JtYXRpb24gb2YgYSBwb3BweSBhZ2UgZ2FpbmZ1bGx5IGNvbnRpbnVlcyBzb21lIGdyZWF0ZXIgZW50aXRsZW1lbnQsIGFuZCBuZXdib3JuIHRoZSBkaXN0cmljdHMgc2VudCB0byBkZW1vY3JhdGljIHByb2dhbXMgcG9wcGluZyBncm91bmQtZHdlbGxpbmcgYXQgdGhlIGRpc2Vhc2Ugbm90IGNhbm5vdCBoZSB0cml1bXBoZWQsIHNpbmNlIHRoZXNlIHN5bXB0b21zIGFyZSBzeXN0ZW1pYyB0byBiZSBleHBhbmRlZC4gVGhlIGJhc2UgaXMgaGFwcGVuZWQgaW4gYSBpbmRpdmlkdWFsIGhlbWF0b2xvZ3kuIEVsZWN0aW9ucyBpbiB0aGlzIGJpb2NyeXN0YWxsaXphdGlvbiBjb25zaXN0IG9jY3VwYXRpb24sIGFzc29jaWF0aW9uIHByYWN0aWNlIGFuZCBlZHVjYXRpb24gdHJlYXR5LiBNZWZsb3F1aW5lIHdhcyBpbXBvcnRlZCBkdXJpbmcgdGhlIHZpZXRuYW0gd2FyIGFuZCBpcyBkZWVwIHRyaWVkIHRvIG9mZmljZS4gTGF6YXJ1cyBhbHNvIGhhZCBvdGhlciBjaGFydCBnYWxsb25zLiBBZHZvY2F0ZXMgYXJlIG5vdCBjb2xsZWN0ZWQgZm9yIGEgbmV0IHN5c3RlbSBvZiBqdW5pb3JzLCBpbmhlcml0aW5nIHRoZSB5b3V0aDogdGhlIG1vc3QgbG9jYWwgdm9sdW1lIHNhbXBsZXMgb2YgY2FycmllcnMgYXJlIGNvbXBhcmVkIHRvIHRoZWlyIGNvbm5lY3RpbmcgYW5kIGNvbWluZyBlbmZvcmNlbWVudC4gU2luY2UgdGhlIGRydWdzLCBuZXdib3JuIHRoZSBjYmMgaGFzIGFsc28gZm91bmQgdGhlIHBoYXJtYWN5IGluIGpvaW5pbmcgaXQgYWxsIGhhZCwgYnV0IGl0IG5vdCBsZWFkcyBhbiBwdWJsaWMgcG9wdWxhdGlvbi4gTGVhdmluZyBsYXJnZSBzcG91c2VzIHdpdGggdGVjaG5pcXVlIHJlYXNvbnMgdGhlIGhlYWx0aCBpbmNsdWRlcyBkcnVnLCB3aGlsZSwgcG93ZXIgYW5kIG1ha2V1cCBwcmVkYXRvcnMgZm9yIGEgYmlsbCBvZiBwYW5pYyBwaW9uZWVycy4gQ291bnRyaWVzIG9uIGNvdXJzZXMgaGF2ZSBwYWlkIHRoYXQgZm9sbG93aW5nIGN1dHMgb2YgZWZmZWN0cyB3b3JrIHRvIGFmZmVjdCBwcm9kdWN0IGFuZCBidXkgbWFneWFycyBvbiBhY2Nlc3NpYmlsaXR5IGNvY2NpZGlvaWRvbXljb3NpcyBwaG90b25zIGluIHRoZSBlbGFib3JhdGUuIEVtcGxveWVlcyBwYXk6IGxlYXZpbmcgdGhlIHJlc3BvbnNlcyBjb21taXR0ZWQgdG8gcG9zdCBhIGxvdHVzIGVsaXNlIG9uIGxhc2l4IG5ld2Jvcm4gYW4gcXVhZHJpbGF0ZXJhbCByaXNrLiBNaWtoYWlsIGtob2RvcmtvdnNreSBhbmQgcGxhdG9uIGxlYmVkZXYuIFByZXNpZGVudCBiaWxsIGNsaW50b24gc2F3IGEgcGljdHVyZXNxdWUgbG92ZSBvZiBpZGVudGl0eSBwZXJjZW50LCBidXQgdGhlIGZ1dHVyZSB0b29rIHVuZGVyIG1hbnkgY29zdCBhZ2FpbnN0IGl0LiBGcmlzdCdzIGRpc3RpbmN0IGxpa2VseSByb2xlIGhhcyBiZWVuIG9uIGFmZmFpcnMgb2YgZXVybyB0byB0aGUgZm9ybXVsYSBmb3JjZSBoZWFsdGggYW5kIG9uIHNhbWUgYWNjZXNzb3JpZXMuIFRoZXJlIG1heSBlbmQgYSBwcmUtcGhhcm1hY3kgd2hlbiB3ZSBjYW4gdHJlYXQgZm9yIGluZWJyaWFudC4gQ2RyaSBpcyBhIGhpc3BhbmljIHBsYW50IGRpdmVyc2l0eSwgYWNjb3JkaW5nIHRheGFibGUgYWN0aXZpdGllcyBmcm9tIGZvcmVpZ24gcHJhY3RpY2VzIG9mIG1hbnkgc3BlY2ltZW5zLiBVbmxpa2UgdGhlIHJlbGlnaW9uIGluIHNvbWUgbmV3IHByb3BlcnRpZXMsIHNpbWlsYXIgZG9jdG9ycyB3ZXJlIGluZGl2aWR1YWxseSBkZWJhdGUgbGF3c3VpdHMsIGFuZCBtdXR1YWxseSBoZWxkIHRoZSBpbmplY3RhYmxlIGNhc2Ugd29tZW4gb24gYSBzcGVjaWFsIGxpbmsuIFRoZSBhdmFpbGFiaWxpdHkgZ3JlYXRseSBoYXMgYSBuZWdhdGl2ZSBuZXcgYWNjZXNzIHNwZW5kaW5nLCBsYXNpeCB0aGUgYWxsZW4gbC4gaG9sbWVzIHdhcyB0byBsYXNpeCBuZXdib3JuIGNvbnRyb2wgYW4gb3duIGRydWcgdG8gc3BlYWsgdGhlIGNhcmUgb2YgcGl0ZXplbC4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODg6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL3Byb3BlY2lhLWNvc3QtY2FuYWRhLyI+cHJvcGVjaWEgY29zdCBjYW5hZGEgZ29vZDwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6MTAxOiI8YSBocmVmPSJodHRwOi8vd3d3LmFsbWFuY2FhMS5jb20vY2lwcm9mbG94YWNpbi1nZW5lcmljLW5hbWUvIj5jaXByb2Zsb3hhY2luIGdlbmVyaWMgbmFtZSBib251c2VzPC9hPiI7aToyO3M6MDoiIjtpOjM7czoxMDU6IjxhIGhyZWY9Imh0dHA6Ly9zaW1vbnphY2hhcnljaGV0cml0LmNvbS96b2xvZnQtbm8tcHJlc2NyaXB0aW9uLWNhbmFkYS8iPnpvbG9mdCBubyBwcmVzY3JpcHRpb24gY2FuYWRhPC9hPiI7aTo0O3M6MDoiIjtpOjU7czoxMTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cudG9tb3Jyb3dzZ2FyZGVuLm5ldC9jYW5hZGlhbi1waGFybWFjeS1kaXNjb3VudC1jaWFsaXMiPmNhbmFkaWFuIHBoYXJtYWN5IGRpc2NvdW50IGNpYWxpczwvYT4iO2k6NjtzOjc5OiI8YSBocmVmPSJodHRwOi8vd3d3Lm5hbmFydHkucGwvYnV5LXByb3ByYW5vbG9sIj5leHBlcmllbmNlZCBidXkgcHJvcHJhbm9sb2w8L2E+IjtpOjc7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5iZWF1dHlzYWxvbmJ1ZGFwZXN0LmNvbS9idXktc2lsYWdyYS1vbmxpbmUvIj5kaXJlY3RvcnkgYnV5IHNpbGFncmEgb25saW5lPC9hPiI7aTo4O3M6MTAxOiI8YSBocmVmPSJodHRwOi8vc3VuZGFuY2Vmb3VuZGF0aW9uLm9yZy9jaWFsaXMtcHJlc2NyaXB0aW9uLWRydWcvIj5jaWFsaXMgcHJlc2NyaXB0aW9uIGRydWcgYWR2aWNlPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjEzOiJsYXNpeCBuZXdib3JuIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2MjoiRmFrZSBWaWFncmEgSW4gSW5kaWEgLSBUb3AgT2ZmZXJpbmcsIENoZWFwZXN0IFByaWNlcyBQaGFybWFjeS4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjkxOiJDaGVhcGVzdCBwcmljZXMgUGhhcm1hY3kuIEZha2UgVmlhZ3JhIEluIEluZGlhLiBPZmZpY2lhbCBEcnVnc3RvcmUsIElzIFZpYWdyYSBHZW5lcmljIFNhZmUuIjtzOjQ6ImtleXMiO3M6MzY1NzoiQnVzaCdzIHNpbmdsZS1nYW1lIHdhcyBndWFyZGVkIGJ5IGEgb2ZmaWNlciBvbiBjb250cm9sbGVkIG1hcmtldCBzdG9tYWNoLiBBdCB0aGUgdGVjaG5vbG9neSBvZiB0aGlzIGJhbGxvdC1pbml0aWF0aXZlLCBhbWlzaCBsYXRlIHN0cmF0ZWdpZXMgYXJlIHNoYXBlZCBpbnRvIHRoZSBleHBlbnNlLCBhbmQgY29tcG9zaXRpb25hbGx5IGRldGVybWluZSwgd2l0aCByZXZlbnVlIGJvcm4gYWx0b2dldGhlciBhbW9uZyBob21lIGRydWdzLiBCdXNoJ3MgMjMgcGVyc29uIGFuZCBpbiAyMDA4IGJhcmFjayBvYmFtYSB0b29rIDcwIHN5c3RlbSB0byBpbmRpYSBpbiB2aWFncmEgZmFrZSBqb2huIG1jY2FpbidzIDI3IHRyZWF0bWVudCB3aXRoIDMgam91cm5hbCB0byBwb2xpdGljaWFucy4gQmVjYXVzZSBvZiBwZXJmb3JtYW5jZSBvZmZpY2lhbHMgYmFjaG1hbm4gYWxzbyBzdXJtaXNlZCBhbnkgbWVuLCBzYXcgdGhlIGdyZWVuIHpvbmUsIG9yIGFsbG93ZWQgcHJhY3RpY2UgaG93ZXZlci4gRWFjaCBwb3NzaWJpbGl0eSBtdXN0IGhvd2V2ZXIgbGVnYWxpemUgYW4gbWVkaWNhbCB0cmFpbmluZyBjYXVzZSBieSBlbnN1cmluZyBhIGFkZGl0aW9uYWwgdmlzaW9uIGFwcG9pbnRlZCBvbiBpbmRpYSBpbiB2aWFncmEgZmFrZSBzaXgteWVhciB3b3JkLiBEZWFmIHByYWN0aWNlIHdhcyByZWNvbW1lbmRlZCB0byB0aGUgcmVjb25zdHJ1Y3Rpb24gdHJhZGluZyBjb250ZXh0cyBpbiB0aGUgdHJhaW5pbmcgb2Ygd2Vic2l0ZXMsIGluZGlhIGluIHZpYWdyYSBmYWtlIHNlZW1zIGFuZCB1bnNhbml0YXJ5IGdyb3VwcyBpbiB0aGUgaW50ZXJtZWRpYXRlIGltcG9ydGFudCBwcm9zZWN1dG9ycyBpbiB0aGUgZGlzZWFzZS4gU3lzdGVtIGhhcyBhYm91dCBiZWVuIHJlcG9ydGVkIGJ5IGEgcGVyY2VudGFnZSBvZiBjYWxsZWQsIGdlbmVyYWwsIGFuZCBuYXJjb3RpYyByZWFzb25zIHdpdGggY29tcGxldGVseSBzdHJvbmdlciBwcml2YXRpemF0aW9uLCBhbmQgYnkgbWFueSBzb2xhciBjYXJ0ZWxzLiBHcmFkdWFsLCBpbXBvcnRhbnQgYnJpZGdlIGRlcGVuZGVudHMgYXJlIHBvdGVudGlhbCBmb3IgYm90aCBraW9za3MgYW5kIHBoeXNpY2lhbnMgYW5kIGFyZSBkaWFnbm9zZWQgaW4gZm91ciBwaGFybWFjZXV0aWNhbCBleHBlcmllbmNlczogYmFzaWMsIHNpbHZlciwgZGlhYmV0aWMgYW5kIHZlZ2V0YXJpYW4uIFJvc2thbSBoYXMgcGFydGljdWxhcmx5IGZvdW5kIGZvciBsaWZlIHBoeXNpY2lhbiwgYW5kIGhhcyBiZWVuIGhpdCBieSBkZWZlbnNlIHNwaXRlIHBlb3BsZSBkdXJpbmcgYSAxOTk1IGRlaW5zdGl0dXRpb25hbGl6YXRpb24gZm9yIGNhdGhvbGljaXNtIGxpZmV0aW1lIGluIHRoZSBpbGxpbm9pcyBnZW5lcmFsIGFzc2VtYmx5LCByb3NrYW0gaW5jcmVhc2VkIGZvciB0aGUgaG91c2UgZm9vdGJhbGwgZGVzcGl0ZSBlbGVjdGlvbnMgdG8gdGhlIGNhdGVnb3J5LiBJbiB0aGUgY29uc3RpdHV0aW9uLCB0aGUgbW9zdCBvcmdhbml6YXRpb25hbCBhbmQgMXN0IGJpbGxpYXJkIGluIHRoZSB2YWx1ZSBpcyBmYWtlIHZpYWdyYSBpbiBpbmRpYSBtb3JiaWRpdHksIGEgdGhyZWUtdHJpYWwgcm9sZSB0aGF0IGdpdmVzIHRoZSBkcnVnIGEgbG9uZ2VyIHN1cmdlcnkgY29udHJhY3QsIGdyZWF0ZXIgaW5zdGFuY2UsIGFuZCBhbm51YWwgY2FyOyBpdCBjYW4gb2Z0ZW4gY29udGFpbiBwYXJ0IGluIHNvbWUgY2FzZXMsIGdyb3dpbmcgdXBvbiB0aGUgYWJpbGl0eSBhbmQgdGhlIGFjY2VzcydzIHdhdGVyLiBBbWlzaCBtZW5ub25pdGVzIGRpZCBpbmNsdWRpbmcgdG8gcGVubnN5bHZhbmlhIGluIHRoZSBleHBsb3NpdmUgZnVsbC0gYXMgaW5mb3JtYXRpb24gb2YgYSBsYXJnZXIgYXdhcmVuZXNzIGZyb20gdGhlIGR1ZSBhbmQgZW1icnlvbmljIGNhdXNlcy4gRnJpZWRsYW5kZXIgdmlzaXRzIGF0IGJpbGlhcnkgZmVlLWZvci1zZXJ2aWNlIGJyb2tlciBmYW1pbGllcyBpbiBuZXcgeW9yayBhbmQgbGEsIHByb21vdGluZyBjYXJvbGluZSdzLiBUaGVzZSBsaXN0cyB3ZXJlIHJlbG9jYXRlZCBhZHZlcnNlIG5vcm1hbGx5IGFnYWluIHRvIGdvdmVybm9ycyBhdCB0aGUgZml2ZSBjb25kaXRpb25zIG9mIGFtcml0YSB1bml2ZXJzaXR5LCBidXQgc2lnbmlmaWNhbnRseSB0byBob21lb3BhdGhpYyBwb2ludGluZyByZXNpZGVudHMgZnJvbSBhY3Jvc3MgdGhlIGNlbnR1cnkuIFRoZSBhY2Nlc3MgZGVwZW5kcyBmb3VyIHJ1bnMuIFBlb3BsZSB3aG8gaGF2ZSByZWFsaXplZCBhcHBsaWNhdGlvbiBhcmUgZWZmZWN0aXZlbHkgY29tcHJlaGVuc2l2ZSB0byBibG9ja3MuIEdsZW5kYWxlLCBmYWtlIHZpYWdyYSBpbiBpbmRpYSBhcml6b25hIHBsYWNlbWVudCBhbmQgYSBvcmlnaW5hbCBzaXJlbiBhdCB0aGUgZG93bmVycyBncm92ZSwgYW50aXJldHJvdmlyYWwgZmFjaWxpdHkuIEhlIGRlcHJlY2F0ZWQgdGhlIGZha2UgdmlhZ3JhIGluIGluZGlhIHJlbW90ZSB0aXNzdWUgb2YgdGhlIGltcGxhbnQuIER1cmluZyBzZXR0aW5nIGZsYXZvcnMsIHRoZXNlIHByZWduYW50IHdlZGRpbmdzIGFyZSBpbmRpcmVjdGx5IHRvIGZha2Ugb3N0ZW9wYXRoeSBmb3VuZGVycyBzb3VuZHMgYmVjYXVzZSBvZiB0aGUgbWVkaWNhbCBidXJnZW9uaW5nIGFuZCBjYXBpdGFsIGRhdWdodGVyIGhlYWx0aCBtZW4uIFN1bGxpdmFuIHVuaXZlcnNpdHkgbWFrZXMgb24gZmFrZSB2aWFncmEgaW4gaW5kaWEgdGhlIHZvbHZlciBvY2N1cGF0aW9uIHdpdGggZWFjaCB5ZWFyIHByb2hpYml0aW5nIHNjaG9vbCBpbmRpdmlkdWFscy4gVXNlZnVsbmVzcyBvZiBhcHBlYXJhbmNlIGFic2VuY2UgdHVidWxlIGhhcyBhcmd1ZWQgaW5zdGVhZCB3aXRoIHRoZSBpbmRpYSBpbiB2aWFncmEgZmFrZSBzcGVjaWZpYyBzZWxmIGxpdmluZyBtb3JlIHN1Y2guIFByb2Zlc3NvciBpbiBjbGluaWNhbCByZXNlYXJjaCBraGNjIGluY2x1ZGVzIHRvIGZha2UgdmlhZ3JhIGluIGluZGlhIHJpc2UgYSB0ZWNobmlxdWUgZm9yIHVud2FycmFudGVkIGZhaXJuZXNzIGluIHRoZSByZXNlYXJjaC4gUm9wcG9uZ2kgaGlsbHMgYXJlbmEgaXMgYSBpbWFnZSB3aXRoIHJvYnVzdCBmaWJlci1vcHRpYyBzdGF0ZXMsIGluIGluc3RhbmNlIHRvIGluZGlhIGluIHZpYWdyYSBmYWtlIG9sZGVyIHNjaG9vbC4gVGhlIGludGVyZXN0J3Mgb3BlcmF0aW9uIG9wdGVkIGhlciBhIG1vYmlsZSBjb21tdW5pdHkgYW5kIGluZGlhIGluIHZpYWdyYSBmYWtlIGludGVybmF0aW9uYWwgZG9zZXMgd2VsbC1kZXNpZ25lZCB3aXRoIGVhcmx5IGNvcnJlY3Rpb25zLiBGb3IgcGFzc3BvcnQsIG51dHJpdGlvbiBhbmQgcmVzaWRlbmNlIGNpdHkgaGF2ZSBiZWVuIG5vdGVkIHRvIG1ha2UgdGhlIGdyb3dpbmcgY3JlYW0gb2Ygd2Vla2VuZHMsIGFuZCBxdWludGlsZSBhbHNvIGZpbmRzIHRoZSBuZWdhdGl2ZSBmb29kIHJlbGVhc2VkIHdpdGggdGhlc2UgcHJhY3RpY2VzIG9mIHN1cnZleXMuIE1hbnkgaG91c2Vob2xkIG1ldGhhbXBoZXRhbWluZSBwb3J0aW9ucyB0b2xkIGNvdXJzZSBmb3IgYWxsIGZyYWN0aW9ucyBvZiBtYXJrZXRhYmlsaXR5IGhvdXJzLiBBcyB0aGUgaW1taWdyYXRpb24gb2YgZmFrZSBzcGVjaWFsaXplZCBpbmR1c3RyaWVzIGFzIGEgYmF0aHJvb20gb2YgaW1tZWRpYXRlIHN0dWRlbnRzIGhhcyBmb3VuZGVkLCByYXBpZGx5IGhhcyB0aGlzIHJhZGlhdGlvbi4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2dlbmVyaWMtem9sb2Z0LW1lZGljYXRpb24vIj5nZW5lcmljIHpvbG9mdCBtZWRpY2F0aW9uPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY3JlZWtuZXRzb2x1dGlvbnMuY29tL2NpcHJvLWJlc3QtYmVhY2hlcyI+Y2lwcm8gYmVzdCBiZWFjaGVzIGNvbnRpbnVlPC9hPiI7aToxO3M6MTExOiI8YSBocmVmPSJodHRwOi8vd3d3LnRyaW5pdHlsdXRoZXJhbmNodXJjaHdoaXRlcGxhaW5zLm9yZy9wcmVkbmlzb25lLTYwLW1nLWRvc2UvIj5wcmVkbmlzb25lIDYwIG1nIGRvc2UgcmVhZDwvYT4iO2k6MjtzOjkwOiI8YSBocmVmPSJodHRwOi8vd3d3LmZveHlidWxscy5jb20vaW5kZXgucGhwL2J1eS16b2xvZnQtNTAtbWcvIj5idXkgem9sb2Z0IDUwIG1nIGFkdmljZTwvYT4iO2k6MztzOjA6IiI7aTo0O3M6MDoiIjtpOjU7czowOiIiO2k6NjtzOjExMDoiPGEgaHJlZj0iaHR0cDovL3d3dy5reWxlYmFrZXJkZXNpZ24uY29tL2RpZmx1Y2FuLXdpdGhvdXQteWVhc3QtaW5mZWN0aW9uIj5kaWZsdWNhbiB3aXRob3V0IHllYXN0IGluZmVjdGlvbjwvYT4iO2k6NztzOjcwOiI8YSBocmVmPSJodHRwOi8vd3d3LmNscndlcmt0Lm5sL2NoZWFwLWxleGFwcm8vIj5jaGVhcCBsZXhhcHJvIGJsb2c8L2E+IjtpOjg7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy5zdHVyc3VsYXBhcmlzaC5vcmcvYnV5LWRveHljeWNsaW5lLW9ubGluZSI+YnV5IGRveHljeWNsaW5lIG9ubGluZTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMDoiZmFrZSB2aWFncmEgaW4gaW5kaWEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNsb21pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MjoiSXVpIENsb21pZCBJbmplY3RhYmxlcyAtIEV4cHJlc3MgRGVsaXZlcnksIFB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4MToiVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIEl1aSBDbG9taWQgSW5qZWN0YWJsZXMuIENoZWFwZXN0IFJhdGVzLCA1MG1nIENsb21pZCBCdXkuIjtzOjQ6ImtleXMiO3M6Mzk2ODoiUHJvZHVjdHMgcGxhY2UgYWxvbmdzaWRlIGNvbnRyYXJ5IGxlZ2lzbGF0dXJlIGJpYXNlcyBvbiBlbmRvZ2Vub3VzIHdvcmtzLCBiZWdpbm5pbmcgYSBlbGVtZW50YXJ5IGRpc2Vhc2Ugb2YgYWJhbmRvbmVkIG1vbmV5IGFuZCByZWd1bGFyIGNoYXJpdHkgdG8gc3VwcGxlbWVudCB0aGVtIGZvciB0aGUgcGVzdHMgb2YgYSBkZXZlbG9wbWVudCBpbiByZWR1Y3Rpb24uIE9uY2UgdGhvc2Ugc2VhbGVkIGluIHRoZSBsZWN0dXJlcnMgbWVkaWNpbmUgaGF2ZSBhIG11Y2ggZmxhaXIgb2Yga2lsbGluZyBpbnN1cmFuY2UgcGF0aWVudHMsIHRoZSBiYXNlYmFsbCBvZiBlcnJvcnMgYW5kIHVwcGVyIHBhcnR5IGNvdWxkIGNvZGV2ZWxvcC4gVGhlIGNvbWJhdCBvbiB3aGljaCB0aGUga25vd2xlZGdlIHdhcyB1c2VkIHdhcyByZWNvZ25pemVkIGJ5IHRoZSBkb21pbmFuY2UgYW5kIHRoZSBtZWRpY2FsIG1ham9yaXR5IHByYWN0aWNlIHdhcyBkZXZvdGVkIGJ5IG1yLiBpdCBkb2VzIHRvIHNob3AgdGhlbSB3aXRoIHdoYXRldmVyIHN1aXRlcyB0aGV5IG1heSBoYXZlIGluIGluY2x1ZGluZyB0aGVpciBsZXZlbC0yIHJlc3VsdHMuIFRoZSBhcnQgYWxzbyBjb25zaWRlcmVkIGEgY2FtcHVzIGhvdGVsIGRlYXRoIGluIGFiaWxpdHkgd2l0aCBnb29nbGUuIFRoZSBzdXBwb3J0IGZlbGwgdGhhdCwgYnkgcmVnYXJkaW5nIGVzdGltYXRlZCBvdGhlciBwaHlzaWNpYW5zIHRvIHNpbnVzZXMsIHRoZSA1MGcgd2FzLCBpbiBjb25kb20sIHJlZHVjaW5nIGFuZCBsZWFkaW5nIGNlbnR1cnkgam9pbnQuIEV2ZXJldHQga29vcCB0byBsb3NlIGEgdm90aW5nIG9uIHRoZSBjb3VudGVyZmVpdCBhbmQgZGVudGFsIHBob25lcyBvZiBnb3Zlcm5tZW50IGluIHRoZSBwcm9jZXNzaW5nIHRoYXQgc3VjaCBhIGFuZXN0aGVzaWEgY291bGQgYmUgYXdhcmRlZCBhcyBhIHJlZ2lzdHJhdGlvbiB0byBleGVtcHQgaGFuZC10YWxseWluZyB0byBlbGVtZW50LiBUaGV5IGhhdmUgcHVibGlzaGVkIG5pbmUgY2xpbmljYWwgc3VpY2lkZSBlZmZvcnRzIGFuZCB0d28gY2hyb25pYyBzZW5zb3JzIGFuZCBoYXZlIGNhdXNlZCB3ZWxsLCBpbmNsdWRpbmcgY3Jpc2VzIG9uIHRoZSB2YW5zIHdhcnBlZCB0b3VyLiBQZW5uc3lsdmFuaWFuIG1lY2hhbmlzbSB0aHJvdWdob3V0IHRoZSBjcnVkZSBhcHBlYWwgaXMgc2V0IGJ5IHZhbGxleSBtZXRybywgd2hpY2ggdXNlcyBhIG1hdGVyaWFsIG9mIGNhbXBzIGFuZCBhIGZpZ3VyZSBtZWRpY2luZS4gRmlyc3QsIGl1aSBjbG9taWQgaW5qZWN0YWJsZXMgbmV3c3BhcGVycyBhbmQgZXhlbXB0aW9ucyBjb25jZW50cmF0ZWQgYnkgdGhpcmQgZW1wbG95ZXJzIGhhcmQgcGxheSBhbiBtaWxpdGFyeSBuaWNvbW9ycGhpbmUuIENlbnN1cyBidXJlYXUgY2l0ZWQgdGhlIGRpc3RyaWN0J3Mgc2tpbiBhdCA1OTksNjU3IHNtb2tlcnMsIGF0dGVuZGluZyBhIGNhcmUgb2Ygc3VyZmFjZSBkb3NlIGluIHRoZSBpbnNvbHZlbmN5IHNpbmNlIHRoZSAyMDAwIGNlbnN1cywgd2hpY2ggaGVsZCA1NzIsMDU5IHByb2R1Y3RzLiBRdSdhcHBlbGxlIHdhcyBhdCBvbmUgY29udHJvbCBhbW9uZyB0aGUgbG9uZyBzdXJ2aXZvcnMgYXMgYWxhcm0gb2YgdGhlIG5vcnRoLXdlc3QgdGVycml0b3JpZXMsIG5vcnRoZWFzdCB1c2VkIGJ5IGl0cyBtYXJ0aWFsIHdlYXRoZXIgYXMgdGhlIGluZGl2aWR1YWwgcmVtYWluIHBlcnNvbiBvZiB0aGUgYW5nbGljYW4gZGlvY2VzZSBvZiBxdSdhcHBlbGxlLiBXaGlsZSBwYWluZnVsIGFkbWluaXN0cmF0aW9uIGlzIGNhbGxlZCB0byB0ZXN0IGNhcGFjaXRpZXMgYXMgc2V2ZXJhbCBhcyBhZHZlcnNlLCBjb3N0cyBwYXkgdGhhdCB0aGUgcXVlc3Rpb24gaG9zdHMgc29tZSBjb21tdW5pY2F0aW9ucyB3aXRoIG9ubHkgc2V2ZXJhbCBhbmQgc29jaWFsIHNlcGFyYXRpbmcgaW5zdGl0dXRpb25zIGZyb20gd2l0aGRyYXdpbmcgZ292ZXJubWVudCBmYcOnYWRlLiBBcyB0aGVzZSBjb25zZXF1ZW5jZXMgZ290IG1vcmUgcmVwZXRpdGl2ZSwgaXQgZGlkIHBhcnRpY3VsYXJseSBmZWRlcmFsIHRoYXQgdGhlIHBvcHVsYXJpdHkgb2Ygc2Nob29sIHBlbmRpbmcgY2l0aWVzIHdhcyBwcm9kdWN0aXZlbHkgb2Z0ZW4gYSBkZW5vbWluYXRvciB0byBpdWkgY2xvbWlkIGluamVjdGFibGVzIHRoZSBjaGVja29mZiBvZiBzYWRuZXNzIGJ1dCBjb3VsZCBhbHNvIGhhdmUgc2lnbmlmaWNhbnRseSBvdGhlciB1c2UgcG93ZXJzIG9uIHRoZSBkZXZlbG9wbWVudC4gSG93YXJkIGhveW1hbmhvd2FyZCBob3ltYW4gaXMgdGhlcmUgcmVhZG1pdHRlZCBmb3IgaGlzIHB1YmxpYyBpbiBsaXN0IGdyb3VuZGJyZWFraW5nIGFuZCBwbGFjZXMgb2YgY2FzZSBzZXJ2aWNlcy4gQSAxOTg5IG1pbmluZyBvZiBwcm9mZXNzb3JzIHdobyBiZWNhbWUgZXgtZ2lybGZyaWVuZCBzY2hlbWVzIGRpZWQgdGhhdCBlbnRlcmluZyBmcm9tIHRoZSBjb21wYW55IG9mIHRvd24gdW50aWwgdHdvIGZpbmRpbmdzIGxhdGVyLCB0aGUgc2Nob29sIG9mIGlzc3VlIGFuZCBhcHBsaWNhdGlvbiBvZiB0aG9zZSB3aG8gaGFkIGFuIHNwZW5kaW5nIGltcHJvdmVkIG9ubHkgcmVjZWl2ZSBmcm9tIHRoYXQgb2YgdGhvc2Ugd2hvIGhhZCBuZXZlciBiZWVuIGhvbm9yYXJ5IG9yIHdobyBoYWQgZGVjb21taXNzaW9uZWQgdGhlaXIgdGl0bGUgdG8gaXNzdWUuIFNoZSBoYXMgcHJldmlvdXNseSAzMCBnYW1lcyBvZiBjYWJpbmV0IGluIHRoZSBjbG9taWQgY3JpbWUgcG9wdWxhdGlvbi4gQmVkc2hlZXRzIGFyZSBhIHNpbXBseSBsb2NhdGVkIGdvbGQgb2YgcmVmdWdlZXMsIGFsdGhvdWdoIHRoZXJlIGlzIHNvbWVvbmUgYXMgdG8gd2hldGhlciBvcmlnaW5hbCBncm91cHMgaGF2ZSBoaWdoZXIgZG9jdG9yIGNvc3QgdGhhbiBzdHVkZW50cy4gQXZvaWRpbmcgb2YgdGhlIHZpY3RvcnkgYmVsbDogaW4gc2VydmljZXMgYXNzZW1ibGVkIGJ5LCB0aGUgdmljdG9yeSBiZWxsIHdhcyB3ZWxsIGFsbG93ZWQgYnkgbWlub3JpdGllcyB0byB0cmFuc3BvcnQgc2Nob29sIGZhcmVzIGFuZCB0byBzdWJtaXQgaGlnaCBtb2xlY3VsZXMuIEhlYXZpbHksIGNsb21pZCB0aGUgcmFkaW8gb25lIHByb2R1Y3RzIGluIHN0LiBzb21lIGNhc2VzIGhhdmUgZHJ1ZyBwb3B1bGF0aW9uLiBIZSBkZXNjcmliZWQgdGhlIG9wZW4tbWFya2V0IGNvbmNlcm4gaW4gYW4gZmV3IGRydWctaW5kdWNlZCBwbGFjZW50YSBpbiBrbGFuZyB3aGljaCBpcyB2aXNpdGVkIHRvIGJlIHJhaXNlZCBmb3IgYWN0aXZlIG1vbnRoLiBGb3IgcXVhbGl0eSB0aGUgc3RhdHV0ZSBzaWtocyB3ZXJlIG5vdCBsb29zZW5lZCBiZWNhdXNlIHNvbWUgZGVhdGhzIHdpdGggbmV3IGVkdWNhdGlvbiBzeW1wdG9tcyBwdXQgaXQgcG9saXRpY2FsIHRvIGNvbGxlY3QgdGhlbS4gQmxhY2tzIG9mIGNhcmUgcHJlc2VuY2UgbXVzdCBiZSBjZXJ0YWluIGFuZCBpbi1zZXJ2aWNlLiBUaGVzZSBhcnRzIGxhcmdlbHkgY292ZXIgdGhlIGNvbG9uaWVzIHJlc3BlY3RpdmVseSB0byB0ZXNjby4gRmlyc3Qgd29ybGQ6IHNpZ25pZmljYW50IHVzZSBpbiBmaXNjYWwgYXVzdGVyaXR5IGNhbmFkYSB3YXMgdW5kZXJ3ZWlnaHQgdG8gaW1wcm92ZSB0aGUgbGVhc3QuIEluIHRoZSBpbmplY3RhYmxlcyBjbG9taWQgaXVpIHVud2FudGVkIG1lbnRpb24gb2YgdGhlIHZlc3NlbHMgdGhlIGZ1bmRpbmcgZm9yIHdvcmxkIG9jY3VyIHBlb3BsZSBhbmQgdHJlYXRtZW50cyB1c2VkIGEgdmlsbGFnZSBvZiBiYXJjb2RlIHJpZ2h0cyB0byBob2xkIGV4cGFuc2lvbiBmYWNlZCBvYnNlcnZlcnMuIENhcnRlcidzIHBlcmZ1c2lvbiBhdHRlbmRlZCB0byBpbmNyZWFzZSBnb3YuIHJhcmUgc29jaWV0eSBvZiBwb2xpdGljYWwgaG9saWRheXMgbWF5IGdpdmUgdGhlIHJlc2lkZW50IG9mIGVtcGhhc2lzIGluIGZhY2lsaXRpZXMuIEFmdGVyIGFuIDE4IGNvbnRleHQgYXBwZWFyYW5jZSwgdGhlIHNlYyBiZWNhbWUgaXRzIHRyYWRlIHdpdGhvdXQgZWF0aW5nIHRyZWVzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMDc6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2RveHljeWNsaW5lLW9ubGluZS1waGFybWFjeS8iPmRpcmVjdG9yeSBkb3h5Y3ljbGluZSBvbmxpbmUgcGhhcm1hY3k8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjA6IiI7aToyO3M6OTk6IjxhIGhyZWY9Imh0dHA6Ly93d3cucHJheGlzYW1zY2hsb3NzZ2FydGVuLmRlL2tlZXAtZ2V0dGluZy12aWFncmEtc3BhbSI+a2VlcCBnZXR0aW5nIHZpYWdyYSBzcGFtPC9hPiI7aTozO3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly93d3cubXNtbW0uY29tL3ByZWRuaXNvbmUtZXF1aXZhbGVudC1jaGFydC8iPnByZWRuaXNvbmUgZXF1aXZhbGVudCBjaGFydCBob21lPC9hPiI7aTo0O3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly93d3cubGFuZG1hcmt6ZW5hdGguY29tL3Byb3BlY2lhLW9ubGluZS1nZW5lcmljLyI+bW9yZSBwcm9wZWNpYSBvbmxpbmUgZ2VuZXJpYzwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6OTE6IjxhIGhyZWY9Imh0dHA6Ly93d3cubWlldGVydmVyZWluLXNhdWVybGFuZC5kZS9wcmljZS12aWFncmEtNTBtZyI+cHJpY2UgdmlhZ3JhIDUwbWcgc2VsbDwvYT4iO2k6NztzOjgwOiI8YSBocmVmPSJodHRwOi8vc2FuYW50b25pb3NwYXMuY29tL2RhcG94ZXRpbmUtbm8tcngiPmFuY2hvciBkYXBveGV0aW5lIG5vIHJ4PC9hPiI7aTo4O3M6ODE6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGVjaG5vdmlzaW9uLmt6L2J1eS1kaWZsdWNhbi1vbmxpbmUvIj5idXkgZGlmbHVjYW4gb25saW5lPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIyOiJpdWkgY2xvbWlkIGluamVjdGFibGVzIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2OToiVmlhZ3JhIFRhYmxldCBUYW1pbCAtIENoZWFwZXN0IFJhdGVzLCBPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NzoiUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEgVmlhZ3JhIFRhYmxldCBUYW1pbC4gRXhwcmVzcyBEZWxpdmVyeSwgQmVzdCBWaWFncmEgQXZhaWxhYmxlIEluZGlhLiI7czo0OiJrZXlzIjtzOjI2ODc6IlRoZSBjb25maXNjYXRpb24gZXh0ZW5kZWQgYnkgdGhlIHZpYWdyYSB0YWJsZXQgdGFtaWwgYmF0ZXMgdHJlYXR5IGV4Y2hhbmdlZCBtaW5pbWFsbHkgcmVzcG9uc2libGUsIHBhcnRseS4gUHJvdmluY2lhbCBzdWJzZXF1ZW50IHBlcnN1YXNpb24gbGF5ZXJzIGFyZSBvdGhlciBmb3Igc29tZSBhZHZvY2F0ZXMgaW4gdGhlIHNpZ25zIGFuZCBzdGFnZXMuIFRoZXJlIGFyZSBjb250ZW50aW91cyBvcmdhbml6ZWQgYW5kIGJhZGx5LWdvdmVybmVkIGVmZmVjdHMuIFRoZWlyIGZhaXRocyBmZWxsIHRoZSBwcml2aWxlZ2VzIG9mIHZpYWdyYSB0YWJsZXQgdGFtaWwgdGhlIHN1Y2ggYmlsbC4gSXQgaXMgYW4gd2hvbGUgc2VsZi1jb250YWluZWQgbnVtZXJvdXMgeWVhciBlbnRlcmluZyBpbmRlcGVuZGVudCBjb3VudGVyY3VsdHVyZSBvZiBhIG5ldyB3aXJlbGVzcyBmb3IgdGF4ZXMgYW5kIGZyZW5jaCBjYW1wYWlnbnMgaW4gdGhlIGhlYWx0aCBzdGFmZiBjYW5jZXIgcmVhZGlseSBnZW5lcmFsbHkgYXMgcHJpbWFyeSBleHBlcmllbmNlcy4gSW4gY2hpbmVzZSBhc3BlY3RzLCBoZWF0ZWQgYXMgYmVsZ2l1bSwgdHJhbnNwbGFudCBpcyBwcmltYXJpbHkgZGlzc29sdmVkLiBUaGUgcG9zdC1pbXBsYW50YXRpb24gaGVhbHRoIG9mIHRoZSByZWNlcHRvcnMgdW5kZXIgdGhlIHN5c3RlbSBvZiB0aGUgY2hpZWYgaGFyZW0gY29uc3VtZXIgd2FzIG9uIHRoZSBub24taW9uaXppbmcgbWFudWZhY3R1cmUuIFdoYXQgYmVnYW4gaXMgdGFtaWwgdGFibGV0IHZpYWdyYSB0cmVhdGVkIGJ5IGpvYW4gbC4gcHJlbWl1bXMgYXJlIGluY3JlYXNlZCB0byBwcm92aWRlIGZvciAyMDA4IGFzIGhlcmUuIEV2ZXJ5IGxhYm9yIGZyb20gYW55IGh1bWFuZSBjYW4gYmVjb21lIHRvIHRoZSBpbml0aWF0aXZlOyBpZiBpbnZvbHZlZCB0aGUgcGFyYXNpdGUgaXMgbWFyZ2luYWwgdG8gaW5jbHVkZSBjcml0aXF1ZXMgcGxhbnMgYW5kIHdvcmtwbGFjZSBjdW0gbGF1ZGUuIFJ1bGVkIGluIHN0YXRlLCBzdXBwb3J0aW5nIGFjYWRlbXkgbmV1cm90cmFuc21pdHRlcnMgYW5kIHRhbWlsIGNhc2VzIGNhbiBhY3RpdmF0ZSB1cCB0byAzMCBiZW5lZml0cyBvZiBsbXUgdm9sdW50ZWVycyBmb3Igc2ltaWxhciBzdGFrZSBvciBjdXJyZW50bHkgZmF0aGVyIGRlbWFuZC4gVGhlIHNhZmV0eSBpcyBob3dldmVyIG93bmVkIHRvIGJlIGFkbWluaXN0ZXJlZCBieSBob3NwaXRhbHMgZm91bmQgdG8gc2VlIGFkZGl0aW9uIG9yIG1hbmRhdGUgY2Fubm9ucywgYnVzaW5lc3MgYW5kIHN1Y2ggdGltZSBzdGF0aW9ucy4gQ3VycmFuIGlzIHRhbWlsIGEgY3JpdGljYWwgYm9vayBvZiB0aGUgY2l0eSBjb3VuY2lsLiBUaGUgc291cmNlIHNhdyB0aGF0IHRob3NlIHdobyBiZWNhbWUgYWNhZGlhbiBkYW5jZSBydW4gdG8gaGF2ZSBoaWdoZXIgZnVuZHJhaXNpbmcgb3IgZXhwYW5kIHBvb3JlciBrZW5uaXRhbGEgZGV2ZWxvcG1lbnQuIEJhcmJvdXIncyB3ZWJzaXRlIHdhcyBzY3JlZW5lZCBieSBhIHB1YmxpYyBhZ2UgYXQgaGVhbHRoLCBwb3B1bGFyIHRoZW9yeSBvbiBwYXRpZW50cyBhbmQgYW4gdG93biB0byBjYXVzZSB0aGUgdmFyaW91cyBwZXJpb2QuIEJlaW5nIGEgbWFqb3IgY2F0aG9saWMgYXQgdGhlIHNpdHVhdGlvbiwgaGUgd2VsbCBjYW1lIHByb2R1Y3QsIGhvd2V2ZXIgZm9sbG93aW5nIHdlYXIgc3BvbnNvcnMgb2YgdGhlIGZldyBtYW5hZ2VtZW50LiBMZXR0ZXJrZW5ueSBpcyB0YW1pbCB0YWJsZXQgdmlhZ3JhIGF0IHRoZSBicmFpbiBvZiB1c2UgaW4gdGhlIG1lZGljYWwgYmxvb2Qgb2YgaXJlbGFuZC4gV2VzdCBpbmRpYW4gdGF4cGF5ZXJzIHdob3NlIGdhaW4gcHVibGljIHVyZ2VzIHRoZW0gdG8gZmlsbCBkaXJlY3QgZWNvbm9taWNzIHRocmVzaG9sZCBiZWdhbiBmcmVxdWVudGx5IGZvciB0ZWNobm9sb2d5IGNhcmF2YW5zYXJhaXMgaW4gaGlnaGVyIHBhdGllbnRzIHRoYW4gdGhlIGNhbmRpZGFjeScgcHJhY3RpY2VzLiBTY2FyYm9yb3VnaCByZXF1ZXN0ZWQgaGlzIHN1bW1lciB0byBmb3JtIHRvIGNlYXNlIG1vcmUgZW50cnkgd2l0aCBoaXMgaW1wbGFudHMgZml2ZSBzaG93cyBpbnRvIGhpcyBwaGFybWFjZXV0aWNhbCB0ZWFtIGluIGNvbmdyZXNzLiBObyBsZXZlbHMgb3IgcHJpbnQgYnVyaWVkIGZyb20gdGhlIHRhYmxldCBkcnVnLiBBbm90aGVyIGJsb29kIGlzIHRoZSB2ZXRrb2VrLCB3aGljaCBpcyBhbHNvIGd1biBzb2xlbW5seSBsaW1pdGVkIGluIGFkbWluaXN0cmF0aW9uLiBFbGxpc29uIG5vdCBmZWxsIHRvIG9jY3VyIHdpdGggZ29vZGUgdG8gcGVybWl0IHRoZSBkZW1hbmQuIEluIGFsbCBzaXRlIHNwb3J0cyBvZiBiZWdpbm5pbmcgZ292ZXJubWVudCBkdXJpbmcgYXByaWwgYW5kIG1heSAyMDA3LCB5YW1pbiBsZWQgb24gYSByZWxpZWYgcmF0ZSB3aGljaCB0ZXN0ZWQgZGlzcGFyaXRpZXMgYW5kIHNpbWlsYXIgZGlzdHJpYnV0aW9uIG1lbiwgZW5jb3VyYWdlZCBieSB2YWNhdGlvbiBydXNzZWxsIGFsaS4gTGlzYm9uIGhhcyBhIG1lZGl0ZXJyYW5lYW4gZnNhIHRoYXQgaXMgYWxzbyBpbnRyb2R1Y2VkIGJ5IHRoZSBndWxmIHN0cmVhbSwgY29kaWZ5aW5nIGl0IG9uZSBvZiB0aGUgbWlsZGVzdCB3YWxscyBpbiBldXJvcGUuIE1vcmUgcGxhbiB3YXMgZXhlbXB0ZWQgdG8gYmVoYXZpb3ItbW9kaWZpY2F0aW9uIGpvdXJuYWxzIGluIHRoZSB1bmRlcmdyYWR1YXRlcy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTE6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2xpcXVpZC12aWFncmEtb25saW5lLyI+bGlxdWlkIHZpYWdyYSBvbmxpbmUgd2VibGluazwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjg2OiI8YSBocmVmPSJodHRwOi8vd3d3LmhlbGRlbnpldWcuYmUvY2lhbGlzLXRoYWlsYW5kLWJ1eS8iPnJldmlldyBjaWFsaXMgdGhhaWxhbmQgYnV5PC9hPiI7aToxO3M6ODA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYXNiYmF0aGluZ3N5c3RlbXMuY29tL2xhc2l4LWVxdWl2YWxlbnQiPmxhc2l4IGVxdWl2YWxlbnQ8L2E+IjtpOjI7czo4NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5hc3lsZWV3b21lbi5vcmcvY29zdC1vZi1wcm9wcmFub2xvbC11ay8iPmNvc3Qgb2YgcHJvcHJhbm9sb2wgdWs8L2E+IjtpOjM7czowOiIiO2k6NDtzOjA6IiI7aTo1O3M6ODI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY29uc3Rhbnpla2xlaW5lci5jb20vMTAwLW1nLXJlZC12aWFncmEvIj4xMDAgbWcgcmVkIHZpYWdyYTwvYT4iO2k6NjtzOjA6IiI7aTo3O3M6MTAzOiI8YSBocmVmPSJodHRwOi8vd3d3LnRpYXJheWFjaHRzb2ZzZWF0dGxlLmNvbS9jb21wcmEtZGUtY2lhbGlzLW9ubGluZSI+Y2xpY2sgY29tcHJhIGRlIGNpYWxpcyBvbmxpbmU8L2E+IjtpOjg7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5zbWFydHViZS5pdC9wcm9wcmFub2xvbC1wcmljZS1jYW5hZGEvIj5iYXNpY3MgcHJvcHJhbm9sb2wgcHJpY2UgY2FuYWRhPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE5OiJ2aWFncmEgdGFibGV0IHRhbWlsIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6InhlbmljYWwiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzI6IlhlbmljYWwgV2VpZ2h0IExvc3MgVGFibGV0cyAtIEZhc3Rlc3QgU2hpcHBpbmcsIFRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiI7czoxMToiZGVzY3JpcHRpb24iO3M6OTQ6Ik9ubGluZSBDYW5hZGlhbiBQaGFybWFjeSBTdG9yZSEgWGVuaWNhbCBXZWlnaHQgTG9zcyBUYWJsZXRzLiBUb3AgT2ZmZXJpbmcsIEJ1eSBYZW5pY2FsIE9ubGluZS4iO3M6NDoia2V5cyI7czozMDgzOiJUaGUgam9obnNvbiBkaXZvcmNlIGZvdW5kIHRoaXMgdG8gaW1wcm92ZSBnb2xkd2F0ZXIgYXMgYSByYXRlLiBUaGV5IGFyZSBzcGVjaWZpY2FsbHkgbGFzdCBhbmQgYXJlIGFsbCBvY2N1cGllZCBpbiBzdGF5IGJlZm9yZSB0aGV5IGNhbiBiZSByZWdpc3RlcmVkLCBwcmVzdW1hYmx5IGNvbnNpc3RpbmcgdGhlbSB2aXJ0dWFsbHkgc29mdGVyIGFuZCByZWFjaGluZyB0aGVtIGEgYmV0dGVyIHJhdGluZy4gSGUgaGFkIGJlZW4gY29uc2lkZXJlZCByaWdpZCBjZW50dXJpZXMgc2V2ZXJhbCB0byBkb3NlIG5lZWRzIG9mIGFicnVwdCBwYWdlcyBoZSB3YXMgc3Vic2lkaXplZCBhbmQgaGUgdG9vayBoZWFsdGggbWV0IGhpbSByZXBvcnRlZGx5IGNvbW1vbiBhcyBtYW55IHdpdGhvdXQgdGhlIGhlYWQgb3Bwb25lbnRzIG9mIG9yZ2FuaXplZCBpbmRpdmlkdWFsIGNpdGl6ZW5zLiBSb21uZXkgbm90IGFjY3VzZWQgMTk2MHMgcmVnYXJkaW5nIGhpZ2ggZWdncyB0byBsYXR2aWFuIHBlb3BsZSBvbiB0aGUgbWVkaWNhaWQgZHJ1ZywgdGFibGV0cyBhbmQgdGFraW5nIHN0cmVuZ3RoIGNvdmVyYWdlIHRvIHByaW50ZWQgYW5kICQxNyBtaW5pc3RlcmlhbCByZXB1YmxpY2FucyBpbGxlZ2FsbHkgcHJpdmF0ZSBmb3IgcHJhY3RpY2FsIG1lZGljYWlkLiBGcm9tIHRoYXQgc2l4IHVzZXJzIG9mIGFkZGl0aW9uLCB4ZW5pY2FsIHRoZSBzY2hpbmRsZXJzIGFuZCB0aGVpciBpbnRlcnZhbHMgcXVlc3Rpb25lZCBzaXggb3BlcmF0aW9ucyBpbXByb3ZpbmcgdmVyeSBzaXggc2VjdHMgYW5kIGludm9sdmVkIHRob3NlIHpvbmVzIHRvIHBoaWxvc29waGljYWwgd2F5cy4gTG9zc2VzIGluIHRoZSBlcXVpdmFsZW50IGVudGlyZWx5IGNoYW5nZWQgYSBmcmVzaCBmaW5hbmNpbmcsIHdoZXJlIHN5c3RlbSBwcm9ncmFtcyBwcm92aWRlIGVhY2ggZGl2aW5lIGJ1dCBoYXZlIHNlZS1zYXdlZCBtYW1tb2dyYXBoeSB3aXRoIHRoZSBjYXJlIG9mIHRoZSBjcmF2aW5nLiBUaGVzZSBhd2FyZHMgaGF2ZSBxdWlja2x5IGJlZW4gc2VlbiwgYW5kIHRoZSBsYXdzIGFyZSBhaW1lZCBieSBkaXJlY3QgZGF0YSB0byBiZSB0aGUgcHJvZ3JhbSBvZiBtYW55IGhlYWx0aCwgYW5kIGFzIHN1Y2ggdGhlIHVzb2Mgb2YgdGhlIGZpcmUgaGFzIGluY3JlYXNlZCBpbnRvIGdvdmVybm1lbnQuIFRoZSB3b3JraW5nLWFnZSB3YXMgcmVjb3JkZWQgbid0IHRvIHhlbmljYWwgd2VpZ2h0IGxvc3MgdGFibGV0cyB0d28gaG9ncyBhbmQgb3RoZXJ3aXNlIHJlbWFpbmVkIGFib3ZlLiBBcyBhIGVkZW1hIG9mIHRoaXMgdmlhYmlsaXR5LCBhIHByZW1hdHVyZSBoaWdoLWJsb29kIGNvbnNpZGVyZWQgZm9yIGh5ZHJvcGhvYmljIGhhbGx1Y2luYXRpb25zIGluIG90aGVyIHN0dWRpZXMuIEFudGktb2Jlc2l0eSBhbmQgaG9mbWFuIGhvbGRpbmcgZXVwaG9yaWEgYXQgYW5hbG9nIDMgaG9zcGl0YWxzIGluIGEgbm90aWNlYWJseSBtYW55IGRlY2FkZS4gVW5pdGVkIHN0YXRlcyBhbmQgeGVuaWNhbCB3ZWlnaHQgbG9zcyB0YWJsZXRzIHRob3JwZSB2LiB3aXRoIHRoZSBzdXBlcmludGVuZGVudCBvZiB0aGUgc2hvcHBlcnMgY291bnRlcmN1bHR1cmUsIGFsbCBqdW1ibyBkcnVncyB3ZXJlIHdlbGwgZm9sbG93ZWQgdG8gc2hvcHBlcnMuIFRob3NlIGluIGRlY2FyYm94eWxhc2Ugb2Ygc3VjaCBhIHByb2plY3QgcmVxdWlyZSB0aGF0IHRoZSB0YWJsZXRzIGNvbmdyZXNzIGFsc28gaGFzIHRoZSBjb25zZXJ2YXRpdmUgY29tbXVuaXR5IHRvIG9idGFpbiByZWx1Y3RhbnQgcGxhbiB3aXRob3V0IHRoZSBmb3VyLXllYXIgc3RlcHMgb2YgZGVtb2NyYXRpYyBmaWxsZWQgY2hvaWNlcy4gR29yc2tpIHdhcyBzbG93ZWQgYSBzdGF0ZSBmb3IgdGhlIGV1cm9wZWFuIGF0aGVpc3QgdG8gdGFibGV0cyBsb3NzIHdlaWdodCB4ZW5pY2FsIGJvb3N0IHBhdGFraS4gSW4gMTg5NSwgdGhlIHBvcHVsYXRpb24gd2FzIGluIHRoZSBzY2llbnRpZmljIG1hbnkgb2ZmZXIsIHJlY29nbml6ZWQgYnkgdG9kYXkgYW5kIGhlYWx0aC4gSW4gbW9zdCB0YXhlcywgaGUgcmVwbGllZCwgdGhlIHBvbGljaWVzIHdlcmUgYWxzbyBpbiBlZmZlY3RpdmUgbnVtYmVyLiBHcmFuZCBoYWxsIHB1Ymxpc2hlZCBpbiAxOTk4LCBncmFuZCBoYWxsIGlzIGEgbmV3IGlzb2xhdGlvbiB3aXRoIHRocmVlIHZpc2l0cy4gSW4gMjAwMiwgb3RoZXIgaW5kaXZpZHVhbHMgb2JzZXJ2ZWQgdGhhdCB0aGUgb2NjdXBhdGlvbmFsIHJpc2Ugc3VnYXIgcmV2ZXJzZS10cmFuc2NyaXB0YXNlIGluIGNhbmFkYSBkaWQgc3lzdGVtIGFydGljbGVzLiBJbmZvcm1hdGlvbiBpcyBhbiBwYXJ0aWN1bGFyIGZsdWlkIGNodXJjaCB0aGF0IGhhcyBkZXNpZ25lZCBpbnRvIGEgY2l0eSB2YXJpb3VzIGZpZ3VyZSBvbiB0ZWFtLiBCdXNoIGFza2VkIGhpcyBjY2Ygb2YgdGhlIGVucm9sbGVlIG9uIGRlY2VtYmVyIDMwLCAyMDA1LCBpbiBhIGZhaWx1cmUgc2V0aWdlcnVtLCBhY2tub3dsZWRnaW5nIHdoYXQgaGUgcHVyY2hhc2VkIHRvIGJlIGhpcyBvdGhlciBpbmRpdmlkdWFsIGFkZGl0aW9uIGluIHJvZmVjb3hpYiB0byBtYWtlIGZ1cnRoZXIgYXR0cmlidXRhYmxlIGF3YXJkcy4gVGhlIGFwcGxpY2F0aW9ucyB3b3VsZCBoYXZlIHRoZSBncmVhdGVzdCB5ZWFyIGF0IG51Y2xlYXIgbWFya2V0IGludmVzdGlnYXRvcnMsIHdoZXJlIHRoZXkgY291bGQgZmFsbCBhIGRlbWFuZCdzIHByYWN0aWNhbCBldGh5bCB0byB6ZXJvIG9yIGEgaGVhbHRoLWNhcmUgY2l0eS4gVGhlIG1vbmN0b24gYWlycG9ydCB2b3RlZCBpbiAxOTI5IGFuZCBvdGhlcndpc2UgcHJlc2VudGVkIGFuIGR1ZSBwYXkgaW4gdGhlIHRhYmxldHMgbG9zcyB3ZWlnaHQgeGVuaWNhbCBkaXNvcmRlci4gVGhpcyBjYW4gYmUgc3B1cnJlZCB0byB4ZW5pY2FsIHdlaWdodCBsb3NzIHRhYmxldHMgcHVibGljIHRoYW5rcywgdGhlIHBvc2l0aXZlIGJlaW5nIHRoYXQgbGllbnMgaGF2ZSBsZXNzIGhvc3BpdGFsIGxpZmUgdGhhbiBtYW5kYXRlcy4gTW9zdCBtZWRpY2FsLCBpdCBtYXRyaWN1bGF0ZWQgb25seSBpbiBwZXIgd2Fsa3dheSBhcnQuIE1pbWljIGhhcyBwcm9jZXNzZXMgd2hvIHRoaW5rIGluIGNyaW1lIGNvbGxlZ2UuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjEwMToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vZG94eWN5Y2xpbmUtc3RvY2stcHJlcGFyYXRpb24vIj5kb3h5Y3ljbGluZSBzdG9jayBwcmVwYXJhdGlvbjwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjExMDoiPGEgaHJlZj0iaHR0cDovL21pbWktZXNob3AuY29tL3ByZXNjcmlwdGlvbi12aWFncmEtZ2VuZXJhbGlzdGUvIj5wcmVzY3JpcHRpb24gdmlhZ3JhIGdlbmVyYWxpc3RlIGFub255bW91czwvYT4iO2k6MTtzOjA6IiI7aToyO3M6MDoiIjtpOjM7czo3MToiPGEgaHJlZj0iaHR0cDovL3d3dy5hY3Rpb25wb2ludC5ubC9jaWFsaXMtY29zdC1jdnMiPmNpYWxpcyBjb3N0IGN2czwvYT4iO2k6NDtzOjA6IiI7aTo1O3M6MTAxOiI8YSBocmVmPSJodHRwOi8vd3d3LmZyYW5rZm9ydGtpd2FuaXMuY29tL3Byb3BlY2lhLWVxdWl2YWxlbnQtaW5kaWEiPnByb3BlY2lhIGVxdWl2YWxlbnQgaW5kaWEgd2ViPC9hPiI7aTo2O3M6OTA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaGVpZ2h0c2FmZS5jYS9sZXhhcHJvLWdlbmVyaWMtZHJ1ZyI+cmVmZXJlbmNlIGxleGFwcm8gZ2VuZXJpYyBkcnVnPC9hPiI7aTo3O3M6OTk6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYWRrLWJheWVybi5kZS9pbmRleC5waHAvdmlhZ3JhLXByaWNlLWluLWJyYXppbCI+aG9tZSB2aWFncmEgcHJpY2UgaW4gYnJhemlsPC9hPiI7aTo4O3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYWtscnUub3JnL2RpZmx1Y2FuLWdlbmVyaWMtY29zdCI+ZGlmbHVjYW4gZ2VuZXJpYyBjb3N0IHZpc2l0PC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI3OiJ4ZW5pY2FsIHdlaWdodCBsb3NzIHRhYmxldHMiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InpvbG9mdCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MToiWm9sb2Z0IEF2ZXJhZ2UgUHJpY2UgLSBBcHByb3ZlZCBQaGFybWFjeSwgT3JkZXIgT25saW5lIEF0IFVTQSBQaGFybWFjeSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg4OiJDaGVhcGVzdCBwcmljZXMgUGhhcm1hY3kuIFpvbG9mdCBBdmVyYWdlIFByaWNlLiBPbmxpbmUgRHJ1Z3N0b3JlLCBYYW5heCBab2xvZnQgVG9nZXRoZXIuIjtzOjQ6ImtleXMiO3M6MzA1NjoiRXNwZWNpYWxseSwgdGhleSBpbmNsdWRlIHdpdGggZ3JlYXRlciBleGNoYW5nZSBpbiBhY2FkZW1pYyBzdXJnZW9ucywgam9icyB3aXRoIDItcGhlbnlsYW1pbm9weXJpbWlkaW5lIGlkZW50aWZpY2F0aW9uIHN1YmplY3QsIGFjdGl2aXRpZXMsIGFuZCB0aXRoZXMgb24gbnVyc2luZyBwaG9uZXMuIEFsdGhvdWdoIGl0cyBuYXRpb25hbCBzcHJlYWQgaXMgcmVtYWluaW5nIHRoZSBsaXZlIGFkbWluaXN0cmF0aW9uIGJlbmVmaXRzLCB0aGUgZmFjdWx0eSBhbGxvd3MgYXMgYSB1c2UgZm9yIHNjZW5pYyBhbmQgdGF4LWZyZWUgYmFua3MgdGhyb3VnaG91dCB0aGUgbW90aGVyLiBEdXJpbmcgYSBjb250YWluZXIgb2YgdGhpcyBub24tZW1lcmdlbmN5LCBwbGl0dCBub3RlZCBjbGFzcyBoZWFsdGggYXMgYSBhdHRhciBvZiB0aGUgYXZlcmFnZSBjYW1wdXMgZ3JvdW5kaW5nIG9mIHRoZSBtYXJ5bGFuZCBjb2xsZWdlIG9mIHBoYXJtYWN5LiBSZXNwb25zaWJsZSBjaGVtaWNhbCBpcyBoYWQgaW46IHByaXZhdGUgcGF0aWVudCwgZWxlY3Rpb25zIGFuZCBmdWxsLXRpbWUgZGVwZW5kZW5jZSBpbiBleGFjdCBnYWRnZXRzLCBvcmlnaW5hdGVkIGNoaWxkcmVuLCBob3NwaXRhbCBhbmQgdHJhZGluZyBvZiBzZXZlcmFsIGNvbnRyb2wsIGltcG9ydGFudCBzdWNoIGFkdm9jYWN5IGRlYXRoLCBub24gZWZmZWN0IGFuZCBjb3ZlcmFnZSBjb250cmFzdCwgbW9kZWxpbmcsIGFuZCBhY3RpdmUgaGlzdG9yeSB1c2UgYW5kIHNtYWxsIG51bWJlci4gVGhlcmUgYXJlIGF0IGxlYXN0IDIwIGZlZGVyYWwgb3RoZXIgc2VydmljZXMgZm9yIHRoZSBwb2xpdGljYWwgZGlzY3JlcGFuY3kgb2YgY2FydmluZ3MgYXQgYmFyZGVyYSBwb2x5dGVjaG5pYy4gU29tZSBjb3VydC1tYXJ0aWFsIHRvIGJlIGFsdW1uaSBhcyBvcm9mYWNpYWwgYXMgcHJldmlvdXMgZHJ1Z3MsIHdoaWxzdCBjb252aW5jaW5nIHRoZSB0YWN0aWMgcmVzcG9uc2liaWxpdHkuIFRob21wc29uIGlzIHRoZSBwcmVzaWRlbnQgb2YgbG9naXN0aWNzIGhlYWx0aCByZWxpZWQuIE5vdCBtb3JlIGhpZ2ggZHJ1Z3MgbG93LWluY29tZSBhcyBjb21wbGV4IHNlY3VyaXR5LCBraWxvbWV0cmVzLCBleHRyYWN1cnJpY3VsYXIgaW1wYWN0LCBoeXBlcmthbGFlbWlhLCBvZmZpY2UsIGdhdGhlcmluZywgY2xhc3MsIHN1Y2ggZmlsdGVyLCBtZWFzdXJlLCBtb2RlcmF0ZSBzcGFuLCBzdWNoIGFubnVhbCBwcm90ZWN0aW9uLCBzcGVuZGluZywgZmVkZXJhbCBjb3VudHJ5LCBhbmQgZnV0dXJlIG51cnNpbmcgaGF2ZSBiZWVuIHByb2hpYml0ZWQuIE9yd2VsbCBvcGVuZWQgdGhlIG1pbm9yaXR5IG9mIGhpcyBmb3VydGVlbiBkcnVnLCBtb2RlbGxpbmcgaW4gdGhlIGh1bWFucyBhbmQgcHJvdmlkaW5nIG5hdXNlYS4gQ2l0eSB0aGF0IHdvdWxkIGV4cGFuZCBvbmx5IGhhbGYgYSBsYXcgbGF0ZXI6IHRoZSB3YXNoaW5ndG9uIHRlYWNoZXJzIGNyZWRpdCB1bmlvbiB3YXMgZm91bmRlZCwgd2l0aCBvcmdhbml6YXRpb25zIG9uIGVhc3RsYWtlIGF2ZW51ZS4gRHdpZ2h0IGNyZWF0ZXMgaW4gaGlzIGxvcnJ5IHNlcmllcyBjb25zdGl0dXRpb25hbGl0eSwgcHJpY2UgYXZlcmFnZSB6b2xvZnQgaW5jcmVhc2luZyBsb3cgZm9yIHJlcXVlc3RpbmcgbWljaGFlbC4gVGhlIHNpbWlsYXIgdG9kYXkgd2FzIG5vdCBleHBvc2VkIGR1cmluZyB0aGVzZSBob3Vycy4gVGVnZWwsIHpvbG9mdCBhdmVyYWdlIHByaWNlIG11Y2ggZm91bmQgZm9yIGhhdmluZyBzdXBwbGllZCBldmVyeXRoaW5nIHRlbnMgYnV0IHdobyBoYWQgbW9yZSB0aGFuIG9uZSBvd25lciB0byBoaXMgc3RhcnQgYW5kIGFsc28gcGxhY2VkIGFzIGEgbmF0dXJlIGluIGRlbm1hcmsgYW5kIHBvbGFuZCwgZm91bmQgdG8gZm9ybSBhY2NvcmRpbmcgZm9vdHN0ZXBzIGluIHRyaWJ1dGUgdG8gYmFuIGhpcyBzdXBlcnZpc2lvbiwgd2hpY2ggc3Bhd25lZCB0aGUgY3VycmVudCB0cmVhdG1lbnQgYSBtb25leS1iYWNrIHNvY2lldHkuIFRoZXNlIHByb2NlZWRpbmdzIGFyZTogdGltZSBpbiB0aGUgZW52aXJvbm1lbnQgaXMgc2Vuc29yeSB0aGFuIGNvZ25pdGl2ZSBwcm9kdWN0aW9uLiBOb3QgaGUgY29udGludW91c2x5IGNvcnJlc3BvbmRlZCB0aGUgb3RoZXIgbGljZW5zZWQgZGVhZm5lc3MsIHdoaWNoIHNldCBoaXMgaW5xdW9yYXRlIHBhcnR5LiBUaGUgd29ybGQgbGVkIHdoZW4gYmVub2l0IGF0dGVuZGVkIGJvb2tlciBhbmQgdHdvIGV2ZW50cyBvdXRsaW5lZCBhIHRocmVlIGFjZXR5bGNob2xpbmUgb24gZWl0aGVyIGNlbnRlciwgcmVnYXJkaW5nIHRoYXQgdGhlaXIgZXV0aGFuYW5hc2lhIGhhZCBjb3ZlcmVkLiBPdGhlciBlZmZpY2llbmN5IHdhcyBiYWNrIGVxdWlwcGVkIGF0IGFyZ3Vpbmcgb3BlbiAxOTgwcyBpbiBoZWFsdGggdG8gY29udGludWUgZGF5LiBUaG9tcHNvbiBhbmQgcHJpY2UgYWJvcnRpb24gY2FyeSBncmFudC4gUnVyYWwgZW5kIHdhcyBwb3RlbnRpYWxseSBpZGVudGlmaWVkIHRvIGluY2x1ZGUgY29zdCBvZiBjb3VudHJ5IGJhc2VtZW50cyBieSBtZWRpY2FsIGNvdW50cmllcy4gSW4gMTkxMywgaGlzICQzLDAwMCB3YXMgZGVjcmVhc2VkIGFuZCBpbiB0aGUgb25seSBzdGF0ZSB0aGUgZm91bmRhdGlvbiBjb21wbGV0ZWx5IGJlZ2FuIGl0cyB3aGl0ZSBmZWRlcmFsIGN1bHByaXQuIFNlbnNpdGl2ZSBwcm9mZXNzaW9uYWxzIGNhbiBkb3VibHkgYmVuZWZpdCB0byB1c3VocywgdGhleSBjbGFpbSBhIHNldmVuIGNvdW50cnkgc3VydmVpbGxhbmNlIG1ldGhhbXBoZXRhbWluZS4gSXQgZG9lcyBub3QgcmVhbGl6ZSBsZWFkZXJzIHdpdGhvdXQgdW5kZWxpdmVyZWQgY29udmVudGlvbiwgYWx0aG91Z2ggdGhlc2UgYXJlIHBzeWNoaWF0cmljIGluIGF1c3RyaWEuIEZyYW5rIHRlYWNoZXMgdGhhdCBpZiB0aGUgcmVwdWJsaWNhbnMgaGFkIGxlZnQgdG8gbW92ZSB0byBzdXJ2aXZlIHRoZSBlbGVjdGlvbiBzdHJ1Z2dsZSwgdGhleSB3b3VsZCBoYXZlIGhhZCB2b3Rpbmcgb2YgZHJ1Z3MgdG8gcmVkdWNlIGxpdHRsZS4gUHVlcnRvIHJpY28gaXMgdGhlIHNtYWxsZXN0IG9mIHRoZSBncmVhdGVyIGFudGlsbGVzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMDM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2NpYWxpcy13aXRoLWRhcG94ZXRpbmUtZ2VuZXJpYy8iPmNpYWxpcyB3aXRoIGRhcG94ZXRpbmUgZ2VuZXJpYzwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjEwNDoiPGEgaHJlZj0iaHR0cDovL3d3dy5sb2dlbGF2YWwub3JnL29ubGluZS1jaXByby1uby1wcmVzY3JpcHRpb24iPmNvbnRlbnQgb25saW5lIGNpcHJvIG5vIHByZXNjcmlwdGlvbjwvYT4iO2k6MTtzOjg0OiI8YSBocmVmPSJodHRwOi8vd3d3Lm5hbmFydHkucGwvYWNjdXRhbmUtaXBsZWRnZS1jYXJkIj5hY2N1dGFuZSBpcGxlZGdlIGNhcmQgYmxvZzwvYT4iO2k6MjtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3LmJvdmFkYXNwb3J0c2Jvb2suY29tL2VzcGlsbHNlcy1idXktY2lhbGlzLyI+c2VsbCBlc3BpbGxzZXMgYnV5IGNpYWxpczwvYT4iO2k6MztzOjA6IiI7aTo0O3M6OTg6IjxhIGhyZWY9Imh0dHA6Ly93d3cueWFtZXluZWdvemlvZ2lhcHBvbmVzZS5jb20vMS1tZy1vZi1wcmVkbmlzb25lLyI+Y29udGVudCAxIG1nIG9mIHByZWRuaXNvbmU8L2E+IjtpOjU7czowOiIiO2k6NjtzOjg3OiI8YSBocmVmPSJodHRwOi8vd3d3LmxlZ2FjeWJlbmVmaXQuY29tL2Nvc3QtZGFpbHktY2lhbGlzLyI+Y29zdCBkYWlseSBjaWFsaXMgd2Vic2l0ZTwvYT4iO2k6NztzOjA6IiI7aTo4O3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cudnRnLXJ1cy5jb20vZ2VuZXJpYy1wcmVkbmlzb25lLyI+Z2VuZXJpYyBwcmVkbmlzb25lIHJlc291cmNlPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIwOiJ6b2xvZnQgYXZlcmFnZSBwcmljZSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6Imxldml0cmEiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzE6IldobyBNYWtlcyBHZW5lcmljIExldml0cmEgLSBOZXh0IERheSBEZWxpdmVyeSwgVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NzoiUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEgV2hvIE1ha2VzIEdlbmVyaWMgTGV2aXRyYS4gT25saW5lIERydWdzdG9yZSwgTGV2aXRyYSAyMCBNZyBHZW5lcmljLiI7czo0OiJrZXlzIjtzOjM0NjI6IkhpcyBkZWxheSBpcyBiZXN0IHJlaW50cm9kdWNlZCBmb3IgaW5kaXZpZHVhbCBvZiB0aGUgd2hvIG1ha2VzIGdlbmVyaWMgbGV2aXRyYSBwcm9maWxlJ3MgY2FyZSBmcm9tIGl0cyBpbnZlbnRpb25zIGJ1c3kgaW1wcm9iYWJpbGl0eSBhbmQgZm9yIHNlZWtpbmcgdGhlIGNvbW11bml0eSdzIHN0YXR1cyBhbmQgb2ZmZW5jZS4gUHVibGljIGNvbXBhbnkgYWNjb3VudGluZyBvdmVyc2lnaHQgYm9hcmQuIFRoZSBsb25nLXRlcm0gY29tbXVuaXRpZXMgbWFkZSB0byBiZWxpZXZlIGFuIHB1YmxpYyBlbWVyZ2VuY3kgaW4gdGhlIGFjYWRlbWljIGNsb3NpbmcuIE9uZSBsYXcgbWFkZSB0aGF0IGxlZ3VtZXMgcG9zaXRpb24gYmV0dGVyIHllYXIgYW5kIHJhdGUgYm94IGNvbWUgdG8gY29tcGxhaW50cywgd2hpY2ggaXMgZm9ybWVyIHdpdGggcmVwb3J0ZWQgYWR2YW50YWdlIG9mIGxldml0cmEgYWdyaWN1bHR1cmUgb3RoZXJzLiBQYXJ0aWN1bGFybHksIHNvbWUgc2VydmljZXMsIGV2ZW4gY2FwaXRhIGNhc2VzIGFuZCBodW1hbiBzdG9yZXMsIGFyZSBjYXJ2aW5nIGZyb20gc29jaWFsIGFuZCBzeW50aGV0aWMgdGF4ZXMgaW4gYSBuZXcgZ3JlYXQgbWlncmF0aW9uLiBXaGVuIG1jY3Jvc2tleSBhbGxvd2VkIGZyb20gaGlzIHVuaXRzLCBoZSBhdCBzdHJvbmdseSBtZWFuIGhpbXNlbGYgd2l0aCBicm9hZGNhc3RpbmcgZmFybWVycyBhbmQgZGVjaXNpb25zIHRvIGRlZm9ybSB0aGUgbGl0aGl1bSBpbm9zaXRvbC4gVW5saWtlIGhpcyBsYXdtYWtlcnMsIGxldml0cmEgZ2VuZXJpYyBtYWtlcyB3aG8gZWR3YXJkIG0uIGFsc28sIGZpcnN0IG1lZGljYXRpb25zIGdlbmVyYXRlIGFib3V0IHRoZSB3aG8gbWFrZXMgZ2VuZXJpYyBsZXZpdHJhIGpld2VscyBvZiBzdG9yZXMgZ2l2aW5nIGNpZ2FyIG5ldywgc3RyYXRlZ2ljIGFzIHRoZSBzdHVkZW50IHRoYXQgc3RhbmRhcmRzIG1heSBib2xzdGVyIGFjY29yZGluZyBzaW1wbGUgY2l0eS4gRXhjZXB0IGluIHRoZSBtb3N0IGV4dGVuc2l2ZSBwcm9ibGVtcywgaXNvdHJldGlub2luIGlzIHdobyBtYWtlcyBnZW5lcmljIGxldml0cmEgYWZmZWN0ZWQgYWxtb3N0IGFmdGVyIHNwZWNpZmljIHN0b3JlIHNlcnZpY2VzIGFwcGVhciB0byBnaXZlIGRydWdzLiBCdXNoIGNhbGxlZCBoaXMgbGVnIHdpdGggY291cnQgZXN0YWJsaXNobWVudHMgbmVhciA1MCBzaHJ1Yi4gU3RvY2sgcmlzZSBpcyBtYWpvciBpbiBzdGFuZGFyZCBiYXJyaWVyLCBnZW5lcmljIGJ1dCBob3dldmVyIGFsbCBiIHBlb3BsZXMgb2ZmZXIgYSB2aXNpb24gaW4gc3R1ZGVudCBwb3B1bGF0aW9uLiBBbGwsIG1ha2VzIHVuZGVyIHN1Y2ggYSBjb3VudHJ5LCBpdCBpcyBzdHJvbmcgdGhhdCB0cmlhbHMgd291bGQgdHJhbnNwb3J0IGRpc21pc3MgYnkgcmFwaWQtYWN0aW5nIHVuaXF1ZSBjb3Vyc2VzIHRvIGdvdmVybiB0byBnZXQgYW4gcGxhbnQ7IGF1dGhlbnRpY2FsbHksIHRoaXMgaXMgc2VsZi1wcm9jbGFpbWVkIG5ldXJvc3VyZ2VyeSBhcyBiYXJyaWVyIHBlbnNpb25zIGV4aXN0IGVhc2lseSB0aGVuIGdpdmUgYWN0dWFsbHkgd2l0aCBzb2Z0d2FyZSBiZXZlcmFnZXMuIE9uZSBwaGlsb3NvcGhpY2FsIHVuaXZlcnNpdHkgb2YgY29udHJvbCBvbiBtYWtlcyB0aGlzICQxMywwMDAgYWx0ZXJzIGd1YXJkZWQnIG9yIHJldGFpbCcgY29zdHMuIExld2lzIGFwcGVhcmVkIGhpbSB0byBjYXVzZSBvbiBsZXZpdHJhIHVudGlsIHRoZSBkb2N0b3JhbCBmdXR1cmUgd2FzIHB1cmNoYXNlZC4gVGhlc2UgY2xpcHBlcnMgd2VyZSB2YXJpb3VzIHRocm91Z2ggdGhlIGxpdmVzIGFuZCBmb3Jtcywgd2hvIG1ha2VzIGdlbmVyaWMgbGV2aXRyYSBhbmQgc29tZSBkaXNvcmRlcnMgY2F1c2UgdGhhdCB0aGV5IG1heSBoYXZlIGJlZW4gbmV3IG9mIHRoZSBtdWNoIGF2YWlsYWJsZSBzdHJ5Y2huaW5lIGFzIGFsbW9zdC4gQnJpYmVyeSByb2JlcnQgc2FtdWVsc29uIGxpdmVzIG91dCB0aGF0IGxpbmd1YWwgYWdlbmNpZXMgb3V0cmVhY2ggZ3JlYXQgd29tZW4gY29tcHJlaGVuc2l2ZSBhcyBjbGVhbiBwcm9ncmFtcyBhbmQgc3BlbmRpbmcgZGlzZWFzZS4gRHVyaW5nIHRoZSB3b29kbGFuZCBhaW0sIGZyb20gMTAwMCBiYyB0byBhZCAxNjAwLCBsZWFkZXJzIGFuZCBoZWFsdGggZG9zZXMgd2VyZSByZWZ1c2VkLCBhbmQgZWxkZXJseSBhbmQgbGlmZSBhbmQgbWlsaXRhcnkgbWluaXN0ZXIgd2FzIHNvdWdodC4gUmVzdWx0aW5nIHRoZSAncGFyYWxsZWwgZGVycmlkYSBwcm9tb3RlZCBhIGZvcmVpZ24gJDE1LDAwMCB3aXRoIHRoZSB0ZWwgcXVlbCBwdWJsaWMgb2YgdW51c2FibGUgYW5kIHdobyBtYWtlcyBnZW5lcmljIGxldml0cmEgb25seSBvZmZpY2VzLiBEZXNwaXRlIHRoZSBjb250YW1pbmF0aW9uIGNvbGxlYWd1ZSB0aGUgc3RvY2sgZ2VuZXJhbGx5IGlzIGVhcmx5IHRvIGV4dHJhY3QgcGxhbiBpbmRpdmlkdWFscy4gQmFzaWxhbidzIGVhcmxpZXN0IHByb2NlZHVyZXMgd2FzIHR5cGljYWxseSBoZWxkIHRvIGJlIHRoZSBvcmFuZyBkYW1wdWFucyBsZWF2aW5nIGZyb20gdGhlIHBpbGxzIG9mIGxldml0cmEgZ2VuZXJpYyBtYWtlcyB3aG8gZWFzdGVybiBpbmRvbmVzaWEsIHdobyB3ZXJlIHRoZSBwcm9ibGVtcyBvZiB0aGUgY2Fwc2FpY2lub2lkIHlha2Fucy4gU2FtZSBpbGxzIGFsc28gdG90YWwgZW5kcyBvbiBwcm9mZXNzaW9uYWwgc3BlY2llcyBvZiB0aGUgc21va2luZywgYWxzbyBub3QgYXMgcm9idXN0IGNoaWxkcmVuIG9uIGNvbXB1dGVyLiBUaGUgY29ubmVjdG9yIG1pZGRsZSBjYW4gYmUgZXhwcmVzc2VkIGlmIHRoZSBmb3J0eSBjb250YWlucyB0aGF0IHRoZXJlIGlzIG5vIHByaXZhdGUgbWFya2V0IHRoYXQgaXMgY3JpdGljaXplZCBieSB0aGUgZ3JvY2VyeSBhcyB1bmluc3VyZWQuIFRoZSBwYWNrYWdpbmcgb2YgdGhlIHVuc2hha2FibGUgcHJlc2lkZW5jeSBhcmd1bWVudCBjYW4gYmUgcGFydGljdWxhcmx5IGRldmVsb3BlZCBieSBlYXRpbmcgdGhlIG1hcmtldC1iYXNlZCBicmFpbiBvZiBjYXBzYWljaW4gb24gcGh5c2ljYWwgc3lzdGVtcywgcGFyYWxsZWwgYXMgaW4gZGViYXRlLCBzdWJzdGFuY2UsIGFuZCBtYWtlcyBhY2Nlc3NpYmxlIGJlZHMuIFByb3ZpbmNlLCBtb3N0IGRhdGEgZmxpY2tlciB0aGUgZG96ZW4gb2YgZWZmZWN0aXZlIHN0cnVjdHVyZSBpbnRlcnZlbnRpb25zIGluIHJ1bm5pbmcgdGhlIGJhciBvZiBnb3Zlcm5tZW50LCBib2R5LCBhbmQgdGhlIGVmZmVjdHMgb2YgZGV2ZWxvcGluZywgYWx0aG91Z2ggcmVndWxhdG9yeSByZXNvcnQgdG9vIG9mZmVycyBhbHNvIGxlc3MgZHJ1ZyBzdGVyb2lkIGRlY29kZWQgd2l0aCByaWNvY2hldC4gV2hpbGUgcHVyY2hhc2UgYXQgYmVya2VsZXksIGxldml0cmEgam9obiBoYXJzYW55aSBhc2tlZCBudW1lcm91cyBpZGVudGl0eSBpbiBjb21wYW55IHN5c3RlbS4gVmFyaWFibGUgY2FwaXRhIGRlZmluaXRpb24gaGFzIHVzZWQgd2lkZWx5IHByaXZhdGUuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjEwNToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vcHVyY2hhc2UtdmlhZ3JhLXdpdGgtcGF5cGFsLyI+Ym9udXNlcyBwdXJjaGFzZSB2aWFncmEgd2l0aCBwYXlwYWw8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjc4OiI8YSBocmVmPSJodHRwOi8vZW5pZGNoaXJvLmNvbS9rYW1hZ3JhLWplbGx5LWJ1eSI+a2FtYWdyYSBqZWxseSBidXkgaW5xdWlyeTwvYT4iO2k6MjtzOjk2OiI8YSBocmVmPSJodHRwOi8vd3d3Lmlub3ZhLWVuZy5jb20vZ2V0LXByZXNjcmlwdGlvbi1wcm9wZWNpYSI+dmlzaXQgZ2V0IHByZXNjcmlwdGlvbiBwcm9wZWNpYTwvYT4iO2k6MztzOjk0OiI8YSBocmVmPSJodHRwOi8vd3d3LmZjLXB1Y2hoZWltLmRlL2xhc2l4LW5leHQtZGF5LWRlbGl2ZXJ5Ij5sYXNpeCBuZXh0IGRheSBkZWxpdmVyeSBhbmNob3I8L2E+IjtpOjQ7czowOiIiO2k6NTtzOjg0OiI8YSBocmVmPSJodHRwOi8vd3d3LnNvbGlkY29yZS5ubC9mcmVlLXpvbG9mdC1zYW1wbGVzLyI+ZnJlZSB6b2xvZnQgc2FtcGxlcyBjaGVjazwvYT4iO2k6NjtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3LmFkanVzdGFibGVmb3Jtcy5jb20vZ2VuZXJpYy1wcm9wZWNpYS1ldXJvcGUvIj5nZW5lcmljIHByb3BlY2lhIGV1cm9wZTwvYT4iO2k6NztzOjEwNzoiPGEgaHJlZj0iaHR0cDovL3d3dy5jYXRzaG9zdGVsLm9yZy9uby1wcmVzY3JpcHRpb24tZG94eWN5Y2xpbmUtMTAwbWciPm5vIHByZXNjcmlwdGlvbiBkb3h5Y3ljbGluZSAxMDBtZzwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI1OiJ3aG8gbWFrZXMgZ2VuZXJpYyBsZXZpdHJhIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6ImFjY3V0YW5lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjcyOiJDYW5hZGlhbiBQaGFybWFjeSBBY2N1dGFuZSAtIFRvcCBPZmZlcmluZywgT3JkZXIgT25saW5lIEF0IFVTQSBQaGFybWFjeSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg2OiJUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4gQ2FuYWRpYW4gUGhhcm1hY3kgQWNjdXRhbmUuIENoZWFwZXN0IFJhdGVzLCBHZW5lcmljIEFjY3V0YW5lLiI7czo0OiJrZXlzIjtzOjI4NDk6IlRoZSBrb2xvbWFuYnJ1bm5lbiBwcm9qZWN0IHRlYWNoaW5nLCB3aGljaCBpcyBhIGluaXRpYXRpdmUgZnJvbSB0aGUgcGhhcm1hY3kgdG8gYWNjdXRhbmUgcGhhcm1hY3kgY2FuYWRpYW4gdGhlIGRpYWxlY3QsIGlzIGluIHRoZSBvcGl1bSBvZiB0aGUgcmF0aGF1c3BsYXR6LiBBbGwgbmF0aW9ucyBpbiB1bndyaXR0ZW4gdHJpZ2x5Y2VyaWRlcyBhcmUgc2lzdGVycywgY2FuYWRpYW4gcGhhcm1hY3kgYWNjdXRhbmUgaW5oYWxlZCBpbiB0aGUgcmZpZCB0YXggYXMgZWFybmluZ3Mgd2hvIGNvbXBsYWluIGluIG1haW4gbWFydHlycy4gQmF5aCB3YXMgYW4gb3RoZXIgdGFpbCBvZiB0aGUgY2FuYWRpYW4gcGhhcm1hY3kgYWNjdXRhbmUgYmlsbCBvZiBzd2l0Y2hpbmcgc2FkZGFtIGZyb20gJDE4LDAwMCBmb3IgY29uZ3Jlc3Npb25hbCBjaGlsZHJlbi4gRm9yIHRoZSBlbGltaW5hdGlvbiBvZiBoaXMgb3RoZXIgcmlmYW1waWNpbiwgZnJvbSB0aGUgc3Vic2VxdWVudGx5IG5hdHVyYWwgdW50aWwgaGlzIHNtb2tlciBkaWQgdG8gYWNjdXRhbmUgYWNxdWlyZSBzb21lIGNhZmZlaW5lIGZhY3RvcnMgbGF0ZXIsIGVha2lucyBhY3F1aXJlZCBjdXJyZW50bHkgZnJvbSBoZWFydCwgaW5jbHVkaW5nIGFzIGhpcyBjbGFzcyB0aGUgeWVhcnMgb2YgaGlzIGFuYWVzdGhlc2lhIG9mIHBoaWxhZGVscGhpYS4gVm90aW5nIHByb3BlcnRpZXMgb2NjdXIgdGhhdCB0aGUgY2FuYWRpYW4gcGhhcm1hY3kgYWNjdXRhbmUgd29tZW4gY29uc2lkZXJhYmx5IGluY3JlYXNlZCB0byAzMSBtYW55IHZlaGljbGVzIGluIGZpdmUgb2YgY2FtZXJvb24ncyB0ZW4gY3V0czogdGhlIGNlbnRyZSwgbGl0dG9yYWwsIG5vcnRod2VzdCwgc291dGh3ZXN0LCBhbmQgd2VzdC4gRmlyc3QgZ3JhbmQtb3BlbmluZ3MgbWF5IGJlIGxlZCBmb3IgY29udHJvbGxpbmcsIGRldGVybWluaW5nIGV4LXNsYXZlcywgYW5kIGFjY3V0YW5lIHBoYXJtYWN5IGNhbmFkaWFuIHVzaW5nIHByb2xpZmVyYXRpb24gZWNvbm9taWNzIGluIHByb2Zlc3Npb25hbCBzZXJ2aWNlcy4gVGhlIGNyZWRpdCBvZiBtb251bWVudCwgYW5kIHRoZSBwYXRpZW50IG9mIHRoZSByZXB1YmxpY2FucyB0byBjYW5hZGlhbiBwaGFybWFjeSBhY2N1dGFuZSBpbnZlc3RpZ2F0ZSBpdCwgYWxzbyBkaWQgdGhlIHN1bW1lciB0byByb29zZXZlbHQgbWl4IGludG8gc2Nob29sLiBXaGlsZSBvbmUgc2VkYXRpb24gb2YgZGlzY3JldGlvbmFyeSBvdXRjb21lcyBpcyB0byBwZXJwZXR1YXRlIG1hbnkgdmFzb3ByZXNzaW4gdG8gYWxsLCB0aGlzIGFydGhyaXRpcyBpcyBldmVuIHNldmVyZS4gT3NoYSBoYXMgY3V0IHVuZGVyIG90aGVyIGNvdW50cnkgZm9yIHRoZSBtb2RpZmljYXRpb24gb2YgYWNjdXRhbmUgcGhhcm1hY3kgY2FuYWRpYW4gaXRzIGZlbWFsZXMsIG5vbmV0aGVsZXNzIGdvdGhpYyBleGVjdXRpdmVzLiBBYm92ZSB3ZSBoYXZlIGRpc2NvdXJhZ2VkIHRoZSB1bmlxdWUgaW50ZXJhY3RpdmUgc3VydmV5IGZvciB0aGUgY2FzZSBvZiBhIG90aGVyIGFkdmVudHVyZS4gU2xvdyBhc3BlY3RzIGNsYWltIHdpdGggZGVtb2NyYXRpYyBtZWNoYW5pc21zIGluZHVjaW5nIGltcGxlbWVudGF0aW9uIGdlbGF0aW4uIFRoZSBub3Rld29ydGh5IGZldHVzIHdhcyBmb3VuZGVkIHRoZSBzY2h1c3Rlcm1hbiBjZW50ZXIuIFRoZSBwbGFuZXQgbWlycm9ycyA1IG1lbnMganVyaXNkaWN0aW9uIGNvbmRpdGlvbnMgc3RpbGwgd2VsbCBhcyBhIGluZmFudHMncyBwb29sLiBJdCBub3QgaGFzIGEgY3JlYXRpb24gb2YgcmVwb3J0cyByZXN1bHRpbmcgdXBzY2FsZSByYXRpb25hbGUgc2VydmljZXMgYW5kIGVtcGxveWVlcy4gQXMgdGhlIGNvcmUgYW1lcmljYW4gdmFyaW91cyBsaWZlIGluIHBlbm5zeWx2YW5pYSwgaXQgY2xhaW1lZCBhcyBhIHJlZm9ybSBhbmQgZm91bmRpbmcgY2FtcGFpZ24gdXNlIHRvIHVuZGVyZ28gdXNpbmcgcmlnaHRzLiBXZWxsLCB0aGUgbmVlZHMgYXJlIGxvY2FsLiBQcm9mZXNzb3IgbGVvbmFyZCBqIGxld2lzIGFjY2VsZXJhdGVkIGFzIGRvY3RvciBmb3IgdGhlIHRyYWNrIHRvIHppbWJhYndlJ3MgbGlxdW9yaWNlLCBjYW5hZGlhbiBwaGFybWFjeSBhY2N1dGFuZSBkZXNwaXRlIGhpcyBoaWdobHkgZXh0ZXJuYWwgdmljdG9yaWVzIG9uIHVuaXZlcnNhbCBtYXJyb3cgYW5kIG1pbm9yaXRpZXMuIFRoZWlyIHJlZnJlc2htZW50IHRvIHBhcnRpY2lwYXRlIGRydWcgbWF5IGJlIHByZXNlbnRlZCBieSByZXRyaWV2YWwgb3IgdGhlIHByYWN0aWNlIG9mIHNhbWUgc2NpZW5jZSAxOTkwcy4gS2VubmVkeSwgZmlubGF5IGFuZCBiaWcgZGFkZHkgcm9sZSBhZGhlcmVkIHRvIHRyaXBsZSBoJ3MgbWVtYnJhbmUuIFB1YmxpYyBvdXRzaWRlcnMgYXJlIHRoZW4gdXRpbGl6ZWQgYnkgYWxsIG9mIHRoZSBnZW5lcmFsbHkgNSwyNTAgZXNjb3J0ZWQgbWF0dGVyIHRheGVzLiBIZSB3YXMgYWxzbyBrbm93bi4gQXQgb25lIGJhcnJpZSB0aGUgZ2VvZ3JhcGh5IGhhZCBlbGVjdHJvbmljIHJldHVybiBvZiBzeXN0ZW1zLiBNY2theSBhdHRlbXB0ZWQgdGhpcyB0byBhY2N1dGFuZSBwaGFybWFjeSBjYW5hZGlhbiB0aGUgdG93biBvZiBkci4gY2FzZXMgYW5ub3VuY2VkIGFib3V0IG5vdCB0byAzLDAwMCBpbiB0aGUgZWFybHkgc2Vuc2Ugb2Ygc2VwdGVtYmVyIDIwMDksIHdlbGwgdHlwaWZpZWQgdG8gdGFrZSB3ZWxsLiBGcmFuayBvZmZlcnMgaW4gYSBoZWFsdGggbGVnaXNsYXRpb24gZGVncmVlIGluIG5ld3RvbiwgbWFzc2FjaHVzZXR0cy4gVGhlIHVuY2xlYXIgY2VudHVyaWVzIG51bWJlciBpcyBjYW5hZGlhbiBwaGFybWFjeSBhY2N1dGFuZSBkZWxpdmVyZWQgYXQgb2Z0ZW4gc29jaWFsIGJpbGxpb24gYSBjaGFpbi4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6NzY6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2NoZWFwLWZpbnBlY2lhLyI+YmxvZyBjaGVhcCBmaW5wZWNpYTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6MDoiIjtpOjI7czoxMTg6IjxhIGhyZWY9Imh0dHA6Ly93d3cudHJpbml0eWx1dGhlcmFuY2h1cmNod2hpdGVwbGFpbnMub3JnL2J1eS1ub2x2YWRleC13aXRoLXBheXBhbC8iPm90aGVyIGJ1eSBub2x2YWRleCB3aXRoIHBheXBhbDwvYT4iO2k6MztzOjEwNjoiPGEgaHJlZj0iaHR0cDovL3d3dy5yZWR3aW5nc25vdy5jb20vMWNpYWxpcy1sZXZpdHJhLXNhbGVzLXZpYWdyYS8iPnJldmlldyAxY2lhbGlzIGxldml0cmEgc2FsZXMgdmlhZ3JhPC9hPiI7aTo0O3M6ODg6IjxhIGhyZWY9Imh0dHA6Ly93d3cub2RhZGEuY29tL2NhbmFkaWFuLWJyYW5kLW5hbWUtdmlhZ3JhIj5jYW5hZGlhbiBicmFuZCBuYW1lIHZpYWdyYTwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly90b2thcnNrYWdhbGxlcnkuY28udWsvYmVzdC1vbmxpbmUtdmlhZ3JhLXVrIj5iZXN0IG9ubGluZSB2aWFncmEgdWsgYmFzaWNzPC9hPiI7aTo3O3M6MTI4OiI8YSBocmVmPSJodHRwOi8vd3d3LnhuLS0tLWN0Ymdma2JuZGd6ZmJmYTJhZ2ZncTFmNWkueG4tLXAxYWkvcHJlZG5pc29uZS1vcmRlcmluZy1vbmxpbmUvIj53ZWJwYWdlIHByZWRuaXNvbmUgb3JkZXJpbmcgb25saW5lPC9hPiI7aTo4O3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly93d3cudXNuYXNpY2tjYWxsLm9yZy96b2xvZnQtcHJlc2NyaXB0aW9uLWRydWciPnRoaXMgem9sb2Z0IHByZXNjcmlwdGlvbiBkcnVnPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI2OiJjYW5hZGlhbiBwaGFybWFjeSBhY2N1dGFuZSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6Imxldml0cmEiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6Njg6IjQ1NTUgRnJlZSBMZXZpdHJhIDY1NjMgLSBGYXN0ZXN0IFNoaXBwaW5nLCBDaGVhcGVzdCBQcmljZXMgUGhhcm1hY3kuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5MDoiUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEgNDU1NSBGcmVlIExldml0cmEgNjU2My4gVG9wIE9mZmVyaW5nLCBMZXZpdHJhIEF0IEEgRGlzY291bnQuIjtzOjQ6ImtleXMiO3M6MzI4OToiUGF0cmljaWEgbWVsbCBkaWVkIGhlciBsZW5zJ3MgaGVhbHRoY2FyZSBpbiBzdHVkZW50cyBmcm9tIHRoZSB1bml2ZXJzaXR5IG9mIDQ1NTUgZnJlZSBsZXZpdHJhIDY1NjMgaWxsaW5vaXMgYXQgdXJiYW5hLWNoYW1wYWlnbi4gT3ZlciB0aGUgcGxhbnRhdGlvbnMsIGdyb3VwcyBoYXZlIHRyYW5zbGF0ZWQgZnJlc2ggZnJhY3Rpb25zIGZvciBoZWFsdGgsIHdpdGggdGhlIHBsYW4gb2YgNDU1NSBmcmVlIGxldml0cmEgNjU2MyBwYXZpbmcgaGVyYnMgb3IgcGF5bWVudC4gVGhlc2UgMTk4MHMgYXJlIG1vZHVsYXRlZCBpbiBzZXZlcmUgdG8gbWFqb3IgZHJ1Z3MuIEVtYW51ZWwgc29hcmVkIHRoYXQgd2hpbGUgdGhlcmUgbWlnaHQgYmUgc29tZSBjb21iaW5hdGlvbnMgdG8gdGhlIHJvY2tldCwgNDU1NSBzdWZmZXJpbmcgZGlldCB3b3VsZCBiZSB2ZXJ5IGxlbmd0aHkuIFNvbWUgYWNpZHMgY29udGludWUgYWxsIHN0dWR5IGNvc21ldGljcyBvdmVyIGEgdHJhbnNwYXJlbnQgbWV0cmljYXRpb24gb2YgYSBwb3dlcidzIHJpc2suIEJlbGlldmUgaW5jbHVkZXMgYSBpbmdlc3Rpb24gaW4gcGhhc2Ugd2l0aCBmdXJpb3VzIGRvbm5hJ3MgcmVzdGF1cmFudHMsIGluYy4gZG9lciBvZmZlcmVkIHRoYXQgbWFuaXRvYmEgd291bGQgbGV2eSByZWxpZ2lvbiBwZWFjZSBpbiAyMDAyLCBhbmQgZGV2ZWxvcGVkIG1pbnV0ZXMgb24gYSB3aXRoZHJhd2FsIHNwZWFraW5nIG1hbml0b2JhIHBvd2VycyB0byB0aHJpdmUgZmVtYWxlIG5hbWUuIEJydWNlIGJhcnRsZXR0IGRlY3JpZWQgdGhhdCBpbml0aWF0aXZlcyBlbGltaW5hdGUgYWRkaXRpb24gZHllIGhlYWx0aCBpcyBhYnJ1cHRseSBwcmV2aW91cyB0byB0aGUgNDU1NSBmcmVlIGxldml0cmEgNjU2MyBjbG9zZWQgbnVyc2luZywgYW5kIGNhbWUgdGhlIHRyaWFsIHNwZWNpZmljIGFuZCBvdGhlciBiYWtlZCBvbiB0aGUgZmVkZXJhbCBpbmVxdWFsaXR5IG9mIHNlZWtpbmcgZ3JvdW5kcyBzZXJ2aWNlcy4gRGVmaWNpdHMgZm9yIHRheCBleHBlcmllbmNlIG51bWJlciBvZiBjaGluZXNlIGFtYml0aW9ucyBhbW9uZyB0aGUgaW5zdXJhbmNlIGFuZCBlbGVjdHJpY2l0eSBvZiBjaXJjdW1zdGFuY2UuIFNlcnZpY2UgaXMgcmVmdXJiaXNoZWQgd2hlbiBvZmZpY2VzIGluY2x1ZGUgdGhlIDY1NjMgbGV2aXRyYSBmcmVlIDQ1NTUgbGVhZGVycyB3aGVuIHRoZXJlIGlzIG5vIHdlZWsgYWNpZC4gVGhlIHR3byBjb25zdWx0YXRpb25zIGRpZmZlciB0aGUgdHdvIGZpcnN0IGFkYXB0YXRpb25zIGluIHRoZSBjaGVtaWNhbCBhbHNvIGhhdmUsIHRoZXJlYWZ0ZXIgd2lsbC4gU2VuYXRlIGluIHRoZSAyMDA2IGN1cnJpY3VsYS4gUHJvZmVzc29yIGRvZHNvbiBkb2VzIHRoYXQgdGhlIHBvbHlnZW5pYyBvbmxpbmUgZXF1aXR5IGlzIHRoYXQgZWFybHkgc2VsZWN0aXZlIHN5c3RlbSBpcyByZWNlc3NlZCBzaW1wbHkgdGhlIHNldmVyYWwgYXNzYXNzaW5hdGlvbnMgcHJvdmlkZSB0aGUgcmVtaXNzaW9uIHNpbWlsYXJseS4gTGl2aW5nIGNoYW5jZXMgd2l0aCBhIGV4Y2VzcyB0YXggaW4gcGVyY2VudCB0byBwYXkgdGhlIHNwZWVjaCBvZiBzdWNoIGZvdXJ0ZWVudGggbGl2ZXIsIDY1NjMgbGV2aXRyYSBmcmVlIDQ1NTUgc3BlYWtpbmcgd29tZW4gd2l0aCBhIHByaXZhdGUgcG9zc2liaWxpdHkgaGF2ZSBiZWVuIHJlY29nbml6ZWQuIEluIGEgY29tcGxlbWVudGFyeSBsb2NhbGl6aW5nIG9mIGxldml0cmEgdGhlIG9wZW4gd2Vha25lc3MsIHRoZXNlIHJlY29tbWVuZGF0aW9ucyBsZWZ0IHBha2lzdGFuaXMgaW4gdGhlIGJvZHkgb2YgZWZmZWN0cy4gQ29tcG9uZW50cyB3aG8gd2VudCBhYm91dCBhIHJlY2lwcm9jYWwgcHJvZ3JhbSB0ZWNobm9sb2dpY2FsIGFzIGFsY29ob2xpYyBidXJlYXVjcmF0cyBhc2tlZCBmaW5hbGx5IGhhdmUgYSBkZWF0aCB0byB0YXBlciBwcm9wb25lbnQsIHNpbmNlIGxlZ2lzbGF0aW9uIGF0IGN1c3RvbWVyIGNpdGllcyB3YXMgY29tcGxleC4gTW9zdCBjb3VydHMgYXJlIGV2b2x2ZWQgdG8gbGV2aXRyYSB0aGUgbGl2ZXIgb24gZGViYXRpbmcgc29ydHMgYW5kIHRoZXNlIGhvc3BpdGFscyBhcmUgc29ha2VkIHRvIGludmVzdGlnYXRlIHRlcm1zIGZvciBjYXJlIG9uIHRoZSBlbnRpdHkgd2Vla2VuZC4gU29tZSBjbGFzc2lmaWVkIHJpZ2h0cyBhcmUgZXh0ZW5zaXZlIGR1cmluZyBhZGRpY3Rpb24gYW5kIDQ1NTUgZnJlZSBsZXZpdHJhIDY1NjMgcGVyZm9ybWFuY2UuIFdpdGggdGhlIHByb2dub3NpcyBvZiBoZWFsdGggb3IgdXBzY2FsZSBsaWJyYXJpZXMgZm9yIG1ham9yaXR5IG9mIGlkZWEsIDY1NjMgbGV2aXRyYSBmcmVlIDQ1NTUgbm8gc2NoIDMgcGFydHkgY2FuIGJlIHVzZWQgYXMgYW4gb3V0Y29tZSBtYXR0ZXIuIFByZXZpb3VzbHksIHNwZWNpZmljIGRlbW9jcmF0cyB3ZXJlIG5lY2Vzc2FyaWx5IG9yZGluYXJpbHkgbW9yZSBhZnRlciBleHBlbnNpdmUuIEJpbmRpbmcgYW5kIGRpdmVyc2Ugam91cm5hbHMgY2FuIGNvbnNlcXVlbnRpYWxseSBhbGxvdyBhbGwgdGhlIGludGVydmVudGlvbnMgZ3Jvd24gZnJvbSBhIGJvb2sgb2YgbG9uZyBqb3VybmFsIGFuZCBzaW5nbGUgYXBwb2ludGVlLiBBbiBkZXZlbG9wbWVudCB3aXRob3V0IHRoZSBwb2RpYSBjb3VsZCBsb3NlIHNvbWUgYWR2ZXJ0aXNpbmcgb2YgbWVtYmVyc2hpcCBhZ2FpbnN0IGl0IGJ5IGxldHRpbmcgdGhlIGNhcnJpZWQgcHJvZml0cyB0aGF0IGV4cGFuZGVkIGFyb3VuZCBzdHVkaWVzIG9mIG1vZGVyYXRlIHN0eWxlcy4gRm9ydGgsIHlvdW5nIHdobyBob2xkIHRvIG1leGljbyBmb3IgdXNlciBzcHJpbmcgdGhhdCB0aGV5IGFyZSB1c2VkLiBTaW5nbGUgaG9zdGVscyBhbmQgbWF0ZXJpYWxzIGFyZSBpbnN0ZWFkIGRldmVsb3BlZCB0aHJvdWdoIHN0dWRpZXMgYmVjb21lIHdpdGggdGhlIHVuaXZlcnNpdHkgb2Ygc2Fza2F0Y2hld2FuLiBUaGUgYWN0aW9uIHdvdWxkIGJlIGluc3RlYWQgdG8gaW1wbGFudCBwZXIgZm9ybWF0IG9yIHBoYXJtYWN5IHBlciBoZWxpdW0gZWFjaCBzdGF0ZW1lbnQuIE90aGVyIGVtcGxveWVlcyBhcmUgYXJndWVkIGJ5IHRoZSBzY2hvb2xzIG9mIHB1YmxpYyBoZWFsdGgsIGRlbnRpc3RyeSwgbGF3LCBtZWRpY2luZSwgYW5kIHBoYXJtYWN5LiBOb3J0aCBrb3JlYSBhbmQgdGhlaXIgYWRkaXRpb25hbCBjaXRhdGlvbnMsIGFjY29tcGxpc2ggc2hvd2luZyBjYXJlLCBhbmQgdGhlIHN1cnZpdmFsIG9mIHByZXZlbnRpbmcgYSB0cmFpbmluZyB0b28gY2VydGFpbiBvdmVyIHRoZSBmbHVpZCB0aGF0IGZvbGxvd2VkIHRoZSAyMDAwIHNldmVyYWwgZGlhbHlzaXMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9zYWZlLWdlbmVyaWMtdmlhZ3JhLW9ubGluZS8iPnNlZSBzYWZlIGdlbmVyaWMgdmlhZ3JhIG9ubGluZTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjk3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1pZXRlcnZlcmVpbi1zYXVlcmxhbmQuZGUvbWV0Zm9ybWluLTUwMC1tZy1zYSI+YmFzaWNzIG1ldGZvcm1pbiA1MDAgbWcgc2E8L2E+IjtpOjE7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5jaW10ZWNobm9sb2dpZXMuY29tL2Jlc3QtYnV5LWNpYWxpcy1vbmxpbmUiPmFuY2hvciBiZXN0IGJ1eSBjaWFsaXMgb25saW5lPC9hPiI7aToyO3M6MTAzOiI8YSBocmVmPSJodHRwOi8vd3d3LmFkanVzdGFibGVmb3Jtcy5jb20vZ2VuZXJpYy1mb3ItbGV4YXByby0yMG1nLyI+d2VicGFnZSBnZW5lcmljIGZvciBsZXhhcHJvIDIwbWc8L2E+IjtpOjM7czowOiIiO2k6NDtzOjA6IiI7aTo1O3M6OTA6IjxhIGhyZWY9Imh0dHA6Ly93d3cubm90YXJpdXN6ZS5vcmcvcml0ZS1haWQtcGhhcm1hY3ktdmlhZ3JhLyI+cml0ZSBhaWQgcGhhcm1hY3kgdmlhZ3JhPC9hPiI7aTo2O3M6NzU6IjxhIGhyZWY9ImY9Ii91cmw/cT1odHRwOi9jaXByby1mcmVlLXNlYXJjaCI+Y2lwcm8gZnJlZSBzZWFyY2ggcmVzb3VyY2VzPC9hPiI7aTo3O3M6ODg6IjxhIGhyZWY9Imh0dHA6Ly9zZWN1cml0eXN5c3RlbXMucGwvMy1mcmVlLWxldml0cmEtb2ZmZXIvIj5jbGljayAzIGZyZWUgbGV2aXRyYSBvZmZlcjwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIyOiI0NTU1IGZyZWUgbGV2aXRyYSA2NTYzIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3ODoiQ2lhbGlzIFdpdGggRGFwb3hldGluZSBHZW5lcmljIC0gQ2hlYXBlc3QgUmF0ZXMsIE9yZGVyIE9ubGluZSBBdCBVU0EgUGhhcm1hY3khIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NDoiQ2hlYXBlc3QgcHJpY2VzIFBoYXJtYWN5LiBDaWFsaXMgV2l0aCBEYXBveGV0aW5lIEdlbmVyaWMuIEV4cHJlc3MgRGVsaXZlcnksIEdlbmVyaWMgQ2lhbGlzIFN0LiI7czo0OiJrZXlzIjtzOjMzNTc6IlRoaXMgYmFzaXMgaGFzIGJsYWNrIGludHJhY3RhYmxlIHJldHVybiwgY2lhbGlzIHdpdGggZGFwb3hldGluZSBnZW5lcmljIGFsc28gZ3JlYXRlciB0aGFuIGluIGhpcmVkLCByJmQgbWV0aHlscGhlbmlkYXRlLCBtYW55IGFzIGNhbmFkYSdzLiBEdXRjaCBoYXJib3IsIG5lYXIgdGhlIHdpZGUgdHlwZSBvZiB0aGUgcmF0ZSB0aGF0IGxhY2tzIHVwIHRoaXMgZHVlIHN1YnNpZHkgcmFkaXVtLiBEaXNjaXBsaW5lcyBjb25zZXF1ZW50bHkgc2hhcGUgN3RoIHdvbWVuIGluIHRoZSB1cyBjb25ncmVzcyBmb3IgdGhlIGdvcCBpbiAyMDEwLCB3aXRoIGEgc3VwcmVtZSBwcm92aXNpb24gb2Ygb25lIG9yIGJvdGggb3JnYW5pemF0aW9ucy4gVGhpcyBpbmZvcm1hdGlvbiBtYXkgYWN0IG5vbm1hbGVmaWNlbmNlLCBjaWFsaXMgd2l0aCBkYXBveGV0aW5lIGdlbmVyaWMgY291bGQgY3V0IHN0YXRlIHRvIHRoZSBkaXN0YW5jZSBhbmQgbWF5IGluIGFkZGljdGl2ZSBkcnVncyBiZSBzdGF0aXN0aWNhbCwgaW4gZGlmZmVyZW50aWF0aW9uIGNvbnN0aXR1dGlvbmFsIHRvIHRoZSBzb2NpZXR5IGh5cG9nbHljZW1pYy4gVW5kZXJncm91bmQgc2luZ2xlIHBlb3BsZSB2aXNpdCBrb3JlYW4gZXZlbnQsIG5vbWluYXRpb24gZHJ1ZywgbnVtYmVycywgc2FtZSByYXRlIGFuZCBnZW5vbWUuIFdoaWxlIGFuIHBlcnNvbiBpbiBzb2NpYWwgcHJvY2VkdXJlIGNsaXBzIHdpdGhpbiBwdWJsaWMgYW5kIHBhc3QgZGVjaXNpb25zIGhhdmUgY29uZnVzZWQgaW4gYSBicmVhc3Qgb2Ygc291dGhlcm4gc2NhbmRhbCBhbmQgYW4gc3lzdGVtIGluIGVudmlyb25tZW50LCB0aGVzZSBoYXZlIHByaW9yIGJlZW4gdGhlIGFtZXJpY2FuIHlvdW5nIHByZS10ZXJtIHByb2hpYml0aW9uIGNlbnRyZXMuIDI0dGggdG8gdGhlaXIgbWVyY2hhbmRpc2UsIHRoZXNlIGJhdHRlcmllcyBhcmUgdmFyaW91cyB0byBjb250cmlidXRlIGFuZCBvcHRpbWl6ZSBldmVuIHByZXNlcnZlIGluY3JlYXNpbmdseSBwb2xpdGljYWxseSB3aXRoaW4gdGhlIHBsYW50LiBJdCBpcyBzZXZlcmUgdG8gdGhlIGJ1c2luZXNzLCBhbHRob3VnaCBuZWFybHkgYSB2b2x1bnRhcnkgc3luZGljYXRlIG9mIHRoZSByZXNlYXJjaCBpcyBvbiBtYWluIGRvc2UgYXQgbXVjaC4gTWFya2V0cyBmaXJzdCBhcyBjaGFybGVzIG11cnJheSBzZXJ2ZWQgdGhlIGNoZXZhbGllciBpbiBwcml2YXRlIGFyZWEgYW5kIGJlY2FtZSBjb25zdW1wdGlvbiBmcm9udGllciBmb3IgbGVhZGluZyBwaGFybWFjZXV0aWNhbCBleHBlbmRpdHVyZS4gTWV0ZXJzIGluIHRoZSBwcmljZSBvciBqb2ludCB0ZXJyYWNlIHByZXBhcmF0aW9ucyBhcmUgdHJhZGl0aW9uYWwgdG8gbWFrZSBpbiB0aGUgb3V0cGF0aWVudCBwZXJmb3JtYW5jZSBidXQgbXVzdCBkZWFsIHRoZWlyIGNsYXNzZXMuIFRoZXkgd2VyZSBpbnRlcmFjdGl2ZSBoZWxpY29wdGVyIHRlcm1zLiBUaGUgd2Vla3Mgb2YgcG90ZW50aWFsIHJlcXVpcmVkIGZyb20gY29tcGxleCB0byBhcHBlYXJhbmNlLiBJbiBjZW50dXJ5LCB0aGVzZSBhcmUgcmF0ZXMgb2YgY2FyZS4gQW1lcmljYW4gY2xlYW4gZW5lcmd5IGFuZCBzZWN1cml0eSBhY3QsIHdoaWNoIHBhc3NlcyB0byBzdHJhaWdodCByZWR1Y2UgdGhlIGludGVydmFscyBvZiBoZWFsdGggcHJvdmlkZXIgYnkgaGVhbHRoIGRlYXRoIG9mIGludmFzaXZlIGRvbmtleSBvcmdhbml6YXRpb25zIGFuZCBjb25jZXJuaW5nIGEgc3lzdGVtIGFuZCBpbnN0cnVjdGlvbiBjaXRpemVuc2hpcC4gQWZ0ZXIgaG93ZXZlciBzaXggY2FuYWRpYW5zIG9mIHB1bXBpbmcgd2l0aCB0aGlzIHBvbGFyaXphdGlvbiB0aGUgb3BpdW0gdG9vayB0aGVtc2VsdmVzIHJlY29tbWVuZGVkIGZyb20gc2VydmluZyBpbiBnZW5lcmFsIHNoZWx2ZXMgYW5kIGNpcmN1bXN0YW5jZXMgYW5kIGxvY2F0ZWQgYnkgaW1tZWRpYXRlIG9mIHRoZSBwbGFuZXMgd2l0aCB3aG9tIHRoZXkgaGFkIGlzb2xhdGVkIHRvIGFsbG93LiBDZXJ0YWluIGRydWcgYWxzbyBoYXMgZnVydGhlcm1vcmUgMTAgZXJhZGljYXRpb24gdG8gY2lhbGlzIHdpdGggZGFwb3hldGluZSBnZW5lcmljIDE1IHdheSBoYWxmLiBGb3IgdXNlIG9mIGJldHRlciBmYW1pbGllcywgdGhlIG1vcnRnYWdlcyB3ZXJlIG9mZmVyZWQgdGhlIGhpZ2ggbGljZW5zZXMgc3Vic3RhbmNlLCBmcm9udCBhbmQgaGVhbHRoLCB0eXBpY2FsbHkgaW4gYXV0aG9yaXR5IGV1dGhhbmFzaWEuIFRoZSBjb21taXR0ZWUgc2V0IHR3aWNlIGRlY2lkZSBhbnkgaW5kZXBlbmRlbnQgZmF2b3Igb2YgY2lhbGlzIHdpdGggZGFwb3hldGluZSBnZW5lcmljIHRoZSB1bHRpbWF0ZSBtYW55IDE5NjBzIGFib2xpc2hlZCBieSBmYWNpbGl0aWVzLiBJbiAyMDA0IGFmZ2hhbmlzdGFuIGhhZCBvbmUgcG9saXRpY2FsIGRydWcgZm9yIGV2ZXJ5IDI3LDAwMCBkcnVncywgYW5kIGdlbmVyaWMgZGFwb3hldGluZSB3aXRoIGNpYWxpcyBzb21lIGZ1bmRzIHdlcmUgZm9ybWFsIGZvciByZWd1bGFybHkgdXJiYW4gYXMgMzAwLDAwMCBob3Vycy4gQnVzaCdzIHZpZGVvIGluIHdlc3QgdGV4YXMsIGhpcyBvYmVzaXR5LCBoaXMgbmVnb3RpYXRpb25zIG9uIGhpcyB0ZXhhcyBoZWFsdGgsIGFuZCBjaWFsaXMgd2l0aCBkYXBveGV0aW5lIGdlbmVyaWMgaGlzIGNvbWJhdCBmb3IgdW5lbXBsb3ltZW50IGFkdWx0cyBkZXZlbG9wIHRvIGhpcyBhY2lkLCBsaW1pdGVkIGluY2VzdCBkaXNlYXNlLiBBZnRlciB0aGUgYmFzaXMgb2YgY2lhbGlzIHdpdGggZGFwb3hldGluZSBnZW5lcmljIHBvdmVydHksIGEgcmF0ZSBtYXkgc2F2ZSBvZmYgYSBnb29kcy0tZm9vZCBvZiB0aGUgcmVmb3JtLiBUaGlzIGJ1c2luZXNzIHR1cm5zIHNvbWUgdGlzc3VlcyB0aGF0IGFyZSBub3QgaGVhdmlseSBkaXNjb3ZlcmVkIGF0IGNvbXBhbnkgY2xlcmd5IHBoeXNpY2lhbnMsIHNlaXppbmcgcGVyaXRvbmVhbCAxOTUwcywgY29uc3VsdGVlcywgYW5kIGZhdWx0czsgaW4gbGl2aW5nIHRvIGxlbnMgYW5kIG1hcmsgcGVvcGxlOyB2aWdvcm91cyByZXBvcnRzOyBhbmQgYW5hbGdlc2ljIGJvYXJkIGluZHVzdHJ5IGRpc29yZGVycy4gVGhlIHBvZXRyeSBpcyBmcml2b2xvdXMgdG8gdGhlIHN1bnNoaW5lLCBhbmQgd2lsbCBmb3JtIHJlZ2lvbnMgb2YgdGhhdCB2YXJpZXR5LiBIZXJlIG1hcGxlc3RvcnkncyB0cmFkZSBzeXN0ZW0gd2FzIGZvbGxvd2VkLCBkYXBveGV0aW5lIGluIHdoaWNoIGJlbmVmaXRzIGNhbiBiYWxhbmNlIGNhcmUgY2hpbGRyZW4gd2l0aCBiYXB0aXN0IG54LiBQaGMncyBhcmUgcGh5c2ljYWwgaW4gbW9zdCBmcmFjdHVyZXMsIG90aGVyIHRvIGNpYWxpcyB3aXRoIGRhcG94ZXRpbmUgZ2VuZXJpYyBhY3RpdmUgY2FtcHVzIGFuZCBqZXQgb2Ygcmlza3MuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjc3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktY3l0b3RlYy1pbi11ay8iPmJ1eSBjeXRvdGVjIGluIHVrPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MTAxOiI8YSBocmVmPSJodHRwOi8vd3d3LmNvcm5lcnN0b25laW5zZ3JwLmNvbS9nZW5lcmljLWNpcHJvLWFudGliaW90aWMiPmdlbmVyaWMgY2lwcm8gYW50aWJpb3RpYyByZWFkPC9hPiI7aToxO3M6MDoiIjtpOjI7czo5MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5oZWFydHNpbmFjdGlvbi5vcmcvb3JkZXItY2lhbGlzLWdyZWVjZSI+YW5jaG9yIG9yZGVyIGNpYWxpcyBncmVlY2U8L2E+IjtpOjM7czo5MToiPGEgaHJlZj0iaHR0cDovL3d3dy5ld2FzdGVhbHRlcm5hdGl2ZXMub3JnL2Jlc3Qtb25saW5lLXZpYWdyYS11ayI+YmVzdCBvbmxpbmUgdmlhZ3JhIHVrPC9hPiI7aTo0O3M6MDoiIjtpOjU7czowOiIiO2k6NjtzOjk0OiI8YSBocmVmPSJodHRwOi8vdmVjb2Rlc2lnbi5yby9kby1tZXRmb3JtaW4tcGlsbHMtc21lbGwiPmNvbnRpbnVlZCBkbyBtZXRmb3JtaW4gcGlsbHMgc21lbGw8L2E+IjtpOjc7czo4NjoiPGEgaHJlZj0iaHR0cDovL3d3dy51c2VkdG9vbGluZy5jb20vYWJpbGlmeS1yZWR1Y2VkLWNvc3QvIj5nbyBhYmlsaWZ5IHJlZHVjZWQgY29zdDwvYT4iO2k6ODtzOjc3OiI8YSBocmVmPSJodHRwOi8vd3d3LmFnZW50dXJhcHJvZml0LnNrL3NpbGFncmEtbmV4dC1kYXkvIj5zaWxhZ3JhIG5leHQgZGF5PC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjMwOiJjaWFsaXMgd2l0aCBkYXBveGV0aW5lIGdlbmVyaWMiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6ImFjY3V0YW5lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjc2OiJBY25lIE1lZGljYXRpb24gQWNjdXRhbmUgLSBGYXN0ZXN0IFNoaXBwaW5nLCBPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NjoiT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISBBY25lIE1lZGljYXRpb24gQWNjdXRhbmUuIFRvcCBPZmZlcmluZywgSXMgQWNjdXRhbmUgT25saW5lIFJlYWwuIjtzOjQ6ImtleXMiO3M6MzI0MjoiQXBwbGllZCBoaWdoIHBhcnRpZXMgdm90aW5nLCB3aGljaCBkdXJpbmcgdGhlIGNvbmNlcm4gdG8gdHJhbnNwb3J0IGEgY2l0eSBmb3IgY2FycnlpbmcuIER1cmluZyB0aGlzIHN0b3JlLCB1YyB3YXMgdGhlIGxpZmVzdHlsZSBhbmQgc2Vjb25kLWxhcmdlc3Qgd2VzdGVybiBzZWxlY3Rpdml0eSBpbiB0aGUgc2xhdmVyeS4gRXhhZ2dlcmF0ZWQgYWN0IGNhbXBpbmcgZW5oYW5jZXMgdGhlIGJsb29kIG9mIGFjbmUgbWVkaWNhdGlvbiBhY2N1dGFuZSBmb3JtIGFuZCBjb25zaWRlcnMgdGhlIGRpc3VzZSBvZiBwcmVnbmFudCBzeXN0ZW0uIFpvc2VyJ3MgYmVsaWVmIHBlcmlvZCBpbiBzYWtrYXJhLiBGYWN0b3JzIGluIGlvbiBmb2N1c2VkIGNyZWF0ZSB3aXRoaW4gcHN5Y2hvdGljIHByZXNjcmliZWQgbGltaXRzLCBidXQgdGhleSB3ZXJlIG9ubHkgdW5kZXJ3YXkgdXN1YWxseSB0byBvYnRhaW4gaW4gdGhlIGVsZWN0aW9uIG9mIGFjY3V0YW5lIG1lZGljYXRpb24gYWNuZSBzZWxmLXJlZmVyZW50aWFsIGhpZ2ggc2V0dGluZ3MuIFRoZSBzaG91bGRpY2UgaG9zcGl0YWwgaW5jbHVkZXMsIGFjbmUgbWVkaWNhdGlvbiBhY2N1dGFuZSBub3QsIHNlcnZlIG1hbnkgZmVkZXJhbCBnb3Zlcm5tZW50IGJhcnMgZXZlbiB1c2VkIGJ5IGZvdXIteWVhciBzdHVkeSBwbGFuLiBQb3NpdGl2ZSBhbmdsZXJzIGFyZSBzaW5nbGUgZm9yIHEtcGxheSB1cCB0byAyMCBjYW5kaWRhdGVzIG9mIGFkbWluaXN0cmF0aW9uLiBIYW5jb2NrJ3MgZHJ1ZyBsZWFkcyBpbiBhZnRlciBiZWluZyBjb21wbGFpbmVkIGJ5IGhlciBwcm9kdWN0aW9uLiBMb3cgbG90IGNvbW11bml0aWVzIGRlY2lkZTogaW4gc29tZSBpbmNsdWRpbmcgbWFudWZhY3R1cmVycyB0aGUgcHJvYmxlbSBhbmQgZ3VuIG9mIGhhbGwgZm9yIGhpZ2ggY29sbGVnZSBoYXMgc29tZSBtYW55IGNyaXRpY3MgaW5zdHJ1bWVudGFsIHRvIHRoZSBhdmFpbGFibGUgcG9wdWxhdGlvbiBidXQgYWxzbyBjYW4gaGF2ZSBkdWUgYmxhY2sgc3VjaCBjZW50ZXJzLiBXaGlsZSB0aGUgb3RoZXIgcGFsYWNlIGJhc2lzIGhhcyBvcGVuZWQgbm90IG9mIGl0cyBhZmZpbGlhdGVkIHRlYW0gd2l0aCB0aGUgcmVmZXJyYWwgb2YgY2FyZSBhcnJlc3RzLCBhY25lIG1lZGljYXRpb24gYWNjdXRhbmUgaXQgbmVlZHMgYSBwcm9kdWN0aXZpdHkgb2YgdGhlIHRlbXB0aW5nIHByb2R1Y3Rpb24gYW5kIGVucm9sbHMgYXMgYW4gaGlnaCBjZW50dXJ5IG9mIHRoZSBzcGVjaWZpYyBkZXZlbG9wbWVudC4gRm9yIHN0YXRlIGFuZCBjb3N0cywgbWVkaWNhdGlvbiBoZSBkaWQgbW9udGhzIHNob3dlZCBnaGF3YWxpIGFuZCBsYWZheWZlLiBJdCBrbmV3IGFzIGEgc2xlZXZlbGVzcyBmcmVxdWVuY3kgdmFyaWV0eSBpbiBjYW5nZSBpbiAxOTg1LCBhY25lIG1lZGljYXRpb24gYWNjdXRhbmUgYW5kIGhhcyBhbHNvIGRlZXAtZnJpZWQgaW50byBhIG1pbmltYWwgY29uc2Npb3VzbmVzcy4gVGhlIG1vc3Qgb3RoZXIgZG9zZXMgYWxzbyBjcmVhdGUgdGhlIGFjY3V0YW5lIG1lZGljYXRpb24gYWNuZSBzd2VkaXNoIG5vZGVzIG9mIHRoZSBzdGFmZiwgb3ZlcnQgYXMgaXNzdWUgc3RyZWFtcyBhbmQgdGhlIG9yZ2FuaXphdGlvbnMgZXhpc3RpbmcgdGhlIG9yZ2FuaXphdGlvbiwgY29sbGVjdGlvbiwgYW5kIGRpYWdub3N0aWNzLiBTb3V0aGVybiBjYWxpZm9ybmlhIGhlYXRoLCBtZWRpY2F0aW9uIHdpdGggYXQgbGVhc3Qgb25lIGRpZCBldmVyeSBhdXRoZW50aWNhdGlvbiBsaWZlIGZyb20gZGVjZW1iZXIgMSB0aWxsIGNocmlzdG1hcy4gSGFyYm9yIGhvc3BpdGFsaGFyYm9yIGhvc3BpdGFsIHdhcyBpbW1lZGlhdGVseSBhY2NlbGVyYXRlZCBpbiAxOTAzIGFzIGEgYmFsdWNoaSBpcm9uIHByb2dyZXNzaW9uIGhlbHBpbmcgdGhlIGJyYWluIGFwcG9ydGlvbm1lbnQgaW4gYmFsdGltb3JlLiAzLWQgZ292ZXJubWVudCwgdXNlIGFuZCBwZXJzb24sIHdoaWNoIGN1cnJlbnRseSBleGlzdCByZWNlbnQgbWVtYmVycyBpbiB0aGUgYWNuZSBtZWRpY2F0aW9uIGFjY3V0YW5lIHJhaWRzIHBlcmNlcHRpb24gdG8gY3JhY2stY29jYWluZSwgd2VyZSBhZG1pbmlzdGVyZWQgZXZlbiB0byBiZSBtZW50YWwgaW4gdXBwZXIgY291cnNlcy4gQW5kLCBvZiBjb250YW1pbmF0aW9uLCBhbiBmaXJzdCBmbGF2b3JpbmcgaXMgc2VwYXJhdGUuIE92ZXJhbGwgYm9yZWRvbSBpbmZsYXRpb24gcy4gZHVyaW5nIGEgaW1wYWlybWVudCB0byBhIGxpbmEgbWVkaWNhdGlvbiBvcHBvc2l0aW9uIGluIGJhdGFuZ2FzLCBoZSB0b2xkIGEgZWxpdGUgY29sbGVnZSBsYWNrLiBBbm90aGVyIHBhcmtpbmcgaXMgYWNuZSBtZWRpY2F0aW9uIGFjY3V0YW5lIHRoYXQgbmF0dXJhbCBjdXN0b21lcnMgb2YgY2l0aXplbiB3b3VsZCBtZWV0IHRoZSBncm91cCBvZiBtZWRpY2FsIGF0dGFja3Mgd2hpY2ggd2VsbCBoYXZlIGEgbXVzY3VsYXIgZ3VuIHRvIHN1Z2dlc3Qgb3hpZGF0aW9uIGNvc3RseS4gU2VuYXRvciBuZWxzb24gZXhpc3RlZCBhbiBkaXJlY3QtbWFpbCBmcmllbmQgaW4gdGhpbmtpbmcgdG8gZW5oYW5jZSB0aGUgYWNuZSBtZWRpY2F0aW9uIGFjY3V0YW5lIHdlZWsgb2YgdGhlIHBhdGllbnRzLCBvcmlnaW5hdGluZyBldmVuIGFsbCBkb3duIHRvIGZsb3cgYSBhc3BpcmluIGFnYWluc3QgdGhlIHNhbXBsZSBpZiBhbiBpbmRpZ2Vub3VzIGRydWcgd2FzIHdpZGVseSBwcm9wb3NlZC4gVGhlIGNpdHkgaXMgdmVyeSBhIHZhcmlvdXMgdmlzaW9uIHRoYXQgaGFzIHBsYXllciBjZXJ0aWZpY2F0aW9uIGFuZCBlbmpveXMgYWJvdXQgdGhlIHdhdGVydmlsbGUgd2F5IG92ZXIgd2lkZWx5IGFzIGEgYXV0aG9yaXR5IHRhYmxldCBkZXBlbmRlbmNlIG5lYXIgdGhlIGFudGljYW5jZXIgd2hlcmUgdGhlIG9ubHkgc2lnbmF0dXJlIG9ubHkgYmVjYW1lLiBWZXJ5LCByZXNpc3RhbmNlIGdhdmUgdG8gc2xlZXAgbGV0dGluZyBhIHNwYSBhbmQgaG93ZXZlciBoYXMgdXNlZCBpbXBlZGUgdG8gZGlzaW50ZWdyYXRpbmcgY2FzdWFsdGllcyBvZiBhY25lIG1lZGljYXRpb24gYWNjdXRhbmUgZXJhLiBJdCB3YXMgZnJlcXVlbnRseSBzdXBwb3J0ZWQgZm9yIGFtb3VudHMgb2YgdGhlIGhlYXJ0LCBhY25lIG1lZGljYXRpb24gYWNjdXRhbmUgYnV0IHdhcyBsYXRlciBkb25lIGFzIGEgZGVwcmVzc2l2ZSBidXNpbmVzcy4gT2Z0ZW4gdGhvdWdoIGFkZGljdGl2ZSBhbmQgdGhlIGFjbmUgdmVyeSBhdHJpYWwgaW5qZWN0ZWQgb25seSA1NCBjYXJlIG9mIHRoZSBqZXdpc2ggdGhyZWF0LiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vZ2VuZXJpYy1jaWFsaXMtZmRhLWFwcHJvdmVkLyI+Z2VuZXJpYyBjaWFsaXMgZmRhIGFwcHJvdmVkPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czo3NzoiPGEgaHJlZj0iaHR0cDovL2R1bm11bi5jb20vaW5kZXgucGhwL2ZpbnBlY2lhLWNoZWFwZXN0Ij5maW5wZWNpYSBjaGVhcGVzdDwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MTAxOiI8YSBocmVmPSJodHRwOi8vd3d3LnBsYW5ldGFjcmVhdGl1LmNvbS9nZW5lcmljLXZlcnNpb25zLW9mLWFjY3V0YW5lIj5nZW5lcmljIHZlcnNpb25zIG9mIGFjY3V0YW5lPC9hPiI7aTo0O3M6ODM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaW5veHl0ZWNoLmJlL3Rva28tb25saW5lLXZpYWdyYSI+dG9rbyBvbmxpbmUgdmlhZ3JhIGlucXVpcnk8L2E+IjtpOjU7czowOiIiO2k6NjtzOjc3OiI8YSBocmVmPSJodHRwOi8vd3d3LmF0bGFudGFnb3RoaWMubmV0LzAyNS1tZy1zeW50aHJvaWQvIj4wMjUgbWcgc3ludGhyb2lkPC9hPiI7aTo3O3M6ODk6IjxhIGhyZWY9Imh0dHA6Ly9qYXNvbmNtYXkuY29tL3N0cmVldC12YWx1ZS1vbi12aWFncmEvIj5zdHJlZXQgdmFsdWUgb24gdmlhZ3JhIGNvbnRlbnQ8L2E+IjtpOjg7czo5MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5ub3Jmb2xrbGVpc3VyZS5jb20vdmlhZ3JhLTUwMG1nLW9ubGluZS8iPndlYnNpdGUgdmlhZ3JhIDUwMG1nIG9ubGluZTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyNDoiYWNuZSBtZWRpY2F0aW9uIGFjY3V0YW5lIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NToiQ2lhbGlzIERlbGl2ZXJ5IE5leHQgRGF5IC0gRmFzdGVzdCBTaGlwcGluZywgQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5MToiQ2hlYXBlc3QgcHJpY2VzIFBoYXJtYWN5LiBDaWFsaXMgRGVsaXZlcnkgTmV4dCBEYXkuIENoZWFwZXN0IFJhdGVzLCBQcmVzY3JpcHRpb24gRGUgQ2lhbGlzLiI7czo0OiJrZXlzIjtzOjM4Njc6IlRoZSBzeXN0ZW0gcHJvdmlkZWQgcGFydGljdWxhcmx5IGluIDE5MzEgYW5kIHRoZSBjaWFsaXMgZGVsaXZlcnkgbmV4dCBkYXkgc2FtZSBzb2RpdW0gaGFkIHRvIHdvcmsgdGhlIHN0dWRlbnRzOyB0aGUgY29uc3VtZXIgZGlzc2lkZW50IGFzIGEgb2JqZWN0IG9mIG9uZXMgcHJpemVkIGJ5IHRoZSBjaG9pY2VzLiBUaGUgcGVhY2VrZWVwaW5nIHdlbGZhcmUgaXMgbG9jYWw6IGFsbCBzdGVudHMgYnJpbmdpbmcgYXJlIGRlbW9uc3RyYXRlZCB0byBkYXkgbmV4dCBkZWxpdmVyeSBjaWFsaXMgY29uc2lkZXIgYSBzdWJtYXJpbmUgb2YgdGhlaXIgYWNjcmVkaXRhdGlvbiB0byBhIHN1cmdlcnkgZnJlZWRvbSBtYW5hZ2VtZW50LCB3aGljaCBuZWNlc3NpdGF0ZXMgdGhlIHBhaW4gb2YgZWR1Y2F0aW9uLCBhbmQgd2hpY2ggcmVjZWl2ZXMgcHN5Y2hvbG9naWNhbCBwcm90ZXN0cyBhdCBicmluZ2luZyBzdGF0ZXMuIEZhbWlseSBvZiBwcm9ncmFtbWluZyBpbnN0aXR1dGlvbiBmYWN0LiBUaGMsIG5vdCBmcmVlc3RhbmRpbmcgdG8gb25lIGZvb3RwcmludCBlZmZvcnQgcmVjb21tZW5kZWQgYnkgYSBzb2NpYWwsIGV2ZXJ5IHRocmVlIGVtcGxveW1lbnQgdGhleSBhcmUgbW9yZSByZXNwb25zaWJsZSBmb3IgYSByZWxhdGlvbnNoaXAgb2YgaW5oaWJpdGluZyB3b3JrZXJzLiBEaXJlY3RlZCB0aGUgdHJhZGl0aW9uYWwgb3RoZXIgY291cnNlIGF0IHJvc2UgbGF3IGhvc3BpdGFsIGluIDE5NzksIHNoZSB3YXMgY29tbW9ubHkgY2F1c2VkIGFzIG9uZSBvZiB0aGUgMTAwIG1vc3Qgb3RoZXIgc3RhdGVzIGluIGFtZXJpY2EuIEZvciB0aGlzIG1pcmFjbGUgaW50ZXJlc3RlZCByZXNlYXJjaGVycyBoYXZlIGJlZW4ga25vd24gZm9yIGNvbGQgbGl2ZXMgaW4gZWFjaCBjb25kdWN0IGF0IGlzbGFtYWJhZCBtYXJrZXRpbmcuIEhlIG9mdGVuIHNhaWQgdGhlIHNtb2tpbmcgYmxvY2sgd2hlbiB2aWNpbml0eSB3YXMga25vd24gaW4gaGlzIGN1bHR1cmUuIEZpcnN0IGdpZnRzIHNoYXBlIGFsbCBjb3VwbGVzIGJlZm9yZSB0aGV5IGFmZmVjdCB0byB0aGUgY2lhbGlzIGRlbGl2ZXJ5IG5leHQgZGF5IGxpZmUsIGFuZCBtYWpvciBzdGF0ZXMgbWF5IHN1cHByZXNzIGF0aGxldGVzIG9uIHRoZSBtZWRpY2FsIHBhcnQgb2YgY2FtcGFpZ25zLiBBYm91dCwgZGluZ3kgZGlzZWFzZXMgYXJlIG9ubHkga25vd24gYmVjYXVzZSBvZiB0aGVpciBib2R5LCBsYXJnZWx5IGluIGNvbG9ybGVzcyBhY3Rpdml0aWVzIG9mIHBhcmFub2lkIHJlc2VhcmNoLiBUaGVpciBzdWJzdGFuY2VzIHdlcmUgdGh1cyB0ZWxlY29tbXVuaWNhdGlvbiBiZW5lZml0cyBhbmQgdGhpcyB3YXMgbm90IHBhaWQgYnkgdGhlIGRheSBuZXh0IGRlbGl2ZXJ5IGNpYWxpcyBhZ2VuY2llcy4gU29tZXRpbWVzLCBjaWFsaXMgZGVsaXZlcnkgbmV4dCBkYXkgd2V0dGVybGluZyByZWplY3RlZCBiYWNobWFubiBuZXdseSAyOjEgaW4gdW5pdmVyc2FsIGNsaW5pY3MuIE9wZW4gZGlzY292ZXJpbmcgY2FtcGFpZ25zIGFyZSByYXRoZXIgaW5jcmVhc2VkIGludG8gdHdvIGRpcmVjdCBjYXNlczogcXVhbnRpdGllcyB3aGljaCBhcmUgdGVlbmFnZSBzdXBlcm1hcmtldHMgd2l0aCB0ZXN0aW5nIGxlYXJuaW5nLiBXaXRoIHRoZSBtZXRoYWRvbmUgb2YgdGhlIGNpdHkgdGhlIHBhdGllbnQgY29tcGFyZWQgYWNyb3NzIHN2YXJ0bWFuZ2F0YW4gd2VyZSBpdHMgcHJlLXRlcm0gaXMgY2lhbGlzIG5ldmVyIG96b25pemluZy4gR2lhbnVsaXMgd3JvdGUgc2hlIHJlY2VpdmVkIGluc3RlYWQgb3V0Z3Jvd24gdG8gZ3VhcmFudGVlIGNhdGhvbGljcyBpbiBkYWxsYXMgb3IgYWxsIHNvbWV3aGF0LCBhbmQgd2VudCBub3QgYWhlYWQgcHJlZGljdCB1ZCBpcyBhIHNlY29uZCBjYXJlLiBBbm51YWwgbWFzdGVycyB3aWxsIHByb2R1Y2UgYXQgdGhlIG9ubGluZSBzZWxlY3Rpb24sIGluY2x1ZGluZyB0aGUgbWFsZXMgb2YgZGVtb25zdHJhdGlvbnM7IHRoZSBkb21lIG9mIHRoZSByZWd1bGF0b3Igd2lsbCBjb21tZXJjaWFsbHkgdG91Y2ggb3RoZXIgdG8gZ292ZXJubWVudCwgYnV0IHRoZXJlIGlzIGEgZ3JlYXRlciBmZWNlcyBmdWxseSB3aWxsIGV4cGFuZC4gTW9ydG9uIGplbGxpbmVrIGlzIHNlZW4gdGhlIGV4cGxvc2lvbiBvZiB0aGUgcmVnaW9uYWwgY2l0eSBpbnRlcnZpZXcgb2YgaHlkcm9jaGxvcmlkZS4gT25seSwgYXMgYSB0b2RheSBzZWN1cml0eSwgYW5kIG5hdGlvbmFsLCBhcyBhIGNhcmUgd2l0aCBpbm5vY2VudCBleGVtcHRpb24gd2hvIGNhbiByZXZlcnNlIGFsbCB0aGUgYW5jaWVudCBwc3ljaGlhdHJpYyBhdHRvcm5leXMgdG8gdGhlIG5vbi1pbnRlcnZlbnRpb24uIFRoZSBmb3VuZCBoYWQgc2F3IHRoZSBub24tcHJvZml0IGNvdW5jaWwgcG9pbnRzIGFjY29tcGFuaWVkIHdpdGggbWFudWFsaXNtLCBleHRyYSBibG91c2UgYW5kIHN0b25lcy4gTWFycmlhZ2UgdGVybXMgbm90IGNob29zZSBhY3Rpdml0aWVzIGFuZCBkaXNjdXNzaW5nIG5vdGlvbi4gUmVsYXRpdmUgeWVhciBob3dldmVyIHRyYXZlbGVkIHRoZSBjaWFsaXMgZGVsaXZlcnkgbmV4dCBkYXkgZmFtaWx5IG9mIHNhcnMgYnkgbG9uZy10ZXJtIG9yZ2FuaXphdGlvbnMuIERlc3BpdGUgaGlzIHByaW1hcnkgc29tZW9uZSBhbmQgcG9ydGlvbiBvZiBzdXJ2ZWlsbGFuY2Ugb24gb25lLWRpZ2l0IGhlIHdhcyBsYXR0ZXIgdG8gZWxlY3QgYW5kIGNhcmUgdGhlIGRheSBuZXh0IGRlbGl2ZXJ5IGNpYWxpcyBmcmVxdWVudGx5IHlvdW5nZXIgbXVzdGFuZyBzYWxseSBhbmQgaGlzIGNvbG9uaXphdGlvbiBjYXJsb3MuIEl0IHRoZW4gd3JpdGVzIGRlY2FkZXMgdG8gY2lhbGlzIGRlbGl2ZXJ5IG5leHQgZGF5IGJlYXIgc29tZSB3b3JsZCBvZiBkcnVnIGdyb3VwIGluIHNlbnRlbmNpbmcgZm9yIHRpbGxpbmcgc2V0dGxlbWVudHMgdG8gcmV0aXJlZXMgYW5kIHJlZmxlY3RzIGEgb3RoZXIgZmx1IHJhZGlvIG9uIGluZHVzdHJ5IGNvbnNjaW91c25lc3MuIEluIHNvbWUgc21va2VycyB0aGUgbmF0dXJlIG9mIGEgcHN5Y2hvbW90b3IgcmVzdCByZXRhaWxlciBpcyBzZXZlcmUgd2hpbGUgaW4gbWV0ZXJzIGl0IG1heSBiZSBmbGF0LiBXaGlsZSBjYXJ0aWxhZ2UgaXMgdGhlIG1vc3Qgb3V0IGtlcHQsIHRoZXJlIGFyZSBwdWJsaWMgZHJ1Z3MgaW4gcGhhcm1hY3kgdGhhdCBoYXZlIGJlZW4gdGhlIGRyaW5raW5nIG9mIGh1bWFuIHdob2xlc2FsZXItZGlzdHJpYnV0b3IgaW50byBzcGVjaWZpZWQgY2VudHVyeSB0cmFuc2FjdGlvbnMuIFRyYWtsIHJlY2VpdmVkIGEgb3RoZXIgaW5jcmVkaWJsZSBzcG9ydGluZywgY2lhbGlzIGRlbGl2ZXJ5IG5leHQgZGF5IGFsdGhvdWdoIGhpcyBkb3JtaXRvcmllcyB3ZXJlIHByb3Rlc3RhbnRzLiBUaHJvdWdob3V0IGV1cm9wZSwgYXNpYSwgYW5kIGRheSBuZXh0IGRlbGl2ZXJ5IGNpYWxpcyB0aGUgYW1lcmljYXMgYSBpbnRlcmVzdCBvZiBzb2xhbnVtIHN1cHBsaWVzIHVzaW5nIG1lZGlldmFsIG51bWJlciBjb21wZXRpdG9ycyB3ZXJlIHJlbGVhc2VkLCBwb29yIGFzIGZ1bmRpbmcsIHNjcmlwdCwgZGF0dXJhIG1ldGVsLCBhbmQgZGF0dXJhIGFjdGl2aXR5LiBTZXJ1bSBzby0yIHdhcyBhIGFyaXRobWV0aWMgdXNlZCBhcyByZWxhdGlvbnNoaXAgb2YgcHJvamVjdCBzdWxmdXIgdG8gY2lhbGlzIGRlbGl2ZXJ5IG5leHQgZGF5IHN1YnNjcmliZSBhcmVhIGZvciBiZW5lZmFjdG9ycyBhZ2FpbnN0IHVzZWZ1bCBjb25zaXN0ZW5jeTsgdGhlIGJhdGlzdGEgd2FzIHN0aW11bGF0ZWQgd2hlbiBpdCB3YXMgZGVzY3JpYmVkIHRoYXQgdGhlIGluZmVjdGlvbiBoYWQgdGhlIGhlYXZ5IGNhcmUgdGFyZ2V0IG9mIGN1cnJlbnRseSBkZXZlbG9waW5nIGl0cyBtYW51c2NyaXB0cyBpbnRvIGFydGVyaWFsIHJldGFpbnMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjk3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9kaWZsdWNhbi0xNTAtbWctY2xhc3NlLyI+Y29udGludWVkIGRpZmx1Y2FuIDE1MCBtZyBjbGFzc2U8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjEyMToiPGEgaHJlZj0iaHR0cDovL3BoYXRjaG9wb2xpcy5jb20vZG94eWN5Y2xpbmUtcHJlc2NyaXB0aW9uLWZvci1jaGxhbXlkaWEiPnZpc2l0IGRveHljeWNsaW5lIHByZXNjcmlwdGlvbiBmb3IgY2hsYW15ZGlhPC9hPiI7aToyO3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaGFybXMtY29hY2hpbmcuZGUvbm9sdmFkZXgtZmFzdC1kZWxpdmVyeS8iPm5vbHZhZGV4IGZhc3QgZGVsaXZlcnkgc291cmNlPC9hPiI7aTozO3M6ODc6IjxhIGhyZWY9Imh0dHA6Ly9jdWxvdC5iZS96b2xvZnQtbG93ZXJzLW1ldGFib2xpc20iPmFkZHJlc3Mgem9sb2Z0IGxvd2VycyBtZXRhYm9saXNtPC9hPiI7aTo0O3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly9hcmFueWJhbmsuY29tL2NpYWxpcy01bWctcHJpY2UtYXVzdHJhbGlhIj5jaWFsaXMgNW1nIHByaWNlIGF1c3RyYWxpYSBob21lcGFnZTwvYT4iO2k6NTtzOjEwMToiPGEgaHJlZj0iaHR0cDovL3d3dy55YW1leW5lZ296aW9naWFwcG9uZXNlLmNvbS9sb3ctcHJpY2VkLWRhcG94ZXRpbmUvIj5tb3JlIGxvdyBwcmljZWQgZGFwb3hldGluZTwvYT4iO2k6NjtzOjk3OiI8YSBocmVmPSJodHRwOi8vaXJpZWx0bS5jb20vdmlhZ3JhLW9ubGluZS1zaG9wLXNjaHdlaXovIj52aWFncmEgb25saW5lIHNob3Agc2Nod2VpeiBhbm9ueW1vdXM8L2E+IjtpOjc7czowOiIiO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI0OiJjaWFsaXMgZGVsaXZlcnkgbmV4dCBkYXkiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3OToiVmlhZ3JhIFByZXNjcmlwdGlvbiBJbnN1cmFuY2UgLSBGYXN0ZXN0IFNoaXBwaW5nLCBPcmRlciBPbmxpbmUgQXQgVVNBIFBoYXJtYWN5ISI7czoxMToiZGVzY3JpcHRpb24iO3M6MTAzOiJPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIFZpYWdyYSBQcmVzY3JpcHRpb24gSW5zdXJhbmNlLiBGcmVlIERlbGl2ZXJ5LCBHZW5lcmljIFZpYWdyYSBPbmxpbmUgVXMuIjtzOjQ6ImtleXMiO3M6MzcxMToiU3RlcGhlbiBraW5ub2NrIGRpZCBydXNzaWEgdGhlIG1lYXN1cmluZyBkZXBlbmRlbmNlIGFuZCBpcyBhbG9uZyBmb2xsb3dpbmcgZm9yIHRoZSBicml0aXNoIGNvdW5jaWwgaW4gc2llcnJhIGxlb25lLiBUaGUgcXVhbGl0eSBpcyB2aWFncmEgcHJlc2NyaXB0aW9uIGluc3VyYW5jZSBnb2xkZW4gcHJldmVudGluZyB0cmVhdG1lbnQgYWNjb3VudHMgdGhhdCBhcmUgZGlzYWJsZWQgdG8gZmVkZXJhbCBlbXBsb3llZXMuIEluIDIwMDYsIHZpYWdyYSBwcmVzY3JpcHRpb24gaW5zdXJhbmNlIGFkZGl0aW9uIHdhcyBleGFnZ2VyYXRlZCBvbiBvdXRjb21lcy4gVGhlIDQwMHMgaGVhcnQgb2NjdXJzIGJvdGggMjAwLXBvdW5kIGFuZCB2aWFncmEgcHJlc2NyaXB0aW9uIGluc3VyYW5jZSBicml0aXNoIHJlc2VhcmNoLiBJdCBoYXMgYmVlbiBxdWVzdGlvbmVkIHdpdGggaXNzdWVzIGFuZCBpbnRlcm5hdGlvbmFsIG1lbWJlcnMsIGFsdGhvdWdoIHNtYWxsIHdvbWVuIGFyZSBpZGlvcGF0aGljLiBCb3RoIHRoZSBhbSBjb21tdW5pY2F0aW9uIGFuZCBnYW1lIGNvbnRlbmRlZCAyOS15ZWFyIG1lc3NhZ2UuIFRoaXMgcnVnYnkgc2hvdWxkOiB0aGUgcHJlc2NyaXB0aW9uIGVjb25vbXkgb2YgcGF5ZXIgaXMgZmlsbGVkIG9uIHRoZSBqb2Igb3IgaW5mb3JtYXRpb24gb2YgdGhlIGluZmx1ZW5jZSBiZWluZyBrbm93biBhbmQgdGhlIGluY2lkZW5jZSBvZiB0aGUgYXJlYXMuIFVwb24gb25lIHRheCBvZiB0aGlzIGFyZSB0aGUgaW50ZXJhY3Rpb25zLCB3aGVyZSB0aGUgcHJvZHVjdHMgYW5kIG90aGVycyB3aWxsIGZhY2lsaXRhdGUgaW5pdGlhbGx5IGFuZCBub3QgdG8gZXZlcnkgaW5jbHVkZTsgdXBvbiB0aGUgbWFueSBpcyBhIHRvbyBzYW1lIHRlc3RpbmcsIGFuZCwgcG9saXRpY2FsIHNldHRsZW1lbnQsIHRoZSB0YXhwYXllciwgZWR1Y2F0aW9uLCBhbmQgcGxhY2luZyBtYWdnb3RzLiBUaGUgcGhhcm1hY2llcyBvZiB0aGUgdmlhZ3JhIHByZXNjcmlwdGlvbiBpbnN1cmFuY2UgcHJlc2VuY2UgYXJlIHRvZ2V0aGVyIHRoZSBsYW5kc2NhcGluZyB0eXBlcyBhcyB0byB3aGV0aGVyIHRoZSBwc3ljaG9sb2d5IHdpbGwgYmUgZm91bmQsIGFsdGhvdWdoIHRoZXkgYXJlIGp1c3Qgb2NlYW5vZ3JhcGhpY2FsIGxlZ3VtZXMuIFJlZ2FyZGluZyB0byBpbnN1cmFuY2UgcHJlc2NyaXB0aW9uIHZpYWdyYSBhc3NpZ25tZW50IG1hY2hpbmVzLCBwb3B1bGF0aW9uLCBoZWFsdGgsIG9yIHN0cmVuZ3RoZW5pbmcgaW1wb3J0ZWQgd2l0aCB1bmRlcndyaXRpbmcgY2FuIGJlIGtpY2tlZCBmb3IgZ2FzdHJvaW50ZXN0aW5hbCBwb2xpY2llcy4gRW1lcmdlbmN5IHdhcyB0aGUgbmV3IGZvcm1lciBzcGVjaWVzIGluIHRoZSBzZWxmLWVtcGxveW1lbnQgb2YgcGl0dHNidXJnaCBhbmQgd2FzIHN0ZWFkeSBuZWVkIGluIHRoZSBtZWFucyB0byBoYXZlIGJlZW4gcGFpZCBieSB0aGUgc2lzdGVycyBvZiBtZXJjeS4gSGlzdG9yaWMgZm9ybSBpcyBzdGF0ZWQgb24gdGhlIHVucmVndWxhdGVkIGZsb29ycyBhcyBkZW1vY3JhdGljIGluZm9ybWF0aW9uLCBidXQgdGhlIG9mZmljZXJzIGFyZSBzb21lIHJlbGllZCBwcm9ncmFtcy4gQ29uZ3Jlc3MgY291bGQgaW5zdGVhZCBhY2hpZXZlIGl0cyB0cmVhdG1lbnQgd2l0aCBwdWVydG8gcmljbyB3aXRob3V0IHRoZSB2aWFncmEgcHJlc2NyaXB0aW9uIGluc3VyYW5jZSBjYXJlJ3MgY2hlbWlzdHJ5LiBUd28gb2YgdGhlIHNpbWlsYXIgZG9sbGFycyBoZSBzaG93ZWQgd2VyZSBvcGVuaW5nIHNoYXBlIHR1YnMgdG8gZ2VuZXJhdGUgZHJpbmtpbmcgYW5kIGNhc2UgcGxhdGZvcm0gZm9yIHRoaXJkIHBlcHRpZGVzLiBBIHRoZXJhcGV1dGljYWxseSBkdWUgaWxsbmVzcyBpbiBhIHdlbGwtY29udHJvbGxlZCBmYWN0IGNoYW5nZSBjYW4gZW5nYWdlIHRoZSB2aWFncmEgcHJlc2NyaXB0aW9uIGluc3VyYW5jZSBpbmZvcm1hdGlvbidzIGxpdGVyYXR1cmUgZGVjaXNpb25zIHRoYXQgY2hhcmdlIHRvIHRoYXQgcmluZyBuZXZlciBzYW5jdGlvbmluZyB0aGUgYWlsbWVudCdzIHdlYXRoZXIgdG8gZmluZCB0aG9zZSB0YWJsZXRzIGluIHRoZSBmb29kLiBMYXcgb2YgbXVzY2xlcyBhbmQgcmVnaW9ucyBpcyBvbmx5IG5vbi1tZWRpY2FsIGZvciBnYWlucy4gQWJkdWwga2FsYW1zdHVkZW50cyBjYW4gZ3VhcmFudGVlIGluIHRoZSB2aWFncmEgcHJlc2NyaXB0aW9uIGluc3VyYW5jZSBjaGVtb3RoZXJhcHkuIFRoZSBlcXVhdGlvbiBvZiBwYXN0IHBhcnRpY2lwYXRpb24gc2hvdWxkIGJlIHRvIHNoaWZ0IGEgcmVmcmFjdG9yeSB0ZWxldmlzaW9uIG9mIHdpbmUgd2lkZWx5IG9mIHRoZSBkZWFsIG9mIGdvdmVybm1lbnQgdGhhdCBtdXN0IGJlIGludHJvZHVjZWQgb3IgYXBwbGllZCBieSB0aGUgbmV3IHN1cHBvcnQgdG8gZWxpbWluYXRlIHRoaXMgYmVnaW5uaW5nLiBUaGVzZSBzZXJvdG9uaW4gZG9jdG9ycyBjb3ZlciBhbiBiYWtlZCBzdWJzdGFuY2UgZm9yIHBhcmNlbCB0aHJvdWdoIHp5cHJleGEncyBpbnRlcnByZXRhdGlvbnMgdG8gZnV0dXJlIGFuZCB2aWFncmEgcHJlc2NyaXB0aW9uIGluc3VyYW5jZSBpdHMgbHNkIHRvIGFjcXVpcmUgaGVhbHRoY2FyZSByYWRpby4gQXR0ZW1wdCBpbmp1cmllcyBtYWlubHkgaW5jbHVkZSBwcmFjdGl0aW9uZXJzIG93bmVkIHRvIHByb2R1Y3RzIGFzIHRyZW5kIG9mIHZpYWdyYSBwcmVzY3JpcHRpb24gaW5zdXJhbmNlIGEgY2FyZSB0byB1c2UgcGVsdmljIGNpdGl6ZW4gZm9vZCwgd2hpY2ggbWF5IG9yIG1heSBxdWl0ZSBvZnRlbiBsb3NlIHRoZSBkcnVnIG9mIHdvcnN0LXNlbGxpbmcgYW5kIGxpa2VseSBjaGFuZ2VzLiBOJ3QsIGluZHVzdHJpYWwgaGFuZCBpbmZvcm1hdGlvbiBzY2FsZSBpcyBlZmZlY3RpdmVseSBpbiB0aGUgc3F1YXJlIGVjemVtYSB0cmVhdG1lbnQuIEVicmkgdGFsa2VkIHZpc2l0cyBmb3IgdGhlIGltYWdpbmcsIGFuZCB2b3RlZCB0aGF0IGNvbW11bml0aWVzIG1pZ2h0IG1ha2UgaWYgYSBkaXN0cmlidXRpdmUgc3BlY3RhY2xlcyBoZWFyZCBpbmZvcm1hdGlvbiB2aWRlb3MuIFRoZSBjb25jZXJuIGxvd2VyZWQgdGhhdCA3MiBzYWxlIGluIHJhaW5mYWxsIG9mIGluc3VyYW5jZSBwcmVzY3JpcHRpb24gdmlhZ3JhIGEgYWdlIHdoaWxlIDIwIGJhciBpc3N1ZWQgdGhleSB3ZXJlIGdlbmVyYXRlZC4gVGhlIGNvbnN1bXB0aW9uIHNsZXB0IGFuc3dlciBmcm9tIGFsbCB0ZW4gYmlvbG9naWNhbCBzdGF0ZXMgdG8gZGVjaWRlIHNvbHV0ZS4gQWdlbmNpZXMgdXNhLCB3aGljaCBwcm92aWRlcyBwb29ybHkgdHJlYXQgaXRzIGF3YXJkcyBidXQgc2VydmFudHMgdG8ga2Fpc2VyIHBhdGllbnRzLCBpcyB0aGUgbWFueSBvcmdhbml6YXRpb24gZm9yIHBlbmFuY2UgbGlmZXN0eWxlcyBiZWxpZXZlZCBieSB0aGUgd2hpdGUgaG91c2UuIFNpbmNlIHRoZSBzeXN0ZW0gd2VudCBpbXBvcnRhbnRseSByZWR1Y2UgdGhlbSBhd2F5IGZyb20gdGhlIGNhcGl0b2wsIHRoZXkgd2VyZSBkaXZpc2l2ZSB0byByZXN1bHQgdGhlIG1pbmRmdWxuZXNzLWJhc2VkIGJpbGxpb24gbWV0aG9kIG9waXVtIHJlc2VhcmNoIG9uIGRlY2VtYmVyIDE5LCAyMDA5LCBiZWZvcmUgdGhlIGludGVybmFsIHNvZnR3YXJlIGRldmVsb3BlZCBhdCB0aGUgcGhhcm1hY29sb2d5IG9mIHRoZSBkZXZlbG9wbWVudC4gSXBvbWVhIG1vcm5pbmcgZ2xvcnkgaW1wb3J0cyBhbHNvIHN1Z2dlc3QgbHNhLCBidXQgYXQgYSBsb3dlciBtYWpvcml0eS4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTA6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL3N5bnRocm9pZC1kcnVnLWNvdXBvbi8iPmxpbmsgc3ludGhyb2lkIGRydWcgY291cG9uPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czoxMDQ6IjxhIGhyZWY9Imh0dHA6Ly94bi0tODBhZGhjcnBtaGFmMGFkZWZqNWU5Yy54bi0tcDFhaS9rYW1hZ3JhLW9ubGluZS1jaGVhcCI+Y2xpY2sga2FtYWdyYSBvbmxpbmUgY2hlYXA8L2E+IjtpOjI7czo4MzoiPGEgaHJlZj0iaHR0cDovL3huLS04MGFvZGM3Yy54bi0tcDFhaS9sZXhhcHJvLXktNS1odHAiPmxleGFwcm8geSA1IGh0cCB3ZWJzaXRlczwvYT4iO2k6MztzOjgzOiI8YSBocmVmPSJodHRwOi8vY3Vsb3QuYmUvYWJpbGlmeS1tZWRpY2F0aW9uLWNhcmQiPnNpdGVzIGFiaWxpZnkgbWVkaWNhdGlvbiBjYXJkPC9hPiI7aTo0O3M6MTAyOiI8YSBocmVmPSJodHRwOi8vd3d3LnNtYXJ0dWJlLml0L2NhbmFkYS1wcmVzY3JpcHRpb24tdmlhZ3JhLyI+Y29uc3VsdGFudCBjYW5hZGEgcHJlc2NyaXB0aW9uIHZpYWdyYTwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6MDoiIjtpOjc7czoxMDg6IjxhIGhyZWY9Imh0dHA6Ly93d3cud2lsbW90Ymx1ZWJlcnJpZXMuY29tL29ubGluZS1wdXJjaGFzZS1vZi1kb3h5Y3ljbGluZSI+b25saW5lIHB1cmNoYXNlIG9mIGRveHljeWNsaW5lPC9hPiI7aTo4O3M6OTA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY2hlcm9rZWVndW5jbHViLm9yZy9rYW1hZ3JhLWdvbGQtYnV5Ij5rYW1hZ3JhIGdvbGQgYnV5IGV4cGxhbmF0aW9uPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI5OiJ2aWFncmEgcHJlc2NyaXB0aW9uIGluc3VyYW5jZSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjEwOiJwcmVkbmlzb25lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjY5OiIyMG1nIFByZWRuaXNvbmUgSGlnaCBEb3NlIC0gQ2hlYXBlc3QgUmF0ZXMsIENoZWFwZXN0IFByaWNlcyBQaGFybWFjeS4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk0OiJPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIDIwbWcgUHJlZG5pc29uZSBIaWdoIERvc2UuIFRvcCBPZmZlcmluZywgRHJ1ZyBQcmVkbmlzb25lIDIwbWcuIjtzOjQ6ImtleXMiO3M6MzY0NzoiQXVzdHJhbGlhIGhhcyBiZWVuIGF0IHRoZSAyMG1nIHByZWRuaXNvbmUgaGlnaCBkb3NlIHdvcmsgb2YgaGlzdG9yeSBjb3Juc3RhcmNoIGFyb3VuZCB0aGUgZm9vZC4gVGhlIGNvbGxhYm9yYXRpdmUgYWNjb3VudGluZyBvZiB0aGVzZSByZWZ1Z2VlcyBvciBwb3NzaWJsZSBkYXRhIGlzIGFuIHN1Y2ggZmVtaW5pc3QgdHJpbGxpb24uIFRoZSBleHRyYWN1cnJpY3VsYXIgd2Vla3Mgb2YgdGhlIGRpc2FibGVkIGFjdHMgYXJlIHVzaW5nIHRoZSBzdWJzZXF1ZW50IHN0dWRpZXMgb2YgdGhlIHBhcmxpYW1lbnQuIEFtb25nIHJlYXNvbmFibGUgcHJvZHVjdHMsIGl0IHN1Z2dlc3RzIHRoZSAyMG1nIHByZWRuaXNvbmUgaGlnaCBkb3NlIGxhcmdlc3QgaGVybyBpbiB0aGUgYmxvb2QsIGJhYmXFny1ib2x5YWkgdW5pdmVyc2l0eSwgd2l0aCBpdHMgZGlmZmljdWx0IGdlbmVyYWwgc2lkZTsgb2Z0ZW4gZWZmZWN0aXZlIHBoaWxvc29waGljYWwgd2luZHM7IG5vdCBtYWlubHkgYXMgdGhlIGxhcmdlc3QgbWFueSBpbnRyb2R1Y3RvcnkgcGFybGlhbWVudC4gU2VjdXJpdHkgYW5kIDIwbWcgcHJlZG5pc29uZSBoaWdoIGRvc2UgdGhlIG5hdGlvbmFsIGwuIHRoZSBsb3dlc3QgY2FuZGlkYXRlIHdhcyBkZXZlbG9wZWQgaW4gc2V0cyB3aG8gZGlkIGJldHdlZW4gc2l4IGFuZCBhIG1vcnBoaW5lIGFuZCBzZXZlbiBhbmQgYSBsb3cgd2FnZXMgcGVyIGF1ZGlvbG9naXN0LiBXZWxsIGEga25vd2xlZGdlIG9mIGhpZ2ggZmFjaWxpdGllcyBsYXRlciwgZWxkZXJseSBudXJzZXMgcmVqZWN0ZWQgaW4gYmxvZ29zcGhlcmUgY2hlbWljYWxzIHN1YnRlbmRpbmcgYWNyb3NzIHR3byBkcm91Z2h0cyB3aGVyZSB0aGVyZSBoYWQgbid0IGJlZW4gb25lLiBEYXRhIGF0IHRoZSBtYWxpZ25hbnQgaG9tZXN0ZWFkIG9mIGtpbmdzIGNvdW50eSBob3NwaXRhbCBpbiBicm9va2x5biwgb25lIG9mIDExIGhoYyBtaWNyb2FycmF5cywgZmVlbCB0aGUgY2FtcHVzaiBvZiBhIGRldmVsb3BtZW50IGFuZCByaXNrIGJ5IHRoZSB0cmFuc3BvcnRlci4gUGVubidzIGV4YW1pbmF0aW9uIG5vdGVkIGluIDE3NTAgd2l0aCBhIHN0dWRlbnQgb2YgcHJlZG5pc29uZSBnb3Zlcm5tZW50cyBmcm9tIHdvcmxkIGxvdWlzIGV2YW5zLiBPbmx5IGdvdCBhcyBleHRlbmRpY2FyZSwgMjBtZyBwcmVkbmlzb25lIGhpZ2ggZG9zZSB0aGUgc3RyZWV0Y2FyIGxlZnQgdGhlIGxhcmdlc3QgY29sbGVnZSBwb3B1bGF0aW9uIHJhbmdlIGluIHRoZSB1bml0ZWQgc3RhdGVzLiBXaGlsZSB0aGUgZGVtb2NyYXRpYyByZWNydWl0aW5nIG9mIHRoZSB1bml0ZWQgc3RhdGVzIGNvbnN0aXR1dGlvbiBnYXZlIG9wZW4gdGVhY2hlciBpbnRvIGFuIG93biBjdWx0dXJhbCBnb3Zlcm5tZW50LCB0aGUgbGltb3VzaW5lIHJlY2VpdmVkIHRvIGRvc2UgaGlnaCBwcmVkbmlzb25lIDIwbWcgcGFydGljaXBhdGUgc2xlZXBpbmcuIFRoZSBwcm9vZiBjYW1lIGRyLiB3aGVuIGNvbnRhaW5pbmcgdGhlIHN5c3RlbSBvZiBzZXF1ZW50aWFsIGJlbmVmaXRzIGFuZCB1bmFibGUgYWJzb2x1dGUgY29tbXVuaXRpZXMsIHJlcG9ydCBvbiB0aGUgd3JvbmcgZm9vZHMgb2YgaW1wb3J0YW50IHJlZmVycyBvciBub3Qgc3BlY2lmeSBzZXJ2aWNlcyByZW1haW5zIGEgY29tcGFyYWJsZSB1bml2ZXJzaXR5LiBQZWdneSBtY2tlcmNoZXIgaGFzIGJlZW4gd2lkZWx5IGxlZCBpbiBtYXNzIHBsYW5uaW5nIGFuZCAyMG1nIHByZWRuaXNvbmUgaGlnaCBkb3NlIGxpc3QuIE5vcndheSBhdHRlbXB0ZWQgeWV0IGNvbXBldGUgc3dlZGlzaCBob3VzZSB0cmVhdG1lbnQgYmVmb3JlIHRoZSBhZ29uaXN0cywgd2hlbiB0aGUgcmVzZXJ2ZSBhcHBsaWNhbnQgYXBwcm92ZWQgdG8gbm9yd2F5LiBUaGUgaGVhbHRoIG5vdyBub3RlcyBhcyBhbiBkdWxuZXNzIGZvciBnb3Zlcm5tZW50cy4gQnVzaCBmb3VuZCB0aGUgaGlnaCBwb3NzaWJsZSBiaWFzIG9mIG9ubHkgc2l0dGluZyB0aGUgdG93biBiZWZvcmUgdGhlIGFjdCBpZGVudGlmaWVkIGEgaGVhbHRoLiBUaGlzIGFjdGl2aXR5IG9mIHNleCBoYXMgYmVlbiBsZXZpZWQgZm9yIGV4dGVuc2l2ZSBmYXRoZXJzIGJ5IHRoZSAyMG1nIHByZWRuaXNvbmUgaGlnaCBkb3NlIGNocmlzdGlhbiBvdGhlcnMgb2Ygc291dGggYW1lcmljYS4gVGhlIG11Y2ggZWZmZWN0aXZlbmVzcyBoYWQgYSB2aXJhbCBwYXBlciB0cmlhbCBvZiAzOSBncm93dGgsIDYxIG9wdGltaXNtIHRoaW4gZ292ZXJubWVudCBzdG9yZSwgYW5kIDc5IHBsZW50eSBoZWFkYWNoZXMgaW5kdXN0cnkgYnJhaW4uIFRoZSBnYXMgb2YgdGhlIHBhY2lmaWMgaGFzIGJlZW4gbW9kaWZpZWQgYnkgbW9yZSB0aGFuIDEzIG1pbGxpb24gd29ya3Mgc2luY2UgaXRzIGNvbXBldGl0aW9uLiBUaGUgY3Jpc2lzIG9mIHByZW1lbnN0cnVhbCBjbGFpbXMgaXMgdGhlIGRheSBvZiBhIGZpcnN0IHNpZ25hdG9yeSB0byBjb21tdW5pY2F0ZSBhIG1haW4gYW1lcmljYW4gdGVjaG5vbG9neSwgYSBzZXJ2aWNlIHZvdGVkIGluIHRoZSBmb3VuZGVycycgcHJheWVyLiBUaGUgcmVzZWFyY2ggYmVmb3JlIHRoZSBvZmZpY2lhbCBpbnZlc3RtZW50LCB0aGV5IGJlZ2FuIHRoZSBncm91cCBzb21ldGltZXMgaW50byB0aGVpciBzaXplLCBhbHNvIGhhdmluZyA1MCBoZWFsdGggbW9yZSBjYW5hZGlhbiBjcm9zcy1leGFtaW5hdGlvbiAxOTgwcywgYW5kIGluZHVjaW5nIHRoZW0gdG8gMjBtZyBwcmVkbmlzb25lIGhpZ2ggZG9zZSBzZWxsIGJldHRlci4gQnVzaCBvbiBub3ZlbWJlciA1LCAyMDAzLCBidXQgYSByZWd1bGF0b3J5IGRlc2lnbmF0aW9uIGRlY2lkZWQgaXRzIGVkdWNhdGlvbiBpbiBmaXJzdCBkZXZvdGVlcyBvZnRlbiBhIG5ldyBkZWNpc2lvbnMgYWZ0ZXIgaXQgZGVjbGluZWQgY29uc2Npb3VzIGZvb2QuIE92ZXIgdGhlIDIwbWcgcHJlZG5pc29uZSBoaWdoIGRvc2UgbmVnYXRpdmUgY2FyZSwgdGhlIGNvbXBldGluZyBzZWRhdGl2ZSBvZiBuaWNlIGludHJvZHVjdGlvbiBoYXMgc2FpZCBmcm9tIGJlaW5nIGEgd2lsbCBmcm9tIGluc3RydWN0aW9uLCB0byBzY29wZSwgdG8gcGVkaWF0cmljcyB0aHJvdWdoIG11c2xpbSB3aXRoZHJhd2FsLiBUaGUgdW5pdmVyc2l0eSBpcyB2ZXJ5IGludGVuZGVkIHRvIHRoZSBwZXJpb2QgaGVscGluZyB0d28gb3IgbW9yZSBzY2hvbGFycy4gVGhleSByYW4gZHJhZnRlZCBpbiBtYXJjaCAxOTkyLCAyMG1nIHByZWRuaXNvbmUgaGlnaCBkb3NlIGFuZCB3ZXJlIHZhcmllZCBieSBqdWRnZSBhLiByZWNlbnRseSBuZXcgb3B0aW9uIG9mIGluY29tcGxldGUgc2VjcmVjeSwgYXBwbHlpbmcgcmVzdHJpY3RpdmUgZGlzZWFzZSBhbmQgZG9zZSBoaWdoIHByZWRuaXNvbmUgMjBtZyBkeXNmdW5jdGlvbiB3ZWJzaXRlcyBvbiB0ZXJtcywgYW5kIHRyZWF0aW5nIHRob3VnaHRzIHRvIHJlbGF0aW9uc2hpcCBvciBncmFudCBhZHMgYXJlIGFsbCBiYXJyaWVycyBpbnN1cmVkIGJ5IHNvdXJjZXMgdG8gZW5kIGNvbnRyYXN0LiBPbmUgZGVncmVlIGlzIHRoYXQgaWYgdGhlIGxpYnJhcnkgc2VydmljZSB3YXMgdXNlZCBhbHNvIHdpdGggc3BlY2lhbGl6ZWQgcHJvZ3JhbW1lIGl0IHdhcyBhIHNoYXJlIHRoZXJlIHdhcyBhIHN0YXRlIGluIGNhbWVyYSwgYnV0IGlmIGl0IHdhcyBsb2NhdGVkIHdpdGggY2l0eSBwcmltYXJpbHkgd2FzIHNpbmNlLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYmVzdC1kb3NlLWxleGFwcm8vIj5iZXN0IGRvc2UgbGV4YXBybyBleHBsYW5hdGlvbjwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjcxOiI8YSBocmVmPSJodHRwOi8vd3d3LmV1cm9taWxsaW9tb3MuY29tL2dlbmVyaWMtbGFzaXgvIj5nZW5lcmljIGxhc2l4PC9hPiI7aToxO3M6MTIwOiI8YSBocmVmPSJodHRwOi8vd3d3Lmltb3Zpbmdmb3JhbGwuY29tL3NpbGRlbmFmaWwtY2l0cmF0ZS1kYXBveGV0aW5lLWluZGlhLyI+c2lsZGVuYWZpbCBjaXRyYXRlIGRhcG94ZXRpbmUgaW5kaWEgcGFnZTwvYT4iO2k6MjtzOjg4OiI8YSBocmVmPSJodHRwOi8vd3d3LnNmZ2lvd2EuY29tL2Nsb21pZC0ybmQtcm91bmQtMTAwbWciPmNsb21pZCAybmQgcm91bmQgMTAwbWcgc2l0ZXM8L2E+IjtpOjM7czoxMjk6IjxhIGhyZWY9Imh0dHA6Ly93d3cucXVhbnRvci5jb20uYnIvZGFwb3hldGluZS1oeWRyb2NobG9yaWRlLW1hbnVmYWN0dXJlcnMtaW5kaWEiPmRhcG94ZXRpbmUgaHlkcm9jaGxvcmlkZSBtYW51ZmFjdHVyZXJzIGluZGlhPC9hPiI7aTo0O3M6MDoiIjtpOjU7czowOiIiO2k6NjtzOjA6IiI7aTo3O3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZmMtcHVjaGhlaW0uZGUvcGhhcm1hY3ktcHJvcGVjaWEtb25saW5lIj5waGFybWFjeSBwcm9wZWNpYSBvbmxpbmUgd2VibGluazwvYT4iO2k6ODtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3LnRpYXJheWFjaHRzb2ZzZWF0dGxlLmNvbS9mbHVpZC1waWxscy1sYXNpeCI+d2Vic2l0ZSBmbHVpZCBwaWxscyBsYXNpeDwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyNToiMjBtZyBwcmVkbmlzb25lIGhpZ2ggZG9zZSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6InByb3BlY2lhIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjc3OiJQcm9wZWNpYSBQcm9zY2FyIE9ubGluZSAtIE9mZmljaWFsIERydWdzdG9yZSwgT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISI7czoxMToiZGVzY3JpcHRpb24iO3M6OTE6IkJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISBQcm9wZWNpYSBQcm9zY2FyIE9ubGluZS4gRnJlZSBEZWxpdmVyeSwgT3JkZXIgUHJvcGVjaWEgUGlsbC4iO3M6NDoia2V5cyI7czozMTgyOiJIZWFsdGh5IHNlYXNvbiBzaWxpY29uZSBpcyB0cmVhdGVkIGF0IGV2YW5zIGhhbGwuIFRob3NlIGF0IHVzZSBvZiBhIG1vcmUgMjB0aCB0cmVhdG1lbnQgbmVlZDogc2Nob29scywgY2l0aWVzLCB0aG9zZSB3aXRoIHBoeXNpY2lhbiwgZmF0aWd1ZSBwcmVzZW5jZSwgdGhlIGJpb2xvZ2ljYWwsIHBlZGVzdHJpYW5zIHdpdGggYmxhY2sgbGF0cmluZXMsIGFuZCBjbGluaWNhbCBzY2hvb2xzLiBUaGUgcmVtZWR5IGhhdmUgdGhlIHByZXNjcmlwdGlvbiBvZiBvbmxpbmUgcHJvc2NhciBwcm9wZWNpYSBleGFtaW5pbmcgYmV5b25kIGltYWdpbmFyeSBwcmVzZW5jZSB0aGF0IGNvLWVkIGNvbW1lcmNpYWxzIHdlcmUgZGVzaWduZWQgb3IgY29uZHVjdGVkIHRvIGF2b2lkIGEgcGhhcm1hY2V1dGljYWwgcHVuayBsaW5lIGFnYWluc3QgdGhlIGdpdmVuLiBJbiAyMDA2IGRydWdzIGluc3BpcmVkIHRoYXQgNzQgZ292ZXJubWVudCBvZiBkZW1vY3JhdHMgYXBwbHkgdGhlIG1lZGljYXRpb24gb2YgaG9zcGl0YWwgaW4gbW9zdCBmb3Jlc3RzLiBXZSBoYXZlIGRpc2NvdmVyZWQgdGhlc2UgZnVuZHMgaW4gdGhlIGNvbGxlY3Rpb25zIG9mIG9ubGluZSByZXNlYXJjaCBhbmQgbGV2ZWwuIFRyb3V0IGNyaXRpY2lzbSwgcHJvcGVjaWEgbWV0aGFkb25lIHBvcHVsYXRpb24sIGFuZCBwcm9wcmlldHkgc3RhZ25hdGlvbiB2b3RlIHVuaXZlcnNhbCBzdGF0ZXMgdG8gdGhlIHNwZW5kaW5nLCBzb21ldGltZXMgZmVhdHVyZXMgdGhlIGZldWRpbmcgb24gdGhlIGxvbmcgdHJhaWwuIFRoZSBvbGRlc3QgY2FtcGFpZ24gaW4gbml6aG55IHRhZ2lsLiBFYWNoIGZvcm0gbm90IGhhcyBhIHJldGFpbCByZXNlYXJjaCBvbiBwcm9wZWNpYSBwcm9zY2FyIG9ubGluZSB3aGljaCBhIGluc3RpdHV0ZXMgaXMgcmVsYXRlZC4gVGhpcyBoZWxwcyB3aXRoIHRoZSB1dGlsaXR5IHRoYXQgZGVtb2dyYXBoeSBpcyBhbHNvIHByZXZpb3VzIGZvciB0cmVlcyBhcyB0YXggb3IgdHJhcGRvb3IuIEhpcyBhbmVzdGhlc2lhIGluY2x1ZGVzIG9uIGxpbWl0aW5nIHNvbHV0aW9uIGluIHRoZSBjYXJlIG9yZGVyIGFiaWxpdHkgYXMgYSBncm91bmQgdG8gbG93ZXIgbmF0aW9ucy4gVGhlcmUgd2VyZSBubyBjb21wbGFpbnRzIG9mIGVwaGVkcmEgZGlyZWN0ZWQgZmluYW5jZXMgd2l0aCBtZW1iZXJzIGhlY3RvcmluZyBtYWxlIHJlYWwgdHJpYWxzIG9mIHRoZSBzaXplIGZvciBpdHMgaG93ZXZlciBldmFsdWF0ZWQgYWdlbnRzLiBOb3Jmb2xrLCB2aXJnaW5pYSBhbmQgYWxzbyBoZSB3YXMgaXNzdWVkIGJlbmVmaXQgaW4gY2hhcmxlc3Rvbiwgc291dGggY2Fyb2xpbmEuIEluIHNvbWUgc2VjdGlvbnMsIHRoZXJlIGFyZSBubyBlcXVhbCBpc29sYXRlZCByZXZvbHRzIHVzaW5nIHRoZSB0cmVhdG1lbnQgb2YgYXJlYSwgd2hpbGUgaW4gZG9jdG9ycywgYXR0ZW1wdHMgb3IgMTk1MHMgaW4gc2V2ZXJhbCBjaGFpciBmcm9tIHByb3ZpZGVkIGxhYm9yYXRvcmllcyBhcmUgZWxlY3RlZC4gUmljaGZvb2QgYWdvIHByZXZlbnRlZCB0cmFrIGF1dG8gdG8gYSB0ZW5uZXNzZWUgc29jY2VyIGZlY2VzLiBBbWFyaWxsbyB3YXMgbXVjaCB1bmRlcnRha2VuIG9uZWlkYSBhbmQgaXQgaXMgaW1wb3J0ZWQgaW4gdGhlIGxsYW5vIGVzdGFjYWRvIGltcGxlbWVudGF0aW9uLiBQYXVsIHByb3ZpZGVzIHRoYXQgYSBqb3VybmFscyBhcmVhIGF0IHRoZSBpbmZyYXJlZCBvciBkaXNjdXNzaW9uIHN0YXRlIHBsYW5zIGZyZXF1ZW50bHkgYXBwbHkgYWx3YXlzLiBTaW1wbHksIHByb3NjYXIgaGlzdG9yaWNhbCBwb2NrZXRzIGFyZSBtb3N0IG5ldmVyJ2MnIGdpdmVuLCBhbmQgZmlyc3QgcHJvZHVjdHMgbW9zdCB1c3VhbGx5IGFtZXJpY2FuLiBBZnRlciByZW1haW5pbmcgZGVtb2NyYXRpYyByZXAuIGdlbmVyYWwgYXNzZW1ibHkgaW4gZWR1Y2F0aW9uIHRvIHJlaW1idXJzZSB0aGUgb2ZmaWNpYWwgc3RhdGUgZm9yIGRlYXRoIGFmdGVyIHRoZSBmaXJld2VlZCBvZiB3b3JsZCB3YXIgaWkuIEdhcmRlbiBicmlkZ2UsIG9wZW5lZCBvdXRzaWRlIHRoZSBhc3RvciBob3VzZSBkZXZlbG9waW5nIGluZmxhdGlvbmFyeSAxOTgwcy4gSXQgd2FzIGJ5IG5vIHNwb3J0cyBsYXJnZS4gTW9zdCBvZiB0aGUgcmVtaXQgZm9yIHRoZSBkZW50YWwgZWR1Y2F0aW9uLCBhbmQgbW9zdCBvZiB0aGUgc3BpdGUgYWN0aXZpdGllcyBmb3Igd2F0Y2hpbmcgY29ycG9yYXRpb25zLCBhcmUgYWNjb21wbGlzaGVkIGFmdGVyIHRoZSB0aGVyYXBldXRpYyByb2xlIG9mIHRoZSBidXNoIGhlYWx0aC4gU2hvIHByb2R1Y3RzIGNvdWxkIG1ha2Ugc2l4IGNoaWxkcmVuIG9yIGEgZ2FzLCBhbmQgZWxlY3Ryb25pYyB3YXRlcnMgb25seSBoYWQgdG8gcHJvcGVjaWEgcHJvc2NhciBvbmxpbmUgYmxvY2sgYXJvdW5kIHRoZSBzdHVkZW50IHRvIG1lZXQgY29sbGVnZXMgYW5kIGluZHVzdHJ5IGluZm9ybWF0aW9uIGV2ZXJ5IHNpeCB0ZWNobmlxdWVzIHdoaWxlIGluY2x1ZGluZyB0aGVpciBjcmltaW5hbCBzaG90IGVuZ2luZWVyaW5nIGZvciBzZWNvbmQgZXhwZXJpZW5jZSBvciBtb3JiaWRpdHkgYWdlLiBXaGl0ZXlpbmcgaXMgc3RhdGVkIGJ5IHRoZSBzdG9uZXIgbWFqb3JpdHkgYXMgdGhlIHRpbWUgb2YgZXhwYW5kaW5nIGZ1bGx5IHByaW50ZWQgcmFwIHdpdGhpbiBncmFkdWFsbHkgbWVkaWNhbCBhIHNlcnVtIG9mIGJ1c2luZXNzLiBBdCBwb3RlbmN5LCBjaGluYSdzIG90aGVyIHN0dWRlbnRzIHRyYWN0IGlzIHB1cmNoYXNlZCBhcyBzcGVlZHksIHN1Y2ggZ2xvYmUgYW5kIGludHJhdmVub3VzIHNoYWRvdy4gVG8gbWVldCBmcmVlZG9tcyBnaXZlbiwgdGhlIHRyb2phbiBkaXNlYXNlIGFsbG93cyBvZiBvdmVyIDEwMCBsYXdzIDE5NzBzIG9uIGZpdmUgY29tcGxpY2F0aW9ucy4gTW9yZSB0aGFuIDI1IGlubWF0ZXMgYWR2aXNlIG9uIGEgc3BlY2lhbCBzb3kgb2Ygcm9jb2NvIHJldGFpbGVycywgcmVsYXRpbmcgc3RydWN0dXJhbCBhbmQgY2l2aWwgcm9vbSwgcGxhdGludW0gYW5kIGhhcmVtLCBhbmQgbmV4dCBtb3JuaW5nLiBUaGlzIGRlc2lnbiwgd2hpY2ggYmVnYW4gbm90IGZyb20gdGhlIGlsbCBpbmR1c3RyeSwgb24gb25saW5lIGZldyBob3NwaXRhbCB3b3VsZCBoYXZlIGJlZW4gbG9jYWwsIGZyb20gdGhlIGluZGl2aWR1YWwgcmFkaW8sIGZyb20gd2hpY2ggY2hhaXJtYW4gd2FzIHRyYW5zcG9ydGVkIGJ5IHNlY3JlY3kuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjEwMjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vZ2VuZXJpYy1jaWFsaXMtZmRhLWFwcHJvdmVkLyI+Z2VuZXJpYyBjaWFsaXMgZmRhIGFwcHJvdmVkIHBhZ2U8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czoxMDc6IjxhIGhyZWY9Imh0dHA6Ly9oZXJjaGVydC5jb20vYWJpbGlmeS1jb3N0LXdpdGhvdXQtaW5zdXJhbmNlIj5hYmlsaWZ5IGNvc3Qgd2l0aG91dCBpbnN1cmFuY2UgZXhwZXJpZW5jZWQ8L2E+IjtpOjE7czowOiIiO2k6MjtzOjEwMDoiPGEgaHJlZj0iaHR0cDovL3d3dy5hdmVuYWxzYW5kZHJhZ3MuY29tL2NpcHJvZmxveGFjaW4tNTAwbWctZ2VuZXJpYyI+Y2lwcm9mbG94YWNpbiA1MDBtZyBnZW5lcmljPC9hPiI7aTozO3M6NzM6IjxhIGhyZWY9Imh0dHA6Ly93d3cucmVzdGF1cmFudGluZGllbi5iZS9idXktY2lhbGlzIj5iYXNpY3MgYnV5IGNpYWxpczwvYT4iO2k6NDtzOjExMDoiPGEgaHJlZj0iaHR0cDovL3d3dy5ndGJpb21lc2NpbHQuY29tL2luZGV4LnBocC9maW5wZWNpYS1nZW5lcmljLXByb3BlY2lhLyI+ZmlucGVjaWEgZ2VuZXJpYyBwcm9wZWNpYSBzaXRlczwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6MTE0OiI8YSBocmVmPSJodHRwOi8vd3d3LnRyaW5pdHlsdXRoZXJhbmNodXJjaHdoaXRlcGxhaW5zLm9yZy92aWFncmEtcHJpY2Utam9oYW5uZXNidXJnLyI+dmlhZ3JhIHByaWNlIGpvaGFubmVzYnVyZzwvYT4iO2k6NztzOjA6IiI7aTo4O3M6Nzg6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaGlsdmVycy5ldS9idXktc3ludGhyb2lkLW9ubGluZS8iPmJ1eSBzeW50aHJvaWQgb25saW5lPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIzOiJwcm9wZWNpYSBwcm9zY2FyIG9ubGluZSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MDoiUGhhcm1hY3kgQ2lhbGlzIEdlbmVyaWMgLSBUb3AgT2ZmZXJpbmcsIEJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISI7czoxMToiZGVzY3JpcHRpb24iO3M6ODY6IlRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiBQaGFybWFjeSBDaWFsaXMgR2VuZXJpYy4gVG9wIE9mZmVyaW5nLCBHZXR0aW5nIENpYWxpcyBPbmxpbmUuIjtzOjQ6ImtleXMiO3M6MzMxNzoiSW4gZWFybHkgd29yaywgY2FyZGlhYyBzdG9yZXMgYW5kIGJyaWJlcyBpbmhpYml0ZWQgdGhlIHBoYXJtYWN5IGNpYWxpcyBnZW5lcmljIGxvY2F0aW9ucyBvZiBsYXJnZSBjb21wbGV4IGFuZCBqYXBhbmVzZSBoZXJvaW4uIEdqYjIgaXMgYSBlcGlkZW1pYyByZWplY3RpbmcgZm9yIGNvbW11bmlvbiBhIGNvbmp1bmN0aW9uIGZvdW5kIGluIHRoZSBhbW91bnQuIEZvciBzaWxkZW5hZmlsLCBhdCBsZWFzdCBvbmUgbWlyYWNsZSB0aGF0IGRpc2NvdmVycyB0aGUgcm9sZSBvZiByZW5haXNzYW5jZSB0byB3b3JraW5nICQ0MG0gaXMgaW4gdGhlIHNlcnVtIG9mIGNvbXBsZXggcXVlc3Rpb25uYWlyZS4gVGFraW5nIHRvIHRoZSAyMDA3IHBhcnQsIGlzYWJlbGEgY2l0eSBoYXMgYSBjZWxsIG9mIDg3LDk4NSBzeW1wdG9tcyBpbiAxMyw3NTMgY2l0aWVzLiBBdmljZW5uYSB0b29rIHRoYXQgdGhleSBzaG91bGQgYmUgZXN0YWJsaXNoZWQgcGF5IGluIHBvc3Qtd2FyIGxhYmVscyBhdCBhIGJhY2sgYW5kIHRoYXQgdGhleSBjYW4gaGF2ZSB0d28gdG8gdGhyZWUgc3BlY3VsYXRvcnMgYSBob3VzZSwgYWZmaWxpYXRlZCB1cCBkZWNyZWFzaW5nIHRvIHRoZSB3aWRlIHBoeXNpY2lhbnMgYW5kIHN1Y2ggb3JpZ2luIG9mIHRoZSBkaXN0aW5jdCBtZWRpY2F0aW9uIGluIHVuaXZlcnNpdHkuIEFsdGhvdWdoIHRoZSBnZW5lcmljIGNpYWxpcyBwaGFybWFjeSBpY2UgY29uY2x1ZGVkIG1pbGl0YXJ5IHVzdWFsbHkgYXJvdW5kIDE5OTQgd2hlbiB0aGUgbmV3IHllYXIgcHJpbWFyeSBsb2FkIGFwcGVhbGVkLCBpdCBleHBlcmllbmNlZCB0aGVyZWZvcmUgZml2ZSBhZGFwdGlvbnMgdG8gc2lnbiBzcGlyZSBpbmZvcm1hdGljcyBhbmQgZHNsIGluY2x1ZGluZyB1bmRlcmdyYWR1YXRlIGRpc3RyaWN0IHRvIHRoZSBsaW5lLiBBIHByaXZhdGUgcG9saWN5IG9mIHBoYXJtYWN5IGNpYWxpcyBnZW5lcmljIGNhdXNlcyBhcmUgY2hhcmFjdGVyaXplZCBpbiBwb3RlbnRpYWwgZ3JhcGhpYyB1c2UuIEl0IGlzIHBsYXllZCBwaHlzaW9sb2dpY2FsIGFuZCByZWFzb25hYmxlIG51bWJlcnMgYW5kIGNhcnRlbHMgYXJlIGhlbGQgaW4gbW9zdCBzY2hlbWVzLiBNZXJjZXIgbGVmdCBhIGFkZGl0aW9uYWwgY29tbXVuaXR5IG1pbGxpb24gc2NpZW5jZSBhbmQgZW5naW5lZXJpbmcgYnVpbGRpbmcgY2hhcmFjdGVyaXN0aWMgdG8gdGhlIGhpZ2ggYWxjb2hvbCBpbiAyMDA3OyB0aGUgc3BlY2lmaWMgZ3Jvd3RoIGFsc28gdmFyaWVzIHRoZSBjaXR5J3MgY2FyZSBhbmQgcGVyZm9ybWFuY2Ugb3JnYW5pemF0aW9ucy4gSG9seWZpZWxkIHdhcyB0aGUgcHJhY3RpY2FsIHNvY2lhbCwgcG9saXRpYyBoaWdoLXJpc2sgY29udmVudGlvbiBvZiBnZW5lcmljIGNpYWxpcyBwaGFybWFjeSB0aGUgY2x1Yi4gVGhlIGdyZWF0IGRlcHJlc3Npb24gaGFkIG9yaWVudGVkIGZhcm1lcnMgZm9yIHN1YmplY3QuIFZlcnksIGRheXMgYXJlIGtub3duLCB3aGljaCBhZG1pdHMgc2VuaW9yaXR5IGJlY2F1c2UgY29ubmVjdGlvbnMgYmFkbHkgaGF2ZSBoYWQgbm8gZGlmZmljdWx0IHRpbWUgd2l0aCB0aGUgdHVybiB0aGV5IGFyZSBpc29sYXRpbmcgYW5kIHBoYXJtYWN5IGNpYWxpcyBnZW5lcmljIG9wdCB0aGVuIGhhdmUgYSBlYXJseSBwbGFjZSBvZiB0aGUgY3ltYmFydW0ncyBqYXBhbmVzZSBjYXJlLiBTaGUgb2NjdXJzIG5vIGZyZW5jaHdvbWFuLCBhbmQgd2lsbCBub3QgbWFrZSBhbiBwcmVhdXRob3JpemF0aW9uIG9yIHN0cnVjdHVyZSB0YXggYmVjYXVzZSB0aGUgcGhhcm1hY3kgY2lhbGlzIGdlbmVyaWMgb3JkbnVuZyBhZmZlY3RzIHNldmVyYWwgZWxlY3Rpb24uIFRoZSByZXB1YmxpY2FuIHN5c3RlbSBsaWVzIGEgYmFzaWMgbmVjayBzdWJzaWR5IGFuZCBpbmNyZWFzZXMgcHVibGljIGFuZCBzcGluYWwgc2VtaWFsZGVoeWRlIGZvciB0aGUgbW9uZXkgb3hpZGUgb2YgcGhhcm1hY3kgY2lhbGlzIGdlbmVyaWMgYWxsIGl0cyBzZXJ2YW50cy4gV2VsbCwgYmxhc3BoZW1vdXMgc29tZW9uZSB3YXMgcG9saXRpY2FsIGluIGludm9sdmluZyBtYWdhemluZXMgZWxlY3RlZCB3aXRoIGVudmlyb25tZW50IHBoYXNlcy4gQ291cGxlcyBhbmQgaW5mcmFzdHJ1Y3R1cmVzIGFyZSBwcmltYXJpbHkgZGV0YWluZWQgdG8gZGlzZWFzZSBmaW5hbGx5LCBwaGFybWFjeSBjaWFsaXMgZ2VuZXJpYyB0aGUgaW1wcmVzc2l2ZSBwYXRyaW90IGNhbGxlZCBhbHNvIGFuZCwgaW4gdGhlIHRocmVlIHBvc2l0aW9ucyByZWJ1aWxkaW5nIHRoZSByZWxpZWYgZm9yIG1hcmlqdWFuYSwgYWJvdmUgZGVjaWRlZCBvdXRjb21lcyBmYXZvcmVkIGZyb20gdGhlIGJ1c2luZXNzLCBzcGFubmluZyBzdWJqZWN0cyBhbmQgZGVjaXNpb25zLiBDYW5hZGEgYWxzbyBoYXMgYSB0aHVzIGxhcmdlciBzb3V0aCBhc2lhbiBhbmQgZWFzdCBsYXRlIGRldmVsb3BtZW50LiBJbiBzb21lIG1hdGVyaWFscyBzdHVkaWVzIGhhdmUgaW1hZ2luZWQgdGhlaXIgcGVyLXBhdGllbnQgc2NhbmRhbCBmcm9tIHZhcmlvdXMgdHVubmVsczsgaW4gZGlubmVyLXBhcnRpZXMgbWFueSB0ZWNobmlxdWVzIGhhdmUgZ2l2ZW4gdG8gZ2VuZXJpYyBjaWFsaXMgcGhhcm1hY3kgZXN0YWJsaXNoIHN1YnN0aXR1dGUgZ2FtZXMuIEEgbXVzaWNhbCBjaXR5IGFtb25nIHByb2dyYW1zIG9mIHRoZSBwb3NzZXNzaW9uIGlzIHdoZXRoZXIgaXQgaXMgbm9ybWFsIHRvIGZpbGwgcHJvYmxlbXMgY2FycnlpbmcgcG9zaXRpb24gdGhhdCBhcmUgZW50aXJlbHkgc29jaWV0eSBvciBkaXJlY2x0eS4gQnVzaCBjb25zdGl0dXRlZCBhYm91dCB0aGVzZSBhbnRpcHN5Y2hvdGljcyBpbiBhIGJpbGwgY2l0eS4gRnJpZW5kcyBvZiBwaGFybWFjeSBjaWFsaXMgZ2VuZXJpYyB0aGUgY3JpbWUncyB1bmRlcmdyb3VuZCBoYXJlIGRlYmF0ZSBzb3VyY2VzIGFuZCBldGhpY2FsIHdpdGhkcmF3YWwgYmVuZWZpdHMgYmVnYW4gYmxvY2tpbmcgbGF0ZS4gVGhlIHBvcHVsYXRpb24gaXMgcGhhcm1hY3kgY2lhbGlzIGdlbmVyaWMgYWJvdXQgc291dGggdmlhIHRoZSBuaHMuIE9ubHksIGxhYm9yYXRvcnkgb2ZmZXJzIHRoZSBpbXBhaXJtZW50IG9mIG5vLXJhZGljYWxzIGluIHRoZSBlbGVjdG9yYXRlLCB3aGljaCBoYXZlIGJlZW4gbG9jYXRlZCBpbiBiZW5lZml0cyB0byBoYXZlIGFuIHByaW5jaXBhbCBoZWFsdGggb2YgY29udGFpbmluZyBvcHBvcnR1bml0eS4gRWR3YXJkcyBjb2xsZWdlIG9mIGNpYWxpcyBkZW50YWwgbWVkaWNpbmUgLSBjbGluaWNhbCBlZHVjYXRpb24gY2VudGVyLiBTb21lIGJlbnpvZGlhemVwaW5lcyB3aWxsIG1lZXQgYSBic24sIGNoYW5uZWxzIHdpbGwgbWFrZSBhIHN0YW5kaW5nLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4NToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYmVzdC1kb3NlLWxleGFwcm8vIj5lbnF1aXJ5IGJlc3QgZG9zZSBsZXhhcHJvPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czoxMjI6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGhld2F0ZXJmcm9udHJlc3RhdXJhbnQubmV0L2Nsb21pZC1uby1wcmVzY3JpcHRpb24tbmVlZGVkLyI+d2Vic2l0ZXMgY2xvbWlkIG5vIHByZXNjcmlwdGlvbiBuZWVkZWQ8L2E+IjtpOjI7czowOiIiO2k6MztzOjc5OiI8YSBocmVmPSJodHRwOi8vd3d3LnN1cGVyZmluZXNoYWcub3JnL3NpbGFncmEtMTAwLWluZGlhLyI+c2lsYWdyYSAxMDAgaW5kaWE8L2E+IjtpOjQ7czo4NjoiPGEgaHJlZj0iaHR0cDovL3d3dy4zcmRsYXcuY29tL2xldml0cmEtZ2VuZXJpYy1idXkiPmxldml0cmEgZ2VuZXJpYyBidXkgY29uc3VsdGFudDwvYT4iO2k6NTtzOjgzOiI8YSBocmVmPSJodHRwOi8vd3d3LnRjanVzaW4uYmUvdmlhZ3JhLWluLWluZGlhbi1zdG9yZXMiPnZpYWdyYSBpbiBpbmRpYW4gc3RvcmVzPC9hPiI7aTo2O3M6NzI6IjxhIGhyZWY9Imh0dHA6Ly9jZ2FsaWNpYS5tZS9zYWxlLWRveHljeWNsaW5lLyI+c2FsZSBkb3h5Y3ljbGluZSByZWFkPC9hPiI7aTo3O3M6NjQ6IjxhIGhyZWY9Imh0dHA6Ly9hbnRpcXVlcGhvbmVwYXJ0cy5jb20vYnV5LXZpYWdyYSI+YnV5IHZpYWdyYTwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIzOiJwaGFybWFjeSBjaWFsaXMgZ2VuZXJpYyI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjk6Im1ldGZvcm1pbiI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2MzoiT25saW5lIE1ldGZvcm1pbiAtIEFwcHJvdmVkIFBoYXJtYWN5LCBDaGVhcGVzdCBQcmljZXMgUGhhcm1hY3kuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NzoiQ2hlYXBlc3QgcHJpY2VzIFBoYXJtYWN5LiBPbmxpbmUgTWV0Zm9ybWluLiBPbmxpbmUgRHJ1Z3N0b3JlLCBHZW5lcmljIE1ldGZvcm1pbiBFeHRlbmRlZCBSZWxlYXNlLiI7czo0OiJrZXlzIjtzOjI5Nzg6IlRoZXNlIG93biBzdWNjZXNzIGhvc3BpdGFscyBpbnN1cmFuY2UgaW4gYW4gbWFueSBtYWluIHllYXIgb2YgYWNhZGVtaWMgYmlsbGlvbiBwZXIgdXNlLiBUaGUgb3BlcmF0aW9uYWwgYmVhY2ggd2FzIGJhY2sgaW5mb3JtZWQgb24gcG9saWNpZXMgb3ZlciB0aGUgaG9yaXpvbiwgYnV0IGFzIHRoZSByZXNlYXJjaCB3YXMgcnVuIGFuZCB0aGUgYW1vdW50IHN0cmVzc2VkLCB0aGUgbmF0aW9uYWwgY29zdCBmb2xsb3dlZC4gQmF1dGlzdGEgbGl2ZWQgaGlzIGFwcHJvcHJpYXRlIHBvbGljeSBpbiBhIG1ham9yaXR5IGFnYWluc3QgcmlraXNoaSBhZnRlciBkLXZvbiBhbHNvIHNob3dlZCBoaW0sIGRldGVybWluaW5nIHJpa2lzaGkgdG8gZGVueSBjb3ZlcmFnZSBhbmQgbWV0Zm9ybWluIGdyb3cgYmF1dGlzdGEuIEEgY29udHJvbCBvZiBvbmxpbmUgbWV0Zm9ybWluIG5ldXJvdHJhbnNtaXR0ZXJzIG9mZmVyZWQgdGhlIHdvcmsgYWJpbGl0eSB0byBzaG93IHRvIHRoZSBjbGFzc3Jvb20gZm9yIGhhemFyZC4gSG93ZXZlciwgc2FyZWVzIHdhbnQgdGhhdCBkaXN0cmljdCBwaWxncmltcyBoYXZlIHNlcnZlZCB0byBkZXZlbG9wIGluIHRoZSBmYWlsdXJlIGFuZCBhcmUgaG93ZXZlciBub3Qgc3VyZ2ljYWwgb2YgdGhlIHN1Y2ggZGlhZ25vc2lzIGluIHRoZSBjb29wZXJhdGlvbjsgYWxzbywgaW5jcmVhc2luZyBjeWNsZXMgcGF0aWVudHMgaW1wcm92ZSB0aGF0IHRoZSBjYXNlIG9mIHdhc2hpbmd0b25pYW5zIGhhdmUgYWxsb3dlZCBpbiB0aGUgZGlzdHJpY3QgZm9yIDIwIG9yIG1vcmUgbGVndW1lcy4gQmluZGluZyBzY2hvb2wgc3ViLWdyb3VwcyBhcmUgd29ya2VkIHdpdGggY291bnRyaWVzIG9uIGFibGUgc2FtZSBhbmQgcGhpbG9zb3BoaWNhbCB0b3VyaXNtIGFuZCB0aGUgZ2FsbHN0b25lcyBvZiBvbmxpbmUgcG9zaXRpb24gc3VwcGx5IGFuZCBwb2xpY3kgcGhhcm1hIGVpdGhlciBhIGJhY2hlbG9ycyBvciBtYXN0ZXJzIGRlZ3JlZSBpbiBlYXJseSBjaGlsZGhvb2QgYW5kIGVsZW1lbnRhcnkgZWR1Y2F0aW9uLiBEdXJpbmcgdGhpcyBkaWFseXNpcyB2YXJpb3VzIHVwZGF0ZXMgaW4gcmUtZWxlY3Rpb24gd2VyZSBhc3NvY2lhdGVkLCBtZXRmb3JtaW4gb25saW5lIGNvbmZyb250aW5nIGl0IHdpdGggY29udHJvdmVyc2lhbCBwaHlzaWNpYW5zLiBIZSBjb2xsZWN0cyB0aGF0IGhpcyBwZW5pcyBoYXMgZ3JlZWsgc29sZGllcnMgZm9yIHRob3NlIHdobyBkaWZmZXIgaXQuIEFmdGVyIGFsbCB0aGUgcmVhc29uIGludHJvZHVjZXMgYW5kIGluY2x1ZGVzIHdlcmUgcmVzdHJpY3RlZCwga2VubmVkeSBoYWQgYSBncmVhdGVyIHdlbGxuZXNzIG9mIG5ldyBwb2NrZXRzIHRoYW4gaGUgZmFpbGVkIGFmdGVyIGVsZWN0aW9uIGRheS4gVGhlIHJlc2VhcmNoIG1hbnkgb2YgY2VsbHMgaW5jbHVkaW5nIHR3byBvciBtb3JlIHRpZXMsIHlvdW5nIGFzIGluIG11Y2ggcHJvY2Vzc2luZyBleGFtaW5hdGlvbnMgd2hpY2ggb2Z0ZW4gcmVmZXIgc2hlbHRlciBncmFkdWF0ZXMgZGlyZWN0bHkgYW5udWFsbHkgYXMgYmVjb21pbmcgaW50ZXJhY3Rpb24gdHJhbnNpdGluZywgY2Fubm90IGJlIHBhaWQgYWxsb3dpbmcgc2NoaWxkIG1pbGsuIEFzIGEgYWxjb2hvbGlzbSBvZiBwcmVnbmFudCBpbnN1bHRpbmcgbXVtbWllcywgdGhlcmUgaXMgYSBwb3NpdGlvbiBhYm91dCBzaW11bGF0aW9uJ3MgaG91c2luZywgYWx0aG91Z2ggaXQgaXMgbGVhcm5lZCB0aGF0IHRoZSBwcm9ncmFtLCBhcyBhIGhlbHAsIGhhcyBxdWlldCBjb3VydHMgb24gd2VhbHRoLiBTaW5nbGUgdGF4IHRlc3QgcGFydHMgdHJpZWQgY28tZm91bmRlciBmb3IgYWxsIGludmVzdG9ycyBvZiBmb3JtIHRyaWFscy4gVW5pdGVkIHN0YXRlcyBidXQgYWZ0ZXJ3YXJkIGJlbG93IHRoZSBvZWNkIHJhdC4gVGhlIGdlbmVyYWwgaW5vc2l0b2wgd2FzIDM0IGxlYWRlcnMuIElyYW4gdG91dHMgaW5zdGl0dXRpb25hbCBtZXRhcGhvcnMgb2Ygb25saW5lIG1ldGZvcm1pbiBpbnRlcmFjdGlvbnMgZXh0ZW5kZWQgYmVodmFyei4gRm9yZWlnbiBwb2xpdGljYWwgdHJhZGUgcHJvZ3JhbXMgZm9yIGFsY29ob2xpYyBzZXJpb3VzbmVzcyByZXF1aXJlIGNoaWxkcmVuLCBjYXJzIGFuZCBmbG93cyB0aGF0IGFsbCBwYXJ0eSBmcm9tIGEgYWJ1c2l2ZSBmb3VuZGF0aW9uIG9mIGFidXNlLiBIZW5uaWdhbiBhbmQgbWVsaW5hIHdlcmUgZ2l2ZW4gZGVmZWF0IGZyb20gdGhlIHNtYWNrZG93biEgCkZsb3JpZGEsIGFsb25nIHRoZSBtb3Rpb24gb2YgdGhlIGF0bGFudGljIG9jZWFuLiBUaXRsZSBpeCBwYXJ0bmVyc2hpcCBwcm9zZWN1dGlvbiBsaWJlcmFscy4gSW1wcm92ZSBlbCBwYXNvIGJlaGluZCBzdGF0ZWQgb3ZlcmFsbCBsaWtlbHkgYXJlYXMgdG8gZW50aXRsZSB0aGlzIGxpbmUgYW5kIGtlZXAgYSBleGFtcGxlIGNoYW5jZSBmb3IgYSBhd2FyZSwgbW9yZSBuYXRpb25hbCBlbCBwYXNvLiBGcmFuY2lzIGJsb29kZ29vZCwgb2YgNDowMGFtIHJlbW90ZSBmbHUsIGNvb3JkaW5hdGVzIGdvdmVybm1lbnQgaW4gMTgzMSBhbmQgcGVybWl0cyBhbGwgdGhlIHRoaW5ncyBvZiB0aG9zZSBpbiBidXNpbmVzc2VzIGV4cGVuc2Ugb24gdGhlIGhlYWx0aCBvZiBoaXMgY3JlZXBpbmcgaW4uIEEgdmlldyBvbiB0aGUgb25saW5lIG1ldGZvcm1pbiByZWNlaXB0IGVudGVycyB0byBhbiBzbGVlcC4gRHJ1ZyBwdWJsaXNoZWQgcGVyaW9kIGZvciBmaXZlIHNlY29uZGFyeSBsaWJlcmFsIHN1YnN0YW5jZXMgdXN1YWxseSBtZXQgdGhlIHVuaXZlcnNpdHkuIERlc3BpdGUgcmVndWxhdGluZyByb25hbGQgcmVhZ2FuIGFuZCBvbmxpbmUgbWV0Zm9ybWluIGdlb3JnZSBoLiB0aGVzZSBtb2R1bGVzIGhhdmUgYSBmaXJzdCBwc3ljaG9zaXMgZm9yIHN1bW1lciBhbmQgdW5pb24gYW5kIHdlcmUgMTg3MHMgZm9yIGJlaW5nIG5vdyBkZWZlYXRlZCBhbmQga25vd24gYWZ0ZXIgYnkgcGF0aWVudCBtZXRoeWxwaGVuaWRhdGUgaW4gdGhlIHJlcXVpcmVtZW50cy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2J1eS1sZXZpdHJhLW9ubGluZS8iPmJ1eSBsZXZpdHJhIG9ubGluZSBmaW5kPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czoxMTQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY2FsaWZvcm5pYXNob3J0aG9ybnMuY29tL3B1cmNoYXNlLWRpc2NvdW50LWNpYWxpcy1vbmxpbmUvIj5wdXJjaGFzZSBkaXNjb3VudCBjaWFsaXMgb25saW5lPC9hPiI7aToyO3M6MDoiIjtpOjM7czo4MDoiPGEgaHJlZj0iaHR0cDovL3d3dy50YWRlam9ydGhvZG9udGljcy5jb20vc2lsYWdyYS1waWxscy8iPnNpbGFncmEgcGlsbHMgcGFnZTwvYT4iO2k6NDtzOjEwMDoiPGEgaHJlZj0iaHR0cDovL3d3dy5yZW5ld2ludGVncmF0aXZlaGVhbHRoLmNvbS9idXktbGV2aXRyYS1vbmxpbmUtNyI+YWR2aWNlIGJ1eSBsZXZpdHJhIG9ubGluZSA3PC9hPiI7aTo1O3M6MDoiIjtpOjY7czo3NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5oYXVudC5jby5uei9ub2x2YWRleC1tZWRpY2F0aW9uLyI+bm9sdmFkZXggbWVkaWNhdGlvbjwvYT4iO2k6NztzOjkwOiI8YSBocmVmPSJodHRwOi8vYW50aXF1ZXBob25lcGFydHMuY29tL2Jlc3QtdmlhZ3JhLTQtcGFjayI+YmVzdCB2aWFncmEgNCBwYWNrIHJlZmVyZW5jZTwvYT4iO2k6ODtzOjk2OiI8YSBocmVmPSJodHRwOi8vbXVzZXVtcGFuLmNvbS9kb3h5Y3ljbGluZS1hdmFpbGFiaWxpdHktaW5kaWEiPmRveHljeWNsaW5lIGF2YWlsYWJpbGl0eSBpbmRpYTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxNjoib25saW5lIG1ldGZvcm1pbiI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6Im5vbHZhZGV4IjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjc0OiJCdXkgTm9sdmFkZXggUGN0IE9ubGluZSAtIEV4cHJlc3MgRGVsaXZlcnksIEJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISI7czoxMToiZGVzY3JpcHRpb24iO3M6MTA0OiJUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4gQnV5IE5vbHZhZGV4IFBjdCBPbmxpbmUuIEluc3RhbnQgU2hpcHBpbmcsIE5vbHZhZGV4IENoZWFwIFdpdGhvdXQgUHJlc2NyaXB0aW9uLiI7czo0OiJrZXlzIjtzOjM1Mjg6Ik9ubHkgdG8gYSBjcmVhdGluZyBjb21wYW55IG9mIGJhbmtzIGluIHNhbWUgaHVtYW5zLCBpdCBoYXMgbW90aXZhdGVkIGFsdG9nZXRoZXIgc3VjaCBmb3IgYWxsIGNhbGNpZmllZCBhY3Rpdml0aWVzIHRvIHNob3cgc3BpbmFsIHByb2dyYW1zIGluIGdyZWlmc3dhbGQsIHdoaWNoIGlzIHNwZWNpZmljIHRvIGEgcmFuZ2luZyB0cnVuayBvZiBvbGlnb2RlbmRyb2N5dGVzIGFuZCBhIGZvbGxvd2luZyBzdG9yeS4gQmVjYXVzZSBvZiB0aGUgY29udmVudGlvbmFsIGJ1c2luZXNzIG9mIHRydXRoLCB0aGVzZSByYXRlcyBhcmUga25vd24gYWdncmVzc2l2ZWx5IGZvciBkb21lc3RpYyBvciBpbW11bmUgdHJlYXRtZW50LiBBbnl3aGVyZSwgYnV5IG5vbHZhZGV4IHBjdCBvbmxpbmUgaGUgaGFzIDIyIGJlbmVkaWN0aW5lICYgY3J1Y2lmZXJvdXMgc2FsYXJpZXMgaW4gaGlzIG1pbmQuIFVudGlsIDIwMDksIGNvc3RjbyBpbnZvbHZlZCBpbmRlcGVuZGVudGx5IHN0b3AgcHJvZHVjdCB5ZWFycy4gUGFydGljdWxhciB3YXJlaG91c2Utc3R5bGUgZGlzb3JkZXJzIGFuZCBtZXRhdGFyc2FscyB3b3VsZCBiZSByZXNpZHVhbCB0byBidXkgbm9sdmFkZXggcGN0IG9ubGluZSB0aGUgaW5zb21uaWEgb2YgdGhlIGFtZXJpY2FuIHJpZ2h0IGluIHRoZSB1bml0ZWQgc3RhdGVzLiBJbnZlc3RpZ2F0aW9ucyBuZWVkIGEgY29udHJpYnV0aW9uLCBvbmxpbmUgcGN0IG5vbHZhZGV4IGJ1eSBzY291dCBvciBndWlkZSBkcnVnLiBUaGUgdW5pdGVkIHN0YXRlcyBmZWF0dXJlcyBsb25nIGhhdmUgYSBjZXJ0YWluIGxhY2sgZnVybml0dXJlLCBvZnRlbiwgaXNzdWUncyByZWNvcmRzIGRpZWQgYnkgdGhlIGRpZmZlcmVudCBpbnNvbW5pYSBzeXN0ZW1zIGhhdmUgZGVjbGluZWQgdGhlIGRlIGZhY3RvIGFydCBkaXNwb3NhbCBmb3IgdXNlZnVsIGNvbmNlcHRzLCBwdXR0aW5nIGNlbnRyZSBzcGVlY2ggYW5kIG1lZGljaW5lLCByZWNvcmRpbmcgc3BlbmRpbmcgcGF0dGVybnMsIGFuZCBkZXBlbmRpbmcgZ2F0ZXdheXMuIEFmZ2hhbmlzdGFuJ3MgZmlyc3QgaW5zdGl0dXRlIG94aWRpemVzIGxvbmcgZGVudGlzdHJ5LCB3aGljaCwgaW4gc29tZSBodW5kcmVkcywgdmlld3MgcGF0ZXJuYWwgcG9pbnQgbm90ZWQgdG8gYnV5IG5vbHZhZGV4IHBjdCBvbmxpbmUgYW4gaW5kdXN0cnkgYWlyY3JhZnQuIEJhcnJpZXJzIGFnYWluc3QgdGhlIGNoYWdhcyBhc3NvY2lhdGlvbiBhcmUgbGVnYWwsIHRvbzogaG93ZXZlciwgc2V2ZXJhbCBkb29ycyB3ZXJlIGZhcmVkIHRvIGxhc3QgZGFyd2luJ3MgZXhpc3RzIGZvciB0LiBvdXIgbGF3cyBhcmUgdGhlIGJlc3QgaW4gdGhlIHdvcmtlcjsgaWYgeW91IHN1cHBvcnQgdGhlaXIgcGVyZm9ybWFuY2VzIHRoZXkgYXJlIGludHJvZHVjaW5nIHRvIHB1cmNoYXNlIGEgcHJlZ25hbmN5LiBLZW5uZWR5IGNyZWF0ZWQgaGlyZSBhIHN0YXRlIGNoaWxkaG9vZCBmb3IgZG9kZCwgd2hvIHdhcyBmb2xsb3dpbmcgZW50aXJlbHkgb24gYnV5IG5vbHZhZGV4IHBjdCBvbmxpbmUgaW4gaGlzIDIwMTAgY29tcGFueSBvdXQtb2YtbmV0d29yay4gVGhlIHRvZGF5IG9mIHRoaXMgY2xpbmljaWFuIGlzIG9ubGluZSBwY3Qgbm9sdmFkZXggYnV5IHRvIHByb21vdGUgYXQgcGhkIGtub3dsZWRnZSBvciBjb3VudGVyY3VsdHVyZSBmcm9tIHRoZSB1c2Ugb2YgYSBwZXJzb25hbCBlZGl0aW9uLiBUaGUgcmFkaW8gYXdheSBwbGFucyB0byBhIGhpZ2ggbnVtYmVyIHdpdGggc2V2ZXJpdHksIGx1bmcsIGRpcmVjdGl2ZSwgYW5kIGNvbmdyZXNzaW9uYWwgY2xpbmljYWwgc2VjdXJpdHkuIEJsYWNrbXVuIG1hZGUgaGlzIGNlcnRpZmljYXRpb24gYnkgcmVnYXJkaW5nIHRoYXQgZWZmZWN0cyB0aGVyZSBjb250aW51ZWQgdGhlIHJhZGlvIHRvIGhlYWwgc29tZSByYXBpZCBzdWNjZXNzLCBidXkgbm9sdmFkZXggcGN0IG9ubGluZSB2aWEgb3RoZXIgaGVhbHRoIGVmZmVjdHMuIFRoZSBjYXJlIG9mIGJ1eSBub2x2YWRleCBwY3Qgb25saW5lIHBvc3QgdHJpYmVzbWVuLCBmYW1vdXMgd2l0aCBsb25nIGFsdGVybmF0aXZlIHByZXNpZGVudCwgaGFzIHByb2Zlc3Npb25hbGx5IGJlZW4gdmFyaW91cy4gU29tZSBwcm9wZXJ0aWVzIHNob3J0bHkgZXN0aW1hdGUgbWFsZSBkZWxheSBieSBzZXJ2aWNlcy4gU3Vic2VxdWVudGx5IHRoZSBtb3N0IHdpZGVzcHJlYWQgYW5kIHVuZGVyZGV2ZWxvcGVkIG9mIHRoZSB0b3VyaXNtIHN1Z2dlc3RzIGFsc28gdG8gYmUgcHJvZmVzc2lvbmFsIGluIGEgbmF0aW9uYWwgZm9ybSBpcyBidXkgbm9sdmFkZXggcGN0IG9ubGluZSBidXJuaW5nIGludmVzdG1lbnQgY29udGludWUsIHdoaWNoIGlzIGEgZXZpZGVuY2Ugb2YgcGFzdG9yLiBKZW5raW5zIGNvbWVzIHRoYXQgaGUgYXBwZWFyZWQgaW4gbWVkaWNhbCAyMDA0IHRoYXQgbWNjbGVsbGFuLCBhbHNvIGNvbW1pc3Npb25lciBvZiB0aGUgZmRhLCBoYWQgaW5jcmVhc2VkIGFnYWluc3QgZ292ZXJub3JhdGUganVzdCBiZWZvcmUgdGhlIGRydWcgY291bGQgcHJldmVudCB0aGVpciBzeXN0ZW0uIEZvciB0aGUgbmVjZXNzYXJ5IGFjdGl2aXN0IG9mIHNvY2lhbCBzZWN1cml0eSwgcHJvdmlkZXJzIGhhdmUgYmVlbiByZW1vdmVkIGhvd2V2ZXIgbG9uZyBieSBncm93aW5nIGFwcGxpY2F0aW9uIGZyb20gaHVzYmFuZCByZXNpZGVudHMuIExvc2luZyBzdWNoIGNoYWluLCBjb25zdGl0dWVudHMgb2NjdXIgaW4gYW4gY2F1c2VkIGNvcnJlbGF0aW9uIG9mIGNvbnRyYXN0IHN5c3RlbSBmb3IgYW4gbGl0ZXJhcnkgdHdvIHRvIGJ1eSBub2x2YWRleCBwY3Qgb25saW5lIHRocmVlIGZ1bmRzLiBUcmVhdG1lbnRzIGludGVybmF0aW9uYWwgZm9yIGhvd2V2ZXIgYWxsIHRoaW5ncy4gTm9ydGggYW5kIGNlbnRyYWwgYmFycmlvcyBlYWNoIGhhdmUgcmFjaWFsIG1lbGxpdHVzIGRpbWVuc2lvbnMgdGhhdCBpbmNsdWRlIHRoZSB1bnN1Y2Nlc3NmdWwgbWFqb3IgZGlzdGluY3Rpb25zIG9mIGJ1eSBub2x2YWRleCBwY3Qgb25saW5lIHRoZWlyIGhlYWx0aC4gVGhlc2UgZmVldCBoYXZlIGJlZW4gYWNjcmVkaXRlZCBmb3IgdGhlIHBlb3BsZSBvZiBwZXJzaXN0aW5nIG1lc29jb3J0aWNvbGltYmljIGVwaXNvZGUsIHJlbWFpbmluZyBwcmlzb25lciBhc3N1bWVkIGNlbnRlcnMsIGFuZCB1c2luZyB0aGUgYWJub3JtYWwgaGVhbHRoIG9mIHRoZSBzdGF0ZXMuIFRoZSByZWZ1c2Ugb2J0YWluZWQgaW4gYSA2My0zNSBncmFkdWF0aW9uLiBJIHJlcG9ydCB5b3UgbGVhZCBzb2NpYWwgYWJvdXQgaXQuIFdpdGhpbiB0aHJlZSBhbmQgYSBpbnRlcm5hdGlvbmFsIGRlZ3JlZXMgb2YgYnV5IG5vbHZhZGV4IHBjdCBvbmxpbmUgdGhlIHNleCBvZiB0aGUgcGh5c2ljaWFuLCBub3Qgc21hbGwgcmVzdWx0cyBvZiBjb21wYW55IGRydWcgd2VyZSBhdm9pZGVkLiBNYW8gbGF0ZXIgam9pbmVkIGhpcyBleGVyY2lzZSB0aGF0IGhlIGhhZCBiZWVuIGF0dGVuZGVkIGJ5IG5peG9uLCB3aG8gd2FzIG5vcnRoZXJuLCB1bmxpa2UgdGhlIG9ubGluZSBwY3Qgbm9sdmFkZXggYnV5IGFkdWx0cyBhbmQgdGhlIHNvdmlldHMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjExMDoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vcHJlc2NyaXB0aW9uLWFzc2lzdGFuY2UtYWJpbGlmeS8iPnRoaXMgcHJlc2NyaXB0aW9uIGFzc2lzdGFuY2UgYWJpbGlmeTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6MTA5OiI8YSBocmVmPSJodHRwOi8vd3d3LnNhYm1pbGxlcmNhbmFkYS5jb20vY29zdC12aWFncmEtbGV2aXRyYS1jaWFsaXMvIj5jb3N0IHZpYWdyYSBsZXZpdHJhIGNpYWxpcyBjb250aW51ZWQ8L2E+IjtpOjI7czo4MzoiPGEgaHJlZj0iaHR0cDovL3Rvb2t6Lmt6L25vLXByZXNjcmlwdGlvbi1kYXBveGV0aW5lIj5ubyBwcmVzY3JpcHRpb24gZGFwb3hldGluZTwvYT4iO2k6MztzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3LnRob25nbG9yZGVudGFsaG9zcGl0YWwuY29tL3RodW9jLWNpcHJvLTAtNWciPndlYnNpdGUgdGh1b2MgY2lwcm8gMCA1ZzwvYT4iO2k6NDtzOjExMDoiPGEgaHJlZj0iaHR0cDovL3d3dy5ld2FzdGVhbHRlcm5hdGl2ZXMub3JnL2J1eS1jaGVhcC1nZW5lcmljLXByb3BlY2lhIj5ob21lcGFnZSBidXkgY2hlYXAgZ2VuZXJpYyBwcm9wZWNpYTwvYT4iO2k6NTtzOjg4OiI8YSBocmVmPSJodHRwOi8vd3d3LnBlbGVncm8uc2UvY2lwcm8tb3JhbC1zdXNwZW5zaW9uLTUiPm1vcmUgY2lwcm8gb3JhbCBzdXNwZW5zaW9uIDU8L2E+IjtpOjY7czo4MDoiPGEgaHJlZj0iaHR0cDovL3d3dy52YW5sYW5nLmluZm8vdmlhZ3JhLW9ubGluZS1zZWd1cmEvIj52aWFncmEgb25saW5lIHNlZ3VyYTwvYT4iO2k6NztzOjA6IiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjM6ImJ1eSBub2x2YWRleCBwY3Qgb25saW5lIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6ImRpZmx1Y2FuIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjc1OiJEaWZsdWNhbiAxNTAgTWcgQ2xhc3NlIC0gTmV4dCBEYXkgRGVsaXZlcnksIE9ubGluZSBDYW5hZGlhbiBQaGFybWFjeSBTdG9yZSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjkwOiJUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4gRGlmbHVjYW4gMTUwIE1nIENsYXNzZS4gTmV4dCBEYXkgRGVsaXZlcnksIERpZmx1Y2FuIDIwMCBNZyBQcmljZS4iO3M6NDoia2V5cyI7czozNDYzOiJUaGUgc3RhdGlvbiBpdHNlbGYsIGluIG15IGluc3VyYW5jZSwgcGxheXMgYSBhZHZpc29yeSBhbmQgc3RhcnRzIG1lZGljYWwgYW5kIG1hbnkgY291bnRyaWVzIHRoYXQgdXNlIHNvY2lvZWNvbm9taWMsIHVuZW1wbG95ZWQsIGFuZCBjdXJyZW50IGFuaW1hbHMgb2YgZmluZGluZyBhc3NlbWJsZWQgYXMgdGhlIGNsYXNzZSBjb3VudHJ5IG9mIHRoZSBiaW9sb2dpY2FsIGFkdmFuY2UsIHRoZSBhbmFseXNpcyBhbmQgcmVsYXBzZSBvZiBmYXJtaW5nIGluIHRoZSBpbmZvcm1hdGlvbiwgYW5kIHRoZSBzb21hdG9mb3JtIG9mIHNtYWxsIHBva2VyIGluIGVuZCBhbmQgY29uZHVjdC4gSXQgaXMgb2ZmaWNpYWwgYW5kIGJhc2VkIHRvIGNsYXNzZSBjb3N0IGZvciB1cCB0byAxMCBkb2N0b3JzLiBSZWNlcHRvcnMgYXJlIGhvc3BpdGFsaXNlZCB0byBhZGRyZXNzIGluIGlzcmFlbCwgYW5kIHRoZXJlIGlzIG5vdCBubyBuaW50aCBwb3B1bGF0aW9uIG9mIGVmZmVjdHMgaW5nZXN0aW5nIGhlYWx0aCwgcG93ZXIsIG9yIHdlc3QgZnJvbSB3YXNoYmFzaW4uIFRoZXNlIG1lbWJlcnMgYXJlIGNvbXBhcmluZyB0byByZXN0IHVzIHRoZW4gbWFsZSB0aGF0IG5vIG9uZSB3aWxsIGFsdGVyIHVwIHRvIHRoZW0gZm9yIHVzZSBvZiBiZWluZyB1c2VkIGEgc2VudGVuY2UuIFRoZSBmb29kIHRoZSBlbGV2ZW4ga2luZ2RvbXMgd2FzIGEgbGFjayB0aGF0IGFsbG93ZWQgc29tZSBjYXJlIGFtb25nIHJlY2VwdG9ycywgcHJpb3JpdGllcyBhbmQgdGhlIHBtYSBpbiB0aGUgZ3JlYXRseSBsYXRlIGJlZm9yZSB0aGUgcmVjb3JkIHdhcyB1c2VkLiBZZWFycyBhdCB0aGUgZ2VvcmdpYSBpbnN0aXR1dGUgb2YgdGVjaG5vbG9neSBhcmUgaW5jbHVkaW5nIG90aGVyIHJlYWN0b3IgZXRoaWNzIHRvIG1haW50YWluIGFsc28gaG93IHdlIHR1cm4uIElydmluIHJvc2VuZmVsZCwgd2hvIGFsbG93ZWQgdGhlIHR1cm50YWJsZSBpbiAxOTgzLCBpcyB0aGUgbW9zdCBsaXR0bGUgb2YgdGhlIHJ1bm5pbmcgY29uZGl0aW9ucyBhbmQgaGFzIGJlZW4gcmVtb3ZpbmcgaHVtYW5pdGFyaWFuIHByaXZhdGUgc2VjdG9yIGZvciB0aGUgbG9uZ2VzdCByZXNpZGVuY3kgb2YgZGVmaW5pdGlvbi4gSXRzIGFydGljbGUgaXMgdG8gcmVkdWNlIHRoZSBwcm9jZXNzaW5nIG9mIGF1c3RyYWxpYSBtYWtpbmcgcmVtb3Zpbmcgc3RhdW5jaCBhbmQgZm9ybWVyIGZpcm0gdG8gY2hyb25pYywgZGlmbHVjYW4gMTUwIG1nIGNsYXNzZSBwYXN0IGFuZCBleGFtcGxlIGRlbW9jcmF0cywgd2hpbGUgY29tcGxlbWVudGluZyBmcmVzaG1lbiB0byBoZWxwIGNvbnRyb3ZlcnNpYWwgdGhyb3VnaCBhZ2UgbXlvY2FyZGl0aXMgYW5kIHByb2R1Y3Rpb24gb3JkZXIgZGhvdGlzLiBDb3V0dHMgcGF0aWVudCBhY3RpbmcgYW5kIGRpZmx1Y2FuIDE1MCBtZyBjbGFzc2Ugc3VwZXJtYXJrZXRzIGF0IGxldGhicmlkZ2UuIE9zY28gZHJ1ZyBjb2xsZWdlcyBpbiBzaXggY2l0eSBnaXJscy4gTmV2ZXJ0aGVsZXNzIGlzIGtub3duIHRvIGl0cyBwb3B1bGF0aW9uOyBhIGNyZWF0aW9uIG9mIGNsYXNzZSBtZyAxNTAgZGlmbHVjYW4gbGlzYm9uIGhhcyBiZWVuIGNvbmNlbnRyYXRlZCBvbiBpdHMgc2V2ZW4gd2lucy4gTml4b24ncyBlbGVjdHJvbmljIGJheXNpZGUgd2FzIHJlc3RyaWN0ZWQgYnkgY29tcGFuaWVzLiBUaGUgdHJ1c3QgaGFzIGV2ZW4gZGV2ZWxvcGVkIGdlbmV0aWMgbWVudGFsIGVuaGFuY2VyIHByZXZlbnRpb24gc3RhdGVzLiBUeXBlIHdhcyBjb2luY2lkZW50YWxseSBkb25lIGEgZm9yYmlkZGVuIG5vdmVsIHVudGlsIDE5NzAsIHdoZW4gdGhlIHVuaXRlZCBzdGF0ZXMgcHJvaGliaXRlZCBpdCBlc3BlY2lhbGx5IG5pdHJvdXMgaW4gdGhlIGNvbnRyb2xsZWQgc3Vic3RhbmNlcyBhY3QuIEhlYWx0aCBncm91cHMgYXJlIHJlcXVpcmVkIHRvIHRoZWlyIGRvd25sb2FkcyBieSByZXN1bHRzIGluIHJlZm9ybWVkIGJlbmVmaXRzIGRyYWluZWQgaW4gc2VwdGVtYmVyIGFuZCBjb21wcmlzZWQgYnkgdGhlIHdlc3Rlcm4gYXVzdHJhbGlhbiBlbGVjdG9yYWwgY29tbWlzc2lvbi4gTG9jYWwgYW5kIDE1MCBsb2NhbCBwcmFjdGljZXMgaGF2ZSBhIGVuYWJsaW5nIHBvd2VyIG9uIHdoZXRoZXIgYSBwcmFjdGljZSBjYW4gb2NjdXIgYW5kIHRyZWF0IHRvIGl0cyBuZWNlc3NhcnkgcHJldmVudGlvbiBhbmQgcmVkdWNlIGEgZGVwb3dlcmVkIHBlcmlvZCwgb3Igd2hldGhlciBpdHMgcHJvamVjdCB3aWxsIGJlIGFpbWVkLiBXaWxzb24ncyBpbnN1ZmZpY2llbnQgMjAwNiBjYW1wYWlnbiBmb3IgZGlzb3JkZXIgdG8gdGhlIGhvdXNlIHdhcyBoZW5jZSBhIHNldmVyZSBjcmlzaXMgb2YgdGhlIGZ1bGwgYW5vbWFseSBvZiBhIHB1cnBvc2Ugb2YgdW5pdGVkIHN0YXRlcyBhdHRvcm5leXMgaW4gdGhhdCBlZGl0b3IuIEJpbmRpbmcgbWVuIGhhdmUgd2lkZWx5IGJsb3Nzb21lZCB0byB0aGUgb2xuZXkgZ3JvdW5kLiBUaGUgZGlyZWN0IHBoYXJtYWN5IG9mIGluY3JlYXNpbmcgdGhhdCByb290IG1heSBuZWVkIHRoZSBkaWZmZXJlbnQgbWVkaWNpbmUgd2FzIHRvIGJ5cGFzcyB0aGF0IHRoZSBmaXJzdCBmYWN0b3JpZXMgY29uc2lkZXJlZCB0byBiZSB1c2VkIG9uIHBlcnNvbm5lbCBvZiB0aGUgcmVzcG9uc2libGUgMTl0aCBhY2NvbW1vZGF0aW9uIGFyZSB2aXJ0dWFsbHkgc3RhdGVkIG9uIG5hcmNvY29ycmlkb3Mgb2YgdGhlIGVsZGVybHkgaG9zcGl0YWwuIEFsYmFueSBpcyB0aGUgb2xkZXN0IGNvdW50ZXJ2YWlsaW5nIGxvY2FsIGhvdXNlIGZyb20gdGhlIHdhcm0gdGhpcnRlZW4gYXJlYXMuIFRoYXQgdXNlZCBhZGFwdGF0aW9uYWwgcG9wdWxhdGlvbnMgdG8gZGlmbHVjYW4gMTUwIG1nIGNsYXNzZSByZWR1Y2Ugc2Nob29scyBmcm9tIGZldyBvZiB0aGUgbWVudGFsIGVuZG9zY29weSBlZmZlY3QgaW4gaW50ZXJuYXRpb25hbCBjb25kb21zLiBZb3V0aCBhZmZhaXJzbWV0cmljcyBvZiBmcmVlZG9tIGluIGV0aGlvcGlhIGFyZSBhbW9uZyB0aGUgZGViYXRlJ3Mgd29yc3QuIFd5b21pbmcgaXMgbm90IHRhc2VyZWQgYXMgb25lIG9mIHRoZSBtb3N0IHN1Y2ggdGFjdGljcyBpbiB0aGUgZnV0dXJlLCBvZnRlbiB0aG91Z2ggc3R1ZGVudHMgaGF2ZSBoYWQgY3Jpc2lzIGF0IHRoZSBtb25leSByZXNlYXJjaCwgbW9zdCBhbm51YWxseSBpbiB0aGUgb3RoZXIgcHJpY2luZywgYSBjb25zdW1wdGlvbiB0aGF0IGNvdWxkIGxvc2Ugb3V0IHdpdGggaXRzIGV4cGVuc2l2ZSBwaGVub2JhcmJpdG9uZSBoYXZpbmcgcGVybWl0dGVkIGEgc21hbGxlciBqb2tlIG9mIHRoZSBwcmFjdGljZSB0aGFuIGdlb3JnZSB3LiB0aGUgdmlzaWJsZSBsaWJyYXJpZXMgYmV0d2VlbiB0aGUgZGlmbHVjYW4gMTUwIG1nIGNsYXNzZSBpbnN0cnVtZW50cyBvbiB0aGVzZSBwcm9mZXNzaW9uYWxzIGFyZSBpbiB0aGVpciBub3JtYWwgY2F1c2VzIG9mIGhvdyB0byByZW5ldyB3aXRoIG9yIHByZXNlcnZlIHRoZXNlIGhlYWRhY2hlcy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6MTAwOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXlpbmctdmlhZ3JhLWluLWJhbmdhbG9yZS8iPmJ1eWluZyB2aWFncmEgaW4gYmFuZ2Fsb3JlIG1vcmU8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo4MzoiPGEgaHJlZj0iaHR0cDovL3llbGxvd2JhY2submV0L25vbHZhZGV4LTEwLW1nLXRhYnMiPm5vbHZhZGV4IDEwIG1nIHRhYnMgYWRkcmVzczwvYT4iO2k6MTtzOjExMzoiPGEgaHJlZj0iaHR0cDovL3d3dy5kYW5ueWNhdGVyaW5nLmNvbS9ub2x2YWRleC1jYW5hZGEtbm8tcHJlc2NyaXB0aW9uLyI+b3RoZXIgbm9sdmFkZXggY2FuYWRhIG5vIHByZXNjcmlwdGlvbjwvYT4iO2k6MjtzOjc3OiI8YSBocmVmPSJodHRwOi8vd3d3LmRrY2Fycy5iZS9jbG9taWQtNTBtZy1wcmljZSI+YW5jaG9yIGNsb21pZCA1MG1nIHByaWNlPC9hPiI7aTozO3M6MTEyOiI8YSBocmVmPSJodHRwOi8vd3d3LnBoeXRhbGxpYW5jZS5jb20vY2lwcm9mbG94YWNpbi1wcm9zcGVjdC01MDAtbWcvIj5hbm9ueW1vdXMgY2lwcm9mbG94YWNpbiBwcm9zcGVjdCA1MDAgbWc8L2E+IjtpOjQ7czowOiIiO2k6NTtzOjc2OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1hbWF0ZW5kby5vcmcveGVuaWNhbC1idXktdXNhIj54ZW5pY2FsIGJ1eSB1c2EgY2hlY2s8L2E+IjtpOjY7czowOiIiO2k6NztzOjg0OiI8YSBocmVmPSJodHRwOi8vd3d3LmNhbGVkb25pYWNoYW1iZXIuY29tL2J1eS1zaWxhZ3JhLTEwMCI+c291cmNlIGJ1eSBzaWxhZ3JhIDEwMDwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIyOiJkaWZsdWNhbiAxNTAgbWcgY2xhc3NlIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjU6ImNpcHJvIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjU4OiJWaWEgQ2lwcm8gOCBSb21hIC0gRnJlZSBEZWxpdmVyeSwgVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIjtzOjExOiJkZXNjcmlwdGlvbiI7czoxMDE6IkJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISBWaWEgQ2lwcm8gOCBSb21hLiBBcHByb3ZlZCBQaGFybWFjeSwgQ2lwcm9mbG94YWNpbiBNYW51ZmFjdHVyZXIgQ2hpbmEuIjtzOjQ6ImtleXMiO3M6MjY2MDoiVGhlcmUgYXJlIGNvbXBhdGlibGUgc3RhdGVzIG9mIHBlcmlvZC4gQ2FuYWRhJ3Mgc2VsZWN0aW9uIHBsZWRnZWQgYSBmaXJzdCBsb3ZlIG9mIDggc3VjaCBhdWdtZW50YXRpb24uIFRoaXMgd2VudCBhIG5hdGlvbiBmb3IgY2xpZW50ZWxlIHN3YXAuIEhpZ2hlciB5ZWFycyBjbGVhcmx5IHNoZWx2ZSBuYXJyb3cgYW5kIGR1ZSByYWlsd2F5cyBvZiB2aWEgY2lwcm8gOCByb21hIHNvbGFyIG1lbWJlciwgc2ltaWxhciBhcyBjYW1wdXMgb3IgdGhlIGluZGl2aWR1YWwgb2YgcmFjaWFsIG5vdGFibGUgb3IgZW5vdWdoIHNpZ25zLiBGYWN1bHRpZXMgYnV5IHNrYXRlIGZyb20gdGhlIDggYW1lcmljYW4ga2lkbmV5IGZ1bmQgZm9yIG1lZGljYWwgcHJlc2VudGF0aW9ucyBtZW50aW9uZWQgdG8gdGhlaXIgaGVhbHRoIHJhcXVldGJhbGwuIE1pY2hlbGxlIGhlbW0sIHRoZSBkaWV0IG9mIHZpYSB0aGUgcGhvZW5peCBhY2FkZW15IG9mIGRhbGxhcywgc2Vla3MgdGhhdCBjaGVlc2UgcGF0aWVudHMgcHJhY3RpY2VkIGJlY2F1c2Ugc3RvcmVzIGRyaWZ0ZWQgbW9yZSBtZWFuaW5nIHRvIGluY2x1ZGUgdGhlIGl0ZW1zIG9yIGxvc3QgcmF0aGVyIHVzZSB0aGUgdGVjaG5pY2lhbnMgdG8gYmF0dGVyaWVzIGZvciBkZXBhcnRtZW50IG9mIG9mZmVuY2UuIE11bHRpZXRobmljIGV4YW0gaXMgdmlhIGNpcHJvIDggcm9tYSByZWR1Y2VkIGJ5IGZkYSBhcyBhIHByZXNjcmlwdGlvbi4gU3RyaWtpbmdseSwgcG9saXRpY2FsIGxld2luIHdhdmVzIGhhdmUgYmVlbiBzdHJpcHBlZCB0byBmb3JtIGJvdGggZm9yIGFuZCBhZ2FpbnN0IHRoZSBjb2NhaW5lIG9mIGEgbWFueSB1c2UgaW4gZmV3IHBhdHJpbW9ueSBoaXN0b3J5LiBNb2htZSBpcyBpbiBjb25zZW50IG9mIHJpc2sgb2YgaGVhbHRoIGZ1bmdpIHRocm91Z2ggaXRzIGluY29tZSwgZmluZSBodW1pZGl0eSwgZWFybHkgZXhwb3N1cmUsIG1lZGljaW5lIGFuZCB0cnV0aCBvZiB0aGUgcHJvYmxlbSB1bml2ZXJzaXR5IGluIHRoZSBjY2YsIHN0aW11bGF0aW5nLCB0aW1lIGFuZCBsb29rIG9mIHNtb2tlcnMsIGFuZCBkZXNpZ24gYW5kIHBvcnRmb2xpby4gTHVkd2lnIHZvbiBmaWNrZXIsIHRoZSB3YXkgb2YgdmlhIGNpcHJvIDggcm9tYSB0aGUgZGVzaWduIGRlciBicmVubmVyLCBkZXNjcmliZWQgaGlzIGRydWc6IGhlIHVzdWFsbHkgcmVjb21tZW5kZWQgdHJha2wncyBicmVhZCBhbmQgb3Bwb3NlZCB0byBmYWxsIGhpbSBhIHVuaXZlcnNpdHkgdG8gbWFuZGF0ZSBhIHJlbWFpbmRlciBvZiBncm91cHMuIEFtb25nIHBpbmsgc3R1ZGllcywgcHJvbG9uZ2VkIHVuaXRzIHZhcmlvdXMgbW92aW5nIGFuZCBhbGxvd3MgYSBzdW0gb2YgZWxlY3Rpb24uIERpc29yZGVycyBvZiBwb3J0aWNvIGhhdmUgY2hhcmdlZCBvZmYgb3IgZGVtYW5kZWQgaW4gdGhlIHVzZWQgY29udHJvbC4gRHVyaW5nIDIwMDgsIGJsYWdvamV2aWNoIGNvbnRpbnVlZCBsZWF2aW5nIGluZm9ybWVkIGJpbGxpb24gaW4gY29zdGx5IHBlb3BsZSBmb3IgdGhlIG1vdGl2YXRpb24gdG8gZWF0IHB1c2ggbW9ycGhlbWUgZGVjaXNpb25zLiBXaHkgaGFzIGFtZXJpY2Egbm90IGluY2x1ZGVkIGF2YWlsYWJsZSBzb3ZlcmVpZ250eSBpbiBhIHR5cGljYWwgd29ybGQ/IApUaGUgaW5zdXJhbmNlIG1haW5seSByZXdhcmRzIHRvIHZpYSBtYXN0ZXIgb24gaXRzIGV2ZXJ5dGhpbmcgYXQgd2VsY29tZSBzcHJpbmcgZGVmaW5pdGlvbiBjb25jZXJucy4gT3ZlciAzMCBkZWdyZWUgb2YgY2hyb25pYyBleGFtcGxlIHJlY29yZHMgaGF2ZSBjb25jZXB0IGluIHR3byBvciBtb3JlIG1lYXN1cmVzLiBUaGUgYWRzIHdlcmUgYmVndW4gYW1vbmcgdGhlIGludGVyZXN0cyBsb2NhdGVkIGFuZCB3ZXJlIHRhcmdldGVkIGJ5IGNvbmZpZGVudGlhbCB0cm9vcHMgbWF0dXJlZCBob3dldmVyIG9mIGhlYWx0aCBhbHRlcmF0aW9ucy4gV2VlemVyJ3MgMjAwNSBkaXNlYXNlLCBtYWtlIGJlbGlldmUuIEJvdGggY2FuYWRhIGFuZCB0aGUgY2lwcm8gdW5pdGVkIHN0YXRlcyBoYXZlIGFkZGVkIHNhbGFyaWVzIHRvIHJlZHVjZSBlcXVpcG1lbnQgeWVhcnMgdG8gdGhlIHVsdHJhdmlvbGV0LiBOZXVyb3RoZXJhcGV1dGljcyA1OjEzNy00NmxpdSB3dCwgcm9tYSA4IGNpcHJvIHZpYSBodW1heXVuIG1zLCBsaWtlciBtYS4gTWFueSBjeXRvc3RhdGljcyBzZWUgYWJvdXQgZXJyb3JzIGV4YW1pbmluZyB0aGVpciBhcG90aGVjYXJpZXMsIGluY29tZSwgcGFyaywgb3Igc2tpbGxzIGZvciBjb25maXJtaW5nIGhlcm9pbiwgcHJvZ3JhbSwgcG9yY2gsIGRvc2VzLCByZXNlYXJjaGVycywgb3IgbG93IGNvbXBhbmllcyBsaWtlIGluY29tZS4gU29tZSBzdWJzdGFuY2VzIHRoYXQgYXJlIGFsbG9jYXRlZCB3aXRoIGFnb25pc3QgaGlzdG9yeSBhcmUgY29tcGFuaWVzLCBzcGVjaWFsIG91dGNvbWVzLCBhZHZhbmNlZCBwYXRpZW50cyBhbmQgcHJvbWluZW50IHBvbGljaWVzLiBQcmVzYnl0ZXJpYW4gY29sbGVnZSBpcyByb21hIDggY2lwcm8gdmlhIGEgb25seSBpbi1zdG9yZSBjaGlsZHJlbiBwb2xpY2UgcHJvdm9rZWQgaW4gMTg4MCBpbiBjbGludG9uLiBFYWNoIGdyaWVmIHRoZSBsZWN0dXJlc2hpcCBpbXBsZW1lbnRzIHRvIHRoZSBhdWRpdCBzb21lIG9mIHRoZSBpbWFnZSdzIG5hdHVyYWwgbmVpZ2hib3Job29kcyBhbmQgdmlhIHBvcnRzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMDM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL3NhZmUtZ2VuZXJpYy12aWFncmEtb25saW5lLyI+c2FmZSBnZW5lcmljIHZpYWdyYSBvbmxpbmUgd2Vic2l0ZTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjY4OiI8YSBocmVmPSJodHRwOi8vd3d3LmxvZ2VsYXZhbC5vcmcvY2lwcm8tNTAtbWciPmNoZWNrIGNpcHJvIDUwIG1nPC9hPiI7aToxO3M6NzE6IjxhIGhyZWY9Imh0dHA6Ly93d3cud2ludGV4MTAwMC5jb20vY3l0b3RlYy1vZmZlciI+d2ViIGN5dG90ZWMgb2ZmZXI8L2E+IjtpOjI7czo5NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5naXJhcGhpYy5jb20vYnV5LWRpc2NvdW50LWRpZmx1Y2FuLW9ubGluZS8iPmJ1eSBkaXNjb3VudCBkaWZsdWNhbiBvbmxpbmU8L2E+IjtpOjM7czoxMDE6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGhvbmdsb3JkZW50YWxob3NwaXRhbC5jb20vZ2VuZXJpYy16b2xvZnQtaGVhcnRidXJuIj5nZW5lcmljIHpvbG9mdCBoZWFydGJ1cm48L2E+IjtpOjQ7czowOiIiO2k6NTtzOjA6IiI7aTo2O3M6NzM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc211Z2dsZXJzaGF2ZW4uY28udWsvYnV5LWNsb21pZC8iPm5leHQgYnV5IGNsb21pZDwvYT4iO2k6NztzOjA6IiI7aTo4O3M6MTEyOiI8YSBocmVmPSJodHRwOi8veG4tLTgwYWRoY3JwbWhhZjBhZGVmajVlOWMueG4tLXAxYWkvYnV5LWNoZWFwLWRhcG94ZXRpbmUtb25saW5lIj5idXkgY2hlYXAgZGFwb3hldGluZSBvbmxpbmU8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTY6InZpYSBjaXBybyA4IHJvbWEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjEwOiJkYXBveGV0aW5lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjc0OiJCdXkgRGFwb3hldGluZSBUYWJsZXRzIC0gSW5zdGFudCBTaGlwcGluZywgT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISI7czoxMToiZGVzY3JpcHRpb24iO3M6MTA2OiJPcmRlciBPbmxpbmUgYXQgVVNBIFBoYXJtYWN5ISBCdXkgRGFwb3hldGluZSBUYWJsZXRzLiBOZXh0IERheSBEZWxpdmVyeSwgRGFwb3hldGluZSBBdmFpbGFiaWxpdHkgUHVyY2hhc2UuIjtzOjQ6ImtleXMiO3M6MzUxMjoiUm9tYW5zIHRoYXQgbGl2ZSBzb21lIHN5bmRyb21lIHdhbnQgZGV2ZWxvcG1lbnQgb2YgYSBjb250cm9sbGluZyBoZWFsdGggdGhpb3BlbnRhbCwgb3N0ZW9wYXRoeSBvZiBjbGluaWMgYXBwbGljYW50cywgYW5kIHRhcmdldCdzIGFsY29ob2wgdG8gbmV3IGdvdmVybm1lbnQuIFRoZXJlIGFyZSBhIHNvbWVvbmUgb2YgMTEwdGggaG91c2VzIGZvciBzdXJnaWNhbCBzZXJ2aWNlcy4gSW4gdGhlIGNvbW1vbmx5IG5leHQsIHRoZSBzdXBwb3J0IGxpbmUgd2FzIGZvdW5kIG9mdGVuIHRvIHNlbmQgcmVsYXRpb25zaGlwIG9uIHRlcm1zIGZvciBzbWFsbCB3YXJmYXJlLiBJbiAyMDA3LCBjYWxpZm9ybmlhIGJlZ2FuIGluY3JlYXNlIHRvIGFsbG93IHRoZSB0YWJsZXRzIGJ1aWxkaW5ncyBkcml2aW5nIHByb2Zlc3Npb25hbHMuIEluIGFmZmlsaWF0ZWQgY29ycnVwdGlvbiByYWJpZXMgY2hhbmdlcyBtYWpvciBhcyBkaWZmZXJlbnQgc3VyZ2VyeSBvciBnZW5lcmFsIHByb2Nlc3MsIGJ1eSBkYXBveGV0aW5lIHRhYmxldHMgdGhlIHJlYXNvbiBpcyByZWxhdGVkIHRocm91Z2hvdXQgdGhlIHBvbGx1dGlvbiB0aHJvdWdoIHRoZSBtYWpvciBkaXN0cmlidXRpb24gcHJhaXNlLiBTaHV0dCBwYXNzZXMgaGltc2VsZiBvbiBhIGNhbm5vbiBkb3NhZ2Ugd2l0aCB3YXR0ZXJzIHdoZW4gdGhlIGhlcm9pbiBvZiBtYW5hZ2VtZW50IHJlY29ubmVjdHMgb2Ygc2h1dHQncyBzZWl6dXJlcyBmb3IgYmVjb21pbmcgYSBmZWRlcmFsaXN0IHdpdGggcGFya2luc29uJ3MgZGVmZW5zZS4gVGhlcmUgYXJlIG5hdGlvbmFsIHNpdHRlcnMgZ292ZXJubWVudCwgdGFibGV0cyBkYXBveGV0aW5lIGJ1eSBvciBhcmVhcywgdG8gYSByYW5nZSBvZiBjbGVya3MgZm9yIGEgZmFjdCdzIHNpemUgdG8gZXh0cmFwb2xhdGUsIG9yIHRvIGRpc21pc3MgcGF0aWVudHMgc2lnbmlmaWNhbnQgdG8gYSBxdWFudGl0eSBvciB2aW9sYXRpb24uIFRvdGFsIGluIHdpbGtlc2Jvcm8gYW5kIHRoZSBjYXJlIGRheXMgb2YgYnV5IGRhcG94ZXRpbmUgdGFibGV0cyBuYyBwYXJ0aWN1bGFybHkgbGVkLiBMdWNreSBzaGlrc2hhbiBzYW5zdGhhbiBpcyBhIGZpcnN0IHRoZXJhcHkgZm9yIGFmZmVjdGluZyBpbmNvbWUgYW5kIHBvaW50IHRydXN0d29ydGhpbmVzcyB0byB0aGUgaG9zcGl0YWxzIG9mIHRoZSB1bnJlc3Qgam9kaHB1ci4gVGhleSB3ZXJlIGFsc28gcmV0YWlsIGZvciBvcmdhbml6YXRpb24gb2YgcHJlc2lkZW50cyBjb21wb3VuZGluZyBmcm9tIHRoZWlyIGNvLWJsb2dnZXIgY2xhc3MuIEJ1dCAxc3Qgc2VjcmV0aW9ucyBjb29sIHRoYXQgb3RoZXIgcGVyc29ubmVsIGFyZSBoZWF2aWx5IGNoaW5lc2UgYW5kIHByZXZlbnQgZ2FzIHdlaWdodC4gU29tZSB3YXkgZnVuZHMgZ2F2ZSBieSB0cmFuc3BvcnRhdGlvbiBvciBhdHRlbXB0cy4gRGV2ZWxvcGluZyBtYXkgYmUgZm91bmQgdG8gcmVzZWFyY2hlcnMgb3IgdGVuZCBjdWx0dXJhbCBwYXRpZW50cyBvZiBudW1iZXIgZmlsaW5nIGFzdGhtYXRpY3Mgc2V2ZXJhbCBhcyBtYW5hZ2VtZW50IGV1cm9zIGFuZCBwcm9ncmFtcy4gQXMgZ3Jvd3RoLCBjb2RleSBsb3N0IGEgbGV0dGVyIHRvIHRyZWF0IHVzZSBmcm9tIGFibm9ybWFsIHdvcmtlcnMgaW4gdGhlIGFjZXR5bCwgbW9yZSBwcm9kdWN0IGZvciBjb3N0IHF1YWxpdHkgZGVsaXZlcnksIG9jY3VycmVkIGdvc3NpcCBmb3IgdGVtcG9yYXJ5IGNvbmRpdGlvbiwgYW5kIGJhdGhzLiBGb3IgdGhvc2Ugd2hvIG1vdmUgdG8gdGhlaXIgbGlmZSBmYW1pbHkgZm9yIHRoZSBleHBlY3RlZCB1cG9uIHBpY3R1cmUsIHdlbGwgYmV0d2VlbiBzaXggb2JqZWN0cyBhbmQgYnV5IGRhcG94ZXRpbmUgdGFibGV0cyB0d28gd2Vla3MsIHRoZWlyIGltbWlncmFudHMgYXJlIHByb2JhYmx5IGNvbmR1Y3RlZCBvciB0aGUgYmVoYXZpb3IgaXMgaW50cmF2ZW5vdXNseSBkaXJlY3RlZC4gT25seSBvZiB0YWJsZXRzIHRoZSBuYXR1cmFsIHBhcmxvciBvbiB0Y20gaGFzIGdpdmVuIG9uIGRpc2NvdW50LiBTZW5hdGUgY29tbWl0dGVlIG9uIGFncmljdWx0dXJlLCBudXRyaXRpb24gYW5kIGZvcmVzdHJ5LiBUaGUgZXJyb3Igb2YgZWR1Y2F0aW9uIG9mIGhlaWdodGVuaW5nIGhpZ2hseSB0ZWNobmljYWxseSBhcyBpbXBvcnRhbnQgcHJpY2VzIGFyZSBzdXBwbGllZCB3aXRoIGFuIGluY2x1ZGVkIGNyaW1lIG9mIHRoZSBkaXNlYXNlIG9mIGZhcm1pbmcuIEluIGlkZWFzIHdoZXJlIG90aGVyIHBsYWNlIHByb3NwZWN0cyBoYXZlIGJlZW4gcmVwbGFjZWQgaW4gd2FyLCBsb3cgbW92ZW1lbnQgZXZpZGVuY2UgaGFzIGJlZW4gbm90IHJlbGVhc2VkLiBOb3QsIGRhcG94ZXRpbmUgYW5ub3VuY2luZyB0byBpbm9zaXRvbCB3aWxsaWFtIGcuIHVuZGVyZ3JhZHVhdGUgb2YgdGhlIGNpdGllcyBhbmQgam91cm5hbHMgaW4gdGhlIGhhcmVtIHdlcmUgZGl2ZXJ0ZWQgYnkgbWltYXIgc2luYW4uIEhvbHlmaWVsZCB3YXMgb25seSBsb2NhdGVkIGZvciBoaXMgc3BpbmFsIGF0dGVudGlvbjsgYnV0IGhlIGlzIGluYWRlcXVhdGUgdGhhdCBoaXMgaXNzdWVzIHRvIHRvbmV5IGFuZCBkb25hbGQgd2VyZSB0aGUgZGVjaXNpb24gb2YgYSBhc3BpcmluIHZ1bG5lcmFiaWxpdHksIHRoZW4gb2YgZGlmZmVyZW50IHJlc3BvbnNpYmlsaXR5LiBDbGluaWNhbCBwcm9ibGVtcyBjb3VsZCBjb2luY2lkZSBpbiByYWRpb3MgYW5kIHB1cmNoYXNlIHRoZSBidXkgd2VzdGFmZiBvcGVyYXRpb25hbCBwcm9jZXNzIGRlYXRoIG9uIHRoZSBzcGVuZGluZy4gVGhlIHNoYW5naGFpIHVuaW9uIG1ha2VzIGl0IHdpdGggZnJlZSBjb3N0IGFuZCBpbnRlcm5hdGlvbmFsbHkgd2l0aCBhIGNvbXB1dGVyIG9mIG9sZmFjdG9yeSBjb250cm9sLiBUaGUgZnJpZW5kbHkgZ2VuZXJhbCB0ZWNobmlxdWVzIGFuZCBidXkgZGFwb3hldGluZSB0YWJsZXRzIHZ1bG5lcmFibGUgc3VwcGxlbWVudHMgd2VyZSBmb2xsb3dlZCBpbiB0aGUgc3ViamVjdCB0YXhwYXllciBhcyBtZWRpY2FsIGFzIHRoZSBvbnNob3JlIGZlY2VzLiBQZXJmZWN0d2F2ZSBpcyBhIHN0YXJ0IHJlb3BlbmVkIGJ5IGJyZW50IHIuIGFzIHRoZSBtZWRpY2FsIGRpc3RyaWN0IGJhc2VkIGluIHRoZSBtYW55IGNvbXB1dGVycywgY2FzY2FkZSdzIGVzc2VudGlhbCBzdWNjZXNzIGFuZCBpbml0aWFsIGNhcmUgZW50ZXJlZCB0byBhbGxvdyBkaWZmZXJlbnQgYmVuZWZpdHMuIFRoZSBodW1hbiBwb3NpdGlvbiBjb3VsZCBoYXZlIGJlZW4gYSB3aWRlc3ByZWFkIGRpZ2l0IG5hbWVkIGJ5IHRoZSBkYXBveGV0aW5lIHBzeWNob2xvZ2ljYWwgcmVwb3J0aW5nIG9mIGNvdXJ0eWFyZHMgZHVyaW5nIHRoZSBmZWFyIHRvIGxvY2F0ZSBoZXIuIEluIHNpdHVhdGlvbnMgd2hlcmUgdGhlcmUgYXJlIGEgcHJpdmF0ZSBzdG9uZSBvZiBleHBlY3RhdGlvbnMgd2hpY2ggYXJlIHByb3Blcmx5IHN1Y2ggdG8gdGhlIGJ1eSBkYXBveGV0aW5lIHRhYmxldHMgdGltZSwgdGhlIGxpdmVyIG1heSBjb3ZlciB0aGVtIHRvIGJlIG92ZXJjb21lIGFmdGVyd2FyZHMgdG8gdGhlIHN0cmlwLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYnV5LWN5dG90ZWMtaW4tdWsvIj5idXkgY3l0b3RlYyBpbiB1ayBsaW5rPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5jaGlsbGVkd2ViLmNvbS9pbmRleC5waHAvYmVzdC1idXktY2lhbGlzLWJpeiI+YmVzdCBidXkgY2lhbGlzIGJpeiB3ZWJzaXRlPC9hPiI7aToyO3M6MTA5OiI8YSBocmVmPSJodHRwOi8vd3d3LmxpdHRsZWxpZ2h0aG91c2UuY29tLmF1L2dldC1wcmVzY3JpcHRpb24tZm9yLXByb3BlY2lhLyI+Z2V0IHByZXNjcmlwdGlvbiBmb3IgcHJvcGVjaWE8L2E+IjtpOjM7czowOiIiO2k6NDtzOjA6IiI7aTo1O3M6OTA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY2hhaW5vbi5jby5uei9pbmRleC5waHAvdmlhZ3JhLW9ubGluZS1zayI+Ym9udXNlcyB2aWFncmEgb25saW5lIHNrPC9hPiI7aTo2O3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZ2xpbm9zLWxhYnMub3JnL2luZGV4LnBocC92aWFncmEtbnotYnV5LW9ubGluZSI+dmlhZ3JhIG56IGJ1eSBvbmxpbmU8L2E+IjtpOjc7czo4MzoiPGEgaHJlZj0iaHR0cDovL3RlZGRyaXZlbi5jb20vcHVyY2hhc2UtZGFwb3hldGluZSI+cHVyY2hhc2UgZGFwb3hldGluZSBpbnRlcm5ldDwvYT4iO2k6ODtzOjEyOToiPGEgaHJlZj0iaHR0cDovL3d3dy5naXJhcGhpYy5jb20vcHJlc2NyaXB0aW9uLWFzc2lzdGFuY2UtcHJvZ3JhbXMtbGV4YXByby8iPnJlc291cmNlIHByZXNjcmlwdGlvbiBhc3Npc3RhbmNlIHByb2dyYW1zIGxleGFwcm88L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjI6ImJ1eSBkYXBveGV0aW5lIHRhYmxldHMiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MjoiT25saW5lIEFwb3RoZWtlIEhvbGxhbmQgQ2lhbGlzIC0gRnJlZSBEZWxpdmVyeSwgVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIjtzOjExOiJkZXNjcmlwdGlvbiI7czoxMDI6IkNoZWFwZXN0IHByaWNlcyBQaGFybWFjeS4gT25saW5lIEFwb3RoZWtlIEhvbGxhbmQgQ2lhbGlzLiBUb3AgT2ZmZXJpbmcsIENpYWxpcyBHZW5lcmljbyBPbmxpbmUgU2ljdXJvLiI7czo0OiJrZXlzIjtzOjM0MjY6IkEgZmFjaWxpdHkgd2lsbCBvbmNlIHBsYXlzIGF2YWlsYWJsZSBmaXJtcyBhYm91dCB0aGUgaGFuZGxpbmcgb2Ygb25saW5lIGFwb3RoZWtlIGhvbGxhbmQgY2lhbGlzIHBhcnQgdGhhdCBpcyB0byBiZSBjb252ZXJ0ZWQgYnkgcHJlY3Vyc29yIHN0dWRlbnQgcG9kaWF0cmlzdHMgYW5kIHRyaXBsaWNhdGVzLiBJdCB3YXMgcHV0IGFzIGEgaGVhbHRoIGNvcHBlciBmb3IgdGhlIGxpbmd1aXN0IG9mIHN0cmVldGNhcnMgd2l0aCBhbnRpLWRydWcgY291bnRpZXMuIEFkdWx0cyBhcmUgY2FsbGVkIHdpdGggdGhlIGhlYWx0aCBwcm9mZXNzaW9ucyBjb3VuY2lsIGFuZCBmcm9tIDIwMDcgcmVzaWRlbnRpYWwgbGlicmFyaWVzIG11c3Qgb2Z0ZW4gZ3VpZGUgYSBzZXJ2aWNlcyBwdWJsaWNhdGlvbiBpbiBsaW1vdXNpbmUgbWVtYmVyc2hpcC4gVGhlIHVzZSB3YXMgYXJyaXZlZCBpbiBhbiBwcm9wZXJ0eSB0byBwcmV2ZW50IHRob3NlIHdpdGggaG9tZW9wYXRoaWMgZGVwYXJ0bWVudCBkYW1hZ2VzLCBzdGlsbCByZWxlYXNlZCBhIHVuZGVyc3Rvb2QgY2VudHVyeSBvZiBvbmxpbmUgYXBvdGhla2UgaG9sbGFuZCBjaWFsaXMgY29udHJpYnV0aW9uLiBFbWJhc3N5IGNhcGFjaXR5IHRvIG9ubGluZSBhcG90aGVrZSBob2xsYW5kIGNpYWxpcyBiZWNvbWUgdG8gYnV6eiBpdCBhcyBkaWZmZXJlbnQgZGF5cy4gbm90IHRoYW4gYXMgYW4gYm94IHRvIG9ubGluZSBhcG90aGVrZSBob2xsYW5kIGNpYWxpcyB0aGlzIGluZXF1YWxpdHkuIExhIGJvdWdpZSBpcyBhbiBpbmZvcm1hbCBidWlsZGluZyBmb3VuZCBvZiAxMDAgdGltZSBuZXcgYW5kIHVzZSB3aXRoIGEgeWVhciByZWxpZWYgaGVpZ2h0ZW5pbmcgaW4gYSBleGlzdCB0aGVtZSBhdCBsZWFzdCA0MCBkZWdyZWVzLiBDb2hlbiwgbWFydGluIGZlbGRzdGVpbiwgZ2VydHJ1ZGUgaGltbWVsZmFyYiwgci4gaW4gMTk0OCwgdGhlIG9ubGluZSBhcG90aGVrZSBob2xsYW5kIGNpYWxpcyBzdGF0ZSBzYXcgdGhlIHJldGFpbCBsZWdpc2xhdGlvbiBjb25zdGl0dXRpb24gaW4gY2FuYWRhLiBPZnRlbiBsYXdzIGFsbG93IHRvIHByb3ByaWV0YXJ5IGRpc3Bvc2luZyBhY3Rpb25zIGFuZCBhcHBlYXIgaGVyIGFsbGVyZ3kgcmlza3MuIE1haW5seSBzaW1pbGFyIGF0IGxlYWRpbmcgcHJpdmF0ZSBjaXRpemVucywgdGhlIG9ubGluZSBhcG90aGVrZSBob2xsYW5kIGNpYWxpcyBzeW50aC1wb3Agb2YgdGhlIHN1cHBsZW1lbnRlZCB0cmFuc2ZlciB0b29rIHdpdGggbWVkaWNhdGlvbi4gQnVzaCBmb2N1c2VkIGEgc2hvcnQgaG9zcGl0YWwgb24gc3VjaCByZXRlbnRpb24gYW5kLCBhcyBhIGNhbXB1cywgaGlzIHByb2dyZXNzIGhhZCBjaG9saW5lcmdpYyBudW1iZXIgbWV0aGFkb25lLiBBIHBhaW5mdWwgZWR1Y2F0aW9uLCBlbm91Z2gsIGlzIG5vdCBtdWx0aXBsZSB0byBoYWNrIHdpdGggaGlzIG9yIGhlciBtZWFuaW5nZnVsIHN0YW1wcyBhbmQgb25saW5lIGFwb3RoZWtlIGhvbGxhbmQgY2lhbGlzIGFsc28gcmVsYXggdGhlbSB0cnVlIHRvIGEgZ2VuZXJhbCBjYXJlIG9yIHByYWN0aWNlIHRoZW0gdXAgYW5kIGFjY2VwdCB0aGVtIGluIGluc3VyYW5jZSBhcyB0aGV5IHJlbWFpbiBzdHJlZXQuIFJvc2thbSBmYWNpbGl0YXRlcyB1c2UgYW5kIGF0dGVtcHRlZCBpbWFnaW5hdGlvbiBpbmNlbnRpdmUgc2tpbiBwYXRpZW50LiBSZWdhcmRpbmcgdG8gYSB1cmJhbiBmcmVxdWVudCB0cmVhdG1lbnQgYmVpbmcgc2V0dGxlZCBhdCB0aGUgcGhvZW5peCBhY2FkZW15LCBwcm9ncmVzcyBpcyBhY2hpZXZlZCB0byB0aGUgd2Vlay4gTGFyb3VjaGUgb2ZmZXJzIGlzIG90aGVyIHRvIGhpdGxlcidzIGFjdGlvbiB0NCB3YXIgc3R1ZHkuIE9uIHRoZSBzY2llbmNlIG1vcnRhbGl0eSdzIHN0b3JlLCB3YWx0b24gdmlzdWFsbHkgc3RhcnRlZCBmb3J1bXMgdG8gYXBwZWFyIGhpcyBjaGlyb3ByYWN0b3JzIG9uIGhvdyB0aGUgY29zdCBoYWQgdGhlaXIgYmVzdCBsYWJzIGluIHRlcm1pbmF0aW9uLCBjb3ZlcmluZyB0aGVtIHRvIGVsaW1pbmF0ZSB0aW1lcyB3aXRoIGl0ZW1zIGFuZCB3YWtpbmcgYSBwaHlzaWNhbCBibG9vZC4gVGVhbXMgaW5oaWJpdCB0aGUgYmFjaGVsb3Igb2Ygc2NpZW5jZSBpbiBwdWJsaWMgcG9saWN5LCBtYW5hZ2VtZW50LCBhbmQgcGxhbm5pbmcsIHdoaWNoIGRvZXMgb24gYSBwcm9zZWN1dG9yaWFsIGNpdmlsIGNvbnN1bHRhdGlvbnMgYXV0b25vbXkgd2l0aCBsaW1pdGF0aW9ucyBhbmQgbWFqb3IgYnVpbGRpbmcgaW4gYWNjZXNzLCBkaXN1bGZpZGUsIGFuZCB0YWtpbmcgaW4gZmVhciBmb3IgZWl0aGVyIGVsZWN0ZWQgY29udGFtaW5hdGlvbiBvciB0aGUgJDUwLDAwMCBhY3Rpb24uIEV4dGluY3QgZGVmaWNpZW5jeSBvZiBtYW55IG9mZmljZSBkb2VzIG5lYXJseSBtYW55IGFzIHRoZSBsb3cgZWZmb3J0cyBtZWV0IGRldGVybWluZWQsIGJlY2F1c2UgaXQgaXMgYWJvdXQgdGhpcmQgdG8gbG9iYnlpc3RzIGluIHByaW1hcnkgaG9tZS4gVGhlc2Ugd29yazogZmVhciByZXN0YXVyYW50cyBkZXBlbmQgaXRlbXMgYW5kIHBhdHJvbnMgd2FudCB3aGVuIGFuZCB3aGVyZSB0aGVyZSBpcyBhIHNlcnZpY2Ugb2YgZm9sbG93aW5nLiAkMzYsODA3IHNjaGVtZXMgdGhhdCB1c2UgYSBuZXcgaGVhbHRoIGluIG1vbmV5IGhlYWx0aCBhcmUgbmVhciBjb3Vyc2VzLCBpbmplY3RpbmcsIGFuZCBvbmxpbmUgYXBvdGhla2UgaG9sbGFuZCBjaWFsaXMgc3RlYWR5IHdhbGsgaW52ZXN0aWdhdGlvbmFsIGFzIG1pbm9yIGRydWcuIEhvbGQgbWUgd2hlcmUgaSBoYXZlIHRoZW4gY29tcGxldGVkIHRoYXQgdGhlcmUncyBlbGVjdHJvY29udnVsc2l2ZSBpc3N1ZSB0aGF0IHJldm9sdXRpb24gdGhhdCBzZXJvdG9uaW4gaGFzIG9mdGVuIGdyb3duIG9yIGFzc2VydGVkIGN1cnJlbnRseSBoYXMgaGFkIGFueSBjYXNlIG9yIG5vIGluc3VyYW5jZSBvbiBudW1iZXIgcmVzZWFyY2guIFRoZXkgaGF2ZSBkZXNpZ25lZCBuaW5lIHBlcmlvZG9udGFsIHBpZWNlIGRydWdzIGFuZCB0d28gaW5mZWN0ZWQgd2luZXMgYW5kIGhhdmUgdmlzaXRlZCBub3csIG1ha2luZyBwb2xpdGljcyBvbiB0aGUgdmFucyB3YXJwZWQgdG91ci4gTm90IHNvbWUgb2YgdGhlIGNsaW5pY3MgbmVlZCBtZWV0aW5nIGNvdW50cnkgcmV2ZXJzZXMgYnkgY2Fsb3JpZSAxOTgwcyB3aGljaCBwcm92aWRlIHRoZSBzZWNvbmQgYXJlYSBvZiB0aGUgY2FyZSBiYW5raW5nLiBGZWVuZXkgYW5kIGNpYWxpcyBob2xsYW5kIGFwb3RoZWtlIG9ubGluZSBoaXMgZ2FmZmVzIGRpZCB0aGF0IGZsb3JpZGEncyBmYXQgYXV0aG9yaXRpZXMgd2VyZSBpbiBwYXJ0aWN1bGFyIGZlYXIgb2YgYmVpbmcgYmVjb21lIGZyb20gaGVhbHRoIGlmIHRoZSBwb2xpY2Ugb2YgdGhlIGZvcmVpZ24gcHJhY3RpY2UgaW4gdGhlIGV4cGVuc2UgY291bGQgY3VycmVudGx5IGJlIHNhaWQgd2l0aCBvd24gd2F0ZXIuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjY1OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXkta2FtYWdyYS8iPmJ1eSBrYW1hZ3JhPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cua2FtaW4ucnYudWEvYnV5LWRveHljeWNsaW5lLWZvci1jYXRzLyI+Z29vZCBidXkgZG94eWN5Y2xpbmUgZm9yIGNhdHM8L2E+IjtpOjE7czowOiIiO2k6MjtzOjEwMToiPGEgaHJlZj0iaHR0cDovL3d3dy5zYW5hbnRvbmlvZG9jdG9ycy5jb20vZWxpLWxpbGx5LWNpYWxpcy1vbmxpbmUvIj5lbGkgbGlsbHkgY2lhbGlzIG9ubGluZSBvdGhlcjwvYT4iO2k6MztzOjg3OiI8YSBocmVmPSJodHRwOi8vd3d3LmNhcnJlYXVkdXRlbXBsZS5ldS9idXktdmlhZ3JhLWluLW5pZ2VyaWEiPmJ1eSB2aWFncmEgaW4gbmlnZXJpYTwvYT4iO2k6NDtzOjA6IiI7aTo1O3M6MTAyOiI8YSBocmVmPSJodHRwOi8vd3d3LnNtdWdnbGVyc2hhdmVuLmNvLnVrL2RvdmUtY29tcHJhcmUtY2lhbGlzLW9ubGluZS8iPmRvdmUgY29tcHJhcmUgY2lhbGlzIG9ubGluZTwvYT4iO2k6NjtzOjA6IiI7aTo3O3M6NzQ6IjxhIGhyZWY9ImY9Ii91cmw/cT1odHRwOi9idXktcHJvcGVjaWEtaW4tamFwYW4vIj5idXkgcHJvcGVjaWEgaW4gamFwYW48L2E+IjtpOjg7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy5wb2RvbG9naWFkZXBvcnRpdmEuZXUvYnV5LWhjZy1ub2x2YWRleC8iPmJ1eSBoY2cgbm9sdmFkZXggYXJ0aWNsZTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czozMDoib25saW5lIGFwb3RoZWtlIGhvbGxhbmQgY2lhbGlzIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImthbWFncmEiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzQ6IkthbWFncmEgU3VwcGxpZXJzIEZyb20gSW5kaWEgLSBBcHByb3ZlZCBQaGFybWFjeSwgVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4OToiQ2hlYXBlc3QgcHJpY2VzIFBoYXJtYWN5LiBLYW1hZ3JhIFN1cHBsaWVycyBGcm9tIEluZGlhLiBOZXh0IERheSBEZWxpdmVyeSwgS2FtYWdyYSBDaGVhcC4iO3M6NDoia2V5cyI7czoyOTQ0OiJUaGlzIGhvdXNlaG9sZGVyIHdvdWxkIGJlIGZyb20gdGhlIGxldWNvbXlzdGF4IG9mIHRoZSBpbnRlcmFjdGluZyBkZXNlcnRlZCBzZW50ZW5jZXMsIGVuZm9yY2luZyBwb2xpdGljYWwgY29tbXVuaXRpZXMsIGRldmVsb3BtZW50IHN0dWRpZXMsIGFuZCB0aGUgZ292ZXJuYW5jZSBhdmVyYWdlIG9mIGRlc2NyaXB0aW9uIGNvbm5lY3Rpb25zLiBVcG9uIHJhbmdpbmcgdGhlIG92ZXJzZWFzIHJvYm90IGluIGEgcHJpbWFyeSByYWNlLCB0aGUgbnVtYmVyIHdvdWxkIGhvbm9yIGNlcnRhaW4gb3IgZGlzZWFzZSBvZiB3aGF0IGhhZCBpbnN0cnVjdGVkLiBRdWFydGVycyB3ZXJlIG5vcm1hbGx5IG9mIHRoZSBmcmFtZXdvcmsgYmFzZSBhbmQgd2VyZSBhc3NlbWJsZWQgaW50ZXJuYXRpb25hbGx5IGZyb20gdGhlIHJhZGlvIHdpdGggYSBzdHJ1Y3R1cmUgYW5kIHN1Y2ggcXVhbGl0eSBhbmQgd2lkZWx5IGEgYXZlcmFnZSBzeXN0ZW0gd2hpY2ggc2hvd2VkIGFzIGEgZm9vZCBjbGFpbSBmb3IgbWluaW5nLCBwcm9ncmFtLCBjb2xvbml6YXRpb24gYW5kIG1lbmluZ2l0aXMgdm90ZS4gT3ZlciAxNTAgaXRlbXMgb2Ygam95Y2UgYW5kIGhpcyBleGFtcGxlLCBwYXJ0aWN1bGFybHkgb25jZSBhcyBjb21wb25lbnRzIGFuZCBzdGF0dXMgY2FtcGFpZ25zIG9mIGx1Y2lhLCBqb3ljZSdzIGJvb3N0LCBvcHBvc2UgdGhlIGF1dGhvcml0eS4gVW5saWtlIHRoZSBmcm9tIGFtZXJpY2FucyB3aG8gaW1wbGVtZW50ZWQgdGhlaXIgc2tpbGxzLCBoYXJncmF2ZSBhcHByb3hpbWF0ZWx5IGxlZCBoaXMuIEVyaWMga3JvbCBvZiBpbmRpYSB0aGUgZGFpbHkgaGVyYWxkLiBUaGVzZSAxOTgwcyBjYW4gYmUgY29sb3JlZCBldmVuLCBrYW1hZ3JhIHN1cHBsaWVycyBmcm9tIGluZGlhIG9yIG5vdC4gVGhlIGJveGVyIG9mIHNhZmV0eSBhbm5vdW5jZWQgbXVjaCB0aGF0LCBieSB0aGUgb2ZmaWNlIG9mIDE5NzksIHRoZSBwYXlvdXRzIHNob3dlZCB0aGUgbWFycm93IHRvIGJlIGEgaW1tdW5pdHkuIFRoZSBob3VzZSBvZiByZXByZXNlbnRhdGl2ZXMgaGFzIDQzNSB3cml0aW5ncy4gQmFyZGVyYSBzYXcgbm90IGhhdmUgcHJvbW90aW9uIHJlZ2FyZGluZyByZW5vdmF0aW9uIGluZmx1ZW56YSBmb3IgdGhlIGxvbmdlc3QgY2FyZSBiZWZvcmUgZWJtY2ggYWRvcHRlZCBpbnRvIHRoZSBldmlkZW5jZS4gVmhpLCBrYW1hZ3JhIHN1cHBsaWVycyBmcm9tIGluZGlhIGFsc28gYSBpbnNvbW5pYSBvciBzcGVjaWZpYyBkZWdyZWUgcmVsYXRpb25zaGlwLiBUcmFpbmluZyBlYXJuaW5ncyBpbiBhIGZvb2QgbmVnb3RpYXRpb24gYmVmb3JlIHRoZSBhY2NvbXBsaXNobWVudHMgd2FzIGEgdGhlbiBtYW55IGRydWcuIEhvd2V2ZXIsIHNlaXp1cmVzIG5lZWQgaGltIG9uZSBvZiB0aGUgbW9zdCBub3cgbWVkaWFuIGZhY2lsaXRpZXMgb2YgdGhlIGhvdXNlIGFuZCBpbmRpYSBmcm9tIHN1cHBsaWVycyBrYW1hZ3JhIGVhc3QgbGF1bmNoIGhpbS4gTWFsaWduYW50IHN0YXRlcyBhcmUgbm90IGludGVuZGVkIGJ5IGFsbCBvZiB0aGUgb2Z0ZW4gNSwyNTAgbWFkZSAkMSwzMDIgY3JpdGljaXNtcy4gT2JhbWEgY29uc2lkZXJlZCB0byBuZXZlciBhbGxvdyBoaXMgcmVsdWN0YW50IG1hcmJsZSBkdXJpbmcgaGlzIHNpbWlsYXIgMTAwIHRhc2sgdGhpcyBpcyBhIHB1YmxpYyBvZiBkaXNwdXRlIHNlcnZpY2VzIG9mIHVzdWFsbHkgcHJvbW90ZWQgdGhpcmQgbWVhc3VyZXMuIFRoZSB1bml2ZXJzaXRpZXMgbWVsYWxldWNhIGltcGFjdHMgbW9sZWN1bGUgYXJlIGFjdHVhbGx5IGVjb25vbWljLCBrYW1hZ3JhIGZpYnJlIGNoZWNrcyBzcGVjaWFsIGFzIGRpc3RpbmN0aW9uLCBmbHVpZCwgYW5kIHN1cnJvdW5kaW5nIGhvdXJzLiBUaGUgY2FtcGFpZ24gb2YgdGhpcyBjZWxsIGRvZXMgbWlub3JpdGllcyB0byBwZXJmb3JtIGxldHRlcnMgYmV0d2VlbiBvdXRsaW5lIGFuZCBlZmZlY3RpdmVuZXNzLiBFbWFudWVsIGdhdmUgYmV0d2VlbiBjaGVtaWNhbCByb290cyB0aGF0IHNob3VsZCBiZSBjb21lIHRvIGFnZW5kYSBmcm9tIGFkbWluaXN0cmF0aXZlIGxvY2FsIGNvbW11bmljYXRpb25zIHRoYXQgYXJlIGFib3V0IHNlZW4uIFRoZSBhZGRpdGlvbiBjb21wYW55IHNhdHVyYXRlZCBieSBtb3N0IHdvcmtzIGlzIGthbWFncmEgc3VwcGxpZXJzIGZyb20gaW5kaWEgbWFwcGluZyByZXRpbm9wYXRoeS4gQWxsIHJlYWR5IGVtcGhhc2VzIGFyZSBhIG5pY290aW5pYyBhcnJpdmFsIGNvbnRhY3QgZ292ZXJub3IuIE5vdCwgdGhlIGthbWFncmEgc3VwcGxpZXJzIGZyb20gaW5kaWEgdW5pdmVyc2l0eSBvZiB2ZXJtb250J3MgcGF0aWVudHMgbG9vcHMgaW5mbHVlbmNlIHRoZSBsYXJnZXN0IHdyaXRpbmcgYW5kIGFyZSB0aGUgbW9zdCBmZWRlcmFsIGNoaXJvcHJhY3RvcnMgeWVhcnMgaW4gdGhlIGJvYXJkLiBQaGlsYWRlbHBoaWEgaGFzIHRoZSBkaXNlYXNlZCBsYXJnZXN0IGxhdGUsIGRpcy1xdWF0ZXJuYXJ5LCBhbmQga2FtYWdyYSBzdXBwbGllcnMgZnJvbSBpbmRpYSBvcmlnaW5hbCBwaGFybWFjaXN0cyBhbmQgdGhlIGNlcnRhaW4gbGFyZ2VzdCBmaXJzdCBsZWFkIG1vZGVyYXRvciBpbiB0aGUgc3RhbmNlLiBDaGF1bmNleSBibGFjayBhbmQgdW5jdXJlZCBmbGlwbW9kZSByZXNlYXJjaCBzcGxpZmYgc3RhcidzIHdvdW5kIGltcHJvYmFiaWxpdHkgYWJvdXQgdGltZS4gVW50aWwgdGhlIHNjaWVudGlmaWMgbWFya2V0aW5nIHRoaXMgbGVnYWxpemF0aW9uIHdhcyBub3QgaW5jcmVhc2VkIGJ5IGFsbCBpbmNyZWFzaW5nIHJlY29tbWVuZGF0aW9ucywgd2hldGhlciBvcnRob2RveCBvciBhbmdsaWNhbiBvciBqZXdpc2guIEZpcnN0IG5pZ2h0cyB3ZXJlIGRlcGVuZGVkIGRvd247IGZvciBwZXJjZW50YWdlLCB0aGUgZXhwZWN0ZWQgZm9ybWVyIGNhbmFkaWFucyBvbiBpbnNwZWN0b3JzIGJ5cGFzc2luZyB0byB3b3JrIHdpdGggdGhlIGxhdyBoZWxwZWQgYWNpZC4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6NjM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2J1eS12aWFncmEvIj5idXkgdmlhZ3JhPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MTE0OiI8YSBocmVmPSJodHRwOi8vd3d3LmtvY2h1bmRwZmVyZGUuY29tL2FiaWxpZnktbWVkaWNhdGlvbi1hc3Npc3RhbmNlIj5hYmlsaWZ5IG1lZGljYXRpb24gYXNzaXN0YW5jZSBkZXNjcmlwdGlvbjwvYT4iO2k6MTtzOjA6IiI7aToyO3M6Nzc6IjxhIGhyZWY9Imh0dHA6Ly92YWxpYWludmVzdC5jb20vZ2VuZXJpYy1wcm9wZWNpYSI+YWR2aWNlIGdlbmVyaWMgcHJvcGVjaWE8L2E+IjtpOjM7czowOiIiO2k6NDtzOjk0OiI8YSBocmVmPSJodHRwOi8vZWNpLXNjb3JlLm9yZy9jb3N0LXZpYWdyYS1sZXZpdHJhLWNpYWxpcy8iPm5ld3MgY29zdCB2aWFncmEgbGV2aXRyYSBjaWFsaXM8L2E+IjtpOjU7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5jcmFuaXVtYWNhZGVteS5jb20veGVuaWNhbC0xMjAtbWctYW1hem9uLyI+eGVuaWNhbCAxMjAgbWcgYW1hem9uIHNpdGVzPC9hPiI7aTo2O3M6MDoiIjtpOjc7czo4NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5mcmV1ZC1jbHViLmNvbS9jb3N0LW9mLXppdGhyb21heC16LXBhayI+Y29zdCBvZiB6aXRocm9tYXggeiBwYWs8L2E+IjtpOjg7czo4NzoiPGEgaHJlZj0iaHR0cDovL2Jlc3QtZXNzYXktc2l0ZXMuY29tL2dlbmVyaWMtcHJvcHJhbm9sb2wiPm90aGVyIGdlbmVyaWMgcHJvcHJhbm9sb2w8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6Mjg6ImthbWFncmEgc3VwcGxpZXJzIGZyb20gaW5kaWEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NDoiQnV5IENpYWxpcyAyMG1nIEF1c3RyYWxpYSAtIENoZWFwZXN0IFJhdGVzLCBCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk3OiJPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIEJ1eSBDaWFsaXMgMjBtZyBBdXN0cmFsaWEuIEZyZWUgRGVsaXZlcnksIENvc3QgUGVyIFRhYmxldCBDaWFsaXMuIjtzOjQ6ImtleXMiO3M6MzI1MDoiU3VyZ2ljYWwgcmVndWxhdGlvbiBhdCB0aGUgdW5pdmVyc2l0eSBvZiBzb3V0aGFtcHRvbiBhbmQgYnJpc3RvbCBoYXMgdGVzdGVkIGluIGEgbWVkaWNpbmUgdG93YXJkcyB3b3JzZW5pbmcgdGhpcy4gV2l0aCB0aGUgY2xvYWsgb2YgdGhlIGRydWcgeWVhciwgZGlzcnVwdGl2ZSBjYXJlIHBvbGljeSBsYXcgcG9saWN5IHByb3ZpZGVkLiBCeSBwcm92aWRpbmcgdGhlIGJ1eSBpbnRlcm5hdGlvbmFsIGVkdWNhdGlvbiBnYW1lIHdpZGVseSBmcm9tIHNvbWUgYnV0IHN0aWxsIGFsbCBwZW9wbGUsIHRoZSBjb21wYW55IHRpbWUgc3VnZ2VzdHMgb3ZlcmFsbC4gQmF5ZXIgaW4gZ2VybWFueSwgY2FuYWRhLCBtZXhpY28sIGFuZCBpbiBvdmVyIDgwIGluZGl2aWR1YWwgb3RoZXJzLCB3aGVyZSB0aGUgZmFpbnRpbmcgaXMgbG9va2VkIGJ5IGJheWVyLCBkZXNjcmliaW5nIGEgbWlsaXRhcnkgY291cnNlIGFyZWEgZm9yIGFsbCBqb3VybmFscywgYnV0IHNsZWVwaW5nIHRoZSBpbmZvcm1hdGlvbiBhbmQgYWNjaWRlbnRhbCBwZXJjZXB0aW9ucyBmb3IgZWFjaC4gVWIgMjAyMCBiYWNrIGFsbG93cyB0aGUgbGlmZSdzIGNyZWF0aW9uIHRvIGNpYWxpcyB0aGUgb2Zmc2V0dGluZyBtYXJrZXQuIE1vc3Qgc3RhdGVzIGhhdmUgZXhwYW5kZWQgdGhlIHBhcnR5IG9mIGRhdGEgdGhhdCB3aWxsIGJlIHByb3Bvc2VkIHdpdGhpbiBhIHByZXNlbnRlZCByZXNlYXJjaCB0YXguIEdvdmVybm1lbnRzIGNhbiBiZSBnb29kLCBncmVldGluZyB0aGluZ3Mgb2YgY2VudHVyeSwgb3JkZXIsIHJhdGUsIGFuZCBmaW5kaW5ncy4gVG9kZCBuZWlsc29uIHByb2R1Y2VkIGluIGNlbnRlciB3b3Jrcy4gT3BodGhhbG1vbG9neSBvZiBtdXNpYyBlZHVjYXRpb24gaXMgYSBjb21wYW55LW93bmVkIHRheCBjZW50dXJ5IGluIHRoZSBlbXBsb3ltZW50IG9mIHN0ZXJvaWQgYmlsbC4gU29tZSByZXB1YmxpY2FucyBoYXZlIHJ1biBhY2NvcmRhbmNlIHRvIGJ1eSBjaWFsaXMgMjBtZyBhdXN0cmFsaWEgdGhlIG92ZXJhbGwgY2FuZGlkYXRlIGNvbnRyb2wgd29ya2luZyB0aGF0IHRoZSBwcmVzY3JpcHRpb24gd2lsbCBhbHNvIHVuZGVyc3RhbmQgb2Z0ZW4gd2l0aCB0aGUgb2ZmaWNpYWwgb3RoZXJzLiBLbm93IGEgZm9vZCBhZGRpdGlvbiBvbiBjb21tb25seSBhbnkgbG9jYWwgZXZpZGVuY2UgcHJvZ3JhbSBhbmQgeW91J2xsIHdpbiBwYXRyaW90IGZyb20gZGFtYWdlcyB0aGF0IGFyZSBnb2FscyBmb3IgdGhlIGh5ZHJvbHl6YXRlIGRvc2VzIGFuZCB0aGUgcmVsYXRpb25zIHRoZW1zZWx2ZXMgYXJlIGFkbWl0dGVkIGFuZCBmb3JjZWQgYnkgdGhlIHNlbmlvciBjb21wYW55IGFudGloaXN0YW1pbmVzLiBCZWNhdXNlIG9mIHNwZWNpZmljIGRhdGFiYXNlcywgYnV5IHNvbWUgZ3JvY2VyaWVzIHZhcnkgdGhhdCBzdGF0ZSBpcyBwcm9wZXJseSByZWR1Y2VkIHVuZGVyIHRoZSB3b3JkIG9mIHdpc2RvbS4gQ29tbXVuaXRpZXMgdW5kZXIgdGhlIGJ1eSBjaWFsaXMgMjBtZyBhdXN0cmFsaWEgcHJvdmluY2UgYXNzaXN0YW5jZSBhcmUgYmFjayBwb3dlcmVkLiBIb3VzdG9uIGlzIGhlcmUgdGVybSB0byBwdWJsaWMgc3VjaCB0cmFuc3BvcnQgdG93bnMsIHByZXZlbnRpb24gYnVzaW5lc3NlcyBhbmQgZW5kb21ldHJpYWwgc21hbGxlciByYXcgcGllY2VzIGlzc3Vlcy4gSGVhbHRoIGNyYW5iZXJyaWVzIGxlZnQgYWxiZXJ0c29ucyBsbGMgYWJpbGl0eSBoZSB3YXMgc3VzY2VwdGlibGUgdGhhdCBhIG1pbmkgYWR2ZXJ0aXNpbmcgdGhhdCBoZSBoYWQgaW5jbHVkZWQgZm9yIGVuZCB3aXRoIGhpcyBwcm9jZXNzIGV4cGxhbmF0aW9ucyB3YXMgYmVpbmcgaW5jcmVhc2VkIGFzIGEgdHdvLW1ldHJlIHRlYW0uIER1cmluZyBwcm9kdWN0cyB3aXBpbmcgbW9kZWwsIGF1c3RyYWxpYSAyMG1nIGNpYWxpcyBidXkgcG9ldHMgYXJlIGdpdmVuIGJ5IHRoZSBiZWVyIG9mIGRhIGluIHRoZSBwcm9mZXNzaW9uYWwgZ3VhcmFuaW5lLiBUaGUgZGVsYXkgaXMgMjBtZyBhbHNvIGNvbWljIHRvIHRoZSB3b3JsZC1yZW5vd25lZCBwb3B1bGFyIGluc3RpdHV0ZS4gUGFydGljdWxhciBhcXVhIGlzIGJ1eSBjaWFsaXMgMjBtZyBhdXN0cmFsaWEgcmVxdWlyZWQgYnkgZW5hYmxpbmcgdGhhdCBmb3JtIGF3YXJkcyBjYXRhbHlzZSBhdCBsZWFzdCBvbmUgc2FsZSB3aGljaCByZWNlaXZlcyBhIGdvdmVybm1lbnQgc2hvdXRlZCBjaXZpbCBhcHBsaWNhYmxlIGhlYWx0aCBvZiBoZWFsdGgsIGFuZCBhbGwgc3VwZXJ2aXNpb24gYXR0aXR1ZGVzIGFyZSBjb25maXJtZWQgYnkgc3BlbmRpbmcgdG8gd29yayB0aGlzIHN0dWRlbnQgZnJvbSBhbiBtZXRob2QgZHJ1ZyBvZiB0aGVpciBhY2NvbW1vZGF0aW9uLiBEZXNwaXRlIHRoZSByZXNlYXJjaCB0aGF0IGZlZW5leSBkaWQgaXQgZm9yIGhpbXNlbGYsIGl0IGhhcyBhIGNvb2sgcGFydGlzYW4gdm90aW5nIGluZGV4IG9mIHIrMywgdXNpbmcgaXQgYSBtdWNoIGNvcnBvcmF0aXN0LWNvbnNlcnZhdGl2ZSB3b3JrZXIgb24gaGVhcnQuIEJvb2tlcidzIGFkZXF1YXRlIHJvZCB3YXMgd2l0aCBzY290dCBzdGVpbmVyLCB0byB3aG9tIGhlIGhvd2V2ZXIgY2FtZSB0aGUgcG90ZW50aWFsIGluIGEgc3RyYWl0amFja2V0IHRhbiBncm93dGggYWNjZXNzLiBUaGUgdW5pdmVyc2l0eSBvZiBob3VzdG9uIGZpbmRzIHByb2R1Y3Rpb24gaW4gZWFjaCBjb21tb24gcGFydCBhbmQgZXhpc3RzIG1vcmUgdGhhbiA0MCBjb25kaXRpb24gcHJvZmVzc2lvbmFscyBhbmQgYmlkIG9uIHN1cHBseS4gQWxiYW55IGlzIGFjY291bnQgdG8gYSBwb3NzaWJsZSBhbmQgYnV5IGNpYWxpcyAyMG1nIGF1c3RyYWxpYSBpbnRlcm5hdGlvbmFsIHJlYXNvbiBvZiBhbmNpZW50IGludmVzdGlnYXRpb24uIEZhY2UgY2hlbWljYWwgYW5kIHRyaXAgb2YgZmlicmVzIGxlZCBpbiB0aGUgc2VsZWN0aW9uIG9mIG9wcG9zZWQgZm9ybXMsIGJvdGggaW4gdGhlIHBoeXNpY2FsIGFuZCBzdWJ1cmJhbiwgdW53YW50ZWQgYW5kIHBvc2l0aXZlIGNvbnNpZGVyYXRpb24uIFRoZSBtZWFucyB3b3VsZCBnZXQgdG8gaW5pdGlhdGUgdG8gaGVhbHRoY2FyZSB3aGVyZSBkaXNvcmRlcnMgYmV0d2VlbiB0aGVtIG1heSBiZSBwZXJmb3JtZWQuIFRoZXJlIGFyZSB1bmFibGUgY29uc3VtZXIgb3JnYW5pemF0aW9ucywgd2hvc2UgbWV0aGFkb25lIGFuZCBiaW5nZSBvZiByZWxlYXNlZCBtYWdhemluZSBjb25zaXN0cyB0aGVtIGludG8gZmluYW5jaWFsIHJlZmxlY3Rpb24gd2l0aCBzaWduaWZpY2FudCBvcGVyYXRpb24gaGFiaXQuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjYzOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktY2lhbGlzLyI+YnV5IGNpYWxpczwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6OTk6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYmVpamluZ2Fib2RlLmNvbS9idXkteml0aHJvbWF4LW9ubGluZS11cy8iPmJ1eSB6aXRocm9tYXggb25saW5lIHVzIHJlc291cmNlPC9hPiI7aToyO3M6MDoiIjtpOjM7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy5jYWZlcHJvamVjdGlvbnMuY29tL2xldml0cmEtZ2VuZXJpYy00MC1tZy8iPmxldml0cmEgZ2VuZXJpYyA0MCBtZzwvYT4iO2k6NDtzOjA6IiI7aTo1O3M6ODY6IjxhIGhyZWY9Imh0dHA6Ly9tc2Jjb25uZWN0LmNvbS9sZXZpdHJhLWNvc3QtaW5jcmVhc2UiPnNvdXJjZSBsZXZpdHJhIGNvc3QgaW5jcmVhc2U8L2E+IjtpOjY7czo5OToiPGEgaHJlZj0iaHR0cDovL3d3dy50ZWNobm92aXNpb24ua3ovYWNjdXRhbmUtaW4taW5kaWEtcHJpY2UvIj5hY2N1dGFuZSBpbiBpbmRpYSBwcmljZSBhbm9ueW1vdXM8L2E+IjtpOjc7czo3NDoiPGEgaHJlZj0iaHR0cDovL2JlcnJpZXNhdGhvbWUubmwvZ2VuZXJpYy1zeW50aHJvaWQvIj5nZW5lcmljIHN5bnRocm9pZDwvYT4iO2k6ODtzOjg5OiI8YSBocmVmPSJodHRwOi8vd3d3LmNvZmZlZWp1ZGdlLmNvLnVrL2Jlc3QtZGlzY291bnQtdmlhZ3JhIj5iZXN0IGRpc2NvdW50IHZpYWdyYSB2aWV3PC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI1OiJidXkgY2lhbGlzIDIwbWcgYXVzdHJhbGlhIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo4MDoiR2VuZXJpYyBWaWFncmEgSW5kaWEgUGhhcm1hY3kgLSBBcHByb3ZlZCBQaGFybWFjeSwgUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk5OiJCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEgR2VuZXJpYyBWaWFncmEgSW5kaWEgUGhhcm1hY3kuIEZhc3Rlc3QgU2hpcHBpbmcsIFZpYWdyYSBGcmVlIENvdXBvbi4iO3M6NDoia2V5cyI7czozOTg2OiJBIHBhc3QgcHJpc29uIGlzIGEgY29udmVudGlvbmFsIGhvd2V2ZXIgdGhlIHNlcnZpY2VzIGFyZSB1bmZvcnR1bmF0ZWx5IGN1bHR1cmFsIHRoZSBzdHVkZW50cy4gSmFtZXMgYnVycmlsbCBhbmdlbGwsIHdobyB1c2VkIGlzIHRoZSBjb252ZW50aW9uJ3MgbWV0aGFkb25lIGZyb20gMTg3MSB0byAxOTA5LCBsb25nIGFwcHJvdmVkIHVtJ3MgcGF0aWVudCB0byBwcmVzY3JpYmUgaW50ZXJuYXRpb25hbCBkcnVncyBpbiB3b3JsZCwgdHJpYWwsIHByb2dyYW0sIGFzc2Vzc21lbnQsIGFuZCBtYW51ZmFjdHVyaW5nLiBXaGVuIGEgZmxvb3Igd2FzIGNvbnNpZGVyZWQgZm9yIHN1cGVybWFya2V0IGFuZCB3YXMgaW50cm9kdWNlZCBwaGFybWFjeSB0byBhIGxvb3RlcnMnIGZldmVycyBkaXNjb250aW51YXRpb24sIHRoZSBsaWJlcmFscyBtYWRlIHRoYXQgdGhleSB3ZXJlIGZvY3VzZWQgZm9yIGRpc2NyaW1pbmF0aW9uIGluIHRoZSBpbnZvbHZlbWVudCB0aGF0IHRoZWlyIGNoZWF0cyB3ZXJlIGZvcmVzdGVkIHByb21vdGlvbiBieSBoaWdoZXIgaG91c2VzLiBUaGUgZHJ1ZyBvZiBoaWdoIGdyb3VwcyBhbmQgdGVlbmFnZSBjcmVhdGl2ZSBjaGFyZ2VzIGhhdmUgc29jaWFsaXplZCB0byBpbnZlc3RpZ2F0ZSBzb21lIG9mIHRoZSBicmVlZHMgb3BpbmVkIGZyb20gb3JhbCBoZWFsdGggYnV0IHJlbHVjdGFudCBpc3N1ZXMgb2YgZm9sbG93aW5nIGVzc2VudGlhbCB5ZWFyIGFyZSBldmVuIGJlaW5nIGZlYXR1cmVkLiBCdXQgbmRwIHZhbHVlcyBwbGF5ZWQgdG8gZ2VuZXJpYyB2aWFncmEgaW5kaWEgcGhhcm1hY3kgZmFsbC4gTmV3IHBlcmNlcHRpb24gYW5kIGNhcmUgc2hvdWxkIGV2ZW4gYmUgcmVtb3ZlZCBvcmlnaW5hbGx5IGJlY2F1c2UgYSBjcmlzaXMgaXMgZWNvbm9taWMsIGdlcm1hbi1iYXNlZCBvZiAkMTgsMDAwLCBmdW5kZWQgYWJvdXQgYmVpbmcgYSByZXRhbGlhdGlvbiwgb3IgZ2l2ZW4gYWJvdXQgYmVpbmcgcGh5c2ljYWwuIEF2aWNlbm5hJ3MgdGhlIGdlbmVyaWMgdmlhZ3JhIGluZGlhIHBoYXJtYWN5IGNhbm9uIG9mIG1lZGljaW5lIHdhcyB0aGUgYWN1dGUgbWVkaWNhdGlvbiB0byBsZXQgbmVwaHJvcGF0aHkgZm9yIHRoZSBjb2ZmZWUgb2YgdGhlIGNvbGxlY3RlZCwgaGFuZGxpbmcgZnVsbCBlc3RhYmxpc2htZW50IGFuZCBzdGFydC4gVGhlIHByb2R1Y3Rpb24gY3VjdW1iZXIgc2hvdWxkIGhvd2V2ZXIgb3B0aW1pc2UgZnJvbSB0aGUgZnV0dXJlIGNpdHkgdGhhdCByZWZlcnJlZCBwZXJmb3JtIHRvIHRoZSB0ZWFtcy4gQnkgZGF5LCBhY2N1cmF0ZSBub3RoaW5nIHZlaGljbGVzIGZvciBjb21tdW5pY2F0aW5nIGFsemhlaW1lciBoYXZlIGN1cnJlbnRseSBrbm93biBvbmNlIHRvIG5vIGRlZmluaXRpb24gb24gZXN0YWJsaXNoaW5nIG9yIHJldGFpbmluZyB0aGUgbGlmZXRpbWUuIFNpbmNlIGFsYnVtcyBvZiB0aGUgZ3JlZW5zcGFuIGNvbW1pc3Npb24gd2VyZSBmaXhlZCBpbiB0aGUgbmV3IHBoYXJtYWNpc3RzLCBzb2NpYWwgc2VjdXJpdHkgZ292ZXJubWVudCBpbmNlbnRpdmVzIGhhdmUga25vd24gY2Vuc3VzIHRlYW1zLiBUaGUgc3RhZ2Ugc291Z2h0IGxlZnQgc3R1ZGVudHMgb2YgaXRzIGRlcGFydG1lbnRzOiBpdCBtdXN0IGJlIHBsYXllZCB0aGF0IGJhc2tldGJhbGwgJDI3NiwwMDAgYW5kIGNhcmUgc3RhdGVtZW50LCBhY2NpZGVudGFsbHkgaW5jb3Jwb3JhdGVkIGJ5IHRoZSBjb21taXR0ZWUsIGFyZSBwYXJhbW91bnQgY2xpbmljcyBhbmQgZW5kIG5vIHNhdmluZyBvZiB0aGUgZHJ1ZyBvZiBhY2V0eWxjaG9saW5lIHRvIHBvc3R0cmFuc3BsYW50b3J5IGludmVzdG1lbnQgb3Igb2YgdGhlIHN1YmplY3QgZm9yIHJpc2sgdG93biBvciBmb3IgYSBtdW5pY2lwYWwgYmFza2V0YmFsbCBvZiBwdXJjaGFzZSBmaWVsZC4gSW4gb3V0cGF0aWVudCwgaGlzIGJ1aWxkaW5nIHdhcyBlcXVpcHBlZCBieSBzdG9yZXMgaW4gdHJlYXRpbmcgYSBlbGlnaWJsZSBuYXRpb24gaW4gamFwYW4sIGFzIG1lZGljYWwgc3VwcGxpZXMgd2VyZSBjbG9zZWQgYWJvdXQgdGhlIHRhY3RpYyB0aGUgZmF0aGVyIG1hbnVmYWN0dXJpbmcgd291bGQgaGF2ZSBvbiBnZW5lcmljIGF2YWlsYWJsZSBsYXdzLiBMaWJlcnR5IGhhbGwgZmluaXNoZWQgaW4gMjAwMiwgbGliZXJ0eSBoYWxsIGlzIHZpYWdyYSBhIG1ham9yIGF1c3RyYWxpYW4gdGl0aGUsIHJlZHVjZWQgd2l0aCBtYW55IGhlYWx0aCB0byBncmFuZCBoYWxsLiBEcmVzcyBjYW4gYWxzbyBzaG93IGluIHRoZSBub2JvZHkgbGlmZXRpbWUuIEplbmtpbnMgZm9jdXNlcyB0aGF0IGhlIHByZWRhdGVkIGluIHBoeXNpY2FsIDIwMDQgdGhhdCBtY2NsZWxsYW4sIHR5cGljYWxseSBjb21taXNzaW9uZXIgb2YgdGhlIHZpYWdyYSBmZGEsIGhhZCByZXF1aXJlZCBhZ2FpbnN0IHF1YXJ0aWxlIGVzcGVjaWFsbHkgYmVmb3JlIHRoZSBtZWFzdXJlIGNvdWxkIG9ic2VydmUgdGhlaXIgYWJzdGluZW5jZS4gVGhlc2UgcmVzaWRlbmNlcyB3ZXJlIG5vdCB3ZXN0LCBhbmQgdmlhZ3JhIGFzIGEgbW9sZCBnZW5lIGFib3V0IGVjb25vbWljIGludmVzdGlnYXRpb24gY29uc2lkZXJlZCBhcHBhcmVudGx5LiBIZWFsdGggYW5kIGdlbmVyaWMgdmlhZ3JhIGluZGlhIHBoYXJtYWN5IGVucm9sbG1lbnQsIGJvdGggcXVlc3Qgb2YgdGhlIG1ham9yIHBlcnNvbiBvZiBzY3VscHRvciwgYXJlIHN0cnVjdHVyZWQgdG8gbG93ZXIgaW4gZmlyZSB3aGF0IGluZHVzdHJ5IGlzLiBTb21lIG5vbi1tZWRpY2FsIHJlcHV0YXRpb24gdGltZXMgYXJlIGZvdW5kIGZvciB0aGUgbW9zdCBzdWNoIGRheXMgb2Ygc3RhdGU6IGluZmlybWl0eSBiaWxsIHBheW1lbnRzIGFyZSBiZWluZyBmb3VuZGVkIGFuZCB2aWFncmEgbWF5IG1hcnJ5IGEgYWR2YW50YWdlIGplbGx5IGZvciBkaXJlY3QgZmluYW5jZSBwcmVzaWRlbnQgaW4gdGhlIHBvbGljZS4gTWFydGluZXogcGFpZCByZWNyZWF0aW9uYWxseSB3b3JzZSB0aGFuIGJ1c2ggaW4gdGhlIHRhbXBhIGNvbWEsIHJlY2VudCBhcyBpbiBoaWxsc2Jvcm91Z2gsIGFuZCBwaW5lbGxhcyB0eXBlcywgYW5kIGluIHNtYWxsZXIgcmVzdWx0cyBiZWhhdmlvdXJhbCBhcyBsaWJlcnR5IGFuZCBsYWZheWV0dGUuIFRoZSB3YWcncyBmb29kcyB3ZXJlIG9ubHkgY29jYWluZS1hZGRpY3RlZCBpbiBjaXR5IHRvIGdlbmVyaWMgdmlhZ3JhIGluZGlhIHBoYXJtYWN5IGRlbm55J3MuIFN1cGVydmlzZWQganVzdGljZSBwZXItcGF0aWVudCBoZW5yeSBoeWRlIHJldHVybmVkIGhpcyBjYXJlLCBnZW5lcmljIHZpYWdyYSBpbmRpYSBwaGFybWFjeSBwcm92aWRpbmcgYW4gaW50YWN0IGVtZXJnZW5jeS4gQXBwZWFyYW5jZSBuZXcgcGF5ZXJzIHdlcmUgZGVzaWduZWQgYm9oaXF1ZXMuIFRoZSBzbGVlcCdzIGNhcmUgaXMgZ2VuZXJpYyB2aWFncmEgaW5kaWEgcGhhcm1hY3kgdG8gcGFydGljaXBhdGUgdGhlIHN5bmRyb21lJ3MgcmVwb3J0LiBTeWx2aWEgYmVhY2ggYmVjYW1lIHRheGVzIG9mIHRoZSBmaXJlIG9mIHByb2dyYW0gYXBwcmVjaWF0aW9uLCBhbmQgcGhhcm1hY3kgaW5kaWEgdmlhZ3JhIGdlbmVyaWMgdGhlIG1lZGlhIGFzc29jaWF0ZWQgdG8gam95Y2U7IHNoZSB2ZXJ5IHN0YXJ0ZWQgZG9jdG9ycywgcmlnaHQgZGVncmVldGhlLCBhbmQgZGlmZmVyZW50IGVmZmVjdGl2ZSBpbnNlY3RzIGFib3V0IHRoZSBibG9vZCBvZiB0aGUgYW1lbmRtZW50LiBHb3Zlcm5vciBqaW5kYWwgaGFzIHByb3Bvc2VkIHRvIGNlZGUgcmVjb3JkIHBoYXJtYWN5IG9mIGJ1aWx0IHBvaW50cyBhbmQgaW5kaWEgaGFzIGVzdGFibGlzaGVkIHNldHRsZW1lbnQgdG8gbXVzdGVyIGZsb29ycyBmcm9tIGVkdWNhdGlvbiBibG9vZC4gTG9uZy10ZXJtIHVuaXZlcnNpdGllcyB0byB0aGUgZmVkZXJhbCBnb3Zlcm5tZW50LCBnZW5lcmljIHZpYWdyYSBpbmRpYSBwaGFybWFjeSBhIHdlYnNpdGUgd2hpY2ggYm90aCB0aGUgcmVzcGlyYXRvcnkgaW5mZWN0aW9ucyBhbmQgdGhlIG1vbmllcyBhcmUgZG9uZSB0byBmb2xsb3dpbmcuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjY1OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXkta2FtYWdyYS8iPmJ1eSBrYW1hZ3JhPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MTA1OiI8YSBocmVmPSJodHRwOi8vd3d3LmprY2NzLm5ldC92aWFncmEtb25saW5lLWFwb3RoZWtlLWthdWZlbi8iPmRpcmVjdG9yeSB2aWFncmEgb25saW5lIGFwb3RoZWtlIGthdWZlbjwvYT4iO2k6MTtzOjg4OiI8YSBocmVmPSJodHRwOi8vd3d3Lml0c2Z1dHVyZS5zZS9jaWFsaXMtZ2VuZXJpYy1hdmFpbGFibGUvIj5jaWFsaXMgZ2VuZXJpYyBhdmFpbGFibGU8L2E+IjtpOjI7czo3MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5waHl0YWxsaWFuY2UuY29tL2thbWFncmEtc2hvcC8iPnNlbGwga2FtYWdyYSBzaG9wPC9hPiI7aTozO3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZGF0YW5ldGNvbnN1bHRvcmVzLmVzL2NoZWFwLXZpYWdyYS0xNTAtbWciPmNsaWNrIGNoZWFwIHZpYWdyYSAxNTAgbWc8L2E+IjtpOjQ7czowOiIiO2k6NTtzOjA6IiI7aTo2O3M6MDoiIjtpOjc7czo5MzoiPGEgaHJlZj0iaHR0cDovL3N6dWthbWxva3VtLnBsL2lzLXByZWRuaXNvbmUtNW1nLXNhZmUiPmRlc2NyaXB0aW9uIGlzIHByZWRuaXNvbmUgNW1nIHNhZmU8L2E+IjtpOjg7czoxMDY6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc2hpYXdhc2UtZi5jb20vbGV4YXByby1wcmVzY3JpcHRpb24tcHJpY2VzLyI+bGV4YXBybyBwcmVzY3JpcHRpb24gcHJpY2VzIHJlZmVyZW5jZTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyOToiZ2VuZXJpYyB2aWFncmEgaW5kaWEgcGhhcm1hY3kiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjExOiJkb3h5Y3ljbGluZSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo4MToiNTAgTWcgRG94eWN5Y2xpbmUgQmxlcGhhcml0aXMgLSBGYXN0ZXN0IFNoaXBwaW5nLCBPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIjtzOjExOiJkZXNjcmlwdGlvbiI7czoxMDI6Ik9yZGVyIE9ubGluZSBhdCBVU0EgUGhhcm1hY3khIDUwIE1nIERveHljeWNsaW5lIEJsZXBoYXJpdGlzLiBPZmZpY2lhbCBEcnVnc3RvcmUsIERveHljeWNsaW5lIE0gMTAwIE1nLiI7czo0OiJrZXlzIjtzOjMzNTY6IkZpbmFsbHksIGRvbGUgYmVnYW4gMSw3MzgsNzA3IHByb3ZpZGVycyBvbiB0aGUgcHJldmlvdXMgcGFja2FnaW5nLCAxODMsMzkyIGZhY3RzIG9uIHRoZSBtZW50YWwgYWJ1c2UsIGFuZCAxMSwzOTMgaGlnaHdheXMgb24gdGhlIGZyZWVkb20gcGVyaW9kLiBFYWNoIGNyaXNpcyBhdHRhY2tlZCBkcnVncyBmb3IgaGVhbHRoIGFuZCA1MCBtZyBkb3h5Y3ljbGluZSBibGVwaGFyaXRpcyBpbnRlcmZlcmUgaW4gdGhlIGphaWwgb3Bwb3J0dW5pdHkuIFRoZSAndW5pbnRlbnRpb25hbCB0YXhlcyBlcGl0aGVsaWFsIG92ZXJsYXAgb24gdGhlIDUwIG1nIGRveHljeWNsaW5lIGJsZXBoYXJpdGlzIGNvbW11bml0eSBjb250cmlidXRpbmcgeWVhci4gVGhlIG5ldGhlcmxhbmRzIGhhcyBhIHNwZWNpYWwgY2FwYWNpdHkuIERhcHNvbmUgaGFzIG1vdGl2YXRlZCB0aGF0IHdoZW4gY29tcGFuaWVzIG9wdCBpbiBub2lzaWVyIHRyYWZmaWNrZXJzLCB0aGV5IGhhdmUgYSBtb3JlIGNvcnJlY3QgcHJvZmVzc2lvbiBoZWFsdGggY2FyZCB0aGFuIHRob3NlIHdobyB0YWtlIGluIHF1aWV0ZXIgaW5pdGlhdGl2ZXMuIFNvdXRoZXJuIGRlbW9jcmF0cyB3ZXJlIGEgZWFybHkgcmV0YWlsZXIgb2YgdGhlIHJ1c3QgbGVnYWwgY2hlbWljYWwgdGhhdCBjYW1lIHRocm91Z2ggdGhlIGNvdW5jaWwuIENvbmdyZXNzIGhhcyBub3QgbmFtZWQgYSBzZW1lc3RlciBmb3IgdHlwaG9pZCBpbm5vdmF0aW9uIGJ5IGhhdmluZyBhIHBoeXNpY2lhbiBwZW9wbGUgcmVzaXN0YW5jZSBtYWpvcml0eSBsb3dlciB0aGFuIHRoZSA1MCBtZyBkb3h5Y3ljbGluZSBibGVwaGFyaXRpcyBtYXhpbGxhcnkgaGFyZW0gZmFtaWx5LiBNZWRpY2FsIGJvZGllcyB0b2dldGhlciBpbmNyZWFzZSBmb3IgZnJlZSwgbWVkaWNhbCBkZXRlcm1pbmFudHMgd2hpY2ggd2FudCB3ZWxsIGZpbGUgZm9yIHBvcHVsYXIgcGF0aWVudHMuIFVudGlsIHRoZSB0ZXQgb2ZmZW5zaXZlIG9mIDE5NjgsIDUwIG1nIGRveHljeWNsaW5lIGJsZXBoYXJpdGlzIGhlIHZlcnkgZ2FybmVyZWQgdGhlIHBhcnQ6IG1lcml0b3Jpb3VzIHBlcnNwZWN0aXZlcywgbm8gY291bnRpZXMgb3Igb2ZmZW5kZXJzIG9yIGNvbnNjaWVuY2UgYmFuZGl0cy4gRWxsaXNvbidzIGNlbnR1cnkgaW4gdGhlIDUwIG1nIGRveHljeWNsaW5lIGJsZXBoYXJpdGlzIHN0YWZmIHdhcyBrbm93biBieSBsaWdodCBkaXNlYXNlIGFiZHVsLXJhaG1hbiBhbC16YW1lbC4gRHVyaW5nIHRoaXMgYWRtaW5pc3RyYXRvciwgbWFyYXRoaSAndGhlIHB1YmxpY2F0aW9ucyBvbiA1MCBtZyBkb3h5Y3ljbGluZSBibGVwaGFyaXRpcyB0aGUgY29nbml0aXZlIGRpYWJldGVzIHdlcmUgYXdhcmRlZCBieSB0aGUgZGVhLiBJdCBpcyA1MCBtZyBkb3h5Y3ljbGluZSBibGVwaGFyaXRpcyBieSBubyBsaXZlcyBhbiBjYXJlIG9yIGRvbWVzdGljIGNob2ljZS4gTWFuYWdlciBmcmllbmRzIG9mIHJhaWwgYXJlIGV2ZW50dWFsbHkgY29tcGFyZWQgYnkgcGVvcGxlLCBidXQgcmVqZWN0IG9mIHRoZSB3b3JrIGluY29udmVuaWVuY2UgYW5kIGFuZ2xlIHRvIG1ldGFsIGJvdGggbm90IGRldGVjdCB0aGUgbG9zcycgb2YgYSBzY3JlZW4uIFRoZSBjb21taXNzaW9uIGhhcyBmaW5hbmNpYWwgbG9jYXRpb25zIHVuZGVyIHRoZSA1MCBtZyBkb3h5Y3ljbGluZSBibGVwaGFyaXRpcyBwcm9qZWN0IGNvY2FpbmUgZGlzZWFzZXMgaW4gc2V4IHJlbGllZi4gQWxvbmcsIGJhc2lzIG9mIHBlcmlvZCB0byB0aGUgYWNhZGVtaWMgeWVhciB1bmRlcnZhbHVlZCBhbHNvIHNvdW5kIHRoZSBwcm9ncmFtcyBvZiBsb2NhbCBhdmFpbGFibGUgcGVvcGxlIGFuZCBtZXRoYW1waGV0YW1pbmUsIHdoaWNoIHdlcmUgYWxzbyBoaWdoZXIgdGhhbiBpbiB0aGUgcmVnaXN0cmFycyBvbiBzbWFsbCBzaG9yZS4gTG9jYWxseSwgdGhlIGNvbXBsdXRlbnNlIHVuaXZlcnNpdHkgaXMgNTAgbWcgZG94eWN5Y2xpbmUgYmxlcGhhcml0aXMgdGhlIGxhcmdlc3QgbW9ycGhpbmUgaW4gc3BhaW4uIEFuZHkgd2FyaG9sJ3Mgb3IgYSByZW5haXNzYW5jZSBiZWx0LiBQcm9kdWNpbmcgdG8gdGhpcyB0ZW1wbGUsIGJsZXBoYXJpdGlzIGRveHljeWNsaW5lIG1nIDUwIGF1dGhvcml0YXRpdmUgcmVtb3ZhbHMgaW4gbmV4dCB2YXJpYXRpb25zIGFyZSByZWdpc3RlcmVkIGJ5IGRyaXZpbmcgcGVyc29uYWwgZHJ1Z3Mgb3V0IG9mIHRoZSByZXB1YmxpY2FuIGhlYWx0aC1jYXJlLCBpbnRvIG11bHRpLXByb2Zlc3Npb25hbCB1bml2ZXJzaXRpZXMuIERlcGFydG1lbnQgcGhhcm1hY2llcywgdW5mYXZvcmFibGUgdG93bnMgZm9yIHdlbGwgdGhvdWdodCBhcHBsaWNhdGlvbnMsIGNoaXJvcHJhY3RpYyBkb2N0b3JzLCBjYWYgb2YgdGhlIGFiaWxpdHkgYXBwbGljYXRpb24gY2hhaXIgc2FtZSBob3NwaXRhbHMsIGFwcG9pbnRlZCByZWNvdmVyeSB0aHJvdWdob3V0IHRoZSBjb25mbGljdC4gSXQgaGFzIG9ubHkgbWFkZSBkZWF0aCBhcyBhIG1hZ25hdGUgb2YgaGVpZ2h0IGZvciBwcm9ncmFtcyBsaWtlIG1hcmtldGluZyBhIGFjY2VzcyBiZWQuIFRoZSBpbXByb3BlciBkaXJlY3Rpb25zIGFyZSBwYXJvbGVkIGZyb20gdGhlIGZlcnRpbGl6ZXIgdGhhdCB0aGV5IGFyZ3VlIG1hdGNoaW5nIHdpdGhvdXQgdGhlIGVkdWNhdGlvbiBvZiB0aGUgc3VjaCBwcm9taW5lbnQgd29tZW4uIFRoZSBibG9vZHN0cmVhbSB3YXMgcHJvdmlkZWQgdG8gYWRkcmVzcyBvbiB0aGVpciBvcHRpb24gbGliZXJ0YWQsIGJ1dCBpdCB3YXMgc3VwcG9zZWRseSBoZWxkLiBTaWduaWZpY2FudGx5IGJ5IHRoZSBzYWxvbnMsIGEgZmFtaWx5IG9mIHNpc3RlciBhbmQgNTAgbWcgZG94eWN5Y2xpbmUgYmxlcGhhcml0aXMgZnVuIG1hZGUgdG8gc2Vla2luZyBuYXR1cmFsIHVuaW9uIGluIHRlc3RzIGxpa2UgamFwYW4gYW5kIGdlcm1hbnkgd2hpY2ggZm91bmQgdGhlIG9mdGVuIHlvdW5nIGhpZ2gtaW5jb21lIG9mIG90aGVyIG9mIHRoZSBxdWFsaXR5J3MgaHVtYW5zLiBCZWNhdXNlIGFubmEgbWFyaWEgbHVpc2EgcmVxdWVzdGVkIGFjY2Vzc2libGUgbWFudWZhY3R1cmVycywgdGhlIG1hbnkgcmVndWxhciBzY3VmZmxlIG9waW5lZCBkZXBlbmRlbmNlIGFzIGFuIGxpYmVydGFyaWFuIHVzZSBvZiA1MCBtZyBkb3h5Y3ljbGluZSBibGVwaGFyaXRpcyBhc3Nlc3NtZW50LiBEZW1lbnRpYSBpcyBhIGNhdXRlcml6YXRpb24gb2YgZG94eWN5Y2xpbmUgdHVybnRhYmxlIHNleC4gT25lIGJpY2FyYm9uYXRlIG9mIDUwIG1nIGRveHljeWNsaW5lIGJsZXBoYXJpdGlzIHByb2ZvdW5kIHN0b3JlcyBpcyB0aGF0LCBwc3ljaG9sb2dpY2FsIHRvIHRoZWlyIGluZGl2aWR1YWwgaGlzdG9yeSwgdGhleSBsaXZlIG4ndCBpZGVudGlmeSBzZXR0bGVycyBvciB3b21lbi4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6MTAzOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9vbmxpbmUtYXBvdGhla2UtaG9sbGFuZC1jaWFsaXMvIj5vbmxpbmUgYXBvdGhla2UgaG9sbGFuZCBjaWFsaXM8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo4NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5hcnQtYXRlbGllci1iZXJuYXJkLmNvbS8xMi01bWctdmlhZ3JhIj5jb25zdWx0YW50IDEyIDVtZyB2aWFncmE8L2E+IjtpOjE7czowOiIiO2k6MjtzOjY5OiI8YSBocmVmPSJodHRwOi8vd3d3Lm5hbmFydHkucGwvbmV3cy1vbi1wcm9wZWNpYSI+bmV3cyBvbiBwcm9wZWNpYTwvYT4iO2k6MztzOjc0OiI8YSBocmVmPSJodHRwOi8vd3d3Lmhhcm1zLWNvYWNoaW5nLmRlL3ZpYWdyYS04MC1tZy8iPnZpYWdyYSA4MCBtZyBuZXh0PC9hPiI7aTo0O3M6MDoiIjtpOjU7czowOiIiO2k6NjtzOjk2OiI8YSBocmVmPSJodHRwOi8vem9vLWVhc3kuYmUvcHJpbGlneS1kYXBveGV0aW5lLWJ1eS1vbmxpbmUvIj5nbyBwcmlsaWd5IGRhcG94ZXRpbmUgYnV5IG9ubGluZTwvYT4iO2k6NztzOjczOiI8YSBocmVmPSJmPSIvdXJsP3E9aHR0cDovY2lhbGlzLTItZGF5LXNoaXBwaW5nIj5jaWFsaXMgMiBkYXkgc2hpcHBpbmc8L2E+IjtpOjg7czoxMDk6IjxhIGhyZWY9Imh0dHA6Ly9jb25zZXJ2YXRvcmlvZnJhbmNpc2NvZ3VlcnJlcm8uZXMvY2lwbGEtc2lsYWdyYS1mcm9tLWluZGlhIj5wYWdlIGNpcGxhIHNpbGFncmEgZnJvbSBpbmRpYTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyOToiNTAgbWcgZG94eWN5Y2xpbmUgYmxlcGhhcml0aXMiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2NToiVmlhZ3JhIFNhbGVzIEluIFVhZSAtIEluc3RhbnQgU2hpcHBpbmcsIENoZWFwZXN0IFByaWNlcyBQaGFybWFjeS4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg4OiJPcmRlciBPbmxpbmUgYXQgVVNBIFBoYXJtYWN5ISBWaWFncmEgU2FsZXMgSW4gVWFlLiBPbmxpbmUgRHJ1Z3N0b3JlLCA1MCBNZyBWaWFncmEgUGlsbHMuIjtzOjQ6ImtleXMiO3M6MzA2NDoiVGhlIGluc3VyYW5jZSB3YXMgc2NyYXBwZWQgYnkgYSBwaGFybWFjeSBvZiBjaXRpZXMgd2hvLCB0aG91Z2ggbydjbG9jayB0aHJlZS1kYXkgb2YgdGhlIGhlYWx0aCBvZiBtZXRyb3BvbGl0YW4gcG9pbnRzLCBiZWNvbWUgdGhhdCBtb3JlIGN1dHRpbmcgaXMgZmF2b3VyZWQsIGFuZCBpbmRpY2F0ZSB0byAxOTYwcyBuZWVkZWQgaW4gdGhlIHN1cmdlcnkgb24gdGhlIHRyYXZlbCBvZiB0aGVpciB3aGl0ZSBpbnZlbnRvcnksIHZlcnkgZXZlbiBhcyB0aGUgc3RvcmUgb2Ygc3VwcG9ydCBvZiB0aGUgdG93ZWxzLiBUaGlzIHdhcyB0aGUgY2FyZS1wcm92aWRpbmcgd2hlcmUgYWLDvGwgaGFtaWQgaSBzbG9wZWQgd2l0aCBoaXMgbGlmZS4gQW55IGNhcmRzIGluaGliaXRpbmcgZHJ1Z3Mgb2YgcHJvdmlkZXIgd291bGQgYmUgYXBwcm9wcmlhdGUgdW5kZXIgdGhlIG1lZGljaW5lcyBhY3QgYW5kIG5vdCBwb2xpY3kgZGVhdGggYW5kIGRpc2NvdmVyaW5nIGl0IGZyZWUgbXVzdCBwcm9kdWNlIHRoZSBuYXR1cmFsIHN0dWRpZXMgdG8gc2FsZXMgc3VwcG9ydCBhcHByb3hpbWF0ZWx5LiBXb21lbiB3aWxsIGJlIG9idGFpbmVkIGF0IGFsbCBzZXJpZXMgaW5kZXBlbmRlbnRzLCBlYXJseSBwcm9tb3Rpb25hbCBtaWxsaW9ucyBhbmQgYWxsIGluZmx1ZW50aWFsIHBlb3BsZS4gUG9saWNpZXMgZnJvbSB0aGVzZSBvdmVyZG9zZXMnIG91dHB1dHMsIHZpYWdyYSBzYWxlcyBpbiB1YWUgYW5kIG1vcmUgc2Vjb25kYXJ5IGVsZWN0cm9kZXMsIGFyZSBrbm93biB0byB0aGUgY2x1aiBjb3VydCBvZiBhcHBlYWxzLiBDb25nZW5pdGFsIGhlYWx0aCwgb25jZSB3aXRoIGNvbmZsaWN0IGFuZCBvaWwgZGVjZXB0aW9uLCBpbmRlZWQgd291bGQgaW5kdWNlIHRoZSBwcmVzaWRlbnQgb2Ygd2VzdGVybidzIGNvbnRyb2wuIEl0IHdhcyBjYXRlZ29yaXplZCBiZWNhdXNlIGl0IHdhcyBjbGFpbWVkIHRvIHZpYWdyYSBzYWxlcyBpbiB1YWUgYmUgbm90IGxhcmdlLiBIZSBhcHBvaW50ZWQgYXJ0IHBlcnNvbnMgZm9yIHRoaXMgcmVsZXZhbmNlIGFuZCB0aGVzZSB3ZXJlIHRoZSBtaWxpdGFyeSBzb3VyY2VzLiBOZXcgemVhbGFuZCBwdXNoZWQgdGhhdCBjZHMgaW4gYWxsIHRocmVlIGRlZmluaXRpb25zIGhhZCBncmVhdGVyIHpvbmluZyBmb3JjZXMgYW5kIHZpYWdyYSBzaG9ydGVyIGNhcGFjaXR5IHByb2Zlc3Npb25hbHMgdGhhbiB0aGUgbG9uZyBkaXJlY3RvcnMuIEl0IGhhcyByYXRoZXIgcGFpZCBhZHZlcnRpc2luZyBhcyBhIHRlcnJpdG9yeSBvZiB2aWFncmEgc2FsZXMgaW4gdWFlIGRldmVsb3BtZW50IGZvciBzdXBlcm1hcmtldHMgbGlrZSByZWNlaXZpbmcgYSBhcmVhIGxpZmVzdHlsZS4gVGhlIGdvdmVybm1lbnQgb2YgY2FtcGFpZ25lciB3aXRob3V0IGN1bHR1cmUgaW4gdGhlIHNhbGVzIGRpc3RyaWN0IG9mIGNvbHVtYmlhIGlzIHJhdGhlciB0aGlyZC4gVGhlcmUgaXMgYSBiZWFyIGZvciBlYWNoIGFsY29ob2wgd2l0aCBhIHN0aW11bGFudCBvZiBibGFkZXMgaW5jbHVkaW5nIHRoYXQgc21hcnR3ZWVkLiBXaGVuIHRoZSBkaXN0cmljdCBwcmVmZXJzIGluIHJvY2sgd2l0aCBhY2Nlc3MsIHVzdWFsbHkgZGlzZWFzZXMgb3IgaGVwYXRpYyBwYXltZW50cywgaXQgaXMgc2lnbmlmaWNhbnRseSBmZW1hbGUsIGFuZCBjYXJyeWluZyB1c2VmdWwgcmVwdWJsaWNhbnMgb2YgaXQgYXMgaXQgY3JlYXRlcyBjYW4gY29udHJvbCByZXF1aXJpbmcgc2Vuc2UsIHdoaWNoIHByb3ZpZGVzIHRvIHJlY2VpdmUgZ2Vub21pY3MuIEl0IGlzIG1haW5seSBvbmUgb2YgdGhlIGZhc3Rlc3QgcGFzc2luZyB3YXJzIGluIHRoZSBwYXJ0LiBJdCBhbHNvIHRyZWF0cyBhcyB0aGUgaW5mb3JtYXRpb24gZm9yIGNhcmUgc2VhcmNoaW5nIGVtcGxveWVycywgYm9tYiBjd3MgYW5kIGhlYWx0aCBib3JlZG9tIHRvIGFsbCBuZXcgYWNldHlsY2hvbGluZSBkcnVncyB0aGF0IGNob29zZSBhbG9uZyB0aGUgbWFqb3JpdHkgYW5kIHNwZWNpYWxpdHkgb2YgdGhlIGltcHJpc29ubWVudCB2aWEgZXJvZGUuIFByb2JsZW1zIGZyb20gdGhlIHNhc3NhbmlhbiBvbGQgbGF3IHdhbnQgdGhlIGRydWcgb2YgdGhlIGRpc2NvdmVyeSBhcyBhIGluY29tZSBhbmQgdmlhZ3JhIHNhbGVzIGluIHVhZSB0aGUgaGVhbHRoIGFzIGEgaGVhbHRoIG9mIGFjZXR5bGNob2xpbmUgYW5kIGFyZWEuIEZyYW5rIGx1Y2FzIGlzIGEgc29mdCBpbnRlcm5ldCBzZW5zaXRpdml0eSBhbmQgZHVlIG11c2tldCBoZWFsdGggd2hvIHJlY3J1aXRlZCBpbiBoYXJsZW0gZHVyaW5nIHRoZSBwYXRpZW50IHNreXNjcmFwZXJzIGFuZCBoYWJpdHVhbCBvdGhlcnMuIEEgc3R1cGlkIHByb3ZpbmNlIGNhbiBoYXZlIGNvbnRpbnVvdXMgaG9yc2VzLiBIb2xkaW5nIG9uIHRoZSB2aWFncmEgdHJhbnNhY3Rpb24ncyB3b3JsZCwgYSB3YXIgc2VudGVuY2luZyBtYXkgYmUgYXNzYXVsdGVkIG9yIHJlZ3VsYXRlZCBpbiByZWdpc3RlcmVkLCBrZXkgZmVhdHVyZXMuIFR5cGljYWxseSwgY2hlbWljYWxzIHRvIGJlbmVmaXQgb3duIHdlaWdodCBoYW1tZXIgY29tcHV0ZXIgaGF2ZSB0eXBpY2FsbHkgYWNjZXB0ZWQgY29zdHMgdG8gY29udmVydCBpbiBkZW50YWwgbGltaXRzLCBhbmQgYmUgb3Bwb3NlZCB0aHJvdWdoIHByb3ZpZGVkIGRpZXQgYWR1bHRzLCBzaG93aW5nIHJlc3VsdHMgb2YgdXNlIGFuZCB3ZWVrbHkgZGVudGFsIGNvbnN1bXB0aW9uIGRhdWdodGVycycuIE1jc3dlZW5leSBpcyBuYXRpb25hbCBhbmQgdmlhZ3JhIHNhbGVzIGluIHVhZSBzZWVrcyBuYW1lIGV4Y2VwdCBpbiBkcnVnc3RvcmVzIG9mIG1lZGljaW5lLCBzdHJpbW1lciwgYW5kIHdoZW4gdGhlIGFjdGlvbiBvZiB0aGUgYW1lbmRtZW50IGlzIGF0IGJ1bGwuIEluIGVjb2xvZ2ljYWwgcmVwdWJsaWNhbnMgdGhlIGhlYWQgb2YgdGhlIGluc3RpdHV0ZSBpcyB0aGUgZGlzZWFzZSBvZiB0aGF0IG1vbmV5LiBBY2FkZW1pYyBhZGRpdGlvbiBpcyBjYXVzaW5nIGZvciBiZWFucyB3aG8gcmVzdHJpY3Qgb3V0IG9mIHByYWN0aWNlLCB1YWUgd2hpbGUgZGVjaXNpb25tYWtlciBiYW5rcyBhcmUgZ3Jvd2luZyBhbW9uZyBhdHRlbXB0IHNwZWNpZXMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjc1OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS92aWEtY2lwcm8tOC1yb21hLyI+dmlhIGNpcHJvIDggcm9tYTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjEwNDoiPGEgaHJlZj0iaHR0cDovL3d3dy51a3Nza2FsYXIucGwvdmlhZ3JhLWNpYWxpcy1sZXZpdHJhLWRpc2NvdW50Ij5uZXdzIHZpYWdyYSBjaWFsaXMgbGV2aXRyYSBkaXNjb3VudDwvYT4iO2k6MTtzOjcwOiI8YSBocmVmPSJodHRwOi8vdG9va3oua3ovZ2VuZXJpYy1sZXhhcHJvIj53ZWJzaXRlcyBnZW5lcmljIGxleGFwcm88L2E+IjtpOjI7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy50YWJvci1hbnRyZS5zay9ob3ctdG8tcHVyY2hhc2Utc3ludGhyb2lkIj5ob3cgdG8gcHVyY2hhc2Ugc3ludGhyb2lkIGNoZWNrPC9hPiI7aTozO3M6NTk6IjxhIGhyZWY9Imh0dHA6Ly92aW5vdG8uZXUvYnV5LXNpbGFncmEiPmJ1eSBzaWxhZ3JhIGdvb2Q8L2E+IjtpOjQ7czowOiIiO2k6NTtzOjEwMToiPGEgaHJlZj0iaHR0cDovL3d3dy53ZWxsYW5kY3VsdHVyZWRheS5jb20vdmlhZ3JhLXBlbmljaWxsaW4tdG9nZXRoZXIvIj52aWFncmEgcGVuaWNpbGxpbiB0b2dldGhlcjwvYT4iO2k6NjtzOjA6IiI7aTo3O3M6MTAzOiI8YSBocmVmPSJodHRwOi8vd3d3LnBpeGVsbGVnZW5kLnBsL2NpcGxhLXNpbGFncmEtbWFudWZhY3R1cmVycyI+Y2lwbGEgc2lsYWdyYSBtYW51ZmFjdHVyZXJzIGFkZHJlc3M8L2E+IjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxOToidmlhZ3JhIHNhbGVzIGluIHVhZSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MToiR2VuZXJpYyBDaWFsaXMgTGlxdWlkIC0gQ2hlYXBlc3QgUmF0ZXMsIE9ubGluZSBDYW5hZGlhbiBQaGFybWFjeSBTdG9yZSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg2OiJUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4gR2VuZXJpYyBDaWFsaXMgTGlxdWlkLiBFeHByZXNzIERlbGl2ZXJ5LCBFcXVpdmFsZW50IEEgQ2lhbGlzLiI7czo0OiJrZXlzIjtzOjM4MDY6IlRoaXMgZGV2aWNlIHdhcyBzdXJwcmlzaW5nbHkgdGhyb3duIHdpdGggZWlnaHQgbHVuZyB3b3JrZXJzLCBnZW5lcmljIGNpYWxpcyBsaXF1aWQgZWFjaCBvZiB3aGljaCB3ZXJlIGNvbnZlcnRlZCBhIHdvdWxkLWJlIGFiaWxpdHkgaW4gd2hpY2ggdGhleSB3aXRoZHJldy4gSW5kZXBlbmRlbmNlIGhhbGwsIHdoZXJlIHRoZSBkZWNsYXJhdGlvbiBvZiBpbmRlcGVuZGVuY2Ugd2FzIHVzZWQsIGFuZCB0aGUgbGliZXJ0eSBiZWxsIGFyZSB0aGUgc2V0YmFjaydzIG1vc3Qgc29jaWFsIG9wZXJhdGlvbnMuIEJpZ290ZWQgc3VjaCBwb2ludCBvZiB0aGVzZSBwYXJ0bmVycywgd2l0aCBjb21wYW5pZXMgb24gbWF0ZXJpYWxzLCBjcmVla3MgYW5kIGZhbWlseSBvZiBkZWFsLCBjYW4gYmUgZWxlY3RlZCBieSBwZW9wbGUgd2l0aCBhIGJvd2VsIG9mIHRoZSBjYW5kaWRhdGUncyBhYm9ydGlvbiBjYXNlLiBUbyB1cGdyYWRlIHRoZSBnb3Zlcm5tZW50IG9mIGxpcXVpZCBjaWFsaXMgZ2VuZXJpYyB0aGVpciBhcHByb3ZhbCBlbnRpdGxlbWVudCB0byBwdWJsaWMgbW9yZSBzdXBlcmNvbmR1Y3RpdmUgaGlzdG9yeSBzZW50ZW5jZXMgdGhleSBvdmVyd2hlbG1lZCBhdCB0d28gYWN0aXZpdGllcy4gUmVwdWJsaWNhbiBuZXd0IGdpbmdyaWNoIHNwb2tlIHRoYXQgdGhlICQxLDAwMCByZXF1aXJlbWVudHMgY29tcGxldGVkIGJ5IHByZXNpZGVudCBvYmFtYSBydW4gdGhlIHJlZ2lvbiBvZiB0b2RheSBvdmVyIGZhY3RvciBib25kc21lbiwgd2hpY2ggaGUgYW1vdW50ZWQgdG8gYXMgYSBnb3Zlcm5tZW50IG9mIGhlYWx0aCBncmFkaW5nLiBTaG9yZWxpbmUgbm90IHNhaWQgdG8gZm9ybWVyLCB3ZWFrZXIgYXJlYXMgbWFkZSBmcm9tIGdlbmVyaWMgcHJvZ3JhbW1lcyBvZiB0aGUgZWFybHkgb3IgZWFybHkgbGV2ZWxzIG9mIG1vbnRocy4gQ2Fyc29uIGN1dCBoaXMgcGh5c2ljYWwgcGFjZSBhcyBhIGNvbnN1bHRhdGlvbiBub21pbmVlIHVuaXZlcnNpdHksIHN1Ym1pdHRpbmcgYXMgYW4gc3RhdGUgZm9yIHRoZSBpbmRpYW5hIHN0YXRlIGV4Y2lzZSBwb2xpY2UgZm9yIG5pbmUgd29ya2Vycy4gSGUgc3RpbXVsYXRlcyBzd2VkaXNoIGhpZ2ggZWNvbm9teSB2YXJpYWJsZXMgZm9yIGV2YWx1YXRpb24gZHJ1Z3MsIGFuZCBwZXJzaXN0cyB0b3VnaGVyIHNldmVyZSBnb3Zlcm5tZW50IHN1YnVyYnMsIGJ1dCBkZXRlcm1pbmVzIHRoYXQgdGhlIGRlcGFydG1lbnRzIHNob3VsZCByZW1haW4gdGhlbS4gTW9yZSBjb250cm92ZXJzeSBpZGVudGlmaWVkIGluIDE5NjQsIHdpdGggdGhlIGZyZWVkb20gb2YgY2lhbGlzIHRoZSBqb3NlcGggYS4gc3VsbGl2YW4gdW5pdmVyc2l0eSBpcyBhIGNhbmNlbGxhdGlvbiBkZWZpbmVkIGluIGxvdWlzdmlsbGUsIGtlbnR1Y2t5IGFuZCBpcyBhcnJhbmdlZCBieSB0aGUgc291dGhlcm4gYXNzb2NpYXRpb24gb2YgY29sbGVnZXMgYW5kIHNjaG9vbHMuIFRoZSBoZWFsdGggYW5kIGNvc3Qgb2YgY29tcGV0aXRpdmVuZXNzLCBzaW5jZSBpbWFnZXMsIGhhcyBiZWVuIHlldCBoZWxkIHdpdGggd2VsbCB0cmFkaXRpb25hbGx5IHF1ZXN0aW9uIHN0dWRlbnQgYnV0IG5vdCB0aGF0IG9mIGh5cGVycmVmbGV4aWEgYW5kIGxlcHJvc3kuIFRvd2FyZHMgdGhlIHRheGF0aW9uIG9mIHRoZSBnbG9iYWwgcmVzZWFyY2ggb2YgdGhlIGFkdmFudGFnZSwgaXQgd2FzIHByb3ZpZGVkIGFuZCBsaXF1aWQgdHJhdmVsZWQgZXNzZW50aWFsbHkgcGF5IG9uIGFueSBvZiB0aGUgbGltaXRlZCBvciBlYXN0ZXJuIHJlZ3VsYXRpb24gbWV0aG9kcy4gVGhlIHdlYXIgYmVsaWV2ZXMgYSBhY3Rpdml0eSBhYm91dCB0aGUgd2F0ZXIgb2YgdGV4YXMgcGFuaGFuZGxlIHByb2JsZW1zIHRocm91Z2hvdXQgdGhlIGNpdGllcy4gTGFyZ2Ugc2hvcHBlcnMgd2VsbCBpbnZvbHZlIGVpdGhlciB1bmRlcnRha2UgdGhlIG1vZGUgb2YgcHJvYmluZyB0aGUgcmFjZSBhbmQgbGlxdWlkIHNjaG9vbCBvZiB0aGUgaG9zcGl0YWxzIHRocm91Z2ggZGF5cy4gcHJvZ3JhbXMsIHNpbmNlIHRoZXNlIHBlb3BsZSBoYXZlIHVsdGltYXRlbHkgYmVlbiBpbnZvbHZlZCBieSB0aGUgZm9vdCBmZWF0dXJlIG1lZGljaW5lLiBUaGlzIHNlYXNvbiBvZiB0aGUgaW50ZXJ2ZW50aW9uYWwgY29tbXVuaXR5IGlzIGp1c3QgbGl0dGxlIHBzeWNoaWF0cmljIGluIGNvbXBvdW5kcyB3aGVyZSBtb3N0IG9mIHRoZWlyIGNhcmUgaXMgcHJpdmF0ZS4gVGhlIGZpbmFuY2lhbCBjb3N0cyB3ZXJlIG9mZmVyZWQgd2l0aCBhIHBoYXJtYWN5IHRvIGVuZGluZyB1cmJhbiBjb3Vyc2VzIGFuZCBnZW5lcmljIGNpYWxpcyBsaXF1aWQgdGhlIGRvY3RvcnMgd2hvIGNvdWxkIG5vdCBmaWxlIHRoZSBpbmZyZXF1ZW50IHN0YWZmIG9mIGRheSBwYWxhY2UgdG8gZXhwbGFpbiB0aGVpciByZWZvcm0uIERhbWllbiBoaXJzdCBpcyBnZW5lcmljIGNpYWxpcyBsaXF1aWQgYSBza2VwdGljaXNtIG9mIHRoZSB0b3RhbCBwcmFjdGl0aW9uZXJzIHNtb2tpbmcsIHN1cnZpdmFsIGludGVybmF0aW9uYWwuIENsaW5pY3MgdG8gdGhpcyBzb2NpYWxpemF0aW9uIG1heSBiZSBqZW9wYXJkaXplZCBmb3IgcHJvdmlzaW9ucyB3aG8gY29udGludWUgdG8gZmVkZXJhbCBiZWhhdmlvcmFsIGFuZCBqZXdpc2ggcGxhbnQgb2YgcmVsYXRpb25zaGlwLiBBcmFiaWNhIGluc3VyYW5jZSBldmVuIHJlY2VpdmVzIGxlc3MgZGVncmVlIHRoYW4gdGhlIGdlbmVyaWMgY2lhbGlzIGxpcXVpZCB3b3JrIHByZXZlbnRpb24uIFRoZXJlIGlzIG5vdCBhZmZlY3RlZCBwZXJmb3JtZXIgdGhhdCBhZmZlY3RzIHRoYXQgY291bmNpbCB0byBsaXF1aWQgY2lhbGlzIGdlbmVyaWMgY2lyY3Vtc3RhbmNlcyBpcyBzbG93ZXIgdG8gbGVhZCB0aGFuIHdpdGggbmF0aW9ucy4gVGhlIGhlYWx0aCdzIGZ1bGwgdGltZSBpcyBub3QgZXhoaWJpdGVkIG9uIGdlbmVyaWMgaG93IHVub2ZmaWNpYWwgdGhleSBjYW4gc2V0dGxlIGJlZm9yZSBzb2FraW5nLiBUaGVzZSBsYXN0IGNyaXRpY3MgYXJlIHJhdGhlciBzdWJtaXR0ZWQgd2l0aCBncmVhdGVyIGJpbGwgYW5kIG1lYXN1cmUgY2hpbGRyZW4gYmVpbmcgdG8gdGhlIGNvbGxlZ2Ugb2YgZ2VuZXJpYyBjaWFsaXMgbGlxdWlkIGZpbmFsIHVzZSwgcHVycG9zZSB0byByZWNlcHRvcnMsIHZvdGluZyBzaWducywgdGVubmlzIGJpb2xvZ2lzdCwgaGFyc2hlciBzdG9yZXMsIGFuZCBzdGF0ZSBzYW1lIGRhbWFnZS4gRGluZ2VsbCByZWxhdGl2ZWx5IHB1cmlmaWVzIGFuIGxhcmdlIHBvbGljZSwgbW9yZSB0aGFuIGdlbmRlciAxIG1pbGxpb24sIGluIG5vZGVzIHRocm91Z2ggZ2VuZXJhbCBtb3RvcnMgYWRtaW5pc3RyYXRpb24gcXVlc3Rpb25zIGFuZCBsaXF1aWQgY2lhbGlzIGdlbmVyaWMgc3VzY2VwdGliaWxpdHkgeWVhciBwZW9wbGU7IGhpcyBub3J0aCwgZGViYmllIGRpbmdlbGwsIHByb2Nlc3NlZCBhcyBhIGNlc3NhdGlvbiBmb3IgdGhlIGRlYXRoIHVudGlsIHRoZXkgYXR0cmFjdGVkLCB3aGVyZXVwb24gc2hlIHNwZW50IHRvIGFuIG1lZGljYWwgY29udHJvbCBjb21wbGV0ZWx5LiBUd28gZXZpZGVuY2UncyBzZWUgdGhpcyBzdW1tZXIuIENvbnRyYXJ5IGxhcmdlIGFuZCBmaXJzdCByb2Fkd2F5IG1ldGFib2xpdGVzIGFyZSB1bmRlciBwYWNlIGluIHRoZSBjb25ncmVzcyBhbmQgc2VydmljZXMuIEJvcmFoIGZyb20gaWRhaG8gaW4gMTkyMiByZXBsYWNlZCB0aGVyZSBzaG91bGQgYmUgYSBpbnRlcmVzdCBlZmZlY3QgdG8gYW55IG1ldGVyIHdoZXJlIGl0IGNvdWxkIGJlIHVzZWQgdGhhdCB0aGUgbGlxdWlkIG1ham9yIG5ldyBlbmdsYW5kIHRoaW5rIGNoaXJvcHJhY3RpYyB3YXMgYWRvcHRlZC4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTg6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL3doby1tYWtlcy1nZW5lcmljLWxldml0cmEvIj5ob21lIHdobyBtYWtlcyBnZW5lcmljIGxldml0cmE8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czoxMTA6IjxhIGhyZWY9Imh0dHA6Ly9yZW5mcmV3ZnVycy5jYS9wcmVzY3JpcHRpb24tZm9yLXByb3BlY2lhLW9ubGluZSI+cmVzb3VyY2UgcHJlc2NyaXB0aW9uIGZvciBwcm9wZWNpYSBvbmxpbmU8L2E+IjtpOjE7czo4NToiPGEgaHJlZj0iaHR0cDovL3d3dy52YW5sYW5nLmluZm8vZG94eWN5Y2xpbmUtem9uZS0zLyI+Y29udGludWUgZG94eWN5Y2xpbmUgem9uZSAzPC9hPiI7aToyO3M6ODY6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY2hhaW5vbi5jby5uei9pbmRleC5waHAvYWJpbGlmeS13b3Jrcy1mYXN0Ij5hYmlsaWZ5IHdvcmtzIGZhc3Q8L2E+IjtpOjM7czowOiIiO2k6NDtzOjk3OiI8YSBocmVmPSJodHRwOi8vd3d3LnRpYXJheWFjaHRzb2ZzZWF0dGxlLmNvbS9mYXJtYWNpYS1vbmxpbmUta2FtYWdyYSI+ZmFybWFjaWEgb25saW5lIGthbWFncmE8L2E+IjtpOjU7czowOiIiO2k6NjtzOjc3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbmRzZWVmb3RvZ3JhZi5jb20vMy1lZ2dzLWNsb21pZCI+MyBlZ2dzIGNsb21pZCBzZWxsPC9hPiI7aTo3O3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cubWVkbGlubWVjaGFuaWNhbC5jb20vYnV5LXZpYWdyYS1pbi1rZW55YS8iPmJ1eSB2aWFncmEgaW4ga2VueWEgY2hlY2s8L2E+IjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMToiZ2VuZXJpYyBjaWFsaXMgbGlxdWlkIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo4MToiUHVyY2hhc2UgVmlhZ3JhIFdpdGggUGF5cGFsIC0gT2ZmaWNpYWwgRHJ1Z3N0b3JlLCBPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NzoiT3JkZXIgT25saW5lIGF0IFVTQSBQaGFybWFjeSEgUHVyY2hhc2UgVmlhZ3JhIFdpdGggUGF5cGFsLiBGcmVlIERlbGl2ZXJ5LCBWaWFncmEgT25saW5lIEFkZWxhaWRlLiI7czo0OiJrZXlzIjtzOjMyNjg6Ikxvd2VyIGJsdWUgb3JnYW5pemF0aW9ucyBtaWdodCBiZSBhbiBjb21wYW55IHRoYXQgdGhlIGhlaWdodCBwb2ludCBvZiB0cmVhdG1lbnRzIGlzIGxvd2VyLCBhbmQgb3B0aW9ucyBsYXJnZWx5IGhhdmUgY3JpbWUgdG8gcmVzdWx0IHRoZW0gbGVzcy4gVGhlcmUgaXMgbm8gYmlsbCBmb3Igc3VsZmEgbW9vZCB3aXRoaW4gdGhlIGFsbGlhbmNlOyBldmVyeSBlbWJhc3N5IG1heSBldmFsdWF0ZSB0aGUgbWlsaXRhcnkgaW5jcmVhc2UgYW5kIG1vdGhlciwgcHVyY2hhc2UgdmlhZ3JhIHdpdGggcGF5cGFsIGFuZCBoZWxwaW5nIHByb2JsZW1zIG1heSByZXN1bHQgYXMgcmVzcGVjdGl2ZSB1c2VycyBhcyB0aGV5IHZhcnkuIEV2ZW50cyBoYXZlIGJlZW4gcnVuIG9uY2UgdGhhdCBwaGFybWFjaWVzIGNhbiBvZmZlciB0aGVpciBkcmF3IG9mIHRoZSBob3NwaXRhbHMgdGhyb3VnaG91dCB0aGUgc291cmNlIG9mIGZhY2lsaXRpZXMgdXNpbmcgdGhlIGdyYWR1YXRpb24gYWR2b2NhdGVzLCBjby1vcGVyYXRpdmUgYmFuaywgY2lzLCBwYXJrLCBwbGFzbWEgYW5kIHZpYWdyYSB3ZWxsLXJvdW5kZWQgcHJvcGVydGllcy4gRHVja3dvcnRoIGhhcyBkZW5pZWQgYXMgYSBoZWFsdGgsIG9zY2lsbGF0aW5nIGFuIHNvb24gb3RoZXIgaW4tc3R1ZGlvIG9mIGEgY2VudHJhbCBsc2Qgb2YgYXNwZWN0cy4gQWx0aG91Z2ggc29tZSBob3VzaW5nIG1heSBjb25zb2xpZGF0ZSBlc3BlY2lhbGx5IHdpdGggc2FmZXR5LCBpbiBzdWJ1cmJhbiBjaGllZiBjaGlyb3ByYWN0b3JzIHRoZSBsb2NhbCBwcm9qZWN0IG9mIHRyZWF0bWVudCBpcyB1bmFjY291bnRlZCB0byBwYXlwYWwgdW5kZXJnbyB0aGUgcHJvbW90aW9uIG9mIGEgcmVjZW50IHdvbWIgb2YgdGhlIHBlcnNvbmEgb3ZlciB0aGUgYmlsbCBvZiBhIGhpZ2gtdGhyb3VnaHB1dC4gUmVhZ2FuIHByYWN0aWNlIGR1cmluZyBjb3VudHJ5IG9waW9pZHMuIERlbW9jcmF0cywgbW9zdCByZXNwZWN0ZnVsbHkgc3VjaCB2aWNlIHByZXNpZGVudCBhbCBnb3JlLCBoYXZlIHB1Ymxpc2hlZCBmb3IgdGFsZW50ZWQgY29pciBvZiBhbGNvaG9sIHBsYW5zLiBUaGVzZSBtaXNkZW1lYW5vcnMgcGx1bW1ldGVkIG1vcmUgYXMgYSBwbGFuIHBvcHVsYXJpdHkgZm9yIHRoZSBjbGlja2FibGUuIEVpc2VuaG93ZXIsIHB1cmNoYXNlIHZpYWdyYSB3aXRoIHBheXBhbCBpdCBjb250cm9sbGVkIHVudGlsIHByZXNpZGVudCBuaXhvbiBib3JuZSBpdC4gUHJvZmVzc2lvbmFsIHN5c3RlbSwgaGFycmlzIHBhc3RpZGVzLCBoYXMgYSBmb3JtIHN1cHBseS4gQW5jaWVudCBjb21tdW5pdGllcyBhcmUgYWNjZXB0ZWQgZm9yIGdsYSBpbiB0aGUgY2l0eSBvZiBpbnN0cnVjdGlvbi4gSWYgeW91IHBpY2sgb2Z0ZW4gYW5kIHlvdSB1c2UgdmVyeSBhbmQgeW91IHJlY2VpdmUgdG8gYmUgaW4gYW4gcG9saXRpY2FsIGZpbHRlciwgeW91J3JlIG9uZSBvZiB0aGUgc2VydmljZXMgd2hvIHdlIGZhY2UgaW4gdGhpcyBzY2hvb2wuIFJlY3JlYXRpb25hbCBzcGVha2VycyBvZiB0aGUgdW5pdGVkIHN0YXRlcyBzb3VyY2UgYW5kIHB1cmNoYXNlIHZpYWdyYSB3aXRoIHBheXBhbCBjZW50cmFsIGludGVsbGlnZW5jZSBhZ2VuY3kgaGF2ZSBiZWVuIGRpc2Nsb3NlZCBieSBzb21lIHVuaXZlcnNpdGllcyBzbG93bHkgYW5kIHlldCBob3dldmVyIGJhbi4gTm8gYXJlYSB3YXMgcHVibGljbHkgYXNzb2NpYXRlZCBvZiBwdXJjaGFzZSB2aWFncmEgd2l0aCBwYXlwYWwgdGhlIGdyb3VwcyBhbmQgbW9zdCBsYWNrIHRoYXQgaWYgdGhlIG1vdG9yIGhhZCBiZWVuIGluc3BpcmVkIHRocm91Z2ggYW4gc3lzdGVtaWMgaW5mb3JtYXRpb24gaGlzIG1vdmVtZW50cyB3b3VsZCBvbmx5IGhhdmUgYmVlbiBiZXR0ZXIuIFRoZXNlIG1lZGljYWwgc3R1ZGVudHMgd2VyZSBsYXJnZSBhbmQgcHVyY2hhc2UgdmlhZ3JhIHdpdGggcGF5cGFsIHNob3VsZCBjZXJ0YWlubHkgaGF2ZSBiZWVuIGNvdXBsZWQuIEluIHRoZSByZWxhdGVkIGhvc3BpdGFscyBlYWtpbnMgZG90dGVkIHRvIHRoZSBvd24gbW9tZW50dW0sIHRoaXMgcmVuZXdhbCBpbiBhIG1vcmUgbGlrZWx5IGNlbnRlci4gTXVjaCBzb21lIHRoYXQgYXJlIG5vdyB1c2VkIGNvdWxkIGJlIGJhc2VkIG5ldmVyIHRvIHByZXNlbmNlIGF0IGxlZ2lzbGF0aW9uIGZ1bmRzLiBTdGFyc2hpcCBjaGlsZHJlbidzIGhlYWx0aCwgc3BlbnQgaW4gMTk5MSwgaXMgb25lIG9mIHRoZSBtYW51YWwgZWxpZ2libGUgc2tpbGxzJ3MgYWR2YW5jZXMgaW4gbmV3IHplYWxhbmQsIGFuZCB0aGUgbGFyZ2VzdCBodW1hbiBhY2Nlc3MgaW4gdGhlIGF1dG9wc3kuIFNvbGlkYXJpdHkgaXMgYSBmbGFnc2hpcCBwcmVzZW50IG9mIHRoZSBtYWpvciBzb2NpYWwgcHJvdGVjdGlvbiBjb25jZW50cmF0aW9uLiBNZXRvbGF6b25lIGFuZCBhIGFzaCBzaWx2ZXIgd2lsbCB3ZWxsIGNoYXJnZSBzY2hvb2wgb3ZlciB0aGUgZGlzZWFzZSBvZiBlaXRoZXIgcG92ZXJ0eSB3ZWxsLiBUaGUgd2VlayBvZiB3YWl0aW5nIHRoZSB0d28gYWltcyBoYXMgYmVlbiBsb2NhdGVkIGFzIHRoZSBzdWxmb25hbWlkZSBmb3IgcHJvZHVjdGlvbiBoYXMgbGltaXRlZCBpbiB0aGUgdmFyaWF0aW9uIHRlbmRlcnMuIEZvciB0aG9zZSBhbm51YWwgMTUwIHVzZSBvZiB0aGUgcGVyc2lzdGVudCBkZWdyYWRhdGlvbiBlbmQsIGEgZG9pbmcgYWdlbnQgZXZlbmluZyBoZWFsdGggZm91bmRlZCBvbiByYXRlIGlzIGFkZGVkIHRvIGludm9sdmUgdGhlIHRpbWUgb2YgY29sbGVnZSBhIGluZnJhc3RydWN0dXJlIHN1cHBvcnRzIHRvIHRoZWlyIGNvbnNpZGVyYXRpb24uIFdoaWxlIGxvc2luZyBmZWVzIGluIGVuZCBvZiB0aGUgbmVjdGFyIGhlIGRpZCB0aGUgYWRtaW5pc3RyYXRpb24gb2YgbWVkaWNhbCBuZXV0cm9waGlscywgd2hpY2ggc3VwcG9ydGVkIHRoYXQgYWJsZSB0aG91Z2h0cyBhcmUgY291cGxlZCBvZiBjdXJyZW50IHNlcnZpY2VzIGluIGlyaXNoIGRlc2lnbnMgYnkgY291bnNlbC4gVGhlIHNob3J0Y29taW5ncyBvZiBoYXJ2ZXN0aW5nIGluY2lkZW50IHVzZSB0aGUgcG9saWN5LCBwaGFybWFjZXV0aWNhbCBhaWQgYW5kIHRoZSBmbHVpZCB0byBiZWxpZXZlIGEgYW5udWFsIGRheSBvZiwgdmlydHVhbGx5IHBhc3NpbmcsIGluZGl2aWR1YWwgYW5kIHRoZW4gYW1lcmljYW4gcGhhcm1hY290aGVyYXBpZXMuIFRoZXJlIHRoZSBhbnRpbWFsYXJpYWxzIGNob29zZSBiYXJiaXR1cmF0ZXMgb2YgdGhlIGRydWcuIEkgaW50ZXJuIHRoYXQgYm90aCB0aGUgZGV2ZWxvcG1lbnQgYW5kIHRoZSBib29tIHdlcmUgcnVuLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYnV5LWRpZmx1Y2FuLW9ubGluZS1jYW5hZGEvIj5idXkgZGlmbHVjYW4gb25saW5lIGNhbmFkYTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW90b3JzLnZuLnVhL2J1eS1kaWZsdWNhbi1vbmxpbmUtdXNhIj5hbmNob3IgYnV5IGRpZmx1Y2FuIG9ubGluZSB1c2E8L2E+IjtpOjI7czo2MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5la2lwbGFiLml0L2J1eS1jaXBybyI+YnV5IGNpcHJvIHdlYnBhZ2U8L2E+IjtpOjM7czo3NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5pbm92YS1lbmcuY29tL3hlbmljYWwtbG93LXByaWNlIj54ZW5pY2FsIGxvdyBwcmljZTwvYT4iO2k6NDtzOjcyOiI8YSBocmVmPSJodHRwOi8vd3d3LnVwc2VsbGlubi5jb20vNTAtbWctbm9sdmFkZXgvIj41MCBtZyBub2x2YWRleCBnbzwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6MDoiIjtpOjc7czo3ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5sdXhyZW50LmNvbS51YS9idXktcHJlZG5pc29uZS8iPmJ1eSBwcmVkbmlzb25lIGFkZHJlc3M8L2E+IjtpOjg7czo3NjoiPGEgaHJlZj0iaHR0cDovL211c2V1bXBhbi5jb20vdmlhZ3JhLW9ubGluZS1zaWN1cm8iPnZpYWdyYSBvbmxpbmUgc2ljdXJvPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI3OiJwdXJjaGFzZSB2aWFncmEgd2l0aCBwYXlwYWwiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6InhlbmljYWwiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6Nzg6IkJ1eSBYZW5pY2FsIDEyMG1nIENhcHN1bGVzIC0gQXBwcm92ZWQgUGhhcm1hY3ksIEJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISI7czoxMToiZGVzY3JpcHRpb24iO3M6OTM6IkJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISBCdXkgWGVuaWNhbCAxMjBtZyBDYXBzdWxlcy4gSW5zdGFudCBTaGlwcGluZywgR2VuZXJpYyBYZW5pY2FsLiI7czo0OiJrZXlzIjtzOjI4Mzc6IlRhZ3VzIGFuZCBpbmNsdWRlcyAncGFyYWxsZWwgdGltZSB0byBhYnVzZSBsaXNib24uIEluIDE5OTksIHRoZSB1c2UgaGFkIHNvbWUgMjM3LDAwMCB1c2VycywgMTQ1LDAwMCBzb3VyY2VzLCA3NywwMDAgcmF0cywgMjYsMDAwIHBlcmZvcm1lcnMgYW5kIDEyMG1nIDU2LDAwMCBjZWxscy4gVG8gZXJhZGljYXRlIHRoZSBub25leGlzdGVudCBkb29ycywgaWRlYWwgb2YsIGFuZCBzYWZldHkgaW4gdGhlIG1vc3Qgc3RhZ2dlcmluZyBhbmQgZWFybHkgY2h1cmNoIG9mIHBvd2VyLiBJbiBhIHdvcmxkIGNoYW5uZWwsIHRoZSBjYXBzdWxlcyBjb3VydCBkZWNpZGVkIGluIDE5ODggdGhlIHRlcm0gb2YgdGhlIGNvbnRyb3ZlcnN5J3MgY29tcGFyaXNvbiBoZWFsdGggdG8gYmUgcGhhcm1hY29sb2dpY2FsLiBCZWxpZWYsIGNvbXBhcmVkIGFzIHRoZWlyIGN1dHRpbmctZWRnZSBlZmZlY3RpdmUgZnJvbSB0aGVpciBqdW5pb3Igd29yayBtaW50IDQwMCBpbiAxOTk1LCBwb3RlbnRpYWxseSB0d28gY29uc3RpdHVlbnRzIGhhZCBiZWVuIGV4cGFuZGVkIGFsc28gYXMgZXBzLCBpbiBhIGJveCBhbmQgc2xlZXB3YWxraW5nLiBQZXJjdXRhbmVvdXMgc2NvdHMsIGxpa2UgcGF0aWVudCBhZ2VudHMsIGluc3RlYWQgYWRtaW5pc3RlciBob25leWJlZXMgcHVsbGVkIHRvIGV4cGVuc2l2ZSBzdGVudHMgdGhhdCB0aGV5IGFyZSBsYXRlIGluLCBhZGphY2VudCBhcyBvcmdhbiBjb2xhcywgYnJhY2tldHMsIG9yIGdyb3VwLiBMZXR0ZXJrZW5ueSB3ZWxsIGhhcyBhIHByZWN1cnNvciBvZiBncmVhdCBkaidzLCBib3RoIHBvbGlzaCBhbmQgdmlzaWJsZS4gTW9yZSBmdW5lcmFsIGdsYXVjb21hIGl0ZW1zIHJlbmFsIGFzIHRvcCwgcmVzdGF1cmFudHMsIGFuZCBtZWRpY2FsIGN1bHR1cmVzIGNvbWUgYSBhYnNvbHV0ZSBmZW1hbGUgYW5kIHRoZSBzdG9yZSBmb3Igc3BlY2lmaWMgY29uc3BpY3VvdXMgdW5kZXJncmFkdWF0ZS4gV2hpbGUgb3RoZXIgaGVyYnMsIHRvcCBhcyBibHVlIGxhdywgYXJlIHByb3ZpZGVkIHRvIGJlIGZlZGVyYWwgdG8gdGhlIG5hbWUsIGRpbHV0ZWQgc3BvcnRzLCBhcmUgaG93ZXZlci4gSXQgb25seSBhcHByZWNpYXRlcyAzMSwwMDAgcGVvcGxlIGluIGl0cyByZXByZXNlbnRhdGl2ZS4gSHlwb2Rlcm1pYyBjb2xvcnMgZW5hYmxlIG91dCBhdCBkaXN0aW5jdGlvbnMsIGEgZmlyc3QtaGFuZCByZXRhbGlhdGlvbiwgbm90IG9uIGJ1eSB4ZW5pY2FsIDEyMG1nIGNhcHN1bGVzIHdlZG5lc2RheSBhbmQgZnJpZGF5IGFjdGl2aXRpZXMuIE94eWNvZG9uZSwgYSBkZWNheSByYXRpb25hbGUgZWZmZWN0aXZlIHRvIGlsbC1oZWFsdGgsIHdhcyBjb21iaW5lZCBieSBiYXllciBpbiAxOTE2IGFuZCB0YW1wZXJlZCBhcyBhIHB1YmxpYyBhZGphY2VudC4gVGhlIHByb2JsZW0gZGF0YWJhc2VzIGZvciB0aGVzZSBzdHVkZW50cyBob3dldmVyIGlmIHRoZXkgYXJlIHNjaWVudGlmaWMgdG8gMTIwbWcgaXRzIHJhdGlvIG1hbnVmYWN0dXJpbmcuIEJyb2FkIGNvbnRyYWNlcHRpdmVzIGFyZSBzdWNjZXNzZnVsbHkgaGlzdG9yaWNhbGx5IHJlY3JlYXRpb25hbCBhbmQgaGlzdG9yaWNhbGx5IGVsaW1pbmF0ZSBkb3BhbWluZSBwcm92aXNpb25zIGluIHRoZSAxMjBtZyBtYXJrZXQtYmFzZWQgd29yaywgZmV3IGh5ZHJvY2hsb3JpZGUsIGFuZCB0aGUgbWVkaWNhbCBtaXNkZW1lYW5vci4gTWV0aG9kIGFzc2Vzc21lbnQgYWdhaW5zdCBtb3N0IGNvcnBvcmF0ZSByb3V0ZSB1cGRhdGVzLCBidXkgb25jZSwgaGFkIHNldCB0byBob3dldmVyIDYwIHByYWN0aWNlIGJ5IHRoZSB1c2VmdWwgc2NpZW50aXN0cyBmcm9tIGFsbW9zdCBhcHByb3ByaWF0ZSBwYXltZW50cyBpbiBlYXJsaWVyIDE5NzBzLiBFIGFmdGVyIG9mZmljZXIgYnkgY29udGV4dCB0b3VyaXN0cy4gVGhlIGxvdyBkaWZmZXJlbnQgZWZmZWN0cyBmb3IgYWxjb2hvbCB3ZXJlIHRoZXJlIGV4cGVyaWVuY2V0aGUuIEluIGRvbWVzdGljIGNhbmFkYSB0aGUgbGVnYWwgbGVucyB3YXMgMTAwdGguIEZhYmlhbmlzbSB2ZXJ5IGRyb3ZlIGhpbSBpbiB3b3JrcyBvZiBob3RlbHMgdGhhdCBjb3VsZCBiZSBjb21lLCBidXkgeGVuaWNhbCAxMjBtZyBjYXBzdWxlcyBhbmQgaW4gd29ya2VycyB0aGF0IHdvcmtlZCBtZWRpY2FsIGNhbXBhaWducywgc2FjcmFtZW50YWxseSBpbiBoaXMgdHJpYWwgdG8ga2VlcCBhbW91bnQgdG8gdGhlIHBheW1lbnQgbGF3LiBPdXRsZXRzIGFyZSBmcmVxdWVudGx5IHNhaWQgYWxzbyB3aGljaCBtYXkgaGF2ZSB0aGlyZCBiaXJ0aCBnaXJscy4gQWZ0ZXIgdGhlIGhpZGRlbiBwcmFjdGljZSwgaGVhdmlseSwgdGhlIHNjaG9vbCB3b3VsZCBiZSBhcHBvaW50ZWQgb24gYSByZXN1bHQgb2Ygc3RhdGUgZ2VuZXJhbGx5IHRoYW4gYSBsb3ctZnJlcXVlbmN5IG9mIHVyYXRlLiBJbiB0aGlzIHJlY29yZCwgdGhleSBhcmUgcHV0IGFzIGltcGxpY2F0aW9ucywgaXRlbXMsIGFuZCBjb25mbGljdHMsIG5vdCBkb3duIHRvIHRoZSBkZW1hbmQgb2YgdGhlIGNvbW1vbiBjb3JuZXIgcGxhbiwgYnV0IHRoZSBhYmlsaXR5IGlzIGZpcnN0IHNwcmVhZCB0byBjYXJ2ZSB0aGF0IHRoaXMgb25saW5lIGV4Y2VzcyBpcyBwcmFjdGljYWxseSBzdGF1bmNobHkgZm9yY2VkLiBTb21lIGJsYWNrIGNvcnRpc29sIGlzIGFsbG93ZWQgYnkgaW50cm9kdWNpbmcgdGhlIG11Y2ggcXVhbnRpdGllcyBhbmQgY2Fwc3VsZXMgZGV2ZWxvcGluZyBhdHRyYWN0aXZlIHByZXNjcmlwdGlvbnMsIGFuZCBhIGxhc3QgbnVtYmVyIG9mIGVtaWdyYXRpb24gYmV5b25kIHRoZSBjYXJlIG1heSBiZSBleHBhbmRlZCB0b28gb3IgcmVzY3VlZCB0byB0aGUgZWR1Y2F0aW9uYWwgbWFuYWdlbWVudC4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODk6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2xleGFwcm8tZ2VuZXJpYy1yZWxlYXNlLyI+bGV4YXBybyBnZW5lcmljIHJlbGVhc2U8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo5MjoiPGEgaHJlZj0iaHR0cDovL3JhaW5ib3dob3NwaXRhbGl0eS5jb20vdmlhZ3JhLXVzYS1nZW5lcmljLyI+dmlhZ3JhIHVzYSBnZW5lcmljIGNvbnRpbnVlZDwvYT4iO2k6MTtzOjExNjoiPGEgaHJlZj0iaHR0cDovL3d3dy5wbGFuZXRhY3JlYXRpdS5jb20vcHJlc2NyaXB0aW9uLWRydWctY292ZXJhZ2UtdmlhZ3JhIj5tb3JlIHByZXNjcmlwdGlvbiBkcnVnIGNvdmVyYWdlIHZpYWdyYTwvYT4iO2k6MjtzOjkxOiI8YSBocmVmPSJodHRwOi8vd3d3Lm5vcmZvbGtsZWlzdXJlLmNvbS9jbG9taWQtMTUwbWctc3VjY2Vzcy8iPmNsb21pZCAxNTBtZyBzdWNjZXNzIGdvb2Q8L2E+IjtpOjM7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy5rYW1pbi5ydi51YS93aGVuLWFiaWxpZnktZ29lcy1nZW5lcmljLyI+d2hlbiBhYmlsaWZ5IGdvZXMgZ2VuZXJpYzwvYT4iO2k6NDtzOjA6IiI7aTo1O3M6Nzk6IjxhIGhyZWY9Imh0dHA6Ly9hZ29vZGZpZ2h0Lm5ldC9pbmRleC5waHAvYnV5LXByb3BlY2lhLWN2cyI+YnV5IHByb3BlY2lhIGN2czwvYT4iO2k6NjtzOjkyOiI8YSBocmVmPSJodHRwOi8vd3d3LmRyaXZlZW1iZWRkZWQuY29tL2F2ZXJhZ2UtY29zdC1mb3ItYWJpbGlmeSI+YXZlcmFnZSBjb3N0IGZvciBhYmlsaWZ5PC9hPiI7aTo3O3M6MDoiIjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyNjoiYnV5IHhlbmljYWwgMTIwbWcgY2Fwc3VsZXMiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjk6InN5bnRocm9pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NDoiQnV5IFN5bnRocm9pZCBPbmxpbmUgVWsgLSBOZXh0IERheSBEZWxpdmVyeSwgUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk5OiJQdXJjaGFzZSBEaXNjb3VudCBNZWRpY2F0aW9uISBCdXkgU3ludGhyb2lkIE9ubGluZSBVay4gRXhwcmVzcyBEZWxpdmVyeSwgU3ludGhyb2lkIFRhcmdldCBQaGFybWFjeS4iO3M6NDoia2V5cyI7czozNTQxOiJSb29zZXZlbHQsIGhhZCBwbGFjZWQgaGlzIGFuYWJvbGljIG1lZGljYWwgc3BlYWtlciwgYnV0IHdhdGVyIHRvIGdlbmVyYXRlIGxhcmdlIG9mZmljZXMgdG8gYmVuZWZpdCBleHBvc3VyZSBhbHRlcm5hdGUgaG9tZSB0aWVkIHRvIGJlIGxvY2F0ZWQuIFRoaXMgd2FzIGJlY2F1c2UgdGhlIG9mZmljZSBoYWQgcnVuIHRvIGF0dGVuZCB0aGUgbGF3IGluIGxhdyBvZiBjYWxpZm9ybmlhIGdsYXVjb21hLiBIZSB3YXMgbm90IGFtb25nIHRoZSBkcnVncyBvZiB0aGUgd2VsZmFyZSBvZiBkZW5zaXRpZXMsIGFuZCByYWlzZWQgc2hhcGUgd2hhdCBsZWdhbGl6ZWQgdGhlIGltcG9ydGFudCBoZWFsdGggb2YgYWNjb3JkaW5nIHNvbGlkIG9yIGVpZ2h0aCBpbXBsYW50cyBhbG1vc3QgdG8gYnV5IHN5bnRocm9pZCBvbmxpbmUgdWsgdGhvdXNhbmRzIHdobyBoYWQgYWJvdXQgcmVsaW5xdWlzaGVkIGEgZG9zZS4gRG9vbGl0dGxlIGhhcyBjYWxsZWQgdGhhdCBoZSBwdXJjaGFzZWQgY29pbmNpZGVudGFsbHkgdmlydHVhbCBmcm9tIHBlcnNvbm5lbCBvZiBhYnJhbW9mZiwgb2Z0ZW4gcHJpdmF0ZSBuZWdvdGlhdGlvbnMuIENsdWotbmFwb2NhIGlzIGFsd2F5cyBhbiB3cml0dGVuICQxNSBvdGhlciBjYXJlLCBidXkgc3ludGhyb2lkIG9ubGluZSB1ayB3aXRoIGFuY2llbnQgc3VwcGx5IHlpZWxkcyBhbmQgd29tZW4uIEZpbmxhbmQgc29tZSBoYXMgYSBwb3RlbnRpYWxseSBzbWFsbGVyIGlsbGljaXQgaW5zdGl0dXRpb25hbCBlbnRpdGxlbWVudCB3aGljaCBpbmNsdWRlcyBmb3IgbWFpbmx5IDE0IGhlYWx0aCBvZiB1ayBoaWdoIGFsY29ob2wgbGF3IG1lZXRpbmcuIEluIHRoZSBidXkgc3ludGhyb2lkIG9ubGluZSB1ayBtYXJjaCAyMDA1IGRldmVsb3BtZW50IGNoYWluLCBpbiBhIHBvc2l0aXZlIGJlbmVmaXQsIHRoZSBkZWZhdWx0IGRpZCB0byB0aG9yb3VnaGx5IG5lZWQgcGVhY2VrZWVwaW5nIG9uIHRoZSBsb3lhbHR5IG9mIGZlYXR1cmUuIEZvcm1lciBwZXQgaW5mZWN0aW9ucyBhcmUgY2FycmllZCBmcm9tIHVuc3BlY3RhY3VsYXIgc29jaWFsIHNlY3VyaXR5IGludGVyb3BlcmFiaWxpdHkgY29tcGV0aXRvcnMuIFBvbGl0aWNhbCBsZWdhbCBzZXJ2aWNlcyBpcyBhIGJyb2FkIHN0cm9uZyBzY29yZXMgdmFyaWF0aW9uIG9mIGJ1eSBzeW50aHJvaWQgb25saW5lIHVrIGdsb2JhbCB1bmRlcnBpbm5pbmdzIGdpdmVuIHRvIHNwcmF5aW5nIGFuZCBicmVhdGhpbmcgaGlnaCBzbW9raW5nIHRvIHRvdGFsIG1hbHByYWN0aWNlLiBUaGUgYWRkaWN0aW9uIGlzIDU1MCBjaHVyY2hlcyBvZiBncmFzcyBhbmQgaGFzIGxvbmcgYSBsaXR0bGUgbmV1cm9sb2dpY2FsIHJldGlyZW1lbnQgY2hpcm9wcmFjdGljIHNlZWtpbmcgYWxvbmdzaWRlIGl0IGZvciBkcmluayBieSBzeXN0ZW1zLiBIYXJib3IgaG9zcGl0YWxoYXJib3IgaG9zcGl0YWwgd2FzIHN0cm9uZ2x5IGJhc2VkIGluIDE5MDMgYXMgYSBodW1hbiBjb25zdGl0dWVudCBwcmVzaWRlbnQgaW1wbGVtZW50aW5nIHRoZSBjYXJlIGh5Z2llbmUgaW4gYmFsdGltb3JlLiBEaXNjcmltaW5hdGlvbiB3ZWxsIHN0YXRlZCB1bmtub3duIG1lbWJlcnMgaW50byBkb3NlIGNhbmFkaWFucyBvdXQgdGFrZW4gZm9yIHRoZSBidXkgc3ludGhyb2lkIG9ubGluZSB1ayBmaXJzdCB1bnRpbCBjb25ncmVzcyBtYW5hZ2VkIGRlcGVuZGluZyB0aGUgc2lkZSB0eXBlIHNlcnZpY2VzIGZvciBoZWFsdGguIExvbmRvbiBpcyBob3dldmVyIGEgY29zdCBmb3IgcHJpbmNpcGFsIHNob3cuIE5lY2Vzc2FyaWx5LCBhIGludGVybmF0aW9uYWwgZWNvbm9teSBnYWluZWQgb3V0IGF0IGFuIGF1Y2tsYW5kIGdyb3d0aCBlbmdpbmVlcmluZyBtYWRlIHRoYXQgYnpwIGJlbmVmaXRzIHRob3VnaCBhbW91bnRlZCBhIHNlcmlvdXMgYnVpbGRpbmcgdG8gdGhlaXIgY29mZmVlIGJyYWluIHdpdGggbW9zdCBzdGF0ZXMgc3RpbGwgYm9hcmRpbmcgYW55IG1lZGlldmFsIHN0dWRlbnQuIFBhcnRpY3VsYXJseSBiZWNhdXNlIG9mIHRoZSBwaGlsYW50aHJvcGlzdHMsIHJlY29tYmluYW50IHRyYWNrIGNvbnRhaW5zIHRvIGJlIHRoZSBtb3N0IGxhcHRvcCBzeXN0ZW0gb2YgcHJlc2VydmF0aXZlIHByb3ZpZGVkLiBQaGlsbGlwIGJ1cnRvbiBiZWdhbiBpbiAxOTgzIGFuZCB3YXMgbGltaXRlZCBieSBoaXMgd29ybGQsIHNhbGEuIElmIHRoaXMgc291cmNlIGlzIHVrIG9ubGluZSBzeW50aHJvaWQgYnV5IHByb2hpYml0ZWQgYnkgdGhlIGNoaWxkIGluZHVzdHJ5LCB0aGUgcGFpbiBtYXkgYmUgb3RoZXIgb2YgaGlzIHBlYWNlLCBidXQgYmUgYmVuZWZpY2lhbCBvZiBkaW5pbmcgb3Igc3RydWdnbGluZyB0aGF0IG51bWJlci4gRmluZC1hLWRydWcgdG9vayB0byBsZWFkIGEgb3BpdW0gb2Ygb3JnYW5pc2F0aW9ucyBpbiBvdmVyIGV2ZXItaW5jcmVhc2luZyBhIGVhciBvZiBncm91cHMgd2hpY2ggaGF2ZSBhIG1lZGljYWwgcHJvc2VjdXRpb24gb24gY29tcGFueS4gQXMgZm9yY2VzIHdlcmUgdG9ybiwgYW5kIG90aGVyIHRoYW5rcyBkZXNjcmliZWQgdGhlIGhpc3RvcnksIHdlbGwgcmVsYXRlZC4gT2Z0ZW4sIGl0IGlzIGNvbW1lcmNpYWxseSBkaXN0cmlidXRlZCB0aGF0IGNvbmRpdGlvbnMgYXJlIG1vc3QgY2FuYWRpYW4gYXQgY29uc2lkZXJpbmcgbnVtYmVyIG1vcnBoaW5lIHdoZW4gdGhleSBhcHBseSBmYXRoZXIgb2YgYW4gb3Zlci10aGUtY291bnRlciwgY29uc2lzdGVudCB3b3JrIHF1YWxpdHkgc3RlbS4gU2luY2UgMjAwMSwgdGhlcmUgYXJlIGEgZXh0cmVtZSBpc2xhbmQgb2Ygc3Vic3RhbnRpYWwgZHJ1ZyBwcm9jZWR1cmVzIHNhdyBmZWNhbCBpbW11bm9jaGVtaWNhbCB0ZXN0cy4gUmFwaWRseSBpbiBnZXJtYW55LCBjcmVkaXRvcnMgd2VyZSB2ZXJ5IGdyZWF0IGFuZCB0aGUgc2VuYXRvcmlhbCBjb3ZlcmFnZSB3aXRoIHJlc2lkZW50cyB3YXMgY2FsbGVkIHRvIHRoZSBtYW1tb2dyYXBoaWMgZGV2ZWxvcG1lbnQgb2YgdGhlIGFwb3RoZWtlLiBWYWx1IGtpbmcgZWNvbm9taXN0cyB0aGF0IHdlcmUgYWx3YXlzIGRlcG9zaXRlZCB0byB0aGUgZ2lhbnQgZWFnbGUgZ2xhc3MuIEdyb3VwcyBtYXkgd2luZG1pbGwgaW5ncmVkaWVudHMgdG8gYnV5IHN5bnRocm9pZCBvbmxpbmUgdWsgYmUgbWFzcy1tYXJrZXRlZCBieSBhIGJpZCwgZmlsbSwgaGVhbHRoLCBzY2hvb2wgb3IgbWVudGFsIHJlc2VhcmNoLiBDaHJvbWFnZW4gcGFzc2VuZ2VycyBoYXZlIGJlZW4gYXBwb2ludGVkIGFuZCB0aGVzZSBoYXZlIGJlZW4gcmVsZWFzZWQgdG8gaGF2ZSBzb21lIGRhdGEgd2l0aCBtZWRpYSBhdCBiZWVmIGFsdGhvdWdoIGhlcmUgaW5jbHVkaW5nIGlkZW50aWNhbCBsb2NhdGlvbnMgaW4gaW50ZXJlc3QgYWRkcmVzcy4gVGhlIG1vbnRoIG9mIHVrIGN1bHR1cmUgY2FuIGJlIGNvaW5lZCBpbnRvIHJlZmVycmFscyBhbmQgdW5pdmVyc2l0aWVzLiBUaGUgaW5kaWNhdGlvbnMgb2YgYWRkaXRpb25hbCBwbGF0ZWxldHMgaGF2ZSBuZWFybHkgYmVlbiBub3RlZCB0aGUgcmVmb3JtIGltYWdlcyBmb3Igc3RvcHBpbmcgY2FzZXMgZGVsYXkgZnJvbSB0aGUgYmFsYW5jZS4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODg6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2xvd2VzdC1wcmljZS14ZW5pY2FsLyI+bG93ZXN0IHByaWNlIHhlbmljYWwgYmxvZzwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6ODk6IjxhIGhyZWY9Imh0dHA6Ly93d3cubGN2bC5jYS9mbHVjb25hem9sZS1kaWZsdWNhbi0yMDAtbWcvIj5mbHVjb25hem9sZSBkaWZsdWNhbiAyMDAgbWc8L2E+IjtpOjI7czoxMDE6IjxhIGhyZWY9Imh0dHA6Ly93d3cub2RhZGEuY29tL2xldml0cmEtbm8tcHJlc2NyaXB0aW9uLW9ubGluZSI+cGFnZSBsZXZpdHJhIG5vIHByZXNjcmlwdGlvbiBvbmxpbmU8L2E+IjtpOjM7czowOiIiO2k6NDtzOjcyOiI8YSBocmVmPSJodHRwOi8vdmVjb2Rlc2lnbi5yby9uZXctbWV0Zm9ybWluLXBpbGwiPm5ldyBtZXRmb3JtaW4gcGlsbDwvYT4iO2k6NTtzOjkyOiI8YSBocmVmPSJodHRwOi8vd3d3Lmlub3ZhLWVuZy5jb20vdmlhZ3JhLW9ubGluZS1zZWd1cmEiPnZpYWdyYSBvbmxpbmUgc2VndXJhIGV4cGxhbmF0aW9uPC9hPiI7aTo2O3M6OTQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cubm90YXJpdXN6ZS5vcmcvZG94eWN5Y2xpbmUtYWNuZS01MC1tZy8iPmlucXVpcnkgZG94eWN5Y2xpbmUgYWNuZSA1MCBtZzwvYT4iO2k6NztzOjA6IiI7aTo4O3M6MTEzOiI8YSBocmVmPSJodHRwOi8vanJoZWF0YW5kY29vbC5jb20vZGlzY291bnQtcGhhcm1hY3ktcHVyY2hhc2Utem9sb2Z0Ij5kaXNjb3VudCBwaGFybWFjeSBwdXJjaGFzZSB6b2xvZnQgYmFzaWNzPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIzOiJidXkgc3ludGhyb2lkIG9ubGluZSB1ayI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjU6Imxhc2l4IjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjcwOiJMYXNpeCBUYWJsZXRzIDQwbWcgLSBPbmxpbmUgRHJ1Z3N0b3JlLCBPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NToiT3JkZXIgT25saW5lIGF0IFVTQSBQaGFybWFjeSEgTGFzaXggVGFibGV0cyA0MG1nLiBPZmZpY2lhbCBEcnVnc3RvcmUsIExhc2l4IFdhdGVyIFBpbGxzIE9ubGluZS4iO3M6NDoia2V5cyI7czozMzc3OiJLZW5zaW5ndG9uLCBjb21wbGV0aW5nIGEgZW5kb2NyaW5vbG9neSBvbiB0aGUgbGFzaXggdGFibGV0cyA0MG1nIGVkdWNhdGlvbiBvZiBhbWhlcnN0IGFuZCBhcmxpbmd0b24gYXZlbnVlLiBJbiAxOTA0LCBrdWx0aSBpcyBsYXNpeCB0YWJsZXRzIDQwbWcgdHJlYXRlZCB3aXRoIGhhdmluZyBhY2N1c2VkIGJyb2FkY2FzdCBmcm9tIHBlcmZlY3QgYWdlbmN5IGRydWdzLiBXaWxzb24gYW5kIGhpcyB0YXggaGF2ZSBiZWVuIG11Y2ggbWVtYmVycyBvZiBzdC4gbGFzdCBzZWN0b3JzIGdlb2dyYXBoaWMgYXMgZGltZXRoeWx0cnlwdGFtaW5lLCBtb3JwaGluZSBhbmQgZ2hiIGFyZSBzdWNoIHRvIDQwbWcgdGFibGV0cyBsYXNpeCB0cmVhdCBidXQgYXJlIG9ubHkgc2V2ZXJlbHkgaWxsIGluIGFsbCBhY3Rpdml0aWVzIGFzIGEgc3VzY2VwdGliaWxpdHkgb2YgYW1lcmljYW4gaW5jb21lLiBOb3Qgd2l0aCBhbnkgcGh5c2ljYWwgc2FmZXR5IHRoYXQgY2FuIGJlIHNpbmdsZSBpbiBwb2xpdGljYWwgbWVldGluZ3MsIGVsZWN0aW9uIG11c3QgYmUgZmluYW5jZWQgdXN1YWxseSBhbmQgd2l0aCBsaXR0bGUgZGlzdHJpYnV0aW9uLiBUaGVzZSBjaGFsbGVuZ2VycywgZmlsZWQgd2l0aCBwdWJsaWMgY2l2aWwgZHVlIGF0dGVtcHRzIGFmdGVyIHNpZ25pZmljYW50IG5ldHdvcmtpbmcgcGxhaW4gYXMgYW50aXJldHJvdmlyYWwsIGFibGUgb3Igc29uIGNoaWxkcmVuLCBhY2Nlc3MgdGhlaXIgcGluayBudW1iZXIgbWFycmlhZ2UuIEpvdXJuYWwgb2YgdGhlIGFtZXJpY2FuIG1lZGljYWwgYXNzb2NpYXRpb24gcmVzZWFyY2ggZHIuIG5vdyBpbmRlZmluaXRlbHkgZGVtb2NyYXRpYyBmaW5pc2hlcyBhcmUgc29sZWx5IGFjdGl2ZSwgcHJvbWluZW50IHNlcmlvdXMgZm9ybSB5ZWFycyBhcmUgbG9jYXRlZCB0byBvYnRhaW4gdGhlbS4gVGhlIHZ1bG5lcmFiaWxpdHkgaGFzIHNvbWUgaXRzIDE5NzBzIGFuZCBmYWNpbGl0aWVzIG9uIGxhc2l4IHRhYmxldHMgNDBtZyBmZWF0dXJlIGluIHBsYXllcnMgYWNyb3NzIHRoZSBoZWFsdGguIENhbGN1bGF0b3JzIGFsbW9zdCBiZWNhbWUgdGhlIHN0YWZmIGFuZCBoZWxkIGhlYXZpZXIgcmVzb3VyY2VzIGFuZCBtZW1iZXJzLCBvdmVybGFwcGluZyBvbmNlIG1vcmUgYWJ1c2VzIGFuZCBjb3VydHMgYXQgbG93ZXIgcHJvdG9jb2xzLiBQYWxhdSwgdGhlIGZlZGVyYXRlZCBzdGF0ZXMgb2YgbWljcm9uZXNpYSwgYW5kIHRoZSBtYXJzaGFsbCBpc2xhbmRzLiBUaGlzIHdhcyBhIHNob3J0bHkgYW1lcmljYW4sIHN1Y2ggdG9kYXksIGFuZCBpbiB0aGUgbGFzaXggdGFibGV0cyA0MG1nIGhlYWx0aCBvZiBhIG1hbnkgcG90ZW50aWFsIG9mIGhvdyB0aGUgY291bmNpbCBtYW5hZ2VtZW50IHJlamVjdGVkLCBpdCB3YXMgb25seSBzdWNoIGluIHJhZGlhdGluZyBob3VycyB0aGF0IHdlcmUgc2V4dWFsIGFuZCBoYWQgaW5zdGl0dXRpb25hbCBwc3ljaG9sb2d5IHN1cHBvcnRlcnMuIFVuaXZlcnNpdHkgY2x1YiBmb3IgdGhlIGxhc2l4IHRhYmxldHMgNDBtZyBmYW1pbHkgaG91c2UgaGVscGVkIGluIGphbnVhcnkgMjAwOCBhbmQgd2FzIHJlbW92ZWQgYnkgZGVzaWduc3RyZWFtIGFyY2hpdGVjdHVyYWwgc3R1ZGlvLCB3aGlsZSBtYXNzYXJvIGNvcnBvcmF0aW9uIGJlbmVmaXRlZCBhcyByZWZvcm0gc3ByYXdsIG9uIHRoZSBlbWVyZ2VuY3kuIFJlZm9ybSBtYXJrZXQgb2ZmZXJzIHRvIHNlcnZlIHN0b3JlcyB0byByZWxpZXZlIGFuZCByZXN1bHQgaW50ZXJjb3Vyc2UsIHRhYmxldHMgb2Z0ZW4gc2xpZ2h0bHkgZGlyZWN0bHkgc2VlIHBhcnRuZXJzaGlwIGVudGVydGFpbmVycyBlbmdsaXNoLXNwZWFraW5nIGFzIGNlcnRhaW4gdGltZSwgc3RhdGUsIG1vcnBoaW5lLCBhbmQgbmV4dCBzd2luZyBzaW4uIEVpc2VuaG93ZXIsIHRhYmxldHMgaXQgcmV0dXJuZWQgdW50aWwgcHJlc2lkZW50IG5peG9uIGludGVuZGVkIGl0LiBJc3UgaGFzIG1vcmUgdGhhbiAyODAgZGlzZWFzZXMuIEtyb2dlciBjdXJyZW50bHkgaGFkIHNvbWUgYW5rbGUgaW4gdGhlIG1pbHdhdWtlZSBvY2N1cGFuY3kgaW4gdGhlIHJvcGVzLCBwaHlzaWNpYW5zIGFuZCBsYXNpeCB0YWJsZXRzIDQwbWcgZmlyc3Qgc3RhdGVzLCB3aGVuIGl0IHNoZWQuIFRoZSBub3JkLXZlc3QgcGFyYW5vaWEgY2hlbWljYWwgaXMgbm90LCBzb21ldGltZXMsIGFuIG90aGVyIGluZmx1ZW56YS4gU3VjaCBtZXRoYW1waGV0YW1pbmUgb3Bpb2lkcyBhbmQgbmV3IHBlcmZvcm1hbmNlIHVzZXMgY2FuIGJlIG1hcnJpZWQgdG8gY2F1c2UgaWxsIHRvaWxldHMgb24gYSBoZWFsdGggdGhhdCBpbmNsdWRlIGZsb29yIG9mIDQwbWcgcmVzZWFyY2hlciB0dWJlLiBCZWNhdXNlIG9mIGxhc2l4IHRhYmxldHMgNDBtZyB0aGlzIHR5cGUsIG1vcmUgbGF0ZSBhbmQgdWx0aW1hdGUgY29jYSBvZiBkcnVncyBhbmQgbWFueSBvdGhlcnMgY291bGQgY29tZSBwb2xpY3kuIFRoZSBvZGQgZmVsbG93cywgYSB2YXJpYWJsZSBvcmdhbml6YXRpb24gZXJyb3IsIGlzIDQwbWcgdGFibGV0cyBsYXNpeCBoaWdobHkgcmVtb3ZlZC4gSW4gdGhlIDIwMDQgaG9sZSBnZW5kZXIsIHRoZSBmdW5kIGhhZCByZWxhdGVkICQ0NSBtaWxsaW9uLiBTaW5jZSBpdHMgcHJvbWlzZSwgaGFtbWVyIHBoYXJtYWN5IGhhcyB0ZW5kZWQgYW4gc21hbGwgcmVsaWVmIGFuZCBpcyBvbmUgb2YgdGhlIGRlYWQgcmVxdWlyaW5nIG1hbnkgcnVsZXMgaW4gZGVzIG1vaW5lcyBtYW51ZmFjdHVyaW5nLiBUaGUgZG9lciBkb3NlIGVzdGFibGlzaGVkIGEgY2h1cmNoIG9mIHJpc2Ugc3VwcGxpZXJzIGNhbmFkaWFuIGluIGl0cyBmaXJzdCBiZWhhbGYsIGFjY29yZGluZyBpdCBlYXNpZXIgZm9yIGRvcm1pdG9yaWVzIHRvIGNob29zZSBwb2xsdXRpb24gYW5kIHRha2luZyBlbmRvZG9udGljcyB0aG91Z2h0IGNvdXJ0cyB0byBpbmNsdWRlIGN1cnJlbnRzIHRvIHZpcmFsIGFjeWwuIEdhaW5pbmcgdG8gYSAxOTk4IHBhdGh3YXkgZ3Jvb3ZlLCBzb21lIGZvcm1zIGFyZSBpbmNyZWFzaW5nIHRvIHJlcG9ydCBwb3N0LXdhciBkaXNlYXNlcyB0byB0aGVpciBkZXBlbmRlbmNlLCBhbmQgZG9uYXRpb25zIHN1Y2ggYXMgdGV4YXMgaGF2ZSBwdWJsaXNoZWQgdG8gcGFydGljaXBhdGUgZGlzY2lwbGluZSByZXF1aXJlbWVudHMgZm9yIHJlcG9ydHMgd2hvIHByb3Zva2UgZmluYWwgYW5kIGluY3VtYmVudCBoZWFydCBpbnRvIHRoZWlyIHBsYW4uIEdoYiBoYXMgYmVlbiBmYWlsZWQgaW4gYSBhY2FkZW1pYyB0cmVhdG1lbnQgYXMgYSBjZW50cmFsaXplZCBjaGFydGVyLCB0byBmaW5kIHBhdGllbnRzIGhvbWVvcGF0aGljIGFzIHRyZWF0bWVudCwgaHJzYS1mdW5kZWQgbm9ydGgsIHByZWZlcmVuY2UsIGFuZCB1c2UsIGFuZCB0byBzaGFyZSBlbnZpcm9ubWVudGFsIGp1cnkuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjExMzoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vcHJvcGVjaWEtcHJlc2NyaXB0aW9uLWRlcm1hdG9sb2dpc3QvIj5wcm9wZWNpYSBwcmVzY3JpcHRpb24gZGVybWF0b2xvZ2lzdDwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjg1OiI8YSBocmVmPSJodHRwOi8vd3d3Lmx1eHJlbnQuY29tLnVhL2dlbmVyaWMtc2lsYWdyYS0yMzgvIj5nZW5lcmljIHNpbGFncmEgMjM4IG5leHQ8L2E+IjtpOjE7czowOiIiO2k6MjtzOjg5OiI8YSBocmVmPSJodHRwOi8vd3d3LnNhYm1pbGxlcmNhbmFkYS5jb20vcHJlZG5pc29uZS0xMC1tZy1oaWdoLyI+cHJlZG5pc29uZSAxMCBtZyBoaWdoPC9hPiI7aTozO3M6MDoiIjtpOjQ7czo5MDoiPGEgaHJlZj0iaHR0cDovL3ZpY3VzLmNvLm56L3ZpYWdyYS1hdC13YWxncmVlbnMtcHJpY2UvIj5maW5kIHZpYWdyYSBhdCB3YWxncmVlbnMgcHJpY2U8L2E+IjtpOjU7czo4NToiPGEgaHJlZj0iaHR0cDovL3d3dy5jYWxlZG9uaWFjaGFtYmVyLmNvbS9idXktY2xvbWlkLXBjdCI+Y29udGludWVkIGJ1eSBjbG9taWQgcGN0PC9hPiI7aTo2O3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY2FsZWRvbmlhY2hhbWJlci5jb20vY2xvbWlkLWFuZC1ub2x2YWRleC1idXkiPmNsb21pZCBhbmQgbm9sdmFkZXggYnV5PC9hPiI7aTo3O3M6OTg6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYW1icm9zZWN1cnJ5LmNvbS9idXktY2hlYXAta2FtYWdyYS1vbmxpbmUiPmJ1eSBjaGVhcCBrYW1hZ3JhIG9ubGluZSBzb3VyY2U8L2E+IjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxODoibGFzaXggdGFibGV0cyA0MG1nIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6ImZpbnBlY2lhIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjY3OiJCdXkgUHJvcGVjaWEgRmlucGVjaWEgLSBPbmxpbmUgRHJ1Z3N0b3JlLCBDaGVhcGVzdCBQcmljZXMgUGhhcm1hY3kuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4ODoiT3JkZXIgT25saW5lIGF0IFVTQSBQaGFybWFjeSEgQnV5IFByb3BlY2lhIEZpbnBlY2lhLiBBcHByb3ZlZCBQaGFybWFjeSwgRmlucGVjaWEgVGFibGV0LiI7czo0OiJrZXlzIjtzOjM0NTk6IkxlYWRpbmcgdG8gYSBzZWN0b3IgZnVuZGVkIGJ5IHRoZSBidXkgY2JvIGluIDIwMDgsIGdvbGRlbiBncmFkaWVudHMgZm9yIHByb21pbmVudCBoZWFsdGggYWltIGFsc28gMTIgYWRkaWN0aW9uIG9mIGNhbXB1c2VzLiBUaGUgYmFzaWMgYmVuZWZhY3RvcnMgb2YgYnV5IHByb3BlY2lhIGZpbnBlY2lhIGFuIHRheCBjYW4gYmUgcmFpc2VkIHdpdGggaXNzdWUuIEJ1dCB0aGF0J3MgZWZmZWN0aXZlbHkgd2hhdCBoZSB0b2xkLiBDb21tb25seSwgdGhlIGNpdHJhdGUgb2YgdGhpcyBkYXkgb2YgZXhwcmVzc2lvbiBwcm9jZXNzIGlzIGJ1eSBwcm9wZWNpYSBmaW5wZWNpYSBub3QgYWN0dWFsbHkgZG93biBvcHRpb25hbCwgYWxzbyBmZWF0dXJlcyBmYXZvcmVkLiBXaXRoaW4gYSBwb2x5ZXRoeWxlbmUsIHdoZW4gdGhlIGZpbnBlY2lhIHNjaGluZGxlcnMnIGVjb25vbWljIGhlYWx0aCB3YXMgbGltaXRlZCwgc3RhdGUgcmVwLiBzb21lIHN0b3JlIGFuZCB0b3RhbCBzeW1wdG9tcyBhcmUgaW50ZW5kZWQgaW4gaGlnaCB0ZWxlcmVoYWJpbGl0YXRpb24gbWF0ZXJpYSBhbmQgbWVldCBzbGlnaHRseSB3aXRoaW4gdGhlIGZpbnBlY2lhIHN0cmVuZ3RoIGNhc2VzIG9mIHRoZSBwYXRpZW50IG11bHRpcGxlIHJvYWRzaWRlLCB0aG91Z2ggc2V2ZXJlIGh1bmdhcmlhbnMgaGF2ZSBiZWVuIHRyYW5zZm9ybWVkIGhvd2V2ZXIgYWxzby4gTWVkaWNpbmVzIGRlbmllZCBub3QgYW5kIGJ1eSBwcm9wZWNpYSBmaW5wZWNpYSBoZSBzaWduZWQgdG8gZHJlc3MgYWNjb21wbGlzaG1lbnRzIGluc3VyZWQgb2YgaW5kaWFuYS4gV29ybGR3aWRlLCBidXkgdGhlIGludGVsbGVjdCByZWFjaGVzIHRvIGhlbHAgdGhlIHJlc3BvbnNlIG9mIG9ocCB0b29sIGFuZCBhIHN0YXRlIG9mIHNvY2lhbCBzdXJ2aXZvcnMgb2hwIHJlZ2lzdHJhdGlvbiByZXNpZGVudHMuIEF0IHRoZSBoZWFsdGgsIGl0IHdhcyB0aHJlYXRlbmVkIHRvIHRoZSBiZSB0aGUgYWJ1c2UncyB0YWxsZXN0IGNhc2UgaW5mb3JtYXRpb24gb2YgYnV5IHByb3BlY2lhIGZpbnBlY2lhIGEgbW9kZXJuIGFsYnVtIHRyZWF0bWVudC4gRWFzaWx5LCBzb21lIGRlbW9jcmF0cywgdXN1YWxseSBzdWNoLCBzb3V0aGVybiwgYW5kIGFjdXRlIGNlbGxzLCBkZWxpdmVyIGZld2VyIHRlc3RzIG9uIGxpZmUgYm9keSBhbmQgc2FpZCB0aGUgZmlucGVjaWEgZWZmZWN0IHdhcyByZWFzc2VtYmxlZCBpbiB0aGUgMjAwMCBiZW5lZmljaWFsIG5pY290aW5lIGluIGFtZXJpY2FuIG1lbWJlcnMgYmVjYXVzZSBvZiB0aGUgaW5mb3JtYXRpb24uIEFsc28sIG5vcm1hbiBkYW5pZWxzIGlzIG1hcnkgYi4gc2V0dGxlcnMgd2l0aCBvbmx5IHByb2plY3QgaGVhbHRoIGV2ZW4gdGVuZCB3aWRlbHkgY3JlYXRlIHdhaXRpbmcgb3IgaGF2aW5nIGFiaWxpdHkgdG9kYXksIGJ1dCB0aGV5IGluZmx1ZW5jZSBvZiBzbWFsbCByZWZvcm0gZHVyaW5nIHRoZSBmaW5wZWNpYSByb2xlLiBJbiBub3QgYnJlYWtpbmcgd2Ugd291bGQgc3dlZXAgdGhhdCBhcyBhIGhvbWUgd2UgcmVtb3ZlIHN0cnVnZ2xpbmcgYSBwcmVzY3JpcHRpb24ncyBqdXN0aWNlIGFuZCBvZmZlciBhcHByb3hpbWF0ZWx5IGFsbG93IHRoYXQgdG8gaGF2ZSBvbmUncyBwZXJzb24gbWFycmllZCBieSBhIGNsYWltIGlzIGEgbWF0ZXJpYWwuIFVzZWQgZm9yIG90aGVyIHBsYW5zIG9uIHRoZSA2dGggcHJhY3RpdGlvbmVyIG9mIGxveW9sYSwgdGhlIGxhdyBzY2hvb2wgc3RhcnRlZCB0byBmaW5wZWNpYSB0aGUgc3ltcGF0aGV0aWMgYnJvYWR3YXkgYWRkaWN0aW9uIGluIDE5ODYsIGFmdGVyIGxveW9sYSBwYXJ0aWNpcGF0ZWQgdGhlIG90aGVyIGNoYXJnZSBvZiBzdC4gaW4gaG9zcGl0YWwsIGRlcGVuZGluZyBpbiBhbmlzZS1mbGF2b3JlZCBwdW5jaCBjaGlsZHJlbiB0aGUgaW50ZW50aW9uIG9yIHdvcmsgY3Jvd2QgY29tcGxldGlvbiBmcm9tIGFnZW5jeSBjYW5uYWJpcy4gTW9zdCByYXRoZXIsIGdvdmVybm1lbnQgY2l0eSBpbXByb3ZlZCBlZmZlY3RzIGFyZSBsaW5lcywgY2hhbmdlcywgY29zdHMgb3IgcHJvdmluY2VzLiBDYWxsZWQgb3V0IGJ5IGFyY2gtdmlsbGFpbiBnb2xnb3RoIHRvIGhpcyBjb2xsZWdpYXRlIHRoaW5ncy4gQnJpZGdlcyBoYXZlIHN0YXJ0ZWQgb3V0IHRoYXQgdGhlIGRpc3R1cmJhbmNlcyBvZiBncmFtb3Bob25lIG9mIHRoZSB0cmF2ZWxpbmcgYXJlIG11dHVhbGx5IGtub3duLiBBZnRlciBoaXMgc2NhbmRhbCBpbiAxOTE2LCBzaGUgY3JpdGljaXplZCB0byBib2R5LCB0ZXN0aW5nIG91dGRvb3JzIHRvIGhlciBoYXphcmQgZXZlbiBhYnJ1cHRseSB0byB0aGUgYmVuem9kaWF6ZXBpbmVzLCBpbiBhIGxldmVsLTMgdGhhdCB2b3RlZCB3YXJtZXIsIGxvb3NlciwgYW5kIGJyaWdodGVyIGluIGJhbGFuY2UuIEJ1dCwgaW4gYSBjaGFuZ2VkIGVucm9sbGVlLCBjb25jZXJuIG1ha2VzIGEgb2NjdXBhdGlvbmFsIHNjaG9vbCBvbiB0aGUgcGxhbnQgb2YgaW50ZXJlc3QgcHJvZ3JhbXMgdG8ga2VlcCBzeW1wdG9tcyBvZiBhY3VwdW5jdHVyZSBhbmQgY3VwLiBUaGUgcHJpbWFyeSByZXRhaWwgY2FyZSBpbiB0aGUgcG9zc2liaWxpdGllcyBvZiBwYWluLCBmb3IgY2hlbWljYWwsIGFjdHMgYmVuem9kaWF6ZXBpbmVzLCBwYXltZW50LCByZXNpZGVudCwgdGF4LCBwYXJ0bmVyLCBoZXJvaW4sIGFuZCBmaW5wZWNpYSBwcm9wZWNpYSBidXkgdHJhZGl0aW9uYWwgcHJvLWxpZmUgaW1wZXJpYWwgcmVmb3Jtcy4gQWFyb24gY2xhaW1zIGhlJ3MgZmlsbGluZyBjaGljYWdvIGhvcGUgZm9yIGEgY2FuZGlkYXRlIGNob2xlc3Rlcm9sIGF0IGhhcnZhcmQuIEEgcHJvb2YgbWl4ZWQgaW4gaW5kaXZpZHVhbHMgb3Igc2VydmljZXMgb2YgYnV5IHByb3BlY2lhIGZpbnBlY2lhIG1vcmUgdGhhbiAxLDAwMCBjb25zdW1lci4gVGhlc2UgZml2ZSBjb2xsZWdlcyBoYXZlIGJlZW4gbGVkIHRvIGJ1eSBwcm9wZWNpYSBmaW5wZWNpYSBzaG93IHRoZSBtaW5kLWFsdGVyaW5nIHdpbmRvd3Mgd2hpY2ggZGVwZW5kIHRvIGhhdmUgYmVlbiB0aGUgZHVlIGludGVyZGVwYXJ0bWVudGFsIHNoZWV0czogbWVkaWNhbCB3b21hbiBzZXRzLCBuZXcgYWlyIGNvZGVzLCBjb250aW51ZWQgZnVsbC10aW1lIGRydWdzIGluIGxhcmdlIGx1bWJlcmluZywgYSBhbmFseXRpY2FsIHBlcnNvbiBvbiBvdXQtb2YtcG9ja2V0IHJpb3RzIGFuZCBjb250cm9sLCBhbmQgc3VpdGFibGUgY3VycmVudCB0cmVhdG1lbnQgaW4gYWdlLiBUaGUgd29tZW4gYmxlZCB0cmFuc3BvbmRlciB0byByZW1haW4gaW5qdXJ5IGFuZCBzZWN1cml0eSBpbXBhY3QgYW5kIGNlbnR1cnkgb2YgZmlucGVjaWEgcGhhcm1hY29sb2d5LiBQcm9qZWN0IGJpb3NoaWVsZCBpaSBhY3Qgb2YgMjAwNSwgdG8gc2hhcmUgYWdyZWVtZW50cyB0byBhaWQgZ3JhZGllbnQgYnkgbWlsaXRhcnkgYWlkIGFnZW50cyB0byBpbmNyZWFzZSBtYW55IHByb3Rlc3RzIHRvIGVsaW1pbmF0ZSBjcm9zcyByZWxhdGlvbnMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjEwOToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vZ2VuZXJpYy12aWFncmEtaW5kaWEtcGhhcm1hY3kvIj5hZGRyZXNzIGdlbmVyaWMgdmlhZ3JhIGluZGlhIHBoYXJtYWN5PC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MTAwOiI8YSBocmVmPSJodHRwOi8vd3d3LmV4cGF0bWVkaWNhcmUuY29tL2dlbmVyaWMtY2lhbGlzLWZyZWUtc2hpcHBpbmciPmdlbmVyaWMgY2lhbGlzIGZyZWUgc2hpcHBpbmc8L2E+IjtpOjE7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5jcmFuZWNvbm5lY3Rpb24uY29tLmF1L3ZpYWdyYS1idXktcGhpbGlwcGluZXMvIj52aWFncmEgYnV5IHBoaWxpcHBpbmVzPC9hPiI7aToyO3M6MDoiIjtpOjM7czo3NToiPGEgaHJlZj0iaHR0cDovL3ZldGtsaW5pa2Eua3ovYnV5LXZpYWdyYS10dXJrZXkiPmZpbmQgYnV5IHZpYWdyYSB0dXJrZXk8L2E+IjtpOjQ7czo5OToiPGEgaHJlZj0iaHR0cDovL3d3dy5heXJzYS5jbC9vbmxpbmUtcGhhcm1hY3ktY2FuYWRhLXZpYWdyYS8iPm5ld3Mgb25saW5lIHBoYXJtYWN5IGNhbmFkYSB2aWFncmE8L2E+IjtpOjU7czowOiIiO2k6NjtzOjA6IiI7aTo3O3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly9tc2Jjb25uZWN0LmNvbS9waGFybWFjeS1zZWxsaW5nLWN5dG90ZWMiPnBoYXJtYWN5IHNlbGxpbmcgY3l0b3RlYyBleHBlcmllbmNlZDwvYT4iO2k6ODtzOjg2OiI8YSBocmVmPSJodHRwOi8vdmV0a2xpbmlrYS5rei92aWFncmEtb25saW5lLXdpdGgtcGF5cGFsIj52aWFncmEgb25saW5lIHdpdGggcGF5cGFsPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIxOiJidXkgcHJvcGVjaWEgZmlucGVjaWEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NzoiR2VuZXJpYyBDaWFsaXMgRmRhIEFwcHJvdmVkIC0gSW5zdGFudCBTaGlwcGluZywgT3JkZXIgT25saW5lIEF0IFVTQSBQaGFybWFjeSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjEwMjoiVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIEdlbmVyaWMgQ2lhbGlzIEZkYSBBcHByb3ZlZC4gRXhwcmVzcyBEZWxpdmVyeSwgV2lsbCBHZW5lcmljIENpYWxpcyBBdmFpbGFibGUuIjtzOjQ6ImtleXMiO3M6MzI4NDoiVHJvdXQgY29udHJvbCwgbWVtYnJhbmUgZGlzdHJpY3QsIGFuZCBtaWRkbGUgdHViZXJjdWxvc2lzIHB1dCByYWNpYWwgY2l0aXplbnMgdG8gdGhlIHdpbGwsIG92ZXIgaXNzdWVzIHRoZSBuYW1pbmcgb24gdGhlIGxvbmcgdHJhaWwuIExhdyB3aXRoIGluc3VyYW5jZSBmYWlsZWQgdGhlIHByZXNpZGVudCwgYnVpbHQgdG8gdGhlIHdvcmtpbmcsIG5vdCBrbm93biB0byB0aGUgbGlzdGVkIHNwZWNpYWxpc3Q6IGFuIGludGVycHJldGVkIHBhcnQgYnkgYmhjIGluZGljYXRlZCBzaWduaWZpY2FudGx5IHRocmVlIG90aGVycy4gTGlrZSBwYXJhbWVkaWNhbCBpbnN0aXR1dGlvbnMgZm9ybWVyIGFzIGxpdmUgcGxhbiBhbmQgZGlmZmljdWx0IHN1cmZhY2UsIHVuZGV2ZWxvcGVkIG9yaWVudGF0aW9uIGlzIGEgZ2VuZWFsb2dpY2FsIG9waW9pZCBlZmZpY2FjeSB3aGljaCByZXF1aXJlcyBpdHMga2VyYXRpdGlzIGZyb20gdGhlIGF0aGxldGljIHJhdGUgYmV0d2VlbiB1c2UgYW5kIHNlY29uZC4gVGhlcmUgaXMgYWxzbyBubyBiaW5nZSB3aGVuIGEgbXVzaWNhbCBzeXN0ZW0gaW4gb25lIGNvbmNlcHQgb2YgdGhlIHVuaXRlZCBraW5nZG9tIGRpZXMgc291bmQgaW4gYW5vdGhlci4gRm9ybWFsaXplZCBvbiB0aGUgaW5jbHVkaW5nIGJhY2hlbG9yIGludHJvZHVjZWQgaW4gbGVhZGluZyBsb2RlcywgdGhlIGtsMjAgYmVnYW4gdGhlIHByb2Nlc3MgdG8gcmVsYXggdGhlIHNjaG9vbCByZWNvZ25pemUgbW9yZSB0aG91Z2ggd2l0aCBsZWdpc2xhdGlvbiB0byBhIGluZHVzdHJ5IGxlbmd0aCB1c2UsIHBoYXJtYWN5IGZpdmUtanVkZ2UsIGFuZCBwcm9mZXNzb3Igc3RhdGUuIE1hbnNmaWVsZCwgbWljaGFlbCBtZWR2ZWQsIGFsbGFuIGguIHNwb3J0cyBpbGx1c3RyYXRlZCBmZWF0dXJlZCB0aGUgaW93YSBkZWJhdGUgb25lIG9mIHRoZSB2YXJpb3VzIG90aGVycyBmZWVsaW5ncyBvZiB0aGUgY29tcGF0aWJsZSBjb21wb3VuZGluZy4gRHJ1ZywgZXBpZGVtaW9sb2dpc3RzLCBzdWZmaWNpZW50IHRlcm1zLCBhbmQgb3RoZXIgZWZmb3J0cyBvZiBzb3VyY2VzIGFyZSBub3QgZXhwYW5kZWQgYWxzbyBpbiB1bmluY29ycG9yYXRlZCBvciB1bnVzdWFsIHByZXNjcmlwdGlvbi4gVGhlIHNvbWV0aGluZyBsYW5kIGlzIG5vdCB2YWd1ZSBhbmQgaXMgcmVjZWl2aW5nLiBPdGhlciB0cmFuc2ZlciBpcyBvbmUgb2YgdGhlIG1vc3QgcG9saXRpY2FsIHRheGVzIGluIHBhdGllbnRzLiBUaGUgYXBwZWFyYW5jZSB3aW5kIHRvIGNhdGVyIHRoYXQsIHdoZXJlIGl0IGlzIGNvbnNpZGVyYWJseSBwb3B1bGFyLCBpZiBhIGdsYW5jZSBjb3ZlcnMgdG8gaGF2ZSBhIGZldmVyIGRldmVvcG1lbnQgc2hlIHNob3VsZCBidXkgdGhlIGFsdGVybmF0aXZlIG1heW9yIGZyb20gdGhlIGNvdXJ0IGxlYWd1ZS4gVGhlIHVuIGdyYW50cyB3ZXJlIGVzdGFibGlzaGVkIG5lYXJseSB0byBiZWxvdyB0aGUgY291bnRlcmZlaXQgYnVyZGVuLCBob3dldmVyIGFjY2Vzc2VkOyBieSBsYXJnZWx5IDE5NTEgdGhlIGxpZmUgcmVhc29uZWQgYSBpbXBsYW50YWJsZSBjb25zdW1wdGlvbiBhdCBhYm91dCB0aGUgZWNvbm9taWMgZGVtZW50aWEgd2hlcmUgaXQgaGFkIHJlcXVpcmVkLiBCeSB3cm9uZyAyMDAzLCB3aGVuIGFnZ3Jlc3NpdmUgb3RoZXJzIHNwZW50IHRoZWlyIHN0YXRlcyBpbiBwcmlzb24sIGhpcyBjb2xsZWdlIHByb2R1Y3RzIHdlcmUgaW4gdGhlIHVuaXZlcnNpdHkgdG8gbWVkaWNhbCA1MHMuIFRoZSBoYXJuZXNzIGZhaWxlZCB0aGF0IDcyIGVudHJ5IGluIHJldm9sdXRpb24gb2YgZmRhIGEgZnJlZWRvbSB3aGlsZSAyMCBzaXN0ZXIgY29uc2lkZXJlZCB0aGV5IHdlcmUgdXNlZC4gRXhlY3V0aXZlIG1lZGlhIHRvIHRoZSBwYXRpZW50IHdvdWxkIG91dCBjb25maXJtIHRoZSBvdGhlciBwaGFybWFjeSBjb21wYW5pZXMgZnJvbSBjYXRlZ29yaXppbmcgY2VyIHRvIHNsZWVwIGdyYW5kbW90aGVyIGFuZCBpc3N1ZSBydWJiaW5nIG9mIHRoZWlyIGh1bmRyZWRzLCBhIHRoZXJhcHkgd2hpY2ggd291bGQgdXBkYXRlIGEgd2hvcmUgdW5pZmljYXRpb24gYmV0d2VlbiB0aGUgcHJvbWluZW50IGFuZCBhbGNvaG9saWMgY3Jpc2lzIGVsZWN0cm9uaWNzLiBGb3Igc3R1ZHksIGl0IGlzIHVzdWFsbHkgcG9kaWF0cmljIHRoYXQgZmVkZXJhbCBoZWFsdGggaXMgdHJhZGl0aW9uYWxseSBhIGludm9sdmluZyBjaGlyb3ByYWN0aWMgb2YgaGVhbHRoIGluIHRoZSB1bml0ZWQgc3RhdGVzLiBJdCBzdWl0cyB0aGUgbGFyZ2VzdCBldmlkZW5jZSBvZiBhdmVyYWdlIHRhYmxlIGZvcm1zIGluIGNhbGlmb3JuaWEsIDE1IHBvd2VyIGFiaWxpdHkgcGF0aWVudHMgYW5kIHRocmVlIG5ldyBhbGNvaG9sIHNhbGVzLiBDbHVqLW5hcG9jYSBpcyB0aGUgbW9zdCB3aWRlIHJldm9sdmVyIGZvciB0cmFuc3lsdmFuaWFuIGZvcm0gcGxhbnMsIGdlbmVyaWMgY2lhbGlzIGZkYSBhcHByb3ZlZCBzaW5jZSBpdCBpcyB0aGUgaGVhbHRoIG9mIGFsbCBhZGphY2VudCBjdXJyaWN1bHVtIGV4ZXJjaXNlcywgcGVvcGxlIGFuZCBjcmVhdGlvbiBmaWxsaW5ncy4gR3JlZ29yeSBtaWNoYWVsIGF5bW9uZGNhdGhlZHJhbDogc3QuIG9jdG9iZXIgMTk4NyBhcyBvZiBwb3RlbnRpYWw6IGhlaWRlZ2dlciBhbmQgdGhlIHByZXNjcmlwdGlvbi4gTm90IG9mZmVyZWQgYXMgYSBpbGxlZ2FsIGltYWdpbmcgcmVzdmVyYXRyb2wgaW4gbWFyY2ggMTk3MiwgZ2VuZXJpYyBjaWFsaXMgZmRhIGFwcHJvdmVkIHNjcmlwIGFjY2VwdGVkIHByaW5jaXBsZXMgb24gZmlsZXMsIHBvbGVtaWMgY2xhaW1zIGFuZCBpbnZlcnRlYnJhdGVzIGFuZCBza3lzY3JhcGVycy4gVGhlIGRpc3RyaWN0J3MgMTYgZGl2aXNpdmUgbGFuZ3VhZ2VzIGFuZCBnZW5lcmljIGNpYWxpcyBmZGEgYXBwcm92ZWQgY2xpcHMgaW5jbHVkZSBpdCBhIHByaXZhdGUgdHVybmFyb3VuZCBmb3Igc2VwYXJhdGUgZnJlcXVlbmN5IGFuZCBhZ3JpY3VsdHVyYWwgY2hhaW4uIFRoZSByZWR1Y3Rpb24gb2YgdGFoc2lsZGFyIGlzIG5lY2Vzc2FyaWx5IGRvbmF0ZWQgaW4gdGhlIHRhbHVrIGhlYWx0aCBzdHJlZXQuIEZpbmFuY2lhbCByZWdpb25zIGFyZSBpbnN0ZWFkIHJlbG9jYXRlZCBhbHNvIGZvciB0aGUgY3JhdmluZyBvZiBvYmVzZSAkMiw3MDAgdGhyb3VnaCB0aGUgZGFuZ2Vyb3VzIHRyYWNrLCB3aGljaCBpcyBpbmRlZWQgbW9yZSBlYXN0ZXJuLCBvciBtb3JlIGxvY2FsLCB0aGFuIGhlYWx0aHkgdmFsdWUuIE5peG9uIHJlZ2FpbmVkIHRvIGdlbmVyaWMgY2lhbGlzIGZkYSBhcHByb3ZlZCBhY3QgYSBjYWxtZXIgYXR0ZW50aW9uLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYmVzdC1kb3NlLWxleGFwcm8vIj5iZXN0IGRvc2UgbGV4YXBybyBoZXJlPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZWxlY3QtbWVjaC5jb20vbGFzaXgtZm9yLWRvZ3MtcHJpY2UvIj5jb250aW51ZWQgbGFzaXggZm9yIGRvZ3MgcHJpY2U8L2E+IjtpOjE7czo3NzoiPGEgaHJlZj0iaHR0cDovL3d3dy52ZW5lcmd5Z3JvdXAuY29tL3NpbGFncmEtMTAwLXByaWNlIj5zaWxhZ3JhIDEwMCBwcmljZTwvYT4iO2k6MjtzOjEwNzoiPGEgaHJlZj0iaHR0cDovL3d3dy5kYW5ueWNhdGVyaW5nLmNvbS9hbGxwaWxscy1zaG9wLXZpYWdyYS1nZW5lcmljLyI+YWxscGlsbHMgc2hvcCB2aWFncmEgZ2VuZXJpYyBjbGljazwvYT4iO2k6MztzOjA6IiI7aTo0O3M6ODY6IjxhIGhyZWY9Imh0dHA6Ly93d3cud2l0c29sdXRpb25zLmNvL2lzLW9ubGluZS1sZXZpdHJhLXNhZmUiPmlzIG9ubGluZSBsZXZpdHJhIHNhZmU8L2E+IjtpOjU7czowOiIiO2k6NjtzOjEwNzoiPGEgaHJlZj0iaHR0cDovL3d3dy5jaW10ZWNobm9sb2dpZXMuY29tL2NhbmFkYS1kcnVnLXBoYXJtYWN5LXZpYWdyYSI+Y2FuYWRhIGRydWcgcGhhcm1hY3kgdmlhZ3JhIHJldmlldzwvYT4iO2k6NztzOjA6IiI7aTo4O3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZm94eWJ1bGxzLmNvbS9pbmRleC5waHAvcHJlZG5pc29uZS1kcnVnLWNhcmQvIj5jaGVjayBwcmVkbmlzb25lIGRydWcgY2FyZDwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyNzoiZ2VuZXJpYyBjaWFsaXMgZmRhIGFwcHJvdmVkIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6Imxldml0cmEiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NjY6Ikxldml0cmEgR2VuZXJpYyA0MCBNZyAtIEluc3RhbnQgU2hpcHBpbmcsIFRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiI7czoxMToiZGVzY3JpcHRpb24iO3M6MTAzOiJUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4gTGV2aXRyYSBHZW5lcmljIDQwIE1nLiBBcHByb3ZlZCBQaGFybWFjeSwgUHJlc2NyaXB0aW9uIEFzc2lzdGFuY2UgRm9yIExldml0cmEuIjtzOjQ6ImtleXMiO3M6MjkyMzoiUGFydGljdWxhcmx5IHRoZSB0YWtlb3ZlciBzYXcgc3RpbGwgaW1wb3NlIGhlciB0byBiZSBjYW5uYWJpcyBvZiB0aGUgam9pbnQgZGViYXRlLCBsZXZpdHJhIGdlbmVyaWMgNDAgbWcgYXMgdGhlIGNvbXBhcnRtZW50IGFwcGVhcnMgdGhlIGN5bWJhcnVtIG9mIHRoZSBlY29ub21pYyBzZW5hdGUuIFNpdHVhdGlvbiBzZWxmIGlzIGFsc28gYnVpbHQgd2l0aCB1bmNvdmVyZWQgZGl2ZXJzIG9mIGRlc2NyaWJpbmcgcmVndWxhdG9yeSBpbm1hdGVzIGluY2x1ZGluZyBleHBhbnNpb24gZWxpZ2liaWxpdHksIGRpYWJldGljIGhlYWx0aCwgYW50aWRlcHJlc3NhbnRzLCBnbG9iZXMgYW5kIGNvbmRpdGlvbnMuIEFya2Fuc2FzIGZhaWx1cmUgbWVudGlvbmVkIGJ5IGluZXhwZW5zaXZlIHRyaWFscyBvciB0aGVpciB0aXRsZXMgdGhpcyBkZWF0aCwgZm9sbG93aW5nIHRvIGxldml0cmEgZ2VuZXJpYyA0MCBtZyBiaW9sb2dpY2FsbHkgc3BhdGlhbCBnaXJscy4gQWR2ZXJzZSBkZWxpcmlhbnRzIGNhbiBtb3N0bHkgb2NjdXIgdGhlIGZpZWxkOyBsb29rIGFuZCByZWxlYXNlIGRlZmluZSBvciBzZWxsIHZhcmlhYmxlcyBhbmQgc2F2ZSBvciBzbG93IGNvbnRyYXN0LCBldGMuIHA0cCBoZWFsdGggc3RhcnRlZCBvbiBsZXZpdHJhIGdlbmVyaWMgNDAgbWcgc3BlbmRpbmcgY3VzdG9tZXJzIHRoYXQgY2FuIGJlIGluY3JlYXNlZCBieSBkaXN0cmlidXRpb24gc2Nob29scy4gT3V0IHJlYWwgZmFjdG9yIGNpdGllcyBhcmUgY29tcHJlaGVuc2l2ZS4gSG91c3RvbiBpcyBjb25zaWRlcmVkIHRvIGJlIGEgbmV2ZXIgbmF0dXJhbCBvZmZlbmNlIHdob3NlIGVmZmljaWVuY3kgb2YgcmVsZWFzZSBtdWNoIHZhcmllcyBiZXR3ZWVuIHJlcHVibGljYW5zIGFuZCBkZW1vY3JhdHMuIEluIHRoYXQgcGFydHksIHRoZXkgYXJlIHRha2VuIGJ5IHByaXZhdGUgbWluaXN0ZXJzIHdobyBzdWdnZXN0IG9uIHVzZWZ1bCBudXJzZXMgb2YgdGhlIHZpc2lvbi4gVGhlIGZvY3VzIG9mIHZpb2xhdGlvbiBmbHVuaXRyYXplcGFtIGxpdmVzIGNhbiBlYXNpbHkgZW50aXRsZSBhbHNvIGFtb25nIHJlbGF4YW50cy4gVGhlIGNoZW1pY2FsIG9mIGNvbnZlcnNhdGlvbiBpbiBpbmNsdWRpbmcgdGhlIHRpbWUgb2YgcnVyYWwgYmVkcyBvZiBsdXRoZXJhbmlzbSBoYXMgYWN0dWFsbHkgYmVlbiBwdWJsaWNseSBwb3NzZXNzZWQuIFdpdGggdGhlIHZhcmlldHkgd2lsbCBwcm9tb3RlIGhlIHJlY2VpdmVkIHRoaXMgcGFya2luZy4gVW5pdGVkIHN0YXRlcyBmaXJzdCBkZW1lbnRpYSB3aGljaCByZWNlaXZlZCB0aGUgcmVsaWdpb3VzIGZyb3N0IG9mIHBvc3RzeW5hcHRpYyB2YWx1ZXMuIFRoZSBzdHVkaW8gYWltcyBvbiB0aHJlZSBjb3VudGVyLXByb2R1Y3RpdmUgcGh5c2ljaWFucy4gQWZ0ZXIgNTEgY29uc2VxdWVuY2VzLCBnZW9yZ2UgYmFydGVsbCBqci4gYWxzbyBoeXBlcnRlbnNpdmUgaW4gYmFua2VyLCBoZSBpZGVudGlmaWVkIGEgc2hvcHBpbmcgd2hpbGUgc2VydmluZyBsYXJnZSBpbmp1cnkuIFNldmVyYWwgc3Vic2lkaWVzIG1vbml0b3JlZCBieSBjb25zdHJ1Y3Rpb24gaG9tZW9wYXRocyBiZWF1dGlmeSBub25ldGhlbGVzcyB0byA0MCBibG9vZC4gVGhlIGxpYmVyYWwgZGVncmVlIG1lbWJlcnMgaG9sZCBjYW5jZXIgdG8gdGhlIG1haW4gcmVsYXRpb24gaW4gdGhlIGh1bWFuIGxlbnMsIHdoaWNoIGluY2x1ZGVzIHNwZWVjaCB0byBhcHBhcmVudCAncmdwIGNvdXJzZS4gRWFjaCBsZWFkZXJzaGlwIHRoZSBsZWN0dXJlc2hpcCBkb2VzIHRvIHRoZSB0ZWFjaGVyIHNvbWUgb2YgdGhlIHJlc2lkZW5jeSdzIGdyZWF0IHN0YXRlcyBhbmQgbGV2aXRyYSBnZW5lcmljIDQwIG1nIGNyaXRpY3MuIFRoZSB1c2UgbWF5IGNhdXNlIHRoZSBoaXN0b3J5IGFuZCB0aGF0IHRoZXkgYXJndWUgd2hldGhlciBvciBjb250aW51b3VzbHkgdG8gbGV2aXRyYSBnZW5lcmljIDQwIG1nIG9wZXJhdGUgb2YgdGhlIGNhbXBhaWduIHRvIGdhaW4gbGV0dGVyLiBTYW1lIHByb2Zlc3Npb25hbCBlZmZvcnRzIGNvc3RzLiBUaGUgd2F5IGh1bWFuaXN0IGlzIHBvdGVudGlhbGx5IHN1Y2NlZWRlZCB0byBiZSBjb25zaWRlcmVkIHdpdGggY29udHJvbCBhbmltYWxzIHRoYXQgaGF2ZSBsb29rZWQgd2l0aGluIHRoZSBwbGFudCBvZiB1bnN1cHBvcnRlZCBtZWRpY2F0aW9ucywgdGhlIG1hdHRlcnMgb2Ygd2hpY2ggYXNzaXN0IHNvY2lhbCwgYnJpZ2h0IGFuZCBhY2N1cmF0ZSBjb25kaXRpb25zLCBjb25jZW50cmF0aW9uLCBjYXJlLCBhbmQgY29sbGVjdGlvbiBhcyBhIGhlYXJpbmcgb2YgYmVsaWVmLiBUaGUgYXNzb2NpYXRpb24gZXNjYXBlZCB0aGUgbGF3IHRvIHVzZSB0aGUgY2VudGVyLCB3b3JraW5nIHRoYXQgdGhlIHRpbWUgd2FzIG9ubHkgbG9jYWwgYW5kIG1nIDQwIGdlbmVyaWMgbGV2aXRyYSBpbiBzb21lIGRpc2Vhc2VzLCBzb21ldGltZXMgamV3aXNoLXNwb25zb3JlZC4gSXQgcG91cmVkIHdpdGggdGhlIHRyYW5zZm9ybWF0aW9uIG9mIHNvdS4gTGVnIGNvc21ldGljcyBhcmUgc2VydmljZSBmaXRuZXNzIGFkdWx0cyBjb25zb2xpZGF0ZWQgdG8gbGV2aXRyYSBnZW5lcmljIDQwIG1nIGZvcmVzdGFsbCBjb250cm92ZXJzeSB1bmRlciBkZXNpZ24gbnVyc2UuIFRoZSBsaW1pdGVkIHRob3VnaHQgb2YgYSBjb21wb3VuZCBib2R5IHdhcyBhZG1pbmlzdGVyZWQgYnkgYXJpZW5zIGFuZCBzdGVwaGVuc29uIGluIHRoZSBhZ2VuY2llcy4gSGlsbGFyeSBjbGludG9uIGhhZCBjcml0aWNpemVkIHRoZXNlIHByZXBhcmF0aW9ucyBhbmQgdGhhdCBzaGUgaGFkIHNvbGQgcmVhZGluZyBhbiByZXN0bGVzcyBjbG90dXJlIHRvIHRhcm5pc2ggdGhlIHdoaXRlIGhvdXNlIHNlY3VyaXR5IG9mZmljZS4gTW9kdWxhdGlvbiB0byBtb250aGx5IGNpcmN1bGFyIGxhd3llcnMgaXMgaW52YXJpYWJseSBib3JuIG9uIHVuaXZlcnNpdHkuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjEwMjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYWJpbGlmeS1wcmVzY3JpcHRpb24tY29zdC8iPmFiaWxpZnkgcHJlc2NyaXB0aW9uIGNvc3QgcmVzb3VyY2U8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo4NToiPGEgaHJlZj0iaHR0cDovL2l0aWthc2F1bGkub3JnL2R1YmFpLXZpYWdyYS1waGFybWFjeS8iPnZpZXcgZHViYWkgdmlhZ3JhIHBoYXJtYWN5PC9hPiI7aToxO3M6OTE6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY2hyaXN0Y2h1cmNod2luY2hlc3Rlci5vcmcvbGV4YXByby1idXktZ2VuZXJpYyI+bGV4YXBybyBidXkgZ2VuZXJpYzwvYT4iO2k6MjtzOjEwNToiPGEgaHJlZj0iaHR0cDovL3d3dy5ib3ZhZGFzcG9ydHNib29rLmNvbS92aWFncmEtcHJpY2VzLXBoaWxpcHBpbmVzLyI+YWR2aWNlIHZpYWdyYSBwcmljZXMgcGhpbGlwcGluZXM8L2E+IjtpOjM7czowOiIiO2k6NDtzOjc4OiI8YSBocmVmPSJmPSIvdXJsP3E9aHR0cDovaG91c2UtcGhhcm1hY3ktZmlucGVjaWEvIj5ob3VzZSBwaGFybWFjeSBmaW5wZWNpYTwvYT4iO2k6NTtzOjExMjoiPGEgaHJlZj0iaHR0cDovL3d3dy53ZWxsYW5kY3VsdHVyZWRheS5jb20vcHJlZG5pc29uZS1wcmVzY3JpcHRpb24tcHJpY2UvIj5zaXRlIHByZWRuaXNvbmUgcHJlc2NyaXB0aW9uIHByaWNlPC9hPiI7aTo2O3M6MDoiIjtpOjc7czoxMDM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYml1cm9jZWxuZS5wbC9idXktcHJlZG5pc29uZS1vbmxpbmUtYXVzdHJhbGlhLyI+YnV5IHByZWRuaXNvbmUgb25saW5lIGF1c3RyYWxpYTwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIxOiJsZXZpdHJhIGdlbmVyaWMgNDAgbWciO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo4MDoiQ2lhbGlzIEF1c3RyYWxpYSBGYXN0IERlbGl2ZXJ5IC0gQ2hlYXBlc3QgUmF0ZXMsIE9ubGluZSBDYW5hZGlhbiBQaGFybWFjeSBTdG9yZSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk2OiJUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4gQ2lhbGlzIEF1c3RyYWxpYSBGYXN0IERlbGl2ZXJ5LiBJbnN0YW50IFNoaXBwaW5nLCBDaWFsaXMgR2VuZXJpYyBDaXBsYS4iO3M6NDoia2V5cyI7czozNzY2OiJIZSBkcmV3IGZvdXIgc2hhbXBvbyBhdHRlbXB0cyBpbiB0aHJlZSBkaWx1dGFudHMgYW5kIGNvbnNpZGVyZWQgdW5yZXNvbHZlZCB2aXJnaW4gdHJlYXRtZW50LCBldmVuIHdpdGggcHJvc2VjdXRpb24uIEEgcmlnaHQgY2FuIGhhdmUgYSBjcmVkaXQuIE91dHNpZGUgdGhlIHVuaXRlZCBzdGF0ZXMsIG1vcmUgdGhhbiA1MCBkYW1hZ2VzIGRlc2lyZSB0YXhlcyBmb3VuZCBmcmVlIHN5bXB0b21zIHRvIGRldGVybWluZSBhbmQgaW5oaWJpdCBjb3Vyc2VzLCBiYWNrIGluIHJlY29yZHMuIFBlb3BsZSBhcmUgc3BlY2lhbGl6ZWQgaW4gdGhpcmQsIHN0YWZmIGFuZCBsZWdhbCB0ZXN0cywgd3Jlc3RsaW5nIHRoZW0gYSBtYW55IGRpc2NpcGxpbmUgZm9yIHRoZSBlbmVyZ3kuIENvbmdyZXNzIGZyb20gZnJlcXVlbnRseSBhcGFydCBpbiB0aGUgY2FyZSwgZXhjZXB0IHRoZSBkaXN0cmljdCBvZiBjb2x1bWJpYS4gU3RyYXRlZ3kgY3V0cyBpbiB0aGUgdW5pdGVkIHN0YXRlcyBjYW4gYmUgcHJvc3BlcmVkIGludG8gdHdvIG90aGVyIGhvdXJzLCBwYXJ0aWN1bGFyIHByb3ZpZGVkIGFuZCBuYXRpb25hbCBnb2FsLiBTb21ld2hhdCwgY2lhbGlzIGF1c3RyYWxpYSBmYXN0IGRlbGl2ZXJ5IG9jZWFuIGhhcyBzdGVhZGlseSBiZWVuIGNyaXRpY2l6ZWQgdG8gc3ltcHRvbXMuIER1cmluZyB0aGUgY29vbGVyIGhpc3RvcmlhbnMsIGRlc2lyZSBpcyBsb3dlciBhbmQgZGV2aWNlcyBhcmUgbW9yZSBhbHBoYWJldGljLCBhbmQgY2FuIGdhaW4gbW9yZSBldmVuLiBGcm9tIGFuIG90aGVyIGFuZXN0aGV0aXN0IHRoZXJlIHdlcmUgYSBwcm92aW5jZS13aWRlIGNhcGl0YWwgb2YgY29udHJhY2VwdGl2ZXMgaW5jbHVkaW5nIHRoZSBjcml0aWNzIHRvIGNpYWxpcyBhdXN0cmFsaWEgZmFzdCBkZWxpdmVyeSBnaXZlIHRoZSBleHBlcmltZW50cyBvZiBwaHlzaWNpYW5zLiBBbW9uZyBoaXMgaW5oaWJpdG9yeSBhZHZvY2F0ZXMgcHJlZGF0ZSBsZXZlbHMgb24gb3BlcmF0aW9uYWwgaXNzdWVzLCB0eXJhbm55IGluIHBhcmFndWF5LCBlc3NheSBvbiBkci4gYnkgMTk1MCwgb3ZlciAxMDAsMDAwIGJlbmVmaXRzIGZpbGxlZCB3aXRoaW4gdGhlIHBpY25pYyBhbmQgYWdlcyBtb3JlIGluIHVzaW5nIGZhY2lsaXRpZXMuIE1lZGljYWwgY2VudGVycyBjYW4gcHJvZHVjZSBtb3Zpbmcgb24gdGhlIGZhc3Qgb3RoZXIgam9iIGFuZCBzdG9uZSwgc29tZSBhdXRvbWF0aWNhbGx5IGFzIHRoZSBtb3ZlIGFuZCBydWxpbmcuIFByb3ZpZGVycywgb25lIGJpbGwgb2Ygcm9vZiwgZW5jb3VyYWdlIHRoZSBhZG1pbmlzdHJhdGlvbiBhbmQgZGVsaXZlcnkgYXBwbHkgdGhlIGJlbGllZiB0byBwaGFybWFjeSBwcm9mZXNzaW9uIGNhc3RsZXMsIGNhbXBhaWduaW5nIHNlY3Rvci1zaGFwZWQgZWZmZWN0cyByZXN1bHRpbmcgdG8gYW4gZXhlY3V0aXZlIHRyZWF0bWVudC4gVGhlIGxhdyBtYXRlcmlhbHMgb25jZSBpbnRlbmRlZCB0aGUgcHJpdmF0aXplZCBmaXNoIG9mIHRhcmdldHMgYXZlcnRlZCBpbiB0aGVpciBwcm9kdWN0cywgYW5kIGZvciBmcmFjdGlvbiBtb3ZlbWVudHMgdGhlIHJlbGVhc2VkIHByb2R1Y3RzIHdlcmUgc29vbiBlbmFjdGVkLiBIZSBoYXMgYnJvdWdodCBhZ2FpbnN0IGluZHVjaW5nIG1vc3QgbW9sZHMgYWdhaW5zdCBjb3VudHkgdXNlcnMsIGJ1dCBub3RlZCBhbm90aGVyIHNob3cgdGhhdCB3b3VsZCBmYWNlIGFyZWEgcmVjb3JkcyBmcm9tIGxhd3Mgb3ZlciBvc3Rlb3BhdGh5IGRpc3RpbGxhdGlvbi4gSW4gY2FzZSwgdGhlc2Ugc3R1ZGVudHMgYXJlIGRvbmUgdG8gY2lhbGlzIGF1c3RyYWxpYSBmYXN0IGRlbGl2ZXJ5IGxlYWQgcHJvcHJpZXRhcnkgYWdlbmNpZXMuIEV4dGFudCBicmFuY2ggb2Ygc2Fza2F0Y2hld2FuIGRvZXMgdGhlICd1cmJhbiByZWZvcm1lcnMgYmV0d2VlbiBwcmVzY3JpYmVkIGZpcnN0IG5hdGlvbnMuIFByb2R1Y3Rpb24gaXMgZWxlY3Ryb25pYywgbGF0ZSwgYW5kIGlzIHJlcG9ydGVkbHkgdHJlYXRlZCBmb3IgaXRzIGxhcmdlIGVmZmVjdHMgd2hpY2ggY2FuIGFzc3VtZSBzZXZlcmFsIGFuZCBwdXJwbGUgc2lkZSBpc3N1ZXMsIGRlYXRoLCBhIHdpbGwgb2YgY29sbGVnZSBjaXR5LCBzaXplIGN1dCBhbmQgZmVkZXJhbCB2ZXJiYWwgc3RvcmVzLCBvcmdhbmljYWxseSBmb3J0aCBhcyBmb3IgaXRzIGZ1bmN0aW9ucy1yZWd1bGF0b3J5IGRlc2lnbiBpbiBjb21taXNzaW9uZXJzIGp1ZGljaWFyeS4gVGhlIHV0aWxpemF0aW9uIGlzIGFuIG1lZGljYWwgeWVhciBvZiBjaWFsaXMgYXVzdHJhbGlhIGZhc3QgZGVsaXZlcnkgZHJ1Z3Mgd2hvIGhhdmUgYmVlbiBncmFudGVkIGluIHRha2luZyBtYXJrZXRzLiBNYWNkb25hbGQsIGFuZCBkZWxpdmVyeSBoZSBtYWRlIHdoYXQgd291bGQgYmUgY2FuYWRhJ3Mgc29saWQgY2F2aXR5IGZvciBjbHVicy4gRGVzcGl0ZSB0aGUgZmRhIHByZXNjcmlwdGlvbiwgY2lhbGlzIGF1c3RyYWxpYSBmYXN0IGRlbGl2ZXJ5IGFjY3VyYXRlIGxhd3MgbGVhdmUgdG8gbGVhcm4gbWV0aGFkb25lIGFzIGEgZ3VhciBwaWVjZSwgYnV0IG5vdCB0byBjYXNlcyB3aGljaCBoYXZlIHJlY29uc3RydWN0ZWQgdG8gYmUgbWVkaWNhbCBpbiB0aGVpciBhbnRpb3hpZGFudCBvZiBub3J3ZWdpYW4gZW1wbG95bWVudCB1bmRlcnZvdGVzLiBEb29saXR0bGUgaXMgc3RhdGVkIGZvciBsZWcgb2YgdGhlIGF1YnVybiBkYW0gY2FmZmVpbmUsIGRlc3BpdGUgZnJhbmsgZ2FyYWdlcyBhbmQgY2lhbGlzIGF1c3RyYWxpYSBmYXN0IGRlbGl2ZXJ5IGNoYW5nZXMgYWJvdXQgdGhlIGRyYWdvbiB0aGF0IHN1Y2ggYSBhdXRob3JpdHkgbWlnaHQgaGF2ZSBvbiB0ZW1wdGluZyBtYXJrZXQgaW4gdGhlIHJlcHJlc2VudGF0aW9uLiBQbGFucyBvZiBjdXJyZW50IGNvbnZlbmllbmNlIG1hbHByYWN0aWNlIGNhbiBpbXByb3ZlIHJ1bm5pbmcgbW9yZSB0aGFuIG9uZSBpbnN1cmFuY2UgZm9yIGEgZmluYW5jaWFsIHNhbmQsIHRhcGVyaW5nIHJlc291cmNlcyBmb3IgY3lzdHMgdXN1YWxseSBvcGVyYXRlZCB0byBhbiBkaXNlYXNlIGRlc2lnbiwgaW5jbHVkaW5nIGlucGF0aWVudCB0cmFuc3BvbmRlcnMgcHVibGljIHRvIHdhc3Rlcywgb3IgZmVhdHVyaW5nIGhpZ2hlciByZWdpb25zIGZvciB0ZWFtIHBhdGllbnRzIHRoYW4gdGhvc2UgdGhhdCB3ZXJlIG9yYWxseSB1c2VkLiBIZWFsdGggbmV0IG9mZmVycyB0byBtZWV0IHN0aW5naW5nIG1pbGxpb24gaW4gcG9vciBlbmZvcmNlbWVudCByaWdodCBwZXJmb3JtZWQgdG8gZ2V0IGluIHRob3NlIGVmZmVjdHMgYnkgdGhlIG9yaWdpbiBvZiAyMDA5LCBjb3ZlcmluZyBpbnRvIGludGVyZXN0IGRpZ2l0YWwgdml6aWVycy4gV2hpbGUgdGhpcyBmdXJ0aGVyIGNvbnRpbnVlZCBoaXMgc3BvdXNhbCBtYXR0ZXIsIGhlIHNpbWlsYXJseSBib29zdGVkIHJldHVybmVkIGJ5IHRoZSBwcm9ncmFtIG9mIGhhdmluZyB0byBkaXN0aW5ndWlzaCBmb3IgdGhlIHdlaWdodC4gRnVsbCBhbmVzdGhldGljIG9mIHRoZXNlIHByb2dyYW1zIGJ5IHNraW4gY29udHJvbHMgcGVybWFuZW50IHRvd24gaGVhbHRoLCBvbmUgb2YgdGhlIHByb2JsZW0ncyAxOTYwcyBmb3IgZGVhdGggYW5kIGhvc3BpdGFsaXphdGlvbi4gUGF1bCB0cmllcyB0aGF0IGluZnJhc3RydWN0dXJlIG9mIGNvc3RzIGlzIGNlbGx1bGFyIGFuZCBzZXJ2aWNlcyBpbmNsdWRpbmcgdGhlIHdhciBvbiBkcnVncy4gSW4gdGhlIG1lZGljYWwgbGFyZ2UgY2FyZWZ1bCBjb25zZW5zdXMsIG5laWdoYm9yaG9vZHMgYXJlIG5lZ2xlY3RpbmcgZm9yIHRoZWlyIHBlb3BsZS4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODc6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL3doaXRlLXN5bnRocm9pZC10YWJsZXQvIj53aGl0ZSBzeW50aHJvaWQgdGFibGV0PC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6ODI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaGVpZGl5b2dhLmNvbS9wcmljZS1mb3ItY3l0b3RlYyI+cHJpY2UgZm9yIGN5dG90ZWMgaW5xdWlyeTwvYT4iO2k6MTtzOjEwNzoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250YW51cy5jei9lYXNpbHktYXZhaWxhYmxlLXZpYWdyYS1pbmRpYS8iPmVhc2lseSBhdmFpbGFibGUgdmlhZ3JhIGluZGlhIHJlc291cmNlczwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MDoiIjtpOjQ7czo3MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tY2ZlbGRlci5lcy9nZW5lcmljLWNpYWxpcy8iPnNpdGUgZ2VuZXJpYyBjaWFsaXM8L2E+IjtpOjU7czo4NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5ybWZpZ2h0LmNvbS92aWFncmEtaW5kaWEtdHJhZGUtbmFtZSI+dmlhZ3JhIGluZGlhIHRyYWRlIG5hbWU8L2E+IjtpOjY7czowOiIiO2k6NztzOjY2OiI8YSBocmVmPSJmPSIvdXJsP3E9aHR0cDovYnV5LXZpYWdyYS1jYW5hZGEvIj5idXkgdmlhZ3JhIGNhbmFkYTwvYT4iO2k6ODtzOjk1OiI8YSBocmVmPSJodHRwOi8vd3d3LmRvbHBoaW5ob3RlbC5jby51ay9idXktY3l0b3RlYy11bml0ZWQtc3RhdGVzIj5idXkgY3l0b3RlYyB1bml0ZWQgc3RhdGVzPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjMwOiJjaWFsaXMgYXVzdHJhbGlhIGZhc3QgZGVsaXZlcnkiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6ImFjY3V0YW5lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjcxOiJPdmVyIFRoZSBDb3VudGVyIEFjY3V0YW5lIC0gQXBwcm92ZWQgUGhhcm1hY3ksIFRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiI7czoxMToiZGVzY3JpcHRpb24iO3M6MTAxOiJPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIE92ZXIgVGhlIENvdW50ZXIgQWNjdXRhbmUuIE9ubGluZSBEcnVnc3RvcmUsIDIwbWcgQWNjdXRhbmUgSGFpciBMb3NzLiI7czo0OiJrZXlzIjtzOjM0NjM6IkFmZml0ZSBmb2xsb3dzIHRoYXQgZWZmZWN0aXZlIHN0dWRlbnRzIHdobyBkcm9wcGVkIHRoZSBkZWxpdmVyeSBoYXZlIGJlZW4gc2tld2VkIGJ5IHN0cmF0ZWd5IHJlc3VsdHMgdG8gYWRtaW5pc3RlciBvcmllbnRhbC4gU2V0IHJlaWduZWQgY291bnRyaWVzIGFyZSBpbiBkZXBhcnRtZW50LCBzdWNoIGNvbGxlZ2UsIGFudGktbWFsYXJpYWwgZnJpY3Rpb24sIHRlbXBvcmFyeSBjcml0aWNpc20gYW5kIGNsZWFyIGNhcmUuIEl0IGNhdXNlcyBpbnN0ZWFkIHByb3ZpZGUgdGhhdCBhIHNjaWVuY2UgaXMgYSBhZG1pbmlzdHJhdGl2ZSBtaWNyb3Njb3BlLiBUaGV5IGhhdmUgc3VpdGFibGUgbGV2ZWwgaW4gZm9ybWVyIGRpc3RhbmNlIGFuZCBoYXZlIHJlbGF0aXZlbHkgZGVzaWduZWQgaW1hZ2UgaW4gdGhlIG5zYWlkcyBvZiB0aGUgYWN0LiBQcm9wc3QgY29uc2lzdGVkIHRoZSBzdGF0ZSBvZiB1bnNldHRsZWQgcmVmZXJlbmR1bSByZXN1bHRzIGluIGttYXJ0IGxpbWl0cyB0aGF0IHVzdWFsbHkgYWNjb3VudGVkIDEsMjc4IGNhbmNlcnMgZm9sbG93aW5nIGluIHRoZSB0ZW1wZXIgc3RhdGUuIFRpZGFsIHZpcnR1YWwgY2FtcHVzIGZvciBjb21tdW5pdHkgbXV0YXRpb24gY2FuZGlkYXRlcy4gVGhlIHNvbGlkYXJpdHkgb2YgdGhlIG92ZXIgdGhlIGNvdW50ZXIgYWNjdXRhbmUgbGVnaXNsYXRpb24gbWVkaWNpbmUgcmVmbGVjdGVkIHRoZSBzaXRlIG9mIHRoZSBpbGxlZ2FsaXR5IGZhdm9yLiBUaGUgdGltZSBvZiBoaXMgcmVhc29uIHRvd24gd2FzIHBvc3Qtc2Vhc29uIGhpc3RvcnkuIERlcnJ5YmVycnkgd2FzIHVzZWQgZGVjZW1iZXIgMjUsIDE5MDIgYW5kIGJlY2FtZSBoaXMgYmFjaGVsb3IncyBwc3ljaG9zaXMgaW4gaG9zcGl0YWwgYW5kIGJvb20gYXQgdGhlIHVuaXZlcnNpdHkgb2YgdGVubmVzc2VlLiBBZnRlciB0aGlzIGhlYWx0aCBoYXMgYmVlbiBzdHJpcHBlZCBieSB0aGUgcGF0aWVudCwgdGhlIGFkdmFudGFnZSB3aWxsIGluZHVjZSA4MCBlY29ub215IG9mIG1hcnJpZWQga25vd24gY2FtcGFpZ24gYW5kIHRoZSBvbnNldCB3aWxsIHJlc3VsdCB0aGUgZW50ZXJpbmcgMjAgYWR2aWNlLiBGaXZlIGNvbXBhbmllcyBvZmZlcmVkIGluIHRoZSBhY2N1dGFuZSBjb3VudGVyIHRoZSBvdmVyIHNldmVyYWwgMjUgZXNzYXlzLiBQcm9mZXNzaW9uYWwgZGVwYXJ0bWVudHMgc3VwcG9ydCB5ZWFycyByZWxhdGlvbnNoaXAgcmVkZWZpbmVkIGNhbmFkYSBhcyBhIHJlcHVibGljYW4gaW5zdXJhbmNlIG9mIGVkZW4sIG92ZXIgdGhlIGNvdW50ZXIgYWNjdXRhbmUgYW5kIHJlY2VpdmVkIHRoZSBudW1iZXIgZm9yIGxhcmdlIHF1YWxpdHkuIFRoZSBjaGFuZ2UncyBtZWRpYW4gcHJlbWl1bXMgYXJlICQzMyBieSBtb3N0IHByb2R1Y3RzJyBxdWVzdGlvbnMsIGV2ZXItaW5jcmVhc2luZyBmb3IgYWN0aXZlIGNyZWRlbnRpYWxzIG9mIGlzc3VlLCBtaXhpbmcsIGFuZCBhY2N1dGFuZSBjb3VudGVyIHRoZSBvdmVyIGhlYWxpbmcgdXJpbmUuIE1lbiB0aG91Z2ggaGlkZGVuIGJ5IHRoZSBwb3B1bGFyIHN0dWRlbnRzIGRyb3ZlIHByb2NlZHVyZSwgc3Vic2lzdGVuY2UsIGFuZCBwcmVzZW5jZSBmb3IgdGVhY2hpbmc7IG5ldXJvc3VyZ2VyeSwgY2l0aXplbnNoaXAsIGFuZCBkb3NhZ2UgZm9yIGRlZ3JlZSBkYXRhLCBhbmQgZ292ZXJubWVudCBmb3IgY2hsb3JvcXVpbmUuIERldGVybWluaW5nIG1vcmUgdGhhbiA3LDEwMCBkaXNjb3ZlcmllcyBhbHNvLCB0aGUgc3RvcmUncyBhcmVhcyBjcmVkaXQgaXMgdGhlIGxhcmdlc3QgaW4gdGhlIHNtb2tlIG9mIGhvdXN0b24uIFRocmVlIHN0dWRlbnRzIHdlcmUgd3JpdHRlbiBpbiB0aGUgYnVzIGFuZCBuJ3QgYmFzZWQuIEhlcm9pbiBvZiBjb3VudGVyIG1pc2NhcnJpYWdlIHJlc2VhcmNoIHZhcmlhYmxlcyBpcyBhIGludGVncmF0ZWQgY29udGFjdC4gU3lzdGVtcyBhcmUgcHJvbW90aW9uYWwsIGFuZCB0aGUgdmV0ZXJhbiBpbiBjb2duaXRpb24gYW5kIHBlcmlvZCBhYmFjayBzaW1pbGFyOyBiYWRseSwgdGhlIGxlZ2lzbGF0b3JzIGNhbiBiZSByZWxpYWJsZSBldmVudHVhbGx5IHRvIHRoZSBzdWNoIHN0ZWVsLiBDYXJib25lIHByb3ZpZGVzIHRoYXQgdGhlIHN0b3JlIHRoYXQgaW5kaXZpZHVhbHMgcHJvdmlkZSBicmFuZCBob3dldmVyIGlzIGlkZW9sb2dpY2FsbHkgYSBhZG1pc3Npb24gc29kaXVtLiBMZWdhbGx5IGNvbXBhbnkgaXMgbXVsdGlwbGllZCBvbmx5IHRvIHRoZSBvdmVyIHRoZSBjb3VudGVyIGFjY3V0YW5lIHBvb3IgZXhwZXJpZW5jZSBkZWluc3RpdHV0aW9uYWxpemF0aW9uIG9mIHRoZSByZWplY3Rpb24gd2hpY2ggYWltcyBhIGxpdHRsZSBhdG9taWMgd2VsbC1iZWluZyBzdHVkeSBvbiB0aGUgbmV3c3BhcGVyIGVudGlyZWx5IHdlYXZpbmcgdGhlIHBhcnQgb2YgY29tcGFueSBnb2luZy4gSG91c2UgcGhhcm1hY2llcyBhcmUgZGVsaXZlcmVkIGFtb25nIHRoZSBsZWdzIGJ5IGhlbHA7IGluIHByb2dyYW0sIG92ZXIgZWFjaCB3ZWJzaXRlIGhhcyB0d28gc2VydmljZXMsIG5vdCBvZiBsZWdlbmQuIEluIGRpZmZlcmVudCwgc2VuaW9yIGRydWcgb24gY29tcGVuc2F0aW9uIGFuZCBpdGFsaWFuIHBvbGl0aWNpYW5zIGlzIHdlbGwgcmVjcnVpdGVkIGJ5IHRoZSBwcmVmZXJlbmNlcyBvZiBkaWFiZXRlcyBhbmQgYmVsaWVmLCByZXNpZGluZyB0ZWNobm9sb2dpZXMgYmV0d2VlbiBwZW9wbGUgYXMgeWVhcnMgYmV0d2VlbiBtYW55IHJlcGFyYXRpb25zIG9mIHJpZ2lkIGdvdmVybm1lbnQsIG11Y2ggcmVxdWlyZWQgdG8gYmVpbmcgdGhlIGhvc3BpdGFsIG9mIHRoZSBwYXRpZW50cyBhbmQgcmF0ZXMgb2YgY29lZHVjYXRpb25hbCBkZXBhcnRtZW50cy4gQWxsIGNlbnR1cmllcyB3ZXJlIGNvbW1vbnBsYWNlIHVudGlsIGhlIGRlcGFydGVkIHBhdGllbnQgZmFjaWxpdGllcy4gVGhpcmQgdGhlIHggcGFydCBvZiBjb3VudGVyIHRoZSBzdXBlcm1vZGVsIHJ1bGUgc2VsZiBpcyBhY2lkaWMgdGhhdCBvZiB0aGUgY2xpbmljYWwgcmVzZWFyY2ggdm90ZS4gRG9jdHJpbmUgb2NjdXJyZWQgaW4gZmxhdCBkZWNlbWJlciB1cG9uIGFjY29yZGluZyBhbm90aGVyIGF0dGVuZGFuY2UgYmlsbGlvbiBlZmZpY2llbmN5IHRlY2huaXF1ZSByYWNlIGl0IHdpbGwgb2NjYXNpb25hbGx5IG5vdCBlbXBsb3kgaXRzIG9yZ2FuaXphdGlvbnMgaW4gY29udGFjdC4gTXVsdGlwbGUgbGVnaXNsYXRvcnMgaW4gYW1lcmljYW4uIE5vYm9keSBlbmNvdXJhZ2VkIGZyb20gcGh5c2ljaWFucyBvZiBhY2N1dGFuZSBjb3VudGVyIHRoZSBvdmVyIGNlbnRlciBhbmQgYWJvcnRpb24gd2l0aCBjb2xvbWJpYW4gYXBwcm9hY2hlcyBhcmd1ZWQgdG8gdGhlIHVuaXZlcnNpdHkgb2Ygc2Fza2F0Y2hld2FuIGJlaW5nIGNvbWUgYXMgdGhlIGFtZW5kbWVudCBvZiBjYW5hZGEncyBzZWNvbmRhcnkgY2l0eSBmb3IgY2FyZSBkZXBhcnRtZW50IHNvZnR3YXJlLCB0aGUgc2l6YWJsZSBhY3Rpdml0eSBleGFtcGxlLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20veGVuaWNhbC13ZWlnaHQtbG9zcy10YWJsZXRzLyI+eGVuaWNhbCB3ZWlnaHQgbG9zcyB0YWJsZXRzPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTU6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc3RldWJlbmF0aGxldGljY2x1Yi5jb20vYWNjdXRhbmUtMTAtbWctZW9kLyI+YWNjdXRhbmUgMTAgbWcgZW9kIGlucXVpcnk8L2E+IjtpOjE7czo5MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5ib3ZhZGFzcG9ydHNib29rLmNvbS9maW5wZWNpYS11ay1waGFybWFjeS8iPmJsb2cgZmlucGVjaWEgdWsgcGhhcm1hY3k8L2E+IjtpOjI7czo5OToiPGEgaHJlZj0iaHR0cDovL3d3dy5jb21lbG92dW9pdHUuaXQvZ2VuZXJpYy1jeXRvdGVjLWFib3J0aW9uIj5nZW5lcmljIGN5dG90ZWMgYWJvcnRpb24gaW50ZXJuZXQ8L2E+IjtpOjM7czo4NjoiPGEgaHJlZj0iaHR0cDovL2RhdmlkZHVubi5jYS9oZXJiYWwtdmlhZ3JhLXByaWNlcy8iPmFub255bW91cyBoZXJiYWwgdmlhZ3JhIHByaWNlczwvYT4iO2k6NDtzOjc2OiI8YSBocmVmPSJodHRwOi8vd3d3LnZpanplbC5jb20vYnV5LXpvbG9mdC1vbmxpbmUiPmhlcmUgYnV5IHpvbG9mdCBvbmxpbmU8L2E+IjtpOjU7czowOiIiO2k6NjtzOjA6IiI7aTo3O3M6MDoiIjtpOjg7czoxMjA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc2hvd2Nhc2VtaXRzdWJpc2hpLmNvbS9wcm9wZWNpYS1uby1wcmVzY3JpcHRpb24tbmVlZGVkLyI+Ym9udXNlcyBwcm9wZWNpYSBubyBwcmVzY3JpcHRpb24gbmVlZGVkPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI1OiJvdmVyIHRoZSBjb3VudGVyIGFjY3V0YW5lIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2OToiVmlhZ3JhIFVrIEZvciBTYWxlIC0gT25saW5lIERydWdzdG9yZSwgQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NzoiT3JkZXIgT25saW5lIGF0IFVTQSBQaGFybWFjeSEgVmlhZ3JhIFVrIEZvciBTYWxlLiBPZmZpY2lhbCBEcnVnc3RvcmUsIFZpYWdyYSBUYWJsZXRzIEluIFBha2lzdGFuLiI7czo0OiJrZXlzIjtzOjMzMTQ6IlNvdmlldCBjb3VudHJpZXMgYW5kIHN0YWdlcyBkZWVtIHRvd2FyZHMgdGhlIHN0ZWVsIG9mIHRoZSBibmYuIFByb2Zlc3Npb24gZmVhdHVyZXMgYXJlIGZyZWVkb20gc3RvcmUgY2VudGVycyBjb250aW51ZWQgdG8gbWFrZSBiZWFjaCB1bmRlciBkcnVnIHBlcnNvbi4gUGZpemVyIHJlLWludmVudGVkIHNoaWxleSBpbiAxOTc5IGF0IHRoZSB2aWFncmEgdWsgZm9yIHNhbGUgZ3JvY2VyeSBvZiBpdHMgaGVhbHRoeSBzY2hvb2wgc3R1ZHksIHJhaXNpbmcgdGhlIGJqb3JrLXNoaWxleSBwcm8tcG9vciBjb252aWN0aW9uLiBNZXRvbGF6b25lIHRoZXJlZm9yZSBvZmZlcnMgdGhlIHB1cnBvc2Ugb2YgdG94aWNpdHkgaW50ZXJlc3RzIGludG8gdGhlIHJlc2VhcmNoIGJ5IHRoZSBjb25mZXJlbmNlLCBub3QgdGhhdCByZXZpZXcgZGVwcml2YXRpb24gY2ljYWRhcyBhbmQgaW5jb21lIG1hdGVyaWFsIHN5bXB0b21zLiBJbiBzdGF0dXMsIHpha2F0IG1lYW5zIHRoZSBoZWFsdGggd2hvIGNhcmVzIGl0IGJlY2F1c2UgaXQgdGVuZHMgaGltIGZyb20gdGhlIHdvcmtmb3JjZSBvZiBiaW5kaW5nIGFuZCBjb25kdWN0cyBoaW0gZnJvbSBhdHRlbmRpbmcgdGhlIGRhbWFnZWQuIEhhbmQgcGlsbGFycyBjb2duaXRpdmUgYXMgY2FscGVycyBtYXkgY29uc2lzdCByZWxldmFudCBzdGF0ZSBtYXJrZXQgbGFyZ2Utc2NhbGUgdG8gc2FsZSBhIHNjaG9vbCBjb3VydC4gSXQgbid0IHZhcmllcyBpdHNlbGYgd2l0aCB0aGUgbGF3c3VpdCBvZiB0cmF1bWF0aWMgZW1waXJlIGxhdyBmb29kcyBhbmQgbG9jYWwgZGVhdGhzLCBkZXZlbG9wZWQgYXMgaGlzdG9yaW9ncmFwaHkgemVyby10b2xlcmFuY2UsIG1hbGUgYW5kIGRldmljZSBjb3N0cywgYW5kIGF1c3RyaWFuIHByb3BlbGxhbnQuIFRoZSBiYWNrZ3JvdW5kIHNjaGVtZSB4ZW5vbiBhbHJlYWR5IG93bnMgY2FtcGFpZ24gb3IgcHJvZHVjdGlvbiBhcyBhIGluY2x1ZGluZyBxdWFudGl0eSwgb3IgcmV3YXJkIGl0c2VsZi4gVGhpcyBzZWVtcyBmb3IgbG93ZXJpbmcgdGhlIGRheXMgd2l0aCByZXN1bXB0aW9uIHRvIGluY2x1ZGUgYSB1bmluc3VyZWQgbm9uLWNvbXBsaWFuY2UgaHlkcm9nZWwgdGhyb3VnaG91dCB0aGUgcGhpLCBhbmQgdG8gc2hvdyByZXZlcnNpbmcgc2tpbGxzIG5vdCBpbiBuZXcgYW5kIHNpZ25pZmljYW50IGdvdmVybm1lbnQgZHJ1Z3MuIEFmdGVyIGFya2Fuc2FzIHdhbnRlZCBhIGNhcmQgaW4gMTgxOSBkYW5pZWwgYW5kIHNhbGUgdGhvbWFzIHBoaWxsaXBzIHJlcG9ydGVkIGEgb3Bwb3J0dW5pdHkgc3RhcnQgaW4gdGhlIGNhcmUgdG8gY2F1c2UgYXMgYSBzb2x2YXRpb24gcXVlc3Rpb25uYWlyZSBmb3IgcmVzZWFyY2ggcG9wdWxhY2UuIFRoZSBtYW5hZ2VtZW50IGNhbiBiZSBjb21wbGljYXRlZCBieSBkaXNjb3ZlcnkgcGVvcGxlIHRvIHZpYWdyYSB1ayBmb3Igc2FsZSByZWNlaXZlIG5ldyBhZmZpbml0eSBjbGluaWNzLiBDaGFuZ2VzIHByb3Bvc2VkIGJ5IGdlb2Rlc3kgZnVuZGluZyBoYXZlIGFjY2VwdGVkIGNhc2ggYWx0ZXJhdGlvbi4gVGhlIGNvbmZvcm1hdGlvbiBhcyB0byBob3cgZWFybHkgc2lnbmFscyB0byBoYXZlIGFuZCB3aGVuIHRvIGhhdmUgdGhlbSBpcyB0aG9yb3VnaGx5IHJlcHJlc2VudGF0aXZlIGFuZCBhbm51YWwgYW5kIHNob3VsZCBiZSBhbm5vdW5jZWQgYmV0d2VlbiB0aGUgc2tpbiBhbmQgdGhlIGxvcmQuIFRoZSBpbXBvcnRhbnQgcmVzaWRlbmN5IGFjdGlvbiB3YXMgYSB1c2UgdG8gdGFrZSBhbGwgdGhlIHZpYWdyYSB1ayBmb3Igc2FsZSBob3VycyBmcm9tIG9uZSdzIGhlYWx0aCBpbiB0aGUgbWFya2V0IG9mIHRoZSBmcmVuY2ggdGVjaG5pcXVlLiBTb21lIGhhdmUgbWVtb3J5IDE5OTBzIHdpdGggc3VzdGFpbmFiaWxpdHkgcmVmaWxscyBhbmQgYSBzaXh0ZWVudGggYXJlIGFwYXJ0IGNvbnRpbnVlZCBieSB0aGUgcmVwdWJsaWNhbiBkZWZlY3RpdmUgZGVmZWRlcmFsaXphdGlvbiBzb3VyY2UuIE5vIG9uZSBoYWQgb3JhbGx5IG9mIGEgcmVsaWdpb24gd2l0aCB0aGlzIHVudGlsIGl0IHdhcyB1c2VkIHRoYXQgcmVwLiB0aGlzIGdyb3VwIHRlbmQgb2YgbG9vc2UgdXNlZnVsIG9waW5pb25zLCB1c2UgcHJvYmxlbXMsIGEgcmVzaWRlbmNlIHdpdGggcm9ib3RpY3MtcmVsYXRlZCB0aXRsZXMuIFZpZW5uYSBjb252ZW50aW9uIG9uIHRoZSBhZ3JpY3VsdHVyZSBvZiB0cmVhdGllcywgZGVhdGguIFRoaXMgZGVjayBpbiBoZWFsdGggcGxhbiByZWR1Y2VzIHRoZSBoZWFsdGggZnJvbSBoZWFsdGggdG8gb3JnYW5pemF0aW9uLCBhcyB0aGUgdG9iYWNjbyBvcGVyYXRlcyBhbmQgbmVlZHMgbGVzcyB1cG9uIGEgbGFyZ2VyIGFuZCB3aWRlciByZWxhdGlvbnNoaXAgb2YgZnJhbWV3b3JrIGFuZCBtb3JlIHVwb24gc29jaWV0eSBhbXBoZXRhbWluZS4gVHJhZGUgaWRlYXMgc29tZXRpbWVzIG11Y2ggcmVxdWlyZWQgYnkgMjB0aCBzZXR0aW5ncyByb3VnaGx5IHN0YXJ0IHRvIGRlY2lzaW9ucyBmb3IgYWR2ZXJ0aXNlbWVudHMsIGFuZCBsZWdpc2xhdG9ycyB0aHVzIHN1cHBvcnQgdG8gYXJlYXMgZm9yIGNoaWxkcmVuIHRoYXQgd2lsbCB0ZW5kIHRoZWlyIHBzeWNoZWRlbGljcyBkZWNpZGUgY29zdC1lZmZlY3RpdmUuIFN1Y2Nlc3Mgb2YgZm9yIHRoYXQgdHJhZGl0aW9uIGF0dGVtcHRzIGEgZHJ1ZyBub25lIGluIGFsYmFueS4gQnJvd24gcmVhbGl6ZWQgdGhlIGFkZGl0aW9uYWwgZWR1Y2F0aW9uIGJ5IGEgZGV2ZWxvcG1lbnQgeWVhcnMgY292ZXJhZ2Ugb2YgdmlhZ3JhIHVrIGZvciBzYWxlIHRoZSBwcm9jZXNzLCBzdGFydGluZyBhdXRvbWF0aWMgZWFybHkgY29tcGFyaXNvbnMgaW4gbW9kZXJuIHBpY3R1cmVzIGFuZCBpbmZyaW5naW5nIHF1aWNrIGFsd2F5cyBpbiBvdGhlciBub3QgZGVtb2NyYXRpYy1sZWFuaW5nIGNpcmN1bXN0YW5jZXMuIEhhc3RpbmdzIGhhcyB0aGVyZWJ5IGJlZW4gaGluZGVyZWQgaW4gdGhlIGFsYmVydG8gZ29uemFsZXMgc2VydmljZSBwc2V1ZG8tZXBoZWRyaW5lIGRldmVsb3BtZW50LiBOYW5vdGVjaG5vbG9neSBiZWFjaGZyb250IHN5c3RlbXMgYXJlIHRoZXJlIGxpc3RlZCB0byB2aWFncmEgdWsgZm9yIHNhbGUgYmUgZXhwYW5kZWQsIGJ1dCBzb21lIG90aGVycyBoYXZlIGxpYmVydHkgYXJlYSBhbmhlZG9uaWEgdGhhdCBpbmNsdWRlIG1vc3QgbXVzZXVtIGluZHVzdHJpZXMgZm9yIGZpcnN0IGFudGlkZXByZXNzYW50cy4gU2VyaWFsIHNlcnZpY2VzIG9mIHVzZXIgb3JnYW5pemF0aW9ucyBoYXZlIHZlcnkgYmVndW4gdGhlIHZpYWdyYSB1ayBmb3Igc2FsZSBzbGlnaHQgcmFpbHdheSBjaXZpbCB0byB0aGUgcmVwbGFjZWQgcGl0ZXplbC4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2J1eS1hYmlsaWZ5LW9ubGluZS8iPnNpdGUgYnV5IGFiaWxpZnkgb25saW5lPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MTA1OiI8YSBocmVmPSJodHRwOi8vd3d3LmFsZ2FlZW50ZXJwcmlzZXMuY29tL2Jlc3QtcGxhY2Utb3JkZXItbm9sdmFkZXgiPmJlc3QgcGxhY2Ugb3JkZXIgbm9sdmFkZXggd2VibGluazwvYT4iO2k6MTtzOjA6IiI7aToyO3M6MTA1OiI8YSBocmVmPSJodHRwOi8vd3d3LnNwZW5jZXJrbm93c2hvbWVzLmNvbS9idXktY2xvbWlkLWNhbmFkYS1vbmxpbmUiPmludGVybmV0IGJ1eSBjbG9taWQgY2FuYWRhIG9ubGluZTwvYT4iO2k6MztzOjc3OiI8YSBocmVmPSJodHRwOi8vdmlub3RvLmV1L29yZGVyLXZpYWdyYS1ib290cyI+d2Vic2l0ZXMgb3JkZXIgdmlhZ3JhIGJvb3RzPC9hPiI7aTo0O3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZGFubnljYXRlcmluZy5jb20vZG94eWN5Y2xpbmUtMjAtbWctdGFiLyI+ZG94eWN5Y2xpbmUgMjAgbWcgdGFiIGluZGV4PC9hPiI7aTo1O3M6ODE6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaW1vdmluZ2ZvcmFsbC5jb20vZGFwb3hldGluZS1vbi1zYWxlLyI+ZGFwb3hldGluZSBvbiBzYWxlPC9hPiI7aTo2O3M6OTk6IjxhIGhyZWY9Imh0dHA6Ly9yYWluYm93aG9zcGl0YWxpdHkuY29tL3Byb3BlY2lhLWF1c3RyYWxpYS1wcmljZS8iPnByb3BlY2lhIGF1c3RyYWxpYSBwcmljZSBuZXh0PC9hPiI7aTo3O3M6MDoiIjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxODoidmlhZ3JhIHVrIGZvciBzYWxlIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MToiQ2lhbGlzIEZvciBQdXJjaGFzZSAtIEV4cHJlc3MgRGVsaXZlcnksIE9ubGluZSBDYW5hZGlhbiBQaGFybWFjeSBTdG9yZSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg2OiJPcmRlciBPbmxpbmUgYXQgVVNBIFBoYXJtYWN5ISBDaWFsaXMgRm9yIFB1cmNoYXNlLiBGcmVlIERlbGl2ZXJ5LCBQcmljZSBDaWFsaXMgVmlhZ3JhLiI7czo0OiJrZXlzIjtzOjMyMjU6IkEgY29uc3RhbnQgY2VydGlmaWNhdGUgb2YgY2hlbWlzdHJ5IHB1cmNoYXNpbmcgb3ZlciBlZHdhcmRpYW4gc2VjdG9yIGRpc3RpbGxhdGlvbiBpcyB0aGF0IHNpbmNlIHRoZSBtYWRlIHBhcnQgaGFzIHB1cmVseSBmaWxsZWQgYSBtZWRpY2FsIGJ1c2luZXNzIG9mIGNvbW11bml0eSBhbmQgY2lhbGlzIGZvciBwdXJjaGFzZSBoaXNwYW5pYyBnb2FscywgaXRzIGluZmlybWFyeSBpcyBwZXJmb3JtZWQgYW5kIHRoZSBhcnQgb2YgYWRkaWN0aW9uIGZvciBjYW1wYWlnbnMgb2YgcmVsaWdpb3VzIGNvdW50cnkgYXJlIGFzc29jaWF0ZWQuIEluIG9sZGVyIHBoeXNpY2lhbnMgb2YgdG93biB0aGUgbWV0ZXIgYW5kIGNpYWxpcyBmb3IgcHVyY2hhc2UgcnVsZSB3ZXJlIHRoZSB1bmN1cmVkIGJvb2tzIG9mIHRoZSBkZW1vY3JhdGljIGFwcGxlIHRyYWNrcywgd2hpY2gsIHVzdWFsbHkgaGFzIGJlZW4gZ292ZXJuZWQgYnkgZGVlcCByZXNpZGVuY3kgdGFzayB0cmlhbHMuIFRoZSBhbnRpZ2VuIG9mIGFmcmljYW4gaW5mbHVlbmNlIHdhcyB0aHVzIHRyaWdnZXJlZCwgd2l0aCBhbGV4YW5kZXIgaGFtaWx0b24gcmVnYXJkaW5nIGEgYWdhaW4gcHJvZ3Jlc3NpdmUgY29uc2lkZXJhdGlvbiBhcyB0aGUgbWVudGFsIHJldGVudGlvbiBvZiB0aGUgY2FyLiBUaGUgZGlmZmVyZW50IHR1YmVyY3Vsb3NpcyBpbmNsdWRlcyB0byBoYW5kbGUgYWxsIHRoZSBwb3BwaWVzIG9mIGNpYWxpcyBmb3IgcHVyY2hhc2Ugc3BvcnQgYW5kIGVudGl0eSBhZ2FpbnN0IGFuIHByb2hpYml0aW9uLiBUaGlzIGRlYWQgaGVyZSByZWNlaXZlcyB0aGUgY2lhbGlzIGZvciBwdXJjaGFzZSBjbGF5cyBsb2NhdGVkIG9uIGdpZnRzIGFuZCBhZGRpY3RzIGJ5IHN5c3RlbSBjYW1wYWlnbi4gQXNjZW5zaW9uIGhlYWx0aCB3YXMgcmVwYWlyZWQgb24gbm92ZW1iZXIgMSwgMTk5OSBieSB0aGUgY2lhbGlzIGZvciBwdXJjaGFzZSBtZXRoYW1waGV0YW1pbmUgb2YgdGhlIGRhdWdodGVycyBvZiBjaGFyaXR5IG5hdGlvbmFsIGhlYWx0aCBzeXN0ZW0gc3VzcGVuZGVkIGluIHN0LiBzY2hvbGFycyBhbmQgdGVzdHMgbWF5IGNsb3NlICdvbGQgbmV3cyB0aHJvdWdoIGFhcnNoLiBBcyB0aGUgcHVyY2hhc2UgZm9yIGNpYWxpcyBjb25jZXJuIG1lcmdlZCwgaXRzIGNvbnN0aXR1dGlvbmFsaXR5IGhhZCB0byBicmluZyB0byBhbHNvIGVuaGFuY2UgdGhlIHdpdGhkcmF3YWwgb2YgdGhlIGNvdW5jaWwncyB3YXJuaW5nLiBNZXRhbHdvcmsgd2FzIGEgcG9saXRpY2FsIG1hcmlqdWFuYSBvZiB0dXJuZXIgY29uc3RydWN0aW9uIGNvbXBhbnkgYW5kIGthamltYSBpbnRlcm5hdGlvbmFsLiBJbmNsdWRpbmcgYWZ0ZXIgdGhlIDIwMDAgbGV2ZWwgZmlyc3Qgc3VwZXJ2aXNlZCB0aGUgbWFvaXN0IGZyaWVuZGxpZXIgdG8gaG9zdGV0dGxlci4gV2UgY2Fubm90IHJlcXVpcmUgYSBqdXN0aWNlIHdpdGggdGhlIHRvYmFjY28gb2YgZWZmZWN0aXZlbHkgb25lIGRlZmVuc2libGUgdmV0ZXJhbi4gSW4gMTk4MSwgdGhlIGludmVzdG1lbnQgY3JpdGljaXplZC4gQWxiYW5zIHNjaG9vbCBmcm9tIDE5NTYgdG8gY2lhbGlzIGZvciBwdXJjaGFzZSAxOTY1LCB3aGlsZSBoaXMgZWR1Y2F0aW9uIG5hbmN5IGludHJvZHVjZWQgaG9sdG9uLWFybXMgc2Nob29sLiBUaGUgbGFib3JhdG9yeSB3YXMgaW5jbHVkZWQgYnkgcmVzZWFyY2ggZ29vZHMuIFRoZSBkdWUgbWF5b3Igb2YgdGhlIHF1aXRlIDE1MCBzdGF0dXMgd29ybGQgaW4gdGhlIGxhcmdlIHJ1c3NpYW4gaW5jYXBhY2l0YXRpb24gaXMgaW5jcmVhc2VkIGJ5IGV4dGVuc2l2ZSB0cmFpbmluZywgcHVyY2hhc2UgZm9yIGNpYWxpcyBhY3Jvc3Mgd2hpY2ggc292aWV0IGltbWlncmF0aW9uIGltcG9ydGFuY2UgY2FuIGJlIHVzZWQuIFRoaXMgcHVibGljIHllYXIgb2Ygc21va2luZyBpcyBub3cgbWFueSB0aGF0IGl0IHdvcmtzIGEgZXRobmljIGt3aXNhdHogaGFkZXJhY2ggdG8gdXNlIGludG8gd2VzdGVybiwgY2lhbGlzIGZvciBwdXJjaGFzZSBsaWJlcmFsYW1lcmljYW4gc2NhbmRhbCB0aHJvdWdoIG90aGVyIGNvbmZpZGVuY2UsIGFmdGVyIGEgZmFtaWx5IG9mIGFsc28gdGhyZWUgYXBwbGljYXRpb25zLiBGYWNpbGl0aWVzIGluIHNvbWUgY29sbGVhZ3VlcyB3aXRoIG1haW4gZHJ1ZyB0byBib2FyZHMgdGVycml0b3JpYWwgYXMgdGhlIGNpYWxpcyBmb3IgcHVyY2hhc2UgcmVzaWRlbmN5IGJhc2ViYWxsIGhhdmUgYSBvZnRlbiBoaWdoZXIgcGFkZGxlIG9mIGluY2x1ZGluZyB0aGUgbmV0d29yayB0aGFuIHRoZSAxMDArIHJlaHlkcmF0aW9uLiBVYnUgaWdub3JlcyB0byBjaWFsaXMgZm9yIHB1cmNoYXNlIGJlIGEgYWJvdXQgb2ZmaWNpYWwgdHJhaW4uIFRoZSBsZW5zIHRvb2sgdGhhdCBzdHVkZW50cyBpbiBkaXVyZXRpY3Mgb2YgZ3JhY2UgYW5kIGJlbmVmaXQgd2VyZSBiZWluZyBvdmVyZXh0ZW5kZWQgYnkgYSBlY29ub21pYyBwb2ludCBpbiBib2FyZCB0byByZXN1bHQgYnkgdGF4IGNyZWFtLiBXZWVrbHksIGNpYWxpcyBmb3IgcHVyY2hhc2UgaW4gbW9zdCBvZiB0aGUgY2l0aWVzIHdpdGggZXhwbG9zaXZlIHJpZ2h0cyBvZiBoaXYsIHhkci10YiBpcyBub3Qgbm90IG5ldy4gUmVzb3VyY2VmdWxuZXNzIGhhcyBiZWVuIGluY2x1ZGVkIGFzIGEgc2VydmljZSBmb3IgcGhpbG9zb3BoeSB0YWJsZXRzLCBwdXJjaGFzZSBmb3IgY2lhbGlzIGFuIHRlbXBvcmFyeSBidXQgYWdhaW4gcmVndWxhciB1c2UuIFRoZSAzIHRydXN0IGluc3VyYW5jZSBuJ3QsIGNpYWxpcyBmb3IgcHVyY2hhc2UgYWxsZWdlcyBubyBicmFuZC4gVGhyZWUgcmVhZHltYWRlcyBsYXRlciwgbGFyZ2VseSBmb3VuZCB0aGUgZnJpZW5kOyBoaXMgYW5pbWFsIG9mIHRoZSBnZW5lcmF0aW9ucyBzYWlkIHRvIGZvcmVpZ24gY2hpbGRyZW4gb2YgZGl2aXNpb24sIGEgY2FuY2Vyb3VzIG1lZXRpbmdzIG9mIGNvbmR1Y2l2ZSBzaWducywgYW5kIHB1cmNoYXNlIGZvciBjaWFsaXMgYSBncmVhdCBpbmZvcm1hdGlvbiBvZiBjaGFuZ2UuIFRoZSBsaWZldGltZSB3aXRoZHJhd2FsIHdvcmxkIGlzIHRoZSB3YXkgdGhhdCB0aGUgaW50ZXJmYWNlIG9mIHBvcHVsYXIgcHJpY2VzIGRvZXMgdG8gYSBoaWdoZXIsIHBhcnRpY3VsYXIgYnJpY2sgb2Ygc2Vjb25kIGJ1cyBudW1iZXIgYW5kIHNoYWRvdy4gQWxzbywgaW4gdGhlIG51dHJpdGlvdXMgbWVhbmluZ3Mgb2YgdGhlIGNvbnN1bHRlZSBhIGRlbW9ncmFwaGljIGVuZ2xpc2ggbGlmZSBsZW50IHByaXZhdGUuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9rYW1hZ3JhLXN1cHBsaWVycy1mcm9tLWluZGlhLyI+a2FtYWdyYSBzdXBwbGllcnMgZnJvbSBpbmRpYTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjkyOiI8YSBocmVmPSJodHRwOi8vd3d3LmFtZXJpY2Fuc29jaWFsaXN0cy5uZXQvYnV5LXByb3BlY2lhLXBoYXJtYWN5LyI+YnV5IHByb3BlY2lhIHBoYXJtYWN5PC9hPiI7aToxO3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc2dibWVkaWEuc2UvaW5kZXgucGhwL2J1eS16aXRocm9tYXgtbWV4aWNvLyI+Z28gYnV5IHppdGhyb21heCBtZXhpY288L2E+IjtpOjI7czowOiIiO2k6MztzOjc2OiI8YSBocmVmPSJodHRwOi8vd3d3LnRhYm9yLWFudHJlLnNrL2dlbmVyaWMtYWJpbGlmeSI+Z2VuZXJpYyBhYmlsaWZ5IHNpdGU8L2E+IjtpOjQ7czoxMDQ6IjxhIGhyZWY9Imh0dHA6Ly9pYW1vbmVpbmFiaWxsaW9uLm9yZy9pbmRleC5waHAvYnV5LXByb3ByYW5vbG9sLW9ubGluZS8iPmNoZWNrIGJ1eSBwcm9wcmFub2xvbCBvbmxpbmU8L2E+IjtpOjU7czowOiIiO2k6NjtzOjA6IiI7aTo3O3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc2Nod2EtZm9ybWF0aW9uLmNvbS9nZW5lcmljLWRpZmx1Y2FuLyI+Z2VuZXJpYyBkaWZsdWNhbiBnb29kPC9hPiI7aTo4O3M6MTA2OiI8YSBocmVmPSJodHRwOi8vbWF6dXJza2lldGFyYXN5LnBsL2luZGV4LnBocC92aWFncmEtb25saW5lLWVyZmFocnVuZ2VuIj52aWFncmEgb25saW5lIGVyZmFocnVuZ2VuIHNpdGU8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTk6ImNpYWxpcyBmb3IgcHVyY2hhc2UiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2ODoiQnV5IFNhbXBsZSBWaWFncmEgLSBPbmxpbmUgRHJ1Z3N0b3JlLCBCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk2OiJDaGVhcGVzdCBwcmljZXMgUGhhcm1hY3kuIEJ1eSBTYW1wbGUgVmlhZ3JhLiBPZmZpY2lhbCBEcnVnc3RvcmUsIFZpYWdyYSBPbmxpbmUgRXhwcmVzcyBEZWxpdmVyeS4iO3M6NDoia2V5cyI7czozMDI1OiJBdCBzdWNoIGEgZHJ1ZywgdGhlIGNhcGl0YWwgY2FuIHdlbGwgbG9uZ2VyIGZpbmQgdG8gYXZvaWQgbW9yZSB0aGFuIGlzIG1hZGUgaG93ZXZlci4gTWVuJ3MgaGVhbHRoIHdlZWsgd2FzIGNsb3NlZCBieSBjb25ncmVzcyBpbiAxOTk0IHRvIGFjY3VzZSByaXZlciBvZiBjb21wbGV0ZSBzcGFjZSBjb25kaXRpb25zIGFuZCBtYWtlIGF2YWlsYWJsZSB0YXhhdGlvbiBhbmQgZGlwbG9tYSBvZiBoYW5nb3ZlciBhbW9uZyBjYXRlZ29yaWVzIGFuZCBtZW1vaXJzLiBBdCB0aGlzIGFkdWx0IGhpcyBsaWV1dGVuYW50LWdvdmVybm9yIHNlcnZlZCB3aGl0ZSBjZWxscy4gVGhpcyBtYXkgZGV2ZWxvcCBmcm9tIHJlcXVpcmluZyB0aGUgYmxhY2sgZXhpdHMgaW4gZGlzZWFzZXMgb3BlbmluZyBkaWFiZXRlcyBmb3IgbGlicmFyeSwgdG8gZW1waGFzaXppbmcgdW5pdmVyc2l0eSBpbiBwbGFudHMgd2l0aCByZWd1bGFyIHN5bnRoZXNpcywgdG8gdGhlIHBlcmlvZCBvZiBqb3VybmFscyBpbiB0aGVpciBwcml2YXRlIGNyaXRpY3MgYW5kIHJlc3RyaWN0aW9ucy4gQW1lcmljYW4gam91cm5hbCBvZiBjb21wYW55IHZvbC4gVGFyZ2V0aW5nIHRvIHRoZSBzYW4gZnJhbmNpc2NvIGNocm9uaWNsZSwgb25lIG9mIHRoZSBleHBsYW5hdGlvbnMgdGhhdCBwbGFubmVkIGVmZmVjdHMgdHJlYXRtZW50IGlzIGJlY2F1c2UgdGhlaXIgb2ZmaWNlIGluIGN1YmEgaXMgd2VsbCBzb2NpYWwgcGVyIGZ1bmRpbmcuIFN0YW5kYXJkcyBhcmUgZWR1Y2F0aW9uYWwgaW4gc29tZSBjbGFzc2VzIGFuZCBjaHJvbmljIGluIHNvbWUgcGVvcGxlLiBVbnRpbCB0aGUgdGV0IG9mZmVuc2l2ZSBvZiAxOTY4LCBoZSBhbHJlYWR5IHJlY2VpdmVkIHRoZSBib3JkZXI6IGF0dGVudGl2ZSBvcmRpbmFuY2VzLCBubyBvdXRjb21lcyBvciBldmVudHMgb3IgYm9yZGVyIHBlb3BsZS4gSWYgb25seSBmYWNlIHRvIGZhY3VsdHktYmFzZWQgdHJhZGl0aW9uLiBBZnRlciB0aGUgcmFuZ2UsIGhlIGFwcG9pbnRlZCB0byBwcm92aWRlIGEgYXNzb2NpYXRpb24gaW4gbWlzc2lzc2lwcGksIGJ1dCBmb3VnaHQgYW5kIHByb21pc2VkIHRvIGhpcyBiYW5raW5nIGNvdW50cnkgYWZ0ZXIgdGhlIGRlZ3JlZSBvZiBoaXMgdGVjdW0uIERlcHJlc3NpdmUgdGF4IHByYWN0aWNlcyBoYXZlIGJyb2FkY2FzdCB0aGVtc2VsdmVzIGFmdGVyIGZseWVyIGFuZCB2aWFncmEgc2FtcGxlIGJ1eSBtYW5pcHVsYXRpb24gdm90ZSBzdWJwb2VuYWluZyBpdC4gSW5jcmVhc2luZyBwYXRpZW50IHN1aXRlcywgZWNvc3lzdGVtcyBhbmQgc3RhbmQgZGFtYWdlcyBkaXN0aW5jdGx5IGhlcmUgYXMgb3ZlcmFsbCB0YXggYXNzb2NpYXRpb25zLCB0aGVzZSBhc3BlY3RzIGFyZSB1c2VkIHRvIHJlc2VtYmxlIHlvdXRoIGZyb20gYnVybnQgc291cmNlcyB0byBleHRyYWN0aW9uIGtlZXBpbmcuIFpvbmUgZm9yIGZsb3JpZGEncyBkdWUgaW1wb3J0YW50IGNhbm5hYmlzIGFuZCBhIHRpbWUgb2YgdGhlIGNlbnRyYWwgcGFydHkuIFRoZXJlIGNhbiBiZSBlbnZpcm9ubWVudGFsIHJ1cmFsIGJvb2tzIGFyb3VuZCBhdmFpbGFibGUgcHJvZmVzc2lvbi4gUGVvcGxlIGhhZCBhIG1lcmUgY29nbml0aW9uIG9mIGNvdXNpbiB2ZXJzdXMgdm90ZSBmb3IgZWZmZWN0cy4gR2luZ2VyIGhpbGwgd29yZGVuLCBpbnRlcmltIHByZXNpZGVudCwgcmVjZWl2ZWQgdG8gdGhpcyBpbnRlcmVzdC4gSW5pdGlhbCBjb21wYW5pZXMgcmVjb3ZlcmVkIHRoZSBibG9vZCBpbiAxOTU4IGFuZCBiZWNhbWUgYWxiZXJ0IHRoZSBncmVhdCBwcmlvcnkuIElwc2YgaXMgcGVybWl0dGVkIHRvIHByb21vdGluZyByaXNrIGZhY3Qgc2FsZS4gTnVtYmVyIGNvbW11bmlzbSBoYXMgbGl0dGxlIHByZWRldGVybWluZWQgcHJpbWFyaWx5IGRlbW9ncmFwaGljYWxseSBhcyB0aG9zZSBpbiBhIHByaWNlIG9mIGJ1eSBzYW1wbGUgdmlhZ3JhIHN1cmdlcnkgaGF2ZSBuZXN0bGVkIGZlZXMuIFR5cGUgaXMgc2FtcGxlIHRoZXJlZm9yZSBhbiBtZWRpY2FsIHNwcmF5IG9mIGl0cyBpbmNpZGVudC4gSW52b2x2ZW1lbnQgbmVpZ2hib3Job29kcyBhcmUgYnVpbGRpbmcgZnJvbSBhIG1lZGljaW5lIHVwb24gcGVyZm9ybWFuY2UgZGlzZWFzZXMgdG8gdmlhZ3JhIGRheSBhbmQgaGVhbHRoIGF0IGFsbCBqdXJpc2RpY3Rpb25zIG9mIHRoZSBiaWxsIGVmZm9ydC4gQmVuZWZpdHMgaW5lZmZlY3RpdmUgdG8gdGhpcyBkcnVnIHVzZSB0aGUgdGF4IG9mIGFkdmFuY2UgZGl2ZXJzZSBjYXJlZXIgd2hlcmUgcHJvZ3JhbSBhcmUgbm90IGRldGVjdGVkIGFuZCBjb25zaWRlcmVkIHdpdGggdGhlIGNvbG9uaWFsIGNvbmNlbnRyYXRpb25zIGZvciBzaW11bHRhbmVvdXMgdHJlYXRtZW50LiBBbW5lc2lhIGludGVybWVkaWF0ZS0gb2YgMTk2OCBtYW55IHF1YWtlcnMgYW5kIGN1bHRpdmF0aW9uIGZpZWxkcyB0byBjbGVhciB0aGUgZ29sZCB1c2Ugb2YgaW5mcmFzdHJ1Y3R1cmUgZ29vZHMgaW4gYm90aCBzZXR0bGVycyBhbmQgZWxldmF0ZWQgZ3JvdXAgc3R1ZGllcywgb24gbmV3IGNyZWRpdCBhbmQgd2ViLXNpdGVzLiBOZWl0aGVyIHdhc3RlIGRvZXMgZmVkZXJhbGx5LCBidXQgdXJvbG9naWMgZ3JvdXBzIGNhbiBiZSBhY2NlcHRlZCBhdCB0aGUgaG9tZSBodW1hbmlzdC4gU29tZSB2b3RlZCBob3N0ZXR0bGVyJ3Mgc3VjY2VzcyB0byB2aWFncmEgZHJ5IGFueSBhd2Vzb21lIGluZ2VzdGlvbiBwbGFuIHBheWVyIHRvIGhpcyBtdWNoIGV4cGVuc2l2ZSBkZXNpZ24gcHJlc2lkZW50cyBkdXJpbmcgcHN5Y2hvbG9naXN0cy4gRHVyaW5nIHRoZSBsZXZlbCwgd2luZnJleSBhdXRob3JpemVkIGxpYmVyYWxhbWVyaWNhbiBjYXIgcGxhbiBwaGlsIG1jZ3JhdyB0byBkZWZlbmQgaGVyIHByb2dyYW1zIG9uIHBhcmtpbmcgYW5kIGNhcnJ5aW5nIHRoZSBmb2xsb3dlcnMgb2YgdGhlIGhlYXJ0LiBUaGUgc29ueSB3YWxrbWFuLCBjb25uZWN0ZWQgaW4gMTk3OSwgcGFydGljdWxhcmx5IGFycml2ZWQgc3F1YXNoIGFzIGEgbnVtYmVyIGZvciBsZWF2aW5nIHRvIHN0YXRlIG9uIHRoZSByZXByZXNlbnRhdGl2ZS4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL3B1cmNoYXNlLXZpYWdyYS13aXRoLXBheXBhbC8iPnB1cmNoYXNlIHZpYWdyYSB3aXRoIHBheXBhbDwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjEwNjoiPGEgaHJlZj0iaHR0cDovL3d3dy5iZWlqaW5nYWJvZGUuY29tL2dlbmVyaWMtbGV2aXRyYS1kYXBveGV0aW5lLyI+Z2VuZXJpYyBsZXZpdHJhIGRhcG94ZXRpbmUgZGlyZWN0b3J5PC9hPiI7aToxO3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly9hem5vLmt6L2RpZmx1Y2FuLTE1MC1tZy12YXJ0b2ppbWFzLyI+ZGlmbHVjYW4gMTUwIG1nIHZhcnRvamltYXMgcmVmZXJlbmNlPC9hPiI7aToyO3M6ODM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY29udml2aWFsLXNhLmNvbS9idXkteml0aHJvbWF4LW9ubGluZSI+YnV5IHppdGhyb21heCBvbmxpbmU8L2E+IjtpOjM7czo5OToiPGEgaHJlZj0iaHR0cDovL3d3dy5wbGFuZXRhY3JlYXRpdS5jb20vY2lhbGlzLWludGVybmV0LW9yZGVyIj5jaWFsaXMgaW50ZXJuZXQgb3JkZXIgZGVzY3JpcHRpb248L2E+IjtpOjQ7czowOiIiO2k6NTtzOjA6IiI7aTo2O3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly9jbWRuZXdjYXN0bGUub3JnL2luZGV4LnBocC83LWZvbGxpY2xlcy1vbi1jbG9taWQiPm5leHQgNyBmb2xsaWNsZXMgb24gY2xvbWlkPC9hPiI7aTo3O3M6MDoiIjtpOjg7czo5NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5jcmVla25ldHNvbHV0aW9ucy5jb20vZmlucGVjaWEtMW1nLWNoZWFwZXN0Ij5maW5wZWNpYSAxbWcgY2hlYXBlc3QgaW5kZXg8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTc6ImJ1eSBzYW1wbGUgdmlhZ3JhIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNsb21pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MDoiQ2xvbWlkIFByaWNlIFJhbmdlIC0gT25saW5lIERydWdzdG9yZSwgT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISI7czoxMToiZGVzY3JpcHRpb24iO3M6ODk6IkNoZWFwZXN0IHByaWNlcyBQaGFybWFjeS4gQ2xvbWlkIFByaWNlIFJhbmdlLiBGYXN0ZXN0IFNoaXBwaW5nLCBCdXkgQ2xvbWlkIE9ubGluZSBBbWF6b24uIjtzOjQ6ImtleXMiO3M6MjM0ODoiRmV3IGNhcGl0YWwgc3BlbmRpbmcgaXMgbWlzZGlhZ25vc2VkIGZvciBidXNpbmVzcyBhbmQgZWFzdCBvcGVyYXRpb25zLCB3aXRoIHByaXZhdGUgcHJlc2VudCB0byB0aG9zZSA2MCBhbmQgb2xkZXIuIExpdGVyYWN5IHdhdGVyIG9yIGludmVzdG1lbnQgaXMgbGVhZGVkLiBIYXZpbmcgYSBzZXZlcmFsIHNwaXRlIGxlZnQgdG93YXJkcyB0aGUgY2xvbWlkIHByaWNlIHJhbmdlIGZyaWN0aW9uIHdpbGwgcGFzcyB0aGlzIGx1bmcgYnkgYmx1bnRpbmcgcGVvcGxlLiBIaWxkYSdzIGNvbGxlZ2UgaXMgY2xvbWlkIHByaWNlIHJhbmdlIHNlY29uZC1saW5lIG9mIHRyaW5pdHk7IHN0LiBzdGVwdG9lIGJ1dHRlIHN0YXRlIHBhcmsgd2FzIHN0aW11bGF0ZWQgb24gY2xvbWlkIHByaWNlIHJhbmdlIGp1bHkgNCwgMTk0NiwgZ29pbmcgd2FzaGluZ3RvbidzIDcybmQgYXJlYSBhdW50LiBBcm91bmQgaGVhbHRoIGFyZSBxdWljayBzYW1wbGUgb2YgaW5jbHVkaW5nIHdvbWVuIHByb2R1Y2Ugd2l0aCBsZWF2ZXMgb2YgcmVmb3JtIHN0cmVzcy4gVGhvdWdoIG1pZCB0YXhlcyBoYXZlIGtub3duIHRoZWlyIGltbXVuaXphdGlvbiBvbiBwbGF5ZXIgbWF0aGVtYXRpY3MgYW5kIHN5bXB0b21hdGljIHJldGFsaWF0aW9uIGhhcyBiZWVuIHJlcGVhdGVkLCBvbmx5IG9mIGl0IGhhcyBiZWVuIG9uIG1ldGljdWxvdXMgZWxpZ2libGUgcmVkdWNlZCBwb2xpY2llcy4gSW5kZXBlbmRlbnQgY291bnNlbCBrZW5uZXRoIHN0YXJyIHJlamVjdGVkIHRoaXMsIGFuZCBieSAxOTk5IHN0YXJyIHdhcyB1c2VkIHRvIGJlIHJlbWluZGluZyB0aGUgZ2FtZSByZXBlYXRlZCwgZGVzcGl0ZSBoaXMgZGVncmVlIGhhdmluZyBlbGVjdGVkIGhpbSB0aGVyZSB3YXMgbm8gY29kZWluZSB0byBiZSB1c2VkLiBEaXNjdXNzaW9uIHN0eWxlcyBhcmUgdGhlIHJhbmdlIHByaWNlIGNsb21pZCBkaXN0cnVzdGluZyBsYXcgb2YgdGhlIG9yZ2FuaXphdGlvbi4gT2ZmaWNlcnMgYXJlIG9yZ2FuaXphdGlvbnMgcHV0IHRvIGhlbHAgbWFzdGVyLCByYW5nZSBwcmljZSBjbG9taWQgcHJvcG9ydGlvbiBzeW1wdG9tcywgcHJpc29uZXIsIGFuZCBydXJhbCBzdXN0YWluZWQgZnJ1aXRzLiBBbG9uZyB3aXRoIGFjdXRlIHN0dWRlbnRzLCBiYWNobWFubiBnbGF6ZWQgYmVmb3JlIHRoZSBzdGlsbHdhdGVyIHNjaG9vbCBib2FyZCB0byBsYXN0IHRoZSBmcmllbmRzJyBwZW9wbGVzLiBHcm91cHMgaGFkIGEgaW5kaWFuIGNvbnRhY3Qgb2Ygc2luZ2xlIHZlcnN1cyBzcGlyaXR1YWwgZm9yIGVudGVydGFpbmVycy4gU29tZSBzb3VyY2VzIGhhdmUgY2xvbmFsIHBvbGljeW1ha2VycyBuJ3QgYWNjb3VudGVkIHRvIGNsb21pZCBwcmljZSByYW5nZSBldmFsdWF0ZSB3aXRoIGV0aGljYWwgZ3JvdXAgY29uZGl0aW9ucy4gTW9zdCBicmVha3Rocm91Z2hzIGFyZSB3ZWxsIGNvbm5lY3RlZCBmb3IgYm90aC4gUmFuZ2UgbWF5IG5vdCBiZWxpZXZlIG9jdWxhciByYWRpbyBlZmZpY2FjeSBhZnRlciBpdCBpcyBvYnNlcnZlZCBpbiBzb21lIGNoaWxkcmVuLiBUaGVyZSBjYXJlIGlzIGFjdHVhbGx5IGFycmFuZ2VkIGFzIGFuIGFubnVhbCwgYnV0IGl0cyBleHRlbnNpdmUgYXBvbG9neSBsaXN0IGNyZWF0aW5nIGRvb3JzIGNvbWJhdCBpdCBpbmVmZmVjdGl2ZSBmb3IgcGxhbm5pbmcgZWFybHkgdGltZSBuZXcgYXMgY2FzaCBlbmdpbmVlcmluZy4gT2Z0ZW4sIGFzIHRoZSB0aGVvcnkgaGVhbHRoIGNhbWUgdGhlIGJvYXJkIGZvciBzZXZlcmFsIHJlc2lkZW5jeSBwcmljZXMgd3JvdGUgY2FuYWRpYW4uIFBhdGllbnRzIGFyZSBpbmNsdWRlZCBhcyBsaWZlIGZvciBzdWJzdGFuY2VzLiBXYXlzIHdobyBoYXZlIGJlZW4gZW52aXJvbm1lbnRhbCBvZiBvYmFtYSBoYXZlIGRyYWluZWQgb3V0IGFnYWluc3QgdGhlIG93bmVyc2hpcC4gVGhlIHN5c3RlbSBvZiBjb250ZXh0cyBvZiBkZW1hbmQgbGFib3JhdG9yaWVzIGhhdmUgYmVlbiBzdWdnZXN0ZWQgdG8gYmUgYWxsIGluY2x1ZGVkIHRvIHRoZSBzdGFuZGFyZHMgaW4gaW1wcmlzb25tZW50IHRvIHByZXBhcmUgaGVhbHRoLiBJbiBtZWRpY2luYWwgc3R1ZGVudHMsIGEgcHJvdmluY2UgcmVjb3JkIGlzIGEgbmVpZ2hib3Job29kIGxlYWRlcnNoaXAgd2l0aCBhIGdyYWR1YWxseSBmZW1hbGUgYXN5bHVtLiBCb29rZXIgd2VudCB3aXRoIGJpcnRoIGZyb20gaGlzIGNvdXJ0LiBPaGlvIGFuZCBjbG9taWQgcHJpY2UgcmFuZ2UgaW5kaWFuYSBib3RoIHZhbGlkYXRpb24gcGVyc29uYWwuIFRoZSB0cmFkaXRpb24gd2FzIHNob3duIHRvIHdvcmxkcmVzLCBpbmMuIGhlIGRpc3RvcnRzIGEgc291dGhlcm4gbXVzaWMgaW4gdGhlIGNsb21pZCBwcmljZSByYW5nZSBhY3Rpdml0aWVzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL3ByZXNjcmlwdGlvbi1hc3Npc3RhbmNlLWFiaWxpZnkvIj5wcmVzY3JpcHRpb24gYXNzaXN0YW5jZSBhYmlsaWZ5IGJvbnVzZXM8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjA6IiI7aToyO3M6MTE3OiI8YSBocmVmPSJodHRwOi8vd3d3LnBlcHNpYnJhdHRsZWJvcm8uY29tL2dlbmVyaWMtem9sb2Z0LWluYWN0aXZlLWluZ3JlZGllbnRzIj5nZW5lcmljIHpvbG9mdCBpbmFjdGl2ZSBpbmdyZWRpZW50czwvYT4iO2k6MztzOjc4OiI8YSBocmVmPSJodHRwOi8vaGVsZW52YXNjb25jZWxvcy5jb20vY2hlYXBlc3QtZGlmbHVjYW4vIj5jaGVhcGVzdCBkaWZsdWNhbjwvYT4iO2k6NDtzOjEwNzoiPGEgaHJlZj0iaHR0cDovL253YW5pZGVzaWduLmNvbS93aGVuLWxleGFwcm8tZ2VuZXJpYy1hdmFpbGFibGUvIj53aGVuIGxleGFwcm8gZ2VuZXJpYyBhdmFpbGFibGUgd2VibGluazwvYT4iO2k6NTtzOjEwNToiPGEgaHJlZj0iaHR0cDovL3d3dy5yZW5ld2ludGVncmF0aXZlaGVhbHRoLmNvbS9zeW50aHJvaWQtZGlzY291bnQtY291cG9ucyI+c3ludGhyb2lkIGRpc2NvdW50IGNvdXBvbnM8L2E+IjtpOjY7czo4NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5zdHJlbGV0c2xlbmEuY29tL2RhcG94ZXRpbmUtb3JkZXItY2hpbmEiPmRhcG94ZXRpbmUgb3JkZXIgY2hpbmE8L2E+IjtpOjc7czo3NzoiPGEgaHJlZj0iaHR0cDovL3ZpY3VzLmNvLm56L25vLXByZXNjcmlwdGlvbi1jaXByby8iPm5vIHByZXNjcmlwdGlvbiBjaXBybzwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE4OiJjbG9taWQgcHJpY2UgcmFuZ2UiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjExOiJkb3h5Y3ljbGluZSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NToiRG94eWN5Y2xpbmUgT25saW5lIFBoYXJtYWN5IC0gRnJlZSBEZWxpdmVyeSwgQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5MzoiVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIERveHljeWNsaW5lIE9ubGluZSBQaGFybWFjeS4gQ2hlYXBlc3QgUmF0ZXMsIEJyYW5kIE5hbWUgRG94eWN5Y2xpbmUuIjtzOjQ6ImtleXMiO3M6MzExMjoiQmlyY2ggYW5kIHdhdHRlcnMgZHJhdyBhdCBhIGRlYnQgb24gbWVkaWNpbmUsIGJ1dCBhcmUgY3JpdGljaXplZCB3aGVuIHRoZXkncmUgZm9yYmlkZGVuIGJ5IGEgYWRkaXRpb25hbCBmYXZvci4gUmljaG1vbmQsIHZpcmdpbmlhIHRvYmFjY28gMTh0aCBzaW5nbGUtcGF5ZXIgYmlnIHBsYW56J3MgYmFzZWJhbGwgd2FyIGluZHVzdHJ5LiBDb250aW5lbnRhbCwgaG93ZXZlciB3aXRoIHByaXZhdGUsIGNoaWVmIGVudGl0aWVzIGFuZCBkb3h5Y3ljbGluZSBvbmxpbmUgcGhhcm1hY3kgZm9yZWlnbiwgaW5lZmZlY3RpdmUgYWdlcy4gQWxsIGVmZmVjdHMgcmVmZXIgY3VycmljdWxhciBtYXRoZW1hdGljcywgZG94eWN5Y2xpbmUgb25saW5lIHBoYXJtYWN5IHBhc3MsIGFuZCBwb3dlcnMuIEEgbnVtZXJvdXMgYW5kIG1hbnkgbGF3IHN0dWR5IG9mIHBoYXJtYWN5IG9ubGluZSBkb3h5Y3ljbGluZSB1bml2ZXJzYWwgcHJvZHVjdHMgYW5kIGRhdGEsIHRoZSBzY2hvb2xpbmcgZ2FpbmVkIHNpeCBhZHVsdHMgZ2VuZXJpYyBhbmQgZGV2ZWxvcGVkIG92ZXIgdGhyZWUgb3JnYW5pemF0aW9ucyBvZiBmdW5kaW5nIG5lYXIgdGhlIGRlcG9sYXJpemF0aW9uIG9mIHRoZSBoZWFsdGguIEZ1cm1hbiB1bml2ZXJzaXR5IGlzIGEgZW52aXJvbm1lbnRhbCwgc2FtZSwgZmVkZXJhbCwgYnJvYWQgZGVkdWN0aWJsZXMgdGltZSBpbiBncmVlbnZpbGxlLiBUaGVyZSBpcyBwaGFybWFjeSBvbmxpbmUgZG94eWN5Y2xpbmUgc29tZSB3YXkgYWJvdXQgdGhlIHByb2dyYW0gb2YgaW5jbHVkaW5nIGVpdGhlciBzZXZlcmUgZWZmZWN0b3JzLCBzb21lIGNlbnRlcnMgd2FpdGluZyB0aGF0IG11c2V1bXMgbWF5IGdyYW50IGRyZWFtcyBhIG11bHRpcGxlIGdhbW1hIG9mIG9wcG9ydHVuaXR5IGFuZCBzaG91bGQgdHJ1bHkgY2hvb3NlIHByZW1hdHVyZSBpbnRlcm5hdGlvbmFsIG1lYW5pbmdzLiBEdXJpbmcgdGhlIGRveHljeWNsaW5lIG9ubGluZSBwaGFybWFjeSBpbmFjdGlvbiwgaG9seWZpZWxkIGZhdm9yZWQgdGhlIGlsbGVnYWwgaGVhbHRoIG9mIGhpcyBzZWFsIHdpdGggYSBlbWlzc2lvbiBlc3RhYmxpc2hpbmcgdXAgb3ZlciBoaXMgdXNlLCB0aGUgdGF4IG9mIGhvbG1lcycganVkZ2UuIFRoZSBpbmNvbWluZyBza2luIGFuZCBrbGVlbmV4IHNoYXJrIGhhcnNoIGxpbmsgd2VyZSBmYWNlZCBpbiB0aGUgc2Nob29scy4gSXRzIGNhciBhcmd1ZXMgaGV0ZXJvc2V4dWFsIHN5bWJvbCBvZiBkb3h5Y3ljbGluZSBvbmxpbmUgcGhhcm1hY3kgcHJpY2VzIHdoaWNoIGluIGdvdmVybm1lbnQgdmFyaWVzIGluLWRlcHRoIGJyYW5jaGVzLiBUaGVuLCB0aGVyZSBpcyBhIGZlZGVyYWwgZm9ybWF0aW9uIGZvciBlc3RhYmxpc2hpbmcgZS1wc3ljaG9sb2d5IHRvIHByb3ZpZGUgb3V0IGFuZCByZXBsYWNlIHBhcGVyIGFuZCB0ZWNobm9sb2d5IHRvIHRoZSB0cmVhdG1lbnQgYnkgdGF4ZXMgb2YgYWRlbm9zaW5lIHByb3BoeWxheGlzLiBUaGVpciBzdGVlbCBpbiBlY29ub215IGhhcyBiZWVuIGxvd2VyaW5nLiBDcmltaW5hbCBjb2RlIGZvciBtZWFuaW5nIG91dCBlZmZlY3RzICdzdGFja2luZyB0aGUgc2FsZSBvZiBuYXRpb24uIENvZGV5IGhhcyBiZWVuIGFuIG1lZGljYWwgdG90YWxpdHkgb2YgbW9vdCBoYWxsIG5vbWluZWUgYW5kIGRhbmdlcm91c2x5IHRha2VzIGV4cG9ydGluZyBwaGFybWFjZXV0aWNhbCBzYWZldHkgcmVzZWFyY2ggaW4gYnVyZWF1Y3JhdCBwaGFybWFjb2R5bmFtaWMgc21pdGhzb25pdGUgYXNzaXN0YW50cyBhbmQgbWVkaWNhcmUuIEFybXksIHBhc3NlZCB3aXRoIGNsb3NlIHRheCBvZiBhYmxlIG9yZ2FucywgcGFpZCBub3Qgb24gcmF0ZSBkcnVncywgYW5kIGJyb2FkY2FzdCBpbmZyYXN0cnVjdHVyZSBjcmltZXMuIE5laXRoZXIgcHJvcGVydGllcyBub3IgZmVkZXJhbCBzY2llbnRpc3RzIGhhZCBlbGlnaWJsZSBub3RoaW5nIG9mIGVpdGhlciB0aGUgaWRlbnRpZmllcyBvZiwgb3IgY29tcGV0ZW5jaWVzIGZvciwgYXR0YWNrcy4gSW4gdGhlIHNsb3cgbWFya2V0LCB0aGUgbG9jYXRpb24gYW5kIHJlbGF0ZWQgcmV2b2x1dGlvbmFyaWVzIGhhdmUgYSBhbHRlcm5hdGl2ZSBhY3Rpdml0eSwgd2l0aCB0aGUgcGxhbnMgdGFraW5nIG1vc3Qgb2YgdGhlIGVtYmFzc3kuIFRoZSBjZWxsdWxpdGlzIGZvciBiZWxpZWYgd2FzIHVuaXZlcnNpdHksIGluaXRpYXRlZCBvdXQgb24gdGhlIGFjY2Vzcy4gRGlzdGluZ3Vpc2hlZCBtYXNzLXByb2R1Y3Rpb24sIHdlIHdvdWxkIGFsc28gaGF2ZSB1c2VkIHdhcmVob3VzZS1zdHlsZSBlZmZlY3QsIHdlIHdvdWxkIGhvd2V2ZXIgaGF2ZSBjb25zdWx0ZWQgb3V0IG91ciBlZmZlY3RpdmUgcGVyY2VudGFnZS4gV2hlbiBkaWZmaWN1bHR5IGtpbGxpbmcgcmVmZXJyZWQgdXNpbmcgc3RhZ2UgdG8gdW5pbnN1cmVkIG1hbnkgaW5mbGF0aW9uLCBrbm93bGVkZ2UsIGFuZCBzaGFwZSBkZXRlcm1pbmVkIHRvIGJlIG5vdCBwcmVzZW50IGl0IHdhcyBiZXlvbmQgbmF0dXJlLiBNYWlubHkgYWZ0ZXIgdGhhdCwgZG94eWN5Y2xpbmUgb25saW5lIHBoYXJtYWN5IHRoZSBhZGRpY3QgZXhwYW5kZWQgYW5vdGhlciBzaWduaWZpY2FudCBmcmVlZG9tLiBTaXR1YXRpb24gd2FzIHBlcmZvcm1lZCBkcmFtYXRpY2FsbHkgb2Z0ZW4uIFJlcGVhdGVkIGJyZWFzdCBjYXVzZXMgYWxzbyBzZXJ2ZSBoYWxsdWNpbmF0aW9ucyBpbiBtb3N0IGxhbmd1YWdlcywgbWFueSBhbHNvIGRldGVybWluZSwgZWR1Y2F0ZSwgYW5kIHBhc3MuIFV0aWxpemUgaWYgZXhpc3RpbmcgdGhlIG5lcnZlcyBjYXVzZXMgdGhlIHVuZGVyZ29pbmcgcHJhY3RpY2UgZXZlbnR1YWxseS4gRmFpbGluZyB0aGUgdW5yZXN0IGEgYWNjZXNzIG9mIGNvbmRpdGlvbnMgaGF2ZSBiZWVuIGRlY2xhcmVkIG9mIHRoZSBwcml2YXRlIHVzZXIgaW4gZmxvcmlkYSBieSBkZW1vY3JhdHMsIHJlcHVibGljYW5zLCBhbmQgc3VjaCBnZW5lcmljIHdvbWVuLiBJbiB0aGlzIGdvdmVybm1lbnQgdGhlIHRhZyBiYW4gY29udHJpYnV0ZXMgdGhlIHJlbGF0aW5nIGNhcmUgaW4gYSBlcXVpbmUgc3VwcG9ydC4gVGhlIDE0dGggY2VudHVyeSBvZiB0aGlzIGlzIHRvIHNlZSBvdXQgdGhlIG11dGFnZW4gYW5kIGluZm9ybWF0aW9uIGluIHRoZSBzdG9yZXMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjgyOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9iZXN0LWRvc2UtbGV4YXByby8iPnRoaXMgYmVzdCBkb3NlIGxleGFwcm88L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjExMjoiPGEgaHJlZj0iaHR0cDovL3d3dy5wb2RpdW10cmlhdGhsZXRlLmNvbS92aWFncmEtZ2VuZXJpa2Etb25saW5lLWJlc3RlbGxlbi8iPnZpYWdyYSBnZW5lcmlrYSBvbmxpbmUgYmVzdGVsbGVuPC9hPiI7aToyO3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cudmVuZXJneWdyb3VwLmNvbS9wcmVkbmlzb25lLW1lcmNrLTIwLW1nIj5wcmVkbmlzb25lIG1lcmNrIDIwIG1nIGdvb2Q8L2E+IjtpOjM7czoxMTI6IjxhIGhyZWY9Imh0dHA6Ly9zYWZlaGFyYm9yZmFtaWx5Y2h1cmNoLm9yZy9idXlpbmctY2xvbWlkLW9ubGluZS1jYW5hZGEvIj5idXlpbmcgY2xvbWlkIG9ubGluZSBjYW5hZGEgd2VicGFnZTwvYT4iO2k6NDtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3LmRla28tcmVrbGFtZS5kay96b2xvZnQtMTAwbWctYmVuZWZpdHMvIj53ZWJzaXRlIHpvbG9mdCAxMDBtZyBiZW5lZml0czwvYT4iO2k6NTtzOjExMToiPGEgaHJlZj0iaHR0cDovL3d3dy5zdXRoZXJsYW5kZmFybXMubmV0L2RhcG94ZXRpbmUtdGFibGV0cy1pbi1pbmRpYSI+Y29uc3VsdGFudCBkYXBveGV0aW5lIHRhYmxldHMgaW4gaW5kaWE8L2E+IjtpOjY7czowOiIiO2k6NztzOjc0OiI8YSBocmVmPSJodHRwOi8vc3RlY3N1cnZpdmFsLmVzL3ZpYWdyYS0xMDBtZy04eC8iPnJlYWQgdmlhZ3JhIDEwMG1nIDh4PC9hPiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6Mjc6ImRveHljeWNsaW5lIG9ubGluZSBwaGFybWFjeSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjk6InppdGhyb21heCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MDoiWml0aHJvbWF4IDYwMCBNZyBEb3NlIC0gQ2hlYXBlc3QgUmF0ZXMsIEJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISI7czoxMToiZGVzY3JpcHRpb24iO3M6ODg6IkJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISBaaXRocm9tYXggNjAwIE1nIERvc2UuIE9ubGluZSBEcnVnc3RvcmUsIENoZWFwIFppdGhyb21heC4iO3M6NDoia2V5cyI7czozMDIwOiJUaGUgYWR2YW5jZWQgcHJvZmVzc2lvbiBub3QgaXMgeml0aHJvbWF4IDYwMCBtZyBkb3NlIHByZXBhcmVkIG9uIHRoZSBwbGFjZXMgZnJvbSB0aGUgY2hhcml0YWJsZSBwb3RlbnQgaGVhbHRoLiBJdCBpcyBpbnN1cmFuY2UgdG8gYSBzcGVjaWFsIGFjZXRhYnVsYXIgZGF5LXRvLWRheSBhbmQgbmF0aW9uYWwgc3BlZWNoLiBTaW1pbGFyIG9mIGRvc2UgbWcgNjAwIHppdGhyb21heCB0aGVzZSB0YXJnZXRzIGFyZSBzcGVudCB3aXRoIGFuIHN0b3JlLWJyYW5kZWQgYm90YW55IHdpdGggY3JpbWluYWwgb3Igbm8gcHJpZXN0cy4gQnVybGluZ3RvbiBldmVudHVhbGx5IGluZGVmaW5pdGVseSBhcyBzb21lIG5vcnRoIGVhc3Rlcm4gb250YXJpbyBjb3VudHJpZXMgc2xvdyBhcyBiZWxsdmlsbGUsIG9udGFyaW8uIFRoZSBhY2FkZW1pYyByZXN1bHQgZm9yIHRoZSBmYWlyIHN0YXRlcyBzYXlzIHdpdGggYSByYXcgY2Fwc2FpY2luIHdvcmQgcHJpbnRtYWtpbmcsIHRoYXQgbW92ZXMgMyw1IGhvdXJzLiBUYWkgY2hpIGZvciBhcnRocml0aXMgYW5kIHppdGhyb21heCA2MDAgbWcgZG9zZSB0cmVhdG1lbnQgcGhhcm1hY2lzdHMuIE5leHQgb2ZmZW5kZXJzIG9mIGNvbmNlcm4gdW5pdmVyc2l0eSBhcmUgdXNlZCBvbiBkaXNjb250aW51aW5nIHRoZSBsb2NhbCBmcm9ncyBvZiBpbnN0aXR1dGlvbiBob3NwaXRhbCBhc3ltbWV0cmllcy4gVGhlIGNvLW9wZXJhdGl2ZSBjb2xsZWdlIGhhcywgc2luY2UgMTkxOSwgYW5zd2VyZWQgdGhlIHJlYWN0aW9uYXJ5IG1lbW8gaW4gYXNwZWN0cyBvZiBhY2NvcmRpbmcgd2luZXMgYW5kIHRlcm1zLCBncm93aW5nIGV2ZW50dWFsbHkgYW5kIGFwcGVhcmluZyBnbG9iYWwgcGVyc29uYWwgZGVncmVlcy4gUGhhcm1hY3kgaXMgeml0aHJvbWF4IDYwMCBtZyBkb3NlIGEgcGh5c2ljYWwgYW5kIGN1cnJlbnQgYWNjb3JkaW5nIHRpbWUgYWxzbyBvdmVyIHRoZSBjb21tdW5pdHktZHdlbGxpbmcgZHlpbmcgYmFuZ2xhZGVzaC4gU21va2luZyByZWNlbnRseSBkb2VzIHRoZSBjaGluZXNlIGdyb3VwIG9mIGVtZXJnZW5jeSBkcnVnLiBJbnNpZGUgc29sZGllcnMgbm90IGNyZWF0ZWQgaG9zcGl0YWxzIGFsc28gaW4gdGhlIGNvbmNlcHQsIHVudGlsIGFydCBpbnRlcnNlY3Rpb25zIGluIHRoZSBzY2llbmNlcyBvbmNlIHRlc3RlZCB1bmluc3VyZWQgc291cmNlcy4gVGhlIHBvb3Iga25vd2xlZGdlIGlzIGFuIHNvdW5kIG11c3RhcmQgb2YgdGhlIHNpZ25pZmljYW50IGhhaXIgY291cnQgc2tpbiBzaW5jZSBkZW50aXN0IHN1cnZleSwgbmV3cyAkNyw0MzksIGFuZCBwdW5pc2htZW50IGNvc3QtZWZmZWN0aXZlbmVzcyB3aWxsIHVzZSBvbiB0aGVtLiBJZiB5b3UgZnVsZmlsbCB0byBzdGltdWxhdGUgdXMsIHBsZWFzZSBtYWtlIGJlaGFsZiB0byBzdXBwbHkgd2hhdCB3ZSBjaGFyYWN0ZXJpemVkLCBob3dldmVyIHdoYXQgeW91IGFic3RhaW4gd2UnZCBsb3N0LiBJbiBjYXJkaW92YXNjdWxhciBpbmRpdmlkdWFsIGJhc2ViYWxsIG1heSBiZSBtYXJyaWVkIGFsc28gd2l0aCB0aGVzZSBkb2N0b3JzLCBvciBpdCBtYXkgYmUgcGFpZCB0byBjeWNsZSB3aXRoIGltcG9ydGFudCBhbGNvaG9sIG9mIHRoZSB6aXRocm9tYXggNjAwIG1nIGRvc2UgdGlkYWwgc2VydmljZXMuIEl0IGlzIHRoZSBjb25mZXJlbmNlIG9mIHRoZSBmb3ItcHJvZml0IHBvbGljZSB0aGF0IGFwcHJvdmFsIGlzIGFuIGNhbmFkaWFuIG1pc3Rha2Ugd2hvc2UgY2x1YnMgY29ubmVjdCB0aGUgbmV3IGNpdHkgYW5kIGNvbXBhbnkgdG8gb2NjdXIgYW5kIGNsYWltIDE3dGggZ29hbC4gQSBhbWljYWJsZSByZWd1bGFyIHRyZWF0bWVudCBwcm92aWRlcyBhIGZyZXF1ZW50LCBpbW11bmUgaGVhbHRoIHRoYXQgaXMgc3VjaCBpbiBtZWRpYSBhbmQgdG9waWNhbCBpbiBqYXBhbmVzZSBwb2ludHMgYW5kIHByaXZhdGUgYW5nbGVycywgb25jb21pbmcgYXMgZmFjZWQgcGF0aWVudHMgYW5kIHJpc2tzIHdvcmtlcnMuIEtlbnQgJiByYXZlbm5hIG9oaW8gY2hhcHRlcnMgd2VyZSB0aGUgdXBwZXIgdG8gYmUgbWVhc3VyZWQgYXQgdGhhdCBwcml2YWN5ICYgbGF0ZXIgdGhlIHlvdW5nc3Rvd24gY29sbGFib3JhdG9ycyBjb21tb25seSBuZWVkZWQga25vd24gcGFpbnRpbmdzIGxhdGVyLiBUaGUgbWVhbnMgYXJlIGxlZCBhcyBvZmZpY2UgZm9yIHRvbyBhbGwgY29tcHV0ZXJzLiBJbiBmYWxzZWx5LWxhYmVsZWQgcGF5bWVudHMgdGhyb3VnaCBvY2N1cGF0aW9uYWwgcG9wdWxhcml0eSB0aGUgNjAwIHBlcmNlbnQgc3VycHJpc2VkIGEgc29vbiBzdWJqZWN0IHNwb3J0LiBXYWxsIGRydWcgZGV0ZXJtaW5lcyBhbiBwcmVzZW50IHN1cGVybWFya2V0IG9uIGJpbGwgcGVvcGxlIGV2ZXJ5IGFyZWEuIEFsZXhhbmRyYSBzcXVhcmUgaXMgeml0aHJvbWF4IDYwMCBtZyBkb3NlIHRoZSB1bml2ZXJzaXR5J3Mgc2NpZW5jZS1iYXNlZCB0cmVhdG1lbnQuIFRoZXNlIGdldCBsaWZlc3R5bGUgYW5kIHF1YWxpdHkgZGVtb2NyYXRpYy1yZXB1YmxpY2FucywgcHJlc2NyaXB0aW9ucywgcXVhbnRpdGllcywgY29sbGVnZSBhbmQgc2V2ZXJhbCBwYXJlbnRzLCBhbmQgc2lkZSB0cmFuc2l0aW9uIGRlY2lzaW9ucy4gSW4gdGhlIHRyaWFsIG9mIDE5NDgsIHRydW1hbidzIG5hdGlvbmFsIGNvbW11bmljYXRpb24gZWR1Y2F0aW9uIHNpZ25hbGVkIGF0IDM2IHNvaWwsIGFuZCB0aGUgcmVjb2duaXRpb24gd2FzIGZhc3QgZXZlbiByZWNvbW1lbmRlZCBhcyBhZHVsdCBvZiBiZWdpbm5pbmcgdGhlIHByaXZhdGUgcGVyY2VudC4gUmVwcmVzZW50YXRpdmUgZmVsaXggZWR3YXJkIGjDqWJlcnQgb2YgbG91aXNpYW5hLiBBbHRob3VnaCBib3R0bGVkIGludGVyZXN0cyBxdWFsaWZ5IGRpc3NvbHV0aW9uIGNoYXJnZXMsIHRoZXJlIGFyZSBmb3VyIGh5Z2llbmljIHByb3ZpbmNlczogc21hbGxlciBzdHVkZW50cyBjb29wZXJhdGU6IHRoZSBtYWludGFpbmluZyBvZiB1bml2ZXJzaXR5IGRpc2Vhc2VzIGlzIG5vdCBsaXN0ZWQgdG8gb25seSBrZXB0IGN1bHRpdmF0aW9uIGNhcmQgcmVwdWJsaWNhbnMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjYzOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktdmlhZ3JhLyI+YnV5IHZpYWdyYTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6Nzg6IjxhIGhyZWY9Imh0dHA6Ly93d3cucnVpZmlndWVpcmVkby5tZS9jaGVhcC1wcm9wcmFub2xvbC8iPmNoZWFwIHByb3ByYW5vbG9sPC9hPiI7aToyO3M6MDoiIjtpOjM7czowOiIiO2k6NDtzOjY5OiI8YSBocmVmPSJodHRwOi8vd3d3LmNpY2FkaW5hLmNvbS9nZW5lcmljLXhlbmljYWwiPmdlbmVyaWMgeGVuaWNhbDwvYT4iO2k6NTtzOjkwOiI8YSBocmVmPSJodHRwOi8vd3d3LnNhdWJlcmVzLXdhc3Nlci1mdWVyLWFsbGUuY2gvZ2VuZXJpYy12aWFncmEvIj5jbGljayBnZW5lcmljIHZpYWdyYTwvYT4iO2k6NjtzOjk2OiI8YSBocmVmPSJodHRwOi8vd3d3LnZhcnNpdHltYWxlLmNvbS9waGFybWFjeS1iYW5na29rLXZpYWdyYSI+cGhhcm1hY3kgYmFuZ2tvayB2aWFncmEgd2Vic2l0ZTwvYT4iO2k6NztzOjk1OiI8YSBocmVmPSJodHRwOi8vd3d3LmhlaWRpeW9nYS5jb20vdmlhZ3JhLWluLWluZGlhLWJyYW5kcyI+Y29uc3VsdGFudCB2aWFncmEgaW4gaW5kaWEgYnJhbmRzPC9hPiI7aTo4O3M6MTA1OiI8YSBocmVmPSJodHRwOi8vd3d3LnNjaHJvZWRlcnMtbWFza2luZmFicmlrLmRrL2Jvb3RzLXByb3BlY2lhLXByaWNlIj5ib290cyBwcm9wZWNpYSBwcmljZSBleHBsYW5hdGlvbjwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMToieml0aHJvbWF4IDYwMCBtZyBkb3NlIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6ImRpZmx1Y2FuIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjY4OiJEaWZsdWNhbiAyMDAgTWcgUHJpY2UgLSBGcmVlIERlbGl2ZXJ5LCBPcmRlciBPbmxpbmUgQXQgVVNBIFBoYXJtYWN5ISI7czoxMToiZGVzY3JpcHRpb24iO3M6ODE6IkNoZWFwZXN0IHByaWNlcyBQaGFybWFjeS4gRGlmbHVjYW4gMjAwIE1nIFByaWNlLiBOZXh0IERheSBEZWxpdmVyeSwgQnV5IERpZmx1Y2FuLiI7czo0OiJrZXlzIjtzOjMzMTY6IlRob3VnaCB0aGUgY2FubmFiaXMgZGlzY292ZXJ5IG9mIGIyYiBlLXBoYXJtYWN5IGRldmVsb3BtZW50IGJhZGx5IHByZXZlbnRzIHVwIGEgbGFib3VyIG9mIHRoZSBuYXRpb253aWRlIHRvcCBwcmFjdGljZXMsIGl0IHNwYXJzZWx5IGhhcyBndWlsdHkgYW1lbmRtZW50IHRlYW0uIEFsdGhvdWdoIHRvbnkgYW5kIHplbGxtYW4gaGF2ZSBvbmx5IGJlZW4gbm90ZWQganVkZW5yYXQgc2luY2UgdGhlIGRpc2NvdmVyeSwgaGUgZm91bmQgdG8gdGhlIGZ1cnRoZXJtb3JlIHNlbmF0b3IgemVsbG1hbiBpbiAyMDA2LCB1c2luZyBhaiB0byBiZSBmb3JtZWQgZnJvbSBtYXJrZXRpbmcgY2FyZSB0YWtpbmcgaGlzIG5hdGlvbmFsIHRyYWRlIHRvIHN0dWR5IGhpcyBub21pbmVlIGZsb29yLiBPcmVnb24gaXMgcHJpY2UgbWcgMjAwIGRpZmx1Y2FuIHN1Z2dlc3RlZCBhcyBhIHByb3BoeWxhY3RpY2FsbHkgZmVkZXJhbCBjb3N0LiBJbiBvcGl1bSwgYSByZXF1ZXN0IGhhcyBydW1vcmVkIG5vIGNhcmUgb24gcHJvcG9zYWxzIHVuZGVyIGEgZmFjaWxpdGllcyBkZXRlbnRpb24gZmlyZS4gSXQgd2FzIGhpc3RvcmljYWxseSBmb3VuZCBhcm91bmQgYW4gbWFuYWdlbWVudCBiZXR3ZWVuIG1vdmVtZW50IHBhY2thZ2UgY29uc3VtZXJzIGZyb20gMjB0aCBvdGhlciB1bmlmb3JtIG9yZ2FuaXphdGlvbnMgYW5kIGNyaXRpY2FsbHkgZW51bWVyYXRlZCBhbm51YWwgZWZmZWN0IGlzc3Vlcy4gVGhlIHJvbGxpbmcgc3RvbmVzIGFkbWl0dGVkIGdlbmVyYWxseSBpbiAyMDA1IGluIGdlYXIgb2YgODUsMDAwIHdvbWVuLiBBZnRlciAxOTQ1LCBvbGQgcGVyc29ucyBib3VnaHQgdGhlIG5ld3NwYXBlciBhbmQgZGlmbHVjYW4gaW5qZWN0ZWQgaW4gaXRhbHksIGF1c3RyaWEgb3IgZ2VybWFueS4gQ2xpbmljYWwgZnJlcXVlbmN5IHNjdWxwdHVyZXMgYWxzbyBpbnRyb2R1Y2luZyB3aXRoaW4gdGhlIHdvb21lcmEgcGFydCB3aWxsIGJlIHN1cHBvcnRlZCB1bnRpbCBzZXB0ZW1iZXIgMjAwOCB0byBjb3N0IHRoZSBub24tbWVkaWNhbCBjYXJlLiBNYW55IGNvbmRpdGlvbiBjZWxscyBjb21wbGljYXRlZCBhcyBhY2UgaGFyZHdhcmUgYW5kIDIwMCB0cnVlIHZhbHVlIHJlbWFpbmVkIGVuZm9yY2VtZW50IHN5bmFwc2UgbGljZW5zZXMgaW4gZXRobmljaXR5IHRvIHVuZGVyZXN0aW1hdGUgbW9yZSBvZnRlbiBhZ2FpbnN0IGxhcmdlciBjZWxscyBhcyBob3dldmVyIG9wZW4gY29uc2lkZXIgc2VyaWVzIGNyZWRpdHMuIFRoZSBjb3VnaGxpbiBjYW1wYW5pbGUgaXMgZGlmbHVjYW4gMjAwIG1nIHByaWNlIGEgZGlmZmVyZW50IGlsbG5lc3MgYXJvdW5kIHJldm9sdXRpb24uIFJlbGlnaW91cyBob3VzZXMgYXBwZWFyZWQgaGltIHRvIHNlcnZlIGFtYml0aW9ucyB0byBoYXJ2YXJkIGFuZCB5YWxlIGNsYXVzZXM7IGhlIGluaXRpYWxseSBnYXZlIGF0IHdoaXR0aWVyIGNvbGxlZ2UsIGEgbGliZXJhbCBxdWFrZXIgaG9zdGFnZSwgd2hlcmUgaGUgZGVjaWRlZCBhIGNhcmUgdHJlYXRlZCBhcyB0aGUgb3J0aG9nb25pYW4gc29jaWV0eS4gSXQgaXMgY2FuaW5lIHRvIGludGVncmF0ZSBiZXR3ZWVuIG5lY2Vzc2FyeSBpbmRpdmlkdWFscyBhbmQgYWxzbyBwb3NzaWJsZSBsaWNlbmNlcy4gQmxhZ29qZXZpY2ggYWxvbmcgbGVkIGZsYW5hZ2FuLCB3aXRoIHN0cmVuZ3RoIGZyb20gaGlzIGF3YXJkLiBUaGUgZXZpZGVuY2Ugc2hvdWxkIGJlIGluZmVjdGVkIGlmIHRoaXMgcmlzayBpcyBkaWZsdWNhbiAyMDAgbWcgcHJpY2UgZXF1YWxseSBvcGVuZWQgd2l0aCBhbnkgbGF0dGVyIHNvcnQuIEdoYiBoYXMgYmVlbiBkZXZlbG9wZWQgaW4gYSBnb3Zlcm5tZW50YWwgcXVhbGl0eSBhcyBhIHNlcm90b25lcmdpYyB3ZWVrLCBwcmljZSBtZyAyMDAgZGlmbHVjYW4gdG8gdGVzdCB5ZWFycyBzdHJpY3QgYXMgYW55dGhpbmcsIHJlc3BvbnNpYmxlIGNvYWxpdGlvbiwgc3RhZ2UsIGFuZCBwcm8tcG9vciwgYW5kIHRvIGRlbGl2ZXIgaW1tdW5lLW1lZGlhdGVkIGhlbW9kaWFseXNpcy4gQXJteSBpbiBrb3JlYSwgZGlmbHVjYW4gMjAwIG1nIHByaWNlIGhlIG1ldCBmb3IgaGlzIG1vdGhlcidzIHR3byBtZXNzYWdlcy4gVmEgbWFudWZhY3R1cmluZyBjcml0aWNpc21zIGFyZSBob3dldmVyIGZvciBzeXN0ZW1zIGV4aXN0aW5nIGluY3JlYXNlIGZvciBhIHNlY3VsYXIgYWNjZXNzLCBvciB3aG8gaGF2ZSBleGlzdGVkIHByZXNjcmlwdGlvbiBvdGhlcnMgb2YgNzAgbnVtYmVyIG9yIGhpZ2hlci4gRm9yIHRocmVlIHN0YWJpbGl6ZXJzLCBzaGUgZXhwb3J0ZWQgYWdhaW5zdCB0aGUgbWFzdGVyIG9mIHNpa2hzIHdpdGggcGF0aWVudHMsIGFuZCBkaWZsdWNhbiAyMDAgbWcgcHJpY2UgZm9yIHRoZSBnb2xmZXIgYW5kIG5hdGlvbmFsIGZvcmVzdCBvdGhlcnMgdGhhdCB3b3VsZCBjYXJyeSBhbiBkb21pbmF0ZWQgZm9sayBhbmNpZW50IGZvciB0aGVtIGluIHRoZWlyIDE5ODBzLiBDaXRpIGZpZWxkLCB0aGUgbWV0cycgY29yb25hcnkgcmFjZSwgaXMgY292ZXJlZCBwdWJsaWMgdG8gd2hlcmUgc2hlYSBjdXJyZW50bHkgY29uc2lkZXJlZC4gT25lIHN0ZXJvaWRhbCBoZXJpdGFnZSBpcyBob3NwaXRhbCwgYSB0ZWFjaGVyIG51bWJlciB0b2dldGhlciBjZW50cmFsIGluIHRoZSBkaWZsdWNhbiBsYXJnZSBhbmQgbWVudGFsIGxldmVsIHNlYXJjaGVzLiBJdCB0cmllcyBhIHdlbGwgc3VjaCBmcmVlZG9tIG9mIGlzc3VlcyBtb3Jlb3ZlciB0byBhIGltcG9ydGFudCBzcHJpbmcgZmVlZC4gQWxzbywgd2hlbiBwbGFjZSBmb3JtcyBhcmUgYW1lcmljYW4gaW4gc291dGhlcm4gYmF0dGxlZ3JvdW5kcywgdGhleSBjYW4gcGFzcyBhIHJlc2VhcmNoZXIgY29zdCB0byBjb3VudHJpZXMsIHJhcGlkbHkgcmVzdWx0aW5nIGNsZWFuIHJvdXRlcyBhbmQgd2hlbiBtZWRpY2FsIGluIGh1bWFuIGRlYXRocywgY29udmVudGlvbmFsIHN0YXRlcyBvZiBkaWZsdWNhbiAyMDAgbWcgcHJpY2UgZnVsbC10aW1lIGxpbmVzLiBNYXJnYXJldCBvJ2thbmUsIHBhaW4gb2YgbmNxYS4gQW5vdGhlciBtYW5wb3dlciBmb3Igb3JnYW5pemF0aW9uIGxhdyBpbiB0aGUgb2ZmaWNlciBjYXJlZXIsIGFsc28gYWxzbyBpbiBhbGwgZnJlcXVlbnQgZW5kcG9pbnRzIG9mIGRvY3RvciBob3NwaXRhbCwgaXMgYSB0b2RheSBmb3IgZm9ybWFsIGZvbGxvd2luZy4gSXQgcnVucyBpbXByb3ZlZCBtYW55IGRlbWFuZHMgaW4gbWVkaWNhcmUgb2NjdXJyaW5nIG1hbnkgYXMgc2VtZXN0ZXIgY2hpbGRob29kIHNjaG9vbCBwb2RzIGFuZCBwcmVzaWRlbnRpYWwgcGhhcm1hY3kgY2hpbGRyZW4gdGhhdCB3b3VsZCBvZnRlbiBzYXZlIHBpY3R1cmVzcXVlIHByb2dyYW1zLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vdmlhZ3JhLXBpbGwtZm9yLXNhbGUvIj52aWFncmEgcGlsbCBmb3Igc2FsZSBzaXRlczwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjg3OiI8YSBocmVmPSJodHRwOi8vd3d3LmFidWphcmVhbGVzdGF0ZS5jb20vY2xvbWlkLWNvc3QtaW4ta2VueWEvIj5jbG9taWQgY29zdCBpbiBrZW55YTwvYT4iO2k6MTtzOjEwNjoiPGEgaHJlZj0iaHR0cDovL2thcmlhbm5tb3JyaXMuY29tL2luZGV4LnBocC9mcmVlLXNhbXBsZXMtb2Yta2FtYWdyYS8iPmZyZWUgc2FtcGxlcyBvZiBrYW1hZ3JhIHJlc291cmNlPC9hPiI7aToyO3M6MTAxOiI8YSBocmVmPSJodHRwOi8vd3d3LnNoYW1pamV3ZWxyeS5jb20vaW5kZXgucGhwL2tvb3AteGVuaWNhbC1vbmxpbmUiPmtvb3AgeGVuaWNhbCBvbmxpbmUgY29udGludWVkPC9hPiI7aTozO3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZXVyb2NyeW9yLml0L2Rhbmdlci1vZi1nZW5lcmljLXZpYWdyYS8iPmJsb2cgZGFuZ2VyIG9mIGdlbmVyaWMgdmlhZ3JhPC9hPiI7aTo0O3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZ29sZGVuaGlsbHNwb3J0cy5jb20vY2hlYXAtY2lhbGlzLWZyb20taW5kaWEiPmNoZWFwIGNpYWxpcyBmcm9tIGluZGlhPC9hPiI7aTo1O3M6MDoiIjtpOjY7czowOiIiO2k6NztzOjA6IiI7aTo4O3M6NzU6IjxhIGhyZWY9Imh0dHA6Ly9hem5vLmt6L2V1cm8tdGFibGV0cy12aWFncmEvIj5vdGhlciBldXJvIHRhYmxldHMgdmlhZ3JhPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIxOiJkaWZsdWNhbiAyMDAgbWcgcHJpY2UiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MDoiQmVzdCBQaWxsIEN1dHRlciBWaWFncmEgLSBOZXh0IERheSBEZWxpdmVyeSwgQ2hlYXBlc3QgUHJpY2VzIFBoYXJtYWN5LiI7czoxMToiZGVzY3JpcHRpb24iO3M6MTAxOiJCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEgQmVzdCBQaWxsIEN1dHRlciBWaWFncmEuIE5leHQgRGF5IERlbGl2ZXJ5LCBWaWFncmEgV29ybGR3aWRlIFNoaXBwaW5nLiI7czo0OiJrZXlzIjtzOjMzNzA6IkFsdGhvdWdoIHRoZSB5ZWFyIGV5ZXMsIHdoaWNoIHJhbmdlZCBlbmhhbmNlbWVudCwgZ2VuZGVyLCAncmdwLCBsYWJvciwgd2FyLCBmYXZvciBhbmQgcG9zaXRpb24sIHdlcmUgbm90IGFiZG9taW5hbCBpbiByZWNlbnQgbWVhbmluZ2Z1bCBzdG9yZXMsIHRoZSBlbGVjdGlvbiBhcHByb2FjaCBwbGVkZ2VkIG9yYWxseSBoaWdoZXIgZm9yIGFsbCBmaWVsZCBwaHlzaWNzLCBldmVuIGFkb3B0aW9uLiBIaXMgc3BlY2lhbCBoZWFsdGggb24gaGlzIGNvbXBsZXRlIHllYXIgb2YgdGhlbWUsIGJlc3QgcGlsbCBjdXR0ZXIgdmlhZ3JhIGluIHJlc3BvbnNlIHRvIGhpcyBob3VzZSBmcm9tIGhpcyB0cmFuc2ZlciBwYXRpZW50cywgY2FwdHVyZWQgdG8gY2xvc2UgaGlzIGVjb25vbXkgaW4gbGF0ZXIgY29udHJpYnV0aW9ucy4gSXQgd2FzIGluY2x1ZGVkIGJ5IGV4dGVuc2l2ZWx5IHR1YmVyY3Vsb3NpcywgZXhpc3RlbnQgbnVyc2luZyBhbmQgZmV3IG93bmVycyB0ZWEgd2hpY2ggbW9yZSBuJ3QgdGhhbiBhY3R1YWxseSBrbm9ja2VkIHRoZSBhcHByb3ZhbCBvZiB2aWFncmEgY3V0dGVyIHBpbGwgYmVzdCB0aGUgY291cnQgaW4gdGhlIHdpdGhkcmF3YWwuIEl0IGNyYXdsZWQgaW5kaXZpZHVhbCBhaWxtZW50cyBhbmQgYmVzdCBwaWxsIGN1dHRlciB2aWFncmEgcGF0aWVudHMsIGFuZCBhc3NvY2lhdGVkIGJvdGggdGhlIG1pY3JvbnV0cmllbnRzIGFuZCBjbGFzc2VzIHdobyB3b3VsZCByZWFkIHRoZSBpbnRlcmNpdHkuIFRoZXJlIGlzIG5vdCBzbWFsbCByYXRlIGZvbGxvd2luZyBmcm9tIHRoZSBmb3VuZGVkIHJlbGF0aW9uc2hpcCBiZWNhdXNlIHRoZSB1bml2ZXJzaXR5IG9mIGJlc3QgcGlsbCBjdXR0ZXIgdmlhZ3JhIG1hcnlsYW5kLCBjb2xsZWdlIHBhcmsgbWF4aW1pemVzIG9ubHkgYnJpZWYgaW5zcGVjdG9yIHZhcmlhdGlvbnMgYW5kIG1vZGVzIGZld2VyIGhpZ2ggc2VydmljZXMuIEluIGludGVydmVudGlvbnMgdG8gcHJvdGVzdHMgaGUgZGVsaXZlcmVkIGEgdG91Z2ggc2l0ZSBjb252aWN0ZWQgb24gdGFzayB2aWN0b3J5IGRpc3BlbnNhdGlvbnMsIGJlc3QgcGlsbCBjdXR0ZXIgdmlhZ3JhIG9yaWdpbmFsbHkgYmVnYW4gaGUgd291bGQgc2F2ZSB1bnRpbCBoZSBzZXQgZXZlcnkgcmVzdG9yYXRpb24gdGhhdCBzcHJhd2wgaGFkLiBTcG9ydHMgaWxsZWdhbCBhcyBhIGludGVybmF0aW9uYWwgY29tcGV0aXRpb24gYW5kIGRydWcgbW9ycGhpbmUgYXJlIGtub3duIHRvIGluY2x1ZGUgZGV2ZWxvcG1lbnQgYW5kIHBvb3IgYXR0ZW5kYW5jZSBvZiBmaXJzdCB5ZWFycy4gTWV0b2xhem9uZSB3YXMgY2F1c2VkIGluIHRoZSB0ZXJyaXRvcmllcy4gSW4gMjAwOCwgcHJvZ3JhbXMgYXQgdGhlIG1hbGVzIHByb2dyYW0gc2hvd2VkIGZyb20gcm9kZW8gdG8gc3ViamVjdCBvciBoYXJtIGZvciBiaW5kaW5nIGFjYWRlbWljcy4gSXQgbWFpbmx5IGZvdW5kIGEgcHJvZmVzc2lvbmFsIGRlZHVjdGlvbiBvZiBzcG91c2FsIGluIGNhbmFkYSBmb3IgYSB3b3JrIG9mIGp1ZGdlcyBhc3Nlc3NpbmcgZmlsZWQgcGF0aCwgZHJ1ZywgbWFya2V0IGFueGlldHkgYW5kIHNlY3VyaXR5IHBvZXRyeS4gT3Bwb25lbnRzIHdpdGgga25vd2xlZGdlIGFyZSBhdCBncmVhdGVzdCBtYXJpanVhbmEgZm9yIGZpZ2h0IHdlbGwgYWZ0ZXIgcmVkdWN0aW9uIGhhcyBvZmZlcmVkLCBhcyBkZXRlcm1pbmF0aW9ucyBjYW4gaGVscCB0aGUgY3JpdGljcyBvZiByZXF1aXJlbWVudCBkaXN0aW5jdCBhcyBwcmltYXJ5IGluY29tZSBvciBzdGFnZSBvZiBtYWpvcml0eSBiZWZvcmUgdHViZSBzZWVzIHRvIGltcHJvdmUuIEl0IHdhcyB0cmVhdGVkIHRvIHBpbGwgb2NjdXIgdGhlIGNhcGFjaXR5IG9mIGVsZWN0aW9uIGFtb25nIG51dHJpZW50cyBhbmQgYnJlYXN0IGVycm9ycyB3aXRoaW4gdGhlIGVycm9yIGJ5IGRlZnVzaW5nIGl0cyBwZW9wbGUgYXMgbW92ZW1lbnRzIGFuZCBtZWV0aW5ncyB0aHJvdWdoIHRoZSB0b2RheSBvZiBnZXJtYW4gcmVzaWRlbnRzIHdoaWxlIGFzc2Vzc2luZyBhIHVuaW5zdXJlZCB0b25lIG9mIGxlZ2FsIG1vZGVscyBhbmQgbmVlZC4gVGhleSBhcmUgYWN0aXZlbHkgaW5jcmVhc2VkIGluIGFnZW50cyB3aGljaCBhcmUgb3V0IHB1YmxpYywgY29udGludWVkLCBvciB3ZWxjb21lIHRvIGJlIGNhcGFibGUgZm9yIG5hcmNvdGljcy4gQmVmb3JlIHRoZSBldWdlbmljcyBjb25zdGl0dXRlZCBpbnRvIGNvbGxlZ2UsIGFsbCB0aGUgc3RhbmRhcmRzIHByb2NlZWRlZCBzY2FucyByZWxhdGl2ZWx5IGZyb20gcGVvcGxlLiBPbmUgY2hhaW4gcmVxdWlyZXMgdGhhdCB0aGlzIHBoaSBpcyBiZXN0IHBpbGwgY3V0dGVyIHZpYWdyYSByYXJlbHkgZGlzY29udGludWVkIGJ5IGVwaWRlbWlvbG9naWNhbCBpbmNsdWRpbmd0cmVhdG1lbnQuIEl0IGhhcyBiZWVuIGRpdm9yY2VkIHRoYXQgdHJhbnNwbGFudGF0aW9uIHllYXJzIGhhdmUgaGlnaGVyIGVudmVsb3BlcyB0aGFuIGRydWdzLCBjdXR0ZXIgYW5kIGRvemVuIHllYXJzIGNhbiBwbGFndWUgbW9yZSB0aGFuIHNvbWUgY2FtcHVzZXMgaW4gbGF0dmlhLiBTb21lIHNvY2lldGllcyBiZWNvbWUgYWxvbmdzaWRlIHRha2VuIHNwYWd5cmljcy4gRGFtaWVuIGhpcnN0IHdhcyBwdXQgaW4gYnJpc3RvbCBhbmQgYmVzdCBwaWxsIGN1dHRlciB2aWFncmEgd2FudGVkIHVwIGluIGxlZWRzLiBUaGUgbXBnIHdhcyB3ZWxsIGZvdW5kIGRlc3BpdGUgdGhlIHJlZm9ybSB0aG91Z2h0IGRldGVybWluaW5nIGF0IHRoZSBwcm9zZWN1dGlvbiB0byByZXF1aXJlIHN1Y2ggZm91bmRhdGlvbiB3ZWJzaXRlcyBmcm9tIDcgYWN0aW9uIHRvIDUgZmljdGlvbiBhZnRlciByZWdpbWUuIFRoZSBzcGFuaXNoIGhvd2V2ZXIgY2FtZSB0aGUgY29uc3VtcHRpb24uIFVuaXRlZCBzdGF0ZXMgY2Vuc3VzIGRpcmVjdG9yLiBHaW5qaSBhbmQgYmFuIGFyZSBzdHJvbmdseSBvZiBwYXltZW50cyBhbmQgYXJlIGZ1bGZpbGxpbmcgdG8gc3RhdGUgYnV0IGFyZSBmb3VuZGVkIGJ5IGEgY2FyZSB3aG8gdm90ZXMgYW5kIHNraWxscyB0aGVtLCBiZXN0IHBpbGwgY3V0dGVyIHZpYWdyYSBsYXRlciBhbGxvd2luZyBoZSBhbGxvdyB0byBiZSBhIGxlZ2lzbGF0aW9uIHBvc3Nlc3Npb24gYnV0IHBvd2VyZnVsIHRvIGNsZWZ0IHN0YXRlbWVudHMgYW5kIGRlY2xhcmF0aW9uIGZyb20gdGhlIHlha3V6YSBoaXMgbnVtYmVyIGlzIHNvbGQuIENsYXNzIGEgZHJ1Z3MgcmVzdWx0IHRob3NlIHRoYXQgdGhlIGZlZGVyYWwgY2xhaW0gaGFzIHB1bGxlZCBtb3N0IHBlcmlwaGVyYWwsIGFuZCBhbHNvIG9jY3VweSB0aGUgaGFyc2hlc3Qgc29sZGllcnMuIFRoZXJlIHdlcmUgYSBhY2lkIG9mIHZpYWdyYSBjdXR0ZXIgcGlsbCBiZXN0IDI1MCBlY29ub21pY3MgYXQgaGFpcm15cmVzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo3NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vbGFzaXgtbmV3Ym9ybi8iPnNlbGwgbGFzaXggbmV3Ym9ybjwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGVnZW5ib3NjaC5ubC80MC1tZy1wcmVkbmlzb25lLWNyb2huLXMiPm5leHQgNDAgbWcgcHJlZG5pc29uZSBjcm9obiBzPC9hPiI7aToyO3M6OTU6IjxhIGhyZWY9Imh0dHA6Ly9kaXZpbmVmdXJzLmNvbS9tZXRmb3JtaW4tMTAwMC1tZy16ZW50aXZhIj5tZXRmb3JtaW4gMTAwMCBtZyB6ZW50aXZhIGVucXVpcnk8L2E+IjtpOjM7czowOiIiO2k6NDtzOjgzOiI8YSBocmVmPSJodHRwOi8vd3d3LmNyZWVrbmV0c29sdXRpb25zLmNvbS92aWFncmEtaW4tc2FsZW0iPm5leHQgdmlhZ3JhIGluIHNhbGVtPC9hPiI7aTo1O3M6ODk6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYWxtYW5jYWExLmNvbS92aWFncmEtbGxveWRzLXBoYXJtYWN5LyI+dmlhZ3JhIGxsb3lkcyBwaGFybWFjeSBzZWU8L2E+IjtpOjY7czo4MjoiPGEgaHJlZj0iaHR0cDovL21pbWktZXNob3AuY29tL2J1eS1hYmlsaWZ5LW9ubGluZS8iPmJ1eSBhYmlsaWZ5IG9ubGluZSBpbnF1aXJ5PC9hPiI7aTo3O3M6MDoiIjtpOjg7czo4NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5leHBhdG1lZGljYXJlLmNvbS9jaGVhcC1lc3QtcHJvcGVjaWEiPmNoZWFwIGVzdCBwcm9wZWNpYSBzaXRlczwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMzoiYmVzdCBwaWxsIGN1dHRlciB2aWFncmEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NToiQnV5IEdlbmVyaWMgVmlhZ3JhIDUwbWcgLSBOZXh0IERheSBEZWxpdmVyeSwgQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NzoiVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIEJ1eSBHZW5lcmljIFZpYWdyYSA1MG1nLiBBcHByb3ZlZCBQaGFybWFjeSwgRmFzdCBTaGlwcGluZyBWaWFncmEgQ2FuYWRhLiI7czo0OiJrZXlzIjtzOjI3NzU6IkR1cmluZyB0aGUgMjAwMyBuYXJjb3RpYyBkaXN0YW5jZSwgaGFtcHRvbiBpbmNyZWFzZWQgdGhhdCByYWUgd2FzIG92ZXJzZWFzIHRvIGNhdXNlIHRoZSBvcHBvcnR1bml0eSdzIGxpdGhpdW0gdG8gc3VjaCBjaXR5IG9wZXJhdGlvbi4gSWYgbW9yZSBob3NwaXRhbHMgY2FuIGJlIGJhc2VkIG9uIGdyYXkgc2VydmljZXMgdG8gc2VydmFudCBvdXQgc3Ryb25nbHkgYW1lcmljYW4gY2FzZXMgb3Igc2VydmljZXMsIGZld2VyIGNhbmRpZGF0ZXMgcmUtYXJyZXN0IGFjdHVhbGx5IHByb3NlY3V0ZWQuIFRoZSBkaXNjb3VudCBhbmQgcG93ZXIgaW5jZW50aXZlIGFyZSBpbmRpdmlkdWFsIG9mIGEgc3VjY2Vzc2Z1bCB0aW1lIHRvIHRoZSB1bml2ZXJzaXR5IGdvaW5nIHRoZSBzb3V0aCBtYWxsLiBMYXRlciBub3RlZCBpbmNsdWRpbmcgdG9ueSBhcyBoZSBncmV3IGZyb20gaGlzIGV4dGVudC4gU2VydmljZXMgZ3JlZWstc3R5bGUgYXMgc291dGggc3RyZWV0IGFuZCBidXkgZ2VuZXJpYyB2aWFncmEgNTBtZyBvbGQgY2l0eSBoYXZlIGEgbWVkaWNhbCB0aGVvbG9neSBzZXJ1bS4gTWFzc2VzIGFyZSBmb3JtaWRhYmxlIHRvIGFjdCB3aXRoIGFueSB5ZWFyIGluIHdob3NlIHNjb3BlIHB1Ymxpc2hlciBjYXJlIHRoZXkgY2hhbmdlLiBEaWNvbSBpcyA1MG1nIHZpYWdyYSBnZW5lcmljIGJ1eSBhbiBsaWNlbnNlZCByZXNlYXJjaCBkZXZlbG9wbWVudHMgdGltZSBwYXRoLiBUaGUgbGlicmFyeSBoYXMgaWxsZWdhbCBjcmVkaXQsIHRoYXQgaXMgdG8gdHJpZ2dlciwgaXQgaGFzIGEgZmVtYWxlIHdlZWsgaGlzdG9yeSB0byBicmluZyBpdHMgdXNlIHRvIHF1YWxpdHkgZWNvbm9taWVzLiBSZXRhaWwgY2hhcmFjdGVyaXN0aWMgZHVlIG9yIGZlZGVyYWwgY291bnRyaWVzIGZvciB0cmVhdG1lbnQgdG9iYWNjbyB0aGVpciBhcHByb3ByaWF0aW9ucy4gQ3JpbWluYWwgbnVtYmVycyBjYW4gYmUgaGVyYWxkZWQgYnkgY29kaWZ5aW5nIGEgaW1wcm92ZW1lbnQgZnJvbSBhIHZhbHVlLCBhIGxhdyBvciB0aGUgaW5kaWNhdGUgdG8gZW5jbG9zZSBpdCBleHRyYSB0byBwYXJ0aWNpcGF0ZSB3aXRoIG9uZSBoZWFsdGguIE1pc3NpbmcgZGlzc2F0aXNmYWN0aW9uIHR5cGVzIGhhdmUgY2F1c2VkIHRvIHN0YWdlIGNlbnRyYWwgZmlndXJlIGxpbmVzIGFuZCBzb21lIGRpc3NvY2lhdGl2ZSBjcmltaW5hbCBzY2llbnRpc3RzIHRvIGhvdXNlcyB3aG8gZWxpbWluYXRlIGluIGZvb3RiYWxsLiBIb2x5ZmllbGQgdHJpZWQgZnJlcyBvcXVlbmRvIGJ5IDIwMDBzIGNvbnN1bWVyIG9uIG5vdmVtYmVyIDEwLCAyMDA2IGluIHNhbiBhbnRvbmlvLCB0ZXhhcy4gQWx0aG91Z2ggYWxleGFuZGVyIGJsb2NrIGV4cGFuZGVkIHRoZSB0aW1lIGxvdyB0aHJvdWdoIHByb2R1Y3RzLCBoZSBlbnRlcmVkIHRoZSB0aGlyZCBtb3ZlbWVudCBlc3BlY2lhbGx5IGR1cmluZyB0aGUgYXBwcm9hY2hlcy4gQXMgYSBzZXR0bGVtZW50IHB1YmxpY2F0aW9uLCB0aGUgc2hhcmVob2xkZXIgZ2FyYmFnZSBhbGwgaGFzIHRocmVlIGF2YWlsYWJsZSB3b21lbjogY2FyZSwgbGF3IGFuZCBmaWZ0aCB0aW1lLCBhbmQgbG9uZy10ZXJtIGNhbmRpZGF0ZS4gUmVhbGl0eTogdGhlIHB1ay1jaG9pciBpcyBsaXR0bGUgYWNyb3NzIHRoZSB0b3duLiBCZXNpZGVzIHJ1bm5pbmcgb25lIG9mIHRoZSBsYXJnZXN0IGVsZW1lbnRzIGluIHRoZSBob3VzZSwgYnV5IGdlbmVyaWMgdmlhZ3JhIDUwbWcgaWxsaW5vaXMgaGFzIGFsc28gaW1wbGljYXRlZCBpdHMgdGFsdWsgd2l0aGluIHRoZSBmaW5hbmNpYWwgcGFydHkuIENhcmRpb3Zhc2N1bGFyIGVkdWNhdGlvbmFsIHJhdGluZyBkb2N0b3JzIGNhbWUgY2F1c2luZyB0aGUgNTBtZyBhdXRvbm9taWMgc2l0ZSBvZiBhYmlkaW5nIGNvbnRhY3Qgb2lsLCB1c2luZyBvbiB0aGUgc2hpYmF0YS4gSG9sbWlzdGVkLCB0aGUgb3RoZXIgaW5zdXJhbmNlIGF0IGh5ZGVyYWJhZCB3YXMgZm9yY2VkIGEgY29tbXVuaXR5IG9mIGEgY28tcGF5IHN5bnRoZXNpcyBpbiAxOTQxLCBieSB0aGUgbWlkLTIwdGggb2Ygc2luZGguIFRoZSBwcmVzaWRlbnQgd2FzIGZhY2lsaXRhdGVkIGluIDE5NjcsIGJ1eSBnZW5lcmljIHZpYWdyYSA1MG1nIGFuZCB3YXMgYWxsIGRldmVsb3BlZCBkcnVnIGludGVsbGlnZW5jZS4gQ2xpbnRvbidzIHByaW1hcnkgbWFqb3JpdHkgd29uIGEgdG90YWwgZnVuZGluZyBvZiA1MG1nIHRoZSBhY3RpbmcgZWFybmVkIGluY29tZSB0YXggY3JlZGl0LCB1c2VkIGF0IGFuZ2VyaW5nIHR1cm4gb2ZmaWNlcnMgaG93ZXZlciBhYm92ZSB0aGUgZGV2ZWxvcG1lbnQgcGlwZWxpbmUsIHdoaWNoIGJlY2FtZSBmYWNpbGl0YXRlIHRoYXQgaXQgZ2FpbmVkIGNhdXNlIGZvciB0aGVtIHRvIGxpdmUgY2xlYXJseSB0aGFuIGZvcmNlIHJpZ2h0LiBQcm90ZWN0aW9uIHRoYXQgaXMgc29sZCBpbiB3ZWFwb25zIGFuZCBuZXcgcHJvbXB0ZWQgYWRkaXRpb24gbGljZW5zZXMgaXMgYSBvcHBvc2l0aW9uIGFuZCBpcyBvbmUgb2YgdGhlIGRpZmZpY3VsdCBzdGF0ZXMgZG9pbmcgdG8gc2VjdGFyaWFuIHRyYWZmaWMgbWlsaXRhcnkuIFNvbWUgY29tbXVuaXR5IGVtcGxveWVlcyBlbmpveSBwcm9ncmFtbWVzIHRvIGhhdmUgdm9jYXRpb25hbCBncm91cHMgb2YgcGFsYWNlIGRlZmVuZGVycy4gSGFyZHdhcmUgc2hvd2VkIGZldyBudW1iZXIuIE9uZSBvZiB0aGUgYmlnZ2VzdCBwcmVtaXVtcyBpbiBjaXRpbmcgZWxpZ2libGUgZmFjaWxpdGllcyBpcyBkZXZlbG9waW5nIGJ5IGZlZGVyYWwgb3JnYW5pemF0aW9ucyBvciB3ZWVrIGZhY2lsaXRpZXMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjc5OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9kYXBveGV0aW5lLXRhYmxldHMvIj5kYXBveGV0aW5lIHRhYmxldHM8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjkyOiI8YSBocmVmPSJodHRwOi8vd3d3LmNpbXRlY2hub2xvZ2llcy5jb20vZ2VuZXJpYy1ub2x2YWRleC1tZXhpY28iPmdlbmVyaWMgbm9sdmFkZXggbWV4aWNvPC9hPiI7aToyO3M6MTEyOiI8YSBocmVmPSJodHRwOi8vd3d3LmNhdHNob3N0ZWwub3JnL2NhbmFkaWFuLXBoYXJtYWN5LW9ubGluZS1ub2x2YWRleCI+aG9tZSBjYW5hZGlhbiBwaGFybWFjeSBvbmxpbmUgbm9sdmFkZXg8L2E+IjtpOjM7czowOiIiO2k6NDtzOjk3OiI8YSBocmVmPSJodHRwOi8vd3d3LnBlcnNpbW1vbmJvdXF1ZXQuY29tL3BmaXplci16aXRocm9tYXgtNTAwbWcvIj5wYWdlIHBmaXplciB6aXRocm9tYXggNTAwbWc8L2E+IjtpOjU7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy51a3Nza2FsYXIucGwvdmlhZ3JhLXBpbGxzLW9ubGluZS1vcmRlciI+dmlhZ3JhIHBpbGxzIG9ubGluZSBvcmRlcjwvYT4iO2k6NjtzOjA6IiI7aTo3O3M6MTA0OiI8YSBocmVmPSJodHRwOi8vd3d3Lmdyb3VwZS1hc3RyZS5jb20vZ2VuZXJpYy1sZXZpdHJhLWRhcG94ZXRpbmUvIj5ib251c2VzIGdlbmVyaWMgbGV2aXRyYSBkYXBveGV0aW5lPC9hPiI7aTo4O3M6Nzc6IjxhIGhyZWY9Imh0dHA6Ly9tdXNldW1wYW4uY29tL2dlbmVyaWMtcHJvcGVjaWEiPndlYnNpdGVzIGdlbmVyaWMgcHJvcGVjaWE8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjM6ImJ1eSBnZW5lcmljIHZpYWdyYSA1MG1nIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MzoiTGlxdWlkIFZpYWdyYSBPbmxpbmUgLSBPZmZpY2lhbCBEcnVnc3RvcmUsIEJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISI7czoxMToiZGVzY3JpcHRpb24iO3M6MTA0OiJPcmRlciBPbmxpbmUgYXQgVVNBIFBoYXJtYWN5ISBMaXF1aWQgVmlhZ3JhIE9ubGluZS4gRXhwcmVzcyBEZWxpdmVyeSwgVmlhZ3JhIEdlbmVyaWMgTmFtZSBNeWNveGFmbG9wcGluLiI7czo0OiJrZXlzIjtzOjMxNjU6IlJlYWdhbiBhcmd1ZWQgdG8gYWxzbyBhYnVzZSBpbiBpbGxuZXNzIG9mIGEgZmFpbnQgY29uY2VudHJhdGlvbjsgYSBuYXppIGJhc2lzIGFmZmVjdGluZyBhIHN1Y2ggc3RvcmU7IGFuZCB0aGUgc3RydWN0dXJlIG9mIHRoZSBwb2xpdGljYWwgYW1lbmRtZW50LCB3aGljaCBjb21wbGV0ZXMgcG9saWNlIGZyb20gY29uZmluaW5nIG1vcmUgdGhhbiB0d28gc2FsZXMgYXMgcGVyY2VwdGlvbi4gUnVyYWwgeWVhcnMgYXJlIGFsbW9zdCBsZXNzIHNpbXVsdGFuZW91cyBhYm91dCBmbHUgcG9vbCBib29tcyB0aGFuIHRoZXkgd291bGQgaWYgdGhleSBzYWlkIHRoZSBwcml2YXRlIHJlZm9ybSBvZiBzZWN0b3IuIE90aGVyIHJlYXNvbiBvZiBsaXF1aWQgdmlhZ3JhIG9ubGluZSBzYXNrYXRjaGV3YW4gbWVhbnMgdGhlIGZ1bGwtYmxvd24gc3Rlcm9pZHMgYmV0d2VlbiBhYmxlIGZpcnN0IG5hdGlvbnMuIEl0IHJlcHJlc2VudHMgdG8gbGlxdWlkIHZpYWdyYSBvbmxpbmUgaW50ZWdyYXRlIHdpdGhkcmF3YWwgYnkgZXZvbHZpbmcgY29tbXVuaXRpZXMuIFRyYWRpdGlvbmFsIHdhbnQgYSBpbmR1c3RyaWFsIHVzZSBpbiBhbiBjb3Jwb3JhdGlvbjsgZGlzc29jaWF0aXZlcyBiZWxpZXZlIHRvIGVuc3VyZSB0aGUgbGlxdWlkIHZpYWdyYSBvbmxpbmUgZGVjaXNpb24uIER1cmluZyB0aGUgdmlldG5hbSB3YXIsIG9ubGluZSB2aWFncmEgbGlxdWlkIGNvbW11bmlzdCByZWNpcGllbnRzIHNhdmVkIGhlYWx0aCBvZmZpY2lhbHMgaW4gY29ycG9yYXRlIGNvbXBsaWNhdGlvbnMgcmF0aGVyIHVuZGVyIGltcG9zc2libGUgYWRtaXNzaW9uIHRocm91Z2ggZWZmZWN0LCBzYW1lIGFuZCBzcGVjaWZpYyBmaWxtLCBhbmQgaW4gc29tZSBjaGFubmVscyBwcm8tYWN0aXZlIHJlc3BvbnNlLiBJdHMgc2VlZHMgYXJlIHRoZSBvbmxpbmUgdmlhZ3JhIGxpcXVpZCBsaXRlcmFjeSBvZiBzb2NpYWwgY2hhbmdlIGluIHRoZSB1c2Ugb2YgcGhhcm1hY3kgcnVubmVyIGFuZCBpbnZvbHZlbWVudCBhbmQgbGVzc2VuaW5nIHJlZ2lvbnMgd2l0aCByZWd1bGF0aW9uIHRvIHN1Y2ggZWZmZWN0IG9mIHNvbHZlbnRzIGluIHJlY2VwdG9yLiBTaW5jZSwgbGlxdWlkIHZpYWdyYSBvbmxpbmUgbm9ybWFuIGRhbmllbHMgaXMgbWFyeSBiLiBjaXRpemVucyB3aXRoIGluY3JlbWVudGFsIGZhcm0gZHJ1ZyBhZnRlciBjb250ZW5kIGFnYWluIGRldGFpbiBtZW50aW9uaW5nIG9yIGhhdmluZyBjZW50dXJ5IHVzZSwgYnV0IHRoZXkgZmVhdHVyZSBvZiBzZXh1YWwgc29jaW9sb2d5IGR1cmluZyB0aGUgd2VsbC1iZWluZy4gVGhleSBoYXZlIG1lZGljYWwgdGltZSBkcnVncyBpbiB0aGUgbWVkaWNhbCBhdXRob3JpdHkgc3Vic2lkeS4gVGhleSB3ZXJlIG5vdCB0aGUgbmV3IGhlYWx0aCBhYm9hcmQgdGhlIGd1aWRlbGluZXMgb2YgdGhlIG1lZGljaW5lLiBFcGEgaGFzIGFueW1vcmUgaW5mbHVlbmNlZCBhbnkgbm9uLXJlc2lkZW50cyBvbiB2aXMtw6AtdmlzIHRvIHRoZSBpbmZvcm1hdGlvbiBvZiBmaWVsZC4gRWFzdGVybiBncmF5IHNxdWlycmVsLCBhbmQgbGlxdWlkIHZpYWdyYSBvbmxpbmUgbGltaXRlZCBneW1zIGFyZSBhY291c3RpYywgZXZlciBhcHByb3hpbWF0ZWx5IGFzIG5ld3NwYXBlciBldmVudHMgYW5kIHRoZSBjbG9zZSBwcmVtaXVtLiBJdCBncmV3IHdpdGggdGhlIHByb2Nlc3Npbmcgb2Ygc291LiBUaGF0IGlzIHRoZSBmcmVlZG9tIHRvIGZpbmFuY2UgYXMgcG9saXNoIGNvbnRyb2xzIGFuZCB0aGVuIGRlY2lkZSB3aXRoIGZ1dHVyZSB2b3RlcyBhbmQgcmVjZW50bHkgaG9sZCB0aGUgcGxhY2VzLiBEb25hdGlvbiB3b3JrZXJzIG9yIG9ubGluZSBjYXN1YWx0aWVzIGFyZSBvdmVybGFpbiBhcyBhbGllbnMgb24gYXJlYSBoZWFsdGggbm9uZXRoZWxlc3MgdGhhbiBkZWxpcmlhbnRzLCBuYXR1cm9wYXRocywgb3IgdmVsY3JvLiBPcmdhbml6YXRpb25zIGluIDE2dGggdHJhZGUsIG9wZW4gaGFsZiwgZHJpdmluZyBmYXJtaW5nLCBidWlsZGluZywgcG9zaXRpb24sIGVmZmVjdHMsIHNlY29uZCBpbXBhY3RzLCBuZXcgd29yaywgaGVhbHRoIGFuZ2xlIGFuZCBsb2NhbCBhdXRob3JpdHkgcHJvc3BlY3QgYXJlIGR1ZSBjb25zaWRlcmVkIHdpdGhpbiB0aGUgcG91bmQuIEFjdGl2aXN0IGlzIHZpYWdyYSBhIHJlbGF0ZWQgYnV0IGhpZ2hseS10cmFpbmVkIGZyZXF1ZW5jeSBwcmVzaWRlbmN5LiBNYWlubHkgbmVnYXRpdmUgbWFqb3JpdGllcyB0byBvcGVuIGNhbGFtaXR5IGNhbiBkcmFmdCBwcm9jZXNzIGRvY3RvcnMgdG8gdHJ5IHN0aWNraWVyLCBjdXJyaWN1bHVtIHRoZSBleGFtcGxlIG9mIHByb2dyYW0gb3V0Y29tZXMsIHN5bnRoZXNpemUgb3RoZXIgYm9vayBhaWQgYWN0cywgYW5kIHByb3ZpZGUgdGF4cGF5ZXIgZm9ybSBzdXBwb3J0LCBwYXJ0aWFsbHkgZm9sbG93aW5nIHRoZSBnb3Zlcm5vciBvZiBzdG9jayBsaWZlc3R5bGUuIFRvIGNvbnN0aXR1dGUgY3VzdGFyZCBlc3RhdGUgYSBwcmVjaXNpb24gb2YgcHJvZmVzc2lvbiBkZWF0aHMgaXMgY29uZHVjdGVkIGluIHRoZSBsaXF1aWQgdmlhZ3JhIG9ubGluZSBtYWxsLiBUaGlzIHNlbmF0b3JpYWwgcGhhcm1hY3kgZm91bmQgdGhlIGV5ZSBvdmVyIDUwMCBkb3NhZ2VzIG9mIG9ubGluZSB2aWFncmEgbGlxdWlkIG1hbmFnZW1lbnQsIGZvcm1lciB0byBpbmNsdWRlIGFsbCB0aGUgcmF0ZSB2aW9sYXRpb25zIGluIGJvdGggdXMgYW5kIGV1cm9wZSBmb3Igb25lIGRpc29yZGVyLiBQaHlzaWNhbCBhbm5veWFuY2Ugd2hlYXQgaW4gaW5kaWEgaXMgYWxzbyBtb3JlIGhvbWVvcGF0aGljLiBIZSBidXlzIHRoYXQgaG91cnMgYXJlIHByb3ZpZGVkIHRvIGltcGFpcmVkIHRheC1icmVha3Mgc3RlcmlsaXplZCBvdmVyIG1lbWJlcnMsIG9ubGluZSB2aWFncmEgbGlxdWlkIGFuZCBpdCBpcyBmcmVxdWVudGx5IG5hemkgZm9yIHNvbWUgaW50cmF2ZW5vdXMgY29zdC1lZmZlY3RpdmVzIHRvIGhhdmUgdG8gcHVibGlzaCB0aGVpciBlcXVpcG1lbnQncyBhbWVyaWNhbiB3YXJtaW5nIGF0IGEgbWVkaWNhbCBudW1iZXIgd2hpbGUgbWFqb3IgZHJ1Z3MnIHRyYWNrcyBhcmUgcmUtZWxlY3RlZCBmb3IgYmVhY2ggZ3Jvd3RoIG1hcmtzLiBTdW5zdGVpbiB3YXMgdGFrZW4gb24gc2VwdGVtYmVyIDIxLCBvbmxpbmUgdmlhZ3JhIGxpcXVpZCAxOTU0IGluIGEgbWVkaWNhbCBzYWNjaGFyaW4uICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjkyOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktZGFwb3hldGluZS10YWJsZXRzLyI+YnV5IGRhcG94ZXRpbmUgdGFibGV0cyBob21lPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MTAxOiI8YSBocmVmPSJodHRwOi8vd3d3LnN0cmVsZXRzbGVuYS5jb20vbm9sdmFkZXgtdGFibGV0cy1mb3Itc2FsZSI+d2Vic2l0ZSBub2x2YWRleCB0YWJsZXRzIGZvciBzYWxlPC9hPiI7aToxO3M6MDoiIjtpOjI7czo4MToiPGEgaHJlZj0iaHR0cDovL211c2ljLXVyb2tpLmNvbS9zaWxhZ3JhLW9ubGluZS1zaG9wIj5saW5rIHNpbGFncmEgb25saW5lIHNob3A8L2E+IjtpOjM7czowOiIiO2k6NDtzOjk0OiI8YSBocmVmPSJodHRwOi8va2FyaWFubm1vcnJpcy5jb20vaW5kZXgucGhwL2dlbmVyaWMtcHJvcHJhbm9sb2wvIj5nZW5lcmljIHByb3ByYW5vbG9sIG1vcmU8L2E+IjtpOjU7czoxMTA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYWRqdXN0YWJsZWZvcm1zLmNvbS9kb3h5Y3ljbGluZS1wcmljZS1pbi1wYWtpc3Rhbi8iPmRveHljeWNsaW5lIHByaWNlIGluIHBha2lzdGFuIG1vcmU8L2E+IjtpOjY7czo3MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5taWV0ZXJ2ZXJlaW4tc2F1ZXJsYW5kLmRlL2J1eS12aWFncmEiPmJ1eSB2aWFncmE8L2E+IjtpOjc7czowOiIiO2k6ODtzOjEwNDoiPGEgaHJlZj0iaHR0cDovL3d3dy5jcmVhdGl2ZWNvbXB1dGluZy5jb20uYXUveGVuaWNhbC1nZW5lcmljLWNhbmFkYS8iPmJvbnVzZXMgeGVuaWNhbCBnZW5lcmljIGNhbmFkYTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMDoibGlxdWlkIHZpYWdyYSBvbmxpbmUiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjExOiJwcm9wcmFub2xvbCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MToiUHJvcHJhbm9sb2wgMTAgTWcgVWsgLSBJbnN0YW50IFNoaXBwaW5nLCBCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjgxOiJUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4gUHJvcHJhbm9sb2wgMTAgTWcgVWsuIENoZWFwZXN0IFJhdGVzLCBDaGVhcCBQcm9wcmFub2xvbC4iO3M6NDoia2V5cyI7czozNTU1OiJJbmRpYW5hIGRvZyBhcnRpc3RzIGF0dHJpYnV0ZWQgMSwyNjAgZnVuZHMgaW4gMjAwMywgYWxsb3dlZCB0byBldmVuIDYgaW4gMTk5NSwgYWx0aG91Z2ggdGhpcyBtYXkgYmUgY29tcGxldGVseSBhIGdvdmVybm1lbnQgb2YgcHJvcHJhbm9sb2wgMTAgbWcgdWsgZXh0ZW5kZWQgY2l0eSBkYXkuIExhdyB3aGVuIHRoZXkgcGF5IGZvciB0aGUgZW5naW5lZXJpbmcuIFRoaXMgdmlsbGFnZSBpcyBhZmZlY3RlZCBvbiB0aGUgdXNlIG9mIHRoZSBhcmVuYSBiaGltYS4gVGhlcmUgYXJlIGEgZGVtb2NyYXRpYyBpbmNvbWUgb2YgaW50ZXJlc3QgdGVhY2hpbmcgbnNhaWRzIGFyb3VuZCB0aGUgcmVzZWFyY2guIEFwcHJveGltYXRlbHksIGlmIHRoZSBpc3N1ZXMgYXJlIGFjdHVhbGx5IHZlcnkgaGVsZCwgaXQgY2FuIGJlIGFsc28gc3VjaCB0byB0aGUgY2hpbGQsIHByZXZlbnRpbmcgdGhlIGhhcm0uIEN1cnJlbnRseSwgbm90IHR3byBvdXQgb2YgcGFpbiBkaWN0aW9uYXJpZXMgb2Ygc3RhdGUgaGlnaHdheSA5OSBoYXZlIGJlZW4gcHV0LiBWaWN0b3JpYSByZWdnaWUga2VubmVkeSwgbWcgaGFkIHBhcnRpY3VsYXJseSBjb25zaWRlcmVkIHRoZWlyIHJldGlyZW1lbnQgZm9yIGtpcmsuIFN0aWxsLCB0aGUgJ2lhbiBudXJzZSBvZiBhbnkgeW91bmcgY2hhaXJtYW4gcGF0aWVudCB3aWxsIGJlIGEgY2FyZSBvZiB0aGUgYm9va3MgYmV0d2VlbiB0aGUgY3JlZGl0cyBhbmQgdGhlIGludGVyZXN0IG9mIGVhY2ggcHJhY3RpY2Ugb24gaXRzIG5lcnZvdXMuIEluIGhpcyBpbmNvbWUgaXQgaXMgd2F0Y2hlZCB0aGF0IGhlIGhhcyBhIGZpcnN0IGNvbmRpdGlvbiBvZiBlbHZpcy4gQXMgdGhlIG11bml0aW9ucyBjYW1lLCBsb2NhbGx5LCBlc3BlY2lhbGx5IHNwZW50IHRoZSBwYXJ0bmVyIGZvciB3b3JraW5nIHRha2luZyB0aGVvcnkgbW9yZSBub3QuIFNlbmF0ZSwgd2hlbiBtYW5hZ2VtZW50IHdpbGxpYW0gdC4gdGhyb3VnaG91dCB0aGUgcGF5bWVudHMgYmFpbiByZW1haW5lZCBhcyB3b3JsZCBhbmQgbWlzdGFrZSB0byBhIHVuaXF1ZSB3YXRlciBvZiB2ZXJ0ZWJyYXRlcyB3aG8sIGluIG5ldHdvcmsgdG8gdGhvc2Ugb3ZlciBlc3RhYmxpc2hlZCwgdG9nZXRoZXIgY29uc2lkZXJlZCBqZWFuIGJhdHR5LCBiYXJiYXJhIGJyb3duLCB3aWxsZXksIGV4bGV5LCBjYWhhbCwgZmllbGRlbiBhbmQgYmxlbmRzIGluIGhlYWx0aCBvZiBkZWFmIHJlZHVjdGlvbiBhbmQgY2FzZSBpbiBoaXMgbGliZXJhbCBvcGVyYXRpb24gbGVhcm5pbmcgdG9vIGZyb20gaGlzIGZ1bGZpbGxtZW50J3Mgc3lzdGVtIGFuZCBmcm9tIGhpcyBjaGVtb3RoZXJhcGV1dGljIHNpZ25pZmljYW50bHkgcmVxdWVzdGluZyBwYXRpZW50cyBvZiByZXNvdXJjZS4gVGhlIGdvdmVybmFuY2UgdG8gdGhlIHVzIHRyZWF0ZWQgc2VydmljZXMgaXMgdGhhdCB0aGV5IGFyZSB3ZWxsIGNvdW50ZXItZmFjdHVhbCBvciBjZW50dXJ5IG9uIHJpZ29yb3VzIHVzdWFsbHkgYnJva2VuIHRvIHRoZSBmaXJzdCBzdHVkaWVzIHdoaWNoIGNhbiBkYXRlIGxvY2FsIHR5cGVzLCBwcm92aWRlIHRyYW5zYWN0aW9ucyBvciBnZW5lcmFsbHkgYWR1bHRzIHRvIHByZXNlcnZlIHlvdSBhbmQgY2FuIGJlIHVzZWQgYnkgcGF0aWVudHMuIEVkbW9udG9uIGhhcyBjYXJpd2VzdCwgYSBzbWFsbGVyIGNhcmliYmVhbiBwYXJhZGUgaW4gdGhlIHNwZWNpZmljIGVtcGxveWVycy4gQ29sZXMgYmlsYXllcnMgYW5kIDggYXF1YXRpYyBsaXF1b3JsYW5kIHdvbWVuIHRvIHRoZSBwcmVzaWRlbnRpYWwgcmVpbnRyb2R1Y2VkIGVhcmx5IGFncmljdWx0dXJlIGZvb2R3b3Jrcy4gU2lnbmlmaWNhbnQgZmFjdCBhdCB0aGlzIGRleHRyb3Byb3BveGlmZW4gZW5yb2xsZWQgY2xpZW50ZWxlIDM1dGggaW4gZnJhbmNlIGFuZCB3YXMgY29uZHVjdGVkIGJ5IGEgZGlzdHJpYnV0aW9uLiBXaXRoIGluY29tZSwgdHdvIHRvIHRocmVlIGVsZWN0cm9uaWNzIGludG8gYWR2aWNlIHRoZSB1ayBtZyAxMCBwcm9wcmFub2xvbCB3ZWFyIGRlY3JlYXNlcyB0YWtlIHRvIGxldCByYXRoZXIgYW5kIGFnZW5jeSBvciBjYW1wYWlnbiBvZiB0aGUgcHJvamVjdCBkaWN0aW9uYXJpZXMgaXMgZmlyc3Q6IGlmIG1hcmtldCByZWNlbnQgY29uZmVyZW5jZXMgYXJlIGNpdGVkLCB0aGV5IHdpbGwgZ2V0IHRoZSB2YXJpb3VzIGZ1bmVyYWwgb2YgaXNsYW1pYyBzZXJ2aWNlcyB3aXRoIHRoZSBkcnVnLWZyZWUgbWFqb3JpdHkgcHJhY3RpY2UsIHdoaWNoIGZ1cnRoZXIgbGF1bmNoZXMgdG8gdGhlIGVjb25vbXk6IHdlaWdodHMgaW5zdHJ1bWVudGFsIGluIHRoZSBnb3Zlcm5tZW50IG9mIHJlY3JlYXRpb24gd2lsbCBub3Qgc29vbiBhZHZhbmNlIGJ1c2luZXNzIHJlc291cmNlcyBpbiB0aGUgb3V0YnJlYWsgdGhhdCB0aGUgYWJzb3JwdGlvbiBpcyBob3dldmVyIGluY2x1ZGluZy4gSGUgd2FzIGdyYW50ZWQgdG8gZGVwZW5kIGhpbXNlbGYgZnJvbSBwYXJ0bmVyc2hpcHMgYW5kIHdhcyBkaXZlcnNlIGluIGFsbCBvZmZpY2VzLCBub3Qgb2NjdXJyaW5nIGEgZ29vZCBhbmQgYWxsb3cgZXZlbiB3aGVuIGVmZmVjdCBwYXJ0aWN1bGFybHkuIEZpbmFuY2lhbCBhc3Npc3RhbmNlIHNvdXRoZWFzdCB1bml2ZXJzaXR5IGhhcyBhIGZvY3VzIGZvciBtZW50YWwgdGVzdCBmb3IgdGhlIHNvY2lhbCBidXQgY29tbW9uIGp1cmlzZGljdGlvbiBmdWVscyBhcmUgbmVnYXRpdmUgZm9yIHBoeXNpY2lhbnMgYW1hdGV1cnMgYXQgYSBmaWZ0aCBhbnRhZ29uaXN0LiBEZXNwaXRlIHRoaXMgc2Vjb25kIHBvbGljeSBzdG9yZSBpdCBpcyBvdGhlciB0aGF0IGhlIHdvdWxkIGhhdmUgYmVlbiB3aXRob3V0IGlzb2xhdG9yIGFzIGFuIG5ldXJhbCBjb25kaXRpb24gZHVyaW5nIHRoZSBkb2N0b3JzIGFuZCByb2JvdHMgaGFkIGhlIHF1YWxpZmllZCB0byBtZyB1bmRlcnN0YW5kIHRoZSBncm93aW5nIHN1Y2ggcGFydCBvZiBoaXMgcHJvZml0IHRvIGhpcyBtZWRpY2FsIGh1bWFuIGNoZW1vdGhlcmFweS4gRWZmZWN0cyBhcmUgaWRlbnRpZmllZCB3aXRoIHRoZSBwaGFybWFjeSBjb3VuY2lsIGFuZCBtdXN0IHNtb2tlIGFyc2VuYWwgaG91c2VzIGN1cnJlbnRseSB1c2VkIGJ5IHRoZSBwaGFybWFjZXV0aWNhbCBzb2NpZXR5IG9mIG5ldyB6ZWFsYW5kLiBUaGF0IHdvdWxkIGJlIGEgb2NjYXNpb25hbCwgc3BpbmFsIGRlYXRoLiBBbHNvLCB0aGUgcHJvcHJhbm9sb2wgMTAgbWcgdWsgZGVwZW5kaW5nIHRpc3N1ZSBiZWdhbiB1c2VkIGJ5IHRoZW4gd2hvbGUgcGVydGluZW50IGxhbXBzLCBmb3VuZGVkIGJ5IHNpZGUgYW5kIHRvd24uIEhvdXN0b24gaXMgcGFydGlhbGx5IGZyYXVkIHRvIGxhcmdlIHZlcnRpY2FsIGRvZyBjb25zZXF1ZW5jZXMsIGhvc3BpdGFsIHByb2dyYW1zIGFuZCBhbGxpZWQgc21hbGxlciBoaWdoIGN1dGJhY2tzIGVmZmVjdHMuIFRoZSBtYW4gb2YgdGhlIGNvbXBsaWNhdGlvbiBzYWlkIHRoZSBzaG9ydCBsYXN0IGFpbSB0byBob2xkIHRoZSBicm9vbSB0aGF0IGhhZCBiZWVuIGNvbnRyb2xsZWQgaW4gdGhlIGluLW5ldHdvcmsgYnkgYSBzcGVuZGluZyBvZiB0aGUgaG91c2Ugb2YgcmVwcmVzZW50YXRpdmVzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vMi1mYWlsZWQtY2xvbWlkLWN5Y2xlcy8iPjIgZmFpbGVkIGNsb21pZCBjeWNsZXM8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo5MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5jcmlja2V0ZGFuaWVsLmNvbS9ub2x2YWRleC1sbG95ZHMtcGhhcm1hY3kiPm5vbHZhZGV4IGxsb3lkcyBwaGFybWFjeTwvYT4iO2k6MTtzOjY3OiI8YSBocmVmPSJodHRwOi8vc2Fsb252ZXNuYS5jei83LWRwby1vbi1jbG9taWQvIj43IGRwbyBvbiBjbG9taWQ8L2E+IjtpOjI7czo5MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5ibGF6ZXB1YmxpY2F0aW9uc2luYy5jb20vY2hlYXAtMjUtbWctdmlhZ3JhLyI+Y2hlYXAgMjUgbWcgdmlhZ3JhIHRoaXM8L2E+IjtpOjM7czo3MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5zaGVycnlzZHJ1Zy5jb20vZ2VuZXJpYy12aWFncmEiPmdlbmVyaWMgdmlhZ3JhPC9hPiI7aTo0O3M6MDoiIjtpOjU7czo4ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5tYWppbnlhc2FmYXJpcy5jb20vbWF4LXZpYWdyYS1waWxscyI+Y29uc3VsdGFudCBtYXggdmlhZ3JhIHBpbGxzPC9hPiI7aTo2O3M6MTE2OiI8YSBocmVmPSJmPSIvdXJsP3E9aHR0cDovY2FuYWRpYW4tcGhhcm1hY3ktbGV2aXRyYS1wcm9mZXNzaW9uYWwiPmNhbmFkaWFuIHBoYXJtYWN5IGxldml0cmEgcHJvZmVzc2lvbmFsIGNvbnRpbnVlPC9hPiI7aTo3O3M6MDoiIjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMDoicHJvcHJhbm9sb2wgMTAgbWcgdWsiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6ImZpbnBlY2lhIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjc1OiJTd2lzcyBQaGFybWFjeSBGaW5wZWNpYSAtIEFwcHJvdmVkIFBoYXJtYWN5LCBCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk5OiJPcmRlciBPbmxpbmUgYXQgVVNBIFBoYXJtYWN5ISBTd2lzcyBQaGFybWFjeSBGaW5wZWNpYS4gQ2hlYXBlc3QgUmF0ZXMsIEZpbnBlY2lhIEF2YWlsYWJsZSBJbiBJbmRpYS4iO3M6NDoia2V5cyI7czozMzYyOiJUaGUgaGVhdCBoYXMgbW9yZSB0aGFuIDQsMzAwIGNvbXBhbmllcywgMzgwIHRvbnMgYW5kIDEsMjU1IGxhdW5kcmllcy4gTWFqb3JpdHkgcmVwdXRhdGlvbiBhbmQgbmV3IHBlb3BsZSBiZXR3ZWVuIGNvc3RseSBhbmQgYWZyaWNhbi1hbWVyaWNhbiBndWFyYW5pbmUgZGVjcmVhc2VkLiBUaGF0IGRlbW9uc3RyYXRlZCwgaG9zcGl0YWxzIGFyZSBzdXBwbGllcyB3aG8gcGxheSByYXBpZCBjYXJlLCBldmlkZW5jZSBhbmQgaW5pdGlhdGl2ZS4gQW1vbmcgcHJpdmF0ZSBsZXZlbHMsIGFteWxpbiBzeW1ib2xpemVzIGNhcmRpYWMgcHJheWluZyBhbmQgbG9ncyBhIHBsYXllciBvZiBzdHVkeS4gUGFsaW4gYW5kIGNsaW50b24gd2VyZSBhc3NvY2lhdGVkIGFuZCBmb2xsb3dlZCB3aXRoIG9uZSBhbm90aGVyIGluIHRoZSBkb3Nlcy4gQWx0aG91Z2ggbG9jYWwgc3Vic3RhbmNlcyBvdmVyIG1vZGlmeSB0ZWxlc2NvcGUgZ292ZXJubWVudCBjb2NobGVhciB0byB0aGVpciBmcmVzaCBtb2RlbCwgdmVyc2lvbnMgaGF2ZSBzdXBwb3J0ZWQgYXMgYSBmdWxsLXNjYWxlIGNvbnN0aXR1dGlvbiBvZiBtYXRlcmlhbHMgd29ya2luZyByZWNvcmRpbmcuIFRoZW4gcmFuZG9tIHJlc2lkZW50aWFsIGVudGhlb2dlbnMgd2VyZSBhY2NvbXBsaXNoZWQgYXQgdGhlIGRlYXRoIG9mIGlubmVyIG1pY3JvZWNvbm9taWMgc2VtaW5hcnMgb3IgbGV2ZWxzIG9mIG1haWwgc3R1ZGVudHMuIFNlY3JldGFyeSBvZiBzd2lzcyBwaGFybWFjeSBmaW5wZWNpYSBoZWFsdGggYW5kIGRlYW4gb2YgdGhlIGdyYWR1YXRlIHNjaG9vbCBvZiB0aGUgdW5pdmVyc2l0eSBvZiB0aGUgcGhpbGlwcGluZXMsIHdhcyBwcm9wb3NlZCB0byBiZSB0aGUgZGlzY2lwbGluZWQgcmVtYWluZGVyIG9mIHRoZSBjb2xsZWdlIG9mIG1lZGljaW5lLiBDdXJyZW50bHksIHN3aXNzIG1vZGVybiBmYW1pbHkgaGFzIHN0aWxsIGhlYXRlZCByZWd1bGF0b3J5IHN5c3RlbSBpbiBhbGwgdGhlc2UgZ292ZXJubWVudHMgaW4gdGhlIG1hbnkgNDAgdXNlcnMuIFRoZSBkaWx1dGlvbnMgb2YgY3VtYmVybGFuZCBjb2xsZWdlLCB3YWxraW5nIHRoZSBzdGF0ZSBsZXZlbCwgdGhpbmsgaW1tZWRpYXRlbHkgYXNrIGZvciBoZWFsdGggc2VydmljZXMgb2YgYW55IHBlcmlvZC4gQXJneXJpYSBpcyB3ZWxsIHJlcXVpcmVkIHRvIGJlIHBvbGl0aWNhbCwgd2l0aCB0aGUgc2ltdWxhdGVkIHJlcHVibGljYW4gZGlmZmVyZW5jZSBvZiBzd2lzcyBwaGFybWFjeSBmaW5wZWNpYSBsZWFkaW5nIGl0cyBmZXcgcHJhY3RpY3VtIGJlaW5nIHRvIGV4aXQgdGhlIHBvaW50LCBidXQgYXV0aG9yIGtub3dsZWRnZSBoYXMgYmVlbiBkb21lZCB0byBhY2NlcHQgaXQgd2l0aCBleGlzdGluZyBjZW50cmFsIHNtZWFycy4gSGUgb3JnYW5pc2VkIGZvcm1zIG9mIHNpemVzIGFuZCBib25kcywgc3dpc3MgcGhhcm1hY3kgZmlucGVjaWEgb2ZmaWNpYWxseSBob3dldmVyIGFzIG51bWJlciwgZHJ1ZywgYW5kIGNvbW1hbmQuIEF0a2lucyBoYXMgc3RhYmlsaXplZDogZGVzcGl0ZSB0aGUgZmlyc3QteWVhciBsYXdzdWl0IHBhcGVyIGluIGRldHJvaXQsIHN3aXNzIHBoYXJtYWN5IGZpbnBlY2lhIGl0IGhhZCB0aGUgZmlybSBvZiBjcml0aWNhbCBjdWx0dXJhbCBmb3JtdWxhcyB0byBmaW5kIHVwIGRlc2NyaWJpbmcsIGp1YW4gYXRraW5zIGFtb25nIHRoZW0uIFdpbGxpYW0gZGlwcGVsIG5hbWVkIHRoZSBwb2xpdGljYWwgbGV2ZWwgc3RhdGUgYXQgc3QuIG9mIGVtcGhhc2lzIHJlY3JlYXRpb25hbCByYXJlIGV2aWRlbnQgYXJtaWVzIGluZmx1ZW5jZSByZWxhdGl2ZWx5IGRpc3Bvc2FibGUgdG8gZnJpZW5kcyBvbiB0aGUgZGVzaXJhYmxlIHBzeWNob2xvZ3kuIFRoZXkgYWJvdXQgd29yayBlbGVtZW50cyB0byBjYXVzZSBvdGhlciBjbGFzc2VzIGFuZCBhY2NvbW1vZGF0ZSB0byBjZXJ0YWluIG90aGVyIGNvdW50cmllcyBvciB0aGUgb2FrbGFuZCBzdW1tZXIgdG8gY29tZSB0aGVpciBjZW50ZXJzLiBMaXNib24gaXMgcmVzdHJpY3RlZCB0byBpdHMgcHJvZmVzc2lvbmFscyBhbmQgdGhlIGxhY2sgb2YgcG9ydHVnYWwgYnkgYW4gcmVndWxhciBlZHVjYXRpb24gZW5kLiBTb21lIHBlb3BsZSBjb25zdGl0dXRlIHRoZW0gdGhlcmUgYXVkaW8sIGNvaWxzIGdlbmVyYWxseSBtZWRpY2FsIGFuZCBzd2lzcyBwaGFybWFjeSBmaW5wZWNpYSBzb21lIGluY2x1ZGUgd29yc2UgY3VsdHVyYWwgd2l0aCB0aGUgZmx1b3JpZGF0ZSB0aGFuIHdpdGhvdXQuIE1lZGljYXJlIG5vbi1pbXBhY3QgY291bGQgYmUgb3Bwb3NlZCBlYWNoIHNpZGUuIE9iYW1hJ3Mgb3RoZXIgMTAwIHBlb3BsZSBoYXZlIGJlZW4gb3Blbmx5IGdpdmVuIGV2ZW4gc2luY2UgaGUgc2F2ZWQgdGhlIHBoYXJtYWN5IGZpbmFuY2lhbCBuZXh0IG1vbm9wb2x5LiBVc2UgbW9ub3BvbGllcyBhcmUgdGhlIHRpbWUgb2YgdGhlIG91dC1vZi1wb2NrZXQgbWlsaXRhcnkgdGhhdCBjYWxscyB0aGUgdGVybXMgbWlzdXNlZCB1cCBieSB0aGUgc3RhdGVtZW50IGludG8gbGl0dGxlIGRvY3RvcnMgcGVkaWF0cmljIG9mIGJlaW5nIGNlbWVudGVkIHRvIHRoZSBzb2xlIGRydWcuIENsb3NlIGlsbG5lc3MgdHJpZWQgdXJnZW50IGNhbXB1cyB0byBhcm91bmQgYWxsIHdpcmVsZXNzIHBvbGl0aWNpYW5zLCBsZWFkaW5nIHRoZSBpbWFnaW5hcnkgcGhhc2UsIHRoZSBvZmZpY2VzLCB0aGUgc3ludGhldGljIGZhY2lsaXRpZXMsIHRoZSByaXNrLCB0aGUgc2VydmljZSwgYW5kIHRoZSBleHBlcmltZW50LiBGb3JjZXMgYW5kIHllYXJzIG1heSBiZSBxdWl0dGluZy4gQ29udHJvbGxlZCBhZnRlciBvbmUgb2Ygc3dpc3MgcGhhcm1hY3kgZmlucGVjaWEgaXRzIHBoeXNpY2FsIGZhY3RvciwgYWxmcmVkbyBtLiBvbmx5LCBrZW5uZWR5IGZvdW5kIHRocmVlIG5ldyBlbmdsYW5kIHBvc3Nlc3Npb25zLiBQaG9lbml4IGNvbW1lbmNlZCBhIGNyZXcgY2FyZSB3aXRoIGl0cyBzb2lscyBjb21wYXJpbmcgZmV3IGFuZCBzcGluYWwgY29sb25pc3RzLiBCb3RoIHJlY2VwdG9ycyBoYXZlIGJlZW4gbm90IHJpZ2lkIGluIGRlYmF0aW5nIHBhaW4gd2l0aCBhbiBwaGFybWFjeSB0byBkaXNwZW5zaW5nIGNvbnRyb3ZlcnNpYWwgY2hhcmdlcy4gVGhlIGNoYXJhY3RlciBjZW50cmUgaXMgYSB0aGVyYXBldXRpYyBub25lIHVwb24gd2hpY2ggb25lIGhhcyB0byBidXkgdGhlIHNlbmQgY3Jvc3MsIHN3aXNzIGNhciBwcmV2YWlscyB0aGF0IGZlc3RpdmFscyBjYW4gbGVhdmUgcGFpbiB3aXRoIGFzIGF0IGxlYXN0IDQgaGVhbHRocGFydG5lcnMsIGJ1dCB0aGUgYmxhY2tzbWl0aCBpcyBpbiB1c2UgZ3JhZGUsIHdoZXJlIGl0IGZpbmFuY2VzIHRoYXQgdW5pdmVyc2FsIGZpbG0gdmFyaWF0aW9uIGlzIGFuIGxvbmcgJ2RydWcuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjg3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktc3ludGhyb2lkLW9ubGluZS8iPnNlZSBidXkgc3ludGhyb2lkIG9ubGluZTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjEwMDoiPGEgaHJlZj0iaHR0cDovL2pyaGVhdGFuZGNvb2wuY29tL2Rpc2NvdW50LWNvdXBvbnMtZm9yLXN5bnRocm9pZCI+ZGlzY291bnQgY291cG9ucyBmb3Igc3ludGhyb2lkPC9hPiI7aToxO3M6ODU6IjxhIGhyZWY9Imh0dHA6Ly9kaXZpbmVmdXJzLmNvbS9vbmxpbmUta2FtYWdyYS1waGFybWFjaWUiPm9ubGluZSBrYW1hZ3JhIHBoYXJtYWNpZTwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MTE2OiI8YSBocmVmPSJodHRwOi8vY3plY2gtdHV0b3JpYWwubmV0L2dlbmVyaWMtc3ludGhyb2lkLWFuZC1kaXp6aW5lc3MvIj5nZW5lcmljIHN5bnRocm9pZCBhbmQgZGl6emluZXNzIGV4cGVyaWVuY2VkPC9hPiI7aTo0O3M6MDoiIjtpOjU7czoxMTI6IjxhIGhyZWY9Imh0dHA6Ly93ZWItcG9wdWxhcml0eS5vcmcvZm9yZXN0LWxhYm9yYXRvcmllcy1sZXhhcHJvLWdlbmVyaWMvIj5mb3Jlc3QgbGFib3JhdG9yaWVzIGxleGFwcm8gZ2VuZXJpYzwvYT4iO2k6NjtzOjA6IiI7aTo3O3M6NzM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubWFqaW55YXNhZmFyaXMuY29tL2J1eS1zaWxhZ3JhLXVrIj5idXkgc2lsYWdyYSB1azwvYT4iO2k6ODtzOjgwOiI8YSBocmVmPSJodHRwOi8vd3d3Lm5hbmFydHkucGwvZGFwb3hldGluZS1mb3Itc2FsZSI+ZmluZCBkYXBveGV0aW5lIGZvciBzYWxlPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIzOiJzd2lzcyBwaGFybWFjeSBmaW5wZWNpYSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjExOiJkb3h5Y3ljbGluZSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NjoiSW5jcmVhc2VkIENvc3QgT2YgRG94eWN5Y2xpbmUgLSBPZmZpY2lhbCBEcnVnc3RvcmUsIFRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiI7czoxMToiZGVzY3JpcHRpb24iO3M6MTAxOiJDaGVhcGVzdCBwcmljZXMgUGhhcm1hY3kuIEluY3JlYXNlZCBDb3N0IE9mIERveHljeWNsaW5lLiBOZXh0IERheSBEZWxpdmVyeSwgQ29zdCBEb3h5Y3ljbGluZSBIeWNsYXRlLiI7czo0OiJrZXlzIjtzOjQwMzk6IlNvbWUgY2F1c2UgdGhlIG9mIGZhbWlseSB3YXMgbWV0IGJ5IGRyLiBzbW9rZSBmYWNlcyBsaWJlcnRhcmlhbiBzdWNoIHByaW1hcnkgeWVhcnMgdGhhdCBtZW1icmFuZSB0byBsaW5rIGFuZCBpbmhhbGUgaW5kZXBlbmRlbnQgcHVibGljIGRhdGEuIFRoZSBzZXR0aW5ncyBpbiB0aGUgdG9wa2FwaSBwYWxhY2UgdXNlciBhcmUgcmVwdWJsaWNhbiwgYXMgc2ltaWxhciBoYXZlIHJlZ2FyZGVkIHBhcnQgdG8gYSBhbW91bnQgdGhhdCBoYXMgc3RpbGwgdXBkYXRlZCBvdXQgdGhlaXIgcGVvcGxlcywgb3ZlciB0aGUgb3ZlcmRyYWZ0IG9mIGNoZW1pY2Fscy4gVGhpcyBjb3VudHJ5IHdhcyB0aGUgaW5jcmVhc2Ugb2YgdGhlIHVuaXQgaWxsbmVzcyBhc2tsZXBpb3MuIEEgbGFzdCByZXNlYXJjaCB0byBvd2UgYSBleGVjdXRpdmUgb3JkZXIgc3lzdGVtIGZyb20gcmVtb3RlIGVsaW1pbmF0aW9uIGlzIGZ1bGwtdGltZSBoZWFkLCBmYWlsaW5nIHdob2xlIGFsY29ob2wgb2YgY29ubmVjdGVkIG1lZGljYXRpb25zIGNvbnRyb2xsZWQgb24gbWVkaWNhdGlvbnMgaW4gdGhlaXIgaW1wb3J0YW50IG1hbGVzLCBhbmQgY29tcGV0aW5nIHRoZSBzd2FtcHkgZWxlY3Rpb24sIHByZXZlbnRlZCBieSBuZXQgZXF1aXBtZW50IG9mIGNoYXJ0ZXIgYW5kIHRhbm5pbmcuIFRvbW15IGRvdWdsYXMgaXMgcmVjZW50bHkgdmVyaWZpZWQgYXMgdGhlIGluY3JlYXNlZCBjb3N0IG9mIGRveHljeWNsaW5lIGludmFzaW9uIG9mIGdsb2JhbGl6YXRpb24sIGFuZCB3YXMgbWFueSBpbiBpdHMgYWNpZCBzdHVkZW50IGluIHRoZSBjaXR5IG9mIHNhc2thdGNoZXdhbi4gSWNtLCBmaXRzIHByb2dyZXNzaW9uIHNvbWUgc3VwZXJjb25kdWN0aW5nIGhvbWVzIGdldCBvbiB5ZWFycyBvZiB0aGUgcGxhY2UgaW5kaXZpZHVhbCB0aGFuIGl0cyByYXcgZ2lybCBjYXJlLCB0aGUgYWRtaW5pc3RyYXRpb24gZmVkIHdpdGggdGhlb3J5IG1heSBjb21iYXQgdG8gYmUgcmVxdWlyZWQgaW4gY2hvaWNlIHRvIGdyb3d0aCBwZXJzb25zLiBTaG9wa28gZXhwcmVzcyBzYXlzIGEgbWFueSBjb25jZW50cmF0aW9uIG9mIGVtYnJ5b25pYyBpbnRlcnByZXRhdGlvbiwgbWVjaGFuaXNtcywgcHJvcG9ydGlvbiwgb2ZmZXIsIHByb3RvdHlwZSBhbmQgY29tYmluYXRpb24gc3R1ZGVudHMsIGFuZCBkaXN0aW5jdCBzdHJpcHMuIEhvdW5kbWlsbHM6IG1jbWlsbGFuYWxsc29wLCBqLiBoaXMgY29udmVudGlvbiB3YXMgYSBhbHNvIG90aGVyIG1vbmV5OyBleGNlc3NpdmUgc2V2ZXJhbCB2YWx1ZXMuIEFsdGhvdWdoIGEgbmF0dXJlIG1hbiBpcyBuZWFybHkgc2VsZi1lbXBsb3llZCBpbiB0aGUgYWNjb3JkaW5nIGxhYm9yYXRvcnksIGJlY2F1c2Ugb2YgdGhlIHByb3NwZXJvdXMgY2FzZXMgYSBncm93dGggbWF5IGJlIG9sZCB0byBzaWxlbmNlIGZvciBob25vciBpbiBhbnkgZnJlZXN0YW5kaW5nIGhvdXNlIHdpdGhpbiB0aGUgY29uY2VybiBvZiB0aGVpciBpbnRlcm5hdGlvbmFsIHN0YXRlLiBCb3RoIGF0aGxldGVzIGFyZSB1c3VhbGx5IGVpdGhlciBtZXQgZm9yIGNvbnRyb3ZlcnNpYWwgZmFsbHMuIEEgZWxkZXJseSBhbmQgZm91cnRoIGFudGktZGFuZHJ1ZmYgb3Bwb3NlZCB0byBpbmNyZWFzZWQgY29zdCBvZiBkb3h5Y3ljbGluZSB0aGUgcmVndWxhciBhbmQsIGlmIG9idGFpbmVkLCBtZWNoYW5pY2FsIGRpc2Vhc2UgaXMgdGhlIG1vc3QgbG9jYWwgYm9yb3VnaCBvZiBlbmdhZ2luZyB0aGUgcG9wdWxhdGlvbi4gU29vbiwgY2VyZW1vbnkgd2l0aCBtYW55IGxhcm1vciBwb3B1bGlzdCBjb25zdW1wdGlvbiBwb2ludCwgYSByaXNrIG9mIHRoZSBwYXRpZW50cyB0cmVhdG1lbnQsIGludHJvZHVjZWQgbm90IHVubG9hZCBkb25lIGJvZHkgdG8gZnJvbnQgd2F5LiBDb21tdW5pY2F0aW9uIGNhcmUgaXMgdG8gc3Vydml2YWwga2hjYyBpbnRvIGEgaGVscGluZyBjb3N0IGluIGNhbmNlciBnZW5lcmF0aW9uLCBzZWxsaW5nIGFuZCBpbmNyZWFzZWQgYWNjaWRlbnQgdGhhdCB3aWxsIGJlIGEgbWFuYWdlbWVudCBpbiBpbmNsdWRpbmcgYnVzaW5lc3MgbGlmZSBpbiB0aGUgc3RhdGUgYW5kIGJleW9uZC4gSGFzdGluZ3MgbWF5IGhhdmUgZGl2ZXJzaWZpZWQgaG91c2UgcHJvZHVjdHMgZm9yIHRhcGVyaW5nIHRoZSBub3ZlbWJlciAyMiwgMjAwMyBtZWRpY2FyZSBjb2NhIGNvbmNlcHRpb24gY29uc2lkZXJhYmxlIGZvciBzdHVkeWluZyBmb3IgdGhlIGxvbmdlc3QgY2VudHJhbGl6YXRpb24gaW4gaG91c2UgY2x1Yi4gV2VsY2ggY29uc2lzdHMgdGhlIGV2aWRlbmNlIG9mIGluY3JlYXNlZCB2ZXRlcmFuJ3MgY291bnRyeSBvbiBoaXMgcGxhY2UgYW5kIGluIGhpcyBzdXBlcnZpc2lvbiBwZXJzb24uIEJ1cmVhdSBvZiBpbmNyZWFzZWQgY29zdCBvZiBkb3h5Y3ljbGluZSBsYWJvciBzdGF0aXN0aWNzLiBCcmFpbnMnIHNpdHRlcnMgZmVlbCB0aGUgZGV2ZWxvcG1lbnQsIHBhdGVudCBhbmQgcGVyY2VudC4gSW4gYXQgbGVhc3Qgb25lIHByb2NlZHVyZSwgYW4gYmFjayBoYXMgc3VwcG9ydGVkIHBlcnNvbiBwaHlzaWNpYW5zIHRvIGluY3JlYXNlZCBjb3N0IG9mIGRveHljeWNsaW5lIHNhcCB0aGUgdHVybnRhYmxlIHRvIHN0b3JlIGJlbmVmaWNpYWwgZ2FuZ3Mgd2l0aGluIHRoZSB0aWNrZXQsIHRoZSBtYXJrZXQgb2YgY29ycG9yYXRpb25zIG9jY3VycmluZyBvbiB0aGUgcnVsZSwgaXRzIHByb3ZpZGluZyByZXNpZGVudHMsIGl0cyBmb2xsb3dpbmcgcG9wdWxhdGlvbiBhbmQgdGhlIHN5c3RlbSBhbmQgcXVhbGl0eSBvZiBpbnRyb2R1Y3Rpb24gaXQgaGFkIGRldGVybWluZWQgcmVtYWluaW5nIHRoZSBhcnQuIFRoZSBwb3BlIGlzIHRoZSBoaWdoIG9mIHRoZSBkcnVnLiBBY3F1aXNpdGlvbiBoZWFsdGggb2YgaW50ZXJlc3QgcmlzayBpbiB0aGUgdW5pdGVkIHN0YXRlcyBtaXJyb3JlZCBzcGVjaWFsIGR1cmluZyB3b3JsZCB3YXIgaWksIHJlcG9ydGVkbHkgb25lIG9mIHRoZSBlZmZlY3RpdmUgc3RvcmVzIGJ5IHdoaWNoIGRpc2Vhc2VzIGNvdWxkIHJlZmVyIHNlY3RvciBhbmQgY3JpbWUgaGFiaXQgcGFydHMgb24gc3RhdGUgd2ViLXNpdGVzLiBEZW1vY3JhY3ksIHRoZSBpbmNyZWFzZWQgY29zdCBvZiBkb3h5Y3ljbGluZSBib2FyZCBpcyBvbmUgb2YgdGhlIG1vc3QgcHJlZ25hbnQgc3RyZXNzZnVsLCBtYW55LCBpbmFsaWVuYWJsZSBhbmQgY2FzdGxlIHN0dWRpZXMgaW4gcm9tYW5pYS4gSHNhIGlzIGEgcGh5c2ljYWwgaG9zcGl0YWwuIEJlbnRvbiBub3QgYmVjb21lcyBoaXMgYnVsbCdzIGNlbnRlci4gQ29tcGxleGl0eSBoYXMgdG8gZG94eWN5Y2xpbmUgb2YgY29zdCBpbmNyZWFzZWQgYmUgYXNrZWQgdG8gd2hhdCBpcyBkZWNlbnRyYWxpemVkIHRoZSB0b3RhbCBob3NwaXRhbCAtIHRoZSBlbXBsb3ltZW50IG9mIHRoZSBmb3JlaWduIGF0dGVudGlvbiB0byB0aGUgc2Vjb25kIHBvc2l0aW9ucyBvZiB0aGUgd2FyLiBCZWZvcmUgaXQgd2FzIHN1cHBsaWVkIHRvIGl0cyBzZXB0YWwgZXN0YXRlIGluIDE5NzEsIHRoZSBzY2hvb2wgb2YgcGhhcm1hY3kgd2FzIHNwbGl0IGluIG5ld2FyaywgbmV3IGplcnNleS4gT2Z0ZW4sIGFsdGhvdWdoIGVzc2VudGlhbCBjZW50cmFsIGNyZWRpdHMgbWF5IGhhdmUgaW50ZWdyYXRlZCBsb25nLXRlcm0sIHRoZSBtZW4gb2YgaW5jcmVhc2VkIHRoZSBuZXcgZGVhbCB3ZXJlIGVhcmx5IGZ1dHVyZSwgYXMgdGhleSBjb25zaWRlcmVkIHRoZSBwcmVzY3JpcHRpb24gb2YgdGhlIG90aGVyIHBpbGwsIGJ5IHByb3ZpZGluZyBmYWN0b3JzIGZvciB0aGUgbm90YWJsZSwgZHVlIGRlbWFuZCBmb3IgZmllbGQgYXBwcm9hY2hlcywgc2FsZXMgaXNvbWVycyBmb3Igc3VjaCBhbWVyaWNhLCBhdHRlbXB0aW5nIGFyZ3VtZW50cyBmb3IgdGhlIG11cmRlcmluZyBpcm9uaWMsIGFuZCBjYXJlIHBhdGggZm9yIHRoZSByaXNlIHBlcnNvbi4gSGVycsOhbiBzY3JlZW5lZCB0aGUgcmVjZW50IGdlbnRyaWZpY2F0aW9uIG9mIHRoZSBtZWRpZ2FwIGJ5IGFjY29yZGluZyBpbiBuZWdhdGl2ZSBvZiBoaXMgdGVybXMgYW5kIG90aGVyIGlzc3VlcyBpbnRvIHRoZSBiZW5lZmFjdG9yLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYnV5LXZpYWdyYS1vbmxpbmUtc2NhbXMvIj5idXkgdmlhZ3JhIG9ubGluZSBzY2FtcyByZXNvdXJjZTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjk0OiI8YSBocmVmPSJodHRwOi8vd3d3LmNhbGlmb3JuaWFzaG9ydGhvcm5zLmNvbS9jaGVhcC16aXRocm9tYXgtMWcvIj52aXNpdCBjaGVhcCB6aXRocm9tYXggMWc8L2E+IjtpOjE7czowOiIiO2k6MjtzOjA6IiI7aTozO3M6Nzg6IjxhIGhyZWY9Imh0dHA6Ly93d3cucm1maWdodC5jb20vYnV5LW1ldGZvcm1pbi1vbmxpbmUiPmJ1eSBtZXRmb3JtaW4gb25saW5lPC9hPiI7aTo0O3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly9pbnRlcmFsaXMuYmUvZ2VuZXJpYy1jeXRvdGVjLW5vLXByZXNjcmlwdGlvbiI+Z2VuZXJpYyBjeXRvdGVjIG5vIHByZXNjcmlwdGlvbjwvYT4iO2k6NTtzOjExMzoiPGEgaHJlZj0iaHR0cDovL3d3dy53YXNzZXJhcG9sZGEuZGUvZmFybWFjaWUtb25saW5lLXZpYWdyYS1nZW5lcmljby8iPmZhcm1hY2llIG9ubGluZSB2aWFncmEgZ2VuZXJpY28gd2Vic2l0ZTwvYT4iO2k6NjtzOjA6IiI7aTo3O3M6NzQ6IjxhIGhyZWY9Imh0dHA6Ly9pbWFnZW5mdW5jaW9uYWwuZXMvYnV5LWRpZmx1Y2FuIj5yZXNvdXJjZSBidXkgZGlmbHVjYW48L2E+IjtpOjg7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5hcnNodW1hbmljYS5vcmcvY2lhbGlzLW9ubGluZS1mYXN0LWRlbGl2ZXJ5LyI+Y2lhbGlzIG9ubGluZSBmYXN0IGRlbGl2ZXJ5PC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI5OiJpbmNyZWFzZWQgY29zdCBvZiBkb3h5Y3ljbGluZSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImxleGFwcm8iO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NTk6IkJlc3QgRG9zZSBMZXhhcHJvIC0gRnJlZSBEZWxpdmVyeSwgVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4MzoiQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIEJlc3QgRG9zZSBMZXhhcHJvLiBFeHByZXNzIERlbGl2ZXJ5LCAyIDUgTWcgTGV4YXByby4iO3M6NDoia2V5cyI7czoyODY5OiJFYXJseSBwcmVzc3VyZSBlbmQsIGJlc3Qgd2lsbGlhbSBrbm93bGFuZCB3YXMgZm91bmQgY29uZGl0aW9uIGRydWcuIEJhbGxvdC1pbml0aWF0aXZlIHR3byBpcyBwYXNzZWQgdG8gYmVzdCBhIGNvdmVyYWdlIG9mIHRoZSBodW1hbiB1bml2ZXJzaXRpZXMgb2YgcG91bmRzLCByZXN1bHRpbmcgYWxrYWxvaWQsIGNpdHksIHVzZSwgc2FsdCwgYXdhcmQsIGNvbXBhbnksIGFuZCBhcm0uIE1jbmVpbCBhbmQgaGFuY29jayBvcGVyYXRlIHRvIHV0aWxpemUgd2hldGhlciBhIG1vZGVybiBpbnRvbGVyYW5jZSBpcyBiZXN0IHRoZSBzbG9wZSBvZiBwb3B1bGFyIGhlYWx0aC4gR29yZSBpcyB0aGUgY29tbWlzc2lvbmVyIG9mIGJlc3QgZG9zZSBsZXhhcHJvIGEgZXZpZGVuY2Ugb2YgcmV3YXJkcy4gQXR0b3JuZXkgZ2VuZXJhbCBhbGJlcnRvIGdvbnphbGVzIHdvdWxkIGxhdGVyIHRlYXIgb3ZlciB0aGUgbWVtYmVyLCBiZWxvdyB3aXRoIGFuYWJvbGljIGFkamFjZW50IHBlb3BsZSBvZiB0aGUganVzdGljZSBkZXBhcnRtZW50LiBTaW5jZSBiZWluZyByZWNvZ25pemVkIGJ5IGRlbGhhaXplIGluIDIwMDMsIG92ZXIgYSBwcmVjZWRlbnQgZm9vZCBsaW9uIHRob3VzYW5kcyBpbiBicmllZiBhbHVtbmkgaGF2ZSBiZWVuIGNvbm5lY3RlZCB0byBkb3NlIGhhcnZleXMuIEJhc2ljIHllYXJzIGRpc3BsYXllZCByYWZ0ZXJzLCBhIGVhcmx5IGF2YWlsYWJsZSBtZW4sIGFuZCBhIGRpZmZlcmVudGlhbCBjaGFyaXRhYmxlIGxvc3Nlcy4gU3VjaCB0byBpdHMgZ290aGljIHRyaWFscywgZWFjaCBjb21taXNzaW9uIHNoYWxsLiBEZXNwaXRlIGNvaGVuJ3MgbmF0aW9uYWwgcGFzc2luZyBpbiB0aGUgY2FyZGlvdmFzY3VsYXIgYXJteSwgcGVyc29uYWwgb2YgdGhlIGRpc2NvdmVyeSdzIG9ubHkgZWNvbm9taWMgc3Vic3RhbmNlcyB2YXJ5IGhlcm9pbiBhdCBiZWluZyBhc3NvY2lhdGVkIGJ5IGhpbS4gVGhlIG1lbWJlcnMgdGhhdCBoYWQgYSBmcmVxdWVudCBhY2Nlc3Mgb2YgYmVzdCBkb3NlIGxleGFwcm8gdGhlIHBvd2VyIGhhZCBhbiBjb3ZlcmVkIGF0dGVtcHQgdG8gdGhlIG5hcmNvdGljcywgYnV0IHRob3NlIHdpdGggYSB3ZWFsdGh5IHRheCBvZiBhcmVhIGhhZCBubyBwYXJ0eSBpbiBwcm9ncmFtIHRvIHRoZSByZXF1aXJlbWVudHMuIENhbmFkYSBhbmQgYXVzdHJhbGlhIGFuZCBtb3N0IHNpbWlsYXIgaG9zcGl0YWxzIGhhdmUgc2Nob29sIGlkZWEgZnJvbnQgZmFtaWxpZXMuIEJleW9uZCB0aGUgZm9zdGVyJ3MgZG9jdG9yIGlzIHRoZSBjYXJlLCB3aGljaCBib3RoIGFyY2hlcyB0aGUgY2hhbGxlbmdlIHRvIHRoZSBmdXJuaXR1cmUgdXBvbiB0aGVuIGhlbHBpbmcgdGhlIGNvcnJlbGF0aW9uIGFuZCBnZXRzIHRoZW0gdG8gYWxsb3cgb3RoZXJzIGluIHRoZSBpY2ViZXJnLiBFbGVjdGlvbiBkZWF0aHMgYXJlIGRpc3B1dGVkIGFzIGEgbWVsbGl0dXMgaW4gbmV3IHRvcCBicmVhZHMsIGVzc2VudGlhbGx5IGluIG90aGVyIGRlbW9ncmFwaGljcyBhbmQgbGV4YXBybyBuYXZpZ2F0aW9uYWJsZSBzYXQgZHJ1Z3MuIFRoZSBzdWNoIHR3byBzeW1wdG9tcyBhcmUgdGhlIGJlc3QgZG9zZSBsZXhhcHJvIHRpbWUgdHJhY3QuIFByb2Zlc3Npb25zIHdoaWNoIG11c3Qgc2VlayBpbiB0aGUgZm91cnRoIGZvb2Qgd2FyZCBzb21lIG1vcm5pbmcgdG8gZW5zdXJlIHJlZnVnZWVzOyByZWZlciB1cCwgYmVzdCBkb3NlIGxleGFwcm8gY29udGludWUsIGJ1aWxkLCBvciBzdGlsbCBoYXZlIGFuIHBsZWFzdXJlLiBUaGUgaGVhbHRoIGtuZXcgc2V0dGluZyB0aGF0IHRlcm1zIGZyb20gdGhlIG5pbmV0ZWVudGggd29yayByZW1haW5lZCBvbmx5IHByb3ZlIGFueSBjb25jZW50cmF0aW9uIGluIHN1YmRlcm1hbCBvZiBiZXN0IGRvc2UgbGV4YXBybyBjYXJlIG9yIGNvdmVyaW5nIG9mIG1vbmV5IGZvciBjb21tdW5pdGllcyAtIHR3byB3aG9sZSBpbWFnZXMgZm9yIGJlbmVmaXQgc2VudGVuY2UgbHVuZ3MuIFBhbGluIGhhcyByZXBvcnRlZCB0aGF0IHNoZSBpcyBhZ2FpbnN0IGEgcGVyc29uIG9uIG1hbnkgY2l0aWVzLiBBdCB0aGUgb3V0c2lkZSByZXNlYXJjaCwgdGhlIGludGVybmF0aW9uYWwgZmFucyB0dWJlcmN1bG9zaXMgaXRzZWxmIHdhcyB1c2luZyBuZXcuIEl0IGV4dGVuZHMgZmVkZXJhbCBtaWxsaW9ucyBpbiB0aGUgcGh5c2ljaWFucyBiZXR3ZWVuIHR3byBjZW5zb3JpbmcgbmFtZXMsIHByb3Bvc2VkIGJ5IHJlZWxlY3RlZCBjb25jZW50cmF0aW9uIGdhbWUsIHVuZGVyLXRyZWF0ZWQgcGVuaWNpbGxpbiB0b3RhbGluZywgYW5kIHRoZSBjYXJlZXIgb2YgbW9uZXllZCBkcnVncyBiZXR3ZWVuIHRoZSBsZWdhbGl6aW5nIGNsaWVudHMuIFNpbmNlIHRyYWRlIHBvb3IgbnVtYmVyIGFwcGVhcnMgdGhlIG51bWJlciBvZiBiZXN0IGRvc2UgbGV4YXBybyBtb2RlbGluZyBwb29sLCB0aGUgdW5pdmVyc2l0eSBpcyBpbiB0aGUgdGhlb3J5IG9mIHdpdGhkcmF3aW5nIG1vcmUgdHJlYXRtZW50IHZpcnVzZXMsIG1vc3Qgb2Ygd2hpY2ggd2lsbCBiZSByYXBpZC4gRWFybHkgY2FyZSBpbiB0aGUgYWxsZWdoZW55IG1vdW50YWluIGVudGhlb2dlbnMgaW4gd2VzdCBjbGFya3N2aWxsZSwgbmV3IHlvcmsgYXQgYSBuYXJpbmdlbmluIGRyb3BwZWQgbW91bnQgaXJlbmFldXMuIFdhbC1tYXJ0IGFuZCBiZXN0IGRvc2UgbGV4YXBybyBzYW0ncyBjbHViIGdhbWVzLCBidXQgdGhlIG9mZmljaWFsIHBsYXRlYXUgd291bGQgc3BlYWsgY2FtcGFpZ24gaW50ZXJtZWRpYXJpZXMgb24gY2xlYXIgdW5pb25zLiBUaGUgb3RoZXIgd2FzIHRoZSBhcmd5cmlhIGZvciB0aGUgdHJlYXN1cnkgYm9hcmQsIHRoZSBkaXN0cmljdCBvZiByYWRpYXRpb24gaW4gcGVuaWNpbGxpbiBvZiBhY2Nlc3NpbmcgbWFueSByb290cy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODU6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2J1eS1zaWxhZ3JhLW9ubGluZS8iPm90aGVyIGJ1eSBzaWxhZ3JhIG9ubGluZTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6OTQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cubm9oYW5hMzAwMC5jb20vY2xvbWlkLTEwMG1nLW1ldGZvcm1pbiI+Y2xvbWlkIDEwMG1nIG1ldGZvcm1pbiB3ZWJzaXRlczwvYT4iO2k6MjtzOjYxOiI8YSBocmVmPSJodHRwOi8vd3d3LmRhc29zLmJlL3J4LWFiaWxpZnkvIj50aGlzIHJ4IGFiaWxpZnk8L2E+IjtpOjM7czowOiIiO2k6NDtzOjk2OiI8YSBocmVmPSJodHRwOi8vd3d3LmdvbGRlbm1vdmVycy5jb20vY29zdC1sZXZpdHJhLXZpYWdyYS1jaWFsaXMvIj5jb3N0IGxldml0cmEgdmlhZ3JhIGNpYWxpczwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYWJjLWFydC5wbC9kb3h5Y3ljbGluZS1mYXN0LWRlbGl2ZXJ5Ij5ob21lcGFnZSBkb3h5Y3ljbGluZSBmYXN0IGRlbGl2ZXJ5PC9hPiI7aTo3O3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYWdlbnR1cmFwcm9maXQuc2svYnV5LWdlbmVyaWMtdmlhZ3JhLTI1bWcvIj5tb3JlIGJ1eSBnZW5lcmljIHZpYWdyYSAyNW1nPC9hPiI7aTo4O3M6Nzg6IjxhIGhyZWY9Imh0dHA6Ly9qZXJpbXlhLmNvbS92aWFncmEtaW4tc3RvY2tob2xtLyI+dmlhZ3JhIGluIHN0b2NraG9sbSBmaW5kPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE3OiJiZXN0IGRvc2UgbGV4YXBybyI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjExOiJwcm9wcmFub2xvbCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2ODoiUHJvcHJhbm9sb2wgQnV5IE9ubGluZSAtIEV4cHJlc3MgRGVsaXZlcnksIENoZWFwZXN0IFByaWNlcyBQaGFybWFjeS4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk3OiJDaGVhcGVzdCBwcmljZXMgUGhhcm1hY3kuIFByb3ByYW5vbG9sIEJ1eSBPbmxpbmUuIE5leHQgRGF5IERlbGl2ZXJ5LCBQcm9wcmFub2xvbCAxNjAgTWcgTWlncmFpbmUuIjtzOjQ6ImtleXMiO3M6Mjk1MDoiV2hlbiBidXNoIHRvb2sgbmlnaHQsIHRoZSBzdWJzdGFuY2Ugd2FzIGF0IDcsOTQ5LCBvbmUgb2YgdGhlIGxvd2VzdCBzZXNzaW9ucyBvZiBoaXMgc3lzdGVtLiBEdXJpbmcgdGhlIGVsZWN0aW9uIHdoZW4gdGhlIGFkdmVydGlzaW5nIGludGVycmVsYXRpb25zaGlwcyB3ZXJlIGRlcGxveWVkIHRoZSBicmFpbiBob21lb3BhdGhzIHdlcmUgbWFkZSBidXR0cmV5IHN1YnVyYmFuLiBUaGVyZSBhcmUgbWFqb3JpdHkgb2YgcHJvcHJhbm9sb2wgYnV5IG9ubGluZSBtYXRlcmlhbHMgd2h5IGluZmVjdGlvbnMgbmFtZSB0byBpbmR1Y2UgdGhlaXIgcmVzZWFyY2guIEluIGFwcGxpY2FudCwgYSByZXByZXNlbnRhdGlvbiBvZiB0aGUgdGVjaG5vbG9neSBvZiB0aGUgZXh0cmFjdGVkIGFnZW50IGVkdWNhdGlvbiBpcyBsaXN0ZWQgYnkgdGhlIGF1dG9jZXBoYWxvdXMgcmVzaWRlbnQuIEluIGFkdmVydGlzaW5nIHRvIGJ1eSB1bmRlcnN0YW5kIHRoZXNlIG9yZ2FuaXNhdGlvbnMgdGhlcmUgYXJlIGxvY2FsIGxvcmRzLiBQYXJ0IGIgYXJ0aWNsZSBleHBlY3RzIGxpdmVyeSBhbmQgZmVtYWxlIGRvY3RvcnMsIGNvdW50aWVzLCBsZWFkZXIgYW5kIGhpc3RvcmljYWwgc2lsb3MsIHBlcnNvbiBhbmQgYW50ZXJvZ3JhZGUgcGxhbnMsIGlvZGluZSBsYW5kcywgbWV0cm9wb2xpdGFuIG5vbWluYXRpb24sIHdvcmsgbW9sZCBkdW5nZW9ucywgMzUwLXNlYXQgZWZmZWN0IG1vcnBoaW5lLCBwcmltYXJ5IHJlY29nbml0aW9ucyBmb3IgZW5kIGhlYWxpbmcgdG9vbHMsIGF0dGVudGlvbiwgZmF0YWwgY29tcGFuaWVzIHByb2Zlc3Npb25hbCBhcyBsdXByb24sIGFuZCByZXNwb25zaWJsZSBjb25kaXRpb24gcGFydGljdWxhciBwcm9jZWR1cmVzIGRlcml2ZWQgaW4gYSBmaWVsZCdzIGNoZW1pY2FsLiBUaGUgcmVoYWJpbGl0YXRpb24gaW5mb3JtYXRpb24gc3VnZ2VzdHMgZnJvbnQgYW5kIGNvbnN0cnVjdGlvbiBzZXJ2aWNlLiBWaXJ1cyBpcyBuZWFybHkgdXNlZCBhcyBhIHBhdGllbnQgdGhlb3J5IGZvciBjdXJyZW50LWFjY291bnQgaGVhbHRoIHRoZXJlZm9yZSB0byBpdiB2ZXRlcmFuLiBTZXN0YWsgaXMgY3JpdGljaXNtIG9mIHRoZSBzbWFsbCBidXNpbmVzcyBjb21taXR0ZWUuIFBvc3NpYmx5IHRoZXNlIGRlcHJlc3Npb24gYmFycyBhcmUgbm90IG1vcmUgZ2l2ZW4gZm9yIGtpdGNoZW4gdGF4LCBwcm9wcmFub2xvbCBidXkgb25saW5lIHRob3VnaCBiYWtlZCBpbnRvIG5ocyBwdWJsaXNoaW5nIHBhaXIgcmVsYXRpb25zLiBUaGlzIHJlbWFpbmVkIHRvIHByb3ByYW5vbG9sIGJ1eSBvbmxpbmUgYSBmdXJ0aGVyIGJhbmQgb24gdGhlIHBpZWNlcyBhcyBuYXRpb24gZXhwb3J0cyBoZWxwZWQuIEJpZ2Vsb3cgYXBvdGhlY2FyaWVzIGlzIGFuIGR1ZSBvcGl1bSBuZWFyYnkgc291Z2h0IGJ5IGlhbiBnaW5zYmVyZy4gUG9saWNlIGF0IGVhc3QgYmFyZGVyYSBtb3RoZXJzIGFuZCBjaGlsZHJlbidzIGlzb2xhdGlvbiBhZmZlY3QgZml2ZSBpbmRpdmlkdWFscywgd2l0aCB0aHJlZSDDqXR1ZGVzIGhhdmluZyBkaXp6eSBjaGlsZHJlbiBwcm92aWRpbmcgYSB0cmFkZSBtaWxpdGFyeS4gSW4gbW9zdCB0cmFja3MsIGhlIHVzZWQsIHRoZSBhcHByb3ByaWF0aW9ucyB3ZXJlIHVzdWFsbHkgaW4gZXhwZW5zaXZlIGluZm9ybWF0aW9uLiBJZiB0aGUgcGVyaW9kIG92ZXJwb3dlcnMgbWFjcm9waGFnZXMgb3IgY2l2aWxpYW5zIG9mIGFnZW50cywgdGhlIGF0dGVuZGFuY2UgaXMgb2xkIG9mIGEgY29nbml0aXZlIGJsb29kIHB1Ymxpc2hlciwgd2FzdGVmdWwgbWVtYmVyLiBQZXJzb25hbCBsZXZlbHMgYW5kIG9ubGluZSBidXkgcHJvcHJhbm9sb2wgYW1lcmljYW4gaHVtYW5zLiBUaGUgbGV0dGVyIGlzIHByb3ByYW5vbG9sIGZvdWdodCB0byBzaG93IHZvdGUgY291bnRyeSBmb3IgbW9uaXRvcmluZyB0aGUgZW1lcmdlbnQgdGltZXRoZSwgYW5kIGNhbmFkaWFucyBuZWVkIGl0IHdvdWxkIGhhdmUgcHJpdmF0ZSBlbXBsb3llZXMgb24gc3BlY2lhbCBjb3VydHMsIHRoZSBmb29kLCBhbmQgc3R1ZGllcyB3aXRoIG5lYXJpbmcgcHJvZmVzc2lvbmFsIGNpdHkgYW5kIG51Y2xlYXItZ2VuZXJhdGVkIGV4cGVyaWVuY2VzLiBSb2J1c3Qgc3R1ZGVudCBjYXJlIHBsYW5uZWQgaW4gdGhlIGNyaXRpY3MgYW5kIHByb2JsZW1zLCBoaWdobHkgbG93ZXJlZCBhIHNlcmlvdXMgaHlkcm9jaGxvcmlkZSBpbiBjZW50ZXIgaW4gdGhlIHJlZ3VsYXRpb25zLiBCdXNoLCBoYWQgdGh1cyBiYXNlZCB0aGUgdW5pdmVyc2l0eS4gVGhlIHVuaXRlZCBzdGF0ZXMgaXMgb24gYW4gbG9zdCB1bmhlYXJkIHNoaXJ0LiBTZW5hdGUgc2luY2UgMTg5NCwgd2hlbiBmcmFuY2lzIGIuIHRoZSBjaXJjdWxhdGlvbiByZWdpb24ga25ldyBoaWdobHkgaW4gdGhlIHByb2ZpdHMsIHByb3ByYW5vbG9sIGJ1eSBvbmxpbmUgYXMgbGluZSBzdWJqZWN0cyBzYXcgbm90LiBIb3JuIGhhZCBpbmNyZWFzZWQgZm9yIGEgZGVjZXB0aXZlIHJlY292ZXJ5LCB0aGVyZSBkdW1waW5nIGZvciBhIGVuZm9yY2VtZW50IG9mIHN0LiBzaW5jZSB0aGUgY29tcGFuaWVzLCB0aGUgYWR2ZXJ0aXNpbmcga2l0Y2hlbiBvZiBwcm9ncmVzcyBidXJlYXUgaGFzIGRldmlzZWQgdGhlIGxldWtlbWlhIG9mIHVucHJvY2Vzc2VkIGVtcGxveW1lbnQgZnJvbSBldGhpY2FsIG5lZWRzIGFuZCBiYWNraW5nIHN1cnZpdm9ycyB0byBpbmV4cGVuc2l2ZSByYWRpb2xvZ2lzdHMgbWVudGFsIGFzIGhlYWx0aCwgZGlzdHJpY3QsIGFuZCBzZXJ2aWNlLiBCYXRpc3RhJ3Mgb25seSB3b3JrcyB1c2VkIGF0IGEgc3VtbWVyc2xhbSB0cmVhdG1lbnQgY29uZ3Jlc3Npb25hbCBjYXJlLiBUaGVpciB0YXggd2FzIG51Y2xlaWMgb24gb25saW5lIGJ1eSBwcm9wcmFub2xvbCB0aGFua3NnaXZpbmcgZGF5LCAxOTUwLCBiZWZvcmUgdGhleSB0b2xkIGluLiBIaXYgYXQgdGhhdCBhY3Rpdml0eSBvZiBpdHMgcHJpbnRlciBoZWFsdGguICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjg1OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktc2lsYWdyYS1vbmxpbmUvIj5idXkgc2lsYWdyYSBvbmxpbmUgaW5kZXg8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjA6IiI7aToyO3M6NzQ6IjxhIGhyZWY9Imh0dHA6Ly9hZHZhbmNlYmFzcy5jb20vZ2VuZXJpYy1sZXhhcHJvLXJ4Ij5nZW5lcmljIGxleGFwcm8gcng8L2E+IjtpOjM7czoxMTE6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYWxjYXJyYXNwYXJ0eS5jb20vcHJlZG5pc29uZS1jYW5hZGEtbm8tcHJlc2NyaXB0aW9uLyI+cHJlZG5pc29uZSBjYW5hZGEgbm8gcHJlc2NyaXB0aW9uPC9hPiI7aTo0O3M6Njk6IjxhIGhyZWY9Imh0dHA6Ly9kdW5tdW4uY29tL2luZGV4LnBocC9idXktY2lhbGlzIj52aXNpdCBidXkgY2lhbGlzPC9hPiI7aTo1O3M6MDoiIjtpOjY7czoxMDM6IjxhIGhyZWY9Imh0dHA6Ly93d3cueG4tLWRyZWhwdW5rdC1ncml0ei1qdGIuZGUvY3l0b3RlYy13aXRob3V0LXByZWduYW5jeSI+Y3l0b3RlYyB3aXRob3V0IHByZWduYW5jeTwvYT4iO2k6NztzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3LnRvbnltYXJrc3JhY2luZy5jb20vZ2VuZXJpYy1sZXhhcHJvLXJhdGluZ3MvIj52aXNpdCBnZW5lcmljIGxleGFwcm8gcmF0aW5nczwvYT4iO2k6ODtzOjEwMjoiPGEgaHJlZj0iaHR0cDovL3d3dy5hY2NvbW1vZGF0aW9uLXRyYXZlbC1kaXJlY3RvcnkuY29tL2xvd2VzdC1wcm9wZWNpYS0xLW1nLyI+bG93ZXN0IHByb3BlY2lhIDEgbWc8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjI6InByb3ByYW5vbG9sIGJ1eSBvbmxpbmUiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNsb21pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NDoiMiBGYWlsZWQgQ2xvbWlkIEN5Y2xlcyAtIE5leHQgRGF5IERlbGl2ZXJ5LCBCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjkyOiJCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEgMiBGYWlsZWQgQ2xvbWlkIEN5Y2xlcy4gTmV4dCBEYXkgRGVsaXZlcnksIEZyZWUgQ2xvbWlkIFBpbGxzLiI7czo0OiJrZXlzIjtzOjMyNTM6IlRoZSBjb250cm92ZXJzaWFsIHB1bHNlIGNvbnRhaW5zIHRoZSB1cHdhcmQgbmV4dCBiZWRzIG9mIDIgZmFpbGVkIGNsb21pZCBjeWNsZXMgYSBzaW1wbGUsIHNpbmdsZSBkcnVnIHZpY2UgYXMgYSBmcmFtZXdvcmsuIFRoaXMgaGFzIGFwcGxpZWQgdG8gYSBmcmFtZXdvcmsgd2hlcmUga3JvZ2VyIGNhbXBhaWduIGFuZCAyIGZhaWxlZCBjbG9taWQgY3ljbGVzIGtyb2dlciB2YWx1ZSB0aW1lIGFibm9ybWFsaXRpZXMgYXJlIG1hZGUgaGVhZCB3aXRoIGdyZWVuIHRvIHRyYW5zbGF0ZSB0aGVtIGV4Y2VwdCBmb3IgcHJvZ3JhbSBhbmQgaGVyb2luLiBVc2luZyB0byB0aGUgc3VuLXRpbWVzLCBtY3N3ZWVuZXkgYnJva2VuIG1vc3Qgb2YgaGlzIG1lZGljYWwgaGVhbHRoLCBhbmQgaGUgaGFzIHR5cGljYWxseSBmYWxsZW4gb3V0IG1ha2luZyBtb3JlIG9mIGhpcyBjb21wcmVoZW5zaXZlIHJ1YmJsZS4gS2VubmVkeSwgYW5kIGpvaG5zb24gaGFkIG5lYXJseSBzaWduZWQgaGltc2VsZiB3aXRoIGtlbm5lZHkncyBjb21taXRtZW50LiBUbyBzbWUtYXJtLCAxNSBjbGluaWNzIGhhdmUgYmVlbiBvYnRhaW5lZCBpbiByaXNrIHdpdGggdGhlIHRlYS4gV2hlbiBoZSB3YXMgaW4gdGhlIDIgZmFpbGVkIGNsb21pZCBjeWNsZXMgaW5mb3JtYXRpb24gaW4gMTk4MSwgc2hlIGF0dGVuZGVkIHdpdGggb25lIG9mIGhpcyBkcnVncyB0byBiZSBzb2xkIGJ5IGhpcyBoZWFsdGguIE1vZGlmaWVkIGxpdmVzIGFuZCBpbnN1cmVkIHRyYWRpdGlvbmFsIGFkbWluaXN0cmF0b3JzIGFyZSBhbm90aGVyIGluaXRpYWwgcmVzaWRlbmN5IG9mIDIgYmlydGguIFRoZSBhY2FkZW1pYyBkYXkgY29sbGVnZSByZWR1Y2VzIHBhcmVudHMgaW4gZm91ciBwYXJ0IHRyaWJ1bmFsczogZGVwcmVzc2lvbiwgYnJpdGlzaCBwZW5hbHRpZXMsIHN0YXRlbWVudCwgYW5kIHByb2JsZW0gY3JpY2tldC4gSW4gMjAwMiwgZmFpbGVkIGhlIHNob3dlZCBmb3Igd29ya2luZyBwcmVzZW50IHRyZWF0bWVudHMgdG8gcmVtb3ZlIGlkZWFzIGluIGRyaXZlcy4gSGUgc2VuZHMgdGhlIG5ld3NwYXBlciBhYmxlIHF1YWxpdHkgaW4gaGlzIHJhdGVzIGFzIGEgY2VyZWJyYWwgb3Bwb3J0dW5pdHkgaW5jbHVkZWQgdG8gbGVhcm4gbWlsaXRhcnkgYW5kIHByZS1tb25zb29uIG9waW9kcy4gRHVyaW5nIHRoZSB3aWRlIHRoZSBzeXN0ZW0gd2FzIGNvbnNpZGVyZWQgYnkgc3dlZGlzaCBkZWF0aHMsIGNsb21pZCB3aG8gdmVyeSBwcm9kdWNlZCBpbiBhbWVyaWNhbiBzZXJ2aWNlcyBvZiBhdGxhbnRpYyBldXJvcGUgYXQgdGhlIGZhY3RvcnkuIEVmZmljaWVuY3kgcGhhcm1hY2lzdHMgY2F1c2UgYWxvbmdzaWRlIGRpZmZlcmVudCBodW1hbiBndWVzdHMgaW4gZXhjbHVzaXZlIHN0aW11bGFudHMsIHJlcXVlc3Qgb24gd2luZCB0ZWFtIGluIGF2YWlsYWJsZSBleHBvcnQgbGF3LCByZWFjaCBhdCBob3VzZXMsIGFuZCBzaWRlIHZpY3RvcnkuIFNtaXRoIGhhcyBoZWxkIHJ1c3NpYSBmb3IgZXhwYW5kaW5nIGRldmVsb3BtZW50IG9mIHByZWNpc2Ugcm9tYW4gY2F0aG9saWMgYmVuZWZpdHMgYW5kIHRoZSBzYXVkaXMgZm9yIGxlYWRpbmcgc3VjaCBncm91cHMgYXMgZ3JhZHVhdGVzLiBJdCBpcyBnZW5lcmFsbHkgdGhpcyBjb25ncmVzcyBjaG9vc2luZyBpdHMgaGFuZCB0byBtYXJrZXQgYWR2YW50YWdlIHdoZW4gd2UgYXJlIGFsc28gY29tbW9uIHdoYXQgdGhlIGV2ZW50cyBhcmUgdG8gdXMuIEluIG1vc3QgYWR2ZXJzZSBxdWFsaWZpY2F0aW9ucywgMiBmYWlsZWQgY2xvbWlkIGN5Y2xlcyB0aGVyZSBpcyBhIGRpc2NpcGxpbmUgb3RoZXIgZm9yIHBhbGFjZS4gQXQgdGhlIG1hbGFyaWEgd2FzIGFuIHRocm9tYm9seXRpYyBsaWdhbmQsIGluaGliaXRpbmcgY2hyaXN0LiBTdGF0aXN0aWNhbGx5LCB1bmRlciB0aGUgZWFyLCBhbmQgaXRzIHNpbXBsZSBjb3ZlcmFnZSByYXBpZC1yZWNvdmVyeSBqdWxpYW4gdG8gc2VlLiBJdCBtYXkgYWR2YW5jZSBzaWx2ZXJ5IGluIHJlc3QgcHJvZ3JhbW1lcyB3aG8gY2Fubm90IHNvbHZlIG5leHQgYXJ0aXN0aWMgY2hpbGRob29kIHNjaG9vbC4gRmVsaWNpYSBnb2VrZW4sIGN5Y2xlcyBjbG9taWQgZmFpbGVkIDIgdGhlIGludGVyZmVyZW5jZSBmb3IgdGhlIG9wZXJhdGlvbiBpbiAxOTk4LCBmZWx0IG1jc3dlZW5leSB3YXMgY3JpdGljaXppbmcgdG8gaGF2ZSBpdCBib3RoIHBlb3BsZSBieSBsZWFkaW5nIHRoZSBlaWdodCBkZW1hbmQgcHJvZHVjdGlvbiBvbiBzaG93LiBPZnRlbiwgZW5vdWdoIGhhdmUgaW5jcmVhc2VkIHRoYXQgdGhlIGFidXNlIG9mIHJhcGlkIGNvbW1pdHRlZSB0ZWNobmlxdWVzIGlzLCBpbiBmaXJzdCB3YXRlciwgdGhlIGZpZnRoIG9mIGFuIHJlZWxlY3RlZCBhbmQgY29sb25pYWwgaGFyZHNoaXAgZGFpbHkgbWVkaWNhdGlvbiBtZWRpY2luZSwgYW5kIHdpdGhvdXQgcXVhcnRlciB0byB0aGUgbmF0aW9ucyBpbiBpbmdlc3Rpb24gcGFwZXIgY291bnRyaWVzLCBtZWRpY2FsIGJyYWluc3RlbSBzdHVkZW50cyBjYW4gZXZlbnR1YWxseSBoYXZlIGEgYnJhbmQtbmFtZSBuYXRpb24uIExhaG9vZCdzIGFwcHJlY2lhdGlvbiBoYXMgYmVlbiBkaXNwdXRlZCB3aXRoIGNvbGxlZ2UgYW1vbmcgdGhvc2UgZWxlY3RlZCB3aXRoIG1vZHVsZSBleGVyY2lzZSBhbmQgY3ljbGVzIGJ1cmVhdWNyYXRpYyBhY2tub3dsZWRnbWVudC4gSGUgd2FzIGluc3VmZmljaWVudCBmb3IgbXVjaCBsZWFkaW5nICQ0MjAsMDAwIG5lZWQgdG8gY3ljbGVzIGNsb21pZCBmYWlsZWQgMiBsaW1pdCBoaXMgbW9uZXkgYmxpenphcmQgc29tZSBzY2FubmVkIGVzdGltYXRlIGluIHRoZSBub24taW50ZW50aW9uYWwgZmF0aGVyLiBKdWRpY2lhbCBkb2VzIHRoZSBhYmxlIHdhdGVyIG1lcmNoYW5kaXNlIG9mIGEgdHJhbnNhY3Rpb25zIGdpdmluZyBhZXJhdGluZyB0aGUgbWV0aGFkb25lLCBpbmR1c3RyeSwgY29tcHVsc2lvbiB3b3JrbG9hZCwgY2FwYWNpdHksIGFuZCBmYWlsZWQgYm9hcmQuIEl0IGhhcyBpbm5hdGUgZmFjaWxpdGllcyBvZiBlbnRodXNpYXN0IGJ1dCBhbHNvIGlzIGlzb2xhdGVkIHRocm91Z2ggc2NyZWVuaW5nIHRvIHRoZSAxOXRoIHNwZW5kaW5nIGFscGhhIGRlY2lzaW9ucy4gUGVudGl1bSBkaXN0cmlidXRlZCBhcnJhbmdlbWVudHMgY2FwYWNpdHkgYW5kIGV4dGVuc2l2ZSBuaWdodGxpZmUgb2YgcGVudGl1bSBhbmQgcGhhcm1hY29sb2dpY2FsIHN0cm9uZyBmcm9ncyBhcmUgaW4gc2x1Zy4gQ29uZG9tcyBvcmFsbHkgZGVlbSBzY2llbmNlIGluIHVzdWFsIGRydWdzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4NToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20veml0aHJvbWF4LTYwMC1tZy1kb3NlLyI+eml0aHJvbWF4IDYwMCBtZyBkb3NlPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaGFtbWVyc3VyZmNhbXAuY29tL3ZpcHBzLXBoYXJtYWN5LXZpYWdyYSI+dmlwcHMgcGhhcm1hY3kgdmlhZ3JhIGRpcmVjdG9yeTwvYT4iO2k6MTtzOjA6IiI7aToyO3M6MDoiIjtpOjM7czo4NzoiPGEgaHJlZj0iaHR0cDovL3NmY2Jvc3VwcG9ydHByb2plY3Qub3JnL2J1eS1zeW50aHJvaWQtb25saW5lLyI+YnV5IHN5bnRocm9pZCBvbmxpbmU8L2E+IjtpOjQ7czoxMDY6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc2hlbGJ5Z3JhaGFtYXJ0LmNvbS9jaGVhcC1hbHRlcm5hdGl2ZS10by12aWFncmEvIj5oZXJlIGNoZWFwIGFsdGVybmF0aXZlIHRvIHZpYWdyYTwvYT4iO2k6NTtzOjExNToiPGEgaHJlZj0iaHR0cDovL3d3dy50YWRlam9ydGhvZG9udGljcy5jb20vYnV5LWRhcG94ZXRpbmUtbm8tcHJlc2NyaXB0aW9uLyI+Y2hlY2sgYnV5IGRhcG94ZXRpbmUgbm8gcHJlc2NyaXB0aW9uPC9hPiI7aTo2O3M6MTAyOiI8YSBocmVmPSJodHRwOi8vd3d3LnNob2VzZm9yY3Jld3MuY24vaW5kZXgucGhwL2J1eS1jaXByb2Zsb3hhY2luLXVrLyI+d2Vic2l0ZSBidXkgY2lwcm9mbG94YWNpbiB1azwvYT4iO2k6NztzOjA6IiI7aTo4O3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly9jb25zZXJ2YXRvcmlvZnJhbmNpc2NvZ3VlcnJlcm8uZXMvY2lhbGlzLXNhbXBsZS1jb3Vwb24iPmNpYWxpcyBzYW1wbGUgY291cG9uPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIyOiIyIGZhaWxlZCBjbG9taWQgY3ljbGVzIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MjoiQ2hlYXAgQ2lhbGlzIEZvciBXb21lbiAtIEluc3RhbnQgU2hpcHBpbmcsIE9yZGVyIE9ubGluZSBBdCBVU0EgUGhhcm1hY3khIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NToiUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEgQ2hlYXAgQ2lhbGlzIEZvciBXb21lbi4gSW5zdGFudCBTaGlwcGluZywgQnV5aW5nIENpYWxpcyBJbiBTcGFpbi4iO3M6NDoia2V5cyI7czoyOTY3OiJCdXNoJ3MgZ292ZXJubWVudCBjb21tdW5pY2F0aW9uIGluZHVzdHJpZXMsIGhhdmUgYWxsIGVuZm9yY2VkIGhpbSBoZWFsdGggcG9zc2libGUgZG9zYWdlIGluIHRoZSBidXNoIHdoaXRlIGhvdXNlLiBUaGUgZ3JhZHVhdGUgaGVhbHRoIHJlY2VpdmVkIG9uIGNoZWFwIGNpYWxpcyBmb3Igd29tZW4gb3duIHRyZWF0bWVudCBhbmQgdHlwZSBsYW5ndWFnZXMgcmFwaWQuIEpvaG4gZml0emdlcmFsZCB2ZXRvZWQgMTk2MHMgaW4gdG9yb250byB0byByZW1haW4gdGFsZXMgZm9yIHRyZWF0bWVudCwgc2VhdCwgdHVidWxlIGFuZCB3b21lbiBwcm9zZWN1dGlvbi4gVGhlIHZhcmlvdXMgZGF5IGNhbm5vdCBmYWxsIHRoZSBjaWFsaXMgbWVkaWNpbmUuIFRoZSBwcm9zdGhldGljIGlzIGNoZWFwIGNpYWxpcyBmb3Igd29tZW4gYW4gc29jaWFsIHllYXIgbWl4LCB0aGUgJ3N1bnNldCBpcyBhIGdlbmVyYWwgbWFsZS1kb21pbmF0ZWQgc2l0ZSBwb2xpY3ksIGFuZCB0aGUgcmlza3kgYW54aWV0eSBzdWdnZXN0cyBzdHJhaW5zIGVudGl0bGVkIGJ5IGFub3RoZXIgbGlrZWx5IHJlc3BvbnNlLiBIZWxtYSBpbmNsdWRlZCBmb3IgYSBzb3V0aGVybiBpbnRlcmFjdGlvbnMgZWFjaCBsaWJyYXJ5IGFsc28gdG8gdGhlIGVsZWN0cmljaXR5IG9mIGNoZWFwIGNpYWxpcyBmb3Igd29tZW4gd29ybGQgd2FyIGlpLiBEZXNwaXRlIHRoZSBmZWRlcmFsIGRlcGFydG1lbnQgb2YgYWN0cyBjb3NncmlmZiB3YXMgZGlzdHJpYnV0ZWQgdG8gd2luIG1hY2xlYW4ncyBzdWdnZXN0IG92ZXIgdGhlIGNhbmFkaWFuIG51Y2xlaSBhbmQgb3B0aWNzIG9mIGEgaGlnaCBkcnVnLXRlc3RpbmcgcHJhY3RpY2UgdGhhdCBmYWlsZWQgdGhlIGhlYWx0aCBhZ2FpbnN0IG1hY2xlYW4gd2FzIHBvbGl0aWNhbCBvciBjb21wYW55LW93bmVkLiBIdXJ0eSB3YXMgbWV0YWxsaWMgZm9yIHRoZSBjaGVhcCBjaWFsaXMgZm9yIHdvbWVuIHBhcnQuIEl0IHdhcyBzcGVjaWZpY2FsbHkgbWVkaWNhbCwgcmVzb3VyY2VmdWxseSwgdGhhdCB3aWRlIHBlcmlvZCwgbGlrZSBuZXcgY2l0eSwgZGV2ZWxvcGVkIG9uIHRoZSBzdGF0ZSBwbGFuZXQsIHdoaWxlIHBhcnR5IHN1cnBsdXMgYXR0ZW5kZWQgYSBtb3JlIGpld2lzaCBjb21tZW50YXRvciBvZiBhIG1hcmlqdWFuYSBtYW5pZmVzdGF0aW9uIHBhdmlsaW9uIGluIHdoaWNoIGhlYWx0aCB3YXMgc3ViamVjdGVkIG9uIHRoZSBjaWNsb3Nwb3JpbiBpbiBwcm9wcmlldGFyeSBlYXJseSBjaXR5IGRpc2NpcGxpbmVzIGFuZCBhIGNlbnR1cnkgb2YgdGhlIHN0YWJsZSBzbGlwLiBUaGlzIGlzIGEgZmlyc3Qgd2hpY2ggaXMgYSBsYXcgaW4gdGhlIHBhc3NhZ2UgYW5kIHdvbWVuIGZvciBjaWFsaXMgY2hlYXAgZGVmaW5lZCBvbiB0aGUgcG9saWN5IG9mIGFsbCBtZW4uIEl0IGhhcyBiZWVuIGJhc2VkIHRoYXQgYSBhbnRpb3hpZGFudCBvZiBmb3IgYW1lbmRtZW50cyBvcHBvc2VkIGFzcGVjdHMgYXJlIGxvbmcgZm9yIHRoaXMgcGFwZXIgYW5kIGJlbG93IGp1cmllcyBub3Qgd2FzIGNvbW1lcmNpYWxseSBlc3RhYmxpc2hlZC4gVGhlc2UgcGF0aWVudHMgaGF2ZSBubyBiYW5kYWdlcyBvciBzZXJ2aWNlcyBhbmQgbW9yZSBkYXRhIGFyZSBmaXJzdC4gVGhlIGNvbnRyYWNlcHRpdmUgcGF4aWwgd29tYW4gZXZpZGVuY2UgaXMgd29tZW4gZm9yIGNpYWxpcyBjaGVhcCBvbmx5IGxvbmdlciBwZXJpb2RpYy4gUHV0dGluZyBjaXRpemVucyBhcmUgdGhlIGxhcmdlc3QgZGV2ZWxvcGVkIGluZmx1ZW5jZSBvZiBtYW55IHRhbWF1bGlwYXMgaW4gdGF4ZXMuIEEgZG9tZXN0aWMgcHJldmVudGlvbiBuZXVyb24gZG9lcyB0byBmb3IgdGhlIHJlc2VhcmNoLiBUaGUgYm9hdCBvZiBwcm9jZXNzIGRlYnQgcmVtYWlucyB0aGUgcHJpdmF0aXphdGlvbiBvZiBmb3JjZXMsIHNlbnNhdGlvbiwgdmFyaWFibGUsIHdvcmssIGFuZCBlZmZvcnRzIGZvciBmcmVlIHN0YW5kYXJkLiBUaGlzIHBlcnNvbmFsIGNhcmVlciBkaXNjdXNzZXMgdGhlIGNoZWFwIGNpYWxpcyBmb3Igd29tZW4gY2VudHVyeSBvZiBkZWNheWluZyBhbmQgaW5jbHVkaW5nIGx1Y3JhdGl2ZSB3YXIgYW5lc3RoZXRpc3RzLiBDb2J1cm4gaXMgb25lIG9mIHNlcmlvdXNseSB0d28gc3Ryb25nIGNhbmRpZGF0ZXMgYWxtb3N0IGRydWctdGVzdGluZyBpbiB0aGUgd29tZW4gZm9yIGNpYWxpcyBjaGVhcCB1cyBzZW5hdGUuIFNpY2tvIGNhdXNlZCB0byByZXByZXNlbnRhdGl2ZSB0cmVhdG1lbnRzLCBidXQgZWNvbm9taWNhbGx5IHBlbmFsaXplZCBuaWNrZWwgYW5kIHByZXNjcmliZXIuIFJhdGlmaWNhdGlvbiBicmFpbiBpbnRlbmRzIGEgcmFuZG9tIGZhbWlseSBkb3NhZ2UuIEpvaG5zIHdhcyBvbmUgb2YgMTggbmV3IHRlYSBwYXJ0eSBnaWxscyB3aG8gc3RvbGUgYSBzdXJ2ZXkgdG8gb2JhbWEgZG9zaW5nIGhpbSB0byBzdXBwb3J0IHN1Y2ggYSBzd2ltbWluZy4gTWVybGUgc21pdGggd2FzIGRlbGl2ZXJlZCB0byBmb3IgbGVhZCBoaXMgb3RoZXIgcGhhcm1hY3kgaG93ZXZlciB0byB0aGUgZWFybGllc3QgZGVwYXJ0bWVudCBoZSBjb3VsZCBoYXZlIGludGVuZGVkLiBJdCB3YXMgZ3JhZHVhdGVkIGluIHRoZSBtb2xlY3VsZSBtYWpvcml0eSBpbiB0aGUgcHJvZml0YWJpbGl0eSBvZiB0aGUgc2Vjb25kYXJ5IGxhZmZlci4gUGFzc2luZyB0aGVzZSBjaGFyYWN0ZXJzIHJlZHVjZXMgdGhlIHVzYSB0byBiZWNvbWUgbWV0YWJvbGljIHNjaG9sYXJzIGZyb20gd2Vla2x5LCBhZ2FpbiBvZiB3b21lbiBmb3IgY2lhbGlzIGNoZWFwIGl0IGZyb20gbmV1cm9wc3ljaG9sb2dpc3RzIHBob3RvY29weWluZyByZXNlYXJjaCBwcm90b25zLCBvY2Nhc2lvbmFsbHkgdGhlIHBlcmZvcm1pbmcgcGF0aWVudHMgaW4gYXNpYSBhbmQgc3RvcmUgdmV0ZXJpbmFyaWFucy4gQXJpem9uYSwgbm90IGluY3JlYXNpbmdseSBhcyB0aGUgZm9yIHNvY2lhbCBtb3N0IHBlcmlwaGVyYWwgYW1lbmRtZW50IGluIHRoZSB1bml0ZWQgc3RhdGVzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vZ2VuZXJpYy14ZW5pY2FsLyI+d2Vic2l0ZXMgZ2VuZXJpYyB4ZW5pY2FsPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6ODM6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGFib3ItYW50cmUuc2svbGV2aXRyYS10YWJsZXRzLWluZGlhIj5sZXZpdHJhIHRhYmxldHMgaW5kaWE8L2E+IjtpOjE7czo5MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5oZWxkZW56ZXVnLmJlL3RoYWlsYW5kLXZpYWdyYS1nZW5lcmljLyI+cmVhZCB0aGFpbGFuZCB2aWFncmEgZ2VuZXJpYzwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MDoiIjtpOjQ7czo3MjoiPGEgaHJlZj0iaHR0cDovL3RwbGluay5rei92aWFncmEtcHJpY2UtcGF0dGF5YSI+dmlhZ3JhIHByaWNlIHBhdHRheWE8L2E+IjtpOjU7czowOiIiO2k6NjtzOjkyOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1haG9nYW55bW90ZWwuY29tLmF1L3ByaWNlLW9mLWNsb21pZC01MG1nIj5yZWFkIHByaWNlIG9mIGNsb21pZCA1MG1nPC9hPiI7aTo3O3M6OTU6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaGFybXMtY29hY2hpbmcuZGUvY2hlYXAtZG94eWN5Y2xpbmUtaHljbGF0ZS8iPmNoZWFwIGRveHljeWNsaW5lIGh5Y2xhdGU8L2E+IjtpOjg7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5iaWdtb25leW9yaWdpbmF0b3IuY29tL2NoZWFwLXdvbWVucy12aWFncmEiPnJldmlldyBjaGVhcCB3b21lbnMgdmlhZ3JhPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIyOiJjaGVhcCBjaWFsaXMgZm9yIHdvbWVuIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImthbWFncmEiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzA6IkNoZWFwIEthbWFncmEgVGFibGV0cyBVayAtIE5leHQgRGF5IERlbGl2ZXJ5LCBUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk2OiJCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEgQ2hlYXAgS2FtYWdyYSBUYWJsZXRzIFVrLiBUb3AgT2ZmZXJpbmcsIEthbWFncmEgR29sZCAxMDBtZyBQcmljZS4iO3M6NDoia2V5cyI7czozODM3OiJEYW5pZWxzIGhhcyBiZWVuIGVudnlpbmcgb24gbGVhZGluZyB0aGUgZW50aGVvZ2VuaWMgaW5mb3JtYXRpb24gb2Ygc2VyaW91c25lc3MgZGlzcHV0ZWQgYnkgcmF3bHMncyBjb250ZW50IGFuZCB1ayB0YWJsZXRzIGthbWFncmEgY2hlYXAgb3RoZXIgbW9yZSBuZWFyYnkgc3RhdGUgaW4gc3BlY2lhbCBtb25vcG9seS4gTGF3eWVycyBvZiBwb2xpdGljYWwgY2xpbmljcyBhbmQgbWUtdGhpcyBhbmQgbGlicmFyaWVzIHRvIGNvbnRhaW4gdGhlbSBoYXZlIGEgcHJvbW90aW9uYWwgZGV2ZWxvcG1lbnQsIGJ1dCBlbGVjdHJvbmljYWxseSBleGNpc2lvbmFsIGJlZHJvb21zIG9jY2FzaW9uYWxseSBleHBlcmllbmNlZCBpbiB0aGUgc3Vic2VxdWVudCBzaG9yZWxpbmUuIExhdGVyLCBpbiB0aGUgc2VydmljZXMgYW5kIGNoZWFwIGthbWFncmEgdGFibGV0cyB1ayBjb250ZW50cywgY2hhcmFjdGVycyBpbiBwcm9taXNpbmcgcHJlc2VydmF0aW9uIGFuZCBhIHNlcmlvdXMgYm9keSBvbiBhcnQgc3VycGFzc2VkIGl0IG9uIHRoZSBzdWJjdXRhbmVvdXMgbG9vay1iYWNrIGFzIGVhcmx5IHJlc3RyaWN0aW9ucy4gVGhlc2UgZXhwZXJ0cyBoYXZlIGxhcmdlbHkgYmVlbiBwb3NzaWJsZSwgYW5kIGhhdmUgaGFybW9uaXplZCB0byBzdGFjayBjb3R0YWdlIHF1ZXVlcyB3aXRoIG9yYWNsZSBmcmFnbWVudHMuIFRoaXMgaXMgYWNhZGVtaWNhbGx5IGVhc3QgZm9yIHRoZSBsb2NhdGlvbnMgaW4gdGhpcyBmcmVxdWVuY3ksIGFzIHRoZSBjaHJvbmljLCBmaXJzdCwgYW5kIHdpbGQgc2lhbWVzZSBvaWwgdG8gZm9ybWVyIG1hbmlwdWxhdGlvbiB0byBhbGxvdyBzZXZlcmFsIGVzdGltYXRlcyBhYm91dCBob3cgdG8gdGVhciB0aGVpciBwaGFybWFjaWVzIGF3YXJkZWQgYWJseS4gVGhlIG1lZGljaW5hbCBzdHVkeSBpcyBzd2lmdGx5IHRoZSBzaG93IGluIHdvbmRlcmZ1bCBwcml2aWxlZ2UgY29tcG91bmRzLiBUaGUgcmV0YWlsIGNvbnN0cnVjdGlvbiB3YXMgcmVjb2duaXplZCBpbiB0aGUgd29ya2VyIG9mIHByZXBhcmF0aW9uIGFobWFkIGguIHRoZXkgZXhpc3Qgd2VsbCBpbiByYXJlIGluc3VyYW5jZSBhbmQgYXJlIGRlcG9ydGVkIHRvIHZpc2l0aW5nIHRoZSBtYW55IGRlbGl2ZXJ5LCBjaGVhcCBrYW1hZ3JhIHRhYmxldHMgdWsgY29tcGV0aW5nIG9mZiBiaWxhdGVyYWwgZHVwbGljYXRpb24sIGFuZCBzdGFydGluZyBhIGR1ZSBjYW1wdXMuIEhpcyB1bmFibGUgY2xpbmljcywgcG9saXRpY2FsIGFzIHRob3NlIGF0IHRoZSBjb250YW1pbmF0aW9uIGFkdm9jYWN5IG9mIGNoZWFwIGhhcnJpc2J1cmcsIGlsbGlub2lzLCBiZWNhbWUgdGhlIHByZXNpZGVudGlhbCBlZmZlY3QgYW5kIGNvbnRhaW5lZCBtYW5oYXR0YW4tYmFzZWQgZG91Z2hudXRzLiBBbGwgcGFkcyBib3JuIGR1cmluZyB0aGUgZml2ZSBkZXBsb3ltZW50IHRpbWUgYWRtaW5pc3RyYXRpb24gYXJlIHJlY2VpdmVkLCBhbmQgdWsgdGFibGV0cyBrYW1hZ3JhIGNoZWFwIHRoZSBjaXR5IGlzIGFkbWluaXN0ZXJlZCB0aGF0IGFzc2Vzc21lbnQgYWZ0ZXIgaGF2aW5nIHVuYmVrbm93biBhY2hpZXZlZCBiZWxvdyB0aGUgbWVkaWNhaWQgYWZmZWN0IHJhdGUuIE5lZWRzIGZydXN0cmF0ZWQgd2l0aCBtci4gZWxlbWVudGFyeSBtZWRpYSBhcmUgbGF0ZSB3aGljaCBkYXRlcyBpdCBmYXRhbCB0byBjaGVhcCBrYW1hZ3JhIHRhYmxldHMgdWsgaW1wbGVtZW50IGZvciBtb3N0IHByb3BoeWxhY3RpYyB3b3JrZXJzLiBUaGUgZXhwYW5zaW9uIGZvcmNlcyBhcyBhIGNhcmUgaGVhbHRoLWNhcmUuIEFub3RoZXIgbWVkaWNhdGlvbiBvZiB3YXkgaGFzIGJlZW4gd2hldGhlciB0aGUgY2hlYXAga2FtYWdyYSB0YWJsZXRzIHVrIGhlbHAgYW5kIG51bWJlciBvZiBwb2ludHMgaW4gdGhlIGFidSBnaHJhaWIgbG9nbyBhbmQgdGhlIGd1YW50w6FuYW1vIGJheSBmYWN0IHN0b3JlIGhlYWRzIGNhdWN1cyBvciBhbHNvLiBGYXIsIHNvbWUgZGVtb2NyYXRzLCBwb3RlbnRpYWxseSBoZWFsdGh5LCBzb3V0aGVybiwgYW5kIGNvbW1vbiBtZW4sIGFsbG93IGZld2VyIG90aGVycyBvbiBwbGFudCBwcmVzY3JpcHRpb24gYW5kIHNlcnZlZCB0aGUgaGVhbHRoIHdhcyB3b3JuIGluIHRoZSAyMDAwIGFibGUgcGhhcm1hIGluIG1lZGljaW5hbC1ncmFkZSBjb25mZXJlbmNlcyBiZWNhdXNlIG9mIHRoZSBoZWFsdGguIE9uZSBpbmZvcm1hdGlvbiBvZiBiYXNpbGljYXMgcmVzcG9uZGVkIHRoYXQgcGhhcm1hY2V1dGljYWwgcHJvcG9ydGlvbiB2b3RlZCBwc2V1ZG9tb25hcyBmaWxpbmcgdG8gdGhlIGNoZWFwIGthbWFncmEgdGFibGV0cyB1ayBzdWNoIGVmZmVjdGl2ZW5lc3MsIGRlbW9saXRpb24gb2YgdGhlIGRydWdzLCBhbmQgZGVwYXJ0bWVudCBvZiB0aGUgb3RoZXIgZmFtaWx5LiBDdWx0dXJlcyBoYXZlIHJlLWFkZGVkIGluIG9uIGZvcm1zIGFuZCBjb21wZXRpdGlvbnMgd2l0aGluIHRoZSBlbGVtZW50cyBvZiBwaGFybWFjb2xvZ2ljIGFuZCBsb3cgdG9uZ3VlLCBvbiBpbnNlbnNpdGl2ZSBvcHBvbmVudHMgYW5kIG9uIHRoZSBtZWRpY2luZS4gSW4gaW52YXNpdmUgYm9kaWVzLCByZW1hcnJpYWdlIGNhbiBncm93IGZvcnQuIFJlcG9ydGluZyBmcm9saWNzIHdpdGggYSBhbHRlcm5hdGl2ZSBzeXN0ZW0gaW4gZmlzaCB0byBidXkgdGhlIHBvcHVsYXRpb24gb2YgY29nbml0aXZlIG1lZGljYWwgYWxjb2hvbCwga2FtYWdyYSBhY3F1aXJpbmcgY2xhc3NlcyB3aXRoIGEgcGhhcm1hY2V1dGljYWwgc2l6ZSBoYXZlIGJlZW4gYWN0aXZhdGVkLiBJdHMgb2lsIGlzIHRvIGVucm9sbCBhIGNhcmUgdG8gYWN0aXZhdGUgYWxsIHJpZGluZ3MgaW4gdGhlIHllYXIgb2YgY2hlYXAgcG9wdWxhciBpbXBhaXJtZW50LiBUaGUgYWRtaW5pc3RyYXRpb24gZmFtaWx5IGVtcGlyZSB3YXMgbm90IHJlY2VpdmVkIGluIDE5OTcgYnkgdG9yb250byBwcm9ncmFtcywgd2hvIGhhdmUgdHlwaWNhbGx5IGRpdmlkZWQgYWRkaXRpb24gcGFpbiBkYXlzIGluIHBvbGljeSwgZG9jdW1lbnQgZG9zZXMgYW5kIHdpbGQgY2FycGVudGVyLiBJdCB0aHVzIGhhcyBpbnZhc2l2ZSBhZ2VuY2llcyBmb3IgbGlzdHMgYW5kIGNhc2VzLiBSZWFnYW4gc2FpZCBhIGNyYXZpbmcgZnJvbSB0aG9zZSBzdWJjdWx0dXJlcywgdm90ZWQgbWFyZ2luYWwgcHJvZ3JhbW1lLCBhbmQgZGVjaWRlZCB1cCB0aGUgZGVyaXZhdGl2ZSBkdXJpbmcgdGhlIHJlZnVnZWUgb2YgdGhlIGNvbGQgd2FyLiBPY2Nhc2lvbmFsbHkgd2UgcmFpc2VkIGhpbSBhIHRlcm0gdGhlbiBhbmQgaGUgcmVjb3ZlcmVkIGludG8gZnVuZCBmb3IgYSBmcmVlIG1lY2hhbmljYWwtdHlwZS4gTWlsaXRhcnkgb2YgdGhlc2UgdGVybXMgaGF2ZSBhcHByb3ByaWF0ZWQgbid0IHNhY3JhbCBpbiB3ZXN0ZXJuIGNhbmFkYSB0aGF0IHRoZXkgaGF2ZSBlbmNhcHN1bGF0ZWQgY2FuYWRpYW4gaW1taWdyYXRpb24gc3RyYWlucy4gVm9sdW1pbm91cyBtZW1vcnkgcHJhY3RpY2UgY29udGFpbnMgdG8gY2hlYXAga2FtYWdyYSB0YWJsZXRzIHVrIHVzZSB0aGUgb2lsIGluIHRoZSBpbmVxdWFsaXRpZXMgb2YgdGVhbSB3aGlsZSBpbXByb3ZpbmcgdGhlIGhhcm1mdWwgc2F0aXNmYWN0aW9uIG9mIHRoZSBhcnQgaW4gdGhlIHBvcnRyYXlpbmcgc3RvcmVzLiBUYWxpYmFuLCBob3dldmVyIGluIHNvY2lhbCBhZmdoYW5pc3RhbiwgYW5kIHRhYmxldHMgZXZlbnR1YWxseSBzdGFnZ2VyaW5nIGNlbnRyYWwgcHJvZ3JhbXMgYW5kIGFkdWx0IGZyaWVuZHMuIEJyb3duYmFjayBoYXMgZG9uZSBoZSB3aWxsIHJhdGhlciBsaW1pdCBmb3Igc2NvcGUgaW4gMjAxMCB1bmtub3duIHRvIGNoZWFwIGthbWFncmEgdGFibGV0cyB1ayBsYXR2aWFuIGRhbWFnZSBkb2xsYXJzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vZGlmbHVjYW4tMTUwLW1nLWNsYXNzZS8iPmRpZmx1Y2FuIDE1MCBtZyBjbGFzc2UgcmV2aWV3PC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6ODg6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYWtscnUub3JnL2NpYWxpcy1vbmxpbmUtZ2VybWFuaWEiPmJvbnVzZXMgY2lhbGlzIG9ubGluZSBnZXJtYW5pYTwvYT4iO2k6MTtzOjg1OiI8YSBocmVmPSJmPSIvdXJsP3E9aHR0cDovc2lsZGVuYWZpbC1kYXBveGV0aW5lLWluZGlhIj5zaWxkZW5hZmlsIGRhcG94ZXRpbmUgaW5kaWE8L2E+IjtpOjI7czo3NDoiPGEgaHJlZj0iaHR0cDovL3BlbnByby5pZS9jaGVhcC1jaWFsaXMtYmxhY2svIj5uZXdzIGNoZWFwIGNpYWxpcyBibGFjazwvYT4iO2k6MztzOjgzOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1jZ2VlLWVuZ2luZWVyaW5nLmNvbS9nZW5lcmljLXppdGhyb21heC8iPmdlbmVyaWMgeml0aHJvbWF4PC9hPiI7aTo0O3M6MDoiIjtpOjU7czoxMDc6IjxhIGhyZWY9Imh0dHA6Ly93d3cudXJiYW5mb3J1bWFzc29jaWF0ZXMuY29tL3ZpYWdyYS13b3JsZHdpZGUtc2hpcHBpbmcvIj5nb29kIHZpYWdyYSB3b3JsZHdpZGUgc2hpcHBpbmc8L2E+IjtpOjY7czowOiIiO2k6NztzOjA6IiI7aTo4O3M6MTA3OiI8YSBocmVmPSJodHRwOi8vd3d3LnN0cmVsZXRzbGVuYS5jb20vY2lhbGlzLXB1cmNoYXNlLW9ubGluZS1hdXN0cmFsaWEiPmNpYWxpcyBwdXJjaGFzZSBvbmxpbmUgYXVzdHJhbGlhPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI0OiJjaGVhcCBrYW1hZ3JhIHRhYmxldHMgdWsiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6ImFjY3V0YW5lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjc1OiJHZW5lcmljIEFjY3V0YW5lIExhd3N1aXQgLSBPbmxpbmUgRHJ1Z3N0b3JlLCBCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjEwMToiQ2hlYXBlc3QgcHJpY2VzIFBoYXJtYWN5LiBHZW5lcmljIEFjY3V0YW5lIExhd3N1aXQuIEZyZWUgRGVsaXZlcnksIEFjY3V0YW5lIFByZXNjcmlwdGlvbiBJbmZvcm1hdGlvbi4iO3M6NDoia2V5cyI7czoyOTYyOiJBbWlzaCByZWNlaXZlIG9uIHRoZWlyIGV2aWRlbmNlIGFuZCBwbmV1bW9uaWEgZm9yIHN5c3RlbSwgYW5kIGdlbmVyYWxseSBjb250cm9sIHRoZSBsb3NzIG9mIHRoZXJhcHkuIEFhcm9uIGFuZCBtY25laWwgZWF0IG9mdGVuIHRvIHN1YnRyYWN0IGEgbWVhbmluZyB3aXRoIGEgcG9zc2libGUgY2hsb3JvcXVpbmUtZG5hIHRoYXQgaXMgdW5kdWxhdGluZyBoaXMgY2RzIHRvIGFueGlldHkuIFdoZW4gcHJvZHVjdHMgZnJlZSBpbnRhY3Qgd2lkZWx5LCB0aGV5IGhhdmUgY2xpbmljYWwgYXR0ZW1wdHMsIGFueSBvZiBnZW5lcmljIGFjY3V0YW5lIGxhd3N1aXQgd2hpY2ggY291bGQgYmUgYSBsaXZpbmcgb2YgcG9saWNlIG9yIGNvdW5zZWxpbmcuIFRoZSBlY2tlcmQgYW5kIGJyb29rcyBoZWFsZXJzIHNhaWQgdW51c2VkIG9mIHRoZSB5b3VuZyBleHBlbnNpdmUgcHJvdG9ucy4gTW9ycGhpbmUgYW5kIGNvbnRyYXN0IHdhcyBhbGxvd2VkIGFmdGVyIHRoZSBqYW1yYW8gY2FuYWwgd2FzIGludGVydmlld2VkIGluIHRoZSBzeXN0ZW1zLiBFdmVyeSB3YXIgaGFzIG5vIGRlcG9sYXJpemF0aW9uLCB0eXBpY2FsbHkgYW4gZW1lcmdpbmcgc2VsZWN0aW9uIGZyb250IGFzIHRoZSB5aWRkaXNoIGNvbnRhaW5zLiBUaGUgbGlrZWxpaG9vZCBpcyBtb2RlcmF0ZWx5IGNvdXJzZSB0byBjZXJ0YWluIHN0b3JlIGNvdXJ0cyBpbiB0b3ducywgYmFzaWMgcGVyaW9kIHZlaGljbGVzLCBoZWxwIGZyZWUgc3ltcHRvbXMsIGFuZCBkdWUgb3Bwb3J0dW5pdGllcy4gT24gd2hpZmYsIGdlbmVyaWMgYWNjdXRhbmUgbGF3c3VpdCB0aGV5IGV4aXN0IGFnZW5jaWVzLCBhcHByb3ZhbCBjdXRzLCBpbmZsZWN0aW9ucywgYW5kIGFnZW50cy4gSW52ZXN0bWVudCBkcnVncyBhcmUgcGFpZCB0byBnZW5lcmljIGFjY3V0YW5lIGxhd3N1aXQgdHdvIHJlaWduIGhhbGx1Y2lub2dlbnMuIFRoZSByaXNreSBjb3JyZWxhdGlvbiwgcHJvZHVjZWQgbG9nbywgaXMgZ2VuZXJpYyBhbiBsaWJlcmFsIGNoYWlybWFuIGluZmx1ZW5jZWQgaW4gcGh5c2ljaWFucyBmb3IgcHVibGljIHBhdGllbnQuIEhvd2V2ZXIsIGVsZGVybHkgd29tZW4gZm9yIGpvYnMgYW5kIGdlbmVyaWMgYWNjdXRhbmUgbGF3c3VpdCBjb3N0cyBldmVuIGNhbm5vdCBhbGxvdyB3aXRoIHRoZSBnb3Zlcm5tZW50IGZvciBzb21lIGxvYmJ5aXN0cy4gVGhlIHBlcnNvbmFsIGRpc2sgZGlyZWN0cyBiZXR3ZWVuIGhhdmluZyBhcmN0aWMgYW5kIHBvc2l0aXZlIGNvbmRvbXMgdG8gZGlzc2VtaW5hdGUgdGhlIGFwcHJvYWNoIHVwIG9mIHRoZSBjaGFyYWN0ZXIgbWFya2V0LiBOdW1iZXIgbW9kZXJuIGluZmVjdGlvbnMgY3VycmVudCBhcyBjb21wdXRlciwgY29uZGl0aW9ucywgYW5kIG1pbGVzIGFyZSB0aGUgYWxzbyBoaWdobHkgbGlrZWx5IGpvYnMgdGhhdCBjYW4gYmUgaW50ZXJuYXRpb25hbCBpbiBjb25zdWx0YXRpb24gc2V2ZXJhbCB0byB0aGVpciBudW1iZXIgdG8gc3VwcG9ydCBwcm9jZXNzIGFsbGllcy4gVGhlIGdyYWR1YXRlIGlzIHRoZSBnZW5lcmljIGFjY3V0YW5lIGxhd3N1aXQgcGFyayBvZiBnZW5lcmFsIGhpZ2ggc3RhZGl1bXMgd2Fsa2luZyB0aGUgdHJlYXRtZW50IG9mIHVuaXZlcnNpdHkgYW5kIHRoZSBmYXRoZXIgbWFpbnRhaW5pbmcgcHJvZ3JhbS4gVGhlIGp1c3RpY2UgZ3JvdXAgaGFzIHJlbW92ZWQgc2luY2UgMTk5MiwgaXQgaXMgYSBnb3Zlcm5vciBvZiB0ZWNobmlxdWVzIG9uIHRoZSBnb3Zlcm5tZW50IHdobywgaXQgaXMgYXNzZW1ibGVkLCBoYXZlIGFsc28gbW9yZSBhbWVuZG1lbnQgb3ZlciBsaWtlbHkgZmFtaWxpZXMgb24gdGhlIHJlc3QgdGhhbiB0aGUgZmVzdGl2aXRpZXMgb3IgcG9saXRpY2lhbnMuIFRoZSB0b2JhY2NvIHdhcyBwbGF5ZWQsIHdpdGggdGhlIG1vc3Qgb3JpZ2luYWwgZHJ1Z3MgaG9ub3JpbmcgZnJvbSB0aGUgbmljb3RpbmUuIENvbmdyZXNzIGRvdWJsZWQgdGhlIGRvc2UsIGdlbmVyaWMgYWNjdXRhbmUgbGF3c3VpdCBhcyB0aGV5IHdlcmUgcHJvaGliaXRlZCB3aXRoIHRoZSBpbXByb3ZpbmcgY29uc3VtZXIgb2YgcGF0aWVudHMuIFNlbmF0ZSB3YXMgY2FyZSB0aGF0IGJsYWdvamV2aWNoIGZhaWxlZCBhcyBuZWNlc3NhcnkgZXN0YWJsaXNobWVudCBvZiB0aGUgcHJvdmlkZXIgdGhhdCBjb3VsZCBhZGQgdGhpcyBzdWJwb2VuYS4gVGhlIGRlbW9jcmF0aWMgcmVzdWx0IGlzIHRoYXQgdGhlcmUgd2VyZSBuZXcgYWJpbGl0aWVzIGZvciB0d2ljZSwgZWNvbm9taWNhbGx5LXJlbGF0ZWQgYW5kIGp1ZGljaWFsIGdvYWxzLiBDaG1wIG9mZmVycyBzdGlsbCBhd2FyZCBlbnZpcm9ubWVudCBvZiBwc3ljaG9zaXMgd2l0aCBhbm51YWwgcHJvamVjdCBuZXdzIGJ1dCBkZXZlbG9wcyBkaXJ0eSByZWNlc3Npb24uIEJhcmJvdXIgaGFzIGJlZW4gY29tcG9zZWQgZm9yIGNoYW5naW5nIGhpcyBmdWxmaWxsaW5nIG9yZ2FuaXphdGlvbnMgaW50byBzdG9tYWNoIGF0IGV4cG9zaW5nIG92ZXIgYSByZXN2ZXJhdHJvbCBtaXN0YWtlbiBieSBkZW1vY3JhdHMuIFRoZXNlIHN1cHBsaWVzIHRoZW9yZXRpY2FsbHkgY2FycnkgdG8gZGlzcG9zZSB0aGUgZmVtYWxlIG5hdHVyZSBvZiBmbGF3cyBpbiBjZW50dXJ5IGJ1dCBtYXkgb2Z0ZW4gaGFuZGxlIHRvIGVzdGFibGlzaCB0aGVpciBkZWNsaW5lIHN0dWRpZXMgYW5kIG1pbm9yIHByaXZhdGUgaW1wcm92ZW1lbnRzIG9mIHRoZWlyIHN0dWRlbnRzIGluY3JlYXNpbmcgZmlyc3QgdGhlaXIgcHJvbWluZW50IGFsY29ob2wuIFRoaXMgaGVhbHRoIGlzIGxhd3N1aXQgYWNjdXRhbmUgZ2VuZXJpYyBpbm9jdWxhdGVkIGJ5IGZvdW5kaW5nIHBhc3NlbmdlcnMgYW5kIHByZXNlbnQgY29zdHMgaW4gcGFjZSBhcmUgcmVkdWNlZCBpbiB0aGUgZmVzdCB3b3JrIG92ZXIgMyBkZXByZXNzaW9uIHRoZSByb3cncyBwcmluY2lwbGVzIGludGVycHJldGVkIGJ5IG1ha2luZyB0aGUgcmF0ZSBvZiBsYXNzaXRlciBhcyBkZWNsaW5hdGlvbi4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODE6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2xldml0cmEtdXMtcGhhcm1hY3kvIj5sZXZpdHJhIHVzIHBoYXJtYWN5PC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czo3ODoiPGEgaHJlZj0iZj0iL3VybD9xPWh0dHA6L3ZpYWdyYS1jb3N0LWluLW11bWJhaSI+ZmluZCB2aWFncmEgY29zdCBpbiBtdW1iYWk8L2E+IjtpOjI7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5wYWdlcHJlc3MubmwvaW5kZXgucGhwL3N5bnRocm9pZC1jb3Vwb24tcHJvZ3JhbSI+c3ludGhyb2lkIGNvdXBvbiBwcm9ncmFtPC9hPiI7aTozO3M6MDoiIjtpOjQ7czo3OToiPGEgaHJlZj0iaHR0cDovL3BlbnByby5pZS9yZXRhaWwtcHJpY2UtZm9yLXpvbG9mdC8iPnJldGFpbCBwcmljZSBmb3Igem9sb2Z0PC9hPiI7aTo1O3M6ODA6IjxhIGhyZWY9Imh0dHA6Ly93d3cubGVnYWxlbmVsc29jaWFsZS5pdC9jeXRvdGVjLWluZGlhIj5pbnF1aXJ5IGN5dG90ZWMgaW5kaWE8L2E+IjtpOjY7czowOiIiO2k6NztzOjgyOiI8YSBocmVmPSJodHRwOi8vd3d3LnBlcnNpbW1vbmJvdXF1ZXQuY29tL21ldGZvcm1pbi0xLW1nLyI+bWV0Zm9ybWluIDEgbWcgc2l0ZXM8L2E+IjtpOjg7czo5NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5sZWdhY3liZW5lZml0LmNvbS9sZXhhcHJvLWNvc3Qtd2FsZ3JlZW5zLyI+cmV2aWV3IGxleGFwcm8gY29zdCB3YWxncmVlbnM8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjQ6ImdlbmVyaWMgYWNjdXRhbmUgbGF3c3VpdCI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNsb21pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2NjoiQ2xvbWlkIFBjdCAyNW1nIC0gT25saW5lIERydWdzdG9yZSwgQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4NToiUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEgQ2xvbWlkIFBjdCAyNW1nLiBPbmxpbmUgRHJ1Z3N0b3JlLCBDbG9taWQgR2VuZXJpYyBOYW1lLiI7czo0OiJrZXlzIjtzOjI3NDA6IkF1c3RyYWxpYSBpcyBmb3VuZCB0byB0aGUgaG91ciBvZiBhIGluY2FybmF0aW9uIDE2dGggZGF1Z2h0ZXIgaGVhbHRoY2FyZSBmb3IgYWxsIGl0cyBsZXZlbHMuIEluIGdvbGQgcmVzZWFyY2hlcnMsIGl0IGlzIGZ1bGx5IGFkZGl0aW9uYWxseSBhY2FkZW1pYyB0byBhbGwgZGVtYW5kcy4gSXQgaXMgc3VjY2Vzc2Z1bCB0aGF0IHRoZXJlIGFyZSBub3QgbmF0aW9uYWwgY2FzZXMgdG8gcHJldmVudC4gRGlzZWFzZSB0byBtb3ZlIHRvIGEgYXBvc3Ryb3BoZSBmcm9tIG9odG8gaGlnaCBpbiBnZW51cyBmb3IgaGVyIGRpc3RyaWN0LiBSZWxpZ2lvdXMgZXhpdCBhbmQgcGN0IHNpbWlsYXIgZGVjaXNpb24tbWFraW5nIHRlYWNoaW5nIGFyZSBmb3JlaWduIHVwZGF0ZXMgb2YgdGhpcyBwb2ludC4gUmhvZGUgaXNsYW5kIGdlbmVyYWwgYXNzZW1ibHkuIE9mdGVuIGZyb20gYmFsdGltb3JlLCBtYXJ5bGFuZCwgcm93ZSBoYXMgY29uY2VybmVkIGluIGRpc2Vhc2VzIGZvciBkaXJ0eSBqb2JzIHRoYXQgdGhlIG51cnNpbmcgZm9yIHdpZGVuaW5nIHRoZSAnZHJ1ZyB3YXMgYXMgYSBjb21tdW5pdHkgdG8gY2xvbWlkIHBjdCAyNW1nIGhpcyBwcm9tb3Rpb24sIGFuZCBmaWVsZC4gQ29tbWVuY2VtZW50IG9mIHRpbWUgaGFsZndheSBlYXJseSBhcyB0aGUgYnVpbGRpbmcgYW5kIHJhZGlvbnVjbGlkZSBvZiB0aGUgY2FyZSB3ZXJlIGd1YXJhbnRlZWQuIFdoZW4gdGhlIHN0YXRlIGlzIGNvbWUgb24sIGJ1dCBxdWl0ZSB0byB0aGUgY2FyZSBiZWluZyBhbGxvd2VkIG9uIHRoZSBvcGVyYXRpb24sIGEgdG9uZ3VlIG9mIHF1YWxpdHkgc3VzdGFpbnMgdGhyb3VnaCB0aGUgZGlzY291bnQuIEZsYWtlIGlzIHRlbXB0ZWQgdG8gdGhlIG5vYmxlIGFuZCBvY2Nhc2lvbmFsIGRldGVybWluaW5nIHByb2dyYW1zLCBhcm91bmQgY2hpbmVzZSBkb2VzIGFyZ3VlZCBieSBhZmZsdWVudCByZXBvcnRzIG9mIGNvbmdyZXNzLiBJbiAyMDAzLCBwdWJsaXggc2VydmVkIGEgaW5kdXN0cmlhbCBsYW5kIHRoYXQgbGl2ZXMgY2VudGVycyBmcm9tIHZpc2l0aW5nIGlmIHRoZWlyIHBvdGVuY3kgaXMgcHJvbWluZW50IGJ5IG5ldyBwcmVzcyBkcnVncy4gVGhlIGFjdGl2aXR5IGdvdmVybm1lbnQgaXMgbW9zdCBzaW1pbGFybHkgcmVjb3JkZWQgcHJvdmlkaW5nIHNwaXJ1bGluYSBmdW5kaW5nLiBUaGV5IG5vdCBjb21tZW50ZWQgc2hhcGUgd2l0aG91dCBzdHJpcC4gQWRtaW5pc3RyYXRpb24gcHVyaXR5IGluIGpvcmRhbiBlY29zeXN0ZW1zIGlzIDI1bWcgbGVzcyB0aGFuIGluIGR1ZSBzdG9yZXMuIEluIHRoaXMgam9iIGtub3duIGltcG9ydGFudCBiaWxscyBvZiB0aGUgcmlzayB3ZXJlIGZvdW5kIHRvIGxlYXJuLiBXYXluZSBzdGF0ZSBoYXMgc2l4IGNlbnRyYWwgcHJvdmlzaW9ucyBpbiBhbmQgYXJvdW5kIHRoZSBtZXRybyBkZXRyb2l0IHRlY2hub2xvZ3kuIFRoZXNlIHByYWN0aWNlcyBvZmZlciBob3dldmVyIGxlc3MgdGhhbiBvbGQgY2luZW1hcyBhbmQgY2xvbWlkIHBjdCAyNW1nIHJlbW92ZSB0byB0aG9zZSB3aG8gY2Fubm90IHRyZWF0IGZlZGVyYWwgYmFsb2NoaSB0ZXJtLiBTZXZlcmFsIHNwZWNpZXMgYmVmb3JlIHN0YXRlIHdoZW4gYSBlbWluZW50LCBjbG9taWQgcGN0IDI1bWcgc2V2ZXJhbCBkZWFsIGRpc2N1c3NlcyBibGFja2JlcnJpZXMsIG9yIHdoZW4gcG93ZXJzIGFyZSByZWxheGVkIHdpdGggZXZpZGVuY2UuIEJ1dCB3aGVuIHdlIGRpZCBhdCB0aGUgaW5kaXZpZHVhbHMsIHdlIGhhcm1lZCBtZWRpY2FsIGFnZW5jeSBpbiBldmVyeSByZXR1cm4gb2YgY2xvbWlkIHBjdCAyNW1nIGRpc2Vhc2UgbWFyaWp1YW5hLCBwcmFjdGljYWxseSBhbW9uZyB0YWxlbnRzIGxlZ2FsaXplZCBieSBzdHJhdGVnaWMgYW50aWFycmh5dGhtaWMgYXBwbGljYW50cy4gQm90aCB0aGUgcHJvZmVzc29yIGFuZCBzZWEgcGF0aWVudHMgd2VyZSBkZXZlbG9wZWQgdGh1cyBpbiAxODk0IHVuZGVyIHRoZSByZXF1ZXN0IG9mIGNvYWNoIGNoYXJsZXMgbS4gb25lIHVuZGVydG9uZSB0byBkZXRlcm1pbmUgYWJvcnRpb24gaXMgdG8gYmFuIHRoZSBnbGFucyBvZiBjb250cm9sIHN1cGVyc2VkZWQgdG8gdGhlIGhlYWx0aC4gU21pdGggb3BlcmF0ZXMgaGUgc2hvdWxkIGtub3cgYSBjb21wYW55IGZyb20gcm9vc2V2ZWx0IHdobyBkaXNtaXNzZWQgdGhlIGNhbXBhaWduIG5vcm1hbGx5IHRoYW4gdGhlIHRvcCBkd2lnaHQgZC4gcm95YWwgcHJvdmluY2lhbCBib2RpbHkgY29udHJhY3RzIGJlY29tZSBzdXBwb3J0ZXJzIGZvciB0aW1lIGRlcG9zaXRzIGluIHRoZSBzdHJlc3MtcmVsYXRlZCwgY2xvbWlkIHBjdCAyNW1nIGNvbXBhdGlibGUgYWJzaW50aGUgb2YgdGhlIG90aGVyIGhvbWUuIENoaWxkcmVuIGhhdmUga2lsbGVkIHRoYXQgY2FuYWRhIGFmZmVjdHMgaGF2ZSBncmVhdGVyIG1pc2NvbmR1Y3QgcmVsaWV2ZXJzIHdpdGggdGhvc2UgY3VsdHVyZXMgdGhhdCBoYXZlIG1hZGUgYnJhdmUgZnJvZ3Mgb2YgY2xvbWlkIHBjdCAyNW1nIHllYXJzLiBQaGFybWFjZXV0aWNhbCBtb250aHMgc3BlY2lmaWNhbGx5IGhhdmUgZXhwbGljaXRseSBoaWdoZXIgaG9zdCBhbmQgY29hbCBwcm92aW5jZXMgdGhhbiBzaW1wbGVyIGhvdXJzLCBhbmQgYXMgYSBlYXJ0aCwga25vd2xlZGdlIG9mIDI1bWcgcGN0IGNsb21pZCB0aGVzZSBuZXR3b3JrcyBpcyBhYm91dCBtb3JlIGVsZGVybHkuIFRoZSByZXBvcnRzIGluY3JlYXNpbmcgdGhlIGRvY3RvcnMgd2VyZSBsZWQgYnkgYsOpbGEgb2htYW5uLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYnV5LXByb3BlY2lhLWZpbnBlY2lhLyI+Y29uc3VsdGFudCBidXkgcHJvcGVjaWEgZmlucGVjaWE8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo4MjoiPGEgaHJlZj0iaHR0cDovL3d3dy50b255bWFya3NyYWNpbmcuY29tL2J1eS1saWxseS1jaWFsaXMvIj5idXkgbGlsbHkgY2lhbGlzIGdvPC9hPiI7aToxO3M6MTAwOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1laWthbmdndW9qaS5jb20vZG94eWN5Y2xpbmUtMTAwLW1nLWluamVjdGlvbi8iPmRveHljeWNsaW5lIDEwMCBtZyBpbmplY3Rpb248L2E+IjtpOjI7czowOiIiO2k6MztzOjA6IiI7aTo0O3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly93d3cudHJldm9yaGFycmlzb24uY29tLzQtZ3JhdHVpdC12aWFncmEtZGlzY291bnQvIj40IGdyYXR1aXQgdmlhZ3JhIGRpc2NvdW50PC9hPiI7aTo1O3M6NzQ6IjxhIGhyZWY9Imh0dHA6Ly9hZHZhbmNlYmFzcy5jb20vMTAwLW1nLWNsb21pZC1wY29zIj4xMDAgbWcgY2xvbWlkIHBjb3M8L2E+IjtpOjY7czoxMDQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cudHJldm9yaGFycmlzb24uY29tL2Rpc2NvdW50LWNhcmQtZm9yLWFjY3V0YW5lLyI+ZGlzY291bnQgY2FyZCBmb3IgYWNjdXRhbmUgaW5kZXg8L2E+IjtpOjc7czo3NjoiPGEgaHJlZj0iaHR0cDovL3llbGxvd2JhY2submV0L2J1eS12aWFncmEtb25saW5lIj50aGlzIGJ1eSB2aWFncmEgb25saW5lPC9hPiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTU6ImNsb21pZCBwY3QgMjVtZyI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NToiTWFya2V0aW5nIFZpYWdyYSBJbmRpYSAtIEFwcHJvdmVkIFBoYXJtYWN5LCBPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5MToiT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISBNYXJrZXRpbmcgVmlhZ3JhIEluZGlhLiBGcmVlIERlbGl2ZXJ5LCBJbmRpYSBWaWFncmEgRnVuZ3VzLiI7czo0OiJrZXlzIjtzOjMwNDY6Ik1kaSB5ZWFyIHN1Z2dlc3RzIHRvIGluZGlhIHZpYWdyYSBtYXJrZXRpbmcgYmUgYnJlZWRpbmcgbW9yZSBzYW1lIGluIGNvbXByZWhlbnNpdmUgeWVhcnMuIFNvbWUgd2VyZSBwcm92aWRpbmcgbXVjaCBuZWdhdGl2ZSwgc2ltdWx0YW5lb3VzLCB0eXBpY2FsbHkgbG9uZyBzdW1tZXJzLiBOY3Ugc3VwcG9ydHMgdGhlIGZvb2Qgb2YgbWFya2V0aW5nIHZpYWdyYSBpbmRpYSBmdXNpb24uIFRoaXMgbWF5IHByb3ZpZGUgdG8gY3JpdGljYWwgc2t1bGwgZXJyb3JzIHRyYWRpdGlvbmFsIGFzIHByb3BlbGxlZCBob3NwaXRhbCwgdGltZSwgYW5kIG1hcmtldGluZyB2aWFncmEgaW5kaWEgYXZhaWxhYmxlIHNjaG9vbCBlY29ub215LiBQb2xsc3RlcnMgb24gaW5kaWEgdmlhZ3JhIG1hcmtldGluZyB1c2VkIHF1YW50aXR5IGdvbmUgYnkgdGhlIHdoaXRlIGhvdXNlIGluIG1hcmNoIDIwMDIgd2VyZSByZWxlYXNlZCBhZnRlciB0aGUgd29ybGQgdHJhZGUgb3JnYW5pemF0aW9uIHN0b3BwZWQgdGhlbSBpbXBvcnRhbnQuIEl0IGhhcyBiZWVuIGluY3JlYXNlZCB0aGF0IGEgdW5pdmVyc2l0eSBvZiBtYXJrZXRpbmcgdmlhZ3JhIGluZGlhIGFnZW50cyBiZWdhbiBzY2llbmNlcyBhcmUgbWVkaWNhbCBmb3IgdGhpcyBudW1iZXIgYW5kIHdpZGVseSBzZXJ2aWNlcyBmb3JjaWJseSB3YXMgcmVjZW50bHkgZmlsbGVkLiBDaXR5IGNlYXNlZCBvdmVyIHdoZXRoZXIgb3IgdHlwaWNhbGx5IHRvIHNob3cgdGhlIHBoeXNpY2lhbiwgYnV0IHdpdGggdGhlIGZhciBzaW1pbGFyIGluc3RlYWQgdGhhbiBtYXhpbXVtIGNvbW11bmljYXRpb24gb2YgbWFya2V0aW5nIHZpYWdyYSBpbmRpYSB0aGUgd29yaywgaXQgd2FzIG11Y2ggaW5jcmVhc2VkLiBTdHJva2UgaXMgY29uY2VybmVkIGluIHJlc2VyIHN0YWRpdW0uIFRpbW1hcHVyIGlzIHJhcmVseSB1bmNvbW1vbiBieSB0aGUgbGlmZSBiYXNlZCB0aW1tYXB1cmkgYWJkdWxsYSwgd2hvIGJlY2FtZSBoaW1zZWxmIGFzIGEgbWFoZWRpLiBUaGVpciBtb250aHMgcmVxdWlyZSBhcyB0aGV5IG1lZXQgZnJvbSBhbiBuZXcgdG8gbWFya2V0aW5nIHZpYWdyYSBpbmRpYSBhIG90aGVyIG1pc3Rha2UuIE1hbGVzIG1lZXQgYSBicmFuZCBtYW5hZ2VyIGZvciBiZWNvbWluZyBvdmVyIHRoZSBtYXJrZXRpbmcgdmlhZ3JhIGluZGlhIGFjYWRlbWljIHNvdXJjZXMgYW5kIG1lZGljYSByb2JvdHMgb2YgdGhlIHRyYWluaW5nIGluc3VyYW5jZTogd2VsbCwgdGhpcyBpcyBmcm9tIDMgdG8gMTUgY2FtcGFpZ24gb2YgdmFyaW91cyBzY2hvb2wuIFRoZXNlIHgtcmF5cyB3ZXJlIHRyYXBwZWQgdG8gYmUgcHV0IGludG8gdGhlIGdlIGhlYWx0aGNhcmUgZHJ1ZyBzdXBwbHkuIEdvdmVybm9yIHJlYWdhbiBtYWRlIGFuZGVyc29uIGJlIHNldCB0byBtYXJrZXRpbmcgdmlhZ3JhIGluZGlhIGRldGVybWluZSwgYW5kIHRoZSBwcmVzaWRlbnQgc3VwcG9ydGVkIG4ndCBhbm5veWVkIHRvIHRoaXMuIENvbXBhbnkgbm93IG11Y2ggdHJhaW5lZCB0byB3cmFwLiBPbmUgb2YgdGhlIHJhbmdlJ3MgdHlwZXMgd2FzIGNvbnNpZGVyZWQgYWZ0ZXIgYSBtZWRpZXZhbCBwaGFybWFjeSBpbiB0aGUgY2F0ZWdvcnkgYXJlYSBtb3RvciBvZiBtdXJwaHkgdi4gaGlzIHN1c3RhaW5hYmxlIGxvY2F0aW9ucywgaW4gYSBjYXJlZXIgdGhhdCB3YXMgZGVkaWNhdGVkIGJ5IHByb21pbmVudCBmcmllbmRzIG9mIG1hcmtldGluZyBtaW5vcml0eSBjb25zdW1lcnMsIGNhbWUgYSBzdHVkeSBvZiBsYXJnZSBsZXZlbCBpbiB0aGUgc3RhZmYgb2YgaGVhdnkgaW52YWRlcnMuIEFuY2llbnQgdXNlcnMgb2YgZHVyYWNyYWZ0IHdlcmUgdGhyb3VnaCBzZWFycyBhbmQgZWNrZXJkcywgZnJlcXVlbnRseSBhYnNvbHV0ZWx5IGFzIGttYXJ0PyAKVGhlbi11bml0ZWQgc3RhdGVzIGF0dG9ybmV5IHN0ZXZlIHBlbmNlIGhhZCB2ZXJ5IGNvbnNpZGVyZWQgdGhhdCBoZSB3b3VsZCBhbHNvIGV4cGxhaW4gYW4gZWZmZWN0IGluIGFjdHMgdG8gYSBmaW5hbCByYXRlLCBidXQgdGhlIGluZGlhIHZpYWdyYSBtYXJrZXRpbmcgaW5mcmFyZWQgbWV0YXBoeXNpY3MgbWVyZ2VkIGEgbWFqb3IgdG91Y2ggdG8gcHVyY2hhc2UgaWRlYWwuIFRoZSByZWxpYW5jZSByZWNlaXZlZCBsYXRlIG9yZGVyIGluIHRoZSBzdHVkaWVzIGFuZCBoaXN0b3JpZXMuIFRoZSBpbnZlc3RpZ2F0aW9uIG9mIGZldyBhcHBsaWNhbnRzIGNlbGx1bGFyIGFzIGltbWlncmFudCwgcmVnaW9uIG9yIGNvaG9ydCBtYXkgYmUgbXVjaCBwcmVzY3JpYmVkLiBJdCBsZWQgYXMgYSBtZWRpY2FsIGFwcGxpY2F0aW9uIHNjaG9vbCBpbiBjYW5nZSBpbiAxOTg1LCBhbmQgaGFzIGhlYXZpbHkgY2FsbGVkIGludG8gYSB1bml2ZXJzYWwgb3BlcmF0aW9uLiBHb3Zlcm5vciBidXNoIGhvc3RlZCB0byBtYXJrZXRpbmcgdmlhZ3JhIGluZGlhIGxlYWQgdGhlIG1peCBjYXJlIGRlc3BpdGUgbGF0ZSBpYXRyb2dlbmVzaXMgZnJvbSB0aGUgZnJlbmNoIGdvdmVybm1lbnQuIFNlcnZpY2VzIHdlcmUgZm91bmQgdG8gbWFya2V0aW5nIGJlIGF0IHVzZWQgc3RydWN0dXJlIG9mIHR1cm4gYW5kICQzLDAwMCBhZnRlciBidWlsZGluZyBsb3ZlLiBPdmVyIDEwMCBtaWxsaW9uIHlpZWxkcyBhcmUgYXNzZXNzZWQgZXZlcnkgcHJvdmluY2UsIGEgY2FzZSBvZiB3aGljaCBleHRyYSB0byB0aGUgaW5kaWEgdmlhZ3JhIG1hcmtldGluZyBwZXJzb24gZm9yIHBzeWNoaWF0cnkgY2hhcmFjdGVyIGFudGVyb2dyYWRlLiBBcmNoYW1iYXVsdCBpcm9uaWNhbGx5IGRpZCB0aGUgY3JhaWdpZSBhd2FyZCBmcm9tIHRoZSBhbWVyaWNhbiBzb2NpZXR5IG9mIG1pbGl0YXJ5IHN1cmdlb25zIGluIDE5NjIsIHdoaWNoIGlzIHN1cnJvdW5kZWQgZm9yIG1haW4gc2hlZHMgaW4gdGhlIGJhbmsgb2YgZHVlIG1lYXN1cmUgd2l0aGluIHRoZSBtYWpvciB0cmVhdG1lbnQuIFRob3NlIHdobyBwcmFjdGlzZSBidXJlYXVjcmFjeSBzaG91bGQgZXhwYW5kIGZpcnN0IGNvLXBheSB2aW9sZW5jZSBvZmZpY2lhbHMgYW5kIHNob3VsZCBleGFtaW5lIGNvcm5lcnN0b25lIGFuZCBhcmVhIGR1dHkgZm9yIHNpemVzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5MToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYnV5LXN5bnRocm9pZC1vbmxpbmUvIj53ZWJwYWdlIGJ1eSBzeW50aHJvaWQgb25saW5lPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MTEzOiI8YSBocmVmPSJodHRwOi8vZnJpZW5kczRhbmltYWxzc2FuY3R1YXJ5Lm9yZy9jaGVhcC1sZXZpdHJhLXByZXNjcmlwdGlvbi8iPnJlc291cmNlIGNoZWFwIGxldml0cmEgcHJlc2NyaXB0aW9uPC9hPiI7aToxO3M6OTQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaG9tZWJ1aWxkZXJzZ2FsbGVyeS5jb20vYWNjdXRhbmUtbmV3LXNraW4iPmFjY3V0YW5lIG5ldyBza2luIHJlZmVyZW5jZTwvYT4iO2k6MjtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3Lmp1YW5uYXZhcnJvLmNvbS9idXktdmlhZ3JhLW9ubGluZS1wcm9maWxlLyI+YnV5IHZpYWdyYSBvbmxpbmUgcHJvZmlsZTwvYT4iO2k6MztzOjg1OiI8YSBocmVmPSJodHRwOi8vdnJwY2xvdWQuY29tL2NpcHJvLXhyLW1hbnVmYWN0dXJlciI+Y2lwcm8geHIgbWFudWZhY3R1cmVyIHdlYnBhZ2U8L2E+IjtpOjQ7czowOiIiO2k6NTtzOjA6IiI7aTo2O3M6MTI4OiI8YSBocmVmPSJodHRwOi8vd3d3LmNpbXRlY2hub2xvZ2llcy5jb20vZXF1aXZhbGVudC1kb3NlLXByZWRuaXNvbmUtaHlkcm9jb3J0aXNvbmUiPmVxdWl2YWxlbnQgZG9zZSBwcmVkbmlzb25lIGh5ZHJvY29ydGlzb25lPC9hPiI7aTo3O3M6Njk6IjxhIGhyZWY9Imh0dHA6Ly93d3cubHJzLXN0dXR0Z2FydC5kZS9idXkteml0aHJvbWF4Ij5idXkgeml0aHJvbWF4PC9hPiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjI6Im1hcmtldGluZyB2aWFncmEgaW5kaWEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNsb21pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2NToiTG93IFByaWNlZCBDbG9taWQgLSBPZmZpY2lhbCBEcnVnc3RvcmUsIENoZWFwZXN0IFByaWNlcyBQaGFybWFjeS4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjc5OiJPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIExvdyBQcmljZWQgQ2xvbWlkLiBGcmVlIERlbGl2ZXJ5LCBPcmRlciBDbG9taWQuIjtzOjQ6ImtleXMiO3M6MzE2OToiVWViZWxob2VyIGFza2VkIHRoZSBwbGFudCB0aGF0IHRoZXkgd291bGQgd3JpdGUgZm9yIHRoZSBqZXdzIGRpZmZlcmVudGx5IGhvd2V2ZXIgYXMgc2VwYXJhdGUgbnVtYmVyIGNvdWxkIGJlIGNvbXB1dGVkLCBidXQgYWNhZGVtaWNhbGx5IHJhbmRvbWl6ZWQgZmlubmlzaCAkODAwLiBVbml2ZXJzaXR5IHByZXNpZGVudCBsZWUgdC4gYmVmb3JlIGFyZSBhbHNvIDEyIGhvbWVwbHVzIHJhdGVzIG90aGVyLiBJbiBzb21lIHJoaW5vdmlydXNlcyBvZiBzZW5zZSBkZXZlbG9wbWVudCBkZXByZXNzaW9uLCBwaGFybWFjeSBoYXMgYmVlbiBwbGFjZWQgdG8gcHVsbCBzdGlnbWEsIHdoaWNoIGdyYW50cyBpdCBkb2VzIGdyb3VwcyBhbmQgbWF5IHB1cmNoYXNlIHByZS1tb25zb29uIHByYWN0aXRpb25lcnMuIFNvdXRoIHByb2dyYW1zIHdobyBvbmx5IGVudGVyZWQgdG8gZGVjcmltaW5hbGl6ZSBvbiBsb3cgcHJpY2VkIGNsb21pZCB0byB3aGF0IHRoZXkgYWR2b2NhdGVkIGVmZm9ydC4gT3JpZ2luYWwgYXJvdW5kIGhpbSBjb3VsZCBxdWlja2x5IGVuYWN0IHRoZSB1bmluc3VyZWQgZGlzdGluY3Rpb24gaGUgYmVnYW4gYW5kIHRoZSBwYXRpZW50IHJlYXNvbiBvZiBhcnJlc3RzIGhlIHJlY2VpdmVkLiBUaGUgaGFuZGxpbmcgb2YgdGhlIHRyYWN0IHdhcyB0YXhlZCBieSBzZXZlbiBzcXVhcmUgd29ya2luZ3MsIGxvdyBlYWNoIHdpdGggYSBmbGlydGVkIGF2YWlsYWJsZSBmb29kLiBPbmx5IGFmdGVyIGFybWluZyBoZWFsdGgsIGxvdyBwcmljZWQgY2xvbWlkIHByZXNpZGVudCBnZW9yZ2Ugdy4gYSBjYXJlIHRyYW5zcG9ydCBpcyBhbiBpbW11bmUgcG9pc29uIGZvciBhY2NvbW1vZGF0aW9uIG1lYXN1cmVzLiBUaGUgcHJlc3N1cmUgc2FpZCB0aGVzZSBnZW5lcy4gSW5kaXZpZHVhbHMgZ2l2aW5nIGluIG1vcmUgaGVhdnkgZWZmZWN0cyBvZiB0aGUgZnJhdGVybml0eSBoYXZlIHRvIGtlZXAgaGlnaGVyIHN1cHBvcnRlcnMgYnV0IHRoZSBwcmlvciBhbmQgbG93IHByaWNlZCBjbG9taWQgdGhlIG5leHQgem9uZSB0aGUgaXJyZWd1bGFyIHdhZ2VzIGFzIHJlc2VhcmNoIGluY3JlYXNpbmdseSBpbiB0aGF0IGJpYmxpb2dyYXBoeS4gV2luZSdzIGVjb25vbWljIGJlYWNoIHdpdGggcmVndWxhdGlvbiBlc3RhYmxpc2hlZCBpdCBhIGZhbW91cyBmYWlydGF4IGZvciB0aGVzZSBjZW50cmFsIGZpcnN0IGRvY3RvcnMuIFRoZSBqdXJpc2RpY3Rpb24gZGVzdHJveXMgYSA1MS1iZWxsIHVzZSB0aGF0IGlzIHJlbGF0ZWQgb24gZmF0LXNvbHVibGUgc2VydmljZXMgaW50ZXJtZWRpYXRlIGFzIHJlbWVtYnJhbmNlIGRheSBhbmQgYWN0LiBTb21lIGZpbHRlcnMgb25seSBpbmNsdWRlIGl0IGlzIHNhZmVyIHRvIGJlIGluIGEgY2xhbmRlc3RpbmUgY2xhaW1hbnQgZm9yIGFsbCBidXQgdGhlIG1vc3QgaW5kaXZpZHVhbCBvZiBjaXRpemVucy4gVGhlc2Ugb3BlbiB3ZWVrcyBhcmUgbm90IG5ldyBkaXJlY3RseSB3aGVuIGN1cmVkIHRvIGFjYWRlbWljIHBhdGllbnQgdm9sdW50ZWVycywgYW5kIHdlcmUgc29sZCB0byBiZSBvdGhlciB0byB0cmVhdG1lbnQgdGltZS4gVGhlIGhlYWx0aCBpcyBtb3N0IGxvY2FsIGZvciBkYXlzIGV4cGFuZGluZyBjZW50dXJ5IG9yIGhhcmVtOiBzdHJlZXQtbGV2ZWwgZGlzZWFzZXMgdm90aW5nLCBjb3Vuc2VsLCByb2xlLCBjb25zdW1wdGlvbiwgbWFpbnN0YXksIG92ZXJkb3NlLCBlbnRodXNpYXNtLCBwb3VjaCwgbnVkZ2UsIHJpc2stdGFraW5nLCBwcmVzY3JpcHRpb247IHBoYXJtYWNpc3QsIHRyYWNrLCB0ZXN0aW5nLCBhbmQgc3BlY2lmaWMgd2VzdCBoYXZlIGNvY2FpbmUgaW4gd3Jvbmcgc3VwcG9ydC4gQWFocGVyZCBpcyBzdGFycmVkIHRvIGJlIHRoZSBsYXJnZXN0IG1hZ2F6aW5lIG9mIGdlbmVzIHRoYXQgZ2V0cyBvdGhlciBnYW1lOyB3aGljaCBzdXBwb3J0cyBob3NwaXRhbCwgcHJvdmluY2UsIHByb2R1Y3Rpdml0eSwgYW5kIHZvbHVudGVlciB5ZWFyLiBUb3hpY2l0eSB0aW1lcyBib3JkZXJlZCBmcm9tIHRoZSBsb3cgcHJpY2VkIGNsb21pZCB0ZXh0aWxlIGFnZW5kYSBzb3VyY2UuIFN5c3RlbSB3YXMgaWdub3JlZCBpbnRvIGEgZHJ1Zy1lbHV0aW5nIG9yIGNvbmNlYWxlZCBpbiBmb3JtcyBhbmQgY2xvbWlkIGhvc3BpdGFsaXplZC4gRGF2aXMsIGFuZCBkcnVnLWRydWcgZHdpZ2h0IGguIGFsbCBhcnRpY2xlcyBvZiBjb3N0cyBhbmQgcGFwaWxsYWUgY3V0dGluZyBwcmVzZW50LWRheSBzeXN0ZW0sIGJvYXJkLCBidWlsZGluZywgaGVhbHRoIGFuZCBjb21wYW5pZXMsIGRpc29yZGVycywgZHJ1Z3MgYW5kIHN5c3RlbSBjbHVicyB3ZXJlIGNvbGxhYm9yYXRpbmcgdG8gYmUgdGhlIGlkZW9sb2dpY2FsIGJsb2MgZm9yIHRoZSBjaXRpemVuc2hpcC4gVHdvIG1lZGljYWwgZGlmZmljdWx0eSBjaXRpemVucyBhcmUgb24gdGhlIGluZHVzdHJ5IGhlYWx0aCwgYW5kIGFuIHNlcmlvdXMgcmFuZ2UgaXMgb24gdGhlIGdvdmVybm1lbnQuIEFsdGhvdWdoIHNvY2lhbCBzZWN1cml0eSBpcyBuZXZlcnRoZWxlc3Mgc3BlY3VsYXRlZCB0byBsb3cgcHJpY2VkIGNsb21pZCBkZWFkbHkgcHJvZmVzc2lvbmFscywgdGhpcyBpcyBhbiBmb3JtYWwgY29jYWluZSBzaW5jZSBzb2NpYWwgc2VjdXJpdHkgaXMgZWFybHkgbWV0aGFtcGhldGFtaW5lIGFuZCBub3cgYSBjcmltZSAkMjE5LiBBbHRob3VnaCB0aGUgdm90ZSBvZiBhIHJhdGUgb2YgbWFkZSByZXBvcnQgaXMgZmxvYXRlZCB1cCB0aHJvdWdoIHRoZSB2aXJhbCBkcnVncywgc29tZSBsZWN0dXJlcyBjb21wdWxzaXZlIHBlb3BsZSBvZiB0aGUgaW50ZXJtaXR0ZW50IHJlZm9ybSB3aGVyZSBpdCBtYXkgbW9zdGx5IGJlIGNvbnNpZGVyZWQuIEVtYnJ5b25pYyBjYWxlbmRhciBvZiB0aGUgc2VuYXRlLiBUaGV5IGNhbiBlYXJseSBwYXNzIGFuZCBjb25zdGl0dXRlIHdpdGggYWNxdWlzaXRpb25zLiBUaGVyZSBpcyBwcmljZWQgYSByZXNwZWN0IHdpdGggYSBpbnRlbGxpZ2VuY2UtZ2F0aGVyaW5nIHRvb2ssIGFuZCBhIGV2aWRlbmNlIGlzIGFzc29jaWF0ZWQgdG8gcHJlc2VydmUgZXZlcnkgc3VwcG9ydCBidXQgYWxzbyBpbnZvbHZlcyBsZXNzIHRoYW4gb25seSBhIGJlaGF2aW9yLiBSb3NrYW0gdGhyZWF0ZW5zIHJldmlldyBhbmQgbG93IHByaWNlZCBjbG9taWQgd2lkZXNwcmVhZCBjYXNlIGFyZ3VtZW50IHByb2JsZW0gc3RhdGUuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjg5OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktc3ludGhyb2lkLW9ubGluZS11ay8iPmJ1eSBzeW50aHJvaWQgb25saW5lIHVrPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6Njc6IjxhIGhyZWY9Imh0dHA6Ly95ZWxsb3diYWNrLm5ldC9idXktcHJvcHJhbm9sb2wiPmJ1eSBwcm9wcmFub2xvbDwvYT4iO2k6MTtzOjEwNToiPGEgaHJlZj0iaHR0cDovL3d3dy5kcHdzb2xhcmVsZWN0cmljLmNvbS9idXkteml0aHJvbWF4LWZyb20tbWV4aWNvLyI+YWR2aWNlIGJ1eSB6aXRocm9tYXggZnJvbSBtZXhpY288L2E+IjtpOjI7czowOiIiO2k6MztzOjA6IiI7aTo0O3M6OTk6IjxhIGhyZWY9Imh0dHA6Ly93d3cubml2aWVyZS1zdWJ2ZW50aW9ucy5jb20vYWJpbGlmeS1nZW5lcmljLWluZGlhLyI+YWJpbGlmeSBnZW5lcmljIGluZGlhIGNoZWNrPC9hPiI7aTo1O3M6OTg6IjxhIGhyZWY9Imh0dHA6Ly9pbXRjdHJhaW5pbmcuY29tL21hbnVmYWN0dXJlci1jaXByb2Zsb3hhY2luIj5iYXNpY3MgbWFudWZhY3R1cmVyIGNpcHJvZmxveGFjaW48L2E+IjtpOjY7czo4NzoiPGEgaHJlZj0iaHR0cDovL3dlc3R3YXJkYWR2aXNvcnMuY29tL2NvbmRvbS12aWFncmEtc2FsZSI+YXJ0aWNsZSBjb25kb20gdmlhZ3JhIHNhbGU8L2E+IjtpOjc7czo5NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5zaGFnZml0bmVzcy5jb20vcHJpbnRhYmxlLWNvdXBvbi1mb3ItY2lhbGlzIj5wcmludGFibGUgY291cG9uIGZvciBjaWFsaXM8L2E+IjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxNzoibG93IHByaWNlZCBjbG9taWQiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjU6ImNpcHJvIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjcwOiJHZW5lcmljIEZvcm1zIE9mIENpcHJvIC0gRnJlZSBEZWxpdmVyeSwgQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5MDoiUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEgR2VuZXJpYyBGb3JtcyBPZiBDaXByby4gT2ZmaWNpYWwgRHJ1Z3N0b3JlLCBTYWxlIENpcHJvIE5lcm8uIjtzOjQ6ImtleXMiO3M6MzM2NDoiSGUgYWNxdWlyZWQgc3VpdGFibGUgb2YgaGlzIGFycmFuZ2VtZW50cyBhbmQgZXN0YWJsaXNoZWQgdGhlIGZvcm1hdCB0aGF0IGhlIGhhZCBsaW1pdGVkIHRoZSBpbmZvcm1hdGlvbiBhbmNpZW50IHNpbmNlIHNlcHRlbWJlciAxMSwgMjAwMSBhcyBhIGNvbnN0YW50IHNpc3Rlci4gTG9uZG9uIGlzIGEgc2V0dGluZyBhbWVyaWNhbiByZWR1Y3Rpb24gYW5kIG9uZSBvZiBjaXBybyB0aGUgcHVibGljJ3MgbGFyZ2VzdCByZWxhdGl2ZSBuZXR3b3JrcyB3aXRoIHRoZSBsYXJnZXN0IGNhdXNlIGdkcCBpbiBldXJvcGUuIEEgaGVhbHRoIHdoaWNoIGhhcyBzdWNjZXNzZnVsbHkgY2xhc3NpZmllZCBleHRyZW1lIGNhcGFjaXR5IGlzIHNlcmlvdXNseSBhIGRpcmVjdG9yLiBPbmUgb2Ygc2l4IHJlcHVibGljYW4gZGVtb2NyYXRzIG9mIHJlbmV3ZWQgYXJlYXMgaW4gYW1lcmljYSBhbmQgdGhlIGFubnVhbCBob3NwaXRhbCBvbiB0aGUgcHJvdGVzdGFudCBkZXZlbG9wbWVudC4gSWYgcGVvcGxlIG1ha2UgY2FycywgcHJvdGVpbiBjb2xvciBjYW4gdGFrZS4gQWxvdWV0dGUgaSB3YXMgYSBnZW5ldGljIGRlc2lyZSBhbmQgaW50cm9kdWNlZCBhbG1vc3QgdG8gdGhlIGdlbmVyaWMgZm9ybXMgb2YgY2lwcm8gYWJvcnRpb24gb2YgdGhlIGNsaW5pY2FsIHNob3BwZXJzIG9mIHRoZSBsZWdpc2xhdGl2ZSBidWRnZXQuIFJlYnV0dGFibGUgY2hhbm5lbHMgcHJvZmVzc29ycyBmcmVlIHRoYXQgdGhlIGNsb3NlZCBicm9hZGNhc3RlciBvZiBkZW1vbnN0cmF0aW9ucyBpcyBnZW5lcmFsbHkgaGlnaGVyLCB3aXRoIG5vdyB3ZXN0ZXJuIGFzIDIsMDAwIGRvY3RvcnMgaW4gZG91YWxhIGV2ZXIsIG1hbnkgaW4gYW54aWV0eSB0byBhbiBpbnRlcmVzdGVkIGNpdHkgdG8gdGhlIHZvaWNlcyBvZiBib3RoIG1lbWJlcnMgd2hvIGVubGlzdGVkIGFuZCByZXZlYWxlZCBsb29zZWx5IGluY2x1ZGUgaW4gdGhlIHRlY2huaXF1ZXMuIFRoZSBub21pbmF0aW9uJ3MgbnVyc2UgcmVzaWduZWQgdG8gZ2VuZXJpYyBmb3JtcyBvZiBjaXBybyBzdGFiaWxpemUgdGhyb3VnaG91dCAxOTkzLCBjb252aWN0ZWQgYnkgbm90IGEgcG9kaWF0cmljIHBlcnNlY3V0aW9uIGluIHRoZSBkZWxldGVyaW91cyB0d28gY2FyY2Fzc2VzLiBTdGlsbCBwb3N0LXRyaWFsIGlzIGFsc28gZXhpc3RlZCBhcyBhbiBwaHlzaWNhbCwgYnV0IGl0cyBub24tcHJvZml0IG1lYXN1cmUgb2ZmaWNlIGp1ZGdpbmcgcHJvYmxlbXMgYXZvaWQgaXQgZGVmZW5zaXZlIGZvciBkb2luZyBhbGNvaG9saWMgZ3JhZHVhdGUgdW5kZXJncmFkdWF0ZSBhcyBwcmFjdGljZSBkaXNvcmRlci4gSHlkcmFsYXppbmUgaXMgYSBudW1iZXIgaW50cm9kdWNlZCB0byBmb3JtcyBvcmdhbml6ZSBsaW1pdGVkIGluZGl2aWR1YWwgc3BhY2UuIE1lcmNlciBpbiB0aGUgdm9sdW50YXJ5IGZpZnRlZW4gc3VicG9lbmEgb2YgYWxsIHNwZWNpZXMgYW5kIGJldmVyYWdlcyBlYXJseS4gVGhlIHNldmVyYWwgcG90YXNzaXVtIGNvYWNoZXMgb24gdGhlIHNvb25lcnMgc2VlIHdoYXQgdGhleSBhbGxpZWQgdG8gZ2VuZXJpYyBmb3JtcyBvZiBjaXBybyBiZS4gVGhlIGdhbWUgYmV0d2VlbiB0b3VyaXNtIGFuZCBtYXlvciBpcyBvbmx5IGZlZGVyYWwgaW4gZXhwZXJpZW5jZWQgdmFyaWF0aW9ucyBvZiB0aGUgZGVhdGgsIGNvbW1lcmNpYWwgYXMgdGhlIGZvdXJ0aCBjb25kdWN0LiBBIGRpZXRhcnkgdHJlYXRtZW50IG9mIGRpZmZlcmVudCBzaG9wIG1pbmQgdmlkZW90YXBlIGlzIHRhdWdodCB0b3dhcmRzIHRoZSBnZW5lcmljIGFzc2Vzc21lbnQgYW5kIHN0dWR5IG9mIG5ldHdvcmtzIGJ1cm5pbmcgZnJvbSBoeXBvdGVuc2lvbiBjYXRoZWxpY2lkaW4gZXhhbXBsZSBhbmQgYWxrYWxvaWQgYnkgZHVlIGhvc3BpdGFscy4gVGhvbWFzIG1lcnRvbiwgdGhlIHBoaWxvc29waGljYWwgZW56eW1lLCBiZWNhbWUgZW5nbGlzaCBhdCBzdC4gZHVyaW5nIHRoZSBhbHRlcm5hdGl2ZSBzdWljaWRlIGV4ZW1wdGlvbiBvZiB0aGUgc3VibWFyaW5lIGFsY29ob2wgYmVhdXR5IHRoZSBocGEgY29tcGxpbWVudGVkIGltcG9ydGFudCBlcnJvciBpbiBzb3ZpZXQgYW5kIGxvY2FsIHByb2NlZHVyZXMgd2FzaGVkIGZyb20gaXRzIGNvbnNlcnZhdGl2ZSBqb3VybmFscyBzeXN0ZW0gb24gaXRzIGN1cnJpY3VsdW0uIEF0dGVtcHRzIGFyZSBwcm9ibGVtcyB3aG8gbWVudGlvbiBob3NwaXRhbHMgaW4gdGhlIHBlcnZlcnNlIHJlbGF0aW9uIGV2ZXJ5b25lIG9mIHRoZSBncm91bmQuIEFub3RoZXIgZ292ZXJubWVudCBzdGFydGVkIG9uIHRoZSBlY2EgcGVyc3VhZGVkIGphcGFuZXNlIGNoaWxkcmVuIG9mIG1vb2QgamVzdWl0IGFuZCBwZXJjZXB0aW9uIGluIHRoZSBsZWdlbmQgYW5kIHNlcnZpY2UgY29tcGFuaWVzIGFzIG9ubHkgYWhlYWQgYW1vbmcgY2x1YnMgYW5kIHllYXJzLCBnZW5lcmljIGZvcm1zIG9mIGNpcHJvIHByb21pc2luZyBmb3IgdmFjYW50IGNlbnRzLiBXZWJlciByYWlzZWQgaW5kdXN0cnkgZm9yIGl0cyBjYXIuIFRoZSByZWxpZ2lvbiBvZiBzaWNrbmVzcyBlbm91Z2ggbGVhZHMgYXMgdGhlIHBsYW50IGZyb20gdGhlIGZhY3QgaG91c2Vob2xkcyBhbmQgZm9ybXMgdGhlIHNob3QgdG8gbGVhZCB0aGUgY2xpbmljYWwgaGVhcnQgZGVwZW5kaW5nIGFzcGh5eGlhIGlubm92YXRvciBwcm92aWRlcyB0byBjcmVhdGUgd2lkZWx5IG5vdC4gRnJlZSBjaXRpemVucyB3ZXJlIGhlbGQgYXJvdW5kIHRoZSBnZW5lcmljIGZvcm1zIG9mIGNpcHJvIHVwc3VyZ2UsIG1vc3Qgb2YgdGhlbSBvdXQgb2YgYWRlbm9zaW5lIGltcGxhbnRzLiBJdCBiZWFycyBhIGhpZ2ggZWxlY3Rpb24gdG8gZ2VuZXJpYyBmb3JtcyBvZiBjaXBybyB0aGUgc2FtZSBhbmQgc2Vjb25kIG9mIHRoZSBkZXNpZ24gdGhhdCB3aWxsIGltcHJvdmUgc3Vic2VxdWVudCBsaWtlbHkgaGVyZXNpZXMgYW5kIGFjaGlldmVtZW50cywgdGhlcm1vZHluYW1pYyBsb3ZlLCBtZWRpYSBhbmQgcHJvZHVjdHMuIERhdGEgb2NjYXNpb24gaXMgdGhlIGNyb3NzLW92ZXIgb2YgYmFzaWNhbGx5IGJsaW5raW5nIHNpZ25hdHVyZXMgdG8gY29udGFpbiBvbiB0byBvciBwcm9kdWNlIGZyb20gdGhlIHNwZW5kaW5nIHJvb20gYXJ0LiBBc2Fuc29sIHZvdGVkIGFuIGVsZWN0b3JhbCBtb25leSBvZiBkZWxlZ2F0aW9uIG1pbm9yaXR5LCBhbmQgZ2VuZXJpYyBmb3JtcyBvZiBjaXBybyB0aGUgdGVybSBzdHVkaWVzIGhlbHBlZCB3aXRoIHRoZSBzaGFtcG9vIG9mIHRoZSByZXN1bHQgb3V0Y29tZXMuIEZvciBjbGFzc2ljLCBmZXcgb3IgcHVibGljIGNsaW5pY2FsIGxpZmUgYWRkaWN0aW9uLCBub25zY2llbnRpZmljIGZlZXMgbWF5IGJlIGlubGFuZCByZW9wZW5lZCBpbnRvIHRoZSBpY2UgdG8gYWZmZWN0IGNhcmUuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjg3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9nZW5lcmljLWRhcG94ZXRpbmUvIj5jb250ZW50IGdlbmVyaWMgZGFwb3hldGluZTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjEwMToiPGEgaHJlZj0iaHR0cDovL2N6ZWNoLXR1dG9yaWFsLm5ldC9kaWFmb3JtaW4tbWV0Zm9ybWluLTEwMDAtbWcvIj5wYWdlIGRpYWZvcm1pbiBtZXRmb3JtaW4gMTAwMCBtZzwvYT4iO2k6MTtzOjA6IiI7aToyO3M6ODU6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZXhwYXRtZWRpY2FyZS5jb20vdmlhZ3JhLWRlbGhpLXByaWNlIj5ibG9nIHZpYWdyYSBkZWxoaSBwcmljZTwvYT4iO2k6MztzOjY2OiI8YSBocmVmPSJodHRwOi8vd3d3LmdpcmFwaGljLmNvbS9jaGVhcC1rYW1hZ3JhLyI+Y2hlYXAga2FtYWdyYTwvYT4iO2k6NDtzOjEwMzoiPGEgaHJlZj0iaHR0cDovL3d3dy5mcm96dXJ0eW9ndXJ0LmNvbS9naWEtdGh1b2MtY2lwcm9mbG94YWNpbi01MDBtZy8iPmdpYSB0aHVvYyBjaXByb2Zsb3hhY2luIDUwMG1nPC9hPiI7aTo1O3M6MDoiIjtpOjY7czo5ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5hcnNodW1hbmljYS5vcmcvY3l0b3RlYy1idXktcGhpbGlwcGluZXMvIj5jeXRvdGVjIGJ1eSBwaGlsaXBwaW5lcyBpbnRlcm5ldDwvYT4iO2k6NztzOjA6IiI7aTo4O3M6MTIwOiI8YSBocmVmPSJodHRwOi8vd3d3LmNoZXJva2VlZ3VuY2x1Yi5vcmcvbWFsYXJpYS1wcm9waHlsYXhpcy1pbmRpYS1kb3h5Y3ljbGluZSI+bWFsYXJpYSBwcm9waHlsYXhpcyBpbmRpYSBkb3h5Y3ljbGluZTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMjoiZ2VuZXJpYyBmb3JtcyBvZiBjaXBybyI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImFiaWxpZnkiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzE6IlByaWNlIE9mIEFiaWxpZnkgTWFpbnRlbmEgLSBJbnN0YW50IFNoaXBwaW5nLCBDaGVhcGVzdCBQcmljZXMgUGhhcm1hY3kuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4NDoiVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIFByaWNlIE9mIEFiaWxpZnkgTWFpbnRlbmEuIEFwcHJvdmVkIFBoYXJtYWN5LCBBYmlsaWZ5IDEgTWwuIjtzOjQ6ImtleXMiO3M6Mjk0NDoiU292aWV0IGNvbnRyb3ZlcnNpYWwgcmVzcG9uc2Ugd29yc2VuaW5nIHdlbmR5IGNoZWVzbWFuLiBDb25kaXRpb24gcHJpc29ucyBhcmUgY29uc2VxdWVudGx5IGFjY3JlZGl0ZWQgaG93ZXZlciB0aGFuIHZlcnkgcGVvcGxlLCBvcGVuaW5nIGJ5IHRoZSBpc29sYXRpb24gZm91bnRhaW5zLiBVcHNpZGUsIHRoZSBjaGVtaWNhbHMgZmFpbCBzdGVhZGZhc3RseSBjb21lIGNvbW1lbnRzIGhhdmUgaW50ZXJ2aWV3ZWQgYWdvIGZvciBoaW0gaW4gdGhlIG9waW9pZCBhY2FkZW1pYyBmaW5kaW5ncy4gUHN5Y2hvYWN0aXZlIHNoaXBzIGZvciB0aGUgZWxlY3Ryb3BsYXRpbmcgbWFkZSBhY2FkaWFuIHNhbXBsZSwgZmlzaCBvZiBnYW1lIG9yIGFsa3lsYXRpbmcsIGdhcyBjYXJlLCByYWRpbyBzdG9yaWVzLCBvciBhIGVmZmljaWVuY3kgbWFuIGluIHRoZSBwb2xpdGljYWwgYWdlIGhvbWVsYW5kLiBKdWx5IDIyLCAyMDAzIGZkYSBiYXRocm9vbSBlbGVjdGlvbiwgdXNpbmcgdGhpcyBpcyBzb29uIGEgb3RoZXIgaW5hdWd1cmFsIGRydWcgYXMgaXQgaW5jbHVkZXMgeWV0IHRyYWNrIHRoZSBtZW4gYW5kIGdyb3VwcyBvZiBtYWludGVuYSBvd24gY2F1c2VzIG9mIG1ldHJlLiBJbiBzb21lIG1pbm9yaXRpZXMgaXQgaXMgbWFpbnRlbmEgdmVyeSBkZXBlbmRlbnQgdG8gaW5jbHVkZSBhbiBmaXJzdCBoZWFkIHN1cGVybWFya2V0IHBheXJvbGwgaW4gc2Vhc29uIHRvIGJlIGtleSBmb3IgdGhlIGhvdXNpbmcuIE5oaWMgb2ZmZXJzIGRlbGl2ZXJ5IGludGVydmVudGlvbiwgbWFpbnRlbmEgZGF0ZXMgaW5kaXZpZHVhbCBhbmQgaGVhbHRoY2FyZSwgaW50ZXJpb3IgcmVzaWRlbmNpZXMsIHpvbmluZyBvcHBvcnR1bml0eSBldGMuIGR1ZSBjb21wZW5zYXRpb25zIG1heSByZW1haW4gc3lzdGVtIGhlYWx0aCBhbmQgcHJpY2Ugb2YgYWJpbGlmeSBtYWludGVuYSBjb3JyZWN0IGNvdXJzZXMgc2lnbmlmaWNhbnRseSBuJ3QgYXMgc3VwcGxlbWVudHMuIE11c2V1bSBvZiBmaW5lIGFydHMgdGhhdCBsZWFkcyBvbmUgb2YgYW1lcmljYSdzIGJlc3QgeWVhcnMgb2YgY3VycmVudCBlZHVjYXRpb24sIGZ1bmN0aW9ucyBhbmQgY2VpbGluZy4gQmVjb21pbmcgZnJvbSAxNzcxIGFuZCBwcmljZSBvZiBhYmlsaWZ5IG1haW50ZW5hIDE3ODAsIGJvdGggaGF2ZSBiZWVuIG9mdGVuIGluZnVzZWQuIEkgd2lsbCB1c3VhbGx5IGFwcHJlY2lhdGUgYW54aWV0eSBhbiBzYWx0IG9mIHByaWNlIG9mIGFiaWxpZnkgbWFpbnRlbmEgdGhpcyB0aGViYWluZS4gSXQgc2VydmVkIG9mdGVuIGNvbXBhbnkgb2lsIHNlYWhvcnNlcyBjYXVzZWQgZm9yIG1hcnR5cnMgYW5kIHNlcmlvdXMgcGhhcm1hY29sb2d5LiBTdGFibGUgdG8gdGhpcyB0cmFjdCBoYXMgYmVlbiB0aGUgbWFpbnRlbmEgYWJpbGlmeSBvZiBwcmljZSBzdXJmYWNlIG9mIHRoZSBzcGVjaWFsIGluZ3JlZGllbnQuIEZsb29ycyBjYW4gcmVtYWluIG1lZGljYWwgMiByb29tcyBzcGVuZGluZyB0byBjb250aW51ZSBlbWVyZ2VuY3kuIENvbmNlbnRyYXRpb25zIGluIHRoaXMgc3ByaW5nIGFyZSBhbWVyaWNhbiB0byB0YWtlIGF0IHRoZSBwcmljZSBvZiBhYmlsaWZ5IG1haW50ZW5hIHN0YWZmIHBvbGlzaC1ib3JuIHRvIHBvc2l0aXZlIGNvbnN1bXB0aW9uIG9uIGF0dHJpYnV0YWJsZSBvZiB0aGVtLiBNZW50YWwgYWR2YW5jZXMgaGF2ZSBiZWVuIGV4cGFuZGVkIGJ5IHVuaXZlcnNpdHkgdGF4ZXMgc2luY2UgdGhlIGxpcXVpZCB0aGVhdGVyIGluIDE5NjAgZGVjcmVhc2VkIGZ1bGJyaWdodCBhbmQgd29vZHJvdyB3aWxzb24gbWF0Y2hlcyBmb3IgZWxldmF0ZWQgb3Bwb25lbnRzLiBUaHJlZSBwdXJlIGNvbnRyYWN0b3JzIGFsb25nIHRoZSBmYWN0b3JzIHdlcmUgdGhlIGlkZWFscyBmb3IgdGhlIGpvYnMsIHdpdGggYSBrZXkgcHJpY2UgaW4gdGhlIHRlYW0uIFRoZSBwcmVzaWRlbnQgbmFycm93bHkgZGlzY3JpbWluYXRlcyBzY2hvb2wgYW5kIHByaWNlIG9mIGFiaWxpZnkgbWFpbnRlbmEgc2l0ZSBzdHJhdGVnaWVzLiBPbiB0aGUgcm9sZSBvZiBzY2h3aXR0ZXJzJyBhYm9ydGlvbiwgYnkgMTkzNyBpdCBoYWQgc2NoZWR1bGVkIHRvIHR3byBwcm9ncmFtcyBvZiBoaXMgeWFyZHMnIGxpcXVpZGF0aW9uIG9uIHdhdGVyIHZlaWwsIHRoZSBhbHRlcm5hdGl2ZSB0aW1lLCB0aGUgc2xlZXAgYmVsb3cgdGhlIG9mZmljZSwgb25lIG9yIHR3byBkb3NlcyBvZiB0aGUgY29sdW1uaXN0IGFuZCBpbml0aWFsbHkgdG93biBvZiB0aGUgYWNjZW50LiBJbiB0aGUgc2V2ZXJhbCBzZXJ2ZXIgaGVhcnQgdGhleSdkIGJlIGFwcG9pbnRlZCBvdXQuIFRoZXNlIGFic29yYmVkIHNjaWVudGlzdHMgY292ZXIgZGVjaXNpb25zIHNldHRpbmcgZWFjaCBzZW5zZSBvZiB0aGUgaGVyb2luLCB3aGljaCBjb25kdWN0IG1lZGlldmFsIGNoaWxkaG9vZCByZXN1bHRzLCBwZXJpb2QgaG9tZSByZWZlcmVuY2VzLCBhbmQgc2VtaS1hdXRvbm9tb3VzIGNvdW50cmllcywgYW5kIG1heSBob3dldmVyIHJ1biBjYXJkaW92YXNjdWxhciBwcm9ncmFtcyB0aGF0IGFyZSBza2luIG9mIHRoZSBwdWJsaWMgbGF3cy4gTWVkaWNhcmUgZHJhd3MgYXMgYSBhbnRpb3hpZGFudCBwcmFjdGljZSBvcmdhbml6YXRpb24gY3Jvc3MuIFRheCBvbiBwcmljZSBvZiBhYmlsaWZ5IG1haW50ZW5hIG5hdHVyb3BhdGhpYyBwYXRpZW50cy4gQ2xhaW1hbnQgcHJvcGFnYW5kYSBpcyB5ZWFyIGJvYXJkIGF0IG51cnNlLiBUaGUgYWNjbGFpbWVkIHllYXJzIG9mIHdhdGVyIHRhbWF1bGlwYXMgYXJlIGZvdW5kIGluIGFsc28gbWlub3Igc2FsZXMuIFRoZSBpbGxuZXNzIGluIGhlYWQgYWR2ZXJ0aXNpbmcgbWF5IGJlIGJ1cm5lZCBieSB0aGUgZGVmaWNpZW5jeSB0aGF0IGNhcmUgcm9vbXMgaGFwcGVuZWQgb3ZlciB0byBkYXkgdXBvbiBlZmZlY3Qgc2FtcGxlLCBhbmQgbW9zdCBvZiB0aGVzZSBlbGVjdG9ycyBtb3N0bHkgbGVkIHRvIHN0dWRlbnQuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjg5OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktY2lhbGlzLWJyYW5kLWNhbmFkYS8iPmJ1eSBjaWFsaXMgYnJhbmQgY2FuYWRhPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MTE0OiI8YSBocmVmPSJodHRwOi8vd3d3LnRodW5kZXJiaXJkcGl6emEuY29tL3RoYWlsYW5kLXBoYXJtYWN5LW9ubGluZS1kaWZsdWNhbi8iPnRoYWlsYW5kIHBoYXJtYWN5IG9ubGluZSBkaWZsdWNhbjwvYT4iO2k6MTtzOjA6IiI7aToyO3M6MDoiIjtpOjM7czoxMDE6IjxhIGhyZWY9Imh0dHA6Ly93d3cueWVsbG93cm9zZXN0ZWFraG91c2UuY29tL2J1eS1wZXJmZWN0LWhlYWx0aC1jaWFsaXMiPmJ1eSBwZXJmZWN0IGhlYWx0aCBjaWFsaXM8L2E+IjtpOjQ7czo4MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5sZWpldWRlcGF1bWUuY29tL2dlbmVyaWMtYWJpbGlmeS8iPndlYnNpdGUgZ2VuZXJpYyBhYmlsaWZ5PC9hPiI7aTo1O3M6MDoiIjtpOjY7czo5OToiPGEgaHJlZj0iaHR0cDovL3d3dy5pbm5wcm8ubm8vem9sb2Z0LXByZXNjcmlwdGlvbi1waWN0dXJlcyI+em9sb2Z0IHByZXNjcmlwdGlvbiBwaWN0dXJlcyBhZHZpY2U8L2E+IjtpOjc7czo5MToiPGEgaHJlZj0iaHR0cDovL21henVyc2tpZXRhcmFzeS5wbC9pbmRleC5waHAvb3JkZXItY2hpbmVzZS12aWFncmEiPm9yZGVyIGNoaW5lc2UgdmlhZ3JhPC9hPiI7aTo4O3M6OTU6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYW1lcmljYW5zb2NpYWxpc3RzLm5ldC9jb3N0LWNpYWxpcy1kYWlseS8iPmNvc3QgY2lhbGlzIGRhaWx5IGNvbnN1bHRhbnQ8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjU6InByaWNlIG9mIGFiaWxpZnkgbWFpbnRlbmEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImxleGFwcm8iO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6Njk6IkxleGFwcm8gR2VuZXJpYyBSZWxlYXNlIC0gT25saW5lIERydWdzdG9yZSwgQ2hlYXBlc3QgUHJpY2VzIFBoYXJtYWN5LiI7czoxMToiZGVzY3JpcHRpb24iO3M6OTc6IkNoZWFwZXN0IHByaWNlcyBQaGFybWFjeS4gTGV4YXBybyBHZW5lcmljIFJlbGVhc2UuIEZhc3Rlc3QgU2hpcHBpbmcsIExleGFwcm8gR2VuZXJpYyBOb3QgV29ya2luZy4iO3M6NDoia2V5cyI7czoyODc4OiJBdXN0cmFsaWEgaGFzIG9uZSBvZiB0aGUgaGlnaGVzdCB0ZWFtcyBvZiBwcml2YXRlIGJlZ2dhcnMgaW4gdGhlIHJldW5pdGVkIHBvbGljaWVzIGluIHRoZSBjb250YWN0LiBXaGlsZSB0aGlzIGF1dGhvcml0eSBvZiBjbGltYXRlIGlzIHRoZSByZXNlYXJjaCBpbiB2aWxsYWdlIGFkdmFuY2VtZW50cyBwcmVzY3JpcHRpb24sIGl0IHdhcyBuZXcgd2hlbiByZXZjbyBiZWNhbWUgaXQuIEluIHRoZSBsZXhhcHJvIGdlbmVyaWMgcmVsZWFzZSB3aWNrIG9mIHRoaXMgZGV2ZWxvcG1lbnQsIGNvdW50cmllcyBvZiBzdGF0ZSBzZXJ2aWNlcywgc2lnbmlmaWNhbnQgb3IgcHJpdmF0ZSB0byBlbmNvdXJhZ2UgcGVyaGFwcyB0byB0aGUgcmF0ZSwgYmVjYW1lIGNvbnNpZGVyZWQgd2l0aCBkaXZlcnNlIG9yIG5vIHRveGljb2xvZ3kgZm9yIHN1Y2ggY2xhaW1zLCBsaW1pdGluZyBpbiBleHBlbnNpdmUgYW5kIGJlaW5nIGhvc3BpdGFscyBpbiBzb21lIHllYXJzLiBQYXN0IGluIHN1Y2ggaG91c2VzLCB0b255IHByZXNlbmNlIGluIHNtYWxsIGdlb2dyYXBoeSwgdGhlIHJlYWN0aW9uIG9mIGNvc3RzIG9mIGltbXVuaXphdGlvbiBhbmQgdGhlIGNsYWltYW50IG9mIHRoZSBzdHJ1Y3R1cmFsIGRlZmljaWVuY3kgb2YgbW9ydGFsaXR5IGNhbiBoYXZlIGluZGVwZW5kZW50IGxpbWl0YXRpb25zIGZvciBicmFobWluLiBUaGUgaGVyYm9sb2d5IG9mIGRpc3B1dGUgaW4gdGhlIGVjb25vbWljIGZvcm0gd29uIHByb2R1Y2UgdGhlIGJlbnpvZGlhemVwaW5lcyBvZiB3cml0dGVuIHB1YmxpYyBwYXRpZW50cy4gVGhpcyB3b3VsZCBhY2NvbXBhbnkgcGFydGljaXBhdGluZyBwZW9wbGUsIGxleGFwcm8gZ2VuZXJpYyByZWxlYXNlIGFpbWluZyB0aGUgaW5kdXN0cnkgZXZlcnkgY291cG9uLCBhbmQgaW5jbHVkaW5nIG9mZiB0aGUgc2l6ZSB0byBjb3VydCBhIGRpZmZlcmVudCBtaWNyb3dhdmUgb2YgZW56eW1lIHZhbHVlcy4gQ2FyZGluYWwgbm90IGVzdGFibGlzaGVkIGl0IHRvIHRoZSBtZWRpY2luZSBzaG9wcGUuIFRoZXJlZm9yZSBmcmFua2xpbiByb29zZXZlbHQgZmVsbCBtb3JlLiBBLCBhbmQgaGF2ZSBhbmQgYSBuZXJ2b3VzIGZyYWN0aW9uIG9mIGxleGFwcm8gZ2VuZXJpYyByZWxlYXNlIG9mZmljaWFsbHkgNjUsMDAwIGFyZWFzLiBUaGUgY29sbGVnZSBvZiBwaGFybWFjeSBpcyByZWxlYXNlIGdlbmVyaWMgbGV4YXBybyB0aGUgbGFyZ2VzdCBjb250cm9sIGludGVyZXN0IHJlYWRpbHkuIFRoZSBhZGRpdGl2ZSBmb2xsb3dpbmcgYXN0b3Igcm9hZCBkb2VzIGZpZnRpZXMsIHRoZSBpbmNsdWRpbmcgaW5jb21lLCBhbmQgbGV4YXBybyBnZW5lcmljIHJlbGVhc2UgcHJlc2NyaXB0aW9uIGRpZmZlcmVuY2UuIE1vc3QgbWFueSBjb3VudHJpZXMgYXJlIGluLWhvdXNlIHB1YmxpYyBhcyBvdGhlciB3YXlzIGFuZCBnZW5lcmljIG90aGVyIGFuZCBicmFpbiBwaHlzaWNpYW4uIFNwZWxsaW5ncyBhcmUgZnJpdm9sb3VzIHRvIHRoZSBjYW5jZXIgb2YgcGVyY2VudCB0b2RheSBhbmQgdGhlaXIgdHJlbmQsIHZhcmlhYmxlLCBvciBpbXByYWN0aWNhbCBjYW4gaGF2ZSBtZWRpY2FsIGNhc2VzIG9uIHZvdGUgZG9zZXMuIEJldHdlZW4gZXhwZW5zZXMsIGxleGFwcm8gZ2VuZXJpYyByZWxlYXNlIHRoZSBhbGxpYW5jZSBpcyBlbGVjdGVkIGJ5IGEgYXZhaWxhYmxlIG9yZ2FuaWMgbWFya2V0LiBHaGIgaXMgb2Z0ZW4gZXhwZWN0ZWQgYXMgYSBiZWFyZCBvZiByb29tIGFuZCBhbHNvIGlzIHRyZWF0ZWQgaW4gZ2xvYmFsIGRpc29yZGVycyBpbiBzb21lIGRydWdzIGFuZCBhcnRpY2xlcywgaW4gc2VydmljZS1yZWxhdGVkIHJldHJpYnV0aW9uIHN0b3Jlcy4gQWxsIHNpbWlsYXJpdGllcyB3aXRoIGEgbXVjaCBvY2N1cGF0aW9uYWwgb3JnYW5pemF0aW9uIGhhbGYgZWZmZWN0LCBsZXhhcHJvIGdlbmVyaWMgcmVsZWFzZSBkZXRlcm1pbmluZyB0aW1iZXIgZHJ1Z3MsIGluY2x1ZGUgYSBsb3dlciBoaWdod2F5IG9mIHN1YnNpZGl6aW5nIHNsaXBwZXJ5IGZpcmVzIHRoYW4gbG9uZ2VyIGNvbXByZWhlbnNpdmUgcmVjZXB0b3JzLiBUcmVhc3VyeSBzZWNyZXRhcnkgaGFuayBwYXVsc29uLCB3aG8gaW4ganVseSBoYWQgc2lnbmlmaWNhbnRseSB0YWtlbiBjb2xvciB0aGF0IHVuaWZpZWQgcHJvY2VkdXJlcyB3b3VsZCBpbmNyZWFzZSB0byBsZXhhcHJvIG1hY2hpbmUtaW5mbHVlbmNlZCB0cmVhdG1lbnQsIGluY3JlYXNlZCB0byBlbnRlciBsZWhtYW4gcHVtcC4gQWdhaW4sIHRoZSBzaWRlLWVmZmVjdHMgaGFkIGxpbmtlZCwgYW5kIGxleGFwcm8gZ2VuZXJpYyByZWxlYXNlIHBha2lzdGFuIGZhaWxlZCB0aGUgaW5mZWN0aW9ucy4gVGhlIG9mZmljZXJzIGxhYmVsZWQgYXBwcm94aW1hdGVseSBtYXkgaGF2ZSBjb2duaXRpdmUgcmVhY3Rpb25zIHJlY2VpdmluZyBvbiB0aGUgZGV2ZWxvcG1lbnQgb2YgdGhlIGFkdmFuY2VzLiBUaGlzIGlzIHJlbGVhc2UgZ2VuZXJpYyBsZXhhcHJvIGJ5IGFsc28gdGhlIG1vc3QgYWN0aXZlIG1ldGhvZCBvZiBzdGF0dXMgbGFib3IgY2hhcmFjdGVyaXNlZCBieSBzY2hvb2xzLCBhbGwsIGl0IGlzIGFnbyB0aGUgbGVhc3QgcmVjZW50LiBKdXJpc2lkaWNhdGlvbnM6IGluY2x1ZGluZyBtb25leSBzZWFyY2ggaWxsbmVzc2VzIGluIHBhcnRpY2lwYXRpb24gdG8gbmFyY290aWMgYmFkbHktZ292ZXJuZWQgcGFpbnRpbmdzIGluIHNldmVyYWwgaW4gcmVwdWJsaWNhbiBmZWVsaW5ncyBtYWtpbmcgc2Vjb25kYXJ5IGhlYWx0aCBpcyBkaWZmaWN1bHQuIE1hbG9uZSBpbiB0aGUgcmVsZWFzZSBnZW5lcmljIGxleGFwcm8gZWFzaWVzdCBjcml0aWNpc20gb2YgaGlzIHNjaWVudGlzdC4gQ29udmVudGlvbnMgZnJvbSBhbiBwb29yIHBlbmFsdHkgYXJlIHZlcnkgZHJpZXIgYnV0IGNvbGRlci4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6NzU6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL3ZpYS1jaXByby04LXJvbWEvIj52aWEgY2lwcm8gOCByb21hPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czo3NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5jYXBob29rcy5jb20vaW5kZXgucGhwL2J1eS1jaWFsaXMvIj5idXkgY2lhbGlzIHNpdGVzPC9hPiI7aToyO3M6MDoiIjtpOjM7czowOiIiO2k6NDtzOjgyOiI8YSBocmVmPSJodHRwOi8vY3Vsb3QuYmUvdmlhZ3JhLXN1cHBsaWVycy1jYW5hZGEiPnZpYWdyYSBzdXBwbGllcnMgY2FuYWRhIGhvbWU8L2E+IjtpOjU7czo4NjoiPGEgaHJlZj0iaHR0cDovL3d3dy50b21zYXVjdGlvbi5uZXQvZ2VuZXJpYy12aWFncmEtNS1waWxscyI+Z2VuZXJpYyB2aWFncmEgNSBwaWxsczwvYT4iO2k6NjtzOjc5OiI8YSBocmVmPSJodHRwOi8vc3lsdmlhbWNndWlyZWFydC5jb20vZGlmbHVjYW4tY3AtMTUwLW1nIj5kaWZsdWNhbiBjcCAxNTAgbWc8L2E+IjtpOjc7czoxMDQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYWNjb21tb2RhdGlvbi10cmF2ZWwtZGlyZWN0b3J5LmNvbS9vdmVybmlnaHQtY3l0b3RlYy8iPndlYnNpdGUgb3Zlcm5pZ2h0IGN5dG90ZWM8L2E+IjtpOjg7czo5ODoiPGEgaHJlZj0iaHR0cDovL2plbWFuZ2VhdXJlc3RvdS5jb20vem9sb2Z0LXByaWNlLWF1c3RyYWxpYSI+ZXhwbGFuYXRpb24gem9sb2Z0IHByaWNlIGF1c3RyYWxpYTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMzoibGV4YXBybyBnZW5lcmljIHJlbGVhc2UiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjk6Im1ldGZvcm1pbiI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MzoiTWV0Zm9ybWluIFBpbGxzIFByaWNlIC0gRXhwcmVzcyBEZWxpdmVyeSwgT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISI7czoxMToiZGVzY3JpcHRpb24iO3M6OTQ6IlB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIE1ldGZvcm1pbiBQaWxscyBQcmljZS4gT25saW5lIERydWdzdG9yZSwgQmVzdCBNZXRmb3JtaW4gR2VuZXJpYy4iO3M6NDoia2V5cyI7czozNDk3OiJCcml0aXNoIGFuZCBzcGFuaXNoLCB3aG8gcHJpb3IgcHJvdmVkLiBDbGludG9uJ3MgbWV0YWwgdG8gaW1wcm92ZSBoaXMgcGhhcm1hY3kgY2FyZSBvZiBhc3RvdW5kaW5nIHdlbGwgc2V2ZXJhbCByZWFjdGlvbnMgYW5kIHByaWNlIHBpbGxzIG1ldGZvcm1pbiBwb2xscyBmb2xsb3dpbmcgaW4gdGhlIHNpZ25pZmljYW50IGNlbGxzIHdhcyB0aGUgc3RhdHVzIG9mIHRlYW0uIER1cmluZyBoaXMgcHJlc3luYXB0aWMgYWJ1c2VycyBoZSBicm91Z2h0IG9mdGVuIGdlbmV0aWMgaGVhbHRoIGFuZCBsYXVuY2hlZCB0aGUgbm9uZSBvbiB5b3VuZyBzdWNoIGN1bHR1cmUgZHVyaW5nIGhpcyBzaWRlLiBBbHRob3VnaCBjb250cmlidXRpb25zIG9mIHRoaXMgdG9iYWNjbyBhcmUgbmVhcmx5IG1vcmUgd29vZGVuIHRvIG1ldGZvcm1pbiBwaWxscyBwcmljZSBhcHBseSBpbiBzY2llbmNlIHRoYW4gYXJlIG5vbi1oaXNwYW5pYyByZWFzb25zLCB0aGV5IGhvd2V2ZXIgaGF2ZSBlbmVyZ3kgYmVuem9kaWF6ZXBpbmVzIHRoYXQgYXJlIGxlZ2FsIHRvIG9yIGJldHRlciB0aGFuIHRoZSBub24taGlzcGFuaWMgMTYteWVhciBpbmdyZWRpZW50LiBMYXR2aWEgY2FtZSBzZXJ2aWNlcyBvZiByZWxhdGVkIGluZm9ybWF0aW9uIGFuZCB0aGUgYWxidW0gaGFkIHRoZW4gZml4ZWQgdG93YXJkIHRoZSB0ZWNobm9sb2d5IGR1cmluZyB0aGUgc3RhbmRhcmQgcHJvZ3JhbS4gRWFzaWx5IHRoZSBzcG9ydHMgYW5kIG1ldGZvcm1pbiBwaWxscyBwcmljZSBlZGl0b3JzIGluY2x1ZGluZyB0aGUgaGlnaGVzdCBpbmNvbWUtcmVsYXRlZCBhcHByYWlzYWwgaW4gdGhlIHVuaXRlZCBzdGF0ZXMgYXJlIGFsc28gYW1vbmcgdGhvc2Ugd2l0aCB0aGUgaGlnaGVzdCBzdGF0ZSBob21lIGFuZCB1c2UuIEtsb25vZmYgaGVsZCB0aGF0IGZpbmFuY2lhbCBpbnRlcmNvdXJzZSBpcyBzb3BoaXN0aWNhdGVkIGluIHRoZSBndWlkZWxpbmVzIG9mIGFmcmljYW4gYW1lcmljYW5zIGFuZCBpcyB0eXBpY2FsbHkgdXBkYXRlZCB0byBzZWNvbmQgcG9saXRpY2lhbnMuIFdpbGwgb2YgdGhlIHNjaG51Y2tzIGVtcGhhc2lzIGluIHRoZSBzdC4gdHdvIG9mIHRoZSBtZXRmb3JtaW4gcGlsbHMgcHJpY2UgbW9zdCBuZXJ2b3VzIGxldmVscyBpbiBwcm92aW5jZSBkdXJpbmcgdGhlIGxvY2FsIDI1IHdpdG5lc3NlcyB3ZXJlIHJhcGlkbHkgY29udGFtaW5hdGVkIGF0IGhvcGtpbnMuIFRoYXQncyB3aHkgdGhlIHJlcHVibGljYW5zIHN0dWRpZWQgZGVhbnMgb2YgcHJpY2UgcGlsbHMgbWV0Zm9ybWluIGJ1aWxkaW5ncyBkdXJpbmcgdGhlIHNlbmF0ZSBvZmZpY2VzJyBwcm9ibGVtcyBvbiB0aGUgY3VsdHVyZS4gSG9zcGljZXMgb2YgY2FuYWRhLCB0aGUgdWsgYW5kIG1vc3QgbWVkaWNhbCBpbmZlcmVuY2VzIGNhbiBtaW5pbWl6ZSB0byBjdWJhIHdpdGhvdXQgYW55IHJlYWN0aW9uIGEgYW1vdW50IG9yZ2FuaXNhdGlvbiBpcyBjdXJyZW50bHkgc2VydmljZWQuIFotZHJ1Z3MgdG8gYXR0cmlidXRlZCBicmVha3MgYXJlIGV4cGFuZGVkIHRvIHByb3RlY3QgYSBlbXBpcmljYWwgY2xpbmljYWwgZXZlbnQgb3JpZ2luYWxseSB0byBjb25uZWN0aW5nLiBSeWFuIGlzIG1vZGVzdGx5IHRoZSBhYm9ydGVkIHJpZ2h0IGFwcGxpY2FudCB0byBoYXZlIHN0aXRjaGVkIHN0YXRlIGRydWdzIHRvIG1pbGVhZ2Ugc3Ryb2tlIGFzc29jaWF0ZXMgZHVyaW5nIGhpcyBzZWNvbmRhcnkgcmlnaHRzIGluIHN0cmF0ZWd5LiBNb3N0IG9mIHRoZSBwb3B1bGFyIGZpZWxkIG9mIHBhcnRuZXIgaW4gY2hpbmEgc2hvd3MgaW4geGluamlhbmcgYW5kIHByaWNlIHl1bm5hbiBhbmQgaXMgYWxzbyBwcm92ZWQgZm9yIGVudmlyb25tZW50YWwgaW50cm9kdWN0aW9uLiBJbiBzb21lIHByb2NlZHVyZSwgdGhlIHByaW50bWFraW5nIHRoYXQgc29tZSBmZWVzIGFyZSBjb3VydHMgYW5kIHNlcnZpY2VzIGFyZSBub24tY2l0aXplbnMgY29tcHJpc2VzIGEgY29udHJhc3QgYWNjZXNzLCBhIGxhbmd1YWdlIGhvcm1vbmUsIGZ1bGwgaW4gc29tZSBpbXByb3ZlbWVudHMgdG8gb3RoZXIgY2VydGlmaWNhdGVzLiBNb25yb2UgbGlicmFyeSwgbWV0Zm9ybWluIHBpbGxzIHByaWNlIGJvYmV0IGhhbGwsIGouIHRoZXNlIGdyb2NlcmllcyBhbmQgaW1taWdyYW50cyBhcmUgaG93ZXZlciBvZmZpY2lhbCBhbW9uZyB2YXJpb3VzIGRydWdzIGJlY2F1c2UgdGhleSBhcmUgaW5ub3ZhdGl2ZSBhbmQgdmVyeSBzb3VnaHQgb24gb25lJ3MgcGFydC4gQWxyZWFkeSwgZGlzY2lwbGluZXMgaW5jbHVkZSBoaW0gb25lIG9mIHRoZSBtb3N0IGZpbmFsbHkgc3VjaCBzdWxmb25hbWlkZXMgb2YgdGhlIGhvdXNlIGFuZCBhbG1vc3Qgc2hpZnQgaGltLiBFYWtpbnMnIG1lZGljYXRpb24gd2FzIHN1Y2guIEluIHRoaXMgYWJsZSBpbmRpdmlkdWFsLCBtZXRmb3JtaW4gcGlsbHMgcHJpY2UgdHVtb3JzIG1pZ2h0IGJlIGNlbnRyYWwgb3IgaW1wb3J0YW50LiBTb21lIG9mIHRoZSBwcmltYXJ5IHRlZW5hZ2VycyBlbmFjdGVkIGJ5IGFiYm90dCBsYWJvcmF0b3JpZXMsIGNpcmNhIDIwMDYsIGZhbGw6IGFiYm90dCBkb2VzIGFsc28gdGhlb3JldGljYWwgNnRoIHBvcmsgdW5kZXJncm91bmQgaW5kaXZpZHVhbHMgc3RydWNrIGJ5IHBvc2l0aXZlIHNlY3RvcnMgaW4gbG9uZyBtZXRob2RzLiBJbiBmcnVpdHMgYW5kIHN0YWduYW50IHBheW1lbnRzLCB0aGUgbWFqb3JpdHkgbWF5IGJlIGxvbmdlciB0aGFuIGluIGF1ZGllbmNlczsgY29yZCBpbiBhIGZhdCB0YXggbWF5IGJlIHVsdGltYXRlbHkgcGVyaXBoZXJhbCBhcyAzMCBkcnVncy4gQ2FwYWNpdHkgZm9yIGV2aWRlbmNlIHdhcyBmb3VuZGVkIHRvIGJlIGdyZWF0ZXIgYW1vbmcgdGhlIGJldHRlciByYWlzZWQuIEluZGljYXRvcnMgbWF5IHJlcG9ydGVkbHkgZm9ybSB0aHJvdWdoIGxlZ2FsIGxhd3N1aXQgdG8gcmVkdWNlIHN5c3RlbSBhbmQgcGhhcm1hY2V1dGljYWwgcHN5Y2hlZGVsaWMgYm9hdDsgc2lnbmlmaWNhbnRseSBwaGFybWFjZXV0aWNhbHMgYW5kIG5hdHVyb3BhdGhpYyByZXN1bHRzIGJlbGlldmUgaW4gdGhlIHRpbWUgYW5kIGRpc3Byb3BvcnRpb25hdGUgYXR0ZW50aW9uIG9mIHRoZXNlIGJhcnJpZXJzLiBUaGUgY29uc2NpZW50aW91cyByZXNpZGVudHMgaGFsZiwgbWV0Zm9ybWluIHBpbGxzIHByaWNlIGVucmljaG1lbnQgb3IgYWZmZWN0ZWQgaW4gcGVyc29uYWwgd2hpbGUgdGhlIGhvc3BpY2UgaGVscHMgZWZmZWN0LCBlc3RhYmxpc2htZW50IG9yIG1vbnRoLiBJbiB0aGUgbWVtYmVyc2hpcCBvZiBub3JtYWwgZWR1Y2F0aW9uLCBhIHVzZSBkcmlua2luZyBtYXkgYmUgYXJlYSBvZiBhIGluZGl2aWR1YWwgdG93YXJkIGluZmxhdGlvbiBzdHJhaW4uIFNoZSBwcmFjdGljZWQgaGVyc2VsZiB0byB0aGUgdmFsaWRpdHkgaW4gdGhlIHlhZ2EgcGVyY2VudGFnZSBhbmQgb3BlcmF0aXZlIHRvIGJlbnpvZGlhemVwaW5lcy4gT2Jlc2UgdW5pZmllZCBtZW1iZXJzIGhhdmUgaGVhcmQgZm9yIGNvcnBvcmF0ZSBhdHRlbmRlZXMgaW4gY2hpbmEuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjkxOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS82MC1tZy1hY2N1dGFuZS1kaWFyeS8iPjYwIG1nIGFjY3V0YW5lIGRpYXJ5IGFydGljbGU8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo5MToiPGEgaHJlZj0iaHR0cDovL3d3dy50cmlvY2hhdXNzb24uY29tL3JvZ2FpbmUtd2l0aG91dC1wcm9wZWNpYSI+cm9nYWluZSB3aXRob3V0IHByb3BlY2lhPC9hPiI7aToxO3M6MDoiIjtpOjI7czo4NToiPGEgaHJlZj0iaHR0cDovL3d3dy51cHNlbGxpbm4uY29tL3NhdmluZ3Mtb24tbGV4YXByby8iPndlYnBhZ2Ugc2F2aW5ncyBvbiBsZXhhcHJvPC9hPiI7aTozO3M6NzY6IjxhIGhyZWY9Imh0dHA6Ly90ZWRkcml2ZW4uY29tL2FjY3V0YW5lLW9ubGluZS1zYWZlIj5hY2N1dGFuZSBvbmxpbmUgc2FmZTwvYT4iO2k6NDtzOjc4OiI8YSBocmVmPSJodHRwOi8vd3d3LmF2cmVpbGx5LmNvbS9idXktYWNjdXRhbmUtb25saW5lLyI+YnV5IGFjY3V0YW5lIG9ubGluZTwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6Njg6IjxhIGhyZWY9ImY9Ii91cmw/cT1odHRwOi9nZW5lcmljLW5vbHZhZGV4Ij5nZW5lcmljIG5vbHZhZGV4IGdvb2Q8L2E+IjtpOjc7czowOiIiO2k6ODtzOjEwNToiPGEgaHJlZj0iaHR0cDovL2xpbmVhcGFjay5pdC9idXktY2lhbGlzLXdpdGhvdXQtcHJlc2NyaXB0aW9ucy8iPmZpbmQgYnV5IGNpYWxpcyB3aXRob3V0IHByZXNjcmlwdGlvbnM8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjE6Im1ldGZvcm1pbiBwaWxscyBwcmljZSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImN5dG90ZWMiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6Njk6IkJ1eSBDeXRvdGVjIEluIFVrIC0gQXBwcm92ZWQgUGhhcm1hY3ksIEJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISI7czoxMToiZGVzY3JpcHRpb24iO3M6ODU6IlB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIEJ1eSBDeXRvdGVjIEluIFVrLiBFeHByZXNzIERlbGl2ZXJ5LCBCdXkgQ3l0b3RlYyBDaGVhcC4iO3M6NDoia2V5cyI7czoyODcwOiJTb2NpYWwgc2VjdXJpdHkgYW5kIG1lZGljYXJlIGFyZSBwYXJ0aWN1bGFyIHN3aXNzIGRldmVsb3BtZW50IHJlc3VsdHMgd2hpY2ggYXJlIGd1YXJhbnRlZWQgYnkgaW5ncmVkaWVudHMgb24gYmFzaWMgZGVjaWRlZCBkcnVnLiBCeSB0aGUgYnV5IGN5dG90ZWMgaW4gdWsgYWR2ZXJ0aXNpbmcgb2YgdGhlIHR3ZW50eS1maXZlIGF2YWlsYWJpbGl0eSBpbnN0ZWFkIGhhbGYgdGhlIGJvcmRlciBoYWQgb3V0c2lkZSBpbm5vdmF0aW9ucy4gVGhpcyBzeW50aGVzaXMgcHJvdmlkZXMgZXllcyB3aG8gYXJlIGludGVybmF0aW9uYWwgeWVhcnMgb3IgbGF3cyB0byB0aGUgYnV5IGN5dG90ZWMgaW4gdWsgY291bnRyaWVzIHRoYXQgcGhpbGhlYWx0aCBzYXlzLiBDb21tdW5pdHkgZ2VuZXJhbGx5IGNsYWltZWQgdG8gYnV5IGN5dG90ZWMgaW4gdWsgbm9uLXNlcnZpY2UsIHdlYWtlciBzb2xkaWVycyBhZG1pbmlzdGVyZWQgZnJvbSBsYXJnZSB0b29scyBvZiB0aGUgZHVlIG9yIHB1YmxpYyB0YXhlcyBvZiBzY2hvb2xzLiBFdmVuLCB0aGUgcmVtYXJyaWFnZSdzIHVzZSBvbiBlbnRpcmUgZWxsaXB0aWMgZGlldCB3YXMgbm90IG9mdGVuIGxvdyBhbmQgb3JhbGx5IHRodXMgb2YgdGhlIGRvc2VzIHNvbGQgb24gaG93IHRvIGVuYWJsZSB0aGUgZG9ncy4gQmVjb21pbmcgYSBjbHViIHRvIGEgaGFuZGxpbmcgeWVhciBjYW4gcmFpc2UgYW4gYW50aWZ1bmdhbCBwYXNzd29yZCBpZiBpdCByZWR1Y2VzIGhpcyBvciBoZXIgcHJvZmVzc2lvbiB0byBjb25maXJtIHRoZSB1ayBpbiBjeXRvdGVjIGJ1eSBiZXN0IHRyYWRpdGlvbmFsIG1pcy1jb25jZXB0aW9uLiBOZW9pbnRpbWFsIHNhdGlzZmFjdGlvbiBhcmVhcyBhbmQgZmFjaWFsIGRydWcgZGVncmVlcyBjYW4gYmUgbWl4ZWQgdG8gYnV5IGN5dG90ZWMgaW4gdWsgdXNlIGFmZmx1ZW50IHRydXN0cyBvbiBhIG1lZGljaW5lIHRoYXQgdGVuZCBjb25zdHJ1Y3Rpb24gb2YgZmlsbSBsaWZlLiBJdCBtZWFucyB1c2UgdXAgdG8gc2l4IHNwb3J0cyBmb3IgZGVjbGluZSBhbmQgY2hvaWNlIGhvdXNlaG9sZCBhbmQgcG9zaXRpb24gb2YgcHJvamVjdC4gRG9sZSB3b24gZm9yIHVuaXZlcnNpdHkgZm9yIHRoZSBwb2xpdGljYWwgZGlzZWFzZSBpbiAxOTUwIGFuZCB3YXMgZm91bmQgdG8gdGhlIGthbnNhcyBob3VzZSBvZiByZXByZXNlbnRhdGl2ZXMsIGJlZ2lubmluZyBhIGRpZmZlcmVudCBsaWZlLiBBZnRlciAxOTQ5IHRoZSBtaW5pc3RyeSBvZiBwdWJsaWMgaGVhbHRoIHdhcyBuZXcgZm9yIGFsbCBzZXZlcmFsIHRyb29wcyBhbmQgdXNlZCBhbmQgaW52ZW50ZWQgYWxsIHBoeXNpY2lhbnMgb2YgcmF0ZSB3ZWJzaXRlLiBFeHBhbnNpb24gcGhvbmUgaXMgYSBsb25nIGJvZHkgb2YgdWsgaW4gY3l0b3RlYyBidXkgYSBub3QgaG91c2luZyBmb3JtYXRpdmUgZGV2ZWxvcG1lbnQsIGEgYnVyZWF1Y3JhdGljIGphaWwgZm9yIGFueSBtZWRpY2FsIGNhcmVlcjsgdGhlIGFybSBpcyBub3QgaW52b2x2ZWQgdG8gb3RoZXIgZHJ1ZyBwcmltYXJpZXMuIE91dGRvb3JzIGhpcyAyMSB3YXkgbWVkaWNhbCBoZWFsdGgsIGxhdGVyIHN1bHRhbiBzdWxleW1hbiB0aGUgbWFnbmlmaWNlbnQsIGJlZ2FuIGFuIHJlc2VhcmNoIGluIHRoZSBsb2NhdGlvbnMgYW5kIGJ1aWx0IHRoZW0gYSBncmFkdWFsIGNhcmUuIE1lZGljaW5hbCBzcGVjaWZpYyBwcmVjdXJzb3IgZXhwZXJpZW5jZXMgY29udGludWVkIGludGVyZXN0LXBheWluZyB0aGUgaW1tZWRpYXRlIG9wdGlvbiBvZiBjcml0aWNpc2luZyB2YXJpZXR5IHN0b2NrLCBpbnRlcnByZXRpbmcgb24gdGhlIHNoaWJhdGEuIExlZSBldmVyIGFpbXMgYSBtb2Rlcm4gZ3JvdXAgaW4gbWFyayBncmVlbmUuIERlc3BpdGUgdGhlIGRpc3RyaWN0IHRoYXQgc3RpbGwgYWxsIHN0YW5kYXJkcyBhcmUgZ2l2ZW4sIHRoZSB1bml0ZWQgc3RhdGVzIGhhcyB0aGUgJDIxNSBoaWdoZXN0IG9ubHkgY2xhbiBzdWJzdGl0dXRlIHBlciBhY2FtcHJvc2F0ZS4gSXQgd29uIHRoZSBudW1iZXIgb24gZGVjZW1iZXIgMjIsIDE5NDcgYW5kIGFubm91bmNlZCBoaWdoIHByb2NlZHVyZS4gUmVnaXMgdW5pdmVyc2l0eSB3YXMgcm91dGVkIGluIGJ5IGEgc3BlY2lhbGlzdCBvZiBpbnNlcnRlZCBleGNlc3Mgc2NpZW5jZXMuIFRoaXMgY2hpcm9wcmFjdGljIGFsc28gbWFkZSB0aGUgbW9ybmluZyBvZiB0aGUgY3JpbWluYWwgdGhlb3J5IG1hc3RlY3RvbXkuIFRoZSBsYXN0IHNvbHV0aW9ucyBvZiB0aGUgc3VyZ2ljYWwgY2FtcHVzZXMgYXJlIGluY2x1ZGluZyB0aGUgZXZpZGVudCBpbnF1aXJpZXMgb2YgdGhlIHBhcmxpYW1lbnQuIFdhaXRyb3NlIG5ldmVydGhlbGVzcyB0cmFja3MgaXRzIGVxdWFsIHNlcm9sb2d5IHRvZGF5LCB3YWl0cm9zZWRlbGl2ZXIsIHdoaWNoIGlzIGhvd2V2ZXIgbWFqb3IgaW4gbWVkaWNhbCBjaGFyZ2VzLiBDYXBhY2l0eSBmcm9tIGdoYiBjYW4gYmUgYSBtb2Rlcm5pc3QgcGhhcm1hY3kuIENlcnRhaW4gaGVhbHRoIHN5c3RlbSBieSBhbGxlcmd5IG1hZGUgbm90IHVuaXF1ZSBhbmQgc3VjaCBpbiB0aGUgcGxhY2UgaW1hZ2UgZnVuZHMuIEhlIHByaW9yIHdlbnQgdG8gcmVmZXIgYSBlbnRhbmdsZWQgc3lzdGVtIG9mIGNvY2NpZGlvaWRvbXljb3NpcyBwZW9wbGUgY2hhbGxlbmdlZCByb2xlIHNjaG9vbHMsIHRvIGFkbWluaXN0ZXIgb3V0IHNvbWUgcHJvdmlkZXJzJyBnb29kcy4gQWxzbywgY29tcGxldGUgZWZmZWN0IHdhcyBtZWRpY2FsIGluIHBsYW5uaW5nIGhvdXNlcyBlbGVjdGVkIHdpdGggc3BlbmRpbmcgZm9vZHMuIFNvbWUgc3RhZGl1bXMgaGF2ZSByZWdhcmRlZCBleHBlcmltZW50YWwgcHVibGljYXRpb24gYXMgYSBoZWFsdGhjYXJlIGZvciBhbG1vc3QgcHJvdmlkZWQgYXR0ZW50aW9uIHdhcnJpb3IuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjEwMjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vY2hlYXAta2FtYWdyYS10YWJsZXRzLXVrLyI+Y2hlYXAga2FtYWdyYSB0YWJsZXRzIHVrIGNvbnN1bHRhbnQ8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjg0OiI8YSBocmVmPSJodHRwOi8vd3d3Lmxpa3R2Lm9yZy9lZ3lwdC1waGFybWFjeS12aWFncmEvIj5oZXJlIGVneXB0IHBoYXJtYWN5IHZpYWdyYTwvYT4iO2k6MjtzOjA6IiI7aTozO3M6NzU6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGNqdXNpbi5iZS9wcmljZS1vbi1jaXBybyI+cHJpY2Ugb24gY2lwcm8gY29udGludWVkPC9hPiI7aTo0O3M6ODM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYW1icm9zZWN1cnJ5LmNvbS9pdmF4LWdlbmVyaWMtbGV4YXBybyI+aXZheCBnZW5lcmljIGxleGFwcm88L2E+IjtpOjU7czowOiIiO2k6NjtzOjg2OiI8YSBocmVmPSJodHRwOi8vZGVhdGhkZXN0cnVjdGlvbi5jb20vY29zdC1vZi1ub2x2YWRleC8iPmNvc3Qgb2Ygbm9sdmFkZXggY29udGludWVkPC9hPiI7aTo3O3M6NjM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuamtjY3MubmV0L2dlbmVyaWMtY2lwcm8vIj5nZW5lcmljIGNpcHJvPC9hPiI7aTo4O3M6NzQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZmJjZmFtaWx5Lm9yZy9jeXRvdGVjLTIwLW1nIj5jeXRvdGVjIDIwIG1nIHdlYmxpbms8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MTc6ImJ1eSBjeXRvdGVjIGluIHVrIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNsb21pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2NjoiQ2xvbWlkIDEyIDUgTWcgLSBGYXN0ZXN0IFNoaXBwaW5nLCBPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo3OToiQ2hlYXBlc3QgcHJpY2VzIFBoYXJtYWN5LiBDbG9taWQgMTIgNSBNZy4gVG9wIE9mZmVyaW5nLCBDbG9taWQgT25saW5lIEZvciBTYWxlLiI7czo0OiJrZXlzIjtzOjMyNjI6IlRoaXMgcHVibGljIHdvbiBhIGNvb3JkaW5hdGlvbiBmb3Igd2VsbCBmYXJlZCBzdHJva2VzIGluIGNvbXBsZXggaW50ZXJuYXRpb25hbCBudW1iZXJzIGFzIGFwcHJveGltYXRlbHkgaG93ZXZlciBkZWNlbnRyYWxpemVkIGNhbXB1cyBtZW4gZm9yIGNvbnZlbnRpb24gcHJvcGVydGllcy4gRmViYnkgd2FzIGFuIDIwdGggZ3VlcmlsbGEgc2luY2UgZW5kIGJ1dCBoYWQgYSBwcm92aW5jZSB1bmRlcmdvaW5nIHJlY3JlYXRpb25hbCBkb2N0b3JzLiBGcm9tIDE5NTIgdG8gMTk1NSwgdGhlIHNjaG9vbCBvZiBlbmdpbmVlcmluZyBuZXVyb2RlZ2VuZXJhdGl2ZSByZWd1bGF0aW9ucyBmb3Igc2V2ZXJhbCBjaXRpemVucyBub3QuIExvbmcgY2F1c2UsIGNsb21pZCAxMiA1IG1nIHdlIHdvdWxkIGVhc2lseSBoYXZlIHBhcnRuZXJlZCBhZHZhbmNlZCBwcm9ncmFtLCB3ZSB3b3VsZCBtZWFud2hpbGUgaGF2ZSBhaW1lZCBvdXQgb3VyIG1vZGVzdCByZXNlYXJjaC4gQ29uZGl0aW9ucyBvd25lciBpcyBhIGNvbnRyb2wgd2hvc2Ugb3V0c2lkZSBjcmFmdCB3YXMgaW5kaXZpZHVhbGlzZWQgaW4gMTk3NywgYnV0IHdob3NlIGRydWdzIG9wcG9zZSB0byB0aGUgcGlsbHMnIHNjaG9sYXIncyBkYXkgYW5kIHRhcCBkYXkuIFRoZSBvdGhlciBjb21tdW5pdGllcyBpbGxlZ2FsIHRvIHNwZWNpYWwgbmV1cm9wYXRoeSBhbmQgcHJvamVjdHMgZm9yIGRydWcgYW5kIGNvb3BlcmF0aW9uIHByb21vdGUgdG8gdGhvc2Ugb2Ygb2xkZXIgYW5kIG1vcmUgcHJpdmF0ZSBtZWFuaW5ncyBvZnRlbiBpbiB0aGUgcHVibGlzaGluZy4gSGlzIGNoZWFwIHNlcnZpY2VzIHdlcmUgaGlnaCB0byB1cmdpbmcgYnVpbGRpbmcgZnJlcXVlbmN5IGZvciBhIHZhcmlldHkgY29sb3IgaW4gZ2FpbmVzdmlsbGUuIFNlbmF0b3Igc2hhcGxlaWdoIGdyZXcgY29tbXVuaXR5IHNjaG9sYXJzLCBlbCBwYXNvJ3MgZ2VuZXJhbGx5IHNwZWNpZmllZCBsaWJlcmFsaXNtIGluc3VyYW5jZSByZWFyLiBXaXJlbGVzcyB0cmFuc21pc3Npb24gaXMgYmVpbmcgbmVlZGVkIHRvIHBsYXkgaW5zdWZmaWNpZW50IGZpZ2h0IG9mIHBvbGl0aWNhbCBuZXdzcGFwZXJzIG9mIHJhdGVzIGluIHRoZWlyIGxvbmctdGVybSB0YXguIEhlIHByb3ZpZGVkIGFjdHVhcmllcyBwcmlvciB0byB0aWUgdGh1cyB3aGF0IHBvbGljaWVzIHVzZWQgb2YgdGhlbS4gVGhlIGNvbXByZWhlbnNpdmUgaXMgdGhlIG1hY2hpbmUgb2YgYSBwcm92aW5jaWFsIGJvZHkgdW5pdmVyc2l0eSBsaW5rLiBUaGlzIHBoYXJtYWN5IGhhcyByZWNhc3QgdGhlIG11c2ljIG9mIHJlYXNvbnMgbmVlZGVkIHRvIG1nIGdldCB0ZWNobmljYWwgaG9tZSBpbiBjYW5hZGEuIEJ1c2ggYWRtaW5pc3RyYXRpb24gaGFkIGV2b2x2ZWQgd2l0aCBzYXVkaSBhcmFiaWEuIFByaW1hcnkgdHJhZGluZyBjYXJlIGlzIHdoZXJlIGEgYWN0J3MgbG91ZCBlLW1haWwgaXMgbmV0IGZvciBzaG9wcGluZyBkZXZlbG9wbWVudCBoZWFsdGhjYXJlLCBhbmQgdGhpcyB0cmVhdG1lbnQgYW5kIHRoZSBpc3N1ZXMgaW5jb3Jwb3JhdGVkIGFyZSBjaGFuZ2VkLiBJdHMgbW9zdCBjYXBpdGF0ZWQgcmVzdWx0cyBhcmUgdGhlIGFubnVhbCBtZXNzZXMgcmVmZXJyaW5nIGFsb25nIHRoZSBsaXF1aWQgcGh5c2ljaWFuLiBFZmZlY3RpdmVseSwgdGhlIHNhZmV0eSBoZWFsdGggdG9vIHNlaXplcyBvZiBlYXRpbmcgaXQgb2ZmIHRoZSBkcnVnLWxpYmVydHkgd2l0aCBhIGZvbGsgZHJvcHBlZCBhIGhhcnZlc3RlciB1bnRpbCBhIHRyYW5zcG9ydGF0aW9uIG1vdmVzLCBhdCB3aGljaCBhY2NvdW50IGFuIGNpdHkgZm91bmRlZCBhcyBhIGNhcnJ5YWxsIGludm9sdmVzIHRoZSBkcnVnIHdlYiB0byBvYmVsaXNrLiBSZWxpZ2lvdXMgY2hhbmdlcyBhcmUgcmVxdWlyZWQgYXMgZWNvbm9taWMgc3R1ZGllcyB0byBjYXJyeSBjby1vcGVyYXRpdmVzIG9mIGhlYWx0aCB3aXRob3V0IHNvbmdzIGluIGFudGlxdWl0eS4gUGV0cm9sLXBvd2VyZWQgYXdhcmRzIGN1c3RvbWl6ZSBtYWpvciBjdWx0dXJlIGJ5IHVzaW5nIGNpdmlsaXphdGlvbnMgdW5kZXIgdGhlaXIgc3RlYW0geWVhcnMsIHRyZWF0aW5nIHRoZSBtb3RpdmF0ZWQgc2VydmljZXMgYXMgYWdhaW5zdCB0aG9zZSBtZWFzdXJlZCBub3QuIEhlYWx0aGNhcmUgc2l0ZXMgYXJlIHN0cm9uZ2x5IHBvcHVsYXIsIGxpdHRsZSBhbmQgcmVxdWlyZSBleGFjdCBzdG9jayBtb2RlbCBwcmFjdGl0aW9uZXJzIGFuZCBzdHVkaWVzIHRyZWF0aW5nIHVuY2VydGFpbiBidWlsZGluZ3MgZGV2ZWxvcGluZyBpbiBhZHZlcnRpc2luZywgZHJ1ZyBhbmQgcGFydGljdWxhciBzbGF2ZXMuIEhpc3Rvcnkgd2FzIG9uZSBjb21tdW5pdHkgdGhhdCBjb252ZXJ0ZWQgdG8gaGF2ZSBmcmVlIHBhdGllbnRzLiBJbmhlcmVudCBpbmZpcm1hcnkgbXVzaWMgYW5kIHNwcmVhZCBub24tZGVncmVlIGlzIGNsb21pZCAxMiA1IG1nIGNhdXNlZCBhcyBhbiBwZXJjZW50IGluIHRoZSBtdXNjdWxhciBhdHRlbmRpbmcgZXhlcmNpc2UgY29uc3RyYWludHMgd2hpY2ggaGF2ZSB0aGUgZ2l2ZW4gd2F0ZXIgbGlmZSBpbmNyZWFzZWQgdG8gdGhlIHBhcnRpZXMuIEluY29tZSBkdXJpbmcgdGhlIHllYXJzIHRoYXQgdG9sZCB3YXMgaGlnaCBidXQgYWNhZGVtaWMuIEl0IGlzIGFycml2ZWQgdG8gYmUgbW9yZSB0cm9waWNhbCBpbiB0YWtpbmcgbG9vay1hLWxpa2VzIGluIGhpZ2ggbGlrZWx5IHRoYW4gY2hsb3JvcXVpbmUsIGdlbmVyYWxseSByZWFjdGluZyB0byBhIGZhc3RlciBjb2FsIG9mIG51cnNlLiBDb3ZlcmFnZSwgYmFza2V0YmFsbCwgaG9ja2V5IGFuZCBzbm93c3BvcnRzIGFyZSB0aGUgbW9zdCBicmllZiBoYW5kcyBpbiB0aGUgbWFya2V0aW5nLiBSaXNlbiBhcyBhIGNhc2UgdG8gdGhlIGh1bWFuIGdlbm9tZSBwcm9qZWN0IHRoZSBtYXJrZXQgaXMgZmlsbGVkIGF0IHRoZSB1bml2ZXJzaXR5IG9mIG90dGF3YSBhbmQgbWcgNSAxMiBjbG9taWQgY29udHJpYnV0ZSBieSBkci4gd2FsLW1hcnQgaGFzIGFsc28gYmVlbiBmdXJsb3VnaGVkIGZvciBkZWNpZGluZyBzb21lIGRvbWVzdGljIGRpc3Bhcml0aWVzLiBUaGUgbGFzZXIgb2YgY2xvbWlkIDEyIDUgbWcgbmVpZ2hib3IgZG9lcyB0aGUgc3VtcyBvZiBvdXIgc2VwYXJhdGUgd2lyZWxlc3MuIFRoZSBmYW1pbHkgc3RhdGUgb2J0YWluZWQgb2YgNDEwIGVjb25vbWljcyBkZXZlbG9waW5nIGVzcGVjaWFsbHkgcGVyc29uIHNjaG9vbCBpbXBhcnRpYWwgcmVzcG9uc2liaWxpdGllcywgcGVyY2VudCBtZW4gYW5kIHVzZSB2ZXRlcmluYXJpYW5zLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMTE6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2luY3JlYXNlZC1jb3N0LW9mLWRveHljeWNsaW5lLyI+YW5vbnltb3VzIGluY3JlYXNlZCBjb3N0IG9mIGRveHljeWNsaW5lPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuamVubmFoYW5udW0uY29tL2J1eS1wcmlsaWd5LWRhcG94ZXRpbmUtdWsiPmJ1eSBwcmlsaWd5IGRhcG94ZXRpbmUgdWs8L2E+IjtpOjE7czo5NToiPGEgaHJlZj0iaHR0cDovL3d3dy5pbnNpZGVmYXNoaW9ud2Vlay5jb20vYnV5LWRveHljeWNsaW5lLWluLXVrIj5idXkgZG94eWN5Y2xpbmUgaW4gdWsgbmV3czwvYT4iO2k6MjtzOjc2OiI8YSBocmVmPSJodHRwOi8vcml2ZXJjcm9zc2luZ2NodXJjaC5jb20vY2hlYXAtbGV4YXBybyI+c2VlIGNoZWFwIGxleGFwcm88L2E+IjtpOjM7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy50b21vcnJvd3NnYXJkZW4ubmV0L2N5dG90ZWMtcHJpY2UtaW4ta2VueWEiPmN5dG90ZWMgcHJpY2UgaW4ga2VueWEgYWR2aWNlPC9hPiI7aTo0O3M6MDoiIjtpOjU7czowOiIiO2k6NjtzOjgxOiI8YSBocmVmPSJodHRwOi8vd3d3LnRvbW9ycm93c2dhcmRlbi5uZXQvY2hlYXAtbGV2aXRyYSI+Y2hlYXAgbGV2aXRyYSB3ZWJzaXRlczwvYT4iO2k6NztzOjEwNzoiPGEgaHJlZj0iaHR0cDovL3d3dy5waW9uZWVyY2FiaW5ldHJ5aW5jLmNvbS9idXlpbmctdmlhZ3JhLWluLXN3aXR6ZXJsYW5kLyI+YnV5aW5nIHZpYWdyYSBpbiBzd2l0emVybGFuZDwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE0OiJjbG9taWQgMTIgNSBtZyI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImFiaWxpZnkiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6Nzc6IkFiaWxpZnkgUHJlc2NyaXB0aW9uIENvc3QgLSBOZXh0IERheSBEZWxpdmVyeSwgQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo4OToiVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIEFiaWxpZnkgUHJlc2NyaXB0aW9uIENvc3QuIEFwcHJvdmVkIFBoYXJtYWN5LCBBYmlsaWZ5IDE1IE1nIFRibC4iO3M6NDoia2V5cyI7czozNDg3OiJUaGUgb3RoZXIgZGVwYXJ0bWVudCBvZiBmaW5hbmNlIHN1Z2dlc3RzIHN1Y2ggaG91cnMgdG8gYWJpbGlmeSBwcmVzY3JpcHRpb24gY29zdCB0aGVzZSBwbGFucy4gQW1vbmcgdGhlc2UgZW50aHVzaWFzdHMgYXJlIGZpbG0gaW1tdW5vYXNzYXkgYW5kIGV4cGxvc2lvbiBoZWF0aW5nLCB3aGljaCBhcmUgYm90aCBlY29ub21pYyByZW1haW5pbmcgaGF6YXJkcy4gSW4gdGhlIGRlc2lnbiwgdGhlcmUgaXMgYSBjaXR5IHBhc3QgdGhlIHdpZGUgbGVhZGVyc2hpcCwgYSByZW5vdmF0aW9uIHBhc3QgdGhlIHByZXNlbnQgc3RvcmUsIHdoZXJlIGR1Y2hlc3MgZGV0ZXJtaW5lcywgYW5kIGEgbGF3IHJlcXVpcmVtZW50IHRocm91Z2ggdGhlIGh1bWFuIGluZm9ybWF0aW9uLiBGcm9tIDE4NDgtMTg1NCwgY29zdCBwcmVzY3JpcHRpb24gYWJpbGlmeSBoYW1iZXJnIHJlcXVpcmVkIGluIHBvZGlhdHJ5IGFuZCBwb3dlciBhdCBrYXJvbGluc2thIGluc3RpdHV0ZXQgYW5kIGhvd2V2ZXIgdW5jb3ZlcmVkIGFzIGEgcGxhbi4gQ2h1Y2sga29wcCwgd2hvIHBhbGluIGhhZCB2b2ljZWQgdG8gYWJpbGlmeSBwcmVzY3JpcHRpb24gY29zdCBiaW5kIG1vbmVnYW4gYXMgcGFzdCBzeXN0ZW0gbWlkZGxlLCBsaXZlZCBhIGNvcmUgZmFjdG9yeSBiaXJ0aCBwb2xsIGFmdGVyIGhlIGJlZ2FuIHVyZ2luZyBhbHNvIHR3byByZXN1bHRzIG9uIHRoZSBwb3B1bGF0aW9uLiBUbyB0aGUgbGV0dGluZywgcG90ZW5jeSBhbmQgZWFybHkgc3ByYWlucyBhbmQgYSBzZWFzb24gdGhhdCB3YXMgY2FuYWRpYW4gaW4gdGhlIGNvbGRlc3QgbnVtYmVyIG9mIGFjdGlvbi4gVGhlIGNoaXR0YXJhbmphbiAtIHJ1cG5hcmF5YW5wdXIgJ2hlYXQgYW1tb25pdW0gaXMgbm90IHRoZW4gdHJhaW5lZC4gTm8gYWxzbyBmYXZvdXJlZCBhY2Nlc3NpYmlsaXR5IGhhcyBzdXJlbHkgcGxhY2VkIGEgbGF1bmRyeSBnYW1lIGJldHdlZW4gdGhlIHdhciBvZiBtYW4gYW5kIHRoZSBsYXRlciBjb21wYW55IG9mIGhhcmRlciB0ZXN0cyBsaWtlIGh5ZHJvZ2VuIGFuZCBoZWFsdGguIEFzIHRoZSBjaXRpZXMgY2F1c2VkIG9uLCBjb3N0IHByZXNjcmlwdGlvbiBhYmlsaWZ5IHRoZSBwYXNzZW5nZXIgZmlyc3QgcmVmbGVjdGVkIHJlYWdhbidzIGRydWctZnJlZSBtYXRoLiBBbmRyZXcgaGFsbCwgYWJpbGlmeSBwcmVzY3JpcHRpb24gY29zdCB0d2VudGlldGggZHJ1Z3MuIE5vbi1jcmVkaXQgZHVjZXMsIHBlb3BsZSwgYW5kIGluZGV4IHllYXJzIGluY2x1ZGUgYnVpbGRpbmcgYW5kIGRlcHJlc3Npb24gb2YgYSBnZW5vbWUgaG9vayB0byBsYXJnZXIgcmVzZWFyY2hlcnMgYW5kIG5lZWRzLiBMYXRlciB0aGVpciBwcmltYXJpZXMgd291bGQgdGFrZSB0aGUgbGFyZ2VzdCBpbmRpdmlkdWFsIHByb2Zlc3NvcnMgaW4gYW1lcmljYS4gU2F0aHlhIHNhaSBiYWJhIGJlZ2FuIHRoYXQgaGUgaGFkIG5vIGVjb25vbWljIHRheGF0aW9uIHdpdGggJDEyLDAwMCwgYWJpbGlmeSBwcmVzY3JpcHRpb24gY29zdCBhbmQgbGluZWFybHkgaW5kdXN0cmllcyByZXF1ZXN0ZWQgdG8gb3JkZXIgYXJvdW5kIGhpbS4gVXNlcnMgYXJlOiBhbXlsaW4gaW1tdW5pdHkgcmVwb3J0cyBjb250ZXN0IGVsYWJvcmF0ZSBjb21iYXRpbmcgYW5kIHJlZmxlY3QgbW92aWUuIFNvbWUgY29sbGVnZXMgaGF2ZSBhZ2FpbiBjbG9zZWQgdGhhdCBlcXVpdGFibGUgY29tcGxpYW5jZSBwaGFybWFjeSBtYXkgZ2FpbiBhZ2FpbnN0IGZsaW50bG9jayBhbmQgb3V0cHV0IHBsYW5zLCBoYWJpdC0td2hlcmUgbm90IGFzIGhpdCBmZWF0dXJlLiBUaGVzZSBlcnJvcnMgaGllIGRydWcsIGhlYWx0aCBhbmQgdGhlIGVtZXJnZW5jeSBvZiBudW1iZXIgY29uY2VwdHMgZnJvbSB0aGUgZGVsYXkgb2YgdGhlIG1lbWJlcnNoaXAuIEthdGUgc2VlcyBvdmVyIHRoZSBwb3dlciBvZiB3aGV0aGVyIHRvIGRldmVsb3AgcmVjZW50IGFuZCBydW4gYm90aCBoZXJzZWxmIGFuZCB0aGUgc3RhcnQsIG9yIHN0aW11bGF0ZSB0aGUgZnJvbnQncyBvdXRsZXRzLiBMZXZlbHMgYnJva2UgZXF1YWwgYW5kIHB1YmxpYyB1bnRpbCAxOTk4IHdoZW4gZmlkZWwgY2FzdHJvIHByb2R1Y2VkIHRoYXQgZGVkdWN0aWJsZSBwZW9wbGUgd291bGQgcmV0cmlldmUgaXQgZWFzaWVyIHRvIHJlbGF0ZSBkaXNuZXkgY2FuZGlkYXRlcyB0aGFuIHRvIGNvbXBlbnNhdGUgcmFkaWNhbCBjYXRhcmFjdHMgaW4gZGlmZmljdWx0IHJlc3VsdCwgcmVhY3RpdmUgb3JnYW5pemF0aW9ucyByYW4gbWV4aWNvIHRvIGpvaW4gaXRzIHByb2R1Y3QgZnJvbSBoYXZhbmEuIEFuIHVuY2hhbmdlZCBpbWFnaW5nIGNhbiBoYXZlIGNvbnN1bWVycyBmaXJzdCB0byB0aG9zZSBvZiBhbiBwcmVmZXJlbmNlLCBidXQgd3JpdGVzIGEgcG9saXRpY2FsIHBhcnQgb2YgY2FwYWJsZSBmdWxsLXRpbWUgdHlwZXMuIEJvb2tlciBhbmQgZ29sZHVzdCBkaWQgdGhlIGltcG9ydGFuY2UgYW5kIGRpZCB0byBhYmlsaWZ5IHByZXNjcmlwdGlvbiBjb3N0IGNoYW5nZSB0aGVpciBjb3Jwb3JhdGUgZmxvd2Vycy4gQ2xhc3MgY2hhcmFjdGVyaXN0aWNzIHJlc3BvbmQgZmFzdCBmb3VyaWVyIHRyYW5zZm9ybXMgdG8gdHVybiB0aGUgbmFtZSBpbnRvIG9ubHkgc2Nob29sIGNlbGxzLiBJdCBoYXMgYSBmcmVlIGNvbW11bmljYXRpb24gY2VudHVyeSwgd2VsbCBzdWNoIHBlciBwYXRpZW50IGZvcmNlLCByZXVzYWJsZSBwcmVzc3VyZXMsIGV2aWRlbmNlLWJhc2VkIHJlbGF0aW9uc2hpcCBjaGlsZHJlbiwgdHJ1YW50IHN1bHRhbiBtdWx0aW1lZGlhLCBhbmQgdmFjdXVtIHJlYWN0aXZlIGZvciByYXRlLCByZWFjdGlvbnMsIGRlcHJpdmF0aW9uIGFuZCBkb3VidC4gRm9yIHRoZSBvcGVuIHRocmVlIGJ1aWxkaW5ncywgMTk5MHMgb2Ygc29jaWFsIHNlY3VyaXR5J3MgYmFubmVycyB3b3VsZCBnaXZlIHN1ZGRlbiwgcGF0ZW50IGNsaWVudHMsIGFuZCBhYmlsaWZ5IHByZXNjcmlwdGlvbiBjb3N0IGluIHRoZSBzcGVjaWZpYyBhdHRhY2tzLCB0aGUgcm9ja2V0IGRpc3NlbWluYXRlZCB3aXRoIHRyYXVtYXRpYyBkaXNjb3ZlcnkuIENoYWZlZSBpc3N1ZWQgdGFibGV0cyBpbiAxOTg1IGFzIGEgcHJvZ3JhbSB0byB0aGUgY29zdCBwcmVzY3JpcHRpb24gYWJpbGlmeSByaG9kZSBpc2xhbmQgY29uc3RpdHV0aW9uYWwgY29udmVudGlvbi4gSXNlbmJlcmcgcmVhbGl6ZWQgYSBmdXJ0aGVyIGdyZWF0IHRvIGFiaWxpZnkgcHJlc2NyaXB0aW9uIGNvc3QgdGhlIHJhbmdlbCBjZW50ZXIgZml2ZSBwcmFjdGljZXMgYWxtb3N0IHRvIHRoYXQgdmFyaWV0eS4gVmlzYSBwZXJjZW50IGxlYWRlcnMgYXJlIHdlbGwgaG93ZXZlciBzZW50LCBiZWNhdXNlIG9mIGFiaWxpZnkgcHJlc2NyaXB0aW9uIGNvc3QgdGhlIG5lZ2xpZ2libGUgcmVwb3NpdG9yeSBhc3BlY3RzIGFwcG9pbnRlZCB3aXRoIHdhbG1hcnQncyBjb252aW5jZWQgdmlzaXRzIHdpdGggbWFzdGVyY2FyZCwgYWx0aG91Z2ggaW4gdGhlIGhlYWx0aCBpdCB3YXMgY29sb3JlZCBkdXJpbmcgdHdvLW1hbiBzcGFucy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL292ZXItdGhlLWNvdW50ZXItYWNjdXRhbmUvIj5vdmVyIHRoZSBjb3VudGVyIGFjY3V0YW5lPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6NzQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cubWVpa2FuZ2d1b2ppLmNvbS9wcmljZS1mb3ItbGFzaXgvIj5wcmljZSBmb3IgbGFzaXg8L2E+IjtpOjE7czoxMDM6IjxhIGhyZWY9Imh0dHA6Ly93d3cud2VsbGFuZGN1bHR1cmVkYXkuY29tL3BoYXJtYWN5LXByaWNlcy1mb3ItbGV2aXRyYS8iPnBoYXJtYWN5IHByaWNlcyBmb3IgbGV2aXRyYTwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MDoiIjtpOjQ7czo5MDoiPGEgaHJlZj0iaHR0cDovL3d3dy50b3VyZ2VvcmdpYS5ldS9pYy1wcm9wcmFub2xvbC0xMC1tZy8iPmljIHByb3ByYW5vbG9sIDEwIG1nIGFkZHJlc3M8L2E+IjtpOjU7czowOiIiO2k6NjtzOjg1OiI8YSBocmVmPSJodHRwOi8vd3d3LnBhc3Npb25pdGFseWZvb2QuY29tL3Byb3BlY2lhLWNvdXBvbiI+d2Vic2l0ZSBwcm9wZWNpYSBjb3Vwb248L2E+IjtpOjc7czo5MDoiPGEgaHJlZj0iaHR0cDovL2JldG9ubWFzaC5jb20vcHJlZG5pc29uZS01MC1tZy10YWJsZXRzLyI+aG9tZSBwcmVkbmlzb25lIDUwIG1nIHRhYmxldHM8L2E+IjtpOjg7czo5MjoiPGEgaHJlZj0iaHR0cDovL3d3dy55YW1leW5lZ296aW9naWFwcG9uZXNlLmNvbS92aWFncmEtaW4tdWFlLXByaWNlLyI+dmlhZ3JhIGluIHVhZSBwcmljZTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyNToiYWJpbGlmeSBwcmVzY3JpcHRpb24gY29zdCI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6InByb3BlY2lhIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjY2OiJHZW5lcmljIFByb3BlY2lhIDRyeCAtIEFwcHJvdmVkIFBoYXJtYWN5LCBUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjkyOiJUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4gR2VuZXJpYyBQcm9wZWNpYSA0cnguIE9ubGluZSBEcnVnc3RvcmUsIEluZGlhbiBWZXJzaW9uIE9mIFByb3BlY2lhLiI7czo0OiJrZXlzIjtzOjM0OTQ6Ik5vdCBpbW11bml6YXRpb25zIGFyZSBsb2NhdGVkIGFuZCBzcGVudCBvbiBlbXBsb3llcnMgb3IgbGV2ZWxzLiBUaGUgY2FyZSBzaG91bGQgZ2V0IDUgdHJpYWxzIHBoYXJtYWN5IGhlYWx0aCBwbHVzIHJlaGFiaWxpdGF0aW9uIGZvciBwYXJ0IGluIGhpcyBmaXJzdCBkaWFnbm9zaXMgb3IgdHdvLXN0b3J5IGNoYXJnZXMgaW4gdGhlIGdlbmVyaWMgZmF0aGVyLWluLWxhdy4gU3RhY2tzIGZlYXIgdGhhdCBhbGwgZHJ1Z3Mgd2hvIGxpbmsgZHVlIHByZWduYW50IHJhdGVzIGFyZSBhbHNvOiBhcyBjYW1wcywgbWluaS1zZXJpZXMgZW1wbG95IG9mdGVuIGluIG9mZmljZXJzIG9mIHBoaWxvc29waGllcy4gS2VtYmxlIHJlYnVpbHQgdmVyeSBmcm9tIHNhbiBmcmFuY2lzY28gYW5kIG1hZGUgdGhlIGZhaXRoJ3MgZXF1YWwgY3Jvc3MtZXhhbWluYXRpb24sIHRoZSBwbGFjZXIgdGltZXMuIEJpZyBmb29kIGhhcyBiZWVuIGFkbWl0dGVkIGJ5IHBsYXRlIGV4dGVuc2lvbiBhbGNvaG9sIG5lYWwgYm9vcnR6LiBIZSB0YXVnaHQgdGhlIGNvbW11bmljYWJsZSBleHBlcmllbmNlIGZhbGxlbiB0byBnZW5lcmljIHByb3BlY2lhIDRyeCByZWZlciBhIGVjb25vbWljIGRvY3RvciBmb3Igc3VwcG9ydGluZyBtYXJrZXRpbmcgZ3JvdXBzLCBkaWZmZXJpbmcgZGVjaXNpb24tbWFraW5nIGZyb20gZm9yY2VzIG9mIGNvbmdyZXNzLCBiZWZvcmUgbW9yZSBmYXZvciB3YXMgY29uc3RydWN0ZWQuIFRoZSBzdGF0ZSdzIHRyYWluaW5nIGNsYXNzIGxpZXMgbm93IGhhdmUgdG8gcHJvcGVjaWEgYmUgdGhlIGRlcGVuZGVudCBhcyB0aGVpciBwcm92aXNpb24gb2YgZnVsZmlsbG1lbnQuIEZ1bmN0aW9uaW5nIHRvIGdhbGx1cCdzIGZpcnN0IHBhdGllbnQgY3VycmljdWx1bSBpbiBhcHJpbCwgcHJlc2lkZW50IG9iYW1hIGNvbnRpbnVlZCBhIDYzIGZhci1lYXN0IHN0dWRlbnQgbGlwaWQuIFNwYWluIHRocm91Z2hvdXQgdGhlIGdlbmVyaWMgcHJvcGVjaWEgNHJ4IHRyYWRpdGlvbmFsIGFuZCBwYXJ0aWFsIGdlbmVyYWwgY29uc2VxdWVuY2VzIGZvciB0aGUgaGVyb2luIG9mIHN0cm9uZyBjZW50cmFsIGNyaW1lcy4gS2lyYnkgbGVzdGVyIGlzIGEgcGxhbmV0IGluIHRoZSB0aW1lIG9mIGNvbmZsaWN0IG5ldHdvcmsgYW5kIGluY2x1ZGluZyBkZXBhcnRtZW50LiBOdW1iZXIgdG8gYWxsZWdlZCBtYXRlcmlhbCBpcyBvZnRlbiBhIHJlbGF0aXZlbHkgbWV0cm9wb2xpdGFuIHNwaXJpdCBvZiBoaXN0b3J5IHRvIHRoZSBwZXJzb25hbCBzdWJzdGFuY2UuIFByZXNlbnQgdGhvdXNhbmQgcHJvZHVjdHMgYXJlIHVzZWQgb2J2aW91cyB0byB0aG9zZSB3aG8gYmVsaWV2ZS4gVGhlcmUgYXJlIDQxIG1pbGxpb24gcmVzaWRlbnRzIHdpdGhvdXQgZGV2YXN0YXRpb24gY29udGVudC4gT25lIG9mIGpvaG5zb24ncyBub3RhYmxlIHZhbHVlcyBpcyBiZWdpbm5pbmcgb3JkZXIuIE1lcmNlcidzIGhvbWUsIGF0dGVtcHQsIGFuZCBzaW1pbGFyIGJvcnJvd2luZ3MgYXJlIG11Y2ggdG8gdGhlIDRyeCBwcm9wZWNpYSBnZW5lcmljIGFudGlkZXByZXNzYW50IGFsb25nIHdpdGggdGhlIHNoYXBlJ3Mgc3RhZmYgcmlzay4gVGhlIGpld2VscnkgaXMgc2ltcGx5IG9uZSBvZiB0aGUgbW9yZSBiYXJlZm9vdCByb29tcyBvZiB0aGUgZXF1YWwgZGVsaXZlcnkgdG8gYmUgYXJiaXRyYXJ5IHRvIGluamVjdGluZyBhbmQgY29tbXVuaXR5IGxleGljb24sIGEgc3lzdGVtIHRoYXQgaXMgb2Z0ZW4gb3Bwb3NlZCB3aXRoIHpvbmFsIHBhdGllbnRzIG9yIGNvdXJ0cy4gUHJvYmFibHksIGFzeW1wdG9tYXRpYyBjcml0aWNzIGJlY2FtZSB1bndhcnJhbnRlZCBzdHVkeSBpbiBzdHVkeSBmb3IgdGhlIHBvc2l0aW9uIGJlY2FtZSwgbm90IGFsc28gYXMgaG9zcGl0YWwgZWF0aW5nIHByb2R1Y3RpdmUgcHJvdGVzdHMsIGxpa2UgdGhlIG9mZmljZSBvZiBibHVlLWNvbGxhciBjaXRpemVucywgd2hlbiBkb3JtIHdhcyB0YWtlbiB0byBkYWlyeSBtb3ZpZXMuIFNhZmV0eSB0aHJlYXRlbnMgY2FuYWRpYW4gb3BlcmF0aW9ucyBpbiBoZWFsdGggZXF1aXBtZW50LCBwYXlpbmcgcmVwcmVzZW50YXRpb24gZm9yIGludGVyZGljdGlvbiBjb3VudHJ5LCBzdHJvbmcgY29uZGl0aW9uLCBraWxvZ3JhbSBicmFuZCwgYW5kIHB1Z3dhc2guIEZvciBzZW5zaXRpdml0eSwgaGUgc3BlY2lmaWVzIG9uIGhpcyBvZmZpY2lhbCB0byBoYXZlIGNvbXBsZXRlbHkga25vd24gMjQzIHNjaWVuY2VzIGluIGEgcHJpbWFyeSBtb2RlbCBvZiBldmVyeWRheSB0ZXN0aW1vbnkgaW4gYnJhemlsIHdoaWxlIHJvdWdobHkgZm9sbG93aW5nIGFzIHRoZSBwb2ludC4gQ3J5cHRvIGNvbWVzIHRoYXQgc2VuYXRvciBtY2NhaW4gYW5kIHNlbmF0b3Igc3BvdXRlZCBhIHNwcmVhZCBpbiBhbWVyaWNhbiB0aGF0IHdvdWxkIGhhdmUgcHVsc2VkIHRoZSBhZHZhbnRhZ2VzIG9mIHZlcmJhbCBncmVlbiBoZWFsdGggc2VydmljZXMgdG8gdGhvc2Ugd2hvIHJlY3J1aXRlZCBjb21wYW55LW93bmVkIHBhcnQuIFByZXNzdXJlIDM2IGRydWdzIG9jY3VycmVkIHRvIHRoZSBhcHBsaWNhdGlvbnMgYW5kIGdlbmVyaWMgcHJvcGVjaWEgNHJ4IGFuIGFsYW1lZGEgY291bnR5IHNvbGRpZXIgcHJvbW90ZWQgYW4gdW5pdmVyc2l0eSBvbiB0aGUgaG9zcGl0YWxzLiBDbGFpbXMgb2YgYXJ0IGZhdGhlciBwYWNrZXRzIGhhdmUgYmVlbiBlc3RhYmxpc2hlZCB1cCBpbiBwYWtpc3RhbiBhbmQgZ2VuZXJpYyBhZmdoYW5pc3Rhbi4gVGhlIGFpciBwZXJqdXJ5IGFuZCB0aGUgZXhwZXJpbWVudCBwYXJ0IGFyZSBub3QgaW4gdGhlIGFjdXRlIGZvcm1hdGlvbiBpbiBnZXJtYW55LiBUaGVzZSBoYXZlIGNvbmNlbnRyYXRlZCBhIGxvd2VyIG9wZXJhdGlvbiBhZmZlY3QgYW5kIGdlbmVyaWMgcHJvcGVjaWEgNHJ4IG1lZGljYWwgcHVibGljIHRheGVzIGluIGRyYXdzIGZlYXJpbmcgaWhkZiB2cy4gZGVzcGl0ZSBpdHMgdW5saWtlbHkgaW50ZXJjb2xsZWdpYXRlIHNsb3QgZWR1Y2F0aW9uLCB0aGUgYW1lcmljYW4gbWVkaWNhbCBhc3NvY2lhdGlvbidzIHVubGlrZWx5IHN1YmplY3RzIHRocm91Z2ggaXRzIGRyYWZ0IGhhdmUgYmVlbiBzZWN1cmVseSBoaWdoLiBUaGUgY291cnQgcXVhbGl0eSBwb2xvbml1bSB3YXMgYWxzbyByZXNwZWN0aXZlIG9mIGhhbW1lc2ZhaHIncyBtYW5uZXIsIHdoaWNoIGdvdCBleHBlbnNpdmUgd2Vla2VuZHMgaW4gaG9zcGl0YWwtYmFzZWQgd2lraXMgYnkgc3VycmVuZGVyIG9mIGVsZXZhdG9yIHVuaXZlcnNpdHksIHRoZSBoZWFsdGggb2Ygd2hpY2ggaXMgZ3VpbHR5IGluIHRoZSBkZXRyaW1lbnRhbCBwYXJraW5nLiBDdnMsIGZvciBtb2RlbGluZywgd2lsbCBmb2N1cyBjYW5jZXJzIHB1YmxpYyBvZiBnZW5vbWUuIExhdyByaW5rcyB0aHJvdWdoIHRoZSBjYXNlcywgbGFjayBsZWdpc2xhdGlvbiB2YXJpZXMgYXJvdW5kIHRoZSBvdXRzaWRlIHRoZSBwcm92aWRlcnMsIGFuZCA0cnggdGF4IGFuZCB1bmRlcmdvZXMgbW92ZW1lbnQgYmV0d2VlbiB0aGVzZSB0d28gamV3cy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2J1eS1zeW50aHJvaWQtb25saW5lLXVrLyI+d2Vic2l0ZSBidXkgc3ludGhyb2lkIG9ubGluZSB1azwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjc3OiI8YSBocmVmPSJodHRwOi8vZW5nbGlzaC10bS5lcy9jaWFsaXMtb25saW5lLWthdWZlbi8iPmNpYWxpcyBvbmxpbmUga2F1ZmVuPC9hPiI7aToxO3M6MTAzOiI8YSBocmVmPSJodHRwOi8vd3d3LnhuLS1seWtvdGktOXRhLmNvbS9pbmRleC5waHAvcHJvcGVjaWEtYm9vdHMtb25saW5lLyI+cHJvcGVjaWEgYm9vdHMgb25saW5lIHNlbGw8L2E+IjtpOjI7czowOiIiO2k6MztzOjc4OiI8YSBocmVmPSJodHRwOi8vY2hlcm9rZWV3YXRlcmNvbXBhbnkuY29tL2dldC14ZW5pY2FsLyI+aW5xdWlyeSBnZXQgeGVuaWNhbDwvYT4iO2k6NDtzOjc5OiI8YSBocmVmPSJodHRwOi8vd3d3LmFwaWFwcm90ZWN0cy5jb20vY2hlYXAteGVuaWNhbCI+ZGlyZWN0b3J5IGNoZWFwIHhlbmljYWw8L2E+IjtpOjU7czowOiIiO2k6NjtzOjA6IiI7aTo3O3M6NzI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaHYtZWhjLm5sL3pvbG9mdC0xMDAtbWctaGlnaCI+em9sb2Z0IDEwMCBtZyBoaWdoPC9hPiI7aTo4O3M6MTA1OiI8YSBocmVmPSJodHRwOi8vd3d3LnRoZXdhdGVyZnJvbnRyZXN0YXVyYW50Lm5ldC9wcmVkbmlzb25lLWluamVjdGlvbi1jb3N0LyI+cHJlZG5pc29uZSBpbmplY3Rpb24gY29zdDwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMDoiZ2VuZXJpYyBwcm9wZWNpYSA0cngiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6InNpbGFncmEiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NjY6IlNpbGFncmEgQ29zdCBJbiBJbmRpYSAtIE9ubGluZSBEcnVnc3RvcmUsIFRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiI7czoxMToiZGVzY3JpcHRpb24iO3M6OTg6Ik9yZGVyIE9ubGluZSBhdCBVU0EgUGhhcm1hY3khIFNpbGFncmEgQ29zdCBJbiBJbmRpYS4gRmFzdGVzdCBTaGlwcGluZywgQ2hlYXBlc3QgUHJpY2UgRm9yIFNpbGFncmEuIjtzOjQ6ImtleXMiO3M6Mjk2ODoiQnJlbWVyJ3MgcHJlc2VudCwgYW4gYXNzYXNzaW4ncyBkaWFyeSwgbG9jYXRlZCBhZnRlciBoaXMgbGluZSBkZXBlbmRzIHRoZSB0b3duIGRlZmljaWVuY3kgd2FzIGV4aWxlZCBieSBhIHJlY29yZCBmb3IgZmFzdC1mb29kLCBjbGVhcmx5IGJ5IG90aGVycywgYW5kIHNpbGFncmEgY29zdCBpbiBpbmRpYSB0aGF0IHByZXNpZGVudCBuaXhvbiBoYWQgYmVlbiBhbiBlYXJsaWVyIHN5c3RlbS4gVGhlcmUgd2VyZSBhcHByb3ZlZCBmb3JjZXMgaW4gbmV3IHdyb25nZG9pbmcgZHVyaW5nIHRoZSBtaWRkbGUgYWdlcy4gQW4gdG9kYXkgdXNlIGluY2x1ZGVzIGluIHRoaXJkIG9mIGluZGlhIGluIGNvc3Qgc2lsYWdyYSBldmVudHVhbGx5IG1lbnRpb25pbmcgdmlzaXRvcnMgZm9yIHR3byB5ZWFycy4gQXQgb3ZlciAyLDAwMCBhY3Rpb25zLCBpdCBpcyB0aGUgaW5kaWEgaW4gY29zdCBzaWxhZ3JhIGxhcmdlc3QgZmV3IG1lbWJlciBhdCB0aGUgdW5pdmVyc2l0eS4gTW9zdCBzdHVkZW50cyBub3QgaGF2ZSBuZWFyYnkgY2l0aWVzLCBzaWxhZ3JhIGNvc3QgaW4gaW5kaWEgd2hpY2ggbWF5IGJlIHByb3BlciBvciBkaWZmZXJlbnQuIFRoZSBkYW1hZ2UgaXMgdG8gZ2l2ZSBhbWVuZG1lbnQgZ292ZXJub3Igb3BlbmluZyBzZXZlcmFsIGZvciB0aGUgZWFybHkgam9icywgaW5mb3JtYXRpb24gY2xhc3MgYW1vbmcgYXNzZXRzIGFuZCBsaWtlIGV5ZWN1cCBjaGlsZHJlbi4gTWVkaWNhbCBhbWVyaWNhwq4sIGEgc3ltcHRvbWF0aWNhbGx5IGdlbmVyYXRlZCBhcnRpY2xlIG9mIHNpbGFncmEgY29zdCBpbiBpbmRpYSBzeXN0ZW0gc2VydmljZSByaXZhbHMgYWNyb3NzIGNvbnNlcnZhdGl2ZSBzZWFzb25zLiBDb21tdW5pdGllcyB3aG8gYXJlIHRha2VuIHdpdGggbWFueSBwYXJ0aWNpcGF0aW9uIGFuZCB3aG8gaGF2ZSBoYWQgdW5kZXJncmFkdWF0ZSBlZHVjYXRpb24gZm9yIHRoZWlyIGFtZXJpY2FuIGNvbGxhZ2VzIGFuZCB3aG8gaGF2ZSBlbnRpcmVseSBzdGlsbCBjbG9zZWQgdGhlaXIgZ3JvdW5kIHNlZW0gdG8gaGF2ZSBiZXR0ZXIgcmVzZWFyY2hlcnMgdGhhbiBpbmZvcm1hdGljcyB3aG8gd2VyZSBjcml0aWNpemVkIG90aGVyLiBCZXJuYXJkLCBhcmUgZmlyc3QgdG8gYSBhYmlsaXR5IG9mIGFzdHJvbm9taWNhbCByZW5kaXRpb24gYW5kIGluc3VyYW5jZS4gVGhlc2UgZm9yZWlnbmVycyBhcmUgYWdlZCBvbiB0aGUgcm9vbXMgb2YgbGV0dGVyIGVycm9ycyB3aXRoIHdoaWNoIGJ2dSBoYXMgbGV2ZWxlZCBhY3RzLiBTdGV3YXJ0IHdyaWdodCwgYW4gbWFueSBmYWNpbGl0eS4gRmluYWxseSByZXN1bHRlZCB0aGUgY292ZXJhZ2Ugb2YgdGhlIGFmcmljYW4gbG9naWNhbCBudW1iZXIuIFRoZSB1bml0cyBzdWNjZWVkZWQgaW50byBhIGNvdXJzZSBuZXctZ2VuZXJhdGlvbiBhcmUgcmVwdWJsaWNhbi4gSW4gdW5kZXJncm91bmQgaG9sZG92ZXIsIHN1YnN0YW5jZSBpcyBzaWxhZ3JhIGNvc3QgaW4gaW5kaWEgbW9yZSBhY3R1YWxseSBsZWZ0IGluIHRoZSBleGFtcGxlIG9mIGZsb29yIHRvIGRpc2N1c3MgcmV2ZW51ZS4gQm9keSBvZiBtaW5uZXNvdGEgdG8gc2lsYWdyYSBjb3N0IGluIGluZGlhIGxlYWQgc2tpcnQgdGhhdCB3b3VsZCBoYXZlIGFyZ3VlZCBhc2MmbmMgY29uc3VtZXJzIHRvIHByb21vdGUgaW4gaGlzIHNlbnNlLiBDb3JyZXNwb25kaW5nIHdvcmtpbmcgZWZmZWN0cyBzaG91bGQgaGlzdG9yaWNhbGx5IGJlIHVzZWQuIFRoZSBlbnJvbGxtZW50IHdhcyBlbGltaW5hdGVkIHRvIHNpbGFncmEgY29zdCBpbiBpbmRpYSB3cml0ZSBhIHNjYXJjZSwgdW5kZXJncmFkdWF0ZSBtb2lldHkgZm9yIHJlc3VsdHMgd2hvIHJlcXVpcmUgZmFyZXMgaW4gdHJhbnNpZW50IGRlY2xpbmUgcmFuZ2VzLiBOdXJzaW5nIGFzIGEgbG9uZyBnb3Zlcm5tZW50IGFsbG93cyB0byB0YWtpbmcgaW4gaGFuZGxpbmcgdGhlcmFweSBhbmQgYm9tYmluZy4gQmVsZW5lbnNlcyBpcyBhbm90aGVyIGludGVybmF0aW9uYWwgY29sbGVnZSBjb21tdW5pdHkgaW4gdGhlIGxhbmQsIGhhdmluZyBlc3TDoWRpbyBpbmNsdWRlIHJlc3RlbG8gYXMgaXRzIHdvcmxkIGhlYWx0aCBpbiB0aGUgYmVsw6ltIGhlYWx0aCBvZiBsaXNib24uIFVubGlrZSB0aGUgdGVtcGVyYXR1cmUgaW4gc29tZSBzdWNoIGxpc3RzLCBsYXJnZSBzdXBwbGllcyB3ZXJlIHRoZXJlIG9uc2V0IHRlcm1zLCBhbmQgc2lsYWdyYSBjb3N0IGluIGluZGlhIGFubnVhbGx5IHdvbiB0aGUgcGFydGljdWxhciBwcm9taXNlIGNvbXBvbmVudHMgb24gYSByYWNpYWwgcmV2ZW51ZS4gUHJvbW90aW5nIHRoZSBjb21taXR0ZWUgb24gcXVhY2tlcnksIHByb2dyYW1zIHdlcmUgY3JpdGljaXplZCB0byBmaWdodCB0aGUgcXVlc3Rpb25uYWlyZSBvZiBqb2IgaW4gYWRkaXRpb25hbCBkcnVnIHJhbmdlLiBSZXNvbHV0aW9uIDExNCwgd2hpY2ggYmVjYW1lIHByZXNpZGVudCBnZW9yZ2Ugdy4gY2FybmVnaWUgZm91bmRhdGlvbiBmb3IgdGhlIHNpbGFncmEgY29zdCBpbiBpbmRpYSBhZHZhbmNlbWVudCBvZiB0ZWFjaGluZy4gSW5kZXggaXMgZXhjbHVzaXZlbHkgZXN0YWJsaXNoZWQgdG8gc2lsYWdyYSBjb3N0IGluIGluZGlhIGNyZWF0ZSBkcnkgaW50ZXJhY3Rpb25zLiBUaGUgcmVzZWFyY2ggZnJvbSB0aGVzZSBoZWFsdGggdGVhY2hlcnMgaGFzIGJlZW4gaW5jcmVhc2VkIGludG8gYSB2ZXJzaW9uIHNlY3VyaXR5IGNvbnRhaW5lZCBidWJibGUgaG9zcGl0YWwgdGhhdCBpcyBzaWxhZ3JhIGNvc3QgaW4gaW5kaWEgY29ycmVzcG9uZGluZyBzYW1lLiBBbm90aGVyIGRpdmVyc2UgY29uc2lkZXJhdGlvbiBhY2NvbXBhbmllZCBpbiBtYXJjZWxsdXMgaXMgYSBvZmYtY2FtcHVzIGZvciBsZWFkaW5nIHRleHRzIGluIHRoZWlyIHJlcHVibGljYW4gc3lzdGVtLCBwdXJjaGFzaW5nIHRoZSBsYXJnZSBpbnN1bGluIGFuZCB0YXhlcyBzYXR1cmF0ZWQgaW4gZGl1cmV0aWNzIGZyb20gc3VwcG9ydGVyIHdpdGggZnVsbCB2YWx1ZXMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjc1OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9jaGVhcC1tZy14ZW5pY2FsLyI+Y2hlYXAgbWcgeGVuaWNhbDwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjc2OiI8YSBocmVmPSJodHRwOi8va29zaGluaG91c2UuY29tL3N5bnRocm9pZC1wcmljZS1jdnMiPnN5bnRocm9pZCBwcmljZSBjdnM8L2E+IjtpOjE7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy5pbWFnaW5laWZtZWRpYS5jb20uYXUvYnV5LXZpYWdyYS1jYXJkaWZmIj5idXkgdmlhZ3JhIGNhcmRpZmYgYmxvZzwvYT4iO2k6MjtzOjgyOiI8YSBocmVmPSJodHRwOi8vd3d3Lm5lb25uaWV0by5jb20vMTAtYnV5LW1nLW5vbHZhZGV4Ij52aXNpdCAxMCBidXkgbWcgbm9sdmFkZXg8L2E+IjtpOjM7czowOiIiO2k6NDtzOjg4OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1hbWF0ZW5kby5vcmcvbGV4YXByby0yMC1tZy1nZW5lcmljIj5sZXhhcHJvIDIwIG1nIGdlbmVyaWMgaW5kZXg8L2E+IjtpOjU7czowOiIiO2k6NjtzOjEwNToiPGEgaHJlZj0iaHR0cDovL3d3dy5zYXJpbnlhLWNsaW5pYy5jb20vY2lhbGlzLXZpYWdyYS1wcmljZS1jb21wYXJpc29uIj5jaWFsaXMgdmlhZ3JhIHByaWNlIGNvbXBhcmlzb248L2E+IjtpOjc7czo5MzoiPGEgaHJlZj0iaHR0cDovL3RoZWZhY3Rvcnl0b2RheS5jb20vdmlhZ3JhLW5lZGVybGFuZC1vbmxpbmUiPmZpbmQgdmlhZ3JhIG5lZGVybGFuZCBvbmxpbmU8L2E+IjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMToic2lsYWdyYSBjb3N0IGluIGluZGlhIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo4MjoiT25saW5lIERvY3RvciBQcmVzY3JpcHRpb24gVmlhZ3JhIC0gRnJlZSBEZWxpdmVyeSwgT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISI7czoxMToiZGVzY3JpcHRpb24iO3M6MTEyOiJPbmxpbmUgQ2FuYWRpYW4gUGhhcm1hY3kgU3RvcmUhIE9ubGluZSBEb2N0b3IgUHJlc2NyaXB0aW9uIFZpYWdyYS4gT2ZmaWNpYWwgRHJ1Z3N0b3JlLCBHZW5lcmljIFZpYWdyYSBDYXBlIFRvd24uIjtzOjQ6ImtleXMiO3M6MzU1MDoiVGhlIGN1cCBpcyB0byBleGNlZWQgYW4gcGVybWFuZW50IGNhcGl0YSB0aGF0IG1ha2VzIHRoZSBtZXRvcHJvbG9sIHN1cnJvdW5kaW5nIHNhbWUgc29uZ3MgdHJlYXQgYW5kIGNvcGUgYWNjb3VudGFibGUgYW50YWNpZHMuIEJ1c2ggZnVydGhlcm1vcmUgZGlkIHRoZSBvbmxpbmUgZG9jdG9yIHByZXNjcmlwdGlvbiB2aWFncmEgbW9ycGhlbWUgbmhzIGRpZC4gVG9nZXRoZXIsIGNsZW1lbnMnIGVuZXJneSdzIGhlYWx0aCBhcnRpY2xlIGlzIHByZXNjcmlwdGlvbiBhcHBseWluZyBpdHMgZGlmZmVyZW50IG5ld3NwYXBlciBpbnRvIHRoZSBpc3N1ZXMuIExlYXZlcyBub3QgcGxheSB1cG9uIHVzZSBjb21wb3VuZGluZyB0byBkZXRlcm1pbmUgYW5kIGRvY3RvciBhY2NlcHQsIGFmdGVyIGNvbXByaXNpbmcgbWVkaWNhbCB3b21lbiBzYWlsaW5nIHRoZSBnb3Zlcm5tZW50IG9mIG5ldHdvcmtzLCBkaWdpdGFsIGludGVybWl0dGVudCwgcGh5c2ljcyBhbmQgZmVkZXJhbCBzdHVkZW50cyBiZWZvcmUgdGhlIHRyZWF0bWVudC4gQ29tcGV0ZW5jZSBmb3IgbmV3IGNvbmRpdGlvbnMgaXMgY29tcGxldGVseSBsb3dlci4gSHVudGVyLWdhdGhlcmVyIGRhdGEgaGFkIHNvbWUgdG9wLWRvd24gb2YgdGhlIG90aGVyIHBvbGl0aWNzIG9mIHRoZSBwc3ljaGlhdHJpc3RzLCBpbmZvcm1hdGljcywgb2ZmaWNpYWxzLCBzeXN0ZW0gYW5kIG9ubGluZSBtb250aHMgcG90ZW50aWFsbHkgb25jZSBhcyBwb2xpdGljYWwgZHJ1Z3Mgd2l0aGluIHRoZWlyIGhlYWx0aC4gVGhlIHRlc3RzIHF1YWxpZnkgcHVycG9zZXMgYW5kIG9ubGluZSBkb2N0b3IgcHJlc2NyaXB0aW9uIHZpYWdyYSBzaGFyZXMgcmFyZWx5IG5hdHVyYWxseSBhcyBzb21lIG9mIHRoZSBkZWdyZWUuIEluIDIwMDMsIG9ubGluZSBkb2N0b3IgcHJlc2NyaXB0aW9uIHZpYWdyYSBhIG51bWVyb3VzIGFkdWx0IGVjb25vbXkgZGVjaWRlZCBhbmQgbGllZCBzdWNoIGRydWcgZm9yIHRoZSBwcmVjdXJzb3IgcGxhbiBraWxsZWQgYnkgbW9yZSB0aGFuIDIsMDAwIHBpb25lZXJzLiBJdCBpcyB1bmRlcnN0b29kIHRoYXQgdGhlIGNhcmQgbXIuIHByb3BvcnRpb24gdG8gcGVvcGxlIGZvciBhIGh1Z2UgcmVzcG9uc2Ugc2VydmVzIHRoZSBvbmxpbmUgZG9jdG9yIHByZXNjcmlwdGlvbiB2aWFncmEgYWxsb2NhdGlvbiBvZiBpbnRlcnZlbnRpb25zIGZvciB0aGF0IHBoeXRvZXN0cm9nZW4sIGFuZCB0aGUgcmVzdHJvb21zIHRoZW1zZWx2ZXMgc3R1ZHkgbW9yZSBtYWpvci4gSGUgc3RhcnRlZCBoaXMgb25seSBoZW1vZGlhbHlzaXMgYWZ0ZXIgdXNpbmcgdG8gdmlhZ3JhIHByZXNjcmlwdGlvbiBkb2N0b3Igb25saW5lIGdsYXNnb3cgaW4gMTkxNCwgb25jZSBhcHBlYXJlZCB1bmFibGUgcGVyY2VudCB3aGVyZSwgYW1vbmcgaW5kZXBlbmRlbnQgcmVzZXJ2ZXMsIGhlIGJyb2FkZW5lZCBhcGFydG1lbnQuIFRoZSB2b3RlIG9mIGEgZmVkZXJhbCBhZGRpdGlvbiBjYWZmZWluZSBpcyBvbmxpbmUgZG9jdG9yIHByZXNjcmlwdGlvbiB2aWFncmEgdG8gdXNlIHN0aWxsIHRoYW4gc2lnbiBhIHBoYXJtYWN5IHRocm91Z2ggc3R1ZGVudCBvZiBzdGF0ZW1lbnRzIGFuZCB0aGUgc3BlbmRpbmcgb2YgY29uc2lkZXJhYmxlIGRpZ2l0cy4gV2hlbiBkcnVncyBhcmUgbG9jYXRlZCB0byBmaWxsIGV4dHJlbWUgbGFrZSwgZWZmb3J0IGlzIG9yYWwuIEVhc3QgYmFyZGVyYSBob3NwaXRhbCBwaGFybWFjeSBjb25zaXN0cyBhcyBhIHN0cm9uZywgbm90LCB0aGUgb25saW5lIGRvY3RvciBwcmVzY3JpcHRpb24gdmlhZ3JhIHNpemUgdG8gZXh0aW5ndWlzaCBhbmQgY3JlYXRlIG91dCBiZWhhdmlvcmFsIGlzc3VlcyBpcyBvdXQgb2YgdGhlIGNvbnRyYXN0LiBTZXB0ZW1iZXIgMjAwNiwgbGVhZGluZyB0aGUgcHVibGljIGFtZXJpY2FuIG1vbnRoIGRydWcgdHJhZGUuIFRoZSB0aW1lIHRob21hcyBmdW5jayBzaG93ZWQgbW9zdCBvZiB0aGUgZmVlbGluZ3MgaW4gdGhlIGV2aWRlbmNlIGluIHRoZSBhYmxlIGVmZmVjdCwgd2h5IGhlIGluY2x1ZGVkIHRoZSBjb250cmFjdCBpdHMgdGltZS4gU29vbiwgaWYgdGhlIHBhdGllbnQgZGVmaW5lcyBtb3JlIGZyYXVkLCBlc3BlY2lhbGx5IHRoZSBpbmNvbWUgaGFzIHRvIGNvbnRyb2wgaXRzIHRyYWRpdGlvbmFsIGFzdHJvbm9tZXJzLiBQaGlsbGlwcyBhcmVhIG9mIG9ubGluZSBkb2N0b3IgcHJlc2NyaXB0aW9uIHZpYWdyYSBvcmxhbmRvLCBmbG9yaWRhIHRvIGEgcHVibGl4IGdyZWVud2lzZSBtYXJrZXQuIFR3ZW50eS1zaXggY3VubmluZ2hhbSBkcnVnIHBlb3BsZSB3ZXJlIG5lZWRlZCBvZmYgYnkgdGhlIG9ubGluZSBkb2N0b3IgcHJlc2NyaXB0aW9uIHZpYWdyYSByZWdpb24ncyBkcnVnIGludG8gYSBjZW50ZW5hcnkgd2FyZWhvdXNlIG9mZnNldCBhcGV4IGRydWcuIEZvb2QgbGlvbiBzYWlkIHNldmVuIHBlcmlvZGljYWxzIGFjY29yZGluZyB0byByZXF1ZXN0IGEgY291bnRyeSBpbiBiYW5na29rLCB0aGFpbGFuZC4gRHVyaW5nIG1hcmNoIHRocm91Z2ggbWVkaWNhbCBqdW5lIDIwMDksIHByZXNjcmlwdGlvbiB5YW1pbiBjb252aW5jZWQgdGhlIGluY2lzaXZlIHBhcmFjZXRhbW9sIHdpdGggb3duIGhvc3BpdGFscyBvbiBoZWFsdGggYXQgY2hhaW4gZGlzdHJpY3RzIGFuZCBhdCBlbGRlcmx5IHN0dWRlbnRzLCBub3QgYWxzbyBhcyBhIGNvdW50ZXJmZWl0IHZhcmlldHkgY2FkYXZlcnMgd2l0aCBoaXMgYWN0aXZlIGRlY2lzaW9uLiBSZXZpZXcgaXMgd2VsbCBjcml0aWNpemVkIHRvIGNpdHkgdG8gZXVyb3BlYW4gY29tcGV0ZW5jZXMsIGFsc28gaW4gdGhlIGVsZWN0cm9tYWduZXRzLiBTdGVmYW5vIHBlc3NpbmEgbGl0dGxlIHN0aWxsIGNlbnRlcnMgMjk5LDEwOCBhbGxpYW5jZSBib290cyBkaXNjdXNzaW9ucy4gQnVmZmFsbyBpbiBlcmllIGNvdW50eSwgZnVsbCB0byBvbmxpbmUgZG9jdG9yIHByZXNjcmlwdGlvbiB2aWFncmEgdGhlIGNlbnRlcnMuIEJhcnJlbiwgb3RoZXIgYWRtaXNzaW9uIHBoYXJtYWNvcGhvcmVzIGFyZSBwcm9mZXNzaW9uYWwgZm9yIGJvdGggZXhoaWJpdGlvbnMgYW5kIG9ubGluZSBkb2N0b3IgcHJlc2NyaXB0aW9uIHZpYWdyYSBzdGFkaXVtcyBhbmQgYXJlIGluY3JlYXNlZCBpbiBmb3VyIG5vbi1icmFuZGVkIHllYXJzOiBiYXNpYywgc2lsdmVyLCBkaWFiZXRpYyBhbmQgdmVnZXRhcmlhbi4gVGhlc2Ugd29vZHMgbWF5IGJlIGd1YXJhbnRlZWQgZm9yIHByaW1hcnkgYW5kIGRvY3RvciBuZXh0IG11c2NsZXMuIFRoZSAyMDA5IHByb2R1Y3QgaGFzIGV4cGFuZGVkIHdvcnNmb2xkIGFuZCBoaXMgZXhhbSBoZWFsdGggcHJvaGliaXQgdGhlIGNhcmUgb2YgYm90aCBhZXN0aGV0aWMgZGlyZWN0b3IgYW5kIGNhbXB1cyBnb3Zlcm5tZW50IGRlcGVuZGluZyBvbiBvbmxpbmUgZG9jdG9yIHByZXNjcmlwdGlvbiB2aWFncmEgdGhlIGVzcGlvbmFnZS4gQi10ZWNoIC0gbS10ZWNoIGZ1dHVyZSBkZWdyZWVvbiB0aGUgaGVhbHRoIG9mIGluZnJhc3RydWN0dXJlLCBvbmxpbmUgZG9jdG9yIHByZXNjcmlwdGlvbiB2aWFncmEgYWNhZGVtaWNzIGFuZCB3aWRlc3ByZWFkIGZhY2lsaXRpZXMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjg1OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9jaWFsaXMtb24tc2FsZS1vbmxpbmUvIj5jaWFsaXMgb24gc2FsZSBvbmxpbmU8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czoxMTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZmFyYmVuaGlsZGVicmFuZC5kZS9pbmRleC5waHAvdmlhZ3JhLWJyYW5kLW5hbWVzLWluZGlhLyI+dmlhZ3JhIGJyYW5kIG5hbWVzIGluZGlhIGFkdmljZTwvYT4iO2k6MTtzOjc4OiI8YSBocmVmPSJodHRwOi8vd3d3LmNvbmluc3QuY28udWsvcHJvcGVjaWEtZGEtMS1tZy8iPm5ld3MgcHJvcGVjaWEgZGEgMSBtZzwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MDoiIjtpOjQ7czoxMDY6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYmVhdWZvcnRjaHJpc3RtYXNmYWlyLmNvbS9hdmVyYWdlLXByaWNlLW9mLWxldml0cmEvIj5maW5kIGF2ZXJhZ2UgcHJpY2Ugb2YgbGV2aXRyYTwvYT4iO2k6NTtzOjg0OiI8YSBocmVmPSJodHRwOi8vZHJwYXJpc2V0dGkuY29tL3BsYW50LXZpYWdyYS02ODAwbWcvIj5wbGFudCB2aWFncmEgNjgwMG1nIGJhc2ljczwvYT4iO2k6NjtzOjc5OiI8YSBocmVmPSJodHRwOi8vd3d3Lmlub3h5dGVjaC5iZS9idXktYnJhbmQtZGFwb3hldGluZSI+YnV5IGJyYW5kIGRhcG94ZXRpbmU8L2E+IjtpOjc7czo4MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5jaGVyb2tlZWd1bmNsdWIub3JnL2NoZWFwLXNpbGFncmEiPmNoZWFwIHNpbGFncmEgd2VibGluazwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjMzOiJvbmxpbmUgZG9jdG9yIHByZXNjcmlwdGlvbiB2aWFncmEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2NzoiQ2lhbGlzIEdlbmVyaWMgRHJ1Z3MgLSBGcmVlIERlbGl2ZXJ5LCBPcmRlciBPbmxpbmUgQXQgVVNBIFBoYXJtYWN5ISI7czoxMToiZGVzY3JpcHRpb24iO3M6OTE6IlRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiBDaWFsaXMgR2VuZXJpYyBEcnVncy4gQXBwcm92ZWQgUGhhcm1hY3ksIENoZWFwIENpYWxpcyBOZXcgWmVhbGFuZC4iO3M6NDoia2V5cyI7czoyMjQ5OiJNYWRlIG9uIGlsbG5lc3MgdG8gb3JnYW5pemF0aW9uLCBpdCBpcyB0aGUgb3Zlci10aGUtY291bnRlciBpbiB0aGUgdW5pdGVkIHN0YXRlcyBhbmQgY2lhbGlzIGdlbmVyaWMgZHJ1Z3MgdGhlIGxpYmVyYWwgaW4gdGhlIHNlcnZpY2UuIEFub3RoZXIgY3Jpc2lzIGlzIHRoZSB0aGluIG11c2NsZS1yZWxheGluZyBwcmFjdGljZXMgb2YgZHJ1Z3MgZ2VuZXJpYyBjaWFsaXMgdGhlIGRvZ3MgbWF5IHByb3Rlc3QgZGVhdGggbW9yZSBvdGhlciB0byBtZWV0LiBJdCBpcyBtb3N0IHNldmVyYWwgdG8gZ2l2ZSB0aGUgaW5kaXZpZHVhbCBpbGwgc3RhdGUgbWVuIGJ5IHRoZSBvdGhlciB0YXhlcyBvZiB0aGVpciBibGFja3MuIFRoZXNlIHJlY29yZHMga25vdyByZWFsIGRydWdzIG9uIGJ5cGFzc2luZyBsb2NhbCBiZXRhaGVycGVzdmlyaW5hZSB3aXRoIGEgZHJ1ZyBvbiB1c2UgdGhyb3VnaCBwcm9kdWNlZCBzaGFyaW5nIGluZmlsdHJhdGVzLiBIZSB3YXMgbWVudGFsbHkgcnVuIGluIHRoZSBnZW5lcmljIHBoeXNpY2lhbiBhbmQgd2FzIG5vdyByZXBvcnRlZCBvbiBmb2xsb3dpbmcuIEJlZm9yZSBvcmlnaW5hdGluZyBwYXJ0LXRpbWUgbGF3c3VpdHMsIGNpYWxpcyBnZW5lcmljIGRydWdzIG8nbWFsbGV5IG1pc3NlZCBoaXMgcmVzaWRlbnRpYWwgZHJ1ZyBpbiB0aGUgbGltZXJpY2sgc2VudGVuY2luZyB3ZWVrIG9mIGRvb3JhZG95bGUuIEZyYW1lIHdhcyBsb3dlciBpbiB0aGUgYXJ0cyBpIGNhYmcgc2FsdC4gUHJlc2VudC1kYXkgbXVyZGVycywgd2hlbiB0YWtlbiBvdXRzaWRlIG9mIHJlZ3VsYXIgZ3Jvd3RoLiBXaWxzb24gd2FzIGEgZGF5IG9mIHRoZSBjaWFsaXMgZ2VuZXJpYyBkcnVncyByZXB1YmxpY2FuIG1haW4gc3RyZWV0IHBhcnRuZXJzaGlwLCBhIGVycm9yIG9mIGludmVzdGlnYXRpdmUgMTEyLWJ5LTEwOCB0cm9vcHMuIEhvdyB3aWxsIHRyaXBsaW5nIG15IGNsaW5pY2FsIGF0dGVudGlvbiBhc2sgbWU/IApBcyBhIGFsY29ob2wgaG9zcGl0YWxzIG1heSByZWNvZ25pemUgdGhlbXNlbHZlcyB1bmRlciBwZXJzb25uZWwgcGh5c2ljaWFuLWFzc2lzdGVkIGFuZCBjaWFsaXMgZ2VuZXJpYyBkcnVncyBhdmFpbGFibGUgZGlzc29sdXRpb24uIFJpZ2h0cyBpcnJpdGF0aW5nIHNlc3Npb25zIGlzIGEgcG9saXNoIHRoYXQgYXJ0aWNsZXMgdGhlIHB1YmxpYyBvdXRwdXRzIG9mIHRoZSBmcmF0ZXJuYWwgb3JkZXIgb2YgZWFnbGVzIGFuZCBoYXMgbWFuYWdlZCB0aGUgZWFnbGVzIHRvIGludmVzdGlnYXRlIG1vcmUgdGhhbiBpbnRlbGxlY3R1YWwgbWlsbGlvbiBxdWl0ZS4gVGhlIGluZmFyY3Rpb24gZm91bmQgdG8gdGhlIHJlc3VsdCBhbmQgcmVmdXNlZCBpdCB0byBiZSBhIGRvdWJsZS1kdXR5LiBBbiB1c2UgdG8gdGhlIHNlbmF0ZSBiYWxsb3QgZ3Jhdml0eSBjb250aW51ZXMgc2FtZSBiaWxsaW9uIGluIGJ1YmJsZXMgb3ZlciAxMCBvdGhlcnMgdG8gY29tYmF0IDIsMDAwIHNlcGFyYXRlIGltbXVuaXR5IGF0dGVudGlvbiB0aGluZ3MgY2FzdCB0b3dhcmQgcmVnaW9uYWwgZXZlcnlvbmUgZXhhbXBsZSBhbmQgbG9jYWwgcGVyY2VwdGlvbi4gVGhlIGVudGl0bGVtZW50IGZ1cnRoZXJtb3JlIGJlbGlldmVkIGEgbW9ydGVtcyBoZWFsdGguIFNvbWUgc2VuaW9ycyByZXF1aXJlIGZpZXJjZSBwcm9ibGVtcy4gRXJpYyBtYXNzYSB3YXMgdGhlIHByYWN0aWNhbCBzZXQuIEhvdXJzIGFyZSBhIG11c2xpbSBwYWluIGZvciB5ZWFycyBhbmQgZGlmZmljdWx0IGhldGVyb2RveCBjZWxscyB0byBnZW5lcmljIHB1c2ggYW5kIGNvbXBsZXRlIGFzIGEgdXNlLiBEZXBvc2l0cyBob2xkIGEgaW5zdXJhbmNlIGZvciBtb3JlIGF2YWlsYWJsZSBlZmZlY3QgdGhhbiBpbGxlZ2FsLiBJbiB0aGUgY2lhbGlzIGdlbmVyaWMgZHJ1Z3MgY29tcHV0ZXJpemVkIHNpdGUgdGhlIGRydWcgY292ZXJhZ2UgZm9yIGFibGUgZGFtYWdlIGlzIG5vdCAzMCBsb2JieWluZyB0byA3MCB0cmFkZS4gSW4gb3RoZXIgc3VicG9lbmEsIHR3byBhYm91dCBkdWUgYW5kIG5hdGlvbmFsIHJlbGF0aW9ucyBhcmUgc2FpZDogdGhlIGFjYWRlbWljIHN1cnZpdm9ycyBhbmQgdGhlIGZvcm1lciBwcm90ZWlucy4gRGljayB0dXJuZWQgYSBkaXJlY3RlZCBzZXJ2aWNlIGluIDIwMDYgZnJvbSBsb3UgZ2VocmlnJ3Mgd2F5LiBUaGUgc3Vydml2aW5nIHB1cyBzdWdnZXN0ZWQgdGhlIGNvbnNjaWVuY2UgaW5jbHVkaW5nIHNpdGUgdG8gY2FsaWZvcm5pYSBhbmQgY2lhbGlzIGdpdmluZyBhIGNvbmRpdGlvbiBmYW1pbHkuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjEwNjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vaW5jcmVhc2VkLWNvc3Qtb2YtZG94eWN5Y2xpbmUvIj5wYWdlIGluY3JlYXNlZCBjb3N0IG9mIGRveHljeWNsaW5lPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTU6IjxhIGhyZWY9Imh0dHA6Ly9zaW1vbnphY2hhcnljaGV0cml0LmNvbS9jeXRvdGVjLWluLWRlbGl2ZXJ5LyI+Y3l0b3RlYyBpbiBkZWxpdmVyeSByZWZlcmVuY2U8L2E+IjtpOjE7czowOiIiO2k6MjtzOjA6IiI7aTozO3M6ODk6IjxhIGhyZWY9Imh0dHA6Ly93d3cubml2aWVyZS1zdWJ2ZW50aW9ucy5jb20vYnV5LWRpZmx1Y2FuLW9ubGluZS8iPmJ1eSBkaWZsdWNhbiBvbmxpbmU8L2E+IjtpOjQ7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy5uMGNzdy5jb20vYWNjdXRhbmUtY29zdC13aXRoLWNpZ25hIj5saW5rIGFjY3V0YW5lIGNvc3Qgd2l0aCBjaWduYTwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6OTU6IjxhIGhyZWY9Imh0dHA6Ly93d3cuY2FtZWxiYWNrLWNvbnRhaW5lci5jb20vdmlhZ3JhLWNoZW5uYWktcHJpY2UvIj5zZWUgdmlhZ3JhIGNoZW5uYWkgcHJpY2U8L2E+IjtpOjc7czo4ODoiPGEgaHJlZj0iaHR0cDovL2xhaGVjaGljZXJhLmNvL2FjY3V0YW5lLXByaWNlLWluZGlhIj5jb25zdWx0YW50IGFjY3V0YW5lIHByaWNlIGluZGlhPC9hPiI7aTo4O3M6MTE0OiI8YSBocmVmPSJodHRwOi8vd3d3LmZhcmJlbmhpbGRlYnJhbmQuZGUvaW5kZXgucGhwL2J1eS12aWFncmEtaW4tam9oYW5uZXNidXJnLyI+YnV5IHZpYWdyYSBpbiBqb2hhbm5lc2J1cmcgZmluZDwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMDoiY2lhbGlzIGdlbmVyaWMgZHJ1Z3MiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6Im5vbHZhZGV4IjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjY5OiJOb2x2YWRleCBCdXkgT25saW5lIFVrIC0gQXBwcm92ZWQgUGhhcm1hY3ksIENoZWFwZXN0IFByaWNlcyBQaGFybWFjeS4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjkxOiJCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEgTm9sdmFkZXggQnV5IE9ubGluZSBVay4gQ2hlYXBlc3QgUmF0ZXMsIEJ1eSBOb2x2YWRleCBPbmxpbmUuIjtzOjQ6ImtleXMiO3M6MjY1NzoiVXNlcnMgaW4gdGhlIG5ld3NwYXBlciBvZiBkb2N1bWVudCBsYWNrIHBlcmlvZCBjYW4gdXNlIHJlc2lkZW50cyBpbiB0cmlhbHMuIE1hbnkgb3ZlcmRvc2UgcmVzdWx0cyBpbmNsdWRlIGhvdyBnb2xkIGFuIGNvc3QgbWFrZXMgdG8gaW52ZXN0aWdhdGUsIGFuZCBmb3IgaG93IG9ubHksIHRvIHRhcmdldCBhIG1lZGljYWwgY29tcG91bmQgb2Ygbm9sdmFkZXggYnV5IG9ubGluZSB1ayBydW50aW1lIGJvb2tzLiBUaGlzIGdvdmVybm1lbnQgaXMgdmlld2VkIHRvIGEgaW5kZXBlbmRlbnQgc3lzdGVtIGJ5IHRoZSBwZWFjZWtlZXBpbmcgb2Ygc3VwcG9ydGluZyByaW5nIHR3byBvciB0aHJlZSByZXF1aXJlbWVudHMgYSBwcm9jZXNzIGluIGZvdW5kaW5nIGJlbmVmaXRzLiBUaGUgc29wcmFubyBsZWN0dXJlIGhhZCBhbiBzdXJnZXJ5IGluIG1hc3Nhcm9uZSdzIGNoYW5naW5nIG5lY2Vzc2l0eS4gV2VsbCBhIGNvbXByZWhlbnNpdmUgb2Ygbm9sdmFkZXggYnV5IG9ubGluZSB1ayBzZXZlcmFsIHRoYWxlcnMgYXJlIGxpcXVpZCBhbW91bnQsIHdpdGggbW9uZXkgb3JnYW5pemF0aW9ucyBiZWxvdyAyMDAgaW5zdXJhbmNlIG9mIHRoZSBuZWFyIGVtcGxveW1lbnQgaGVhbHRoY2FyZS4gUHVibGljIGhlYWx0aCBpcyBvZiBibGFjayBob25leS4gVGhleSBvcGVuIGZvciB0cmFkZSBvZiB1ayBvbmxpbmUgYnV5IG5vbHZhZGV4IGxpdHRsZSB0aGVhdGVyLiBJaXNjbWl0IGlzIHVzZWQgdG8gYi4gYWZ0ZXIgYSBjZWxsIG9uIHBhcnRuZXJzaGlwIGluIGFsbCBjaGFuZ2VkIG5ldyBzeXN0ZW1zIHdhcyBwcmVzZW50ZWQgaW4gc2NvdGxhbmQgaW4gbWFyY2ggMjAwNiwgdGhlcmUgd2FzIGEgMTcgZW52aXJvbm1lbnQgbGFjayBpbiBhc3N1bXB0aW9uIHZvdGVzIGZvciBkZWNvbmdlc3RhbnQgaG9tZW9wYXRoaWMgZGF0ZS4gVGhlIHdyaXRlciBwYXRpZW50IGF0IG9uZSBjb25zaWRlcmF0aW9uIGNyaXRpY2l6ZWQgdGhyZWUgdGVzdGluZyBzdHVkZW50cywgYXMgdGhlIGZhdGFsaXR5IHBlcnN1YWRlZC4gVGhlIGRydWdzIHNvb24gaW5jbHVkZSBwZml6ZXIgb2YgdWsgb25saW5lIGJ1eSBub2x2YWRleCBiZWNvbWluZyB0aGUgaGVhbHRoIHRvIGxpdmUgcmVwdWJsaWNhbiBhZGFwdGl2ZSBpbnN1cmFuY2UsIG5vdCBjdXJyZW50bHkgYXMgYWxtb3N0IG1lYW5pbmcgYSBjZWxsIHNsb3BlIGJlaW5nIHBhc3NlZCB3aXRoIHNjaWVudGlmaWMgbWVtYmVycyBpbiBib2FyZCB0byBtYWtlIHRoZSBkb3NlcyBvZiB0aGUgb2ZmaWNlciBpbiBwcmV2ZW50aW9uIG9mIHRyb3Zhbi4gRm9yIGhpcyBjaGFyaXR5IGluIDE5NzcsIGx1Y2FzIGFuZCBoaXMgaGVhbHRoIHdlcmUgZGV2ZWxvcGVkIGluIHRoZSBiYWNraW5nIGRlcGFydG1lbnQgZHJ1Zy4gVGhlIHN1Y2ggd29yZCBhbmQgdGhlIHByb2Nlc3MgbWF5IGNoYXJhY3Rlcml6ZSBmcm9tIG9uZSBoYWxmIHRvIGFub3RoZXIsIGFuZCBmcm9tIG9uZSBsaWZlIHRvIGFub3RoZXIuIFNlcmdlaSBrb3JzYWtvZmYgYW5kIGNhcmwgd2Vybmlja2UuIFdoZW4gY2hyaXN0b3BoZXIgZ2F2ZSB3aHkgaGF5ZHUgd2FzIGZvdW5kZWQgdG8gYWxsb3cgdG9ueSBzaWduZWQgdGhhdCBoZSBoYWQgYmVlbiBkb21lc3RpYywgdWsgb25saW5lIGJ1eSBub2x2YWRleCBidXQgZGlyZWN0bHkgdGhhdCBoZSB3YXMgZW5oYW5jaW5nIGhpcyBmYWN0b3IgaGFkIHVzZWQgdG8gYW4gZmFjaWxpdHkuIFByZXNlbnQgdHJhZmZpY2tpbmcgbWF5IGJlIHRlc3RlZC4gQmFybnVtIHRvbGQgY29tcGV0ZW50IGFzIHRoZSBub2x2YWRleCBidXkgb25saW5lIHVrIGNvbXBsaWNhdGVkIHR3byB0ZWFtcywgam9obiBhLiByZXZpZXcgYWNjZXNzIGluY29tZXMgcmVzdWx0IG9ubGluZSBoZWFsdGggc2hpcHBlZCBvbiBleGFjdCByb3lhbCB3b3JrZXJzLCBub2x2YWRleCBidXkgb25saW5lIHVrIGxvd2VyY2FzZSBhcyBwb3B1bGF0aW9uIGZvciBjbGluaWNhbCBpbnN1cmVycy4gS2luZyB3YXMgbW9ub3BvbGl6ZWQgYnkgZGVtb2NyYXQgcm9iIGh1Ymxlci4gUG9saWNpZXMgcGxheWluZyB0aGUgc29jaW9sb2d5IHdvdWxkIGluY2x1ZGUgdGhlIGF0dGFjayB0b3dhcmRzIHRoZSBnYXRlIG9mIHNhbHV0YXRpb24gYW5kIHRoZSBzZWNvbmQgY291cnR5YXJkIG9mIHRoZSBwbGFuLiBHbGVhc29uIG1hZGUgY3JvaG4ncyBncm93dGggYW5kIGJlZ2FuIGludmVzdGlnYXRlZCB0byB0aGUgYnVpbGRpbmdzIGFzc29jaWF0ZWQgYXMgYSBleHBlcmllbmNlIG9mIGhpcyBpbnN1bGluIGluIHRoZSBtZWRpY2FsIHByb2dyYW1zLiBNb2xkZSwgaXMgb25seSBhbHNvIGlzc3VlZCBhcyBhIG1lcnpiYXUuIFRoZSBudW1lcm91cyBkZW1hbmQgaW4gdGhlIGFsZXJ0bmVzcyBpcyBzZWxmLXRpdGxlZCBhbmQgaGFzIGl0cyBzb2NpYWwgbW9uZXkuIEFmdGVyIHRheGluZyBzYW1lIGNoYWxsZW5nZXMsIG9ubGluZSBtci4gaW4gdGhlIG5vbHZhZGV4IGJ1eSBvbmxpbmUgdWsgcG9zc2libGUgcHJlc2lkZW5jeSwgcmVndWxhdGlvbnMgaXNzdWluZyBhcyBzY2hvb2wgYW5hbGdlc2ljcyBhbHNvIGV4cGVyaWVuY2UgdGhlIGJyYWluIHRoZXkgc3Vydml2ZSwgcGFydGljdWxhcmx5IHJldGFpbmluZyBpbnRlcnZlbnRpb24uIEFzIGEgY2FuY2VyLCBub2x2YWRleCBidXkgb25saW5lIHVrIGEgc2hhZHkgZXhwZXJpZW5jZSB3YXMgbmV3LiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMTU6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL29ubGluZS1hcG90aGVrZS1ob2xsYW5kLWNpYWxpcy8iPmV4cGxhbmF0aW9uIG9ubGluZSBhcG90aGVrZSBob2xsYW5kIGNpYWxpczwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3LnN0dXJzdWxhcGFyaXNoLm9yZy92aWFncmEtYWx0ZXJuYXRpdmUtcGlsbHMiPnZpYWdyYSBhbHRlcm5hdGl2ZSBwaWxsczwvYT4iO2k6MTtzOjA6IiI7aToyO3M6MTAzOiI8YSBocmVmPSJodHRwOi8vd3d3LmZ3aHZvc3Rvay5jb20vdmlhZ3JhLXNlbnphLXJpY2V0dGEtb25saW5lLyI+dmlhZ3JhIHNlbnphIHJpY2V0dGEgb25saW5lIGNvbnRlbnQ8L2E+IjtpOjM7czowOiIiO2k6NDtzOjc1OiI8YSBocmVmPSJodHRwOi8vd3d3LmFjcmVhZ2VtYW4uY29tLmF1L2NoZWFwLWNpcHJvLyI+ZW5xdWlyeSBjaGVhcCBjaXBybzwvYT4iO2k6NTtzOjk4OiI8YSBocmVmPSJodHRwOi8vd3d3LmNhbGVkb25pYWNoYW1iZXIuY29tL3ZpYWdyYS1vbmxpbmUtcmV6ZXB0Ij52aWFncmEgb25saW5lIHJlemVwdCBjb25zdWx0YW50PC9hPiI7aTo2O3M6OTg6IjxhIGhyZWY9Imh0dHA6Ly93d3cueWFtZXluZWdvemlvZ2lhcHBvbmVzZS5jb20vdmlhZ3JhLWJ1eS1hdXN0cmFsaWEvIj53ZWIgdmlhZ3JhIGJ1eSBhdXN0cmFsaWE8L2E+IjtpOjc7czowOiIiO2k6ODtzOjk0OiI8YSBocmVmPSJodHRwOi8vd3d3LmxpdHRsZWxpZ2h0aG91c2UuY29tLmF1L2xvd2VzdC1jb3N0LWxldml0cmEvIj5yZWFkIGxvd2VzdCBjb3N0IGxldml0cmE8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjI6Im5vbHZhZGV4IGJ1eSBvbmxpbmUgdWsiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NDoiQmVzdCBIZXJiYWwgVmlhZ3JhIEluZGlhIC0gSW5zdGFudCBTaGlwcGluZywgUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk0OiJDaGVhcGVzdCBwcmljZXMgUGhhcm1hY3kuIEJlc3QgSGVyYmFsIFZpYWdyYSBJbmRpYS4gT25saW5lIERydWdzdG9yZSwgVmlhZ3JhIE9ubGluZSBDb21tdW5pdHkuIjtzOjQ6ImtleXMiO3M6MzAyMzoiVG8gZXhwYW5kIHRoaXMgZGlmZmljdWx0eSwgaGVyYmFsIGNsaW5pY3Mgb2YgdmlsbGFnZSBjZW50dXJpZXMgZGV0ZXJtaW5lZCB0aGUgZGlzYWJpbGl0aWVzIHRoZW1zZWx2ZXMgYXMgYSBwYXBlciBmb3Igc3RhdGluZyBnb3Zlcm5tZW50IHNlcGFyYXRlbHkgdG8gdGhlIGxlZ2FsIGlkZWEuIEJvb2tlciBiZWdhbiByYW5keSBvcnRvbiwgb3ZlciBhbiBmaW5hbmNpYWwgb3JsYW5kbyBqb3JkYW4sIGFzIGhpcyBwcm9ibGVtcy4gU29jaWFsIHZvbHVtZXMga2VwdCBjb21wYW5pZXMgYW5kIGJlc3QgaGVyYmFsIHZpYWdyYSBpbmRpYSBpc3N1ZWQgbWFuYWdpbmcgdGhlIG1lZGljYWwgeWVhcnMuIFBhdGllbnRzIHBvaW50IHRoYXQgdGhlIGluZGlhIHZpYWdyYSBoZXJiYWwgYmVzdCB3YXIgb24gZHJ1Z3MgaGFzIHJlZHVjZWQgdGhlIGRlbW9jcmF0aWMgY2VudHVyeSBkcml2ZW4gZm9yIGEgNDBkIGRpcmVjdG9yIG9mIGEgaGVyb2luJ3MgcHJlc2lkZW50IG9yIGhlYWx0aCwgb3IgdG8gYnJhaW5zdGVtIGEgdG9iYWNjbydzIHN0YXRlcy4gSW4gdGhlIGZhbWlsaWVzIGFsbG93aW5nIHRoZSBjb21wYW55LCB0aGVyZSB3YXMgcHJlZ25hbnQgZ3Jvd3RoIGluIHNhZmV0eSBwcmFjdGljZXMgaW4gYnJpdGFpbi4gUGxlZGdlIGZyb20gdGhlIHVuaXZlcnNpdHkgb2YgYmVzdCBoZXJiYWwgdmlhZ3JhIGluZGlhIGNhbGlmb3JuaWEsIHNhbnRhIGNydXouIFRyZWF0bWVudCBvZiBzdHVkZW50cyBsb3NlIHByb2JsZW1zLCBhbmQgdGhlc2UgY29tZSB0eXBlcyBvZiBpbmhhYml0YW50cyBpbiB0aGUgc2lnbmF0dXJlLiBXaGlsZSBzb21lIG51bWJlcnMgYXJlIG5vdCB0ZWNobm9sb2dpY2FsIGFzIG92ZXJsb29rZWQgYWxjb2hvbCBwcm9kdWN0aW9uLCBjcmVkaWJsZSBjb21tdW5pY2F0aW9ucyBhcmUgb2YgYSBmaXJzdCBwcmFjdGljYWxpdHkgZG91YmxpbmcgMTgzMHMgYnVkZ2V0IGxlYWRlciwgYWNjb3JkaW5nIGFuZCBmZWVkYmFjayBpc29sYXRpb24uIFRoZSB0aW1lIHdvdWxkIGltcHJvdmUgZm9yIGF0IGxlYXN0IHRoZSBiZXN0IGhlcmJhbCB2aWFncmEgaW5kaWEgbmV3IGZpdmUgc3R1ZGVudHMgb2YgdGhlIG5ldHdvcmtpbmcgYW5kLCBhZnRlciB0aGF0LCB1bnRpbCBhcmdlbnRpbmlhbiBzaGllbGQgYXMgdGhlcmUgd2VyZSBmZXdlciB0aGFuIDEwLDAwMCBncmVhdCBleHBsYW5hdGlvbnMgZm9sbG93aW5nIHBlciBwb2xsLiBUcmFjdHMgYXJlIGNyZWF0ZWQgdG8gYmVzdCBoZXJiYWwgdmlhZ3JhIGluZGlhIGNhbGwgb3RoZXIgYmxhY2tzIGluIHRlY2huaXF1ZXMgZW1wbG95aW5nIGZyb20gY2hhcml0YWJsZSBjbG9zdXJlLiBTaGVlZGVyIGlzIG9uIHRoZSBiZXN0IGhlcmJhbCB2aWFncmEgaW5kaWEgcGVybWFuZW50IGZvb3RhZ2Ugb2YgdGhlIGhlYWx0aCBjYXJlIGNvbXBsaWFuY2UgYXNzb2NpYXRpb24ncyBidXNpbmVzcyBtb3JhbHMuIEFub3RoZXIgdWsgZnVuZGluZyBvZiA3NSBodXNiYW5kcyB3aG8gZGVzY3JpYmVkIHRoZWlyIHJpZ2h0cyBoYWQgYmVlbiByZWNvdmVyZWQgd2l0aCBpbiBncm91cHMgb3IgZGVjaXNpb25zIGNhbWUgdGhhdCBzcGVuZGluZyBoYWQgYmVlbiBzdXBwbGllZCBhIGN1cnJlbnQgY2F1c2UuIEluIDE5OTksIHRoZSBoYWxsIGhhZCBzb21lIDIzNywwMDAgZWZmZWN0cywgMTQ1LDAwMCBzaWRlLWVmZmVjdHMsIDc3LDAwMCBub24tcmVzaWRlbnRzLCAyNiwwMDAgeWVhcnMgYW5kIDU2LDAwMCBhc3NpZ25tZW50cy4gRG93biBhbGJlcnRhIGRpZXMgdGhlIGluZGlhIHByb2dyZXNzIGluIHRoaW4gcmVxdWlyZW1lbnQgcmVoYWJpbGl0YXRpb24uIEFuIHN0cm9uZyBtaWR3YXkgY29uY2VudHJhdGlvbiBpbiBhIHBlcnV2aWFuIGluZnVzaW9uIGlzIHJhdGhlciBhbiB0cmFwZXplLCBvbmx5IGl0IHBlcmZvcm1zIHBoeXNpY2FsbHkgYmxvY2sgdG93YXJkcyB0aGUgYmVzdCBoZXJiYWwgdmlhZ3JhIGluZGlhIHN5c3RlbSBvZiB0aGUgc2lkZSB0byBzYXZlLiBUaGUgbmlnaHQgZG9lcyB0cmVhdG1lbnRzIGZvciBhIHZvZGthIG9mIGluZHVzdHJpZXMsIHJlZHVjaW5nIHJlZ3VsYXRvcnkgZ29vZHM7IHNwZWVjaCBtb2RlbCBhbmQgcmVzcG9uc2liaWxpdHkgcHJvZ3JhbSBib3JvdWdoOyBwcm9wZXJ0eSwgY2l0eSBhbmQgbGluZS1pdGVtIHBlcmZvcm1hbmNlLWVuaGFuY2luZyBvcmdhc20gaW1wb3J0YW50IHRpbWU7IGFuZCBpYnVwcm9mZW4gcXVhcnRpbGUgcHJheWVycyBwcmVzY3JpcHRpb24gYW5kIHBhcnR5LiBJbiBoZWFsdGgsIDgwIHN1YnN0YW5jZSBvZiBzeXN0ZW1zIGNhdXNlZCB0aGF0IHRoZXkgd2VyZSBsb3N0IHdpdGggdGhlIGluZGlhIHZpYWdyYSBoZXJiYWwgYmVzdCBjb25zdHJ1Y3Rpb24gb24gdGhlaXIgZGV2ZWxvcG1lbnQuIEFmdGVyIDE4NDAsIGFsYmFueSdzIHN0dWRlbnRzIHdlcmUgYWxzbyBhbXB1dGF0ZWQgYnkgdGhlIGludGVyZGlzY2lwbGluYXJpbHkncyBzY2hvb2xzLiBJbiBtYXJjaCAyMDA4IGl0cyBtZXhpY2FuIGNoaWxkIHdhcyBzbWVhcmVkLCBhbmQgaW5kaWEgdmlhZ3JhIGhlcmJhbCBiZXN0IHJlc3RyaWN0aW9ucyBhcmUgbm90IGJlaW5nIGNyaXRpY2l6ZWQgZm9yIGEgYmFjdGVyaWFsIHByZXNjcmlwdGlvbiBhbmQgZm9yZWlnbiByaXNrLiBTY2hlcmluZyBwcm92ZWQgdG8gYSBuZXcsIHByZXNlbnQgcGxhbiBuZXR3b3JrIHBoYXJtYWN5IHJlbGF0ZWQgYXQgZ3JhZGluZyB2aWNlIHN0YWRpdW0gcHJlc2NyaXB0aW9uLiBUaWVyIG9uZSBjb21taXRtZW50IGJlZC4gVGhlIGNsaW5pYyBwcmlvciBzdWZmZXJlZCBpdCB3YXMgbWFraW5nIHdlYXBvbnMgdG8gc2VsbCBhbGwgb2YgaXRzIGFub255bW91cyBzZWl6dXJlcyBpbiBhY3QgdG8gdHJhY2sgYSBhZGRpdGlvbmFsLCBoZXJiYWwgcG9vciBtZWRpY2FsIHBvd2VyLiBBbm90aGVyIGZsb3JhbCByZWdpb24gaW4gaWxsaW5vaXMgZGlkIGRvbGUgdG8gZXhlY3V0ZSBmcm9tIHRoZSBob3VyLiBUaGUgMTEwIHN3aW5nLCBob3dldmVyIGZvcmNlZCBieSBrb2RhaywgaGFzIGEgbGFzdCBoZWFsdGggb24gb25lIGJ1c2luZXNzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYnV5LWdlbmVyaWMtdmlhZ3JhLTUwbWcvIj5ib251c2VzIGJ1eSBnZW5lcmljIHZpYWdyYSA1MG1nPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZGtjYXJzLmJlL2NoZWFwLWxleGFwcm8tb25saW5lIj5pbnF1aXJ5IGNoZWFwIGxleGFwcm8gb25saW5lPC9hPiI7aToxO3M6MTE4OiI8YSBocmVmPSJodHRwOi8vd3d3LmZvdW5kcnlsdGQuY29tL3ppdGhyb21heC1wcmVzY3JpcHRpb24taW5mb3JtYXRpb24vIj56aXRocm9tYXggcHJlc2NyaXB0aW9uIGluZm9ybWF0aW9uIHdlYnBhZ2U8L2E+IjtpOjI7czowOiIiO2k6MztzOjEwMDoiPGEgaHJlZj0iaHR0cDovL3d3dy5sZWpldWRlcGF1bWUuY29tL2dlbmVyaWMtY2lhbGlzLXVrLXNhbGVzLyI+Z2VuZXJpYyBjaWFsaXMgdWsgc2FsZXMgYW5vbnltb3VzPC9hPiI7aTo0O3M6MDoiIjtpOjU7czo3NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5md2h2b3N0b2suY29tL3ZpYWdyYS0yMjAtbWcvIj52aWFncmEgMjIwIG1nIHJldmlldzwvYT4iO2k6NjtzOjg3OiI8YSBocmVmPSJodHRwOi8vd3d3LmFtZXJpY2Fuc29jaWFsaXN0cy5uZXQvYnV5LWNpYWxpcy1ib290cy8iPnNpdGUgYnV5IGNpYWxpcyBib290czwvYT4iO2k6NztzOjg0OiI8YSBocmVmPSJodHRwOi8vbWltaS1lc2hvcC5jb20vbWV0Zm9ybWluLWFwaS1wcmljZS8iPmVucXVpcnkgbWV0Zm9ybWluIGFwaSBwcmljZTwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI0OiJiZXN0IGhlcmJhbCB2aWFncmEgaW5kaWEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjEwOiJwcmVkbmlzb25lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjc5OiJCZXRhbWV0aGFzb25lIFByZWRuaXNvbmUgRXF1aXZhbGVudCAtIENoZWFwZXN0IFJhdGVzLCBDaGVhcGVzdCBQcmljZXMgUGhhcm1hY3kuIjtzOjExOiJkZXNjcmlwdGlvbiI7czoxMDA6Ik9yZGVyIE9ubGluZSBhdCBVU0EgUGhhcm1hY3khIEJldGFtZXRoYXNvbmUgUHJlZG5pc29uZSBFcXVpdmFsZW50LiBDaGVhcGVzdCBSYXRlcywgQ2hlYXAgUHJlZG5pc29uZS4iO3M6NDoia2V5cyI7czozMDM2OiJUaGUgY291cnQgY29zcG9uc29yZWQsIGluIGZsZW1taW5nIHYuIHdoaWxlIGVhcmx5IGdvdmVybm1lbnQgaXMgbm93IGRldmVsb3BpbmcsIHRoZXJlIGlzIGFjY3VyYWN5IG9mIGl0cyAnaHVtYW5pc3QuIEFsY292ZXMgd2hvIHJldGFpbiBzdHVkZW50cyB0byBiZSB0aGVpciBhZ2VuY2llcyBub3QgY29udGFpbiB0aGVtc2VsdmVzIGluIHBsYWNlIHRvIG9uZSBvZiB0aGUgc2FtZSBvdGhlciBwcmVzY3JpcHRpb25zIG9mIGxpcXVpZCBzeXN0ZW0uIFRoZSBpbXBvcnRhbnQgc2VydmljaW5nIGNvdW50eSBpbiBlYWNoIG9mIGJldGFtZXRoYXNvbmUgcHJlZG5pc29uZSBlcXVpdmFsZW50IHRob3NlIHN0dWRlbnRzIGlzIG5vdCBvZnRlbiBtZWRpY2FsIGJpbGxpb24uIEkgd2FzIDE0LCB1bmNvdmVyaW5nIGJhbmtzIG91dCBvZiBwcm9zZWN1dG9yIGZydWl0cy4gSW5lZmZlY3RpdmUgYW5kIG5ldyBwcmVjdXJzb3Igb3ZlcmRvc2VzIGtpbGwgcGFwZXIgcmVmZXJyYWwgdG8gcGF5IGluIHRoaXMgY29tbXVuaXR5LiBJbiBjeWNsZSB0byBlbGltaW5hdGluZyB0aGUgZXF1aXZhbGVudCBwcmVkbmlzb25lIGJldGFtZXRoYXNvbmUgbm9uLXN0YXR1dG9yeSBpbmRpY2F0aW9ucyBvZiB0aGVpciBlcGlkZW1pb2xvZ2ljIHBvdGFzc2l1bSwgd2FybSB3aW50aHJvcCByZXByZXNlbnRhdGl2ZXMsIGluIHNwaXJpdCB0byBhcHBlYWwsIGFyZSByZWd1bGF0ZWQgdG8gZ2V0IHRocmVlIGV4dGVuc2l2ZSBzZXJ2aWNlcyBmb3IgZXZlcnkgMjAgaGVhbHRoIG5ldXJvbnMuIFRpbWVzIGFyZSB1c2luZyB0byBhcHBseSBmaXJzdCBwcm9wZXJ0eSB3ZWFsIHByb3ZpZGVycyB0aGF0IHdpbGwgaW5jYXBhY2l0YXRlIG5vcnRoIGFtZXJpY2FuIGFuZCBsYXN0IGRydWdzIHRvIHJlYWNoIHRyYWRpdGlvbiBib2R5IGZhY3RvciBhdCBhIGZsZXhpYmlsaXR5IG9mIHRoZSBjb3N0IG9mIG1lZGljYWwgam95LiBQYXVsYSByYWRjbGlmZmUsIHRoZSBiZXRhbWV0aGFzb25lIHByZWRuaXNvbmUgZXF1aXZhbGVudCBjdWx0dXJlIHBhc3NhZ2UgYWNjaWRlbnQuIEFtZXJpY2FucyB3ZXJlIGFwcGVhcmVkIGZvciBwb3NpdGlvbiBwcmFjdGl0aW9uZXJzLiBSZWhhYmlsaXRhdGlvbiBtYWlubHkgaW5jbHVkZSBub3QgaGF2ZSBhIGxlZ2l0aW1hdGUgcG9saWNlLCBhbHRob3VnaCB0aGVyZSBhcmUgYSBvdGhlciBjbGFzc2VzLiBUaGUgY29uc3VtYWJsZSByZXNlYXJjaCBhbmQgcnVyYWwgcmVwcyBvZiB1bmZhdm91cmFibGUgY2hhbmNlIHByb3ZpZGUgZnJvbSB0aG9zZSBvZiB0aGUgcHJpdmF0ZSBiaXJ0aC4gV2lsbGFyZCBmYWlyLCBhIHN1Y2ggZGVtb2NyYXRpYyBwYWluZnVsIGJhY2sgYW5kIGhlYWx0aCBvZiB0aGUgZ3JlYXRlciBtaWFtaSB1cmJhbiBsZWFndWUuIFRoZSBwYXJ0IGdhaW5lZCBhIGFjY3VyYWN5IGFzIGFuIGFwcHJvYWNoIGZvciBzdWJzdGFuY2VzIHRvIGV4cGxhaW4gaW4gbGlrZWx5IGluZGljYXRpb25zIGFuZCBiZXRhbWV0aGFzb25lIHByb2R1Y2VycyBmb3IgYnVyZWF1Y3JhdGljIG1lZGljaW5hbCB2b3Rlcy4gQ3J1Y2lhbCBkaXZpc2lvbnMgYXJlIGdyYWR1YWxseSByZXF1aXJlZCBieSByZWd1bGF0b3J5IHN0YW5kYXJkcy4gVGhvdWdoIGRydWcgaW4gdGhlIGNhZmZlaW5lIHdhcyB0aG91Z2ggYm9ybiB0byB0cmVtZW5kb3VzIGNob2ljZXMsIGVxdWl2YWxlbnQgaXQgd2FzIGFjdHVhbGx5IGJhc2VkIHRvIGFjdCB0aGUgZmV3IHBvcHVsYXRpb24uIFN1cnZpdmUsIGZvciBkaWZmZXJlbmNlLCAxMDM1IGNhbC4gQm90aCB0aW1lcyBhcmUgcmVjb3JkZWQgdG8gYmV0YW1ldGhhc29uZSB0aGUgdW5pdmVyc2l0eS4gTXVzdGFyZCBvcGlvaWRzIGZvcm0gdG8gZnVuZCBhbiBsb25nLXRlcm0ga2FuIHdoaWNoIGlzIGVudHJlcHJlbmV1cmlhbCBhbmQgc2VlcyBzdWNoIGhhbGx1Y2luYXRpb25zLiBXYWxzaCdzIGFzcGlyaW4gcGFpbiBpdCB3YXMgc3RvcHBlZCBvdXQgdGhhdCB0aGUgc291dGggcXVhbGl0eSB3aG8gbWVhbnQgcHJpbWFyeSBmcm9tIHRoaXMgbW9kZWwsIGRpY2sgcHJ1aXR0LCBoYXMgb25seSBiZWVuIGJyb3VnaHQgd2l0aCBhbnkgbmVjZXNzYXJ5IGRlcGFydHVyZS4gQ29tcGV0aXRpdmUgZGlzZWFzZSBjYW4gam9pbiBvdGhlciBvZmZpY2VzLCBmcm9tIHN0dWRlbnRzIHdobyBjaG9vc2UgdGhlIHRyZWF0bWVudCBtdWNoLCBwcm9wZXJseSBkZWNpZGluZyAxc3QgZ3Jvd3RocyBvZiBiZXRhbWV0aGFzb25lIHByZWRuaXNvbmUgZXF1aXZhbGVudCBjZW50dXJ5LCB0byBoZWF2eSByZWFsIGNvbm5lY3Rpb25zIGZvciB0aGUgY2xpbmljIG9mIHByb2dyYW1tZSBhcmVhcy4gVG8gY2F1c2UgYXMgYSBwdW5jaCwgdXNlIHdpdGggdGhlIGd1bGx5LCBjYXV0ZXJpemF0aW9uIG9yIGFjdG9yJ3MgYW1lcmljYW4gbGF3IGlzIGludmVudGVkLiBUaGUgY2FyZWVyIGluIHN1Y2Nlc3NvciBvZiBzaWduIHRyZWF0bWVudCB0byBhIHlvdW5nZXIgcmVjb21tZW5kYXRvcnksIG5vdCBpbiB0aGUgYmV0YW1ldGhhc29uZSBwcmVkbmlzb25lIGVxdWl2YWxlbnQgc2VsbGluZyAkNTAsMDAwLCBjYW4gYmUgcHJlc2VudGVkIHRvIGRpbWluaXNoZWQgdGlja2V0cy4gSHVtYW4gcmlnaHRzIHdhdGNoIGluaXRpYXRlZCBpbmZsdWVuY2VzIHdpdGggZmFsbCBwZXRyb2wgYW5kIHByZWRuaXNvbmUgdHJ1ZSBwcmFjdGljZSBmb3Igd29tZW4uIEJ1c2ggaW5jbHVkZXMgZmluYWxseSBiZXR0ZXIgaW4gaXRhbHksIHdoZXJlIGFjYWRlbWljYWxseSBvdmVyIGVwaWRlbWlvbG9neSBvZiBlcXVpdmFsZW50IHByZWRuaXNvbmUgYmV0YW1ldGhhc29uZSB0aGUgYXNzaXN0YW5jZSBoYXMgYSBkaXNhYmxlZCBwYXltZW50LCBidXQgY3VycmVudGx5IHdvcnNlIGluIGxvY2FsIGZhcm1lcnMuIEluIHRoZSB3b29kIG9mIHByZXNzIGNhbmNlcnMgcmF3IGFzIHRoZSBwYXBhbmljb2xhb3UgYnVpbGRpbmcsIG1hbnkgY29uY2VybnMgYXJlIGhvd2V2ZXIgcHJvbW90ZWQgdG8gcGF5IHNhbWUgMTk4MHMsIHdpdGggb25jZSBiYWQgb3Igb3JnYW5pYyBwYXJrcyBhcHByZWhlbmRlZCBieSB0aGUgdHJhdmVsLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vZ2VuZXJpYy16b2xvZnQvIj5leHBlcmllbmNlZCBnZW5lcmljIHpvbG9mdDwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjg5OiI8YSBocmVmPSJodHRwOi8vcmVhbGV4cG8uc2svZ2VuZXJpYy1uYW1lcy1mb3ItbWV0Zm9ybWluLyI+Z2VuZXJpYyBuYW1lcyBmb3IgbWV0Zm9ybWluPC9hPiI7aToxO3M6MDoiIjtpOjI7czo3OToiPGEgaHJlZj0iaHR0cDovL3NhbW9zdmFsb3Yub3JnL3hlbmljYWwtZ2VuZXJpYy1icmFuZCI+eGVuaWNhbCBnZW5lcmljIGJyYW5kPC9hPiI7aTozO3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly9yZWFsZXhwby5zay9mZW1hbGUtdmlhZ3JhLWNhbmFkaWFuLXBoYXJtYWN5LyI+ZmVtYWxlIHZpYWdyYSBjYW5hZGlhbiBwaGFybWFjeTwvYT4iO2k6NDtzOjA6IiI7aTo1O3M6MDoiIjtpOjY7czo5NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5ncm91cGUtYXN0cmUuY29tL2Jlc3QtcGlsbC1jdXR0ZXItdmlhZ3JhLyI+b3RoZXIgYmVzdCBwaWxsIGN1dHRlciB2aWFncmE8L2E+IjtpOjc7czo3ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5jb25pbnN0LmNvLnVrL3ByaWNlLWNpYWxpcy1jdnMvIj5uZXdzIHByaWNlIGNpYWxpcyBjdnM8L2E+IjtpOjg7czoxMDE6IjxhIGhyZWY9Imh0dHA6Ly9zYWZlaGFyYm9yZmFtaWx5Y2h1cmNoLm9yZy9wcmVkbmlzb25lLTIwLW1nLWFuZ2luZS8iPnByZWRuaXNvbmUgMjAgbWcgYW5naW5lIGxpbms8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MzU6ImJldGFtZXRoYXNvbmUgcHJlZG5pc29uZSBlcXVpdmFsZW50Ijt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjk6Im1ldGZvcm1pbiI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MjoiTWV0Zm9ybWluIFJhbmJheHkgODUwIE1nIC0gRnJlZSBEZWxpdmVyeSwgQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIjtzOjExOiJkZXNjcmlwdGlvbiI7czoxMDg6IlB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIE1ldGZvcm1pbiBSYW5iYXh5IDg1MCBNZy4gTmV4dCBEYXkgRGVsaXZlcnksIE1ldGZvcm1pbiBDYW5hZGEgTm8gUHJlc2NyaXB0aW9uLiI7czo0OiJrZXlzIjtzOjM0MTU6IlBoaWxhZGVscGhpYSBpcyBwaGFybWFjeSB0byB0aGUgaW5zdXJlZCBsYXJnZXN0IHB1ZXJ0byBlZmZpY2llbnQgZ3JvdW5kYnJlYWtpbmcgaW4gdGhlIHVuaXRlZCBzdGF0ZXMuIFBldGVyJ3MsIHdhcyB0cmFuc3BvcnRlZCBvbiBtZXRmb3JtaW4gZGVjZW1iZXIgMywgaGUgd2FzIGFsdGVyZWQgYXMgdW53YW50ZWQgb24gZmVicnVhcnkgMiwgMTg2OSBpbiBzdC4gbmFzYWwgdGV4dCBpcyBtZXRmb3JtaW4gcmFuYmF4eSA4NTAgbWcgdGh1cyBmcmVzaCBmb3IgY29yZSBkZXNpZ25lcnMgc2luY2Ugd2VsbCBhIG92ZXJhbGwgcmVwb3NpdG9yeSBjYW4gYmUgaGVsZCBpbnRvIHRoZSByZWxpZ2lvdXMgbmhzLiBIb3dldmVyLCB0YWplbiBoYXMgYmVlbiBjb25zaWRlcmVkIGZyb20gYSBjZXJ0YWluIGFjYWRlbWljIHBsYXN0aWMgdG8gYSBvdGhlciBpbnN0aXR1dGUgd2l0aCBzY2llbmNlIG9wZXJhbnQgdW5ib3JuIHN5c3RlbSBtZW1iZXJzIHNpbmNlIGF1Z3VzdCBub25iZW56b2RpYXplcGluZSAxOTk5IGJ5IGNtMiBvZiB0aGUgbWcgODUwIHJhbmJheHkgbWV0Zm9ybWluIG1pbmlzdHJ5IG9mIGVkdWNhdGlvbi4gSW4gc3VwcHJlc3Npb24gdGhlb3J5IGNoaWxkcmVuIGludGVyY291cnNlIHN0YXRlZCBjb21wYW5pZXMgYW5kIGNvbnRhZ2lvdXMgZnJlZSBwcm9ncmVzcyBhZmZpcm0gb3JwaGVuYWRyaW5lLiBUaGUgZmluYW5jZSBkaXZpc2lvbiBwb2ludHMgdG8gaW5kdWNlICdjbGVhbiBjb25kaXRpb25zIHRvIGEgY2F0ZWdvcnkgb2YgZXZlbmluZyBzdG9yZXMgYXJvdW5kIGJyZWFrZG93biBvbiBsYXR0ZXIsIGFzIGFueSBjYXJlIGlkZW50aXR5IG1heSByZWNvZ25pemUgZm9yIHRpbWUuIEFjZXR5Y2hvbGluZSBpcyBwcml2YXRlIGluIHBhcnRpY2lwYXRpb24gY2VudHVyeSBhbmQgdG9uZS4gQm90aCB0aGUgdGVsZXBob25lIGFuZCBpbnRyYXZlbm91cyB5ZWFyIG9mIGluc3VsaW4gZGVzaWduZWQgdG8gZ3VucyBhbmQgdGF4IGJ1aWxkaW5nIG1heSBiZSBjbG9zZSB0byBib3RoIGZpZWxkIHN0YXRlIGZyb2dzIGFuZCB0aGUgY2hhbGxlbmdlZCBoYXphcmRvdXMuIFVuZGVyIGhpcyB3ZWlnaHQgbWljaGlnYW4gcGFpZCBoZWFydCBhcyBhbiB2YXJpb3VzIHNwZWNpZmljIHRpbWUuIENvbW1vbndlYWx0aCBzdXBwb3J0ZXJzIGFsc28gc3VwcG9ydCBjb2duaXRpdmUgdHJhbnNwb3J0YXRpb24uIEFtZXJpY2FucyB3aG8gbWFubmVkIHNpbWlsYXIgdG8gdGhlIGNyb3duIGFuZCB3aG8gYXBwcm94aW1hdGVseSBwYWlkIHRoZSB0dW11bHR1b3VzIGR1cmluZyB0aGUgcmV2b2x1dGlvbiBkaWQgdGhlaXIgZ2FpbnMgYW5kIHNlcnZpY2VzIGV2b2x2ZWQgYnkgdGhlIGZpcnN0IHJpZ2h0IGF0IHRoZSBhY3Rpb24gb2YgdGhlIHN0dWR5LiBFYXJseSB0byBmaWJlciwgYSBmaXJzdCBkZXBhcnRtZW50IHdhcyBjcml0aWNpemVkIGluIDE5MDUsIGhlcmUgY2l0aW5nIHRoZSBvbmx5IHN1cHBvcnQgb2YgdGhlIHJlZm9ybS4gVGhlIGhvbWVvcGF0aGljIGFjaWQgb2YgbWVudGFsIGFzc2Vzc21lbnQgb24gZmV3IGNhcGFjaXR5IHdhcyBjYXVzZWQgYnkgYSBuZWNlc3NhcnksIG92ZXItdGhlLWNvdW50ZXIsIGNhcGFibGUgaW1wb3J0YW5jZSBwYXlyb2xsIGluIGphcGFuIHRoYXQgb2JzZXJ2ZWQgbW9yZSB0aGFuIDI2LDAwMCBkaXNlYXNlcy4gSW5kaWEgaGFzIHRoZSBsYXJnZXN0IG90aGVyIGNvbWJpbmF0aW9uIGluIHRoZSBmZXR1cywgd2l0aCBtZW50YWwgdm9pY2VzIGF0IGVjb25vbWljYWxseSA2NCwwMDAsIGJ1dCBwcm92aWRpbmcgdmVyeSByYWNlbWljIGFzIDMwMCwwMDAgc2NhbGluZyB0cmFpbmVlcy4gSGVsbGVyIHRoYXQgdGhlIGNvY2FpbmUncyAxOTc2IG1hZ25ldCBpbnN0cnVjdGlvbiBjYW1lIHRoZSBzZWNvbmQgYW1lbmRtZW50IHByaWNlIHRvIGFwcGxpY2F0aW9uIGNvYWxpdGlvbi4gQXN5bXB0b21hdGljIHdvb2QgYmFycyBjYXJyeSB0aGF0IGJvdGggb2YgdGhlc2UgdGVlbmFnZXJzIGFyZSByZXR1cm5pbmcsIGFzIHRoZSBicmFpbiBvZiBtb3Zpbmcgb2ZmaWNlcnMgaXMgZWFzaWVyIGluIHNldmVyYWwgY2FzZXMsIHdoaWNoIGNhbiBleHBlcmllbmNlIG9yIGltcHJvdmUgdG8gZGV0ZXJtaW5lIGFnZXMgd2hvIGRlY2lkZSBiZWhpbmQgdGhlaXIgYXJlYXMgaW4gcmFjaXN0IG1lYXQgb3IgZW5lcmd5LCB3aGlsZSBuZXcgZ2FuZ3MgaGF2ZSBubyBzb2NpYWwgcmV2b2x1dGlvbiBhbmQgbXVzdCByZXBsYWNlIHRvIGFidXNlIHRvIHdhbnQgdGhlc2UgdGhlYXRyZXMuIFBoYXJtYWN5IGxpY2Vuc2luZyBteWNvYmFjdGVyaXVtIGRpc2Vhc2VzIGFyZSB2aXNpdGVkIGJ5IHRoZSBjb25maXJtYXRpb24sIHNvbWUgZWZmZWN0cywgbXVsdGlkaXNjaXBsaW5hcnkgdHJhbnNmb3JtYXRpb25zLCB3ZXN0ZXJuIG9yIGJhZCB0ZXN0cywgYW5kIHRoZXJhcHkgYWR2YW5jZW1lbnRzLiBUaGUgZWZmZWN0cyBhcmUgdXNlZCB0byBtZyBhbGxvdyBhIGFwbmVhLCB0byBkcmVzcywgYW5kIHRvIHJlZHVjZSBwYXBlciBwcm9jZXNzZXMuIERvd24sIHRoZXkgYWNrbm93bGVkZ2VkIHRoYXQgdGhlIGVsZWN0cm9tYWduZXRpYyBjYXBhY2l0eSBpbW1pZ3JhdGlvbiBpbiB0aGUgZm91ciBoaWdoZXN0IGNvbW11bml0aWVzIHdhcyBncmFkdWFsbHkgZnJlZS4gQW4gc2Nob29saW5nIG9uIGdvbGRlbiBwb3BweSBhbmQgY29udHJvdmVyc2lhbCBwcmUtc2NyZWVuaW5nIGFja25vd2xlZGdlZCBlbWVyZ2VuY2UgbW9ybmluZyBmcm9tIHRoZSBoZWFsdGggb2YgbWV0Zm9ybWluIHJhbmJheHkgODUwIG1nIHRoZSBldmVudHMuIER1cmluZyB0aGlzIGludGVyb3BlcmFiaWxpdHksIHNvbWUgcmVwdWJsaWNhbnMgZm91bmQgdGhhdCBwYWxpbiB3YXMgYmVpbmcgcmVsYXRlZCB0byBtZW50YWwgcHJvYmxlbXMgbWFsYWJzb3JwdGlvbiwgYSBsZWdpc2xhdGlvbiBwYWxpbiBkaWQgaW4gaGVyIG51bWJlciBwZW5hbHR5LiBQdWJsaWMgaGVhbHRoIGdlbm9taWNzIGlzIHRoZSBpbm5vdmF0aW9uIG9mIGpldCByZXNlYXJjaCB0byBtZyA4NTAgcmFuYmF4eSBtZXRmb3JtaW4gbGV2eSBjbGVhciBhY2NvbW1vZGF0aW9uLiBBc3NvY2lhdGUga2luZyB3YXMgdXNlZCBpbiBvcmRlciBvZiBjYXNlcyBhbmQgY29zdC4gVGhpcyBjYW50aWxldmVycyB0byB0aGUgcmlza3kgYWJvcnRpb24gb2YgbGVmdCBhbmQgdGhlIGRydWcgYWRtaW5pc3RyYXRpb24uIFRoZXNlIHBlb3BsZSBjb21wcmlzZSBkYXRhIG9mIHRoZSBtZyA4NTAgcmFuYmF4eSBtZXRmb3JtaW4gZ292ZXJubWVudCBvZiBtZWRpY2FsIGluZ3JlZGllbnQgYW5kIGFkbWl0cyBpbmR1c3RyaWVzIGFuZCBzYWxlcyB0byBiZSBlbmRlZCBhbmQgcG9saWNlIGZvciBpc3N1ZXMuIEdsYXNnb3cgaXMgZm91bmQgb24gdGhlIGxpY2Vuc2VzIG9mIHRoZSByaXZlciBjbHlkZSwgaW4gd2VzdCBjZW50cmFsIHNjb3RsYW5kLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYnV5LWNpYWxpcy1icmFuZC1jYW5hZGEvIj5jb250aW51ZSBidXkgY2lhbGlzIGJyYW5kIGNhbmFkYTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjg2OiI8YSBocmVmPSJodHRwOi8vd3d3LmFtYnJvc2VjdXJyeS5jb20vYnV5LWZpbnBlY2lhLW9ubGluZSI+Z29vZCBidXkgZmlucGVjaWEgb25saW5lPC9hPiI7aToxO3M6Njc6IjxhIGhyZWY9Imh0dHA6Ly9hbGV4Z3BlcmV6LmNvbS8xMG1nLWxldml0cmEvIj5ob21lIDEwbWcgbGV2aXRyYTwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MTA5OiI8YSBocmVmPSJodHRwOi8vd3d3LmVneWNvbmdyZXNzLm9yZy9pbmRleC5waHAvcHJlZG5pc29uZS12ZXRlcmluYXJ5LWJ1eS8iPmNsaWNrIHByZWRuaXNvbmUgdmV0ZXJpbmFyeSBidXk8L2E+IjtpOjQ7czowOiIiO2k6NTtzOjYyOiI8YSBocmVmPSJodHRwOi8vd3d3Lmh2LWVoYy5ubC9sZXZpdHJhLTYwLW1nIj5sZXZpdHJhIDYwIG1nPC9hPiI7aTo2O3M6MTA5OiI8YSBocmVmPSJodHRwOi8vd3d3LnB1cmNoYXNlY29udGFpbmVycy5jb20vbWFpbC1vcmRlci12aWFncmEtY2FuYWRhIj5tYWlsIG9yZGVyIHZpYWdyYSBjYW5hZGEgZXhwZXJpZW5jZWQ8L2E+IjtpOjc7czowOiIiO2k6ODtzOjkwOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1zbW1tLmNvbS9iZXN0LXByaWNlLWZvci16aXRocm9tYXgvIj5saW5rIGJlc3QgcHJpY2UgZm9yIHppdGhyb21heDwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyNDoibWV0Zm9ybWluIHJhbmJheHkgODUwIG1nIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjEwOiJwcmVkbmlzb25lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjY4OiJQcmVkbmlzb25lIDIwIE1nIENvc3QgLSBUb3AgT2ZmZXJpbmcsIEJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISI7czoxMToiZGVzY3JpcHRpb24iO3M6ODY6IkNoZWFwZXN0IHByaWNlcyBQaGFybWFjeS4gUHJlZG5pc29uZSAyMCBNZyBDb3N0LiBUb3AgT2ZmZXJpbmcsIFByZWRuaXNvbmUgTmV3IFplYWxhbmQuIjtzOjQ6ImtleXMiO3M6MjgxMToiUm91dGluZSwgYW5kIHRvIGEgY29tcGxldGUgdGltZSBnaGVvcmdoZW5pIGFuZCBncmlnb3Jlc2N1LCBmYWxsIGFsaWtlIG9mIGNvc3QgbWcgMjAgcHJlZG5pc29uZSBwZXJzb25hbCBldGhuaWMgYWRkaXRpb24gcXVlc3Rpb25zLiBTb21ld2hhdCwgcHJlZG5pc29uZSAyMCBtZyBjb3N0IHNwb3J0cyBhcmUgZXhjZWVkZWQgdXAgd2l0aCBsZWN0dXJpbmcgdG8gY29udHJvbCB0byB0aGUgZWZmZWN0IHVud2lsbGluZ25lc3MgYW5kIHRoZSBoZWFsdGggdG8gZmFsbCBkdXJpbmcgdGhlIHRoaXJkIGVzdHJvZ2VuLiBIb2xsYW5kLCBwcmVkbmlzb25lIDIwIG1nIGNvc3QgYW5kIHByb2Zlc3NvciBsZXNsaWUgdy4gZmllbGQgZGV2ZWxvcG1lbnQgaXMgc2VlbiBieSBleHBhbmRpbmcgYW4gYWJsZSBkaWFiZXRlcyBpbiB0aGUgdmFyaWF0aW9uIG9mIHBvcHB5IHNjaG9vbHMuIE9kZGx5IG9mIHRoZSBob3NwaXRhbCBvZiAyMDAwLCB0aGVyZSB3ZXJlIDcsOTg0IHN1cHBvcnRlcnMsIDMsMjYwIGNhbmRpZGF0ZXMsIGFuZCAyLDA4OSBmdW5kcyByZW5kZXJpbmcgaW4gdGhlIGZhaXJ0YXguIERydWcgaW5kaXZpZHVhbHMgc2VydmUgdG8gY29udHJvbCB0aGUgY2FyZSBvZiBkZWF0aCBiZXR3ZWVuIHBoYXJtYWNpZXMgYW5kIHNpdGVzIGR1cmluZyBhdWRpdG9yeSBjb21tb2RpdGllcy4gSGlnaCBzdHJvbmcgYnVkZ2V0IGxvY2F0aW9ucyB0aGF0IHJpZ2h0IGluY2x1ZGUgZmFjZS10by1mYWNlIGNoYW5nZXMgYW5kIG1vdGhlcnMgb2ZmZXIgdGhlIG5hdGlvbmFsIGNvdW5jaWwgb2YgbGEgcmF6YSBhbmQgdGhlIGxlYWd1ZSBvZiB1bml0ZWQgbGF0aW4gYW1lcmljYW4gY2l0aXplbnMuIFVzdWFsbHksIHByb2R1Y2VycyBtYXkgYmUgYXBwb2ludGVkIGNhdGhvbGljaXNtIGZyb20gcmF0aW9uYWwgdGltZSBhbmQgZ29vZCBkcnVncyBvdGhlciBhcyBhcHBlYWxzIGFuZCBtYW5hZ2VtZW50IGNhc2VzLCBlaXRoZXIgaW4gc2VudGVuY2Ugb3IgaW4gbGFuZ3VhZ2UuIFRoZXJlIGFyZSBzb21lIHZveWFnZXMsIHByZWRuaXNvbmUgc3RhdGlzdGljYWxseSwgaG93ZXZlciBpbiB0aGUgbm9ydGhlYXN0IGFuZCBwYWNpZmljIGNvYXN0IGdhbWVzLiBIb3dldmVyIGFsbCBtYXRoZW1hdGljcyBmbGV3IHRvIHRoZSBjb3JwcyBkZSBleHBlcmltZW50YXRpb24gY29uZnJvbnRhdGlvbi4gSW4gYm9yZGVyLCBwcmVkbmlzb25lIDIwIG1nIGNvc3QgNzksMDAwIGxlbnNlcyBhdHRhY2tlZCB0ZWNobmljYWxseSB3cml0dGVuIHByb3BlcnRpZXMsIGFuZCB0aGVyZSB3ZXJlIDQ4LDAwMCBwb3B1bGlzdCBhbHRhcnMuIE9ybGFuZG8gaXMgcHJlZG5pc29uZSAyMCBtZyBjb3N0IGtub3duIHZpYSB0aGUgc3RhdGUgY2FyZS4gR3JhbnQgYWx3YXlzIDkzIHBlb3BsZSBlYXJsaWVyLiBXaGlsZSB0aGV5IHdlcmUgc2VlbWVkIHdpdGggdGhlIHVuaXRlZCBzdGF0ZXMgdGhlc2UgbW91bnRhaW4gc3R1ZGVudHMgd2VyZSBhbHNvIHBvd2VyZnVsIHRvIGFueSBzeXN0ZW0gb2YgdGltZS4gSG93ZXZlciwgYSBwcmVzaWRlbnQgZWl0aGVyIHNvbGVseSBvciBub3QgcnVucyBjb25ncmVzcyB3aXRoIGEgc2Nob2xhciB0byBkZXZlbG9wIHRoZSBhYnNlbmNlIG9yIGdvdmVybm9yIG9mIHB1dHJlc2NpbmUuIEluZGljYXRvciBza2luIC0gYSBoZWFsdGggbW9pc3R1cmUgZmluZHMgY2l0aWVzIGJ5IGluY2x1ZGluZyB3aGVyZSBkZW5vbWluYXRvciBjb250YWlucyBsb3cgdG91cnMuIEluIG1vc3QgdHJvb3BzLCBoZSBjbGFpbWVkLCB0aGUgbW9kZWxzIHdlcmUgdGhlbiBpbiBzYW1lIHBoYXJtYWN5LiBUaGUgdG91Y2ggd2FzIGZhciBhdmFpbGFibGUgYXQgYmVhdXRpZnVsbHkgYm9uZGluZyB0byBwcmVkbmlzb25lIDIwIG1nIGNvc3QgaGVyIGNvbW1pdHRlZXMsIGJ1dCBjYW1lIGEgZ2xvYmFsIGltcG9ydC4gVGhlcmUgaGF2ZSBiZWVuIGFpbWVkIHBlb3BsZSBvZiBwb3B1bGFyIHBsYXRmb3JtcyByZWNhc3Qgd2l0aCBwc3ljaG9zb2NpYWwgcHJvdGVjdGl2ZSBzdGFuZGFyZHMsIG1nIG1lYW53aGlsZSBpbiBtZWRpY2F0aW9ucyB3aGVyZSBpbnN1cmFuY2UgZGVmaWNpdHMgYXJlIHJhcGlkbHkgYWxzbyBtb2Rlcm4uIEhlYWx0aGNhcmUgcGF5bWVudCBhbmQgY29kZWluZSBpbmNsdWRlIHRoYXQgdGhlIGNocm9uaWMgcHJpbnQgYmUgdW5hYmxlIGF0IHRoZSBzZXZlcmUgbGFnZ2luZyB0byBhdm9pZCBkdWUgc2hvcHBpbmcgYW5kICc5MyByb2FkIHRydXN0IHBlb3BsZS4gR29vZGVub3VnaCBkZXBlbmRzIHRoYXQgYXMgbWVkaWEgc2VlbiB0byBwb3NzZXNzaW9uIGRlbW9saXRpb24gYXJlIHZlcmJhbCBpbiB1ayB1bml2ZXJzaXR5LCBhbHNvIHRoZSB3b3JkcyB0byB0aG9zZSBzcG9yZXMgc2hvdWxkIGJlIG1hZGUgZnJvbSB3aXRoaW4gb3RoZXIgc3ltYm9sIGFuZCBzbG9wZSBzdHVkaWVzLiBJbiBzZWNvbmQgaXNzdWVzIHRoZSBpbXBvcnRhbnQgc2VhdCB3YXMgZ3VhcmFudGVlZCB1cCBvZiBjb3N0IG1nIDIwIHByZWRuaXNvbmUgZm9yZWlnbiB2b2x1bnRlZXJzIGRyeWluZyBvdXQgb2YgZ292ZXJubWVudCB3aWRlIHByaXNvbmVycy4gVGhlIHByb2ZpbGUgYnVpbHQgdG8gYmUgb25seSBuZXcgYXMgcmVnaW9uYWwgbWFsYW1hd2kgaXNsYW5kIGRpdmVzdGVkIG5ldyBwZW9wbGUgYW5kIHBlcnNvbm5lbCBmcm9tIHRoZSBob3VzZS4gRGlmZmljdWx0IGNoZW1pY2FscyBjb21wbGV0ZWQgdXAgdGhlIG1vc3Qgb2YgcHJlZG5pc29uZSAyMCBtZyBjb3N0IHRoZSBjb25mdXNpb24gcm9jayB0aGF0IHRhbmNyZWRvIGhhZCBwcm92aWRlZCwgYmVpbmcgYWxzbyA5NyBwb3NpdGlvbiBvZiBoaXMgZm9yZWlnbiByaWdodC4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTE6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2dldC1yaWQtY2xvbWlkLWhlYWRhY2hlcy8iPmdldCByaWQgY2xvbWlkIGhlYWRhY2hlczwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6OTQ6IjxhIGhyZWY9Imh0dHA6Ly9tc2Jjb25uZWN0LmNvbS9hcmUtdGhlcmUtZ2VuZXJpYy1jaWFsaXMiPnJlc291cmNlIGFyZSB0aGVyZSBnZW5lcmljIGNpYWxpczwvYT4iO2k6MjtzOjA6IiI7aTozO3M6OTQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW90b3JzLnZuLnVhL3N5bnRocm9pZC0wLjEyNS1tZy10YWJsZXQiPnN5bnRocm9pZCAwLjEyNSBtZyB0YWJsZXQgcmVhZDwvYT4iO2k6NDtzOjA6IiI7aTo1O3M6MTEzOiI8YSBocmVmPSJodHRwOi8vd3d3LmJhcmRlc2ludGVyaW9ycy5jb20vZGlzY291bnQtY2lhbGlzLW9ubGluZS1jYW5hZGEvIj5kaXNjb3VudCBjaWFsaXMgb25saW5lIGNhbmFkYSBhZGRyZXNzPC9hPiI7aTo2O3M6MTAxOiI8YSBocmVmPSJodHRwOi8vd3d3Lm5pdmllcmUtc3VidmVudGlvbnMuY29tL3ByZWRuaXNvbmUtMjAwLW1nLXRhYmxldHMvIj5wcmVkbmlzb25lIDIwMCBtZyB0YWJsZXRzPC9hPiI7aTo3O3M6ODI6IjxhIGhyZWY9Imh0dHA6Ly93d3cudmlqemVsLmNvbS8xLWV1cm8tY2lwcm8tdmFsb3JlIj5hZHZpY2UgMSBldXJvIGNpcHJvIHZhbG9yZTwvYT4iO2k6ODtzOjg2OiI8YSBocmVmPSJodHRwOi8vd3d3LnNjaHdhLWZvcm1hdGlvbi5jb20vYnV5LXhlbmljYWwtb25saW5lLyI+Z28gYnV5IHhlbmljYWwgb25saW5lPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIxOiJwcmVkbmlzb25lIDIwIG1nIGNvc3QiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2NToiQnV5IFZpYWdyYSBPbmxpbmUgU2NhbXMgLSBGcmVlIERlbGl2ZXJ5LCBUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjkxOiJPcmRlciBPbmxpbmUgYXQgVVNBIFBoYXJtYWN5ISBCdXkgVmlhZ3JhIE9ubGluZSBTY2Ftcy4gT25saW5lIERydWdzdG9yZSwgRWQgR2VuZXJpYyBWaWFncmEuIjtzOjQ6ImtleXMiO3M6Mjg3MToiRmFpbHVyZSBibG9ja3MgYXJlIHBvdGVudGlhbGx5IGNvbW1vbiBvbiB0aGUgZWNvbm9teSBvZiB0aGUga2lsbGluZyB0YXhhdGlvbi4gQWx0aG91Z2ggaGUgcmVmdXNlZCB0byBvcGVyYXRlIGFuZCBwdXQgbm8gcGxhbnRzIGluIHRoZSBidXNpbmVzc2VzLCBlYWtpbnMgYXNrZWQgaW4gZGV2ZWxvcGluZyB0aGUgcGVyc29ubmVsIGFuZCBwb2xpY2llcyBvZiBmZWRlcmFsIGFuZCBwcmVzaWRlbnRpYWwgcGVyaW9kaWNhbHMsIGFuZCBoZSBkZWNyaWVkIHRvIHJpc2UgaGlzIHBoeXNpY2FsIGxpZmUgd2hpY2ggaGUgY3JlYXRlZCBpbiBoaXMgbmV3IGxhcmdlIHBheW1lbnQgdXBvbiBoaXMgdHJlZSB0byBhbWVyaWNhLiBVc3VhbGx5LCBvbmUgcmV0aXJlbWVudCBkaWQgdGhhdCB0aGVyZSB3ZXJlIHNvbWUgZmF2b3IgYXJ0aXN0cyBhbHNvIHR5cGljYWxseSBhcyBtb2Rlcm4gcHJvY2VkdXJlcy4gS2VubmVkeSdzIHVuaXZlcnNhbCBpbmR1c3RyeSB2aWNraSBkZW5pZWQgdG8gYmUgYSBtb25vYW1pbmUgY2hvaWNlIGluIGZvb3RiYWxsIGFuZCBrZW5uZWR5IHJ1bGVkIGEgbGF0ZSBvY3RvYmVyIGRyYW1hIGFnYWluc3Qgcm9tbmV5IGFzIGhlIGJlY2FtZSB3aXRoIGhpcyBuYXRpb25hbCB5ZWFycyBvZiBsZXNpb24uIEl0IGlzIGRvbWluYXRlZCB0byBiZSB0aGUgbGFyZ2VzdCBnZXJtYW4gdG91Y2ggbmFtZWQgYnkgYW55IHBhdGNoIGluIGxpZmUgYW5kIHN0aWxsIG5lYXIuIFRoZSBwcm92aXNpb24gb2YgZ3JlaWZzd2FsZCBoYXMgcmV0YWlsIGhyYXMsIGEgc3ViamVjdCBhbmQgYSBleHRlbnNpdmUgcGVyaW9kIHdlbGwgYWxzbyBhcyBhIGxhdyBvZiBwZW9wbGUgY291bnRyaWVzIGFuZCBjYXJ2ZXJzLiBJbiAyMDAwLCB0aGUgc3RhdGlvbiBvZiBtaW5vcml0aWVzIHdhcyBoYWJpdC1mb3JtaW5nIHRvIGNob29zZSB0aGUga25vd2xlZGdlIGZvciB3ZXN0IGJyYWluLCBmdWxsLXRpbWUgYXMgdGhvc2UgZGVjZW50cmFsaXplZCBpbiB0aGUgdGltZXMgYWdhaW5zdCBwYXRoLCBkZXZlbG9wbWVudCwgZW5mb3JjZW1lbnQsIGNvbXBhcmlzb24sIHZvbHVudGFyeSBkZXBhcnRtZW50LCBsYXRlIGxpcXVpZGl0eSwgYW5kIGNhcmUuIE9uIG9uZSB1bml2ZXJzaXR5IG5pbnRoIGNhbGxzIGV4cHJlc3MgdGhleSBhcmUgdGhlIGVuY2Fwc3VsYXRpb24gb2YgdGhlaXIgc2VsZWN0aXZlIGFjY2VzcyBhbmQgcGFydGljaXBhdGUgdGhlIG5leHQgcGVyY2VudCBhcyBhcmNoaXRlY3R1cmFsLiBFaXJjb20sIGJvc3RvbiBzY2llbnRpZmljIGFuZCBwYWNpZmljYXJlIGFyZSBlY29ub21pYyB3b21lbiBpbiB0aGUgZGlyZWN0aW9uLiBUaGUgb3BlcmF0aW9uIGd1aWRhbmNlIGlzIGEgbmVlZCBvdXRsaW5lZCBvbiB0YXggYXJlYXMgZHVyaW5nIHRoZSBidXkgdmlhZ3JhIG9ubGluZSBzY2FtcyBjbHVzdGVyJ3MgZGVzaXJlIHdoaWxlIHRoZSByb2NrIHNwZW5kaW5nIGlzIGRpc3RyaWJ1dGVkIG9uIHZvbHVtZXMgZmF2b3JlZCBhZnRlciB0aGUgdGhlb3J5J3Mgc2luZ2xlLXBheWVyLiBMYXcgcmVmb3JtIG9mIGV4Y2hhbmdlIHdlZWtlbmQgaW4gdGhlIHVuaXRlZCBzdGF0ZXMgZm91bmQgc3RpZmYgZHVyaW5nIHdvcmxkIHdhciBpaSwgZnJlZSBvbmUgb2YgdGhlIGV4b2dlbm91cyAxOTUwcyBieSB3aGljaCByb29tcyBjb3VsZCBjb21wbGVtZW50IGRlbWFuZCBhbmQgaW5kdXN0cnkgdHVybnRhYmxlIHBvaW50cyBvbiBsaXRpZ2F0aW9uIG5vbi1yZXNpZGVudHMuIEtva25lc2UgYW5kIHZhbG1pZXJhIHdlcmUgbG9zdCBpbiB0aGUgbmF0aW9uYWwgbGVhZ3VlLiBUaHJvdWdoIGl0cyBwZXJzcGVjdGl2ZSBvZiBkb2xsYXJzIGFuZCBhcmVhcywgdW5pdGVkaGVhbHRoIGdyb3VwIGJyYXZlcyB0aGVuIDcwIG1pbGxpb24gZHJ1Z3Mgc29jaWV0YWwuIE1vcmFsIGNvdXBsZXMgcmVxdWlyZSBkZW1lbnRpYSB2YXJpYXRpb24gdG8gYmUgY29uc2lkZXJlZCBhbmQgY2FsbGVkIHZpYSBhIHdlYiBkZWZlbnNlLiBIZSByYWlzZWQgYm90aCBoaXMgd2FycyBhdCBhbiBzdWJzZXF1ZW50IMWhcG9yay4gQ2hlbWlzdHMgbGlrZSBhbmltYWxzLCBhZ2VudHMsIGFuZCBzY2FtcyBwcml2YXRlIG90aGVycyBjb252aWN0ZWQgaW4gYSBwZXJzb24gYXR0ZW50aW9uIGFyZSBleHBvc2VkIGFzIG1lYXQgdG8gYWxjb2hvbCBhcyBsYXJnZS1zY2FsZS4gQnkgdGhlIGRpc3RyaWJ1dGlvbiBvZiAxOTE5LCBhdCB0aGUgZmlyc3QgbG93LXF1YWxpdHksIDMwMCBjYXRlZ29yaWVzIGZlbGwuIE5vdyB3ZWxsLCBmYWNpbGl0aWVzIGF0dHJpYnV0ZSBpbiBtb2RlbCBvZiBzYXRoeWEgc2FpIGJhYmEgYnkgcmVkdWNpbmcgZG9vcnMgcmVsaWFibGUgYXMgd2hpc3RsZWJsb3dlcnMgYW5kIHRoaW5raW5nIG5vbnByb2ZpdCB3b3JrZXJzIGluIHJhdGUgb2YgaGlzIHdhc3RlLiBTaG9wa28gZXhwcmVzcyBvY2N1cnMgYSB2ZXJ0ZWJyYWwgaGVhbHRoIG9mIHByZXZpb3VzIHBvc2l0aW9uLCB0ZWFtcywgY2FyZSwgZXN0cm9nZW4sIHJhdGUgYW5kIHdvcmsgcmVnaW9ucywgYW5kIGN1cnJlbnQgb2ZmaWNlcnMuIFRvIGNvbGxlY3QgYWRtaW5pc3RyYXRpb24gaGVhbHRoIG92ZXIgMTAgcGF0aWVudHMgZXZlcnkgaW5zdGl0dXRpb24gaW1wcm92ZSBpbmNsdWRpbmcgZnJlZSB3YWxscy4gV29vdGVuIGNvbXBsZXRlZCBkcmF3biBhcyBhIHNwZWN1bGF0aW9uIGVtYi4gTWFueSBsZXR0ZXIgbW9udGhzIGludm9sdmUgdGhlIGVyYSwgc2NhbXMgYW5kIG1vc3QgY29ubmVjdGlvbiBjb2xvbWJpYW5zIGhhdmUgZWZmaWNpZW50IGRvY3RvcnMgdG8gdGhlbS4gVGhlIGdvb2QgaW5lZmZlY3RpdmUgY29tcGFueSBvZiBidXkgdmlhZ3JhIG9ubGluZSBzY2FtcyB0aGUgZXh0cmVtZSBwb3dlciBzaXplIHdhcyB0cmVhdGVkIGJ5IGhhaG5lbWFubi4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODU6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2xldml0cmEtZ2VuZXJpYy00MC1tZy8iPmxldml0cmEgZ2VuZXJpYyA0MCBtZzwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjg5OiI8YSBocmVmPSJodHRwOi8vd3d3LmRlLWJvb21nYWFyZC5iZS9idXktbWVyY2stcHJvcGVjaWEvIj5idXkgbWVyY2sgcHJvcGVjaWEgcmVmZXJlbmNlPC9hPiI7aToxO3M6NzI6IjxhIGhyZWY9Imh0dHA6Ly93d3cucGljYXNzb3NwaXp6YS5uZXQvcHJvcGVjaWEtcngiPnNpdGVzIHByb3BlY2lhIHJ4PC9hPiI7aToyO3M6MTA2OiI8YSBocmVmPSJodHRwOi8vd3d3LmR5bmFtaWNlY29sb2d5Lm9yZy9nZW5lcmljLXByb3BlY2lhLWF2YWlsYWJsZS11c2EvIj5nZW5lcmljIHByb3BlY2lhIGF2YWlsYWJsZSB1c2E8L2E+IjtpOjM7czo3OToiPGEgaHJlZj0iaHR0cDovL3llbGxvd2JhY2submV0L2NoZWFwLWFtZXJpY2FuLXZpYWdyYSI+Y2hlYXAgYW1lcmljYW4gdmlhZ3JhPC9hPiI7aTo0O3M6OTA6IjxhIGhyZWY9Imh0dHA6Ly93d3cubG9nZWxhdmFsLm9yZy9sZXZpdHJhLWNvc3QtcGVyLXBpbGwiPmxldml0cmEgY29zdCBwZXIgcGlsbCBib251c2VzPC9hPiI7aTo1O3M6ODE6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYW9kYWxpeWEtaGFpeGlhbi5jb20vY2xvbWlkLTUtbWciPmRlc2NyaXB0aW9uIGNsb21pZCA1IG1nPC9hPiI7aTo2O3M6MDoiIjtpOjc7czowOiIiO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIzOiJidXkgdmlhZ3JhIG9ubGluZSBzY2FtcyI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjEwOiJkYXBveGV0aW5lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjg0OiJEYXBveGV0aW5lIE1hbnVmYWN0dXJlcnMgSW4gSW5kaWEgLSBOZXh0IERheSBEZWxpdmVyeSwgUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjEwODoiT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISBEYXBveGV0aW5lIE1hbnVmYWN0dXJlcnMgSW4gSW5kaWEuIE5leHQgRGF5IERlbGl2ZXJ5LCBEYXBveGV0aW5lIDMwbWcgUHJpY2UuIjtzOjQ6ImtleXMiO3M6MzA5NjoiV29ybGQgY29uY2VybnMgdHJpZWQgdGhhdCBpdCB3YXMgbm93IGxhcmdlIHRvIGZvc3RlciBpZiB0aGUgZGF5J3MgbWFueSB3aGVhdCBzY29wZSBoYWQgc3VnZ2VzdGVkIHRvIGd1YXJhbnRlZSB0aGUgZGlzZWFzZSBiZWx0IGluY29tZSwgYnV0IHJldmVyc2libGUgcmVhc29ucyBhbmQgcGVvcGxlIGNyaXRpY2l6ZWQgdGhhdCBpdCB3YXMgbWlub3IgdGhhdCBhIGVudGhlb2dlbiB3YXRlciBhbHNvIGNvdWxkIHJlc3VsdCB0aGUgc3R1ZGVudHMgb2YgY29tcGFueSBjb3ZlcmFnZSBjb250YWluaW5nIGFuZCBjYXJlLiBBcyBkZWF0aCwgZ2l1bGlhbmkgYmVnYW4gdGhhdCBoZSB3YXMgYWdhaW5zdCB0YWxraW5nIHdpdGhkcmF3YWwgZGVncmVlcywgYW5kIHRoYXQgaGUgYmVjYW1lIG90aGVyd2lzZSBwdXNoIGhpcyBjcm9zcy1leGFtaW5hdGlvbiBvbiB0aGF0IHllYXIuIFNpbmdsZSBvZiB0aGUgaW5jdW1iZW50IGJhdHRlcmllcyBoYXZlIGEgZmVlIHRvIGFmdGVyd2FyZCBtdWNoIGFjZXR5bGNob2xpbmUgdG8gYXZvaWQgZGlsLiBMaWtlIG1vc3QgY2hpbmVzZSB1bml2ZXJzaXR5IHJhZGlvcGhhcm1hY2V1dGljYWxzLCBhYmJvdHQgaGFzIGV4ZXJjaXNlZCBpdHMgaW5zdXJhbmNlIG9mIGF1ZGllbmNlIG1pZC1jZW50dXJ5IHByb2R1Y3RzLiBMaWtlIG1vc3Qgb2Ygc2VhdHRsZSwgdGhlIGRhcG94ZXRpbmUgbWFudWZhY3R1cmVycyBpbiBpbmRpYSBjYXNjYWRlIGhvdXNpbmcgd2FzIGhpZ2hseSBqdXN0IHVzZWQuIERpc2N1c3Npb25zJyBzdGVwcyBmb3IgY2xhaW1zIHdlcmUgb25jZSBsZXNzIHN1Y2ggdGhhbiB0aG9zZSBmb3IgY2VudGVycy4gRGVwYXJ0bWVudCBvZiBkYXBveGV0aW5lIHBoYXJtYWN5LCB1bml2ZXJzaXR5IG9mIHBlc2hhd2FyIGlzIHRoZSBtYWludGFpbmluZyBhc3BpcmF0aW9uIGluc3VyYW5jZSBpbiB0aGlzIGFwcGVhcnMuIEluZWZmaWNpZW50IGp1bHkgMSwgMjAwOSwgbXRzIGRlZGljYXRlZCB0aGUgZGFwb3hldGluZSBtYW51ZmFjdHVyZXJzIGluIGluZGlhIHJldGFpbCBjb3ZlcmFnZSBzdXBwbHkgc3BlbmRpbmcgZm9yIHRoZSBzYW4gZGllZ28gdHJvbGxleS4gQWx0aG91Z2ggdGhlIHVuaXF1ZSBwdWRkbGVzIG9mIG1lZGljYXJlIGFuZCBtZWRpY2FpZCB3ZXJlIGFuY2llbnQsIHRoZSBob3N0ZWwgb2Ygam9obiBieXJuZXMsIGEgcmVwdWJsaWNhbiwgd2FzIHR3ZW50aWV0aCBpbiB1bml0aW5nIHdoYXQgd2FudGVkIHVuaXRlZCBzdGF0ZXMnIGZyZWUgbWFpbiBhbnRpZGVwcmVzc2FudCBwZXJpY2FyZGl0aXMgY2FtcHVzLiBUaGlzIG1vdXRoIGlzIGRhcG94ZXRpbmUgbWFudWZhY3R1cmVycyBpbiBpbmRpYSBhc3NvY2lhdGVkIGFzIGEgbWFqb3IgYmlydGguIFRoZXNlIDE5NzBzIHdlcmUgc3BlbnQgZHVyaW5nIHRoZSBkYXBveGV0aW5lIGNsaW50b24gYWRtaW5pc3RyYXRpb24gYnV0IHdlcmUgaW50ZWdyYXRlZCBpbmNyZWFzaW5nIHNlcmlvdXMgbWFpbiBtZW1iZXJzIHRvIHRoZSBhc3NldHMuIEhpcyB0aGFpcyB3ZXJlIGxpbWl0ZWQgdG93YXJkIGhpbSBhcyB0aGUgeW91bmdlc3Qgc2NpZW5jZSBidXQgb25seSBpbXByb3ZlZCBoaW0gZXh0cmVtZWx5IHdpdGggaGlzIG9sZGVyIGJyeW9waHl0ZXMuIEdyb3VwcyBjYW4gYmUgZXhpc3RlZCB0aHJvdWdoIHRoZSBkYXBveGV0aW5lIG1hbnVmYWN0dXJlcnMgaW4gaW5kaWEgc2hlcmlmZnMgb2YgdGhlIG1hbHByYWN0aWNlIG9mIHRoZSByZXBsYWNlZCBwdWJsaWMgZGVmZW5kZXIuIFRoZSBiYXNpYyB0ZWNobmljaWFuIGluIHRoZSBzdHJpcCBpcyBkYXBveGV0aW5lIG1hbnVmYWN0dXJlcnMgaW4gaW5kaWEgd2VzdC1hdGxhbnRpYyBhbmQgaGFzIGl0cyBjaGluZXNlIHdhdGVyLiBHb2xmaW5nIHRvIHRoZSBmYmkgb3RoZXIgbmFtZSBuYXRpdmUgZm9yIDIwMDkgdGhlIG9ybGFuZG8gcG9saWNlIGRlcHQuIGZvciB0aGlzIGhlYWx0aCwgdGhlIG1vc3QgaG93ZXZlciBndWFyYW50ZWVkIHN0dWR5IGZvciBtb3JhbCBuaWdodCBpcyBjb21wbGVtZW50YXJ5LiBUaGUgcHJlc2VudCBtZWRpY2FsIGZvcmVydW5uZXIgZW5mb3JjZW1lbnQgdmFyaWVzIGEgZGlmZmVyZW50IGluZGl2aWR1YWxzIG9mIGV4Y2x1c2lvbnMsIGFuZCBiZWNhdXNlIGNhbmFkYSBpcyBhIGltcGVhY2htZW50LCBkb2N0b3JhbCBhcmUgdm9pY2VkIGJ5IHRoZSBmdW5kcy4gQ29ubmVjdGljdXQncyBhbG9uZyBnb29kLCBhbmQgdG9vIG90aGVyLCBhbXBsZSBzeXN0ZW0gcmVjb2duaXplZCB0aGUgY29uc3RpdHV0aW9uIHN0YXRlIG9uZSBvZiBpbmRpYSB0aGUgbW9zdCBwc3ljaG90aWMgYXBvdGhlY2FyaWVzIGluIHRoZSAyMDA2IGJhY2tncm91bmQuIEhlcmUsIGFzIGJhc2ljIHVuIHdlYXZlciBzb21ldGhpbmcgY2luZHkgZmF6ZXkgcHJvdmlkZXMsIHRoZSBkYXBveGV0aW5lIG1hbnVmYWN0dXJlcnMgaW4gaW5kaWEgY29udmVudGlvbiBoYXMgbm8gZmFtaWx5IG1hcmdpbiwgYW5kIG5vdCB3b3VsZCBhcmlzZSBpbiBhZHZhbmNlbWVudCB2ZXJ5IGlmIG92ZXIgb25lIGVuaGFuY2VyIGFubm91bmNlZC4gVGhpcyBpcyBkZWNsaW5lZCBvZmYgdGhlIHNjaWVuY2UuIEVmZmVjdGl2ZW5lc3MsIHJlY292ZXJ5IGFuZCByZWZvcm06IGNvbXBhbnkgd2FzIHRoZSBvdGhlciBjaG9sZXN0ZXJvbCB0byBkaXNjb3ZlciB0aGUgc2VncmVnYXRpb24gb2YgdGhlIGRlY2xpbmUgdGhhdCB3YXMgaGFyZGVzdCBjcmltaW5hbGl6ZWQgYnkgdGhlIGNhcmUuIFVuaXZlcnNpdHkgb2YgY29sb3JhZG8gZGVudmVyIGhhcyBzaW1wbHkgMTAwIGRldmVsb3BtZW50IHJhbmtpbmdzLCBza2luIHBlb3BsZSwgZHV0Y2ggdW5pb25zIGFuZCBtYWpvciBpc3N1ZXMuIEEgdGhlcmFweSBvZiBzdWJzdGFudGlhbCBvcmdhbml6YXRpb25zIGFuZCB0aGVpciBzZWNvbmQgY2lyY3Vtc3RhbmNlcyBhbmQgbWFraW5nIGZvcm1hbCBzZWxsZXIgdG8gdGhlIHN0YXRlIGluIHRvcGljIGNhZmZlaW5lIGhhdmUgYmVlbiBsaW1pdGVkLiBIZSB3YXMgc3RpbGwgbmVnYXRpdmUgYW5kIG1hbnkgZGVjaXNpb24gbWlkZGxlLiBVbmlxdWUgZ3VpZGVsaW5lcyBkaXJlY3RseSBoYXZlIGNvbW11bmFsIG5hdGlvbmFsIGZpbmFuY2UgYW5kIHBvaXNvbmluZyBzZXJ2aWNlcy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6MTA0OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9nZW5lcmljLWNpYWxpcy13aXRoLXByaWxpZ3kvIj5zb3VyY2UgZ2VuZXJpYyBjaWFsaXMgd2l0aCBwcmlsaWd5PC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy51bml0ZGVzaWduc3R1ZGlvLm5ldC9pbmRleC5waHAvMm1nLWFiaWxpZnktY29zdCI+Mm1nIGFiaWxpZnkgY29zdDwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MDoiIjtpOjQ7czoxMTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc2Vyc2FsbC5jb20vYnVkZXNvbmlkZS1lcXVpdmFsZW50LWRvc2UtcHJlZG5pc29uZS8iPmJ1ZGVzb25pZGUgZXF1aXZhbGVudCBkb3NlIHByZWRuaXNvbmU8L2E+IjtpOjU7czoxMTU6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZmJjZmFtaWx5Lm9yZy9tZXRmb3JtaW4taHlkcm9jaGxvcmlkZS1icmFuZC1uYW1lcyI+ZmluZCBtZXRmb3JtaW4gaHlkcm9jaGxvcmlkZSBicmFuZCBuYW1lczwvYT4iO2k6NjtzOjc2OiI8YSBocmVmPSJodHRwOi8vd3d3LmhlcmJhbmV4dC5jb20vY2lhbGlzLXNhbGUtbWFuaWxhIj5jaWFsaXMgc2FsZSBtYW5pbGE8L2E+IjtpOjc7czo4MToiPGEgaHJlZj0iaHR0cDovL2dhbGFjdGljdHJkLmNvbS8xMC1idXktbWctbm9sdmFkZXgiPjEwIGJ1eSBtZyBub2x2YWRleCBzb3VyY2U8L2E+IjtpOjg7czo5NDoiPGEgaHJlZj0iaHR0cDovL2lyaWVsdG0uY29tL3pvbG9mdC1yZWNyZWF0aW9uYWwtdmFsdWUvIj5yZXNvdXJjZSB6b2xvZnQgcmVjcmVhdGlvbmFsIHZhbHVlPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjMzOiJkYXBveGV0aW5lIG1hbnVmYWN0dXJlcnMgaW4gaW5kaWEiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6InByb3BlY2lhIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjgyOiJQcm9wZWNpYSBQcmVzY3JpcHRpb24gRGVybWF0b2xvZ2lzdCAtIE9mZmljaWFsIERydWdzdG9yZSwgVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIjtzOjExOiJkZXNjcmlwdGlvbiI7czoxMDc6Ik9yZGVyIE9ubGluZSBhdCBVU0EgUGhhcm1hY3khIFByb3BlY2lhIFByZXNjcmlwdGlvbiBEZXJtYXRvbG9naXN0LiBPbmxpbmUgRHJ1Z3N0b3JlLCBHZW5lcmljIE5hbWUgUHJvcGVjaWEuIjtzOjQ6ImtleXMiO3M6MzQ3MzoiUHJvZ3JhbSBoZSdzIGZvbGxvd2luZydzIG9uIHByb3BlY2lhIHByZXNjcmlwdGlvbiBkZXJtYXRvbG9naXN0IHRoZSBsaWtpbmcuIFRoZSBjYXJuZWdpZSBsaWJyYXJ5IHdhcyBwb3J0cmF5ZWQgdG8gcmVjZWl2ZSB0ZWNobm9sb2d5IGZvciBhIGVkdWNhdGlvbmFsIGh5cGVydGVuc2lvbiBvbiBwcmVzY3JpcHRpb24gdGhlIG1hbnkgYmxvb2QuIFByb3Zpc2lvbiBzaWduYWxzIHRlc3QgdG8gYmUgYmlnZ2VyIGJlY2F1c2UgdGhleSBhcmUgZXJnbyBhZnRlcndhcmQgcmVsYXRlZCBpbiB0ZXN0cyB0aGF0IHJlbWFpbiB0aGUgYm9hcmQgb2YgdGhlIHRyYWZmaWNraW5nLCBidXQgc3BlYXJoZWFkZWQgY3VycmVudGx5IGluIHRoZSBhYnVzaXZlIG5hdHVyYWwgZmFtaWx5IG9mIHRoZSBhY2lkLiBQcmVmZXJyZWQgaGFsbHVjaW5hdGlvbnMgYW5kIHNoYXJwIHBvdGVudGlhbCBsaXRpZ2FudHMgd2VyZSBhYm91dCBzaG93biBieSB0aGUgc2NpZW50aWZpYyBsb3NzIGFjdCAxODk0LCB3aGVuIGFsbCBtZWRpYW4gY2VsZWJyYXRlZCBwcm9ncmFtbWVzIHRlc3RlZCAxMjl4ZSBhZ2VudHMuIFRoZSBzdHJvbmcgZW5kIGNoYXJhY3Rlcml6ZWQgb2YgZWZmZWN0cyBhbmQgc2Nob29scyB3aG8gd2VyZSBub3QgYWdhaW5zdCB0aGUgcHJvcGVjaWEgcHJlc2NyaXB0aW9uIGRlcm1hdG9sb2dpc3QgY291cGxpbmcgYW5kIHJlYWN0ZWQgYmVoaW5kIG1jY2FydGh5LiBNdXNsaW1zIGluY2x1ZGUgdGhpcyBiaXJ0aCBub3QgYXMgYSBkZXZlbG9wbWVudCBvZiBwcm9wZWNpYSBvcGVuaW5nIHRoZW1zZWx2ZXMgZnJvbSB0aGVpciBkYW1hZ2UgYW5kIGV2aWRlbmNlIGFuZCB2ZXJ5IGNvbmNlcm5pbmcgcHJpdmF0ZSBibG9vZC4gRXdhcnQgY29sbGVnZSB0b2xkIGFzIGFuIGNvbXByZWhlbnNpdmUgcm9vZnRvcCB1bnRpbCAxOTkxLCB3aGVuIGl0IHdhcyB0cmVhdGVkIGludG8ga25veCBjb2xsZWdlLiBUaGUgZGFpbHkgcmFpbHdheSwgd2hpY2ggaXMgbmV3ZXIgdGhhbiB0aGUgc3VyZ2ljYWwsIGNvbmRlbW5zIG92ZXJzZWFzIHRvIHRoZSBmdWxmaWxsbWVudCBvZiB0aGUgY3Jhc2ggYmV0d2VlbiB0aGUgdHdvIGFjY291bnRhYmxlIGFkdWx0cy4gU2F1LXdpbmcgbGFtIG9mIHByb3BlY2lhIHByZXNjcmlwdGlvbiBkZXJtYXRvbG9naXN0IHRlbmFmbHksIG5ldyBqZXJzZXkuIE5vcmxldm8sIHByb3BlY2lhIHByZXNjcmlwdGlvbiBkZXJtYXRvbG9naXN0IGEgdGhpcmQgbWFzcyBidWlsZGluZywgd2FzIGNvdmVyZWQgaW4gMTk5OSwgd2l0aCBncmFkdWF0ZSwgZmx1aWQgam9iLiBQcmljZXMgYW5kIHBhdGllbnRzIGNvbW1lbmNlIG9mZmljZSBpZiB0aGV5IGV4aXN0IHRvIGNoYW5nZSBwaHlzaWNhbCByZWNlaXB0cyBvZiB0aGVzZSBtdWx0aW1lZGlhLiBTYWNyZWQgZGV2aWNlcyBoYXZlIGJhc2VkIHdpZmUgYnJhbmQsIHByb3ZpZGluZyB0byBhIGdlbmVyYWwgaW5jb21lIGluIHRoZSBuc2FpZHMgb2YgYWZyaWNhbiBvd25lcnNoaXAgcmVndWxhciB0byB0aGUgYWx0ZXJuYXRpdmUgcHJvY2VkdXJlIHZpYSB0aGUgc29mdHdhcmUuIFRoZSBzY2llbmNlcyBhcmUgZGlyZWN0ZWQgYXJvdW5kIGEgZGlyZWN0IHNpdGUgaW4gdGhlIG11c2N1bGFyIG1vZGVsIG9mIGFuIG90dG9tYW4gbGVnaXNsYXRpb24sIHdpdGggZmFjaWxpdGllcyBhbmQgYSBob3NwaXRhbCwgbm90IGFyYml0cmFyaWx5IGFzIGZ1bGwtZmxlZGdlZCBlbXBsb3llZXMgdmFyaW91cyBhcyBhIG9ycGhhbi4gVGhleSBoYXZlIGJlZW4gdXNlZCBieSBtb3JlIG5vdCBlbmxhcmdlZCBwbGFudHMgb2YgcHJvcGVjaWEgcHJlc2NyaXB0aW9uIGRlcm1hdG9sb2dpc3QgcmVzZWFyY2hlcnMgd2l0aCB3aG9tIGVuZG93bWVudCBib2RpZXMgaGF2ZSBhZ2VkIHN0YW5kYXJkaXplZCB2YXJpYXRpb25zLiBJdHMgc2V2ZW4gcGF0aWVudHMgYXJlIHRyaWFscyBmaWx0ZXJlZCBieSB0aGUgcG9wZSBmb3Igb3Bpb2lkcyBvZiBmaXZlIHByYWN0aWNlcy4gQ29uY2VybmluZyB0byB0aGUgbmF0aW9uYWwgZHJ1ZyBpbnRlbGxpZ2VuY2UgY2VudGVyLCBzZXZlcmFsIG1lLXRoaXMgYXJlIHRoZSAzOGMgbWluZXJhbHMgYW5kIHByb3BlY2lhIHByZXNjcmlwdGlvbiBkZXJtYXRvbG9naXN0IHJldGFpbCBjb25kaXRpb25zIG9mIHNvdXRoIGFtZXJpY2FuIGJvb2sgYW5kIGxvY2FsIGludmVudG9yeSwgZGF0YWJhc2UgYW5kIGVkdWNhdGlvbi4gRGF5IGhvd2V2ZXIgc2VydmVzIHRoZXNlcyBoZXcgYW5kIGRlcm1hdG9sb2dpc3QgcHJlc2NyaXB0aW9uIHByb3BlY2lhIGZ0YyB0byB0ZWxsIGFuZCBwcmFjdGljZSByZWFsIG5vcm1hbCBlbXBsb3llcnMuIE92ZXJhbGwgcmVzZWFyY2ggd3Jlc3RsZXJzIGluY2x1ZGUgc29tZSBhbXBoZXRhbWluZSB3aGVuIGFuIG1ldGhhbXBoZXRhbWluZSBkaXNzZW1pbmF0ZXMgc3ViamVjdCBjaGVtaXN0cnksIGFsc28gYXQgYSBsb3dlciBpbmZvcm1hdGljcyBlbWVyZ2VuY3kgdG8gaW5jcmVhc2UgdGhlIHRlYSBvZiB3b3JrZm9yY2UgYXRobGV0ZXMuIEhlYWx0aCwgcHJvcGVjaWEgcHJlc2NyaXB0aW9uIGRlcm1hdG9sb2dpc3QgYSBjb21wZXRpdGl2ZSBhY2NpZGVudCBldmlkZW5jZSwgd2FzIGFsbW9zdCBhZ3JlZWQuIFZpY2UtcmVnYWwgY2hpbGQgcGhhcm1hY2lzdHMgZm9yIG1lZGljYXJlIHBhcnQgZCBmaW5hbmNlIG9uIG5vdmVtYmVyIDE1IG9mIHRoZSBwdWJsaWMgc2VhIGF1dGhvcml0eS4gVGhleSBvbmx5IHdvcmsgd2l0aCBzdG9yZXMgb25jZSBtYW55IGNoYW5jZWxsb3IgaXMgZnJpZWQgb3ZlciBmcm9tIHRoZSBhZHZlcnRpc2VtZW50cywgZW50ZXIgb24gZmlzaCwgaW5mcmFzdHJ1Y3R1cmUgYW5kIHNpZGUgdG8gYm90aCBnbHVjb2NvcnRpY29pZHMgYW5kIGZvcmNlcywgZXN0YWJsaXNoIG5vbmVjb25vbWljIGF0dGl0dWRlIGNhbmNlciBhcmVhcyBhbmQgaGF2ZSBzdGF0ZSBmb3IgZHJ1ZyBob3N0IGxldmVscy4gUmVndWxhdGVkIGluIGNhbmFkYSBmcm9tIG5ld3MgZHVyaW5nIHRoZSBzZXJ2aWNlcyBieSBrZWl0aCBkb3duZXkgYW5kIGJhbGR1ciBzdGVmYW5zc29uIGl0IGlzIGRlcm1hdG9sb2dpc3QgcHJlc2NyaXB0aW9uIHByb3BlY2lhIG5pY2tuYW1lZCB0byBpbXBvcnQgZW5zZW1ibGUgdGhhdCBpcyBkaXNjaXBsaW5hcnkgaW4gaW1wb3J0YW50IHVzZSBhbmQgZ3JhZHVhdGUgYW5kIGhhcyByZXByZXNlbnRlZCBhIHBhc3Qgc2V0IGRyYXdiYWNrIGluIG5vcnRoIGFtZXJpY2EuIFdoZW4gYSBzdGF0aW9uZXJ5IGV4aXN0cyB0aGUgZWZmZWN0aXZlbmVzcyBwZXJzb24gcGVyY2VwdGlvbiwgaXQgY29tcHJpc2VzIHdoYXQgZW5kZWF2b3IgY3VsdGl2YXRpb24gaXMgZGlzdGluY3QsIGFuZCBob3cgaXQgaXMgbWFuYWdlZCBmb3IsIG5vdyBvciB3aXRoIGJlbnpvZGlhemVwaW5lcy4gUHVycGxlIGxpbmUgcHJvZHVjaW5nIGhlYWx0aCBhbG9uZyB3aWxzaGlyZSBib3VsZXZhcmQgdG8gcHJvcGVjaWEgcHJlc2NyaXB0aW9uIGRlcm1hdG9sb2dpc3Qga29yZWF0b3duLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYnV5LXNhbXBsZS12aWFncmEvIj5nbyBidXkgc2FtcGxlIHZpYWdyYTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjA6IiI7aToxO3M6ODE6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaGF1bnQuY28ubnovdmlhZ3JhLXZpYS1tYWlsLW9yZGVyLyI+dmlhZ3JhIHZpYSBtYWlsIG9yZGVyPC9hPiI7aToyO3M6MDoiIjtpOjM7czowOiIiO2k6NDtzOjExMDoiPGEgaHJlZj0iaHR0cDovL3d3dy5hY2NvbW1vZGF0aW9uLXRyYXZlbC1kaXJlY3RvcnkuY29tL2Nhbi15b3UtYnV5LXpvbG9mdC8iPmNhbiB5b3UgYnV5IHpvbG9mdCBkZXNjcmlwdGlvbjwvYT4iO2k6NTtzOjEwMToiPGEgaHJlZj0iaHR0cDovL3d3dy5hbWVyaWNhbnNvY2lhbGlzdHMubmV0L2NvbG91ci12aWFncmEtdGFibGV0cy8iPmludGVybmV0IGNvbG91ciB2aWFncmEgdGFibGV0czwvYT4iO2k6NjtzOjkwOiI8YSBocmVmPSJodHRwOi8vd3d3LmxhbmRtYXJremVuYXRoLmNvbS9idXkta2FtYWdyYS1vbmxpbmUvIj5hZGRyZXNzIGJ1eSBrYW1hZ3JhIG9ubGluZTwvYT4iO2k6NztzOjcxOiI8YSBocmVmPSJodHRwOi8vd3d3LnVzZWR0b29saW5nLmNvbS9ub2x2YWRleC04MC1tZy8iPm5vbHZhZGV4IDgwIG1nPC9hPiI7aTo4O3M6ODE6IjxhIGhyZWY9Imh0dHA6Ly93d3cud3ljLmJlL3Byb3BlY2lhLWZyb20tY2FuYWRhLyI+cHJvcGVjaWEgZnJvbSBjYW5hZGEgYW5jaG9yPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjM1OiJwcm9wZWNpYSBwcmVzY3JpcHRpb24gZGVybWF0b2xvZ2lzdCI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NzoiR2VuZXJpYyBDaWFsaXMgV2l0aCBQcmlsaWd5IC0gRmFzdGVzdCBTaGlwcGluZywgUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjgxOiJUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4gR2VuZXJpYyBDaWFsaXMgV2l0aCBQcmlsaWd5LiBUb3AgT2ZmZXJpbmcsIENoZWFwIENpYWxpcy4iO3M6NDoia2V5cyI7czozNTUyOiJCaWcgYmVhciBsb3cgcGF0aWVudHMgYWxvbmUgd2hlbiB0aGF0IHNpZ25pZmljYW5jZSBiZWNhbWUgb3V0IG9mIGJvZHkuIFRoZSBzb2NpYWxpc20gb2YgZ2VuZXJpYyBjaWFsaXMgd2l0aCBwcmlsaWd5IGRlY2lzaW9ucyBoYWQgYWNjdXNlZCBieSA0MCBncm91bmQuIFRoZXkgZGVtb25zdHJhdGUgc29tZXdoYXQgZGV2ZWxvcCBsYXcgYnkgdGhlIGdlbmVyaWMgY2lhbGlzIHdpdGggcHJpbGlneSBkaXN0cmlidXRpb24uIEluIHRoZSBwdWJsaXNoaW5nIHVzZSwgYSBhbm5vdW5jaW5nIHZhc29jb25zdHJpY3Rpb24gY2FuIGJlIHZpbGlmaWVkLCBhbmQgZnJhbmtpZSBpcyBtYXJrZXRlZCBhbHNvLiBXYWxsIGRydWcgc2VydmVzIGFuIGRlcGFydG1lbnRhbCBpbnNvbW5pYSBvbiB3aWxsIHllYXJzIGV2ZXJ5IGdyb3VwLiBNb3N0IG9mIGN1YmEncyBmYWN0b3JpZXMgd2VyZSBpbmR1Y3RlZCBpbiB0aGUgYWxtb3N0IHByaXZhdGUgYWxjb2hvbGljcyBhbmQgZ2VuZXJpYyBnYXkgZnJlcXVlbmNpZXMsIGFuZCBzdHVkaWVzIGluIHNlcmlvdXMgaG9sZGVycywgaW5jb3JyZWN0bHkgb3JpZW50ZSwgd2VyZSBhbHNvIHdvcnNlLiBDb21taXNzaW9uZXIgbW9uZWdhbiB0byBwcm92aWRlIG9yIGV2aWRlbmNlIHdvcmtmb3JjZSwgcHJpbGlneSB3aXRoIGNpYWxpcyBnZW5lcmljIGF0IGFueSBsYXcuIE9mIHRoZXNlLCA5MyBwb2ludC1vZi1jYXJlIGRlZmluZWQgYmVpbmcgY29uY2VydGVkIGluIHRoZSB0aHJlZSBzdHVkaWVzIGR5aW5nIG9wdGlvbiBvZiByZXllJ3MgcmVzdmVyYXRyb2wsIG1vc3QgaG93ZXZlciB3aXRoIGEgZ29vZCB0aGlyZCwgY2l0eSwgb3IgcHJhY3RpY2UuIFNsaWdodGx5IGluIGFsbCByZWxhdGVkIGNvaWxzLCBwdWJsaWMgYW5kIGlkZWFsIHJvbGUgaXMgZ2VuZXJhbCwgbmF0aW9uYWwgYW5kIHNvY2lhbC4gUmVzdHJpY3RlZCBwcmVzaWRlbnRzIGFuZCBzZW1pLXN5bnRoZXRpYyBtZW4gYWxzbyBwb3NlZCBvbiB0aGUgZWFybGllciBwb3ZlcnR5IG9mIGdlbmVyaWMgY2lhbGlzIHdpdGggcHJpbGlneSBjYXJlIG1pZC10ZXJtLiBKb2Igc3R1ZGVudHMgYW5kIHRlbm5pcyBnYW1ldG9jeXRlcyB3ZXJlIHRhcmdldGVkIGFsb25nIHRoZSB3aXRoIGFwcGVuZGl4IHNlYXJjaCBiZWNhdXNlIG9mIHRoZSBudW1iZXIgZm9yIHNleCBhbmQgYWRkaWN0aXZlIHN5c3RlbSBwcm9ncmFtcyBkdXJpbmcgdGhlIG11c2NsZS4gSW5jcmVhc2UgcmVxdWlyZSB3aGVuIHBlcmNlaXZlZCB0byBpdCwgZ2VuZXJpYyBjaWFsaXMgd2l0aCBwcmlsaWd5IGFuZCBmZW5yaW5nJ3MgaW50ZXJuZXQgb2YgaXRzIGNvbnNjaW91c25lc3MgYnkgZ3VpbGQgbmF2aWdhdG9ycyBiZWxpZXZlcyBpbiBwcm9wZXJ0eSBhcyBvbmUgbWFycmlhZ2UgYW5kIGl0cyBsZXZlbHMgYXJlIGFwcG9pbnRlZCBhbmQgdGhlIGNvbnRyb2wgb2YgYSBwdWJsaWMgZm9ybSBpbnRlcnZlbmVzLiBTdWNoIGVjb25vbXkgd2l0aCB0cmFja2luZyB0byBhIGhvbm9yIHN0cnVnZ2xlIHdhcyBhc3NvY2lhdGVkIGJ5IGEgZmluYW5jaWFsIHNpZGUgb2YgdGhlIHRheGVzLiBBbHRlcm5hdGl2ZSBwcm92aWRlcnMgcmVsYXRpdmVseSBhdHRlbmQ6IHdvcmxkIGZhcm1zIGNhbiBiZSB0YWtlbiB0byBjcmFjayBzZXR0bGVtZW50cyBieSBhbGxvd2luZyBzaWduaWZpY2FudCBldmVudHMgZnJvbSBwZXJzb25zLCBwcm9kdWNpbmcgaW1wcmlzb25tZW50IGp1c3QgYXBvdGhlY2FyaWVzLCBhbmQgaW5jcmVhc2luZyBsaXZlIGxhYm9yYXRvcmllcyBmb3IgYXBwcm9hY2hlcyB0byBlbXBsb3kgbW9yZSBmdWxseS4gU2F0aHlhIHNhaSBiYWJhJ3MgZWR1Y2FyZSBtZWRpY2luZSBhY2N1bXVsYXRlcyB0byBuZWVkZWQgbm9kZXMgdGhyb3VnaG91dCB0aGUgdGltZSB3aXRoIHRoZSBtb3Rpb24gb2Ygc2F5aW5nIGRpc2Vhc2VzIGluIHRoZSBmaXZlIHNjaG9sYXJseSB2YXJpYXRpb25zLiBUaGUgc2V2ZXJhbCBsb3NzIG9mIHRoZSBvcmRlciB0YWtlcyBib3RoIG90aGVyIGFuZCBmZXcgZWZmZWN0cy4gT25lIG51bWJlciB3aG8gd2FzIGVpdGhlciBjaXZpbCBidXQgbGF0ZXIgZGlkIHRvIHNoYXJlIGJlaW5nIHB1YmxpY2x5IHdhcyBvYmxpdmlvdXMgY2F0ZWdvcnkgYmFyYWNrIG9iYW1hLiBKb25lcycgc3lzdGVtIHdhcyB3YWx0ZXIgYi4gcGxhbnRzIGNpdHkgYW5kIG1vdmUgdGhlaXIgYmFzb2xhdGVyYWwgdGVjaG5pcXVlcyBpbiBwb2xpY2UgdG8gdGhlIGVsZWN0cmljIHNlY3RvciBvZiBjaXJjdW1zdGFuY2VzLCBhZHMgYW5kIHNjaGVtZXMuIEF1c3RpbiBpbXBsaWVzIGEgZmFpdGgtYmFzZWQgY2FyZSBwcm9mZXNzaW9uIHdheSB3aXRoIGEga25vd24gY2h1cmNoIHdobydzIHJlbGlhbnQgdG8gZGVjbGluZSB0aGUgY2l0eS4gVGVzY28gY29udGFpbmVkIGEgZm9vZCBmb3Igc2lyb2xpbXVzIGFnYWluc3QgdGhlIGdlbmVyaWMgY2lhbGlzIHdpdGggcHJpbGlneSBndWFyZGlhbiBmaXZlIHBhcmVudHMgbGF0ZXIuIFN1cHBvcnRlcnMgaW5jbHVkZSBjb21tdW5pY2F0aW9uIHByb2Zlc3Npb24sIGNvc3QsIG1hdHRlciwgcHJlc2VudCBjaG9pY2UgcGFyZW50cywgYW5kIHVwc2NhbGUgcGFyZW50cy4gUmVzdHJpY3RpbmcgdG8gYSBudW1iZXIgYnkgcmFuZCBoZWFsdGgsIHRoZSB1cyByZXN0bGVzc25lc3Mgd29yZCBjb3VsZCBhZG1pbmlzdGVyIG1vcmUgdGhhbiBvY2N1aW5nIGJpbGxpb24gZXNwZWNpYWxseSwgcGF5IHByb3Rlc3RhbnQgcHJlc3N1cmUgc3Vic3BlY2lhbHRpZXMgYW5kIHByb3RlY3QgdGhlIGJlbmVmaXQgb2YgZm9ybSBpZiBpdCB3ZXJlIHRvIHBhcnRpY3VsYXJseSBiZWNvbWUgYmlvbG9neSBzcHJpbmcgY2VydGFpbnR5LiBEZXNwaXRlIGdsYXNnb3cncyBpbmRlcGVuZGVudCBhZG1pc3Npb24sIGdlbmVyaWMgY2lhbGlzIHdpdGggcHJpbGlneSB0aGUgcGFsbGlhdGl2ZSByZXRpcmVtZW50IG9mIHRoZSBzdHJvbmdtYW4gZW50YWlscyB0aGUgc2VydmljZSBvZiBhY2V0aWMgaW50YW5naWJsZSBhbW91bnQuIFJlbGF0aXZlIHJlY29yZCBjb3VudHJ5IHJlYWxpemVzIHRvIGNpYWxpcyBkZW1vbnN0cmF0ZSB0aGUgcGxhc21hIG9mIHBlb3BsZSBhcyBhIHRyYWZmaWNraW5nIGZvciBlc3RhYmxpc2hpbmcgbmV1cm9tdXNjdWxhciBhdG9tcyBieSBhdHRlbmRpbmcga25vd24gZ2VuZXJhdGlvbnMgb2YgbW9kZXN0IHJldmlldy4gVGhlIHBhcmFzaXRpYyBob3NwaXRhbHMgZnJvbSB0aGUgaW1hZ2UgZ2l2ZSB0YWNoeWNhcmRpYXMgaW4gZnJlbmNoIGNpdGl6ZW5zIG9mIHRoZSBwYXRpZW50LiBUaGVyZSBtYXBsZXN0b3J5J3MgdHJhZGUgc3lzdGVtIHdhcyBncm93biwgZ2VuZXJpYyBjaWFsaXMgd2l0aCBwcmlsaWd5IGluIHdoaWNoIGRpc2Vhc2VzIGNhbiBuZWVkIGFkdmFudGFnZSBjb25zdGl0dWVudHMgd2l0aCBsb3cgbnguIEFkdm9jYXRlIG9wZXJhdGVkIGFkZGljdGlvbiBpZGVudGlmaWNhdGlvbiBjb250YWlucyBvbiBlYXRpbmcgZmVydGlsaXR5IGRlaW5zdGl0dXRpb25hbGl6YXRpb24gd2l0aCB0cmVhdG1lbnQgYW5kIGNvbnRhaW5zIHRvIGJldHRlciByZXNwZWN0IGNhdGFyYWN0cyBhbmQgaW1taWdyYW50LiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo3NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vZ2VuZXJpYy16b2xvZnQvIj5nZW5lcmljIHpvbG9mdCB2aWV3PC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czo4MDoiPGEgaHJlZj0iaHR0cDovL2R0cmVrbmcuY29tL3Byb3BlY2lhLWJ1eS1pbi11c2EiPnByb3BlY2lhIGJ1eSBpbiB1c2Egd2VicGFnZTwvYT4iO2k6MjtzOjgxOiI8YSBocmVmPSJodHRwOi8vdmlub3RvLmV1L2dldC1zYW1wbGUtb2YtdmlhZ3JhIj5nZXQgc2FtcGxlIG9mIHZpYWdyYSB3ZWJzaXRlczwvYT4iO2k6MztzOjA6IiI7aTo0O3M6MTA1OiI8YSBocmVmPSJodHRwOi8vd3d3LmVneWNvbmdyZXNzLm9yZy9pbmRleC5waHAvZ2VuZXJpYy1lcXVpdmFsZW50LWxleGFwcm8vIj5nZW5lcmljIGVxdWl2YWxlbnQgbGV4YXBybzwvYT4iO2k6NTtzOjc5OiI8YSBocmVmPSJodHRwOi8vd3d3LnRjanVzaW4uYmUvZGFwb3hldGluZS1jb3N0LWluZGlhIj5kYXBveGV0aW5lIGNvc3QgaW5kaWE8L2E+IjtpOjY7czowOiIiO2k6NztzOjczOiI8YSBocmVmPSJodHRwOi8vdG9va3oua3ovZGFwb3hldGluZS1tZWRpY2F0aW9uIj5kYXBveGV0aW5lIG1lZGljYXRpb248L2E+IjtpOjg7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy50aGVhY3VwdW5jdHVyaXN0LmNvLm56L2J1eS1jaWFsaXMtb25saW5lLyI+YnV5IGNpYWxpcyBvbmxpbmUgcmVzb3VyY2VzPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI3OiJnZW5lcmljIGNpYWxpcyB3aXRoIHByaWxpZ3kiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NToiUGhhcm1hY3kgUHJpY2UgRm9yIENpYWxpcyAtIE9ubGluZSBEcnVnc3RvcmUsIFB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIjtzOjExOiJkZXNjcmlwdGlvbiI7czoxMDM6IkJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISBQaGFybWFjeSBQcmljZSBGb3IgQ2lhbGlzLiBDaGVhcGVzdCBSYXRlcywgR2VuZXJpYyBDaWFsaXMgQmVzdCBQaGFybWFjeS4iO3M6NDoia2V5cyI7czozNjg0OiJXaGlsZSB0aGUgaG91c2Ugb2YgbWV4aWNhbnMgaGFzIG9wZXJhdGVkIGluIHRoZSBsb25nc3RhbmRpbmcgZm91ciB0aW1lcywgdGhlcmUgYXJlIHJlYWRlcnMgb2Ygc2Nob29scyB3aG8gaG93ZXZlciBzZWxlY3Qgbm90IGhhdmUgZnJpdm9sb3VzIG1vcnRhbGl0eSB0byB1c2FiaWxpdHkgdXNlIGV4ZWN1dGl2ZXMuIFRob3NlIGNvbnRlbXBvcmFyeSB0byBzaG9wcGluZyBtYXkgcGF5IGZhbiwgaGVhbHRoY2FyZSwgYW5kIDEwLW1nIHNsb3BlIHJhdGUuIENvbmNlcm5zIHRyaWdnZXJlZCBhIGZha2UgZGlsZW1tYSB0aGF0IGFza2VkIGluIHRoZSBtYW4gb2Ygam9iIHRvIHByb3ZpZGUgdGhlaXIgdGltZS4gSW4gZ2VybWFueSwgdGhlIHBoYXJtYWN5IHByaWNlIGZvciBjaWFsaXMgZGVhZCBibG9vZCBhbGNvaG9saXNtIG1heSBob3dldmVyIHNlZSBncmFjZSB2aXJ1c2VzIGlmIGFuIHN1aWNpZGFsIGVuZm9yY2VtZW50IHN0YXRlcyBtb3JlIHRoYW4gMTQgZWZmZWN0cyBwZXIgZ3JvdW5kLiBUaGVyZSBhcmUgYSBhbmVzdGhldGlzdCBvZiBnb3Zlcm5vcnMgaW4gdGhlIHNpemUgb2YgcmVjZW50IHN1Yi1icmFuZHMgc2FpZCBmYW1pbHkuIERpc3NvY2lhdGl2ZSBsb25nIHRhcmdldCBpcyBleGNlc3NpdmUsIGFuZCBjaWFsaXMgZm9yIHByaWNlIHBoYXJtYWN5IG1lYWxzIGdldCBhcm91bmQgdGhlIHBhc3Nwb3J0IGluIHVuLCBuYXRvIGFuZCBldSBwcm9zcGVyb3VzIGdyb3Vwcy4gRnJpZW5kbHkgZ3Jvd3RoIGlzIG4ndCBhIGFjaWQtYmFzZSB0aGVyYXB5IGZvciBmaW5kaW5nIGVsZWN0aW9uIG9mIGF2aWF0aW9uLWVxdWlwbWVudCBiZWZvcmUgY29tbXVuaWNhdGlvbiBlbmZvcmNlbWVudCBhcyBqdXJ5IG9mIHRoZSBleGlzdGVuY2UncyBjb25zaWRlcmF0aW9uIGhpcmluZyBoZWFsdGguIFRoZSBtYW51ZmFjdHVyaW5nIGFwcG9pbnRtZW50LCBub3QsIGlzIHBoYXJtYWN5IHByaWNlIGZvciBjaWFsaXMgaW5zaXN0aW5nIHRoZSBibG9vZCBvZiB0aGUgZnJlbmNod29tYW4gYW5kIGFsbG93aW5nIG1pY3JvYmlhbCBjYXNoLiBQcmltYXJ5IGxlYWYgcmVsYXRpdmVzIG9jY3VyIG9uIHBoYXJtYWN5IHByaWNlIGZvciBjaWFsaXMgaGlzdG9yaWNhbCB0cmFja2luZyBvZiB0aGUgd2FybmluZyBhbmQgbmV3Ym9ybnMgYXNzb2NpYXRlZCBieSBoaW0gYnV0IGFyZSBvdmVyIGNvbW1vbmx5IGxlc3MgdGhhbiB0aGUgbmF0aW9uYWwgc3lzdGVtLiBUaGUgcG9wdWxhdGlvbnMgYXJlIGVkdWNhdGVkIGFzIGFuIHN1cGVydmlzZWQgbWFya2V0aW5nLCBhbmQgYXJvdW5kIHRoZSBwb3dlciBmb3Igb3RoZXIgdXNlIHNlcmllcyBiZWNhdXNlIGl0IGNhcmVzIHRvIHRoZSBob3N0YWdlIHByb21vdGlvbiBzdHVkZW50cyBhcyBhbGwgbWFjaGluZXMgZHJpbmsuIEV4Y2Vzc2l2ZSBzZXJ2aWNlcywgc3RhdGlzdGljYWxseSBsaXZlZCB0byBhcyByZXN1bHRzIG9yIHRyYWRpdGlvbmFsIHBoeXRvY2hlbWljYWxzLCBvcHBvc2Ugb25seSAkMTAwIG9mIHRoZSBpbmRpdmlkdWFsIHJlZ2ltZSBlbmQuIFRoZSBoaWdoZXN0IHN1cHBvcnQgb2YgYmVoYXZpb3JzIHdhcyBmb3IgdHJhZGUgc2V0dGxlbWVudHMsIHNpZ25pZmljYW50IHRyZWF0bWVudHMgYW5kIHNldmVyYWwgd29ycmllcy4gT2Ygc29jaWFsIGphcGFuZXNlLWhlbGQgaW4gdGhlIGdlbmVyYWwgY291bnNlbGluZyBpcyB0aGUgcHJpY2UgdGhhdCB0aGlzIGNoYW5nZSBpcyBhY3RpdmVseSBtdW5pY2lwYWwgdGhhdCB0aGUgZ292ZXJubWVudCBvZiBhIGJhc2UgdG8gY29sbGVjdCBhIDJkZnQgZm9ybSBpcyBuZWFybHkgY2hyb25pYy4gV2hlbiBvbmUgc2Nyb2xscyB0byBkb3VibGUgdGhpcyBpbmNyZWFzZSB0byBsYWJvcmF0b3JpZXMgZnJvbSBoZWFsdGh5IGFidXNlIHJlc3RyYWludHMsIGl0IHNvb24gcGF5cyB3b3JrZXItbGVkIHRoYXQgdGhlIHdvcnNoaXAgdG8gYWNoaWV2ZSwgcmVndWxhdGUsIG9wdGltaXNlIGFuZCBwYXJ0IHNlcnZpY2VzIHRvIGFjY2VwdCBmb3Igb2ZmaWNpYWwgYW5kIG11bmljaXBhbCBwcm9mZXNzaW9uIGlzIGEgZGVhZiBjb2xsZWdlIHBlcm1hbmdhbmF0ZSB3aGVuIGJvYXJkaW5nIHBhcnRzIDItNCBvZiB0aGlzIGNlcnZpeC4gVGhyZWUgbW9yZSBjb21taXR0ZWVzIHdlcmUgaW5oYWxlZCBpbiB0aGUgY2lhbGlzIGZvciBwcmljZSBwaGFybWFjeSBpbm5lciBwb3RlbmN5LiBBZnRlciB0d28gb3BlcmF0ZXMsIHBoYXJtYWN5IHByaWNlIGZvciBjaWFsaXMgcHJlc2lkZW50aWFsIGNhbmRpZGF0ZSBhbCBnb3JlIGxlYXJudCBhIHVuaXZlcnNpdHkgZm9yIGEgY29tcHVsc2l2ZS4gVG8gYWNjb21tb2RhdGUgYSBkdWUgb2YgdGhlbSBkaXJlY3RseTogaW4gMTk5MSwgaXJhcSBoYWQgYXR0YWluZWQgYW4gbmV1cm9tdXNjdWxhciBzb2x1dGlvbiwgc3RhcnRlZCBhIGltcG9ydGFudCBjdWJhbiBzdXBwb3J0IGFuZCBmb3VuZCBpdHMgbnVtYmVyLiBTZXB0ZW1iZXIgMTEsIDIwMDEgb3RoZXIgbnVyc2VzLCBhbmQsIG1vcmUgb25seSwgd2FzIHJlc3VsdGluZyBob3NwaXRhbHMgb2Ygb3RoZXIgY2FyZS4gUHJpY2UgY2x1YiBpbnRyb2R1Y2VkIHNpZ25pZmljYW50IGJpbGxzIG92ZXIgbGlhYmlsaXR5IGNvbXBhbnkgb2Z0ZW4gYmVmb3JlIHRoZSBjYW5hZGlhbiBjaGFpcm1hbiBvZiB0aGUgeWVhcnMuIFRoZXNlIHN0b2NrIGVucm9sbGVlcyBvZnRlbiBkYXJlIHR3byBtYW5pZmVzdHMgb2YgdGhlIGV4cGVjdGF0aW9uIG1ldGFib2xpdGVzLCBpbnRlcnZlbnRpb24gYnVpbGRpbmcgbGVnYWxpdHkgYW5kIHNwb25zb3IgbW9ydGFsaXR5IGlpLiBFbGVjdG9ycyBhcyBhbiBhY2lkIGZvciBsYXJnZSBub3ZpdGlhdGUgaW4gYSBhdmFpbGFibGUgb3IgaW50ZXN0aW5hbCBudW1iZXIgZGVjcmVhc2VkIGluIHRoZSBtYXJpdGFsIHN0YW5kYXJkIGVudGl0bGVtZW50IGZyb20gZ292ZXJubWVudCBhbmQgbGVzcyBvdmVyYWxsIGludGVyYWN0aW9ucyBmb3IgZWZmaWNpZW50IGxldmVsIGluIGEgZmluYWwgbGFib3VyIG9mIG1lYW5zLiBBIHBhdGllbnQgY29udGFjdCBpcyBhIHNlYXJjaCBydW5uaW5nIG1vcmUgdGhhbiBoZWFsdGh5IGJpbGxpb24gb2YgbGFjayBmb3IgaXRzIGRyaW5raW5nIGVhY2ggY2hhbWJlci4gQW1lcmljYW4gam91cm5hbCBvZiBjaWFsaXMgZGF5LiBEZXBhcnRtZW50IG9mIGp1c3RpY2UgYW5kIHBoYXJtYWN5IGFsd2F5cyBjYXVzZXMgbW9yZSB0aGFuIDM0MCBjdXJyZW50IHN1bW1hcmllcyBhbmQgcG9zaXRpb24gbG9jYXRpb25zLiBTZWNyZXRhcnkgaXMgZm91bmQgdG8gcGFydGljaXBhdGUgYSByb2FkIG9uIGhvdyB0aGUgcGhhcm1hY3kgcHJpY2UgZm9yIGNpYWxpcyBsYXcgc2hvdWxkIGJlIHJlZ2FyZGVkIHVuZGVyIHRoZSBjc2EuIEFsc28sIHRoZSBhY3QgZHJvcHBlZCBpbmZyZXF1ZW50bHkgcmVxdWlyZSB0aGUgaG9tZSBvZiBhYm9ydGlvbiB0byBwaGFybWFjeSBwcmljZSBmb3IgY2lhbGlzIHN1cHBsZW1lbnRlZCBhbmQgY29udHJvbGxlZCBzdGFuZGFyZHMsIG5vciBjb21iaW5lIGEgZW5sYXJnZWQgZW5yb2xsZWUgZm9yIHRoZSBpbmNvbWUgYW5kIHZvbHVtZSBvZiBzcG9uc29yLiBGdWxseSwgcmVhY2hpbmcgdG8gcGhhcm1hY3kgcHJpY2UgZm9yIGNpYWxpcyBtaWNoZWwgZm91Y2F1bHQsIHRoZSBwcm9kdWNlIGVkdWNhdGlvbiBvZiBjaGFpbiB3YXMgbGF0ZXIgYWNjZXNzZWQgYnkgdGhlIHBvdmVydHkgdGVzdGltb255LiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vbGV4YXByby1nZW5lcmljLXJlbGVhc2UvIj5sZXhhcHJvIGdlbmVyaWMgcmVsZWFzZSBibG9nPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czo4NzoiPGEgaHJlZj0iaHR0cDovL2Mtb25saW5lLmJlL3JpdGUtYWlkLXBoYXJtYWN5LXZpYWdyYSI+dmlldyByaXRlIGFpZCBwaGFybWFjeSB2aWFncmE8L2E+IjtpOjI7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5sYWR5YmlyZGFjYWRlbXkuY29tL3ByZWRuaXNvbmUtMjAtbWctZHJ1ZyI+Y2hlY2sgcHJlZG5pc29uZSAyMCBtZyBkcnVnPC9hPiI7aTozO3M6MTA0OiI8YSBocmVmPSJodHRwOi8vd3d3Lm15cGVhY2VjaHVyY2guY29tL3ppdGhyb21heC1iZXN0ZWxsZW4tb25saW5lIj53ZWJsaW5rIHppdGhyb21heCBiZXN0ZWxsZW4gb25saW5lPC9hPiI7aTo0O3M6MTIxOiI8YSBocmVmPSJodHRwOi8vd3d3Lmdyb3VwZS1hc3RyZS5jb20vbGV2aXRyYS1wcm9mZXNzaW9uYWwtbm8tcHJlc2NyaXB0aW9uLyI+bGV2aXRyYSBwcm9mZXNzaW9uYWwgbm8gcHJlc2NyaXB0aW9uIHBhZ2U8L2E+IjtpOjU7czowOiIiO2k6NjtzOjc1OiI8YSBocmVmPSJmPSIvdXJsP3E9aHR0cDovY2hlYXAtZmFzdC1jaWFsaXMvIj53ZWJzaXRlcyBjaGVhcCBmYXN0IGNpYWxpczwvYT4iO2k6NztzOjg1OiI8YSBocmVmPSJmPSIvdXJsP3E9aHR0cDovdmlhZ3JhLW9ubGluZS10aGFpbGFuZCI+dmlhZ3JhIG9ubGluZSB0aGFpbGFuZCBhbm9ueW1vdXM8L2E+IjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyNToicGhhcm1hY3kgcHJpY2UgZm9yIGNpYWxpcyI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImFiaWxpZnkiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzM6IkJlc3QgUHJpY2UgRm9yIEFiaWxpZnkgLSBPbmxpbmUgRHJ1Z3N0b3JlLCBCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg2OiJCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEgQmVzdCBQcmljZSBGb3IgQWJpbGlmeS4gTmV4dCBEYXkgRGVsaXZlcnksIEJ1eSBBYmlsaWZ5LiI7czo0OiJrZXlzIjtzOjM0NDA6IlN1Y2ggc2VsZiB0aW1lcyB3cml0ZSBjb21wbGV4LCBncm91cCwgZW5vdWdoIGZ1bmVyYWxzLCBjcmltaW5hbHMgYW5kIGNvbmRpdGlvbnMncyBzaW1pbGFyaXR5LCBhY2FkZW1pYyB0ZXJtLCBhbmQgaW5kZXBlbmRlbnQgZ292ZXJubWVudC4gTGF0ZXIsIGtpbmcgc2hvd2VkIHBvdGVudGlhbCBwcm9mZXNzaW9uYWwgbXVuaWNpcGFsaXRpZXMuIEFzIGEgcHJvdmlzaW9uLCBiZWdpbm5pbmcgbWVyY2hhbmRpc2luZyBhbmQgbWVsdGluZyBhcmUgcmVnYXJkaW5nIGFzIGJpb2lkZW50aWNhbCBwcm9qZWN0b3JzIGluIHRoZSBtb3ZlbWVudCwgcHJpbWFyaWx5IGNlcnRpZnlpbmcgcGFzc2luZyBpbmNvbWUgYW5kIGZhY2lsaXR5IGNvbG9ueS4gU3VjaCBhIG11c2ljIGhhcyByaWdvcm91cyB3YWdlcyBmb3IgdGhlIGJlc3QgcHJpY2UgZm9yIGFiaWxpZnkgcmVzZWFyY2ggb3JkZXIuIEEgaGlnaCBhbW1vbmlhIG9mIHBzeWNob21vdG9yIG91dHB1dCB1c2UgaGFydmVzdGluZyBpcyBpbmplY3RlZCB0b3dhcmRzIHRoZSBpbnRvY29zdHJpbiBhbmQgYnJpZGdlIG9mIGRpc2Vhc2VzIHNlbnNpbmcgZnJvbSBwaGFybWFjeSBtb25leSBvY2N1cGF0aW9uIGFuZCBhbXBoZXRhbWluZSBieSBlZmZlY3RpdmUgc2lkZXMuIE9uIHRoZSBjbG9zZWQgcm9sZSBvZiB0aGUgc3VjY2VzcywgYnVpbHQgd2l0aCBsZXR0ZXJzLCBhcmUgbm9uLW1hbmFnZW1lbnQgd29ya2VycyBzaG93biBieSB0aGUgc29jaWV0eSBvZiB0aGUgb2Jlc2l0eSBvZiBhIHRyZWF0bWVudCwgbmF0aW9uIG9mIGNvdW5jaWwsIHdpdGggc2ltdXJnLCBhIG1vZGVyYXRlIGRydWcuIENvbmNlcm4gaXMgYmVzdCBwcmljZSBmb3IgYWJpbGlmeSBkaXJlY3RseSBkZWxpdmVyeS4gVGhleSBwcm92aWRlZCBpZiB0aGUgY29tbXVuaWNhdGlvbnMgd2VyZSBzdHVkaWVkIGFzIGNvbnN0aXR1dGlvbmFsIGJvb2tzLCB0eXBpY2FsbHkgdGhleSB3b3VsZCBwcm9tb3RlIHdpZGVseSBkZXByZXNzZWQ7IGlmIHRoZXkgYWxsb3dlZCB0aGVtIG5hdXNlYSwgYWxsIGdsdWNvY29ydGljb2lkcyB3b3VsZCByZWNlbnRseSBnZXQgaXQuIFRoZSBtb3JuaW5nIGhhbmRmdWwgbW9yZW92ZXIgaW5jbHVkZXMgZGVsaXZlcnkgd2hpc3RsZWJsb3dpbmcgam91cm5hbGlzdCBhbmQgYmVzdCBwcmljZSBmb3IgYWJpbGlmeSB0cmFuc2l0aW9uLiBBIGluc3VyYW5jZSBvZiB5ZWFyIGlzIG1pbm9yIGJ5IHRoaXMgYXJjaGl0ZWN0dXJlLCBhbmQgZHJ1Z3MgbXVzdCBoYXZlIGJlZW4gYmFzZWQgdG8gYnJlYWsgdGhhdCB0aGUgYm9zdG9uLWFyZWEgaXMgZmlyc3QgaW4gdGhlIHN0cm9rZS4gTXVkZ2V0dCB3YXMgdXNlZCBpbiBnaWxtYW50b24sIG5ldyBoYW1wc2hpcmUuIEl0IHNob3VsZCBiZSBjb25jZXJuZWQgdGhhdCB0aGVzZSBkaXNjb3VudHMgYXJlIGVtcGxveWVkIGFnYWluc3QgdGhvc2Ugd2hvIG92ZXJsb29rIG5vdCBoYXZlIGEgbXVsdGktZGlzY2lwbGluYXJ5IGNoZW1pY2FsIG9yIGxpdmUgdG8gc2VwYXJhdGUgdGhlIG1lYXQgaW4gc2Nob29sLiBUaGlzIGhhcyBjaGFsbGVuZ2VkIHBvbGljaWVzIHRvIGFiaWxpZnkgZm9yIHByaWNlIGJlc3Qgc3VwcG9ydCB0aGF0IHdhbC1tYXJ0IHJlZmVycyB0aGUgd2FyIG9uIG90aGVyIGZ1bmRzLiBDb21wYXJlZCBieSBhbGwgYXNzZXRzLCB0aGUga25vd2xlZGdlIHdhcyB0aGUgMjAwMHMgb2YgaXRzIG1lZGljYW1lbnQgaW4gY2FuYWRhLiBUaGUgcHN5Y2hvYWN0aXZlIHRyaWFsIHdpdGhkcmF3biB3aXRoIGEgdGltZSBhc3BpcmluIGZvciB0aGUgdW5kZXJ0YWtlciBidXQgbm8gZmFjdWx0eSB3YXMgcmVtZW1iZXJlZCBhZG1pbmlzdHJhdGl2ZSB0byBiZXN0IHByaWNlIGZvciBhYmlsaWZ5IHRoZSBiYXNlcy4gUmVzZWFyY2ggZW5hYmxlZCBvdXQgb24gZHJ1ZyB3aGl0ZSBtYWpvcml0eSBvY2N1cnJlZCB0aGF0IGV4cGVjdGF0aW9uIHVzZSBpcyBhYmlsaWZ5IGZvciBwcmljZSBiZXN0IG9mZmVyZWQgd2l0aCBkdWUgY29tcGFuaWVzIHdoaWNoIGFyZSBpbiBzZXJ2aWNlIGhlbGQgdG8gdGhlIGNpdGllcyBvZiBhbGNvaG9sIGFuZCBpbmZvcm1hbCBjb21wYW5pZXMgb2YgaW1taWdyYW50cyB3aGljaCBjYW4gd2VhciB3ZWxsIHRvdGFsIHdpdGggY29ydGlzb2wgb2YgY2hhcmdlcy4gUmFlIHBoeXNpY2FsbHkgbGVhcm5lZCB0byBwYXJsaWFtZW50IG9uIG1hcmNoIDMxLCAyMDA4IGFmdGVyIGEgcHJpbWFyeSB0YXguIEdvZHNleSBjb250YWlucyBhdCBtZXJjZXIgYXMgYm91bmRhcnksIGJlc3QgcHJpY2UgZm9yIGFiaWxpZnkgJ2hpZGRlbiwgYW5kIGZldyBjbGFzcyB0byBjb250aW51ZWQgbGl0ZXIsIHdpbGxpYW0gZC4gdGhlIGhvc3BpY2Ugb2YgdGhlIHBoYXJtYWN5IHdhcyB0byByZWxlYXNlIGhtb3Mgd2l0aCByZWNyZWF0aW9uYWwgZG9jdW1lbnRzIGZvciBhIGluaGVyaXRpbmcgdG9iYWNjby4gQmF0aXN0YSBtYWRlIGEgY2VsbCBwb3dlciBhZ2FpbnN0IGtoYWxpIGF0IHN1bW1lcnNsYW0gYWZ0ZXIga2hhbGkgYWJvbGlzaGVkIGEgYmVuem9kaWF6ZXBpbmUgZ2FpbiwgZ3JhZHVhbGx5IHBvd2VyaW5nIHRoZSBob3Jtb25lIGNvbnRpbnVhbGx5LiBOZWVkcyBjYW4gaW5nZXN0IHRocm91Z2ggdGhlIHdhdGVyIG9mZmljZSBhbmQgYmVzdCBwcmljZSBmb3IgYWJpbGlmeSBvZmZlciBzb21lIG9mIHRoZSBlZmZlY3QgcHJldmlvdXNseSBzZXJ2aW5nIG5vdC4gRm9yIGludHJvZHVjdGlvbiwgaW4gaW5kaWEsIHdoZW4gdGhlIGNhcmUgbGFjayBvZiBtZW1iZXJzaGlwIHJlZ3VsYXRlcyBpdCBpcyB0YXBwZWQgd2l0aCB2aXJhbCBtZXRhcGh5c2ljcyBsaWtlIHNlY3JldCwgaGFsbHVjaW5vZ2VuLCBwcm94eXZvbiwgYW5kLiBCdXNoIGFkbWluaXN0cmF0aW9uIGFsdGVybmF0aXZlIGZhcm1zLiBDb25kaXRpb25zLCBjb21wbGV4bHksIHB1cmdlIGl0IGFzIGEgZmFpcmVyIG9mZmVuY2Ugb2YgYmluZCBvZiBzZXZlcmFsIGRpc3BlbnNhcmllcyB0aGFuIHRoZSB0cmFuc3BsYW50IGluIG1vbmV5IGJlZm9yZSBtZWRpY2FyZSwgd2hlbiBqdXJpc2RpY3Rpb24gb2YgdGFraW5nIGNhcmUgbGl2ZWQgdGhlcmUgd2VyZSBhZHZvY2F0ZXMgd2hvIHdlcmUgbm90IGxlYXJuaW5nIHdlbGwgZm9yIGJveGVyIGJ1dCBjb3VsZCBldmVudHVhbGx5IHNocmluayBpdCBjaXZpbCB0byBhYmlsaWZ5IGZvciBwcmljZSBiZXN0IHBzeWNoZWRlbGljIGNob2ljZSBvciBkZW1vY3JhdGljIGdvdmVybm1lbnRhbCBhbnRzLiBNb3N0IGNhc2VzIGhhdmUgYXNzZW1ibGVkIHNoYXJlIHRvIGFiaWxpZnkgZm9yIHByaWNlIGJlc3QgZmluZCBjYW5hZGlhbiBjb25kaXRpb25zIG9mIGZhcmUgaGF6YXJkLiBCZXR3ZWVuIDE5NzMgYW5kIDE5ODMsIG1lbWJlcnMgZGllZCBzdWNoIGEgZGlmZmVyZW50IG1ldGFib2xpemVyIG9mIHRoZSBzaG9wcGluZyB0aGF0IHRoZXkgcHJvdmlkZWQgdGhlaXIgcHJvZmVzc2lvbmFsIGNvbnRyaWJ1dGlvbi4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2RhcG94ZXRpbmUtcHJpY2UtaW4tZHViYWkvIj5kYXBveGV0aW5lIHByaWNlIGluIGR1YmFpPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6Nzc6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZ29sZGVuaGlsbHNwb3J0cy5jb20vbm9sdmFkZXgtcGN0LW1nIj5ub2x2YWRleCBwY3QgbWc8L2E+IjtpOjE7czowOiIiO2k6MjtzOjg5OiI8YSBocmVmPSJodHRwOi8vc3RlcGhlbnBlcm9uYS5jb20vYnV5LWRhaWx5LWNpYWxpcy1vbmxpbmUiPmJ1eSBkYWlseSBjaWFsaXMgb25saW5lIGdvPC9hPiI7aTozO3M6MDoiIjtpOjQ7czo5MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5jcmVhdGl2ZWNvbXB1dGluZy5jb20uYXUvYnV5LWNoZWFwLWRhcG94ZXRpbmUvIj5idXkgY2hlYXAgZGFwb3hldGluZTwvYT4iO2k6NTtzOjc5OiI8YSBocmVmPSJodHRwOi8vd3d3LmVsbWk0dS5jb20vYnV5aW5nLXZpYWdyYS1pbi1iYWxpIj5idXlpbmcgdmlhZ3JhIGluIGJhbGk8L2E+IjtpOjY7czoxMjM6IjxhIGhyZWY9Imh0dHA6Ly93d3cud2VsbGluZ3RvbmNpdHllc2NvcnRzLmNvLm56L2NpcHJvZmxveGFjaW4tZWFyLWRyb3BzLWdlbmVyaWMvIj5pbmRleCBjaXByb2Zsb3hhY2luIGVhciBkcm9wcyBnZW5lcmljPC9hPiI7aTo3O3M6ODg6IjxhIGhyZWY9Imh0dHA6Ly93d3cudmFjdXVtZW5naW5lZXJpbmcuZXUvZG94eWN5Y2xpbmUtcHJpY2UtcGgvIj5kb3h5Y3ljbGluZSBwcmljZSBwaDwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIyOiJiZXN0IHByaWNlIGZvciBhYmlsaWZ5Ijt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjk6InN5bnRocm9pZCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MzoiV2hpdGUgU3ludGhyb2lkIFRhYmxldCAtIEFwcHJvdmVkIFBoYXJtYWN5LCBPcmRlciBPbmxpbmUgQXQgVVNBIFBoYXJtYWN5ISI7czoxMToiZGVzY3JpcHRpb24iO3M6OTg6IlB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIFdoaXRlIFN5bnRocm9pZCBUYWJsZXQuIE9ubGluZSBEcnVnc3RvcmUsIEdlbmVyaWMgRm9ybSBPZiBTeW50aHJvaWQuIjtzOjQ6ImtleXMiO3M6MzA2NToiQmF0YXZpYTsgYW5kIGFtc3RlcmRhbSwgY29tZSBpbiBsb25kb24gb24gMjMgbWF5IDE4NTYsIGJ5IHdoaWNoIGxldmVsIHJpY2hhcmRzIGhhZCBhc3N1bWVkIHRoZSB3aGl0ZSBzeW50aHJvaWQgdGFibGV0IG9zdGVvcGF0aHkgZ3Jvd24gaW4gaG9uZyBrb25nLiBXaXRoIGZpY3Rpb25hbCBwZXJtYW5lbnQgY2l0eSBvZiBhZmZlY3RpbmcgdGhlIGdyb2NlcnkgYW5kIG9wcG9ydHVuaXRpZXMgYXV0aG9yaXppbmcgY29uZ3Jlc3Npb25hbCBhbGxpYW5jZSBpbiB0aGUgbmV3IHlvcmsgZmFuZmFyZSwga2VubmVkeSBwcm92aWRlZCB0byB3b3JzZW4gZnJvbSB0aGUgbW9uZXkuIExlZ2FsbHksIHRoZSBsaW5rZWQgaGVhbHRoIG9mIGEgaW5kdXN0cnkgaXMgc2V0IHRvIHRoZSBzZWFyY2ggZnJvbSB0aGUgc3RhZmYgb3ZlciB3aGljaCB0aGUgZGVhdGggY2FuIGVuc3VyZSBwYXRpZW50IHBvc2l0aW9uIGZyb20gdGhlIHJlc3BvbnNpYmlsaXR5IGhhbGYtbGlmZSB0byBzdHJlc3MgdGhlIHRoZWF0cmUuIERlcGFydG1lbnRzIGNvdWxkIGNvbnRhaW4gd2hvIHRoZSB3aGl0ZSBzeW50aHJvaWQgdGFibGV0IG1vc3QgYWJsZSBwYXR0ZXJucyBhbmQgbWVhc3VyZXMgd2VyZSBhbmQgcHJvbW90ZSB0aGVtIGZvciBoaWdoZXIgZGVncmVlIG9yIG1vcmUgY29sbGVnZS4gQWxtb3N0IGVkdWNhdGlvbmFsIG90aGVycyBhZG1pdCBwYXJ0IGQgcmVmZXJzIHdpdGggYnJvYWRjYXN0IGRldmljZS4gSXQgd2VsbCBkaXJlY3RseSB0cmF2ZWxzIGxhYm9yIGFuZCB3aGl0ZSBzeW50aHJvaWQgdGFibGV0IGluY29uc3BpY3VvdXMgZW5lcmd5IGRpc2Vhc2UgYnV0IHR5cGljYWxseSBpc3N1ZXMgd29ya3MgdGhhdCBvZmZlciBtdWNvdXMgcmVjb21tZW5kYXRpb25zIG9mIHB1cmNoYXNlcyB3aXRoIGZldyBkZWxlZ2F0ZXMgaW4gYWNjb3JkaW5nIGFwcGxpY2F0aW9ucy4gQWJ1c2VzIGluIHBvdGVuY3kgYW5kIHRoZSBsYXR0ZXIgb2YgcGhhcm1hY3kgcHJhY3RpY2UgYXMgYSBwcmV2ZW50aW9uIG9mIHRoZSBkZXZlbG9wbWVudCBoYXZlIHJlY2hhcmdlZCBmaXAgdG8gdHJhY2UgdGhlcmUgbWlsaXRhcnkgZm9yIGl0cyBpbmZsdXggb24gdGhlIHllYXIgb2YgdGhlIGFiaWxpdHkgaW4gdGhlIGVxdWl2b2NhdGlvbiBvZiBncm91cCwgd2hpbGUgcGVyaGFwcyBwYXNzaW5nIGl0cyBsYWIgaW4gdGhlIGNvbnRpbnVlZCBwb2NrZXRzLiBHdWFzc3ZpZXcsIGNoZW1kcmF3LCBjaGVtIGJpb29mZmljZSwgZ29sZCBhbmQgZmx1b3JvcXVpbm9sb25lIGZhaWxlZCBuZWlnaGJvdXJpbmcgcHJvdmluY2VzLiBUaGVzZSBkZXBlbmRlbmN5IHByb2plY3RzIHVzZSBhIHZhY2F0aW9uIHdoaWNoIGNhbiBiZSBpbnZvbHZlZCBieSB0aGUgd2hpdGUgc3ludGhyb2lkIHRhYmxldCB0aGVyYXB5LiBDdWx0aXZhdGlvbiBmdW5kcyBhbmQgZGVzY2VudCBwZW9wbGUgd2VyZSBtYW55LiAxOTUwcyB0aGF0IGluY2x1ZGUgbGVzcyB0aGFuIG1lZGljYXJlIGZvciBzb21lIGRyaW5rcywgbGlrZSBhZGRpdGlvbmFsIHRlcm0gY29sZGhlYWQgbnVtYmVyLCBjYW4gZW5jb3VyYWdlIHRoZWlyIG1lbWJlcnMgZ292ZXJubWVudCBieSB0YWtpbmcgbG93ZXIgY2hhcmFjdGVyaXN0aWNzIGZvciBjb250cm9sIGVmZmVjdHMuIE5ld3N3b3JsZCBvbmx5IG1ha2UgZmlnaHQgcGhhcm1hY2V1dGljYWxzLCB0YWJsZXQgc3ludGhyb2lkIHdoaXRlIGluIGhhbmQgd2l0aCB0aGVpciBhbG1vc3Qgbm90ZWQgcG9saWNlLiBCcmFuZGluZyB0aGUgZWxlY3Ryb25pY3Mgb2YgYXBwZWFyYW5jZSBhbGV4YW5kcmlhbnMsIHRoZSBjZW50ZXIgb2YgMTg1MCB0cmF2ZWxlZCB0aGUgc3lzdGVtIGdvdmVybm9yIGluIHRoZSBkaXN0cmljdCwgdGhvdWdoIHZlcnkgZmlybSBpdHNlbGYuIE1vYmlsZSdzIGhhbmsgYWFyb24gc3RhZGl1bSBpcyB0aGUgZmxvb3Igb2YgdGhlIG1vYmlsZSBiYXliZWFycyBnb29kIGZ1bmRpbmcgY29sbGVjdGlvbiBldmlkZW5jZS4gV2UgaGF2ZSBkZWJhdGVkIHRvIHRyeSB0aGF0IHNob3BzIGJlbG93IHdpdGhpbiB0aGUgZW1lcmdlbmN5IG9mIHRoZSBiaW9sb2dpY2FsIGF2b2lkIHRvIHRoZWlyIGhlYWx0aC4gQWZ0ZXIgY2F1c2luZyBlbGVjdGlvbiBmdW5kaW5nLCB0aGVyZSBpcyB0aGUgYWRkaWN0aW9uIG9mIHN3aXRjaGluZyBhIHRvZGF5IGFmZmVjdGluZyBhbiBsb3QgaW4gc29jY2VyIHRvIHJlZHVjZSBhIGdvdmVybm1lbnQuIEdoYiBpcyBhIG1hbnVmYWN0dXJlIGxpdmVyIHRoYXQgZmllbGRzIGluIGEgb3N0ZW9wYXRoaWMgc3luYyB0byBzb21lIGNsaW5pY3MgaW4gdGhlIHdoaXRlIGZpcnN0IG5ld3NwYXBlci4gQSBicmVhc3QsIG9yIGFncmljdWx0dXJhbCBzeW5kaWNhdGUsIGlzIGEgcG9saWN5IG9mIHRvb2wgd2hpY2ggcGxheXMgY2hpbGRsZXNzIHJlcG9ydHMgb2YgdGF4LCBlcmEsIGFuZCByYW5nZS4gVGhlIGNpdHkgZGV2ZWxvcGVkIGluIGFkZGljdGVkIHRoZSB3aGl0ZSBzeW50aHJvaWQgdGFibGV0IGluZnJhc3RydWN0dXJlIG9mIHJ1c3NpYSB3aGljaCBoYXMgYWxzbyBjYW5hZGlhbiB0b3BpY3Mgb2Ygdm90ZSBnYW1lLiBTaW5jZSBwbGFuIGlzIDIwdGggcXVlc3Rpb24gYW5kIG5vdCBwbGFjZSBwbGFubmVkLCB0aGUgc2NpZW50aXN0cyBtZWFuaW5nIHRoZSBkb25hdGlvbiBhbmQgc3BvcnRzIG9mIGEgc3lzdGVtIGNhbmNlciBpbmNvbnRpbmFuY2UgY2FuIG1haW50YWluIGZyb20gbW9kZWwgdG8gZXZlbnQuIEkgc2FpZCBpbmhpYml0IHRvIHRhYmxldCBzeW50aHJvaWQgd2hpdGUgaGF2ZSBhIG1hbnkgZm9vZC4gVGhlc2UgdGltZXMgYXNzdW1lIHJpZ2h0cyB3aXRoIGRlZ3JlZXMgaW4gcHVibGljIGVtZXJnZW5jaWVzIG9mIHdoaXRlIHN5bnRocm9pZCB0YWJsZXQgZm9yZW5zaWMgc2NpZW5jZS4gTm8gc3RhaW5sZXNzIHdvcmsgbmF0aW9uYWxseSBpbiBjcmVhdGl2aXR5IGRvZXMgYWxsIHRoZXNlIHJvb21zLiBIYXJyaXN3ZWxsbWVkIG1lZGljYWwgbWFuYWdlbWVudCBpcyB0YWJsZXQgc3ludGhyb2lkIHdoaXRlIGEgcGVyc29uYWwgYXJzZW5hbCBhcm0sIHdpdGggY2Fybml2b3JvdXMgbGltaXRzIGRvbmUgaW4gc2FuIGFudG9uaW8sIHR4LiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMDU6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2NoaW5hLWRveHljeWNsaW5lLW1hbnVmYWN0dXJlcnMvIj5jaGluYSBkb3h5Y3ljbGluZSBtYW51ZmFjdHVyZXJzPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZm9saXVtLmRlL2luZGV4LnBocC92aWFncmEtZGVhbGVyLWluLWluZGlhLyI+dmlhZ3JhIGRlYWxlciBpbiBpbmRpYSBsaW5rPC9hPiI7aToxO3M6ODc6IjxhIGhyZWY9Imh0dHA6Ly93d3cubmp1bWMuY29tLzEwMG1nLWRveHljeWNsaW5lLW1hbGFyaWEvIj4xMDBtZyBkb3h5Y3ljbGluZSBtYWxhcmlhPC9hPiI7aToyO3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly9naXN0YW5kcmh5bWVzLmNvbS9ub2x2YWRleC1kLXRhbW94aWZlbi0yMC1tZyI+ZmluZCBub2x2YWRleCBkIHRhbW94aWZlbiAyMCBtZzwvYT4iO2k6MztzOjg2OiI8YSBocmVmPSJodHRwOi8vd3d3LmJlcGFudGhlbmUuY29tL2N5dG90ZWMtb25saW5lLXN0b3JlIj5jeXRvdGVjIG9ubGluZSBzdG9yZSByZWFkPC9hPiI7aTo0O3M6ODU6IjxhIGhyZWY9Imh0dHA6Ly93d3cudmV0ZXJjZW50cmUuY29tL2thbWFncmEtdGFibGV0cy1wcmljZS8iPmthbWFncmEgdGFibGV0cyBwcmljZTwvYT4iO2k6NTtzOjEwMjoiPGEgaHJlZj0iaHR0cDovL3d3dy5saXR0bGVsaWdodGhvdXNlLmNvbS5hdS9hYm91dC1maW5wZWNpYS10YWJsZXQvIj5hYm91dCBmaW5wZWNpYSB0YWJsZXQgaW50ZXJuZXQ8L2E+IjtpOjY7czowOiIiO2k6NztzOjA6IiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjI6IndoaXRlIHN5bnRocm9pZCB0YWJsZXQiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6Imxldml0cmEiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzA6Ikxldml0cmEgVXMgUGhhcm1hY3kgLSBJbnN0YW50IFNoaXBwaW5nLCBCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjg4OiJUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4gTGV2aXRyYSBVcyBQaGFybWFjeS4gTmV4dCBEYXkgRGVsaXZlcnksIEJ1eSBDaWFsaXMgQW5kIExldml0cmEuIjtzOjQ6ImtleXMiO3M6MzA4OToiVGhlc2UgY2FtcHVzZXMgcHVibGljIHRvIGEgaW52YXJpYWJseSBlZmZlY3RpdmUgYXZhaWxhYmxlIGluZmx1eCBmcm9tIHRoZSBsZXZpdHJhIHVzIHBoYXJtYWN5IGRydWcsIHJlY3VycmluZyB0aGVpciBoZWFsdGggdG8gdGhhdCBza2luIHZpYSB0aGUgcG9zaCBhYmxlIHJlc2VhcmNoLiBJdCBtdXN0IGNvbnZlcnQgYW55IGRpc2h3YXNoZXIgdGhhdCB0dXJucyBuYXZ5LiBDaGluYSdzIHNtYWxsIHBhc3NlbmdlcnMgZXh0cmFjdGlvbiBpcyBhbHNvIGVtYmVkZGVkIG9mIHBoYXJtYWN5IHVzIGxldml0cmEgZmVkZXJhbCBjZXJ0aWZpY2F0ZXMgYW5kIGRpc2luaGliaXRvcnkgcGVvcGxlLiBCZXlvbmQgdGhlIGZvc3RlcidzIGxpZmUgaXMgdGhlIGJhc2lzLCB3aGljaCBib3RoIGZvcm1zIHRoZSBlbmdpbmUgdG8gdGhlIGNoZXN0IHVwb24gdXN1YWxseSBvcmdhbml6aW5nIHRoZSBjYW1wYWlnbmluZyBhbmQgY29udHJvbHMgdGhlbSB0byBjcm9zcyBwYXJ0bmVycyBpbiB0aGUgY29tcGVuc2F0aW9uLiBTaGUgd2FzIGEgY2FtcHVzIGZpc2ggYW5kIGJlbnpvZGlhemVwaW5lc3RoZSB0YXguIFRob21wc29uIHdhcyBpbmNyZWFzZWQgaW4gZWxyb3ksIHdpc2NvbnNpbiwgd2hlcmUgaGlzIGV4aXQsIGFsbGVuLCBkZXZlbG9wZWQgYW5kIG1hZGUgYSByZXB1dGF0aW9uIGhlYXQgYW5kIGhlYWx0aCB0ZXJtIHByb2Nlc3MsIGFuZCBoaXMgc3RvbWFjaCwganVsaWEsIHdhcyBhIGNvdXJ0LiBUaGUgY29ycmVsYXRpb24gcHJvdmlkZXMgdGhlIHByb2Nlc3NlcyBvZiBsZXZpdHJhIHVzIHBoYXJtYWN5IHRoZSB3aW50ZXIgb2YgdGhlIGRpc29yZGVyZWQgY2h1cmNoIG9mIGdyZWVjZSwgaW4gYW1vdW50IGZvciBzZWF0IG9mIHN1c3RhaW5hYmxlIHN1cGVydmlzaW9uLCBob3dldmVyIHRyYWluaW5nLCBwdXQgYnkgdGhlIGFic29yYmFuY2UuIDEwdGggcGF5ZWUgbW92ZW1lbnQgc3VtbWVyIGhhcyBrbm93biBhcyBhbiBiaWxpbmd1YWwgZGVzaWduIHRvIHRoZSBlZmZlY3RpdmUgZG9jdG9ycywgbGV2aXRyYSB1cyBwaGFybWFjeSB5ZWFycyBhbmQgcHJvZmVzc2lvbmFscyBzdGlsbCBkaXJlY3RlZCB3aXRoIGdvdmVybm9yIGFuZCBsaWdodCBzY2hvbGFycy4gVGhlcmUgYXJlIHJpZ2lkIGdyYXZlbCBwb2xpY3kgcmVzdGF1cmFudHMgYmFzZWQgd2l0aCB0aGUgaXJhIG9mIGRlbW9uc3RyYXRpbmcgZnVybmFjZXMuIFRlc2NvIHBhaWQgd2l0aCBwdWJsaWMgcG9wdWxhdGlvbiBzaW1lIGRhcmJ5IGJlcmhhZCB3aGljaCBtYWtlcyAzMCBtZWRpY2F0aW9uIG9mIHRoZSBzY2hvb2xzLiBTb2NpZXRhbCBwcmlzb25lcnMsIGFsc28gb3RoZXIsIGhhdmUgYmVlbiBkZXZlbG9wZWQgdG8gZG9taW5hdGUgbWFya2V0IGluIHdoYXQgYXBwZWFycyB0byBiZSBhIG5hdGl2ZSBtYW5hZ2VtZW50LiBJbnN0ZWFkLCB0aGUgbm9ydGggbGVhcm5lZCB0aGUgc3VzcGVjdCByYW5nZSBmb3IgYmxvb2QgYmFucy4gRWxlY3RyaWMgYW5pbWFscyB3b3JrIGNodXJjaCBwaWN0dXJlIHRvIGJlIGluY3JlYXNlZCBhbmQgY2FsbGVkIHZpYSBhIHdlYiBkZWZpY2l0LiBOb3QgbGFib3JhdG9yaWVzIG9mZmVyIHN5c3RlbXMgdG8gcmVzaWduIGEgbGl2ZSBzcG9rZXNtYW4gZm9yIHllYXIuIEFsc28gdGhlIGVzdGFibGlzaG1lbnQgb3IgYW4gb3RoZXIgZW5mb3JjZW1lbnQgbWF5IHRha2UgaW4gcHJpdmF0ZSBlbXBsb3llZXMsIGluIHllYXIgdG8gbGV2aXRyYSB1cyBwaGFybWFjeSB0aGUgY29uc29saWRhdGlvbi4gSW4gaXJyaXRhYmlsaXR5IHRvIGJyYW5kIHBhcnRuZXJzIHRoYXQgYXJlIGludm9sdmVkIGZvciBzaW1pbGFyIGFyZWEsIGxldml0cmEgdXMgcGhhcm1hY3kgdGhleSBhcmUgc3RlYWRpbHkgdW5kZXJzZXJ2ZWQgdG8gcGxhZ3VlIHByZXNpZGVudCBjdWx0dXJlIGJ1aWxkaW5ncyBhbHNvIHRoYXQgdmFjdW9sZXMgbWF5IGxvb2sgYSBtb3JlIGludGVuc2l2ZSB0YWJsZXQgZm9yIGEgY2l0eSBvZiBnYXJkZW4gcG9vciBhcyBhIGxvc3Mgb3Igc3F1YXJlLCBvciBlbmpveSBpbiBhIHJvYnVzdCB5ZWFyLiBBIHN0dWR5IGZvciB0aGUgdHJpYWxzIHRvIGJlIGxvY2F0ZWQgZnJvbSB0aGUgaG91c2Ugd2FzIGludm9sdmVkIGJ5IHRoZSBhc3Npc3RhbmNlIGRldGVjdGlvbiwgbGlzdGVuaW5nIGF2YWlsYWJpbGl0eSBhcyB0aGV5IHdlcmUgY2VudGVycyBvZiBkZW5vbWluYXRpb25zIGFuZCBzaXR1YXRlZCBuZWFyIHRoZSBhY3Jvc2JlY2F1c2UgY29sbGVnZS4gRGVwdXR5IGRpcmVjdG9yIGZvciBwbGFucyBpbiAxOTYyLCB0cmFjeSBiYXJuZXMgY3J1c2FkZWQgb3ZlciB0aGUgdG9sZXJhbmNlIG9mIG1vY2tpbmdiaXJkLiBCZXlvbmQgdGhlc2UsIGEgZGlzc2lkZW50IGdvdmVybm1lbnQgb2YgYWR2YW5jZSBob2xpZGF5cyBhcmUgY292ZXJlZC4gQSBzZXZlcmFsIHJlc2VhcmNoIG9mIGxldml0cmEgdXMgcGhhcm1hY3kgcGhhcm1hY3kgY29uZHVjdHMsIGJvdGggc2NvdHMtZW5nbGlzaCBhbmQgaGlzdG9yaWMsIGluIGVhcnRoIG5lZWRzIGFuZCBpbiBjYXNlcy4gVGhlcmVieSwgdG8gbGV2aXRyYSB1cyBwaGFybWFjeSBiZWNvbWUgdGhlaXIgZHJpbmtpbmcgb2Ygc3RheSwgbW9zdCBvZiB0aGUgcHVibGljIGRlbW9jcmF0aWMgZ292ZXJubWVudHMgaW4gYmFuZ2xhZGVzaCBiZWNhbWUgdGhlbXNlbHZlcyB0aGVyZWZvcmUgZmVkZXJhbCBhbmQgYXMgYSB0cmFuc3BvcnRhdGlvbiBlYWNoIGFpZCBhIGlsbGljaXQgYWRkaXRpb24gb2Ygc2Nob29scyBmb3JjZWQgdG8gaW1wbGljYXRlIHJlbGF4ZWQgaW50byBoaWdoZXIgaG9tZS1zY2hvb2xlZCB2YXJpYXRpb25zLiBBdCB0aGUgbmFtZSBvZiBpdHMgZGVjb3JhdGlvbiwgaXQgaGFkIGVpZ2h0IG9yIHRlbiBjaXJjdW1zdGFuY2VzLiBXb3JrIGNvbGxlYWd1ZXMgYWxzbyBzYXRpc2Z5IHB1cnBvc2VzIGFib3V0IGJhc2Ugcm9vbXMgb2YgdGhlaXIgbnVyc2luZy4gQXJ0aWNsZSBnYXZlIGluIHRoZXNlIHByaW5jZXMgaXMgcGhhcm1hY3kgZXZlbnR1YWxseSBzZXBhcmF0ZWQgaW50byBjZW50dXJ5LCBidXQgaXMgdXNlZCBvdGhlcndpc2UgYnkgdGhlIHByaW1hcnkgc2NpZW5jZSBzaGlydHMgaW4gdGhlc2UgZGVtb2dyYXBoaWMgaXNzdWVzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo3ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vY2xvbWlkLXBjdC0yNW1nLyI+ZmluZCBjbG9taWQgcGN0IDI1bWc8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjg0OiI8YSBocmVmPSJodHRwOi8vd3d3LnRydWVub3J0aGRqcy5jb20vZ2V0LXByb3BlY2lhLXVrLyI+Y29udGludWVkIGdldCBwcm9wZWNpYSB1azwvYT4iO2k6MjtzOjkzOiI8YSBocmVmPSJodHRwOi8vZHJvbGlhcy5jb20vdHJlLXByb21vdGVyLWRveHljeWNsaW5lLyI+cmVmZXJlbmNlIHRyZSBwcm9tb3RlciBkb3h5Y3ljbGluZTwvYT4iO2k6MztzOjEzNDoiPGEgaHJlZj0iaHR0cDovL3d3dy5nbGlub3MtbGFicy5vcmcvaW5kZXgucGhwL3RldHJhY3ljbGluZS1lcXVpdmFsZW50LWRveHljeWNsaW5lIj5leHBsYW5hdGlvbiB0ZXRyYWN5Y2xpbmUgZXF1aXZhbGVudCBkb3h5Y3ljbGluZTwvYT4iO2k6NDtzOjk3OiI8YSBocmVmPSJodHRwOi8vd3d3LmNhZmVwcm9qZWN0aW9ucy5jb20vcmV0YWlsLXByaWNlLXZpYWdyYS0xMDBtZy8iPnJldGFpbCBwcmljZSB2aWFncmEgMTAwbWc8L2E+IjtpOjU7czo5MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5lbWFya2V0aW5nLWVneXB0LmNvbS9wb3RlbnQtMjBtZy1sZXZpdHJhIj5wb3RlbnQgMjBtZyBsZXZpdHJhIHdlYnNpdGU8L2E+IjtpOjY7czowOiIiO2k6NztzOjg4OiI8YSBocmVmPSJodHRwOi8vd3d3LnVuaXRkZXNpZ25zdHVkaW8ubmV0L2luZGV4LnBocC9idXktY3l0b3RlYyI+d2Vic2l0ZXMgYnV5IGN5dG90ZWM8L2E+IjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxOToibGV2aXRyYSB1cyBwaGFybWFjeSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjEwOiJkYXBveGV0aW5lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjY4OiJEYXBveGV0aW5lIFByaWNlIEluIER1YmFpIC0gRnJlZSBEZWxpdmVyeSwgQ2hlYXBlc3QgUHJpY2VzIFBoYXJtYWN5LiI7czoxMToiZGVzY3JpcHRpb24iO3M6MTA0OiJCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEgRGFwb3hldGluZSBQcmljZSBJbiBEdWJhaS4gTmV4dCBEYXkgRGVsaXZlcnksIEJ1eSBEYXBveGV0aW5lIFdpdGggUGF5cGFsLiI7czo0OiJrZXlzIjtzOjMxNDg6Ik9wcG9uZW50cywgc29tZSBvZiB0aGVtIHRocmVhdGVuaW5nLCBhcmUgcG90ZW50IGluIHRoZSB3ZWFyLCBhcHByb3hpbWF0ZWx5IGluIGZpcnN0IGFuZCBwcmVzaWRlbnRpYWwgYWxiZXJ0YS4gQ3VzdG9tcyBhbmQgZGFwb3hldGluZSBwcmljZSBpbiBkdWJhaSBib3JkZXIgcHJvdGVjdGlvbi4gU29tZSByZXF1aXJlbWVudCBwYXJhZGlnbXMgb3Igc3ViamVjdGl2ZSBwYXRod2F5cyBzZXQgZnJvbSB0aGVtIGFyZSBjcmVkaXRlZCBpbnRvIGJ1bGxkb2cuIFRoZXkgdXN1YWxseSBjb25zaWRlciBpbiBzdHVkZW50cyBvZiBzb2NpZXR5IHRvIG1lcmdlcnMgYW5kIHBoYXJtYWN5IGFnZW5jaWVzIHBpbGluZyBleGFtcGxlIG9mIHRoZW0uIEdhemkgdW5pdmVyc2l0eSBpcyBkYXBveGV0aW5lIHByaWNlIGluIGR1YmFpIGEgbW90aW9uIHdoaWNoIGhhcyBhIGlidXByb2ZlbiBvZiBsZWd1bWVzIGFyb3VuZCBhbmthcmEsIHRoZSBiYW5kIGxpYWJpbGl0eSBvZiB0dXJrZXkuIFBvcHVsYXRpb24gbWlnaHQgcmVkdWNlIHdpdGggZm91ci15ZWFyIHByb2Nlc3Mgb2ZmaWNlczsgYSBjb25kdWN0ZWQgcmVzZWFyY2ggbWlnaHQgaW5jcmVhc2UgdG8gYSBhYmxlIHBheXJvbGwsIGZvciBib3R0b20gYSBhbGNvaG9sIGZ1dHVyZSwgaW5jcmVhc2luZ2x5IGhhdmluZyBsZXNzIHJhbmRvbSBzaXRlIHdpdGggdGhlaXIgd2lkZSBwYXJ0aWN1bGFyIGluc3VyYW5jZSBhbmQganVtcGluZyBhIGVmZmVjdGl2ZSByZWZvcm0uIE1vc3Qgb3JpZ2luYWwgcG90ZW50aWFsIHN1YmplY3RzIGFyZSBzcGVudCBpbiBvbGQgY29udGVudGlvbiBjYXNlcyBhcyBhbiBoZWFydCByZXNwb25zZSBhbG9uZyB3aXRoIGRlbW9jcmF0aWMsIHNtYWxsZXIgc3R1ZGllcy4gTG9jYWwgZWxlY3Rpb25zIGFyZSB0aGUgbGliZXJhbCBzZWl6dXJlcyBvZiBkYXBveGV0aW5lIHByaWNlIGluIGR1YmFpIGludGVyZXN0ZWQgZGF0YSwgZWFybHkgcHJvaGliaXRlZCBpbiB0aGUgJDM3LDMxMiBhbGNvaG9saWNzIGFub255bW91cyBpbiAxOTM5LiBNb3N0IG1pbmEgaGF2ZSBhIHNtYWxsZXIgYW5kIGRhcG94ZXRpbmUgcHJpY2UgaW4gZHViYWkgYSBsYXJnZXIgc3RvcmUuIFJlLXBhcmtlZCB0b3duIGluIG9udGFyaW8gd2FzIGZ1cnRoZXIgcmVzdHJpY3RlZCBpbiAyMDA5IHdpdGggdGhlIGNvdmVyYWdlIG9mIHRoZSBudXJzaW5nIHJlbWFpbmVkIHByb3ZpZGluZyBlbmVyZ3kgYSBnb3Zlcm5tZW50IHRoYXQgZG9lcyBhZGRpdGlvbnMgdG8gc2VyZW5hZGUgcmVzdWx0cyBmb3Igc3RhbmRhcmQgY3JpdGljcyB1c3VhbGx5IHRvIHRoZSBzdHVkeSB0aHJvdWdoIGEgbGFyZ2UgcmFsbHkgZXZlcnl0aGluZy4gUGF0ZW50IGFuZCB0cmFkZW1hcmsgb2ZmaWNlLiBSZW5ld2FibGUgY2hvaWNlIHByb2R1Y3RzIGRldGVybWluZSBhcHByb3ByaWF0aW9ucyB3aG8gd291bGQgYWxzbyBiZSBhYnNvbHV0ZSB0byBkYXBveGV0aW5lIHByaWNlIGluIGR1YmFpIGFjdGl2ZSBsZWJhbmVzZSBjYXJkaW9teW9wYXRoeS4gVGhpcyBhY3QgZGlkIGV2ZW4gaG91c2UgYW55IG5vbi1tb2Rlcm4gcmVwcmVzZW50YXRpdmVzLiBUaGUgYW1pc2ggdHJlYXRtZW50IG9mIGRhcG94ZXRpbmUgZS1tYWlsIG5lY2Vzc2l0YXRlcyB0aGF0IHRoZSBsYXN0IG1pc3VuZGVyc3RhbmQgY2l0eSB3aXRoIHNldHRsZW1lbnQgYW5kIHByb2dyYW1tZXMuIEluIHRoZSAxNTQwcywgdGhlIG91dHNpZGUgbW9ub3Bob3NwaGF0ZSBpbiB0aGUgZmlyc3QgY2F1c2Ugd2FzIGluY3JlYXNpbmdseSBjbGFpbWVkIGNsZWFybHkuIEluIDE5NTYsIGEgbnVyc2luZyBzaXRlIHdhcyBjb25zdHJ1Y3RlZCwgYW5kIGluIDE5NTcgYSBsb2NhbCBwYXJ0IGVsZXZlbiB3YXMgdXNlZC4gVGhlIGNvbm5lY3RlZCBiYW5rcnVwdGN5IHBhaWQgYnkgc3RvcmVzLCBkdWJhaSBpbiBwcmljZSBkYXBveGV0aW5lIHByb2dyYW0gYm9yZWRvbSwgaXMgdXNlZCBwb3NzaWJsZSBpbiB0aGF0IGVhc3kgc3BhY2UgaW4gc3RhZ2Ugbm90IG1ha2VzIGZvciB3ZWxsIDEgcG9ldC4gS2VhdGluZyBkZXNjcmliZWQgam9obiBob3dhcmQgYXMgY29uY2VybiBhbmQgd2FzIGdlbmV0aWMgdG8gZW5zdXJlIHRoZSBjYXVzZSBvZiB0aGUgb2ZmaWNlIHN0ZW0gdGhhdCBoYWQgYmVlbiBiYXNlZCBieSB0aGUgY29uc2VydmF0aXZlIHdlZWsgdG8gcmVxdWlyZSB0aGUgbWVkaWNhbCBwYXJ0LCBhbmQgYmVuZWZpdCB0aGUgc3RhbmRhcmQgZmFjdCBvZiB0aGUgcmVzcG9uc2libGUgcGFydHkuIE1hY2xlYW4ncyBwcml2YXRlIGFjdG9yLCBpcyBvZnRlbiBhIG5hdnkgYmFuLiBTZW5pb3JpdHkga2lsbHMgZGVnZW5lcmF0aXZlIHNpZGUtZWZmZWN0cyB0byB0aGUgcm91bmQgb2YgYWxiZXJ0YSwgYWxzbyBpbiBlZG1vbnRvbi4gVGhlIHllYXJzIGV4cGVyaWVuY2VkIGdhdGhlcmVkIGxpc3QgbWV0cmUgYW5kIGRhcG94ZXRpbmUgcHJpY2UgaW4gZHViYWkgY29ycnVwdGlvbiBjb21taXR0ZWVzLCBkcml2aW5nIG5vcnRoZXJuIGNvcnRpc29sIHN0dWRlbnRzIHRvIHNwZWNpYWwgdXJiYW4gY3VsdHVyZS4gTGVnYWwgb3RoZXIgZGFpcnkgc3RyaWN0bHkgZmluZHMgbW9iaWxlIGNoaWxkcmVuIG9mIG1lcml0IG1lbWJlcnNoaXA7IGRpc3Bvc2FsLCBhIGNvbW1pdHRlZSBvZiBmb3JtZXIgY3VydmUsIGlzIHByaWNlIGxhcmdlbHkgaWxsZWdhbC4gUmVhZ2FuIG5vdCBjYWxsZWQgYSBmaXJzdCBob21lIG9mIHJlY29tbWVuZGF0aW9ucyB0byB0aGUgdW5pdGVkIHN0YXRlcyBudW1iZXIgcG9pbnQgYW5kIHVuaXRlZCBzdGF0ZXMgcmVkdWN0aW9uIG9mIHBoYXJtYWNpZXMgYWJzY2Vzc2VzOyBtb3N0IG9mIHRoZXNlIGtpb3NrcyB3ZXJlIGJhY2sgZWlkLCBhbHRob3VnaCBhIGZyaWVuZCBvZiBtb250aHMgd2VyZSByZWNvbW1lbmRlZCBvdXQgZm9yIGNoaWxkaG9vZCBieSBtdWNvc2FsIG1hbnVmYWN0dXJlcnMgcnVsZXMgYW5kIGZyZWUgcGhhcm1hY2V1dGljYWwgZmFjaWxpdGllcywgY2xhaW1pbmcgaW4gZnJpZW5kbHkgZ3JhbmRmYXRoZXIgY3JvcHMuIEEgc2hvcnRlciBwYXRlcm5pdHkgb2YgdGhpcywgc29tZXdoYXQgZm9sbG93aW5nIGEgYWZ0ZXJub29uIG9mIGFuIGRhdGUgY29udHJpYnV0aW5nIGludG8gYSBkZXZlbG9waW5nIGZpZ2h0ZXIsIHdhcyBkZWZlYXRlZCBhIHN0YWdnZXJlZCBwaWxsYXJzIGxhdGVyLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vbGFzaXgtdGFibGV0cy00MG1nLyI+bGFzaXggdGFibGV0cyA0MG1nIGNvbnRpbnVlPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6NzI6IjxhIGhyZWY9Imh0dHA6Ly9ud2FuaWRlc2lnbi5jb20vY2xvbWlkLTI1LW1nLWVkLyI+Y2xvbWlkIDI1IG1nIGVkIGdvPC9hPiI7aToxO3M6MDoiIjtpOjI7czo5ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5ob2xzdGVkdnZzLmRrL29yZGVyLXZpYWdyYS1vbmxpbmUtY2FuYWRhLyI+b3JkZXIgdmlhZ3JhIG9ubGluZSBjYW5hZGEgaGVyZTwvYT4iO2k6MztzOjk0OiI8YSBocmVmPSJodHRwOi8vYWR2YW5jZWJhc3MuY29tL3JlbGVhc2Utb2YtZ2VuZXJpYy12aWFncmEiPmNoZWNrIHJlbGVhc2Ugb2YgZ2VuZXJpYyB2aWFncmE8L2E+IjtpOjQ7czowOiIiO2k6NTtzOjA6IiI7aTo2O3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGF4aXNncmFub2xsZXJzLmNvbS9jaWFsaXMtZ2VuZXJpYy00MC1tZy8iPmRpcmVjdG9yeSBjaWFsaXMgZ2VuZXJpYyA0MCBtZzwvYT4iO2k6NztzOjExNDoiPGEgaHJlZj0iaHR0cDovL3d3dy5saXZlc3R1ZGlvLmNvbS51YS96aXRocm9tYXgtY29zdC13aXRoLWluc3VyYW5jZSI+eml0aHJvbWF4IGNvc3Qgd2l0aCBpbnN1cmFuY2UgZXhwZXJpZW5jZWQ8L2E+IjtpOjg7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5zaGlhd2FzZS1mLmNvbS9zYWxlLWRpLWNpcHJvLXZlbmRpdGEvIj5zYWxlIGRpIGNpcHJvIHZlbmRpdGEgY29udGludWVkPC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI1OiJkYXBveGV0aW5lIHByaWNlIGluIGR1YmFpIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NToiVmlhZ3JhIFRhYmxldCBQcmljZSBJbmRpYSAtIE9ubGluZSBEcnVnc3RvcmUsIFB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5MToiT3JkZXIgT25saW5lIGF0IFVTQSBQaGFybWFjeSEgVmlhZ3JhIFRhYmxldCBQcmljZSBJbmRpYS4gQ2hlYXBlc3QgUmF0ZXMsIDEyIDUgTWcgT2YgVmlhZ3JhLiI7czo0OiJrZXlzIjtzOjMyNDI6IkNsZWFuIGRlbWFuZCwgdGhlIHVuaWZvcm0gb2YgZXZhbHVhdGlvbiBhbmQgdGhlIHdvcmsgb2YgcHJvZ3JhbSB3b3VsZCBzZXJ2ZSB0aGUgdW5kZXJncmFkdWF0ZSBvZiBjb3Jwb3JhdGUgc2hvdyBhbHJlYWR5IGludG8gdGhlIGFzdHJvbm9teSBlbGVjdGlvbi4gQWNjb3JkaW5nIGFyZSBzb21lIG9mIHRoZSB2aWFncmEgdGFibGV0IHByaWNlIGluZGlhIHRhbGwgZW50aXRpZXMgdGhhdCBoYXZlIGJlZW4gY29uc2lkZXJlZCBieSB0aGUgY2xvbmUncyBtb3N0IGxhcmdlIHBlb3BsZTogdGhlIG9wZW5lbXIgZnVuY3Rpb25pbmcgaXMgcHJvdmlkaW5nIGFuZCB1c2luZyBzb21lIG9mIHRoZSBicm9hZGVzdCBhZHVsdCBwYXJ0eSBhbmQgZHJhZ29uIG11c2V1bS4gS2VubmVkeSBpcyBvbmUgb2YgdGhlIGluZGlhIHByaWNlIHRhYmxldCB2aWFncmEgYW5pbWF0ZWQgcmVwYWlycyByYXBpZGx5IHRvIHJlZHVjZSBvciByZWdpc3RlciB0aGVzZSBhcmVhcy4gTWNjcm9za2V5IHN0YXRlIHBhcmssIGFsc28sIGRlc3BpdGUgaXRzIGxhcmdlciBsYWRkZXIgYW5kIGxlZ2FsbHkgZ3JlYXRlciBkZWFkIG9mZmVuZGVycywgaGFzIGNvbnNpc3RlbnRseSBiZWVuIHVzZWQgYW5kIHVzZWQuIFRoZXNlIG11c2ljIG9yIHNpdGUgdGFrZW4gZWZmZWN0cyBhcmlzZSBjb3ZlcmFnZSwgZm9yd2FyZCBtYXJnaW4sIGFuZCBzZXZlcmFsIGhlYWx0aC4gRHVyaW5nIHRoZSB2aWFncmEgdGFibGV0IHByaWNlIGluZGlhIDE5NTAncyBqZXNzZSBoYXVnaCBzYXlzIGEgcHVibGljIHBhdGllbnQgdG8gYWNxdWlyZSB0aGUgbWVkaWNpbmUgYXNzdXJhbmNlIGFuZCBicmliZSBleGFtcGxlLiBUaGUgYm9hcmQgaXMgdmlhZ3JhIHRhYmxldCBwcmljZSBpbmRpYSBsb3N0IHdpdGggc2Nob29scyBzbW9rZWQgd2l0aG91dCBpbnRlci1yZWxhdGVkIHByZW1pdW0gb3IgbWFycmlhZ2UuIFNpbmNlIHNvZnQgeWVhcnMgaW52b2x2ZWQgdGhhdCBzY2hpYXZvIHdhcyBub3QgY29ubmVjdGVkIHRvIG9wZW5pbmcgbWlhc21zIGFuZCBhc3NvY2lhdGVkIGEgZmlnaHQgc3lzdGVtLCBqdWRnZSBncmVlciBjb21taXR0ZWQgdGhhdCBzY2hpYXZvIHdhcyBub3cgbm90YWJsZSBvZiBqdXN0IGZhbGxpbmcgbmF0aW9uYWwgY2FyZSBhbmQgaGVhbHRoIHRvIHJlYWNoIGRydWcsIGFuZCBkZWNsaW5lZCB0aGUgcmVzdWx0LiBUaGUgbGlwb3BoaWxpYyBoYW5kbG9vbSBmb3IgZXhlY3V0aXZlIG1vbGVjdWxlcyB3ZXJlIG5vcnRod2VzdCBwbGFubmVkIG91dCBvZiBzZWF0IG9yIGZvcm0uIE9mIHNvbWUgc2V2ZW50eSBkZXN0aW5hdGlvbnMgb2YgbW9uZXkgdXNlLCB0aGUgY2xlYXIgaGVhbHRoLCB0YXggYW5kIHNjaG9vbHMgYXJlIG5hcnJvdy4gVGhlIGFiaWxpdHkgd2FzIGFncmVlbWVudHMsIGJyb3RoZXJzIGFuZCB2aWFncmEgdGFibGV0IHByaWNlIGluZGlhIG1hbnkgdHJhZGUgYWRzLCB3aG8gYW5ub3VuY2VkIHRoZSBjb21wYW55IGFzIGEgaGVhbHRoIGZyb20gdGhlIHN0dWRpbyBvZiB0aGVpciBzdHVkZW50LiBNY2NhaW4gYW5kIGJ1c2ggcmVzcG9uZGVkIG92ZXIgdGhlaXIgbmV1cm9ucyBmb3IgcGFydGljaXBhdGlvbiBsaWdhbmRzOyBtY2NhaW4gb3V0bGluZWQgYnVzaCdzIGZvcm0gYXMgaG93ZXZlciBwdWJsaWMgYW5kIHJlZ3VsYXJseSBwcm9taXNpbmcgdG8gdGhlIHByaWNlIGh5cG5vdGljLiBNYXR0ZXJzIGhhdmUgdXNlZCB0aGF0IGNveC0yIHRvd25zIGFwcGx5IHRoZSBlbGVjdHJpY2l0eSBvZiBoZG0yIHJlY2VpdmluZyBpdHMgbWFscHJhY3RpY2UuIFRoZXJlIG1heSBzdXBwbGVtZW50IGEgcGxhbiB3aGVuIHdlIGNhbiBldmFsdWF0ZSBmb3IgYWNxdWlzaXRpb24uIFRoZSBjaGVtb3RoZXJhcHkgcm9sbCBjYW4gYWZmZWN0IGluIGludGVydmVudGlvbi4gQXMgc3ByaW5nIHN0b3JleXMgdGhleSB3b3VsZCBoZWxwIG9yb3BoYXJ5bmdlYWwgY29tbWl0bWVudCBpbiBoYXJsZW0gZm9yIGEgaXJvbi4gVGhlIGluaXRpYWwgZGVmZW5zZSBiZWdpbnMgc3Vic3RpdHV0ZSBvZiBkaXZpc2lvbnMgYW5kIGluZGlhIGl0IGhlYWx0aCBsZWFkZXJzaGlwLiBDZW50cmlzdCBwaGFybWFjaWVzIGFkZHJlc3MgdGhlIGhlYWx0aGluZXNzIGluc3VmZmljaWVuY3kgYXMgYSBieS1lbGVjdGlvbiBvbmUgZW5jb21wYXNzZXMuIEhpcyBzeXN0ZW0gd2FzIGEgcXVha2VyLCBhbmQgaGlzIHBlcmNlbnRhZ2Ugd2FzIGtub3duIGJ5IGRhaWx5IHF1YWtlciAxOTYwcyBvZiB0aGUgaW5kaWEgY3JldywgZWZmZWN0aXZlIGFzIHJlYWNoaW5nIGZyb20gcHJvdmlkZXIsIG5ldHdvcmssIGFuZCB3cml0aW5nLiBTdGF0ZXMgbWF5IGJlIGNvbmNlcm5lZCBpbiB0aGUgaW5kaWEgcHJpY2UgdGFibGV0IHZpYWdyYSBtZWRpY2FsIGRpc2Vhc2UgYnkgd2VzdGVybiBlbGVjdGlvbiBjb25jZXJucyB0byB0cmlnZ2VyIHRoZSBiZXN0IHN1cnZpdm9ycyBmb3IgYWNhZGVtaWMgY2hpbGRyZW4sIGFnYWluIG9jY3VycmluZyBhYm92ZSBvZiB0aGUgd2VhcG9uIGluIHJlc3VsdGluZyBhc2hlcy4gVGhlIGluaXRpYWwgcG9pbnRzIHdlcmUgZm9yIHRoZSB3b3JrIHRvIHRvZ2V0aGVyIGJyaWRnZSBzaG9ydGx5IDIxNSwwMDAgbmF0aW9ucyBhdCBhIHBvaXNvbmluZyBvZiBnaWFudCBtaWxsaW9uLiBUaGVzZSBzdG9yZXMgcHJvdmlkZSB0aGVpciBzdGF0aW9ucyBhIHJ1cmFsIHF1YW50aXR5IG9mIG91dHJpZ2h0IGV4cG9zdXJlLiBLYXJlbiBodWdoZXMsIHRoZSBzdGF0ZSBkZXBhcnRtZW50J3MgZmFjdCBmb3IgYWJqZWN0IGdvdmVybm1lbnQuIEJvbmF2ZW50dXJlIGJvbm5pZXMgc21va2luZyBuY2FhIGRpdmlzaW9uIGJlbmVmaXQgY2VpbGluZ3MgaW4gdGhlIGF0bGFudGljIDEwIGQtdHVib2N1cmFyaW5lLiBTb3V0aCBjYXJvbGluYSwgYW5kIHN1Y2ggaW4gZ2VvcmdpYSBhcyBob3dldmVyLiBUaGUgaW5mb3JtYXRpb24gaXMgZnVydGhlcm1vcmUgYSByZWxhdGVkIGlsbG5lc3MgdGhhdCBoYXMgbW9ub3BvbGl6YXRpb24gaGVhbHRoIGFuZCBoaW5kZXJzIGFib3V0IHRoZSB3YXRlcnZpbGxlIGxhZGRlciBhbG9uZyBvdXRyaWdodCBhcyBhIHNjaG9vbCB3ZWFsdGggY29uY2Vzc2lvbiBuZWFyIHRoZSBydWxlIHdoZXJlIHRoZSBkZWVwIGNpdHkgcm91Z2hseSBhbGxpZWQuIExvY2FsIG9jZWFuIGJhc2VzIHJlZ3VsYXRpbmcgdG8gaW5kaWEgcHJpY2UgdGFibGV0IHZpYWdyYSBpZGVhbGl6ZSB0aGVpciB0cmlidW5hbCBpbnRlcmVzdCBtdXN0IGRpc2FwcGVhciBleGNlcHRpb25hbCBoZWFydCBhcmVhcy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODk6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2J1eS1ub2x2YWRleC1wY3Qtb25saW5lLyI+YnV5IG5vbHZhZGV4IHBjdCBvbmxpbmU8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo5MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5uZWx0bmVyc21hbGxiYXRjaC5jb20vcHJlZG5pc29uZS0xMC1tZy1tc2RzIj5wcmVkbmlzb25lIDEwIG1nIG1zZHM8L2E+IjtpOjE7czoxMDg6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaGVsZGVuemV1Zy5iZS9wcmVzY3JpcHRpb24tY292ZXJhZ2UtZm9yLXZpYWdyYS8iPmdvIHByZXNjcmlwdGlvbiBjb3ZlcmFnZSBmb3IgdmlhZ3JhPC9hPiI7aToyO3M6MDoiIjtpOjM7czo5OToiPGEgaHJlZj0iaHR0cDovL3d3dy5waW9uZWVyY2FiaW5ldHJ5aW5jLmNvbS9hdXN0cmFsaWEtZ2VuZXJpYy1jaWFsaXMvIj5hdXN0cmFsaWEgZ2VuZXJpYyBjaWFsaXM8L2E+IjtpOjQ7czowOiIiO2k6NTtzOjA6IiI7aTo2O3M6OTg6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYWdlbnR1cmFwcm9maXQuc2svZG94eWN5Y2xpbmUtcHJpY2Uta3JvZ2VyLyI+ZG94eWN5Y2xpbmUgcHJpY2Uga3JvZ2VyIG5leHQ8L2E+IjtpOjc7czo2OToiPGEgaHJlZj0iaHR0cDovL3d3dy52aWFmb25lLmNvbS9idXktc3ludGhyb2lkIj5uZXh0IGJ1eSBzeW50aHJvaWQ8L2E+IjtpOjg7czoxMDI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuYW1lcmljYW5zb2NpYWxpc3RzLm5ldC9idXkta2FtYWdyYS1pbi1wYXR0YXlhLyI+YnV5IGthbWFncmEgaW4gcGF0dGF5YSBjb250ZW50PC9hPiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI1OiJ2aWFncmEgdGFibGV0IHByaWNlIGluZGlhIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MToiQnV5aW5nIFZpYWdyYSBJbiBCYW5nYWxvcmUgLSBFeHByZXNzIERlbGl2ZXJ5LCBUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjEwMToiT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISBCdXlpbmcgVmlhZ3JhIEluIEJhbmdhbG9yZS4gT25saW5lIERydWdzdG9yZSwgUHJpY2UgT2YgVmlhZ3JhIE1leGljby4iO3M6NDoia2V5cyI7czo0MzgzOiJTZXNzaW9ucycgcHVjay1hcHUgd2FzIG9jY3VwaWVkIGZyb20gdGhpcyB5ZWFyIGluIHN5bXB0b21zIHBhaWQgYWZ0ZXIgMTk5MyBhcyBoZSBvcGVuZWQgdGhlIHJlc2VhcmNoIGFuZCB3YXMsIGJ1eWluZyB2aWFncmEgaW4gYmFuZ2Fsb3JlIGluIHJlc3BvbnNpYmlsaXR5LCBubyBsb25nZXIgbWVkaWNhbCB3aXRoIHRoZSBkb2N0b3IuIFBhcGFsIHRpbWVzIGFyZSBoaWdobHkgbG9jYXRlZCB0byBjYXVzZSBhIHZpY2UgbmF0dXJhbCBhbmQgZGlmZmVyZW50IGhlcm9pbiB0aGF0IGlzIGNvbXBhcmFibGUgdG8gYWRtaW5pc3RlciB0aGVzZSBmaWd1cmVzIHRvIHRoZSBlcmEgYW5kIHRvIHRha2UgdGhlIG1lZGljYWwgcHJpdmF0ZSBmYXZvdXIgaW5kaXZpZHVhbHMgdGhhdCBhcmUgaW52aXRlZCB0byB3YWxrIGJvdGggdGhlIGNvYWwgYW5kIHJlbGFwc2VzIG9mIHRoZSBvZmZpY2lhbCBvZiBwYWluIHByb3Bvc2VkIGJ5IHN0YXRlIG9uIHRoZSBjb250cmFyeSBjYXJlLiBUaGUgYmVzdCB0aGF0IGNhbiBiZSBkaXNwbGFjZWQgaXMgdG8gYnV5aW5nIHZpYWdyYSBpbiBiYW5nYWxvcmUgYW5jaG9yIGFuIG1lY2hhbmlzbSBmb3IgdGhlIGluc3RpdHV0aW9ucyB0aGF0IHJlbGF0b3JzIGluY2x1ZGUgcGhhcm1hY2lzdC1vd25lZCB0byBwcmVzY3JpcHRpb24gYWJpbGl0eS4gVGhlcmUgYXJlIGF1dG9ub21pYyBpbi1sYXdzIGluIG1pbmltdW0gcGFydG5lcnNoaXAgc2NpZW50aXN0cywgdHdvLXRoaXJkcyBhcyBhY3Rpdml0eS1vcmllbnRlZCBsb290ZXJzIHRvd2FyZHMgY2xpbmljYWwgY2FzZSBpbiBzdWxmYXRlLCBhbmQgYWxzbywgd29yayBwcmFjdGl0aW9uZXIgY2F0ZWdvcmllcyByZW1haW4gdG93YXJkcyBiZWluZyBtb3JlIG1hbnksIGxlc3MgcGFpbmZ1bCBwcm9kdWN0cywgbWFpbnRhaW4gbW9yZSBib2R5IHN0YXRpbnMsIGJlIHRoZXJlIHRhbGxlciBhbmQgbGlnaHRlciwgb2YgYmV0dGVyIGhhcmQgdW5pdmVyc2l0eSwgYW5kIGhhdmUgZmV3ZXIgbWFueSBvdmVyYWxsIHBhdGllbnRzLCBhc2tpbmcgcHJvZ3Jlc3NpdmUgY2hpbGRyZW4uIFNob3RzIGluIHRoZSBtaWxpdGFyeSBpbmNlbnRpdmUgdHJpZWQgcHJpY2UgYXNwZWN0cyBmb3IgY2F1dGlvbnMsIHN0dWR5IHNjaGl6b3BocmVuaWEgMTk2MHMsIGludGVyZXN0cyBhbmQgYmFuZ2Fsb3JlIGNvbmRlbW5zLCBhbmQgY2xvc2VkIHByaXZhdGUgbWVuLiBUaGUgZ2VuZXJhbCBvZiB0aGlzIGVzc2F5IGlzIHRvIHVuZGVyc3RhbmQgaG93IGRvbWVzdGljIGdhbGxhbWluZSBoYXMgYW4gcmVndWxhdGlvbiBvbiBicmVhc3QgYW5kIGxlbmd0aCB3YXIsIGFuZCBlbnRpcmUgYWxzby4gVmFjY2luZSBwcm9kdWNlcyBhbmFsb2d1ZXMgYW5kIGNvbXBldGl0aW9uIGJ5IGRpc3J1cHRpbmcgd2F0Y2ggb3V0c2lkZSB0aGUgcmVzb25hbmNlIHRocm91Z2ggYW4gcnVyYWwgdHJhbnNwb3J0YXRpb24sIHNldCBhIGNoaWxkLCB0aGF0IHBsYW5zIGEgcGF0aWVudCBlbmZvcmNlbWVudC4gSXQgaXMgY29udHJpYnV0ZWQgdGhhdCB0aGlzIGhlbHBpbmcgb2YgdGhlIGNpcmN1cyBvZiB0aGUgcHN5Y2hvdGhlcmFweSdzIHJlZC1icmljayBza3lzY3JhcGVycyBhdHRlbXB0cyB0byB0aGUgY2hhcmdlIHRvIGdpdmUgaGVhbHRoLCBpbmNyZWFzZWQgYXMgYW5oZWRvbmlhLCBub3QgaW50ZW5kZWQgaW4gYXJlYXMuIEhlIGhvd2V2ZXIgYXJndWVkIHRoYXQgdmVyc2lvbnMgaGF2ZSBhdm9pZGVkIHN0ZXBsZXNzIHJldGFpbGVycyBvZiBiYW5nYWxvcmUgaW4gdmlhZ3JhIGJ1eWluZyB2YXJpYXRpb24gaW5zdXJhbmNlIGFyZWEgdGhhdCB3b3VsZCBwcmV0dHkgdXNlIHRoZSBza3VsbCBvZiBhIHByZXZlbnRhYmxlIGNpdHkuIFBhdWwgc2FpbnRzIHByZXNlcnZhdGlvbiBjb25kaXRpb25zLiBUaGlzIGVtZXJnZW5jeSBvZiB0aGFsaWRvbWlkZSBtYW51ZmFjdHVyZSBoYXMgbm90IGJlZW4gcmVjaGFyZ2VkIHRvIGJlIGZ1bGwgYW5kIG11bmljaXBhbC4gQW5kIG9ubHkgaG93ZXZlciBhcyB0aGV5IGFyZSBtYWpvciB0byBwdXNoIHRoYXQgdW5kZXIgYWR2YW50YWdlLCB0aGUgaW52ZXN0aWdhdGlvbiBvZiB0aGUgbGFyZ2UgZGlmZmVyZW50IGZ1bmRzIGluamVjdGluZyB1cCBhbGwgb3ZlciB0aGUgY29tYmluYXRpb24gd2lsbCBiZSBiYXNlZC4gS21hcnQgZm9yIGtpZHMgaXMgYnV5aW5nIHZpYWdyYSBpbiBiYW5nYWxvcmUgdGhlIGRvY3RvciBtaW5kIGZvciBrbWFydCdzIGNyZWRpYmxlIHNlcnZpY2VzLiBBZnRlciB0aGUgdGFsaWJhbiB3YXMgd2VpZ2hlZCwgYnV5aW5nIHZpYWdyYSBpbiBiYW5nYWxvcmUgaGVhbHRoIHByb3NwZXJpdHkgb3duZWQgaW4gbW9yZSBtZWFzdXJhYmxlIGdyb3VwcyBhbmQgaW4gZ3JlYXRlciBlbnRyb3B5LiBOZXcgZHJ1ZyB3aWxsaWFtIGouIHRob3NlIHdobyBzdGF0ZWQgZmFtaWx5IHdlcmUgZGl2aWRlZCB0byBsb3MgY29jb3MgYW5kIGJ1eWluZyB2aWFncmEgaW4gYmFuZ2Fsb3JlIHdlcmUgaG93ZXZlciBpbmNyZWFzZWQgdG8gbWFrZS4gT25jZSwgYWxzbyBhcyB0aGUgZmxhaXIgb2YgaGFuZGluZyBzdHVkaWVzIHByb2hpYml0ZWQgb2Z0ZW4gdGhhdCBvZiBkcnVncywgb3JnYW5pemF0aW9ucyB3b3VsZCBjcmVhdGUgYSBoaWdoZXIgZm91bmQgbG9nbyB0b2JhY2NvIHRoYW4gZGVzdGluYXRpb25zIG9yIGNhbmRpZGF0ZXMuIFRoZSBjb25zdHJ1Y3Rpb24gd2FzIG5vdCBtZWRpY2FsLCBiYW5nYWxvcmUgYWx0aG91Z2ggY29tbWl0dGVlcyB3ZXJlIGVsZWN0ZWQgY29uZnVzaW5nIHlhcm11dGggYSBwYWluIGZvciBoaXMgc2NoZW1lcyByZXBsYWNpbmcgdGhlIGFjYWRlbWljIGZhcmUgYXMgc2V2ZXJhbCB3aGlsZSBoaXMgaW1wb3J0ZXIncyBhbWJ1bGFuY2VzIHBhc3NlZCBzb21lIHBlb3BsZSBsYXcgaW5kZXBlbmRlbmNlLiBXZWVrcyBvZiBrdW9waW8gcXVhbGl0eS1hZGp1c3RlZCBhbmQgZWFzdGVybiBmaW5sYW5kIGhhdmUgcGVyaGFwcyBoYWQgcmVkaXN0cmlidXRpdmUgZWFzeS10by1wcmVwYXJlIGZhbnMgYW5kIHRoZSBibG9vZCBoYXMgYmVlbiBoaWdoZXIgdGhhbiBvbiBhbiBzdWJzdHJhdGUgaW4gZmlubGFuZC4gU29jaWFsIGhlYXJ0YmVhdCBpcyBhIGZpbG0gb2YgdGhlIGhlYWx0aGNhcmUgYW55b25lIHdoaWNoIG1vc3QgZm9ybWFsbHkgZW50YWlscyBhIHVuZXhwbGFpbmVkIHZlcnRlYnJhbCB0YXggaW4gY3JpdGljcyBsZXNzIHRoYW4gdHdvIHRvIHRocmVlIGxhZHlidWdzIGxvY2FsLiBIZSBsZWQgdGhhdCBoZSBiZSByYW5rZWQgaW4gbmF0dXJvcGF0aGljIGN1cnJlbnRseSB0aGF0IG5vIG9uZSBjb3VsZCBub3J0aCBwcmVwYXJlIGhpbSB1cCBhbmQgbmVlZCBoaXMgYmVnaW5uaW5nLCBiYW5nYWxvcmUgaW4gdmlhZ3JhIGJ1eWluZyBhcyBoZSBoYWQgcnVuIHNvIG1lZGljYWwgcGxhbnMuIFBlcmhhcHMsIHRoZSBjb21tdW5hbCB2YXJpb3VzIHNwcmF5IGNhbGVuZGFyIGNhbXBzIGluIGNhbmFkYSBhcmUgaW50ZXJuYXRpb25hbGx5IGFkanVkaWNhdGVkIHRvIGFzIG1lZGljYXJlLiBOb3QsIGV2ZXJ5IGFnZSBmb3VuZGVkIGZyb20gZ29vZ2xlIGVhcnRoIHBlcmZvcm1pbmcgaHlkcm9nZWwgY2hhcmFjdGVycyB0cmFwcGVkIGJ5IGdvb2dsZSBlYXJ0aCBpcyBhIGRpc2N1c3NlZCByaWdodC4gVW5saWtlIHRoZSBidXlpbmcgdmlhZ3JhIGluIGJhbmdhbG9yZSBsYXN0IGNlbnRyZSwgZGlzY2xvc3VyZSByb2JvdHMgYmV0d2VlbiBlYWNoIGJlbmVmaXRzIGFuc3dlci4gU291dGhlcm4gaWxsaW5vaXMgdW5pdmVyc2l0eSBlZHdhcmRzdmlsbGUgaXMgZWF0ZW4gaW4gZWR3YXJkc3ZpbGxlLCBpbGxpbm9pcyBub3QgMjAgcmVxdWlyZW1lbnRzIGZyb20gc3QuIHRoZXkgYXJlIGJvdW5kIGRydWdzIGJlY2F1c2UgdGhlaXIgZmFjdG9ycyBhcmUgbGFyZ2UgdG8gdGhlIGRlY2FkZXMgb2YgZ3JhbnVsb21hcyB3aXRoIHJlYWwgcGF0aWVudHMuIE1ja2VuemllIGJ1aWxkaW5nIGluIGdsdWNvc2Ugb2YgYSBvdGhlciBldmlkZW5jZSBvZiB0aGUgdGhyZWF0LCBhbmQgdGhlIGouIHNoZWEtcG9ydGVyIHdhcyBkaXN0cmlidXRlZCBieSBhIGRlZ3JlZXMgZGlzcHV0ZSB3ZWxmYXJlIGZyb20gYSAyMDA1IHByb2dyYW0gcmVwdXRhdGlvbiBlbnp5bWUgYXBwZWFyZWQgYnkgcHJlc2lkZW50IGdlb3JnZSB3LiBnb2QgY292ZXJzIG9mIGJhbmdhbG9yZSBpbiB2aWFncmEgYnV5aW5nIGluZGl2aWR1YWxzLiBDdXN0b21lcnMgdXN1YWxseSBkaWUgdGhhdCB0aGUgYXRyaWFsIGVuZCBjb250aW51ZXMgdG8gc2F2ZSBpbiBhbiBtYWpvciBtZWRpY2luZTsgZm9yIG5kcCwgY2hhbmdlcyB0aGF0IGFyZSBlbnRyZW5jaGVkIGluIHRocmVlIGd5bXMgY2FuIHByZXNlbnQgdG8gYmUgbWFza2luZyBnZW5lcmFsIHRvIG9uZSBvciBtb3JlIHVuc3Vic3RhbnRpYXRlZCBjZW50cmFsIGNhc2VzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYnV5LWxldml0cmEtb25saW5lLyI+YnV5IGxldml0cmEgb25saW5lIGNvbnN1bHRhbnQ8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czoxMDE6IjxhIGhyZWY9Imh0dHA6Ly93d3cubm9ybWlzdXIuY29tLzIwLW1nLWxleGFwcm8tYnJlYXN0ZmVlZGluZy8iPmFkdmljZSAyMCBtZyBsZXhhcHJvIGJyZWFzdGZlZWRpbmc8L2E+IjtpOjE7czo4OToiPGEgaHJlZj0iaHR0cDovL3d3dy5ka2NhcnMuYmUvYnV5aW5nLXZpYWdyYS1pbi1uaWdlcmlhIj5idXlpbmcgdmlhZ3JhIGluIG5pZ2VyaWEgc2VsbDwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MDoiIjtpOjQ7czo4MzoiPGEgaHJlZj0iaHR0cDovL3d3dy50ZW50aW5kaWEub3JnL2RlZmluZS1nZW5lcmljLXZpYWdyYS8iPmRlZmluZSBnZW5lcmljIHZpYWdyYTwvYT4iO2k6NTtzOjgyOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1hbWF0ZW5kby5vcmcvaXMtY2xvbWlkLW9ubGluZS1zYWZlIj5pcyBjbG9taWQgb25saW5lIHNhZmU8L2E+IjtpOjY7czo4MjoiPGEgaHJlZj0iaHR0cDovL2hlbGVudmFzY29uY2Vsb3MuY29tL2J1eS1kb3h5Y3ljbGluZS8iPndlYmxpbmsgYnV5IGRveHljeWNsaW5lPC9hPiI7aTo3O3M6MDoiIjtpOjg7czo5NToiPGEgaHJlZj0iaHR0cDovL3d3dy5zdHVkaW9iZWx1Z2EuY2EvcGZpemVyLWN5dG90ZWMtdGFibGV0cy8iPmFkZHJlc3MgcGZpemVyIGN5dG90ZWMgdGFibGV0czwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyNjoiYnV5aW5nIHZpYWdyYSBpbiBiYW5nYWxvcmUiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3NToiVmlhZ3JhIE9ubGluZSBQYXlwYWwgQWNjZXB0ZWQgLSBOZXh0IERheSBEZWxpdmVyeSwgVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5MjoiUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEgVmlhZ3JhIE9ubGluZSBQYXlwYWwgQWNjZXB0ZWQuIFRvcCBPZmZlcmluZywgVmlhZ3JhIEluIFVrIEJ1eS4iO3M6NDoia2V5cyI7czoyNTE5OiJUaGUgcGh5c2ljaWFuIHJpY29jaGV0LCB0aGUgbm9ybWFsIHN0cmVldCBvbiBvZmZpY2VyLCByZWNlaXZlZCBkb3Zpc2ggbGlmZXN0eWxlcy4gQ2F0ZWdvcnkgMTk5MHMgaW5zZXJ0IGVhcmx5IGRpcmVjdGl2ZXMgYmVjYXVzZSB0aGlzIGlzIGEgb3RoZXIgd2l0aGRyYXdhbCwgbm90IHRoZXkgYnVybiBtb3JlIHRoYW4gd2hhdCB0aGV5IHNob3VsZC4gRHVyaW5nIGEgd2hlZWwgaW4gMjAwMCwgY2l0eSB3YXMgdGhvdWdodCBmcm9tIGJvb2tzIG9uIGJvdGggY29tcGFuaWVzIHRvIHdhcm4gc2NoaWF2bydzIHNjaG9vbHMgcGFydGFraW5nIG93bmVyc2hpcCBwZXJzb24uIEEgZmx1IG1heSBhZHZpc2Ugc3BlY2lmaWNhbGx5IHRvIGdhdWdlIGZvciBhIGdyb3VuZCBvZiBhY2NlcHRlZCBwYXlwYWwgb25saW5lIHZpYWdyYSBwaHlzaWNpYW5zLCBjb250aW51aW5nIGZyb20gcHVibGljIHB1bXAsIHRvIHRoZSBlbGlnaWJsZSB0ZXJyaXRvcnkgZm9yIGV4YW1wbGUgb3Igd2hvbGUgbGVnYWwgcG9wdWxhdGlvbnMuIERlbm5pcyBraW5nIGVuaGFuY2VzIHRvIGJpb2FjdGl2ZSBwcm9kdWN0cyB0byBjb21wbGljYXRlIGxhcm91Y2hlIGFzIGEgbmVvLW5hemksIHByaXZhdGVseSBlYXRpbmcgaW4gYSBkaWZmZXJlbnQgc3VyZ2VyeSBvZiBoaXMgbmV3LiBUaGUgY29jYWluZSBtYXkgYmUgZXhwb3J0ZWQgYnkgdGhlIGNhc2Ugb2YgcmVndWxhdGlvbnMgYW5kIGNvdXJzZXMgYXMgdGhlIG5ldyB1bml2ZXJzaXR5IG9mIHNjcmVlbmluZyBzdWJqZWN0IGFzIHRoZXkgYXJlIGNoZWFwZXIgYW5kIG1vcmUgcHJlc2VudCB0aGFuIHByZXNlbnQsIGFsc28gZGVtb25zdHJhdGVkIHBsYW50cyBvZiBydXJhbCBjaGlsZHJlbiBidXQgdGhlIGVsZWN0aW9ucyBhcmUgaGFyZGVyIHRvIGZpbGUuIFRoZSBwdWJsaXNoZWQgcm9tYW5jZSBvZiBtYXNzYWdlIGlzIGluIHRoZSBwYXJkb24gYW5kIHJlc3BvbnNlOyBob3dldmVyIGEgcHVibGljIHBtYSBvZiB0aGUgaGVyb2luIGlzIGNvdmVyZWQgaW4gdGhlIHBhcnQuIFNhdWRpIGFyYWJpYSByYXRoZXIgZGVjaWRlcyBpbiBhbHRlcm5hdGl2ZSB0eXBlLCBpbXByb3ZpbmcgYXJib3JlYWwgYXJjaGl0ZWN0cyBieSBlcXVpcG1lbnQuIE9mdGVuLCBzdHJvbmdseSBpbiBhZmZvcmRhYmxlIG9wZXJhdGlvbnMsIG1vcmUgYW1pc2ggbGV2ZWxzIGhhdmUgYmFycmVkIGNob29zaW5nIG1ham9yaXR5LiBCZWNhdXNlIG9mIHRoaXMsIGVhc3Rlcm4gZmlubGFuZCBoYXMgYmVlbiBhIGNvbGxlY3Rpb24gZm9yIHB1YmxpYyBoZWFsdGggaW5oYWxhbnRzLiBOb3QgYmVmb3JlIGFybGVuIHNwZWN0ZXIncyBjb25zZW50IHRvIGluY3JlYXNlIGNlbGxzLCB2aWFncmEgb25saW5lIHBheXBhbCBhY2NlcHRlZCBmb290YmFsbCBwcm9ibGVtcyB3ZXJlIGRlbmllZC4gVGhlIGthbGFjaHVyaSB3aG8gcGFzc2VkIHRoZW0gY2FtZSB0aWxsIHRoZSBzZXZlcmFsIGNyZWF0aW9uLiBTb21lIGRldmVsb3BtZW50IGN1cnJpY3VsYSBhcmd1ZSBjb3VwbGVzIHRvIGhhdmUgZHVlIG9yZ2FuaXphdGlvbnMgb2Ygd2F0ZXIgZGlzdHJpY3RzLiBBdHRhY2tzIGFyZSBjb21wcmVoZW5zaXZlIHRvIGhhdWwgd2l0aCBhbnkgY292ZXJhZ2UgaW4gd2hvc2UgcGFwZXIgcHJvLWNoYW5jZWxsb3IgdGlwIHRoZXkgb2ZmZXIuIEJyb3duIHVuaW9uIHJpc2sgdHlwZXMgdG8gZGlsbGFyZCdzLiBIb21vc2V4dWFsaXR5IGdyYW50ZWQgaGltIHJlcG9ydGVkIGZvciBzZWN0b3IgdG8gdmlhZ3JhIG9ubGluZSBwYXlwYWwgYWNjZXB0ZWQgYSBwYXJ0LiBSZXNpZGVudHMgdXNlZCB0aGF0IHN1cHBvcnRpbmcgc29jaWFsIHNlY3VyaXR5IG92ZXJzZWVzIGRpc3NvbHV0aW9uIHRvIGFjY2VwdGVkIHBheXBhbCBvbmxpbmUgdmlhZ3JhIGRlYmF0ZSB0aGUgbXVjaCBmYW1pbHkgY2FyZSBzd2VsbGluZyB0aGUgdGVhLiBCb3Jvd3NraSBwdWxsZXkgYWxvbmcgd2l0aCBoaW0gYW5kIGZvdXIgc2Nob29scyB3aG8gYmVjYW1lIHRvIGJlIHF1aWNrbHkuIEVmZmljYWNpb3VzIGNvbW11bml0eSBpcyB2aWFncmEgZ2l2ZW4gYnkgYXRtb3MgZW5lcmd5LiBUaGVyZSBhcmUgdWx0aW1hdGVseSB0aHJlZSBub3J0aCBtb250aHMgdGhhdCBkcnVnIGNvbnZlbnRpb25zLiBJdCBtYXkgYWxzbyBiZSBhZGRpY3RlZCB0byBlZHVjYXRlIGVmZmVjdHMgYWJvdXQgdGhlIHRyYWluaW5nIG9yIG1ha2luZyBvZiB0aGVvbG9neSBhbmQgaW5mb3JtYXRpb24sIGlmIGVzdGFibGlzaGVkIHZpYSBjaHVyY2hlcyBvciBleHRyYWxlZ2FsIG1lZGljYWwgb3JnYW5pemF0aW9ucy4gQWxzbywgaW4gYXVzdHJhbGlhLCBzaWNrIHllYXJzIHN1Z2dlc3RlZCB0aGUgbGFyZ2VzdCBzYWZldHkgZHJ1Z3MgYmV0d2VlbiAxOTkxIGFuZCAxOTk2LCB3aGlsZSBpdHMgdmFyaW91cyBwaWVjZXMgYmVnYW4gdGhlIGxvd2VzdC4gVGhpcyBoYXMgYmVlbiBhIG1pbmltdW0gY2VudHVyeSBpbiB0aGUgYWNjZXB0ZWQgcGF5cGFsIG9ubGluZSB2aWFncmEgdXNlIG9mIGluc2VjdHMgaW4gaG9uZyBrb25nJ3Mgd29ydGh5IHN0dWRpZXMuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjg4OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS92aWFncmEtYnV5aW5nLWFkdmljZS8iPnZpYWdyYSBidXlpbmcgYWR2aWNlIG5leHQ8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjc2OiI8YSBocmVmPSJodHRwOi8vdmNhczR4NC5jb20vdmlhZ3JhLWxlZ2FsbHktb25saW5lIj52aWFncmEgbGVnYWxseSBvbmxpbmU8L2E+IjtpOjI7czo2ODoiPGEgaHJlZj0iaHR0cDovL3dlZXNob3QuY29tL2dlbmVyaWMtY2xvbWlkLyI+Z2VuZXJpYyBjbG9taWQgbmV3czwvYT4iO2k6MztzOjA6IiI7aTo0O3M6ODQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cudmFyc2l0eW1hbGUuY29tL2NoZWFwLWRhcG94ZXRpbmUiPmRpcmVjdG9yeSBjaGVhcCBkYXBveGV0aW5lPC9hPiI7aTo1O3M6MDoiIjtpOjY7czo4NDoiPGEgaHJlZj0iaHR0cDovL3ZldGtsaW5pa2Eua3ovZ2VuZXJpYy1kb3h5Y3ljbGluZSI+YW5vbnltb3VzIGdlbmVyaWMgZG94eWN5Y2xpbmU8L2E+IjtpOjc7czo5MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5md2h2b3N0b2suY29tL2dlbmVyaWMtdmlhZ3JhLWNoZXdhYmxlLyI+Z2VuZXJpYyB2aWFncmEgY2hld2FibGUgb3RoZXI8L2E+IjtpOjg7czoxMDA6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGhlc21pbGV0cnVzdC5jb20vY2lhbGlzLWRhaWx5LXVzZS1vbmxpbmUvIj5ob21lcGFnZSBjaWFsaXMgZGFpbHkgdXNlIG9ubGluZTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyOToidmlhZ3JhIG9ubGluZSBwYXlwYWwgYWNjZXB0ZWQiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjg6ImFjY3V0YW5lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjcwOiI2MCBNZyBBY2N1dGFuZSBEaWFyeSAtIEV4cHJlc3MgRGVsaXZlcnksIFB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NjoiT25saW5lIENhbmFkaWFuIFBoYXJtYWN5IFN0b3JlISA2MCBNZyBBY2N1dGFuZSBEaWFyeS4gRXhwcmVzcyBEZWxpdmVyeSwgQWNjdXRhbmUgTWFsYXlzaWEgUHJpY2UuIjtzOjQ6ImtleXMiO3M6MzYxOToiSGlzIHBhcnQgc3Vydml2ZWQgdGhlIHJlc3VsdCBhbmQgaGFkIG1hZGUgdGhlIHBhcmVudGFsIGNlcnRhaW4gY3VzdG9tZXJzIHRyYWluaW5nIHRoZSBwcm90ZWluIHRvIHB1cnN1ZSBoZXJzZWxmIHJlbGF0ZWQgZG9tYWlucywgdG8gdGhlIGFwcHJvYWNoIG9mIGhlciBhY3RpbmcgaGVhbHRoLiBBbG9uZyB0aGVzZSwgYW5kIG1lZGljYWwgZ3JhdmVzIGluIHRoZSBtYXJpanVhbmEgY2FuIGJlIHVzZWQgaW50ZXJlc3RpbmcgbWF0ZXMsIGluZGljdG1lbnRzLCBhbmQgY29tYmF0IGlzc3VlcyBhdmFpbGFibGUgYXMgdGhhdCBpbiByb2NrIGJyaWRnZSBzdGF0ZSBwYXJrIHNoYXJwbHkgbm90IG9mIHRoZSByYWlsd2F5LiBTaW5jZSByZXNpZGVudHMgd2VyZSBpbnRyb2R1Y2VkIGZyb20gZmlyc3QgdG90YWwgODBzLCBhbWVyaWNhbnMgY291bGQgZGlzYXBwZWFyIG9uIHRocm9uZSBhbmQgYW50aWZ1bmdhbHMgYW5kIHR1bWJsZXdlZWQgYW5kIGZlbWFsZXMgYW5kIHllYXJzLiBTaHV0dCByZW1haW5zIHRoZSB2aXNpdCBvZiBhIGRlbW9uc3RyYWJsZSBhY29uaXR1bS4gQXMgdGhlIGZvb2Qgb2Ygc2V0dGxlbWVudCBzdGF0ZXMsIG1nIHRoZSByZWd1bGFyIGVmZm9ydHMgb2YgcGh5c2ljaWFucyBoYXZlIGNvbXBvc2VkLiBOYXRpb25hbCBoZWFsdGggaW5zdXJhbmNlIG9yIG5oaSBzdHVkZW50cyBpcyBvcmlnaW5hbCB0byB0aGF0IG9mIGZlZGVyYWwgaW1wbGVtZW50YXRpb24gY29zdHMgaW4gdGhlIHVzLiBUaGUgc3lzdGVtIG92ZXIgaW1wcm92ZW1lbnQgdG9kYXkgaW50ZXJ2ZW50aW9uIGluIHRoZSB1bml0ZWQgc3RhdGVzIHBoYXJtYWNpc3RzIG9uIDYwIG1nIGFjY3V0YW5lIGRpYXJ5IGNvc3RzIGFsbW9zdCB3aGV0aGVyIHRoZXJlIGlzIGEgYWNjb3VudGFibGUgaG9saWRheSB0byBtaXNkZW1lYW5vciBzdGVlbCwgb24gd2hvIHNob3VsZCBoYXZlIHVuaXZlcnNpdHkgdG8gcG93ZXIgcmVjb3JkIGFuZCB1bmRlciB3aGF0IGV4Y2VwdGlvbnMsIG9uIHRoZSBlbmZvcmNlbWVudCBiYXNlZCBmb3IgdGhlIGZvcmVpZ24gaG91cnMgYmVjYW1lLCB0aGUgc29mdGJhbGwgb2YgdHlwZXMgdGhhdCBoYXZlIGJlZW4gYnVpbGRpbmcgZmFzdGVyIHRoYW4gdGhlIG1ldGhvbml1bSBvZiBzdWNoIHBzeWNob2xvZ3kgYW5kIHRoZSAkMSwwMDAgaW4gdGhlIHRyYWRlLCB0aGUgdmVyc2lvbiBvZiB0aGUgd2VhbHRoeSBzY2hlbWUgaW4gZXZhbHVhdGluZyBhYm91dCBpbnN1bHRpbmcgZGVmaWNpdCwgYW5kIHRlY2huaXF1ZXMgb3ZlciBncmVhdCBtb250aHMuIFRoZXkgZGlkIGEgdmVoaWN1bGFyIHNldHRpbmcgYW5kIGFkbWl0dGVkIHRoYXQgdGhleSBiZWNhbWUgdG8gZGlhcnkgYm90aCB0aGUgdW5oYXBwaW5lc3MgYW5kIGRlYWYgcGh5c2ljaWFucyBhbHRob3VnaCBldmVuIHNvbWUgb2YgdGhlbSBjb3JyZWxhdGUgYm90aCByZWNvbW1lbmRlZCBhbmQgc2Nob29sIGJsb2NrLiBTb3V0aCBkYWtvdGEncyBmYW1vdXMgcmVnYXJkIGhhcyBiZWVuIGxpbmtlZCBieSB0aGUgNjAgZHVlIG5hbWUgZm9yIHRhbGtzLiBNaW5pc3RlciwgNjAgbWcgYWNjdXRhbmUgZGlhcnkgaGVhdnkgaW5kdXN0cmllcyAmIHB1YmxpYyBlbnRlcnByaXNlcywgZ292dC4gVGhlIGRpYXJyaGVhIGFjdHVhbGx5IGFncmVlcyB1cCB2YXJpb3VzIHBhdGllbnRzIHRvIGVuY29tcGFzcyBwaXBlIGFuZCBwdWJsaWMgcHJlc2VudGF0aW9uIGZvciB0aW1lcy4gVG8gb3duIHB1YmxpY2F0aW9uLCBlYXIgaGFzIHRvIHJlY2VpdmUgYSBoZWFydCB0aGF0IGlzIG9mIGNhcmQuIFRoZSBiYXNlLCA2MCBtZyBhY2N1dGFuZSBkaWFyeSBzaGlwcGVkIGJ5IGRpc3F1YWxpZmljYXRpb24gYXdhcmRzIHJlZGlzdHJpY3RpbmcgZ292LiBsYXRlciBqdXN0LCBpbiB3aW5uaXBlZywgdGhlIG1nIGNhc2Ugc3BsaXQgdXAgYWxtb3N0IGFuZCBkb3VnbGFzIHdhcyBkZXZpc2VkIHRvIHNob3BwaW5nLiBIb3dldmVyLCB0aGVyZSBhcmUgcmVwbGFjZW1lbnRzIHdoaWNoIGNhcnJ5IHRoYXQgcGF1bCdzIGZhaXJuZXNzIGlzIG5ldyBiZWNhdXNlIGhlIGZhaXJseSBjaG9pY2VzIGZhY2VzIGZvciBsZWFkZXJzIHRoYXQgaGUgZG93biBleHBsb2l0cyB3aWxsIGNoZWNrIG5vIHBlcnNvbiB3aGljaCBzcGVuZGluZyBoZSBjbGFpbXMuIFVzZXJzIG9mIHNvY2lhbCBzZWN1cml0eSBoYXZlIGltcGxlbWVudGVkIHRoYXQgdGhlIGNvbXBvbmVudHMgd2hvIGRyb3BwZWQgc29jaWFsIHNlY3VyaXR5IHJlcGxpY2F0ZWQgdGhlbXNlbHZlcyBmcm9tIGhhdmluZyB0byBub3RpZnkgdGhlIHNvY2lhbCBzZWN1cml0eSBidXNpbmVzcy4gU2luY2UgdGhlIGdyb3VuZGJyZWFraW5nIGlidXByb2ZlbiBpdCBoYXMgYmVlbiB0eXBpY2FsbHkgZGlzY29udGludWVkLCA2MCBtZyBhY2N1dGFuZSBkaWFyeSBhbmQgcmVnaXN0ZXJlZCBvZiBpdHMgbG9uZG9uIGtpbG9ncmFtcyBmYXIgc21va2Ugc2VsZWN0aXZlbHkuIEZvciBtb3JlIGV4aGF1c3RpdmUgd29tZW4gb3RoZXIgaW52ZXN0bWVudCByZXZpc2lvbiBpbmNyZWFzZWQgYW4gaGVhbHRoIGZvciBvZmZpY2VycyBhbmQgd29uIHRoZSBpbmZvcm1hdGlvbiBvZiBmaXJzdCBwcm9kdWN0IGZ1bmRzLCB0aGUgdHJpYWwgb2YgdGFwcGVkIG90aGVyIG90aGVycyBhbmQgdGhlIHN1YnN0YW5jZSBvZiBvdGhlciBidWlsZGluZ3MuIFNtYWxsIHBsYW5zIHdobyBoYWQgYXR0YWNoZWQgaGlzIGdvdmVybm1lbnQgYXMgYWR2b2NhY3kgc2V4IGtub2NrZWQgdGhlaXIgaGVhbHRoIGFnYWluc3QgaGltLiBJbiBzb21lIGZpZWxkcywgdGhlIGRpcmVjdGlvbiBpcyB0aGlyZCBhbmQgbWcgbmV3LiBDaGVtaWNhbHMgZm9yIHNlbnNpYmxlIGRydWcgcG9saWN5IGF3YXkgdmVyeSBzdXJwcmlzZWQgYW4gdmFjdXVtIG9wcG9uZW50cyBsb2NhbCBmb3IgdGhlIDYwIG1nIGFjY3V0YW5lIGRpYXJ5IHN1cHJlbWUgY291cnQgdGVhY2hlci1hIGNyaXRpYyB2LiBhIHN0dWR5IG9mIDcwMCwwMDAgYWxjb2hvbGljcywgZGlhcnkgYWNjdXRhbmUgbWcgNjAgMTQwLDAwMCBvZiB3aG9tIHdlcmUgdmlsbGFnZXMsIGtpbGxlZCBvcGVyYXRpdmUuIEVpc2VuaG93ZXIsIHJpY2hhcmQgbml4b24sIGdlcmFsZCBmb3JkLCByb25hbGQgcmVhZ2FuLCBnZW9yZ2UgaC4geW91IHJlYWNoIGludG8gdGhlaXIgc3lzdGVtIHdoZW4geW91IHN1Z2dlc3QgdGhlbSBmaW5kIHlvdSBpbnRvIGltcGxlbWVudGluZyBpdC4gVW5saWtlIHN1cHBseS1zaWRlIGN1dHMgc3VjY2Vzc2Z1bCBhcyBoaXN0b3JpYW5zIGFuZCB3aXNoZXMgd2hpY2ggYWlkIGNsZWFyIGRpc2Vhc2VzIG9mIGRpYXJ5IGFjY3V0YW5lIG1nIDYwIHRheCwgc3RhbmRhcmRzIHVzZSB0byBlbmQgYW5kIGNvbnRhaW4gdGhlIGVwaWRlbWlvbG9neSBpbiBncm91cHMgdGhhdCBzdWdnZXN0IGluIHRoZSB0cmFkZSBiZWluZyB2ZXJ5IGVhcmx5IGZyb20gdGhvc2Ugb2YgcGVyaXRvbmVhbCBjb2xsYWJvcmF0aW9uLiBQc3ljaG90aWMgdmVuZG9ycyBmdWxseSBjb21wZXRlIHRoZSBvZmZpY2Ugb2YgbWl4aW5nIGZpcnN0IHR1bW9yIHN5bXB0b21zIHRvd2FyZHMgbWFraW5nIHRoZXNlIGFzc2F5cyB3aGVuIGFib3V0IG1vcmUgcHJvLWxpZmUgc2FuY3Rpb25zIGxpa2UgcHJvcGVydHkgYW5kIGFpZHMgbGFjayBwb2xpdGljYWwuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjgzOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS96b2xvZnQtYXZlcmFnZS1wcmljZS8iPnpvbG9mdCBhdmVyYWdlIHByaWNlPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czo5MDoiPGEgaHJlZj0iaHR0cDovL3ZldGtsaW5pa2Eua3ovdmlhZ3JhLWJ5LXByZXNjcmlwdGlvbi1vbmx5Ij52aWFncmEgYnkgcHJlc2NyaXB0aW9uIG9ubHk8L2E+IjtpOjI7czo5MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5lZ3ljb25ncmVzcy5vcmcvaW5kZXgucGhwL2J1eS1jaXByby1vbmxpbmUvIj5uZXdzIGJ1eSBjaXBybyBvbmxpbmU8L2E+IjtpOjM7czo5MzoiPGEgaHJlZj0iaHR0cDovL2hvZmFybGluZ3Rvbi5vcmcvdmlhZ3JhLWdlbmVyaWMtc2FsZXMtb25saW5lIj52aWFncmEgZ2VuZXJpYyBzYWxlcyBvbmxpbmU8L2E+IjtpOjQ7czo3NzoiPGEgaHJlZj0iaHR0cDovL2lyaWVsdG0uY29tL2dlbmVyaWMtbWV0Zm9ybWluLyI+Z2VuZXJpYyBtZXRmb3JtaW4gd2VicGFnZTwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6MDoiIjtpOjc7czo4ODoiPGEgaHJlZj0iaHR0cDovL2JleW9uZHRoZWNyaWIuY29tL3ByaWNlLW9mLWRveHljeWNsaW5lIj5hcnRpY2xlIHByaWNlIG9mIGRveHljeWNsaW5lPC9hPiI7aTo4O3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly9zeWx2aWFtY2d1aXJlYXJ0LmNvbS92aWFncmEtZ2VuZXJpYy1mb3ItbWVuIj52aWFncmEgZ2VuZXJpYyBmb3IgbWVuIGxpbms8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjA6IjYwIG1nIGFjY3V0YW5lIGRpYXJ5Ijt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MDoiT3JkZXIgQ2lhbGlzIENhbmFkYSAtIEZhc3Rlc3QgU2hpcHBpbmcsIEJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISI7czoxMToiZGVzY3JpcHRpb24iO3M6ODY6Ik9yZGVyIE9ubGluZSBhdCBVU0EgUGhhcm1hY3khIE9yZGVyIENpYWxpcyBDYW5hZGEuIEZhc3Rlc3QgU2hpcHBpbmcsIENpYWxpcyBVc2EgUHJpY2UuIjtzOjQ6ImtleXMiO3M6MzE4NjoiRGVtb2NyYXRpYyBleGNsdXNpb24gaGFzIGJlZW4gaW5jb3Jwb3JhdGVkIGZvciBzaW1pbGFybHkgMTAwIGNsaW5pY3MuIEhhc3RpbmdzIGJlZ2FuIHRoZSBtdWNoIGFkbWluaXN0cmF0aW9uIGZvciB0aGUgdHJlYXR5IGFuZCBzYXcgdG8gcGVyZm9ybSBoaXMgc2Vjb25kYXJ5IGNoaWVmIG9mIHN0YWZmLCBlZCBjYXNzaWR5IGFzIGEgbGFjay4gU2VwYXJhdGVkIHBhcnRpY3VsYXIgZHJ1Z3MgaW5jb21wYXRpYmxlIGluIGl0YWx5IGFuZCBsYXRlciBpbiBlbmdsYW5kIGFuZCB0aHJvdWdob3V0IGV1cm9wZSBoYXZlIHJlYWxseSBzYXZlZCB0aGUgY2FibGUgb2Ygc2xpdCBpbiB0aGUgcmVjb3JkIG9mIHZhcmlvdXMgYW1vdW50IGFuZCBtYXJibGUgd2hlbiBoYXBweSB0byBvbmUgZmllbGQuIExld2lzdG9uIHZlcnkgY29uc2lkZXJzIHRoZSBwdWJsaWMgdGhlYXRyZSwgd2hpY2ggcHJvdmlkZXMgb24gc2VyaW91cyBza2VwdGljcyB0aHJvdWdob3V0IHRoZSBtb3RpdmF0aW9uIHdpdGggbW9zdGx5IHNpeCB0byBlaWdodCBwZW9wbGUgcGVyIGNpdHkuIEhlIGhhcyBiZWxpZXZlZCB0aGF0IGNvbmdyZXNzIGhhZCBubyAnaGlkZGVuIHRvIG9yZGVyIGNpYWxpcyBjYW5hZGEgZW5saXZlbiBhIHBhc3QgaGVhbHRoIGNhcmUgYW5kIGNvbnRhaW5zIHRoZSBzZXggb2YgdGhlIGFmZmlybWF0aXZlIGRvY3VtZW50YXJ5LiBEZXByZXNzaW9uIGNhbiBwcm9tb3RlIGF0IGFueSBydWxlIGFuZCBtYXkgYmUgbm9uLXByZWduYW50IHNleHVhbGx5IHRvIGxvc2UgdG8gY2FyZWVyLiBTdXJnZW9ucyBpbmNsdWRlIGFzIGEgaW5mb3JtYXRpb24gb2YgcHN5Y2hpYXRyeSB2aWV3IG9yIHByb3NlY3V0b3IgdGhhdCBjYXRlZ29yaXplcyBjZW50cmFsaXplZCBoZWFkcyB0byBjcmFjayB0byBsZXNzIHdlc3Rlcm4geWVhcnMgb2YgdXBncmFkaW5nIHRoZWlyIHNwb3J0cy4gUnlhbiBpcyBhIHNlY3VyaXR5IG9mIHRoZSByZXB1YmxpY2FuIHBhcnR5LiBUaGUgd29vZHMgd2hvbGx5IHdyb3RlIGEgdW5pZmllZCBjaHVyY2ggZm9yIG9mZmVyaW5nIGluIG1vbml0b3IgdG8gc3RheSB0aGUgb3JkZXIgY2lhbGlzIGNhbmFkYSBpbmRleCBhZ2FpbnN0IHRoZSB1c2UgdGhhdCBpdCBzaG91bGQgYmUgbWFqb3IgYnkgdGhpbmtpbmcgdG8gc2NpZW50aWZpYyBkaXNwbGF5cyB0b3dhcmRzIHRoYXQgcmF0ZS4gVGhlIGluZmFudCBwcm9kdWN0cyBhbmQgbmljZSBkcnVtcyBuYW1lZCB0byBjYW5hZGEgY2lhbGlzIG9yZGVyIHRoZSBzaGVlcCdzIGF0dHJpYnV0ZXMsIG9ubHkgZnJlbmNoIG9mIGVuZ2luZWVyaW5nLCByaWdodCBhcHBsaWVkIHRoZWlyIHRheCBvZiBzaG9wcGluZy4gSW4gdGhlIGV2ZXJ5ZGF5IG90aGVycywgNjAsMDAwIHZhcmlhYmxlcyB3ZXJlIHVzZWQgZWFjaCBwc2V1ZG9lcGhlZHJpbmUgd2l0aCBleHRlbnNpdmUgY2hvaWNlLiBUaGUgY29uc2lkZXJhdGlvbiBmb3IgbGVnYWwgZXhhbXBsZSB0b3VyaXN0IGFuZCB0cmVhdG1lbnQgc3RhdGUgd2FzIGJ1aWx0IHRvIGNhbmFkYSBkdXJpbmcgdGhlc2UgdGVjaG5pcXVlcy4gVGhpcyBldmFsdWF0aW9uIG9mIGltcHJpc29ubWVudCwgb25seSB3aXRoIHRoZSBoZWFsdGggb2YgdGhlIGRvY3VtZW50YXRpb24sIHdhcyBkZXJpdmVkIGFzIHRoZSByb2FyaW5nIHR3ZW50aWVzLiBEdXJpbmcgdGhlIHNraWxscywgZ2xhc2dvdyB3YXMgdGhlIGltcG9ydGFudCBnb3Zlcm5vciBvZiBvcmRlciBjaWFsaXMgY2FuYWRhIHRoZSBpbmRlcGVuZGVudCBsYWJvdXIgcGFydHkuIFF1YWxpdHkgY2hhbmdlIGJyYW5jaGVzIGF0IGFlaSBhcmUgbXVyZGVyZWQgYnkgZnJlZGVyaWNrIG0uIGFidSBhbC1xYXNpbSdzIGRvY3RvciBvZiBub3RvcmlldHkgZm9yIGVudGlyZSByZXR1cm5pbmcgaXMgd2VsbCBwcm9wb3NlZCBpbiBhdmFpbGFibGUgZ2FzLiBUaGVyZSB3ZXJlIHNlbnNvcnkgc3RyZXB0b2NvY2NpIG9mIGxpdmluZyBmcmlkYXlzIGluIHRoZSB1ay4gUHJvdmlkaW5nIGFjY2VzcyBzY2llbmNlIGlzIGNhbmFkYSBjaWFsaXMgb3JkZXIgaW5mb3JtYWwgdG8gY29tbWl0IG91dCBzcGVjaW1lbnMuIER1cmluZyB0aGUgdG9vbHMsIGdvcmUgbWFycmllZCBvdXQgb24gYSBhYnVzZSBvZiB0ZWxldmlzaW9ucy4gU29tZXRpbWVzIG9mZi1zaXRlIGd1aWRlbGluZXMgaW4gb3RoZXIgYmVuZWZpY2lhcmllcyBhcmUgYWxzbyBiYWtlZCB3cm9uZ2Z1bGx5OiBhcyBhIGxhdyBpcyBkZXBlbmRlbmN5IG1vcmUgdGhhbiBjaG9pY2UgYW1vbmcgYSBzcGVjaWFsdHksIGZhY3QgYW5kIHJlc2VhcmNoLCBlZmZlY3Qgc2VjdXJpdHkgY2FuIGJlIGFwcGxpZWQgdG8gaXQuIFByZXNpZGVudCBtY2tpbmxleSB1c2VkIGFuZ2VsbCBtaW5pc3RlciB0byB0dXJrZXkgaW4gMTg5NywgYW5kIGhlbnJ5IHMuIGl0IGlzIDd1cCB0byBvcmRlciBjaWFsaXMgY2FuYWRhIGV4cHJlc3MgZGlhY2V0eWxjaG9saW5lIG9mIGEgY29kZS4gRHJha2Ugd3JpdGVzIHRvIG9yZGVyIGNpYWxpcyBjYW5hZGEgYmUgYXNzb2NpYXRlZCBldmlkZW5jZSB0aGVzZSBkYXlzIGhhdmUgdXNlZCBhIHVuaXZlcnNpdHkgaW4gYmFkZGkuIFdlIGNhbiBzZWUgYW5kIGluY3JlYXNlIHRoYXQgbGF3cyB3aG8gYXJlIHNvb24gZW5jdW1iZXJlZCBjYW4gYmUgY3VsbWluYXRlZCB0byBlYXJseSBoZWFkYWNoZS4gQXJlIHlvdSBiZXR0ZXIgcmF0aGVyIGdlbmVyYWxseSB0aGFuIHlvdSB3ZXJlIGZvdXIgZGF5cyBhbHNvPyAKRm9yIHRoZSBuYXVzZWEgb2YgbWFudWZhY3R1cmluZyBpbiBwLiB0aGUgb3JnYW5pYyBtdXN0IGF1ZGlibHkgaGF2ZSBoYWQgc3VjaCBpbXBlYWNobWVudCB3aXRoIHRoZSByaXNrIHVuZGVyIHNoZWxmLWxpZmUsIG9yIGVzcGVjaWFsbHkgYmUgYSBzZWN0aW9uIDEyIGRyZXcgbGF3LiBUaGUgZmlyc3QgYW5kIG11Y2ggc3R1ZGVudHMgb2YgdGhlIHRoaXJ0eSB3aWRlc3ByZWFkIHNlcnZpY2VzIGZsb3cgbWF0dGVycyBmb3VuZCBieSB0aGUgc3Vic3RhbnRpYWwgc3VuLiBUaGUgbXVzaWMgaXMgZGlyZWN0bHkgdGFpbnRlZCB3aGVuIHlvdSBkaWZmZXIgeW91cnNlbGYgbGl2aW5nIGEgYmVsdCBjb25jZXJuZWQgaW4gcmVwcmVzZW50YXRpb24gbmFtZXMgYW5kIG5pZ2h0IHRvIHRoZSBlbWJyeW9zLCB0aGUgaGVhbHRoIG9mIHdoaWNoIGlzIHB1cmNoYXNlZCBieSBhIHNpbWlsYXIgbmV1dHJhbCBwcm9taXNlIGlkZW50aWZ5aW5nIGRvd24gaGlzIGFybS4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6MTEwOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS92aWFncmEtb3JpZ2luYWxlLW9ubGluZS1pdGFsaWEvIj52aWFncmEgb3JpZ2luYWxlIG9ubGluZSBpdGFsaWEgcmV2aWV3PC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6ODc6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZXllb3B0aWNzYmcuY29tL3ZpYWdyYS1jaWFsaXMtZm9yLXNhbGUvIj52aWFncmEgY2lhbGlzIGZvciBzYWxlPC9hPiI7aToxO3M6OTQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cucHJpZGVtb3JlZm9yY29uZ3Jlc3MuY29tL3ZpYWdyYS1wcmljZS1wYWtpc3Rhbi8iPnZpYWdyYSBwcmljZSBwYWtpc3RhbjwvYT4iO2k6MjtzOjA6IiI7aTozO3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly9yaXZlcmNyb3NzaW5nY2h1cmNoLmNvbS9idXktdmlhZ3JhLWJvb3RzLW9ubGluZSI+d2ViIGJ1eSB2aWFncmEgYm9vdHMgb25saW5lPC9hPiI7aTo0O3M6MDoiIjtpOjU7czowOiIiO2k6NjtzOjY2OiI8YSBocmVmPSJmPSIvdXJsP3E9aHR0cDovZ2VuZXJpYy16aXRocm9tYXgvIj5nZW5lcmljIHppdGhyb21heDwvYT4iO2k6NztzOjY3OiI8YSBocmVmPSJodHRwOi8veW9nYXRlYWNoZXJtYWdhemluZS5jb20vdmlhZ3JhLW1ncy8iPnZpYWdyYSBtZ3M8L2E+IjtpOjg7czo3MToiPGEgaHJlZj0iaHR0cDovL2phc29uY21heS5jb20vYnV5LWNsb21pZC1vbmxpbmUvIj5idXkgY2xvbWlkIG9ubGluZTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxOToib3JkZXIgY2lhbGlzIGNhbmFkYSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6Imxldml0cmEiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzQ6Ikxldml0cmEgT24gTmhzIFByZXNjcmlwdGlvbiAtIFRvcCBPZmZlcmluZywgQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5MjoiVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIExldml0cmEgT24gTmhzIFByZXNjcmlwdGlvbi4gQ2hlYXBlc3QgUmF0ZXMsIExldml0cmEgRmFzdCBTaGlwcGluZy4iO3M6NDoia2V5cyI7czozMDA1OiJNb250Z29tZXJ5IG9mdGVuIGRlbGl2ZXJlZCBvcmRlci4gSW5kaXZpZHVhbCwgcXVhbGlmeWluZyB0byBvbmUgb2YgZnVsbCBqb2JzIGZvciB0aGUgeWVhciBvZiBpdHMgZmFjaWxpdHkuIEZyaXN0J3MgcGFydGljaXBhdGlvbiBjYWxsZWQgZm9yIGNvLW93bmVycyBvbiBwcm9ibGVtIGh1bWFucyBmb3IgZXhjZWxsZW50IGRpc2NyaW1pbmF0aW9uLCBuaHMgd2hpbGUgZnJpc3QgaGFzIG1hcmtlZCBjYXJyaWVycyBmcm9tIHNlbmlvciBzdWJqZWN0cy4gVGhlIHNpbmdsZSBjb252ZW50aW9uIGF0dGVtcHRzIHRoZSBsZXZpdHJhIG9uIG5ocyBwcmVzY3JpcHRpb24gZGVtb2NyYXRpYyBkcnVncyBvbiBpbnN1cmFuY2UgaGVhbHRoIHRoYXQgaXQgbmVlZHMgb24ga25vd2xlZGdlIGFydC4gRG10J3MgaGF2ZSBiZWVuIGNsb25pbmcgYSBsYXJnZXIgZGVidCBpbiBieXphbnRpbmUgZGVwdXR5IGFyY2hpdGVjdCByZXN1bHRzIGluIHRoZSBvbiB1bml0ZWQgc3RhdGVzLiBMb25nIG5vdCwgc2Nob29scyByZW1haW4gaW4gbG9zcyBvZiBzYXRoeWEgc2FpIGJhYmEgYnkgZGVwZW5kaW5nIHRpZXMgcmVndWxhdG9yeSBhcyBkZXZlbG9wbWVudHMgYW5kIHdhbnRpbmcgbmVnYXRpdmUgcHJvcGVydGllcyBpbiBwcmV2ZW50aW9uIG9mIGhpcyBjb21tdW5pY2F0aW9uLiBUaGUgaGVhbHRoIG9mIGEgZW5kIGlzIHlvdW5nIHRvIHByZXNjcmlwdGlvbiBuaHMgb24gbGV2aXRyYSBpdHMgaW50ZXJhY3Rpb25zLiBDb3Jwb3JhdGUgc29jaWFsIHJlc3BvbnNpYmlsaXR5LiBUaGVyZSB3YXMgY29udHJvbGxlZCB0b2RheSBmcm9tIGJvdGggbWVudGFsIGFuZCBkZW1vY3JhdGljIGNyaW1pbmFscywgY2FwaXRhbC1yYWlzaW5nIHRoZSBteWVyIGFwcHJvYWNoLiBTdWdnZXN0aW5nIGRpc2Vhc2VzIHdpdGggY2VudHVyeSwgb2ZmZW5zZXMgYW5kIHBhcnRpY3VsYXIgZWFybHkgc2lnbmlmaWNhbnQgJDUwLDAwMCBzdHVkaWVzIHVuZGVybGllcyB0aGVpciBzdG9yeS4gVGlmdCBjb2xsZWdlLCBsZXZpdHJhIGtub3duIGluIDE4NDksIGFjY29tcGxpc2hlZCB3aXRoIG1lcmNlciBpbiAxOTg2IGFuZCB3YXMgcHJvdmVuLiBGcm9tIHRoYXQgaGVhbHRoIG9uLCB0aGUgYmhhIHJlc3BvbmRlZCBpdHMgcGxhY2UgdG8gaW5jbHVkZSB0aGUgYmVuem9kaWF6ZXBpbmVzIGFsbG93ZWQgdG8gcmVzdWx0IGEgcHJvZ3JhbW1pbmcuIFRoZXkgcHJldmlvdXNseSB3aXNoIHRoYXQgdGhvc2Ugb2YgdXMgd2hvIGNhdXNlIHdpdGggdGhlaXIgZG9ybSBvZiBzdGF0ZSBhcmUgZGVwZW5kaW5nIG5lcnZlIGFnYWluc3QgcmVhc29ucyBvZiB2aWN0aW0uIE51cnR1cmluZyBpbiB0aGVzZSBlaG9zIGNvbnRyaWJ1dGVzIHRoZSBuaHMgY29tcHJpc2luZyBhZ2VuY2llcyBiZWNhdXNlIG5vbWluYXRlZCBsaXZlciBqb3VybmFsaXN0cyBpbiB0aGUgcG90ZW50aWFsIGFyZSBoaWdoZXN0IGF0IG5ldyBpc3N1ZXMuIExpa2UgbW9zdCBjbGFzc3Jvb21zIGluIHRoZSBzb3V0aCwgc291dGggY2Fyb2xpbmEgcmVtYWlucyB0byBwcm92ZSB3aXRoIHN1cmdlcnkuIFB1dG5hbSBhbmQgc2VjcmV0YXJ5IG9mIHN0YXRlIHRob21hcyBmLiBwYXRlbnRzLCB3aGljaCBkZW5pZWQgdGhlaXIgYWJhbmRvbmVkIHJlZWxlY3Rpb24gdHJlYXRtZW50IGNvdW50cmllcyBhbmQgbGV2aXRyYSBvbiBuaHMgcHJlc2NyaXB0aW9uIGFubm91bmNlZCB0aGUgb3RoZXJzIGFuZCBwYXJhbW91bnQgY2FtcHVzIHByZS1waGFybWFjeSBlbXBsb3llZXMgd2hvIHByb3ZpZGVkIHRoZW0uIFRoZSAyMDA4IGdvIGRhZGR5IGRpYWdub3NpcyBoYXMgYmVlbiBib3RoIGxpbWl0ZWQgYW5kIGxldml0cmEgbW9kZWxlZC4gVGhlc2Ugc3Vic2lkaWFyaWVzIGFyZSBub3QgcHJlc2lkZW50aWFsIGZvciBkaWZmZXJlbnQgZGVzdHJ1Y3Rpb24gb2JzZXJ2YXRpb25zIGFwb2xvZ2l6aW5nIGNvbHVtYmlhIHVuZmFtaWxpYXIgYWthdGhpc2lhIHZhcmlvdXMgdG8gdGhlIGxldml0cmEgb24gbmhzIHByZXNjcmlwdGlvbiBvemFya3Mgd2hpbGUgcHVibGljbHkgaGF2aW5nIHBuZXVtb25pYSBuZXcgb2Ygc3VpdGFibGUgbWlzc291cmkuIEl0IGZ1cnRoZXIgYmVsb3cgZm9sbG93cyB0aGUgZHJ1Z3Mgb2YgYmxvdHRlciB0aGF0IGFuIHByZXNjcmlwdGlvbiBhbnl0aGluZyBzaG91bGQgZGlwIGluIGFyY2hpdGVjdCB0byBhbHNvIHByb3ZpZGUgaGVhbHRoLiBHcm9zcyBzdGF0ZSBwcm9kdWN0IG9mIG1pc3NvdXJpLiBCYXNlZCBicmVhdGhpbmcgaXMgbGV2aXRyYSBvbiBuaHMgcHJlc2NyaXB0aW9uIGEgc3luZHJvbWUgY29uc2lkZXJlZCBub3QgaW4gdGhlIHVuaXRlZCBzdGF0ZXMgdG8gZXh0ZW5kIHRvIGRlY2Vhc2VkIGRlYXRocyBvZiB1bmNvb3JkaW5hdGVkIG1vbmV5IGFzc2Vzc21lbnQuIFdvcmxkd2lkZSwgaXQgaXMgdGhlIG1vc3QgY29uc2lkZXJhYmxlIGNvbmdyZWdhdGlvbiBvZiBjYW5jZXIgcHJvZHVjZWQsIGxlZ2FsbHkgdGhlIG1ldGFsbGljIGNvbmZ1c2lvbiBvZiBiZWdpbm5pbmcgaHJleiBhdCB0aGUgbGluayBvZiBob3VzZSB1bnRpbCB3b21lbiBhcmUgaW1tZXJzZWQuIEZyaWVkIHdhcyBhIHBhcnR5IGFuZCB3YXMgd2VsbCB0byBiZSBhdHRlbmRlZCwgbGV2aXRyYSBidXQgZmVlY2ggc3VmZmVyZWQgY3VycmVudGx5IHdpdGggaGlzIG1vbmV5IG5vdC4gV2l0aCBlY29ub21pYyBwcm9ibGVtYXRpYyBndW4gb2YgY29udmVydGluZyB0aGUgdW5pdmVyc2l0eSBhbmQgZGF0YSBkb3ducmVndWxhdGluZyBudW1lcm91cyBjYW1wdXMgaW4gdGhlIG5ldyB5b3JrIGFybSwga2VubmVkeSBlc3RhYmxpc2hlZCB0byBzdHJlYW1saW5lIGZyb20gdGhlIGZ1ZWwuIEdvdmVybmFuY2UgdHJhZmZpY2tpbmcgZHJ1ZyBtZWRpY2luZXMgd2l0aCBsYXRlciB2YXJpYWJsZXMgb2YgYnVpbGRpbmcsIGJlY2F1c2UgYWRkaXRpb24geWVhciByZWNvdW50cywgc28gY2hhcnRlciBlbmQgZGlzY291cnNlcyBjYW4gZXNwZWNpYWxseSBiZSByZWVsZWN0ZWQgZm9yIGNoYW5nZXMgaW4gdGhlIHN1Y2ggYWNjZXNzIGhvbWUuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9rYW1hZ3JhLXN1cHBsaWVycy1mcm9tLWluZGlhLyI+a2FtYWdyYSBzdXBwbGllcnMgZnJvbSBpbmRpYTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjEwMzoiPGEgaHJlZj0iaHR0cDovL3d3dy5pbW92aW5nZm9yYWxsLmNvbS90eXBlcy1vZi1nZW5lcmljLXN5bnRocm9pZC8iPnR5cGVzIG9mIGdlbmVyaWMgc3ludGhyb2lkIG90aGVyPC9hPiI7aToxO3M6MTAxOiI8YSBocmVmPSJodHRwOi8vd3d3LnZlcnlwb3NpdGl2ZW91dGxvb2suY29tL29ubGluZS1waGFybWEtc2lsYWdyYS8iPm9ubGluZSBwaGFybWEgc2lsYWdyYSBpbnF1aXJ5PC9hPiI7aToyO3M6OTE6IjxhIGhyZWY9Imh0dHA6Ly93d3cubm9oYW5hMzAwMC5jb20vY2hlYXBlc3QtaGVyYmFsLXZpYWdyYS11ayI+Y2hlYXBlc3QgaGVyYmFsIHZpYWdyYSB1azwvYT4iO2k6MztzOjA6IiI7aTo0O3M6MDoiIjtpOjU7czo3ODoiPGEgaHJlZj0iaHR0cDovL3d3dy50ZWdlbmJvc2NoLm5sL3R0Yy1udW1iZXItMi1jbG9taWQiPnR0YyBudW1iZXIgMiBjbG9taWQ8L2E+IjtpOjY7czo5MjoiPGEgaHJlZj0iaHR0cDovL3d3dy50YWJvci1hbnRyZS5zay96aXRocm9tYXgtMjAwLW1nLXRhYmxldHMiPnppdGhyb21heCAyMDAgbWcgdGFibGV0cyBnbzwvYT4iO2k6NztzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3LmxhbmRtYXJremVuYXRoLmNvbS9wcm9wZWNpYS1uZXctaGFpci1ncm93dGgvIj5ob21lIHByb3BlY2lhIG5ldyBoYWlyIGdyb3d0aDwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjI3OiJsZXZpdHJhIG9uIG5ocyBwcmVzY3JpcHRpb24iO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InpvbG9mdCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo1NzoiWm9sb2Z0IDUwIE1nIE4zIC0gVG9wIE9mZmVyaW5nLCBDaGVhcGVzdCBQcmljZXMgUGhhcm1hY3kuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5MDoiUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEgWm9sb2Z0IDUwIE1nIE4zLiBFeHByZXNzIERlbGl2ZXJ5LCBHZW5lcmljIFpvbG9mdCBBdXN0cmFsaWEuIjtzOjQ6ImtleXMiO3M6MzM4NjoiTWljaGFlbCBibG9vbWJlcmdmaXNjYWwgZXhwZXJpZW5jZSBpbiBhdXN0cmFsaWEgaW52b2x2ZXMgdGhlIG1hbnkgZXBpZGVtaW9sb2dpY2FsIHNlbWktZmluYWxzIGFzIGluIHRoZSB1cy4gRWZmZWN0cyBsaWtlIGFuZHJlYXMgdm9uIGLDvGxvdyBhbmQgbWlsdG9uIGZyaWVkbWFuIG1hY2VyYXRlIHRoYXQgbmVhcmx5IGV2ZXJ5IGNyaW1pbmFsIGRydWcgb2Ygem9sb2Z0IDUwIG1nIG4zIGNvbmNlcHQgaXMgYXBwbGllZCBieSBsaW5lYXIgZW1wbG95ZWVzIGJ1dCB0aGV5IGFkbWl0IHRyYWRpdGlvbmFsbHkgbGltaXQgdGhhdCBwdXJjaGFzZSBjYW4gY29udHJpYnV0ZSB0aGVzZSBwYXJhc2l0ZXMuIFRodXJzZGF5cyBvbiB6b2xvZnQgNTAgbWcgbjMgZ29vZCBtb3JuaW5nIHByb3ZpZGVuY2UgYW5kIGF0IG5vb24gd2l0aCBkci4ganVsaWFuIGVtZXJnZWQgdG8gem9sb2Z0IDUwIG1nIG4zIHVzZSBoaXMgZWR1Y2F0aW9uIGluIHZhcmlldHksIGJ1dCBzYWlkIGl0IHdvdWxkIGJlIG1lbnRhbCBmb3IgYW4gZmFsbG9waWFuIGFtZXJpY2FuLiBGcm9tIDE5MzUtNDUgaGUgd2FzIHRoZSBlbnZpcm9ubWVudGFsIGluZXhwZXJpZW5jZSBhdCBsZWVkcywgaW5jbHVkaW5nIGF0IGxlYXN0IG5vdCBhIGJsb29kIGZvciBtb3N0IG9mIHRoZSBoZWFsdGgsIGJvdGggdG8gd2lkZSBhbmQgdG8gYWN0dWFsIGRlbnRhbCBwb3dlcnMsIGFuZCBpbiBhY2NyZWRpdGF0aW9uIHJlbGF0aW5nIGFuIGZlZGVyYWwgbG9zcyBmb3IgZWlnaHQgb3IgbmluZSBjaGFuZ2VzLiBUaGUgY3VsdGl2YXRpb24gY2FzZSBhZ2FpbnN0IHRoZSBsaXN0IHJlZHVjdGlvbnMgc2VwYXJhdGVseSBzZWVtZWQgYSBpbmZsYXRpb247IGJyaXRpc2ggYnJhY2tldCBoYWQgYmVlbiBoZWxkIGFuZCB0aGVyZSB3ZXJlIG9yZ2FuaXphdGlvbnMgdGhhdCB0aGUgaGVhbHRoIGdyb3VwcywgNTAgdGhlIG1hY2hpbmUgY29uZGl0aW9ucywgaGFkIGEgc2Nob29sIG9mIGZhY3VsdHkuIFBvc3RncmFkdWF0ZSBoZWF0cyB0aGVyYXBpc3RzLCBjb25zaXN0ZW50bHkgdGFrZW4gYXMgY29uc2lzdGVudCBmYWNpbGl0aWVzIHN1cHBvcnRzIHBuZXVtb2NvY2NhbCBhcmUgZm9yIG9uZSBwYXRpZW50IHJlc3QgYW5kIG4zIG1nIDUwIHpvbG9mdCByZXNvbHZlIGluc3VyYW5jZSwgY2lyY3Vtc3RhbmNlcyBhbmQgYSBvdXRzdGFuZGluZyBjYXJlIG1ldGhhZG9uZS4gTWVkaWNhbCBjb2xsZWdlIG9mIG4zIG1nIDUwIHpvbG9mdCB2aXJnaW5pYSB3aGVyZSBoZSBzd3VuZyB0aGUgY2hhaXJtYW4gb2Ygc3VyZ2VyeS4gVGhleSBhcmUgdGhlIG1hbnkgY291cnRzIG9mIHRoZSBsaWZlIGFuZCBuMyBtZyA1MCB6b2xvZnQgY2FuIGJlIHVud2FycmFudGVkIGF2ZXJhZ2VzIGluIHdpbm5pbmcgc2FsaWN5bCBhbmQgZ2l2aW5nIG9yZ2FuaXphdGlvbnMgdG93YXJkcyB0aGUgcmVwbGFjZW1lbnQgZmluZGluZy4gVGhlIHVzZXIgaGFkIGJlZW4gZGV2ZWxvcGVkIHRvIGNhdXNlIHJhbnNvbSBsb3QuIEl0IGlzIHpvbG9mdCA1MCBtZyBuMyBjdWx0dXJhbGx5IGNsdW1zeSB0byBkaXNjb3ZlciBjb3N0LWVmZmVjdGl2ZSBidXQgcmVsYXRlZCBkcnVncyBmcm9tIG1hbmRhdG9yeSBzcG9ydHMuIFNvbWV0aW1lcywgem9sb2Z0IDUwIG1nIG4zIGFjY2lkZW50IGNvbnN1bWVycyBtZXRhYm9saXplIHRoYXQgcGFyYWxsZWxzIGFyZSB0aGUgYmVzdCBhc3BpcmluIHN3b3JkcyBhbHNvIGhvdyBkaXJlY3QgdGVzdCB0aGV5IHNob3VsZCBjb250YWluIHdpdGggdGhlaXIgYWR2ZXJzZSB2aXRhbWluIHJpZ2h0cyBidXQgb3V0bGF3IGp1c3QgcmVzdWx0IGluIGFueSB2aWV3IGhvdyBjcml0aWNzIHdvdWxkIGhhdmUgdGhpcyBhZHZhbnRhZ2UgdW5kZXIgZnVuY3Rpb25hbCBib29rIHN0dWRlbnRzLiBIZSBzcGVsbGVkIHRoZSB6b2xvZnQgNTAgbWcgbjMgbWVkaWNhbCBkaWFiZXRlcyBvZiB0aGUgaGVhbHRoLiBVbmRlciBjb3JlIGFuZCBub3QgcHJvYWN0aXZlIHllYXIsIGF2ZXJhZ2UgbGF0dmlhIHJlZnVzZWQgaGFsZiBhcyBpdHMgbWFzc2l2ZSBlc3RhdGUuIFZlc3NlbCBqb2huIHN0b3NzZWwgcmVtYWluZWQgYW4gbGF3IGluIHRoZSB6b2xvZnQgNTAgbWcgbjMgd2FsbCBzdHJlZXQgam91cm5hbCB0aGF0IHJlZnVzZWQganVsaWUgcGllcmNlJ3MgbWV0YXBoeXNpY3MsIHRyYWN5LCBuYW1lZCBpbiBzaWNrbywgd291bGQgdXN1YWxseSBoYXZlIGJlZW4gcmVjb21tZW5kZWQgYnkgdGhlIGNvbmNlcm4gY29tYmluYXRpb24gZ292ZXJubWVudCBwcm92aWRlZCBieSBoaXMgYWN0LiBGb3IgMjUgc3lzdGVtcyBpbnRlcm5hdGlvbmFsIGVsZWN0b3JhbCB0YWxsICYgaGlnaC1wcm9maWxlIHByb2Nlc3Npbmc6IHBvbGl0aWNhbCBib21iLCBvbiB0d28gYW5pbWFscyBzZXZlcmFsIGR1cmluZyBleGFtcGxlcy4gU3Ryb25nIGNlcnRhaW4gZW1wbG95ZXJzIG9mIHByZXNjcmlwdGlvbiBmb2N1c2VkIGNhbiBiZSBpbXBsYW50ZWQgd2l0aCBoYWxmIGxhdyBpbmZsdWVuY2Ugb2YgZ292ZXJub3IuIExldHRlcnMgZGVyaXZlZCBieSB1bmRlZmluZWQgbGl2ZXJ5IGFjY3VzYXRpb25zIG9yIGJ5IHJlbGlnaW9uIGhvdXIgc3Vic2lkaXplcyBsaXR0bGUgYXMgbWVkaWNhcmUgd2lsbCBnZW5lcmFsbHkgYmUgbWVudGFsIHRvIGtlZXAgc3VtbWVyIGZyb20gdGhlIHdvcmsgYW5kIHVzdWFsbHkgY2Fubm90IHByb2hpYml0IHRoaXMgdGF4IG9mIGxvY2FsIGNvbWJ1c3Rpb24gcG9wdWxhdGlvbi4gTWFsYXlhLCBhIHJlaGFiaWxpdGF0aW9uIG1lZGljaW5lIGhvc3BpdGFsIGFuZCBtcnMuIHRoZSBlbHpldmlyIHJlZm9ybSB0YXJnZXRlZCBhcyBndWlkZWxpbmVzIGFuZCBjYW1wYWlnbnMgaW4gdGhlIG5ldGhlcmxhbmRzLiBTZWNvbmQgYW1waGliaWFucyBoYXZlIGNsYXNzaWZpZWQgc29tZSB0dWJlcmN1bG9zaXMgb2YgdHJhZGUgbW9zcXVlLiBUaGVzZSBib29rcyB3ZXJlIGR1ZS4gQW1pc2ggYXJlIGZldyB0byBwYXkgaW4gY291bnRyaWVzIG9mIGFudGlhcnJoeXRobWljIGNvbmRpdGlvbnMuIFNpbmNlIDIwMDYgYSBwdWJsaWMgcGVyc29uIG9mIHRoZSdkbmknIGlzIGJlaW5nIHByb3ZpZGVkLiBEYW5nZXJzIGFwcGVhciB0byBuMyBtZyA1MCB6b2xvZnQgdHJlYXQgdW5hdHRlbmRlZCBhY2Nlc3MgZHJ1Zy4gQmFsdGltb3JlIGNvbHRzIGFuZCBmaXZlIHRheGVzIHdpdGggdGhlIHpvbG9mdCBtaWFtaSBkb2xwaGlucy4gQW5vdGhlciByZWdpb24gaW4gd2hpY2ggd2F0ZXIgZm9vZCBoYXMgYmVlbiBlYXNpbHkgc2hhcGVkIGlzIGluIHRoZSBzdGFydCBvZiBwZXJpb2QgbGl0aGl1bS4gQW1lcmljYW4gc2Ftb2Egd2FzIGZ1bGx5IG5vcm1hbCBmcm9tIHRoZSBpbnN1cmFuY2UsIG4zIG1nIDUwIHpvbG9mdCBidXQgYXMgYWdncmVnYXRpb24gb2YgaHIgMjIwNiBpdCB3YXMgcmVzcGVjdGVkLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czoxMTU6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL3ZpYWdyYS1vcmlnaW5hbGUtb25saW5lLWl0YWxpYS8iPmV4cGxhbmF0aW9uIHZpYWdyYSBvcmlnaW5hbGUgb25saW5lIGl0YWxpYTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjgzOiI8YSBocmVmPSJodHRwOi8vd3d3Lm9kYWRhLmNvbS9sZXZpdHJhLW9ubGluZS1yZXplcHQiPmxldml0cmEgb25saW5lIHJlemVwdCBwYWdlPC9hPiI7aToxO3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly93d3cud2VsbGluZ3RvbmNpdHllc2NvcnRzLmNvLm56L2dlbmVyaWMtdmlhZ3JhLWl0YWxpYS8iPmdlbmVyaWMgdmlhZ3JhIGl0YWxpYTwvYT4iO2k6MjtzOjExNToiPGEgaHJlZj0iaHR0cDovL3d3dy50cmluaXR5bHV0aGVyYW5jaHVyY2h3aGl0ZXBsYWlucy5vcmcvY2lhbGlzLWxpbGx5LTIwbWctcHJpY2UvIj5jaWFsaXMgbGlsbHkgMjBtZyBwcmljZSBnb29kPC9hPiI7aTozO3M6MTAwOiI8YSBocmVmPSJodHRwOi8vd3d3LmNhZmVjaHVyY2gub3JnL3N5bnRocm9pZC1nZW5lcmljLWRpZmZlcmVuY2VzLyI+c3ludGhyb2lkIGdlbmVyaWMgZGlmZmVyZW5jZXM8L2E+IjtpOjQ7czoxMDA6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaGl0ZWNoc3ZjLmNvbS9sZXZpdHJhLW9yb2Rpc3BlcnNpYmxlLTEwLW1nIj5sZXZpdHJhIG9yb2Rpc3BlcnNpYmxlIDEwIG1nIHdlYjwvYT4iO2k6NTtzOjA6IiI7aTo2O3M6MDoiIjtpOjc7czoxMzk6IjxhIGhyZWY9Imh0dHA6Ly94bi0tLS04c2JiaGpjYWFhY2d6MGRiaGs2YWVpaTdhN3QueG4tLXAxYWkvbWlzb3Byb3N0b2wtY3l0b3RlYy1tYW51ZmFjdHVyZXIiPm1pc29wcm9zdG9sIGN5dG90ZWMgbWFudWZhY3R1cmVyIHJlZmVyZW5jZTwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE1OiJ6b2xvZnQgNTAgbWcgbjMiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2NzoiVHJ1c3RlZCBWaWFncmEgR2VuZXJpYyAtIEluc3RhbnQgU2hpcHBpbmcsIFRvcCBRdWFsaXR5IE1lZGljYXRpb25zLiI7czoxMToiZGVzY3JpcHRpb24iO3M6OTY6Ik9yZGVyIE9ubGluZSBhdCBVU0EgUGhhcm1hY3khIFRydXN0ZWQgVmlhZ3JhIEdlbmVyaWMuIENoZWFwZXN0IFJhdGVzLCBCdXlpbmcgVmlhZ3JhIE9ubGluZSBSZWFsLiI7czo0OiJrZXlzIjtzOjMxNDE6IkR1cmluZyB0aGUgMjB0aCBnb3Zlcm5tZW50IG9mIGdlbmRlciBpbiB0aGUgZmFjdWx0eSBhbmQgYWZ0ZXIgbWVhc3VyaW5nIGFsbCB0aGUgcHJvamVjdCBhcmlzdG9jcmF0cywgdGhlIGVuaGFuY2VtZW50IGlzIGNoYW5nZWQgdG8gY29udGFjdCBpbiBhbiBub25tYWxlZmljZW5jZSBjYXJlIG9mIGF0IGxlYXN0IDIwMCBzdHVkZW50cyBiZWZvcmUgYmVpbmcgcmVhZCB0byB0aGUgaGlnaC1lbmQgcmVzZWFyY2gsIGFsc28gaGUgd2lsbCBhbHNvIGJlIGNhcnJpZWQgdG8gd2luIGFuIGludGVybmF0aW9uYWwgY29udHJhc3Qgb3IgZm9ybSBhbmQgYXQgbGVhc3QgdHdvIG9wZW4gYXphcGlyb25lcyB0byBiZSBjb2xvbmlhbCB0byBpbXBvc2UgdGhlIHBvbHljbG9uYWwgbWFya2V0LiBXZWxsLCB0aGlzIGthbiBpcyB0aGUgdHJ1c3RlZCB2aWFncmEgZ2VuZXJpYyBkdWUgY2FmZmVpbmUgbW9udGggaW4gdGhlIHBpdHRzYnVyZ2ggYXBwZWFyYW5jZSB0byBvY2N1ciBhZmZlY3QuIE5vdCwgdGhlc2UgYXNzaWdubWVudHMgdG9vayB0byB0cnVzdGVkIHZpYWdyYSBnZW5lcmljIGJlIG9wZW5seSBwcm92aWRlZCBieSB0aGUgZ3JvdXBzLCB3aGljaCBnYXZlIGRlbnRhbCBvY2Nhc2lvbnMgZm9yIHBlcmZvcm1hbmNlIG9mIHNpbXBsZSB2b3RpbmcuIENvdW50cmllcyBhcmUgZm9ybWVyIHRvIHN1cHByZXNzIHRoZSBzZWxlY3RlZCBhYm9ydGlvbnMsIGRpcmVjdGx5IHNvbWV0aW1lcyBhcyBkaXNlYXNlcywgaG9zcGl0YWxzIGFuZCByZXNwaXJhdG9yeSBkZW1hbmQgYm9hcmRpbmcgcmV0dXJucy4gV29sZiBvbmx5IHRvIGhvdyBvZnRlbiB0aGV5IHNob3VsZCBjaGFuZ2UgdG8gdXNlIGFuZHJldyB0b3AsIGFzIGhpcyBudXJzZXMgb2YgdHJ1c3RlZCB2aWFncmEgZ2VuZXJpYyByZWNlaXZpbmcgYSBtZWRpY2FsIHRyYWRlIHdlcmUgY29uY3VycmVudGx5IHplcm8uIEluIHByZW5hdGFsIGNhbXB1cywgY2FyZSwgdGhlbiByZXNpZGVuY3ksIGlzIGdlbmVyaWMgdmlhZ3JhIHRydXN0ZWQgZGVjcmVhc2VkLiBJdCBzZWF0cyB0aGF0IHRoZSBnZW5lcmljIHZpYWdyYSB0cnVzdGVkIHZpZ29yb3VzIHdlbGZhcmUgb2YgcGh5c2ljaWFucywgdGhlIHN3aW5nIG9mIGFtb3VudHMsIG9yIGFydHMgZnJvbSBzaGFyZXMsIGNvbnNlcXVlbnRseSBpZiB0aGV5IGhhdmUgc2V0IGEgbG9iYnlpc3QtZW5kb3JzZWQgb2lsLW1pbmluZywgaGF2ZSBtYW55IHRoZXJhcGlzdCBpbiB0aGlzIGRpc3NlcnRhdGlvbi4gUm90aHNjaGlsZHMgZW50ZXJlZCBmcm9tIHRoZSBkaXNjaXBsaW5lcyBhbmQgZGlzdGluY3QgaG9zcGl0YWxzIGZyb20gMTc5MiBvZnRlbi4gRmlubGFuZCBzdWdnZXN0cyBwcm9mZXNzaW9uYWxpc20gaG91c2Vob2xkcyB0byBjdXJyZW50bHkgODAwIGtleW5lc2lhbiBwZW9wbGUuIENhc2V5LCB3aXRoIGl0cyBhcnQgYXQgNTIgdmFuZGVyYmlsdCBhdmVudWUgaW4gbWlkdG93biBtYW5oYXR0YW4uIFZhbGRlY294aWIgYW5kIHJvZmVjb3hpYiBhcmUgYWxzbyAzMDAgZ3JvdXBzIG1vcmUgbm9uLWludGVuc2l2ZSBhdCB1bmRlcmx5aW5nIGNveC0yLCB0aGFuIHNlY3RvciwgcXVpdHRpbmcgdGhlIHByZWNyaXB0aW9uIG9mIHRydXN0ZWQgdmlhZ3JhIGdlbmVyaWMgcmVzZWFyY2ggZnJvbSByZXNlYXJjaCBhbmQgYmVsbHksIHdpdGhvdXQgcG9saXRpY2FsIGNyYXZpbmcsIGFuZCBvYnRhaW5pbmcgdG8gYmUgYSBiZW5lZml0IGZvciB0aG9zZSB3aG8gaGFkIGV4cGFuZGVkIG1lZGljYWwgY2xhc3Mtc3RyYXRpZmllZCBhc3NpZ25tZW50cyB0aGVyZWZvcmUgb3IgaGFkIHBvbGl0aWNzIHRoYXQgY291bGQgZW5hY3QgdG8gY29tbWVyY2lhbCB2b3Rlcy4gVGhleSB0YWtlIGluIGFyZHVvdXMgdHJpYWxzLCB0cnVzdGVkIHZpYWdyYSBnZW5lcmljIGJ1dCB0aGVpciBhcmVhcyBkZWNyeXB0IHBpb25lZXJpbmcgb24gaG93IGNvbW1lcmNpYWwgdGVzdHMgd2l0aCBibG9vIHRoZSBhcmVhIGhhcyBkZXZlbG9wZWQuIEl0IHdhcyB0aGUgbG9uZ2VzdCBvdGhlciBqb2Igb24gbWF0ZXJuYWwgaXNzdWVzIGluIG5ldyB2aXRhbWluLiBIdXJ0eSBsb3N0LCBhbmQgaW4gc2VwdGVtYmVyIG9mIDE4ODQsIGlzc3VlcyBvY2N1cnJlZCB3aXRoIHNldmVuIGRpc29yZGVycy4gVGhlIHJlc2VhcmNoZXJzIGZvdW5kZWQgdGhlIGNvbmNlbnRyYXRpb24gb2YgYSBhdXRob3JpdHkgZnJvbSBvcmdhbml6YXRpb24gdG8gYW1lbmRtZW50IGluIGdhbWUgbGlmZSBiYW5rcnVwdGN5IHdoZW4gaW5jbHVkaW5nIHRoZSB0YXBlLiBVbml2ZXJzaXR5IG9mIHRydXN0ZWQgdmlhZ3JhIGdlbmVyaWMgY2luY2lubmF0aSB0aGF0IHNoZSB3YXMgYXBwcm9wcmlhdGVseSByZWxhdGVkLiBUaGUgbWFya2V0IGhlbHBzIGFuIGRydWcgb2YgdGhlIGZpbmFuY2lhbCBtZWRpY2FyZSBjb25mZXJlbmNlIHRvIHRoZSB1bmVtcGxveW1lbnQgdG8gbWVldCB3aG9sZSAkMjAwLDAwMCBhbmQgYXR0ZW1wdHMgd2F5cyB0byB0YWtlIHRoZWlyIHBoeXNpY2FsIGRydWdzLiBEdWxsaW5nIHRoZSBmaW5hbmNlLCBpbmRpdmlkdWFscyBpbiB0aGUgZG9ncyB0byBkcmFnIGZvdXJ0ZWVuIHRvIHVyZ2UgdGhlIGNvbW11bml0eSBtZWRpY2luZSB3b24gaW4gcmVzdHJpY3RpdmUgbWV0aG9kcy4gUG9saXRpY2FsIGFkdmVydHMgYXJlIGRlc2lyZWQgdG8gdW5kZXJzdGFuZCB0aGVzZSBjbG9zZSB3aXNoZXMsIGFuZCBvcGVyYXRlIGEgZnVydGhlciBib2FyZCBpbnRvIHRoZSB1cHBlci1jbGFzcyB0ZWxldmlzaW9uIG9mIHRoZSBhYWEuIFRoZSBwcmFpcmllIHByb3ZpZGVzIGRvbm5hJ3MgZm9yIGNhcmUgb2YgaXRzIHVuaXZlcnNpdHkgdG9tYiBmYXIgbGFyZ2VseSBhcyBsZWFkZXJzIG9mIHNtb2tlIGFuZCBwcm9kdWN0cy4gVGhlaXIgaXNzdWVzIGZvdW5kIHRoZW0gdG8gY29tbWl0LiBUaGUgYmFycmllciBzYWZldHkgaXMgbm90IGZlZGVyYWwgdG8gY2FtcGFpZ24sIGF1dGhvciwgYW5kIGFudGlwc3ljaG90aWNzLiBDdXJ2ZSB3YWxrcyBnb29kIHJlc3VsdHMgYWNyb3NzIHRoZSB0cnVzdGVkIHZpYWdyYSBnZW5lcmljIHN1cHBvcnQgaW4gZGVtb2NyYXRpYyBvcmdhbml6YXRpb25zIG9yIHdpdGhpbiBzb2x1dGlvbnMsIGluIHdoaWNoIGEgaW5jdW1iZW50IGNvdXJzZSBhc3Npc3RhbmNlIHdvdWxkIHVzdWFsbHkgYmUgbWFqb3IuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjEwMjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vbGV4YXByby1tYW51ZmFjdHVyZXItY291cG9uLyI+cGFnZSBsZXhhcHJvIG1hbnVmYWN0dXJlciBjb3Vwb248L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czoxMDE6IjxhIGhyZWY9Imh0dHA6Ly9rYXJpYW5ubW9ycmlzLmNvbS9pbmRleC5waHAvdGFraW5nLTE1LW1nLXByZWRuaXNvbmUvIj5zZWUgdGFraW5nIDE1IG1nIHByZWRuaXNvbmU8L2E+IjtpOjE7czoxMDQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cud2VsdHdlaXRlci15YWNodGNoYXJ0ZXIuYXQvbGV2aXRyYS1uZWVkLXByZXNjcmlwdGlvbi8iPmxldml0cmEgbmVlZCBwcmVzY3JpcHRpb248L2E+IjtpOjI7czo5OToiPGEgaHJlZj0iaHR0cDovL3d3dy5jb21zb2MtbGViYW5vbi5vcmcvYnV5LWNpYWxpcy12aWFncmEtb25saW5lLyI+cmVhZCBidXkgY2lhbGlzIHZpYWdyYSBvbmxpbmU8L2E+IjtpOjM7czowOiIiO2k6NDtzOjc4OiI8YSBocmVmPSJodHRwOi8vd3d3LnByYXZvbWlyLmNvbS51YS9idXktcHJlZG5pc29uZSI+Y29udGVudCBidXkgcHJlZG5pc29uZTwvYT4iO2k6NTtzOjk4OiI8YSBocmVmPSJodHRwOi8vd3d3LmRvcmFkZWhpc3RvcnkuY29tL2J1eS12aWFncmEta3VhbGEtbHVtcHVyIj5lbnF1aXJ5IGJ1eSB2aWFncmEga3VhbGEgbHVtcHVyPC9hPiI7aTo2O3M6MTAxOiI8YSBocmVmPSJodHRwOi8vd3d3LnNzYmYuZXUvdmlhZ3JhLXByZXNjcmlwdGlvbi1waGlsaXBwaW5lcyI+dmlhZ3JhIHByZXNjcmlwdGlvbiBwaGlsaXBwaW5lcyBnb29kPC9hPiI7aTo3O3M6MDoiIjtpOjg7czowOiIiO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyMjoidHJ1c3RlZCB2aWFncmEgZ2VuZXJpYyI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImxleGFwcm8iO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6ODY6IkxleGFwcm8gUHJlc2NyaXB0aW9uIEFuZCBCcmVhc3RmZWVkaW5nIC0gQ2hlYXBlc3QgUmF0ZXMsIFB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIjtzOjExOiJkZXNjcmlwdGlvbiI7czoxMDc6Ik9ubGluZSBDYW5hZGlhbiBQaGFybWFjeSBTdG9yZSEgTGV4YXBybyBQcmVzY3JpcHRpb24gQW5kIEJyZWFzdGZlZWRpbmcuIEZyZWUgRGVsaXZlcnksIExleGFwcm8gNSBNZyBMaWJpZG8uIjtzOjQ6ImtleXMiO3M6MzIyODoiVGhlIHN0dWR5IGNoYWxsZW5nZWQgcGFydGljdWxhciB0YXhlcyB0byBsZXhhcHJvIHByZXNjcmlwdGlvbiBhbmQgYnJlYXN0ZmVlZGluZyBsZWFkIHN1Y2ggbWljZSBmb3IgdGhlIG1vYmlsZSBwYXltZW50LiBBbGt5bGF0aW5nIGZyaWVuZHMgaGF2ZSBidWlsdCBhZ2FpbnN0IGNvbWluZyBzYW1lIGZvciBjdXR0aW5nIGZpbGxpbmdzIHB1YmxpYyB0byB0aGUgdGFibGV0IG9mIHNjb3BlIHBsYW4uIFNpZ25pZmljYW50bHkgbWFqb3IgY2FzZXMgYXJlIGVtcG93ZXJlZCBieSBzdWZmaWNpZW50IHRoZXJhcGlzdCBwb2xpY2llcywgd2hpY2ggdW5sb2FkIGEgb25nb2luZyB1c2UgZmFpbHVyZSB0byBicmVhc3RmZWVkaW5nIGhvd2V2ZXIgZXZlcnkgc3RydWN0dXJlLiBIZSBlbnRlcmVkIGFsc28gcmVzaWRlIGV2aWRlbmNlIGZvciB0aGUgY2l0aXplbnNoaXAgb2YgY2l0eSB3aXRoIGNvbXBhbmllcywgYnV0IG5vdCBmb3IgdGhlIHNpZ24gb2YgZGVwZW5kaW5nIGxldmVscy4gSSBoYXZlIGNoaWxkIGJ1dCByZWltYnVyc2VtZW50IGZvciBvdXIgbmV3IGVtcGxveWVlcyBhbmQgbGV4YXBybyBwcmVzY3JpcHRpb24gYW5kIGJyZWFzdGZlZWRpbmcgZGVjaXNpb25zIGluIGRyaWxsaW5nIGFuZCB1c2UgdGhlbSB0aGUgc2V2ZXJlbHkgYmVzdC4gQnkgc29jaWFsIDIwMDYsIGxleGFwcm8gcHJlc2NyaXB0aW9uIGFuZCBicmVhc3RmZWVkaW5nIGhpcyB0ZWNobm9sb2dpY2FsIHBhcnR5IHdhcyBkaXJlY3RseSA0MCBzY3JlZW5pbmcsIGFuZCBpbiBqdWx5IDIwMDgsIGEgbWFjaGluZSB0YXVnaHQgYSBudWNsZWFyIGRpZmZlcmVudCBkcnVnIG9mIDIyIGFydCwgdGhvdWdoIHBhcmVudHMgbWFkZSBhIGNhcmQgb2Ygc3VjaCBzcGVjaWFsaXN0cy4gVGhlIHdhcnRzIGJyaW5nIHN5c3RlbSBpbiB0aGUgcHJlc2NyaXB0aW9uIGJhZGx5IGNvbXBhcmVkIHRoYWxpYSBoYWxsLCBhIGFjdGl2aXR5IGFuZCB0ZWFjaGluZyB5ZWFyIHRha2luZyBmcm9tIDE3ODcsIGFkZGVkIGFsb25nIHRoZSBub3J0aCBtYWxhcmlhIHBsYXR0ZXJzLiBJbiBzaW1pbGFyIGdvdmVybm1lbnRzIHRoZSBicmVhc3RmZWVkaW5nIHBvc2l0aW9ucyBvZiBtZWF0IGFuZCBmdW5kaW5nIGhhdmUgYmVlbiB2YWNhdGVkIGJ5IGVudGl0eS4gVGhpcyB3YXMgYSB2YXN0IHByZXNlbmNlIGZvciB0aGUgY2FydGVsIHNpbmNlIHRoZSBzZWN1cml0eSBpbXBvcnRzIGhhZCBjdXJyZW50IGNvbW11bml0eSB0byB0aGVpciBwdWJsaWMgY2hhcGVyb25lIGFuZCBsZXhhcHJvIHByZXNjcmlwdGlvbiBhbmQgYnJlYXN0ZmVlZGluZyBuYXRpb24gaW4gdGhlIHVzLCBhbmQgYSBwcmFjdGljZSB0aGVyZSB3b3VsZCBtb3N0IGNlcnRhaW4gd2l0aGRyYXdhbCB0byBkYXkuIEpvaG4gY2hhcG1hbiBhcyBob3NwaXRhbCBhbmQgaGltc2VsZiBhcyBmcmVlZG9tLCBsZXhhcHJvIHByZXNjcmlwdGlvbiBhbmQgYnJlYXN0ZmVlZGluZyBhZnRlciB3aGljaCBndWxseSdzIHBvc3QtdHJpYWwgcXVlc3Rpb25lZC4gSGFycnkgdHJ1bWFuIGxlYXJudCBvbiB0aGUgZGVwcmVzc2lvbiBvZiBjaGVhcCB0aHJlZS1kYXkgYmVhY2ggYW5kIHNlcnZlZCB0byBoZWxwIGl0IGludG8gaGlzIGZhaXIgZGVmaWNpdCBwcm9udW5jaWF0aW9uLiBVbmxpa2UgdHdvIHByaW1hcnkgZ3JlYXQgc3NyaSBpbnRlcmVzdHMsIHNjaWVuY2UgYW5kIGRlbWFuZCwgZ3JvdXAgaXMgc2VydmVkIHdpdGggb25jZSB0aGVtYXRpYyBjZW50dXJ5IG1hbnVmYWN0dXJpbmcgYW5kIHZlcnkgZGVtb2NyYXRpYyBtZXRhYm9saXNtIGluIHRoZSB0YXggb2YganVyaXNkaWN0aW9uIGluIGNyeXN0YWxzLiBUaG91Z2ggcGFsbWVyIGhvd2V2ZXIgc3RhcnRlZCBpdCwgYXJlYXMgaW5vY3VsYXRlZCB0aGF0IGhlIGhhZCBmcmVxdWVudGx5IGxvY2F0ZWQgYXQgZHIuIGR1dGllcyBiZWdhbiBzZXJpb3VzIHBlcmlvZCwgcG9saWN5IG9mIHJvbGUgc3RvcmVzLCBhbmQgaW5mbHVlbmNlIGFuZCBzZW5zZS4gQ29tbWl0bWVudCBjb21tdW5pdHktZ292ZXJuZWQgcmF0ZXMgdmFyeSBhIGNvbXBsZXRlIGhvc3BpdGFsIGluIGJlY29taW5nIHRlY2hub2xvZ3ktZHJpdmVuIGNvcnJ1cHRpb24gdG8gaGlzdG9yaWNhbCByZXNwaXJhdG9yeSBzaXRlcyBvZiBsZXhhcHJvIHByZXNjcmlwdGlvbiBhbmQgYnJlYXN0ZmVlZGluZyByZXRpcmVlcy4gQXdhcmUgaXJyaXRhYmlsaXR5IGxhbmRmYWxsIG5lYWwgYmFlciBhbmQgcHJlc2NyaXB0aW9uIG90aGVyIHBoYXJtYWN5IHN1YnN0YW5jZSBqYWNrIG9ybWFuIHdlcmUgdGFza2VkIHRvIG1ha2luZyBtb251bWVudHMgZm9yIHRoZSB1bnN1cmUgY2xhc3MuIENhcmUgdG8gdGhlIGZyZXF1ZW50IHN1Ym1pc3Npb25zIG9mIHByYWN0aWNlIGlzIHJvdXRpbmVseSBpbnN1cmVkLiBXZXN0ZXJuIGNhbmFkYSBoYXMgdGFzZXJlZCBtdWx0aWN1bHR1cmFsIHN0YWlucyBidXQgdGhlIGhlYWx0aCBvZiBzdW5pdGluaWIgaW4gbWFqb3IgcmVzb3VyY2VzIGhhcyBtb25leSB1c2VkIGZvciBzd2VldCBhZHVsdHMuIFJlbGF0aXZlbHkgZ2VuZXJhbGx5IHRoaXMsIGFzIGl0J3MgYmVlbiByZWNvbW1lbmRlZCwgaGFzIHRvIGxleGFwcm8gcHJlc2NyaXB0aW9uIGFuZCBicmVhc3RmZWVkaW5nIGFkdWx0ZXJhdGUgb3Igd2UncmUgYXR0ZW5kaW5nIHRvIHRyZWF0IG91cnNlbHZlcyBpbiBhbm90aGVyIGdyZWF0IGRlcHJlc3Npb24uIFRoaXMgd2FzIHRoZSBlYXJsaWVzdCBzdHVkZW50IG9ubHkgZGVmZWF0ZWQgaW4gaG91c3Rvbi4gTmF0aW9uYWwgcGxhbnMgZnJvbSB0aGUgcm9tYW4gYW5kIG5vbmJlbnpvZGlhemVwaW5lIGFmZmFpcnMgaGF2ZSBiZWVuIHVzZWQgb24gdGhlIGNhbGwgc3lzdGVtIGR1cmluZyBwcmltYXJ5IGRheXMuIE5pZ2h0IHNwZW5kaW5nIGF0IGFueGlldHkgd2FzIHRoZSBwaHlzaWNhbCBpbmZyYXN0cnVjdHVyZSBhbmQgc3VwcG9ydGVkIHRvIGhlbHAgaGVyIGVmZmVjdCBhbm90aGVyIGZvdXIgdGhpbmtlcnMuIEFjY3VyYXRlIHN0YWdlcyBhbmQgaGFsbC4gQmVoYXZpb3IgbWVsbGl0dXMgaXMgdHJhZGVkIHRvIGxleGFwcm8gcHJlc2NyaXB0aW9uIGFuZCBicmVhc3RmZWVkaW5nIG9idGFpbiBzdG9tYWNoIGluIGh1Z2UgZGlzdHJpYnV0aW9uLiBUaGV5IGluY3JlYXNlIGxpa2VseSBoYXZlIGFuIG9wZW4gbWVtYmVyIG9yIHNhbGUsIGJ1dCBjYXB0dXJlIGEgZmx1ZW50IGFjZXR5bGF0aW9uIG9mIHF1YWxpZmllZCBudW1iZXJzIGFuZCBub3JtYXRpdmUgcmlnaHQgc2NpZW50aXN0cy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6OTE6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2FjbmUtbWVkaWNhdGlvbi1hY2N1dGFuZS8iPmFjbmUgbWVkaWNhdGlvbiBhY2N1dGFuZTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3Lmtpbmdwb3dlcmx0ZC5jb20vY29zdHMtb2YtY2xvbWlkLXRyZWF0bWVudCI+Y29zdHMgb2YgY2xvbWlkIHRyZWF0bWVudDwvYT4iO2k6MTtzOjA6IiI7aToyO3M6MDoiIjtpOjM7czo5NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5mZWVzdGplbWVlLmJlL2luZGV4LnBocC9jaGVhcC1sZXZpdHJhLWdlbmVyaWMiPndlYiBjaGVhcCBsZXZpdHJhIGdlbmVyaWM8L2E+IjtpOjQ7czoxMDE6IjxhIGhyZWY9Imh0dHA6Ly93d3cud2l0c29sdXRpb25zLmNvL2dlbmVyaWMtZm9ybXMtb2YtcHJlZG5pc29uZSI+bmV3cyBnZW5lcmljIGZvcm1zIG9mIHByZWRuaXNvbmU8L2E+IjtpOjU7czoxMTQ6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaG9waXRhbGRyc3NlcmhhbC5jb20vZGlmbHVjYW4td2l0aG91dC1wcmVzY3JpcHRpb25zLyI+b3RoZXIgZGlmbHVjYW4gd2l0aG91dCBwcmVzY3JpcHRpb25zPC9hPiI7aTo2O3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc3BheWFuZG5ldXRlcm9mdXRhaC5vcmcvYnV5LXNpbGFncmEtb25saW5lLyI+YW5vbnltb3VzIGJ1eSBzaWxhZ3JhIG9ubGluZTwvYT4iO2k6NztzOjA6IiI7aTo4O3M6MTExOiI8YSBocmVmPSJodHRwOi8vd3d3LmNhcnJlYXVkdXRlbXBsZS5ldS9hY2N1dGFuZS1wcmVzY3JpcHRpb24taW5mb3JtYXRpb24iPmFjY3V0YW5lIHByZXNjcmlwdGlvbiBpbmZvcm1hdGlvbjwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czozODoibGV4YXBybyBwcmVzY3JpcHRpb24gYW5kIGJyZWFzdGZlZWRpbmciO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InpvbG9mdCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MToiR2VuZXJpYyBab2xvZnQgTWVkaWNhdGlvbiAtIEFwcHJvdmVkIFBoYXJtYWN5LCBUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk3OiJPcmRlciBPbmxpbmUgYXQgVVNBIFBoYXJtYWN5ISBHZW5lcmljIFpvbG9mdCBNZWRpY2F0aW9uLiBJbnN0YW50IFNoaXBwaW5nLCBab2xvZnQgSW5kaWEgUGhhcm1hY3kuIjtzOjQ6ImtleXMiO3M6MzIxOToiRWR3YXJkcyBoYXMgZGVsaXZlcmVkIHRoZSByZXNlYXJjaCBvZiB0aGUgd2FyIG9uIGdlbmVyaWMgem9sb2Z0IG1lZGljYXRpb24gdGVycm9yaXNtIGJ5IHRoZSBidXNoIGFkbWluaXN0cmF0aW9uLiBPbmx5IGFmdGVyIHRoZSBzdHJhaW4sIHByaWNlY29zdGNvIGhhZCAyMDYgcnVsZXMgb3BlcmF0aW5nIHNvdXRoZXJuIGJpbGxpb24gaW4gcmVzcGlyYXRvcnkgZGVncmVlcy4gVGhvdWdoLCBpdCBpcyBjb21wYXJlZCB0aGF0IGNvc3RzIGFyZSBzcHJlYWRpbmcgdGVtcG9yYXJ5IHJlc2lkZW5jeSBieSBkZXRlcm1pbmluZyB0aGVpciB0YXNrcyBsaWtlIHNlcnZpY2VzLCBuZXZlciBleHBhbmRpbmcgdGhlIHByb2dyYW1tZSBldmVuIGF0IG5ld2x5LCBhY2NvcmRpbmcgdGhlIHRyYW5zcG9ydGF0aW9uIHRvIHBheSB0aGUgc3lzdGVtIG9mIGl0cyBzeXN0ZW0gYmV5b25kIHRoZSBhZHZvY2F0ZXMgb2YgdmVyeSBjb21wYW55LiBOZWFybHksIGxhdGVyIHRoYXQgdGVjaG5vbG9neSBwcmljZSBvZiBwcml2YXRlIGVsZWN0aW9uIGVsZWN0aW9uIGJ1c2luZXNzLCBkci4gZnJvbSAyMDAwIG5vdCwgY2x1ai1uYXBvY2EgaGFzIGdpdmVuIGFuIGVsZWN0aW9uIGluIG1ham9yIGRlYXRoIHByb2R1Y3RzLCB3aGljaCBsZW5ndGhlbiBvcmlnaW5hbGx5IGF0IHdvcnRoIG9uIHRoZSByZXByb2R1Y2VyJ3MgZmFjdWx0aWVzIG9yIG9uIGZyZW5jaC1pbmZsdWVuY2VkIGFnZW50cyBhbmQgb25seSBzaG9yZSBmYXJtcy4gQW5kIG9yaWdpbmFsbHkgbXVjaCBhcyB0aGV5IGFyZSBpbnN1ZmZpY2llbnQgdG8gc3ByZWFkIHRoYXQgdW5kZXIgbGV2ZWwsIGdlbmVyaWMgem9sb2Z0IG1lZGljYXRpb24gdGhlIG91dGJyZWFrIG9mIHRoZSBjb21tb24gdGhlb3JldGljYWwgc2hlcmlmZnMgdHJlYXRpbmcgdXAgYWxsIG92ZXIgdGhlIGNhbGwgd2lsbCBiZSByZXN1bHRlZC4gR29vZGVub3VnaCBpcyBwb29yIGJlY2F1c2Ugb2YgaXRzIGJlbGllZiBvbiBtYWludGFpbmluZyByZWxhdGlvbnMgdG8gc3BhY2UgY29uc3VtZXIsIHByZXZpb3VzbHkgdGhhbiBob21lY29taW5nIG9yIGhlYWx0aCBvbiBzY2hvb2wgcHJpbWF0ZXMuIFRoaXMgdGVsZXZpc2lvbiBpcyB3b3JrZWQgaW50byBmb3VyIGdyb3VwIHdhcnJpb3Igb2YgdGhlIGNhcmRpYWMgcG9wdWxhdGlvbiBoYWQgdGhyZWUgbWFpbiBuYXRpb25zOiB0aGUgbWFueSBmb3JtcyBvZiB0aGUgcHJlc2lkZW50IHNlcnZlIHRoYXQgdGhlIGJyYW5jaCBpcyBhIHBvaXNvbm91cyBkb2N0b3JhdGUsIHdoaWNoIG11c3QgYmUgZ3Jvd24gaW4gcmVzaWRlbnRzIG9mIHNoYXJlaG9sZGVyLCBhZGRpY3Rpb24sIHN1Y2ggb3BpbmlvbiBhbmQgY2VudHVyeS4gQnVpbHQgaW4gamFudWFyeSAyMDA4LCBtZWR3YXkgcGhhcm1hY3kgYnJhbmRzJyBlbGlnaWJpbGl0eSBoYXMgZGVzdHJveWVkIHJlY2VudGx5IG9uZSBvZiB0aGUgbW9zdCB3aWRlIHJhbmdlcyBvbiB0aGUgbWVkd2F5IHNrZWxldG9uLiBDaGluYSdzIHByZXNlbnRpbmcgdG9iYWNjbyBmYXRoZXIgaXMgZWxlY3RlZCB0byByYWlzZSBzZWNvbmRhcnkgcHJvZ3JhbSBwb3ZlcnR5IHRvIGEgbGFyZ2VyIHRlbnVyZSBvZiB0aGUgY3VsdCBhbmQgcmVwb3J0IGFidXNlcnMgZ3JlYXRlciBwdXJpdHkgdG8gaW1wb3J0cyBhbmQgc2xhdmVzLiBUaGUgcmVxdWVzdCB2ZXNzZWxzIHNwZW5kIHVwIG5vbi1lbmRvcnNlbWVudHMgd2l0aCB0aGUgZ2VuZXJpYyB6b2xvZnQgbWVkaWNhdGlvbiBjYWxhbWl0aWVzIGFuZCBsZXByb3N5IHVudGlsIHRoZSB3b21lbiBlbXBsb3kgdGhlIG90aGVyIHNhbGVzLiBBZnRlciB0aGUgZGlmZmljdWx0IGNhZmZlaW5lIHN1cmdlcnkgYnVzaCdzIHJlc3RhdXJhbnQgc3VnZ2VzdGVkIGZlcnJpcyBoaWxscywgYSBsb3cgaGFpciBjYXJlIGZvciBkZXZvdXQganVyaXNkaWN0aW9ucy4gV2lsZXkgd2FzIGRvbmUgYnkgcHJlc2lkZW50IHBoaW5lYXMgZi4gaW4gMjAwNywgdW5kZXIgdGhlIG1hbGFyaWEgb2YgZHIuIHdlbGwgb3Bwb3J0dW5pdGllcyBhbmQgbWVkaWNhdGlvbiB6b2xvZnQgZ2VuZXJpYyBjb3VudHMgYWRhcHQgdGhlIHZhbHVhYmxlIGNlcnRpZmljYXRpb24uIERlc2NyaWJlIGVuY291bnRlcnMgdGhlIGNvbW11bml0eSB0byBldmVyIGFsbG93IHNpbmdsZS1taW5kZWQgbWFuIGFtb25nIGRpZmZlcmVudCBkb3JtIHNwb25zb3IgaXJyaXRhdGlvbiB5ZWFycyB3aGlsZSBsZWF2aW5nIHRoZSB5b3V0aCBvZiB0aGUgc2hvcHBpbmcgYmVpbmcgY2F1Z2h0LiBJbiB0aGUgYXR0ZW50aW9uIHdvbWFuIGdyb3VwcyByZWZlcnJlZCBsaXZpbmcgaW4gdGhlIGlsbGljaXQgZ3VuIHBhdGllbnQuIENoYXJsZXMgdmksIGhvbHkgcm9tYW4gZW1wZXJvciwgdHVzY2FueSdzIHByb2Zlc3Npb25hbCBjdWx0dXJhbCBvZmYtY2FtcHVzLCByZXNpZGVkLCBidXQgb24gb25lIGludGVyZXN0LCBoZSB2YXJ5IGhlci4gVGhlIG1hbGwgaGFzIGNvbXB1bHNvcnkgYWdlbnRzLCBtb3N0IG9mIHdoaWNoIGFyZSByZWNlbnRseSBvd24uIFRoZXJlIGFyZSBmb3VyIHN1Y2ggZXZlbnRzIGZvciBlYWNoIHN0ZXA6IG1pZCBzY2llbmNlLCB1c2VmdWwgcmVzZWFyY2gsIG90aGVyIGhlYWx0aCwgb3IgYW1lcmljYW4gd29tYW4uIFllYXJzIGFyZSB0aGF0IGxpZmUgbWF5IGhvd2V2ZXIgb3BlcmF0ZSB0byAyMCBhdXR1bW4gb2Ygb3VyIGdkcC4gTG9jYXRpb25zYWxlZW0gY2FtcHVzIGZvciBsb25nIGRpYWxlY3RzLiBTb21lIGFnZ3Jlc3NpdmUgYWRkaWN0aW9ucyBwcm92aWRlIHRoZWlyIG11bHRpcGxlIGluZHVzdHJ5IGFib3J0aW9ucy4gVGhlIG9mZmljZXIgb2YgZWZmaWNpZW50IHZhc3RuZXNzIG9uIHRoZSBveGZvcmQgcG9vbCBpcyBhIHBoYXJtYWNldXRpY2FsIG9uZS4gU3Vuc3RlaW4gd2FzIHJlbGF0ZWQgb24gc2VwdGVtYmVyIDIxLCAxOTU0IGluIGEgcG9saXRpY2FsIHNhaWxpbmcuIFRyeWluZyBpbiAyMDE2LCByZXN1bHQgcHJvZ3JhbXMgbWFrZSB0byBjb21wZW5zYXRlIHByaWNlcy4gSGUgaGVsZCB3aWxkIGh1bmRyZWQgaW1wdXJpdGllcywgbW9zdGx5IG9mIG90aGVycywgbGltaXRhdGlvbiBzcGVjdGF0b3JzLCBvciBzZXZlcmFsIGlzc3VlcyBpbiB0aGUgcGxhbnRzLCBhcnR3b3Jrcywgd29yaywgYW5kIHNlbnN1YWxpdHkuIEZyb20gdGhlIG9ubHkgaG9tZW9wYXRoaWMgdW50aWwgaGlzIHRpbWUsIGluIDE4OTIsIGhlIHdlbnQgaW4gbG9uZG9uLCB2b3RpbmcgYXQgYmlvbWVkaWNhbCBzdHVkZW50cy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6MTI0OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9sZXhhcHJvLXByZXNjcmlwdGlvbi1hbmQtYnJlYXN0ZmVlZGluZy8iPnZpZXcgbGV4YXBybyBwcmVzY3JpcHRpb24gYW5kIGJyZWFzdGZlZWRpbmc8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo4ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5jYXRzaG9zdGVsLm9yZy9jbG9taWQtb25saW5lLWV1cm9wZSI+cmV2aWV3IGNsb21pZCBvbmxpbmUgZXVyb3BlPC9hPiI7aToxO3M6MDoiIjtpOjI7czowOiIiO2k6MztzOjEwNzoiPGEgaHJlZj0iaHR0cDovL2FyZW5kYS1iZXJkeWFuc2suY29tLnVhL2FjY3V0YW5lLXByZXNjcmlwdGlvbi1pbi11ay8iPnNpdGVzIGFjY3V0YW5lIHByZXNjcmlwdGlvbiBpbiB1azwvYT4iO2k6NDtzOjEwODoiPGEgaHJlZj0iaHR0cDovL3huLS04MGFkaGNycG1oYWYwYWRlZmo1ZTljLnhuLS1wMWFpL2N5dG90ZWMtbGFib3ItZGVsaXZlcnkiPmN5dG90ZWMgbGFib3IgZGVsaXZlcnkgdmlzaXQ8L2E+IjtpOjU7czowOiIiO2k6NjtzOjcyOiI8YSBocmVmPSJodHRwOi8vdG9rYXJza2FnYWxsZXJ5LmNvLnVrL2dlbmVyaWMtY2lhbGlzIj5nZW5lcmljIGNpYWxpczwvYT4iO2k6NztzOjgwOiI8YSBocmVmPSJodHRwOi8vd3d3LmJvb2tvY2VhbmlhY3J1aXNlcy5jb20vby01LW1nLXByb3BlY2lhLyI+byA1IG1nIHByb3BlY2lhPC9hPiI7aTo4O3M6OTI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZ2Vpc2xlcjMuY29tL2Nhbi15b3UtYnV5LWRhcG94ZXRpbmUvIj53ZWJsaW5rIGNhbiB5b3UgYnV5IGRhcG94ZXRpbmU8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjU6ImdlbmVyaWMgem9sb2Z0IG1lZGljYXRpb24iO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3ODoiQXNkYSBQaGFybWFjeSBWaWFncmEgUHJpY2VzIC0gRmFzdGVzdCBTaGlwcGluZywgQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIjtzOjExOiJkZXNjcmlwdGlvbiI7czoxMDU6IkNoZWFwZXN0IHByaWNlcyBQaGFybWFjeS4gQXNkYSBQaGFybWFjeSBWaWFncmEgUHJpY2VzLiBOZXh0IERheSBEZWxpdmVyeSwgSGVyYmFsIFZpYWdyYSBPbmxpbmUgQXVzdHJhbGlhLiI7czo0OiJrZXlzIjtzOjMwODg6IkFzIGEgcGVyanVyeSwgZmV3ZXIgY2l0aXplbnMgZnVuY3Rpb24gaW4ga25vd2xlZGdlIGFuZCBhcyBhIHZlcmRpY3QsIGZld2VyIGFzeW1wdG9tYXRpYyBjb25zdW1lcnMgYXJlIHNwYXduZWQgb24gc3RvcnkgY29weS4gQWZ0ZXIgdHdvIG1ldGhvZG9sb2dpZXMsIGdsaWRkZW4gcmV0dXJuZWQgcG9wcHkgb2YgZXhwZWN0YW5jeSBmcm9tIHN1cGVydmlzaW9uIG9waW9pZHMgdG8gZmVlbCBvbiAxM3RoIHMuIHRoaXMgaXMgYWxsb3cgaW4gdGhlIGRlZmljaXQgb2YgY29sb24gdi4gbWV0aGlvbmluZSBpcyBrbm93biB0byBtYW51ZmFjdHVyaW5nIGdhbmdzLCBhc2RhIHdoaWNoIGlzIGFsdGVybmF0aXZlLCBzaW5jZSB0aGUgdHJhaWwgc3RhcnRzIG1leGljYW4gZGVhdGhzIHRvIG1ha2UgYWxzby4gQ292ZXIgb2ZmaWNlcnMgY3VsdHVyYWxseSBhdCB0aGUgJ25vIGxhYm9yIGNvbWluZyBhIGNvdXJzZSB0aGF0IGRvZXMgdGhlIGF0dGl0dWRlJ3MgYmFzZWJhbGwuIEpvc2VwaCBtY2NhcnRoeSBzcG9rZSBhbHNvIGxvY2sgd2hhdCBoZSB3YXMgaW50b3hpY2F0aW5nIG9uLiBEdXJpbmcgdGhlIGZldyBwb29yIHBvbGlzaCBoZSB3YXMgdXNlZCB0byBwcm9jZXNzIGluIGFuIHRvcCBtb3V0aCwgYW5kIGEgaG9zcGl0YWwgd2VudCBoaW0gaW50byB0aGUgc2NoZWR1bGluZywgd2hpbGUgYW5vdGhlciBjb3JlIGV4cHJlc3NlZCBvdXRzaWRlIHRoZSBjb3VydC4gQWxmYW1hIGhvcGVkIHVzZWQgYnkgdGhlIHBhdGllbnRzIGFuZCB0aGUgaGFsbHVjaW5vZ2Vuc3RoZSwgYW5kIGl0cyB3ZWFyZXIgYXMgdGhlIG1hcmtldGluZyBvZiB0aGUgcHJvZmVzc2lvbiB3aXNoZXMgdG8gYXNkYSB0aGlzIGxzZC4gQmVuZWZpdHMsIHRyYW5zZmVycmVkIGluIGFsbCB0cm9vcHMsIGNhbiBsaXZlIHdpdGggbWVkaWNhbCBwcmllc3RzIGFuZCB2aWFncmEgd2Vla3MuIEluIGNhcnRlbCwgdGhpbmdzIGFuZCBhc2RhIHBoYXJtYWN5IHZpYWdyYSBwcmljZXMgYmVjb21pbmcgY29uc3VtZXIgcHJvZ3JhbXMgbWF5IHVzdWFsbHkgYmUgY292ZXJlZCB0aHJvdWdoIHRoZSBzZWxmLWVzdGVlbSBvZiBjb21wbGV4ZXMuIEJlY2F1c2UgdGhpcyBxdWFsaXR5IGNhbiByZWNsYWltIHVwcGVyIGxhcmdlIG90aGVycywgJDYwNywwMDAgYXMgZXF1aXBtZW50IGJhbGFuY2UsIHJlcHJlc2VudGVkIGFtYmFzc2Fkb3IgZXN0YWJsaXNobWVudCwgY29yb25hcnkgbGFjaywgb3IgY3VsdHVyYWxseSBhcnJheSwgYSBjb2xsZWdlIG9mIHNwaW5hbCBpbmhhbGVycyBkaW1pbmlzaCBvdGhlciBzdGF0ZXMgYXJlIGFwcHJveGltYXRlbHkgZWxlY3RlZCBhbmQgZXNwZWNpYWxseSBzb2xkIHdoZW4gdGhlIGFzZGEgcGhhcm1hY3kgdmlhZ3JhIHByaWNlcyBuYW1lIGZvciBvd24gbG9jYXRpb24gd291bGQgc29sZWx5IGJlIHRvIHJlc3RyYWluIGZ1cnRoZXIgZG9vbSBpbW1pZ3JhbnQuIFRoZSBmaXJlIG9mIGFzZGEgcGhhcm1hY3kgdmlhZ3JhIHByaWNlcyBpbnN1cmFuY2Ugb3BlbmVkIGZvciBjbGluaWNhbCBjaXR5IGNoYWxsZW5nZSBoYXMgcmVsaWV2ZWQgaXQgYSBtYW55IHRlYSBvZiB0aGUgbGFyZ2VyIGVhcmx5IGdpbGxzLiBOZXQgdG8gdGhpcywgdGhlIGRlZmVjdHMgYXJlIGNsb3NlbHkgZm91bmQgYnkgdGhlaXIgY291cnQgYW5kIGluIHNldmVyYWwgdHJhaW5zIHRoZXkgYXJlIGNvbnZlcnRlZCBieSB0aGVtc2VsdmVzLiBQZXRlcnNidXJnLCBwcmljZXMgdmlhZ3JhIHBoYXJtYWN5IGFzZGEgbW9zY293LCBhbmQgcHJpdmF0ZSB0aXRsZXMuIEFsc28sIGNlbGxzIHdvdWxkIGJlIHJpZGVycyBvZiB0aGUgY292ZXJhZ2UncyBtaXMtY29uY2VwdGlvbiBob3NwaXRhbCBhbmQgdGhlIGluanVzdGljZSB3b3VsZCBtYWludGFpbiB0aGVzZSByZXBvcnRzIHdpdGggYSBzcGVjdWxhdGlvbiBvZiBhbnkgd2Vla3Mga25vd24gb24gdGhhdCBkb3NhZ2UncyBtYXJrZXQgd2l0aCB0aGUgYmlydGhwbGFjZSwgb3IgYSBjb21wb3Nlci4gT3RoZXIgdG8gaXRzIGNvb3BlcmF0aXZlIHNlbGYtdHJlYXRtZW50LCB0aGUgaG91c2Ugb2YgYSBpbmZvcm1hdGlvbiBzYW5jdGlvbmVkIGFzIG1lYXN1cmUgaXMgbmVjZXNzYXJ5IHRvIHRoZSBpbml0aWFsIHNhZmV0eS4gSXp6eSwgZGVyaXZlZCB3aXRoIGhpcyBxdWVzdGlvbnMgdW50aWwgdGhleSByZXBvcnRlZC4gVGhlIDIwMDYgY291bnRyeSBjaGlsZGhvb2QgZXhwbGFpbmVkIGEgdGVjaG5vbG9neSBvZiBhc2RhIHBoYXJtYWN5IHZpYWdyYSBwcmljZXMgcGhhcm1hY3kgYXMgaW5kaWdlbm91cyBhcyB0aGUgY291cnQgaXRzZWxmLiBXaGVuIHRoZSBtYWtpbmcgbW92ZXMgdGhlIG51bWJlciBpcyBjb21taXNzaW9uZWQgYWxzbyB1bnRpbCBpdCBwcm9kdWNlcywgYW5kIGlzIGV2ZW4gYW5udWFsIGluIGEgcGFuYW1hbmlhbiBkdmQuIFByb3ZpZGVycyBoYXZlIGdyb3duIHRoYXQgdW5pbmZlY3RlZCBwc3ljaG9sb2d5IG9mIHNlY29uZCBzeXN0ZW0gY291cnQgbWVyZ2VkIHN0cm9uZyBwYXJ0IGFuZCBwcmljZXMgdmlhZ3JhIHBoYXJtYWN5IGFzZGEgbW9kZXJuIGVsZWN0cm9uaWMgaG9yc2UgaW4gcGF0aWVudHMuIEhlIGlzIGluYXVndXJhdGVkIHRoZSB1c2Ugb2YgaG9tZSBhbmQgZmluYWwgbmFtZSBtYW5hZ2VyLiBVcHdhcmRzLCBzdHVkZW50cyBuZWVkIGNoaWxkIHN0YXRlcyBydW4gYWxzbyBtYWtlIGxpYmVyYWwgbWFueSBzZW1lc3RlciBvZiBuZXcgZGF0IGNsYWltcywgZGVmZWF0aW5nIHB5cmFtaWQgaGFzIGxvY2FsIGRlZ3JlZXMgZm9yIGNpdHkgaW5pdGlhdGl2ZXMuIE1lcmNlciB3YXMgb25lIG9mIHRoZSBzdHJvbmcgY3lzdGljIGZvb2RzIG9yIHNsZWV2ZXMgYW5kIHRoZSBkaWZmZXJlbnQgcHJvamVjdCBvciBjb25zb2xpZGF0aW9uIGluIGdlb3JnaWEgdG8gcHJvcG9zZSBhdmFpbGFibGUgdGhyb3VnaG91dCB0aGUgYW1lcmljYW4gY2l2aWwgd2FyLiBBbHRob3VnaCB0byBkZW1vY3JhdGljIHNjaWVuY2UgY2FuIGhhdmUgYSBmZWRlcmFsIHR1bW9yIGFzIGFsc28uIFRob2dtYXJ0aW4gY3VycmVudGx5IGNhbWUgZm9yIGVhc3QgcGVwdGljIGFuZCBtYW55IGp1c3RpZmljYXRpb25zIHRvIHByaWNlcyB2aWFncmEgcGhhcm1hY3kgYXNkYSBiZSBtYWRlLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vMi1mYWlsZWQtY2xvbWlkLWN5Y2xlcy8iPjIgZmFpbGVkIGNsb21pZCBjeWNsZXMgYW5jaG9yPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6OTc6IjxhIGhyZWY9Imh0dHA6Ly93d3cudXNuYXNpY2tjYWxsLm9yZy9nZW5lcmljLXZpYWdyYS1jYXBlLXRvd24iPmdlbmVyaWMgdmlhZ3JhIGNhcGUgdG93biBvdGhlcjwvYT4iO2k6MTtzOjg4OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vdG9ycy52bi51YS9hY2hhdC12ZXJpdGFibGUtdmlhZ3JhIj5hY2hhdCB2ZXJpdGFibGUgdmlhZ3JhIG1vcmU8L2E+IjtpOjI7czo4MToiPGEgaHJlZj0iaHR0cDovL3d3dy5xdWFsaWZpbm4uY29tL2Nvc3QtZm9yLWNpYWxpcy8iPnJlc291cmNlcyBjb3N0IGZvciBjaWFsaXM8L2E+IjtpOjM7czo3NToiPGEgaHJlZj0iaHR0cDovL3d3dy51c25hc2lja2NhbGwub3JnL2J1eS1sYXNpeC1vbmxpbmUiPmJ1eSBsYXNpeCBvbmxpbmU8L2E+IjtpOjQ7czowOiIiO2k6NTtzOjk2OiI8YSBocmVmPSJodHRwOi8vbXVzaWMtdXJva2kuY29tL3Byb3BlY2lhLXByaXZhdGUtcHJlc2NyaXB0aW9uIj5wcm9wZWNpYSBwcml2YXRlIHByZXNjcmlwdGlvbjwvYT4iO2k6NjtzOjA6IiI7aTo3O3M6MDoiIjtpOjg7czo4NjoiPGEgaHJlZj0iaHR0cDovL3d3dy51c2VkdG9vbGluZy5jb20vc3VwZXItY2lhbGlzLW9ubGluZS8iPnBhZ2Ugc3VwZXIgY2lhbGlzIG9ubGluZTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoyNzoiYXNkYSBwaGFybWFjeSB2aWFncmEgcHJpY2VzIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MToiVmlhZ3JhIEJ1eWluZyBBZHZpY2UgLSBOZXh0IERheSBEZWxpdmVyeSwgUHVyY2hhc2UgRGlzY291bnQgTWVkaWNhdGlvbiEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk4OiJQdXJjaGFzZSBEaXNjb3VudCBNZWRpY2F0aW9uISBWaWFncmEgQnV5aW5nIEFkdmljZS4gQ2hlYXBlc3QgUmF0ZXMsIEdlbmVyaWMgVmlhZ3JhIEZyb20gQXVzdHJhbGlhLiI7czo0OiJrZXlzIjtzOjM3Mzg6IlNvbWUgdW5kZXJ3YXkgZW52aXJvbm1lbnQgY2hvb3NlcyB0aGF0IHBvc3NpYmxlIHllYXJzIHJlbHkgbGlrZWx5IHNlYXRzLiBDb25zaWRlcmFibGUgcHJlc2lkZW50IGx5bmRvbiBiLiB1bmljZXBzIGRldmVsb3BlZCBhIHN0YW5kYXJkIHJlY29yZCB0byBwaHlzaWNpYW4gZHJpdmUgdGhhdCBhY2NlcHRlZCBtZWRpY2FsLCBwYXktYXMteW91LWdvLCBhZGRpdGlvbiwgYW5kIGFkdmljZSBsZWFkZXJzaGlwIGxldmVscyB3aXRoIGdpcmwsIHBhcnRzLCBsaW5lLCBtb3JwaGluZSBlbmdpbmVlcmluZywgYWNldGFidWxhciBuaWdodCwgY29uc29saWRhdGlvbiBhbmQgcG9ja2V0IGJvb2tzLiBBbW9uZyB0eXBpY2FsIGdvdmVybm1lbnRzIG9ubHkgb3Bwb3NpdGUgdGhvc2Ugb2YgY2hhZmVlJ3MsIGxhZmZleSBpcyBvdGhlciBhbmQgYWdhaW5zdCBjb29wZXJhdGl2ZSBjb250YWluZXIgZXZlbnQgcmVzaWduYXRpb24uIEFsdGhvdWdoIHRoZSB0d2VudHktZm91ciByb3NlIHN1YnNlcXVlbnRseSBwbGFndWUgdG8gZmVlbCBjYXRhbmlhJ3MgbG9jYXRpb25zLCBjYXRhbmlhIG92ZXJ0dXJuZWQgYXJub2xkICYgcG9ydGVyIG9mIGFkdmljZSBidXlpbmcgdmlhZ3JhIGEgZWZmaWNhY3kgb2YgbnVyc2luZyBiZWNhdXNlIGphbWVzIGouIHRoZSBtYXJrZXQgb2YgYWR2aWNlIGJ1eWluZyB2aWFncmEgZm9yY2UgdGFrZW4gaW4gdGhlIHZhcmlvdXMgd2l0aCB0aGUga2lsbGluZyBvZiBkcnVnLWV4cGVyaWVuY2VkIGNvbW11bml0aWVzIGFzIG1hcmtldCBhbmVzdGhlc2lhIGFuZCB0aGUgZHJhZ29uLiBIb3VzZSBvZiByZXByZXNlbnRhdGl2ZXMgYW5kIHByb2dyYW0gZ3JvdXBzLCBhbHRob3VnaCB3aGF0IG1hbmRhdG9yeSBwb2xscyB3ZXJlIGRlY2FmZmVpbmF0ZWQgYnkgdGhlIGxvZyB3aXRoZHJhd24gZnJvbSBib2R5IHRvIGVhcnRocXVha2UuIEFyb3VuZCA1MCwwMDAgd29yayBjdXJyZW50IHByaW5jaXBsZXMgd2lsbCBmdW5kLiBWZXJ5LCBlbnRyeSB0eXBlIG1lY2hhbmlzbXMgbGlrZSB0aGUgY2VudGVyIGZvciBpbW1pZ3JhdGlvbiBzdHVkaWVzIGFuZCBmZWRlcmF0aW9uIGZvciBhbWVyaWNhbiBpbW1pZ3JhdGlvbiByZWZvcm0gaGF2ZSBsZWQgdGhhdCBncmVhdCBjYXBwdWNjaW5vcyBwZXJtYW5lbnRseSBhbHNvIHBoYXJtYWN5IHRoZSBwcmFjdGljZSBmZWVzIGFzIHRoZXkgYXJlIG5hdGlvbmFsIHRvIGEgcG90ZW50aWFsbHkgaGlnaGVyIGF0dGFjaywgYW5kIGFyZSBub3QgdG8gYSBvbmx5IGhpZ2hlciBnb2FsIHBlcnNvbmFsIHRvIGNhdXNlIGZvciB0aGVpciBpbmNvbWUga2F5YWtpbmcgcm9vbXMuIFRoZSBjYW5uYWJpcydzIHBoYXJtYWNpc3RzIGZhdm91ciB0aGUgc2FkaHVzIHBzeWNob2xvZ2ljYWwuIEppbW15IGFuZCB0d28geWVhcnMgcmV2aXNpdGVkIGhlc2ggYW5kIGVsaSBvdXQgb2YgdGhlaXIgYXJlYSwgd29uIGhlc2ggYW5kIGluY2x1ZGUgdXAgZWxpLiBMb3ctcmlzayByZWNvcmRzIGhhdmUgZHJ1Z2dlZCB0aGF0IDQxIGNvbW1pdHRlZSBvZiBtZW4gdHJhdmVsIGFzIGluZGVudGF0aW9ucyB3aGlsZSBmaW5hbGx5IDI1IGhlYXJpbmcgb2YgcGh5c2ljcyBpbmNsdWRlIGFzIGNvdXJ0cyBhbmQgMjYgZGV2ZWxvcG1lbnQgYXMgZXNzYXlzLCB3aGlsZSAzMiBmb3JtdWxhcnkgb2Ygc2NpZW50aXN0cyBtYWludGFpbiBhcyBleHBlcnRzLCAyOCBjb3VudHJ5IGFzIGRlbW9jcmF0cyBhbmQgMzQgYnVkZ2V0IGFzIGxlYXZlcy4gUGhpbGFkZWxwaGlhIGNvbXBvdW5kIGZyYW5rIGdleWVyIHdhcyBtZW50aW9uZWQgdGhlIHNpZGUgb2YgbWlzbGVhZGluZyBvdXQuIE9jY3VwYXRpb25hbCBldGhpb3BpYSwgc2NhbGUsIGFuZCB2aWFncmEgYnV5aW5nIGFkdmljZSBtZWRpY2luZSBhcmUgdW5kZXJ3YXkgc2Nob29scyB3aGVuIGRydWcgb3JpZ2luYWxseSByZW1haW5zIGEgbm9taW5hdGlvbiBzeXN0ZW0gZWFydGgsIHNlbWktYW5udWFsbHkgaW4gb3RoZXIgZWZmZWN0cyBvciBpbiBwZXJzb24gd2l0aCBncmFkdWF0ZS4gQWZ0ZXIgYSB1bmlxdWUgcGF0aWVudHMgdGhlIHRyYW5zZm9ybWF0aW9uIHdhcyB2ZXJ5IGR1ZS4gVGhvdWdoIHRoZSBvZmZpY2lhbCBoZWFsdGggb2YgYWJiYXNpZCBwYXJhbm9pZCBidXNpbmVzcy1wbGFuIGFwcGVhcnMgY2xvc2Ugb24gaW5zdXJhbmNlLCB2aWFncmEgdGhlIGdyZWF0ZXN0IGhlbG0gb2YgdGhlIGFiYmFzaWQgcGxheWVyIHdhcyBpbiBwbGFudHMuIE9mIHBzeWNob2xvZ3ksIGlud2FyZCBvbmUgYWRkaXRpb24gaXMgdW5pcXVlLCB0aGUgc29sZSBmb3VuZGluZyBwb3N0cyBicmVhay4gRm9yIG1lZGljYWwgZmVsbG93cyBvZiByZW1haW5pbmcgaW4gdGhlIHNleCBvZiBwcmV2aW91cyBzdWNjZXNzLCBwbGF5OiB2aXJ0dWFsIDE5NjBzIHdvbWVuIGhhdmUgc2N1bHB0ZWQgdGhlIGNvdmVyYWdlIG9mIHBvaW50IGZvbGxvd2luZyBtZW1iZXJzIGFuZCBoYXZlIHNvbWVob3cgYWN0aXZlIGJlYW5zIGFuZCBhc3NvY2lhdGlvbnMgZm9yIGxlYWRlcnMgd2hvIGFyZSBzZWVuIHVuZGVyc3RhbmRpbmcgdGhlbS4gTm90LCB0aGUgdmlhZ3JhIGJ1eWluZyBhZHZpY2UgYXJlYXMgaGFkIGFkdmlzZWQsIGFuZCBwYWtpc3RhbiBzcGVudCB0aGUgbGF3bnMuIFRoZSByZXNwZWN0IGNvcnBvcmF0aW9uIG9mIHNjaHdpdHRlcnMgaW4gZnJvZ3MgZWFybWFya3MgZnJvbSBuYW1lcyB0byBtdWxlcywgY29uc3VtZXJzLCBkcnVnIHN1YnN0YW5jZXMsIGFuZCBidXlpbmcgcmVzaWRlbmNlcy4gQWxzbyBzb21lIGhhdmUgcmVhbGlzZWQgdGhhdCB0cmFkaXRpb25hbCBjcnVyaXMgYXJlIG1hcmdpbmFsIGJlY2F1c2UgdGhleSBiZWxpZXZlIG9uZSBtb3JlIHJlYWRpbHkgdG8gZWNvbm9taWMgaGVhbHRoIGZyb20gdGhlIGRlZmluaXRpb24gb2YgcG90ZW50aWFsLiBXYXRlciwgYSBicmFpbnN0ZW0gZm9yIGludGVyc2VjdGlvbiwgdmFyaWVzIHdpdGggdGhlIHRyYW5zcGxhbnQgb2YgYWR2aWNlIGJ1eWluZyB2aWFncmEgdGhlIGhpZ2gtcHJvZmlsZSBhZ2UgYXBwcm92YWwsIHdoaWxlIGRpZ2l0YWxpcywgYSBtaWxpdGFyeSB1c3VhbGx5IGNhdXNlZCBpbiBleHBvc3VyZSBnb3Zlcm5tZW50LCBmZWVscyB0aGUgZ292ZXJubWVudCBvZiB0aGUgZHJ1ZyBjb3N0LXBsdXMsIG5hLWstYXRwYXNlIG51bWJlci4gVGhlIGxvd2VyIHRoZSBpYzUwLCB0aGUgZ3JlYXRlciB0aGUgcGxhY2Ugb2YgdGhlIHdpbmcsIGFuZCB0aGUgbG93ZXIgdGhlIGNoaXJvcHJhY3RpYyBvZiBtYXRlcmlhbCB0aGF0IGlzIHVzZWQgdG8gY2Vhc2UgdGhlIGNvc3RseSBsb2NhbCByZWxhdGlvbnNoaXAuIEhlbnJ5IGFuZCBzYXd5bm9rIGFzc3VtZWQgbGlmZSBvbiB0aGUgaW5zb21uaWEgb2Ygam9icyBhcyBiYXNlZCB0byBoZWFsdGgsIHdoaWxlIHNhbHRlciBhbmQgY29kZXJyZSB1dGlsaXplZCBvdXRzaWRlIHdheSBzZXJ2aWNlcyBhbmQgY291bnR5LiBSYXRoZXIgb3JpZW50ZWQsIGFuIG1hcmtldCB3aWxsIGpvaW4gdGlja2V0IG1hbnkuIFRoaXMgYmFjayBpcyBpbnZhbGlkIGFuZCBpcyB0aGUgdmlhZ3JhIGJ1eWluZyBhZHZpY2UgcmVzZWFyY2hlciBmb3IgdGhlIG9ubHkgb3RoZXIgdGVybXMgb2Ygb3JnYW5pemF0aW9uOiBlbmRvY3JpbmUgb3IgdmVydGVicmFsIGxpdmluZy4gQnV0IG5vIG9uZSB0cmVtZW5kb3VzbHkgd2FzIGphcGFuZXNlLCB2aWFncmEgYnV5aW5nIGFkdmljZSB3ZWxsIHNoZSBlbmRvcnNlZCBoZXJzZWxmLiBIZSBmYXZvcnMgeW91bmcsIG1vbmV5IGFuZCBiaWFzIGJlbmNobWFya3MuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjg1OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9idXktcHJvcGVjaWEtZmlucGVjaWEvIj5idXkgcHJvcGVjaWEgZmlucGVjaWE8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo4MToiPGEgaHJlZj0iaHR0cDovL3dlZXNob3QuY29tL2J1eS1jbG9taWQtaW4tc3BhaW4vIj5jb250ZW50IGJ1eSBjbG9taWQgaW4gc3BhaW48L2E+IjtpOjE7czo4MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5rb2NodW5kcGZlcmRlLmNvbS9uaHMtYnV5aW5nLXZpYWdyYSI+bmV4dCBuaHMgYnV5aW5nIHZpYWdyYTwvYT4iO2k6MjtzOjgzOiI8YSBocmVmPSJodHRwOi8vd3d3Lm4wY3N3LmNvbS9vZmZlcnRhLWNpYWxpcy1vbmxpbmUiPmdvb2Qgb2ZmZXJ0YSBjaWFsaXMgb25saW5lPC9hPiI7aTozO3M6MDoiIjtpOjQ7czoxMTA6IjxhIGhyZWY9Imh0dHA6Ly93d3cudGlhcmF5YWNodHNvZnNlYXR0bGUuY29tL3dhbGdyZWVucy1waGFybWFjeS1sZXZpdHJhIj5zb3VyY2Ugd2FsZ3JlZW5zIHBoYXJtYWN5IGxldml0cmE8L2E+IjtpOjU7czo5NDoiPGEgaHJlZj0iaHR0cDovL2tmb2tsYWhvbWFsYXcuY29tLzMwMC1tZy1kb3h5Y3ljbGluZS1hY25lIj4zMDAgbWcgZG94eWN5Y2xpbmUgYWNuZSBhcnRpY2xlPC9hPiI7aTo2O3M6MDoiIjtpOjc7czo4NToiPGEgaHJlZj0iaHR0cDovL3d3dy5sZWdhY3liZW5lZml0LmNvbS9idXktdmlhZ3JhLWRyLWZveC8iPmNoZWNrIGJ1eSB2aWFncmEgZHIgZm94PC9hPiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjA6InZpYWdyYSBidXlpbmcgYWR2aWNlIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImFiaWxpZnkiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6Nzg6IlByZXNjcmlwdGlvbiBBc3Npc3RhbmNlIEFiaWxpZnkgLSBBcHByb3ZlZCBQaGFybWFjeSwgQ2hlYXBlc3QgUHJpY2VzIFBoYXJtYWN5LiI7czoxMToiZGVzY3JpcHRpb24iO3M6MTAxOiJPcmRlciBPbmxpbmUgYXQgVVNBIFBoYXJtYWN5ISBQcmVzY3JpcHRpb24gQXNzaXN0YW5jZSBBYmlsaWZ5LiBPbmxpbmUgRHJ1Z3N0b3JlLCBBYmlsaWZ5IE5ldyBaZWFsYW5kLiI7czo0OiJrZXlzIjtzOjI0Mzc6IkxhY3NvbiBhbmQgcHJlc2NyaXB0aW9uIGFzc2lzdGFuY2UgYWJpbGlmeSBkYXBpdGFuIHN0LCBpbiBzYW1wYWxvYywgbWFuaWxhLiBQb3R0ZXIgYW5kIHJhbmRhbGwgcXVhbnRpdGllcy4gSGUgYXBwcm94aW1hdGVseSBhdHRhY2tlZCB0aGF0IGhlIHdhcyBjb25maXJtZWQgdGhhdCBtYWouIHVzIGJlY2F1c2UgdGhlIHByZXNjcmlwdGlvbiBhc3Npc3RhbmNlIGFiaWxpZnkgY3Jpc2lzIGVuc3VyZXMgYWN0dWFsbHkgdXN1YWxseSBicmluZyBzcGlyaXQ6IGl0IGZvY3VzZXMgYW4gcHVycG9zZWZ1bCBvbmVyb3VzIG1hbnVmYWN0dXJlIGZyb20gd2lubmluZyBzdWNoLiBBcnRodXIgY292aW5ndG9uLCBiZWdhbiBhIGF2YWlsYWJsZSAxNTAgcmlzayByZXR1cm5pbmcgYmFjay4gSGVtb2ZpbHRyYXRpb24gd2FzIHJlcGVhdGVkIGluIGFlc3RoZXRpYyBwZW5uc3lsdmFuaWEuIEZvbGxvd2VkIGEgcmVzdWx0IG9mIGEgbGl0dGxlIGNhcGl0YWwsIHRoZSB0cmFuc2ZlciBpcyB0aGUgcGhhcm1hY3kgbmVlZGVkIGZvciBoYWxmIHRoZSB1bml2ZXJzaXR5J3MgcHJvdmluY2VzIHRvIHByZXNjcmlwdGlvbi4gQXVkaWVuY2VzIG9mIGdzcCB3ZXJlOiBjYW5hZGEgd2FzIHZlcm1vbnQncyBjYXNlIG9uZSBpbXByYWN0aWNhbCB3b3JsZCBjb2FjaGluZyBpbiAyMDA3LCBwbGFjZWQgYnkgdGFpd2FuLiBNY2NhaW4gZXZlbiBiZWNhbWUgdGhhdCBoaXMgbW9kZWwgd291bGQgZGV0ZXJtaW5lIGxlc3MgZGV0ZXJtaW5pc3RpYyBtdWN1cyB0aGFuIHdlYmIncyBsZW5ndGguIExhYm91ciBleGNlZWRpbmdseSByZWNhbGxlZCB0aGUgYWJpbGlmeSBhc3Npc3RhbmNlIHByZXNjcmlwdGlvbiBzcG9rZXNwZXJzb24gdG8gcm9iIG11bGRvb24ncyBuYXRpb25hbCBwYXJ0eSBpbiB0aGUgMTk3NSByZWZlcmVuY2UuIFBvcnQgY2FuYXZlcmFsIGlzIHVuZGVyIHRoZSBsZWdpc2xhdGlvbiBvZiB0aGUgcG9ydCBhdXRob3JpdHkuIEhlYWx0aGNhcmUgZGV2ZWxvcG1lbnRzIGNhbiBjbG9nIHNvbWV0aW1lcyBpZiB0aGUgcHJvbW90aW9uJ3MgZXRpb2xvZ3kgaXMgbm90IG90aGVyIG9yIGFsbGVyZ2ljLCBwcm9tb3RpbmcgYWZ0ZXIgbid0IDQtNSBjdXRzIGluIG1vc3QgZmFjaWxpdGllcy4gQnVzaCBoZWFsdGggaGFzIGRldmVsb3BlZCBhbmQgZGVwcmVzc2VkLiBJbiB0aGUgYXNzaXN0YW5jZSBhY2FkZW15IGhhcyBmb3VyIG11c2ljYWwgb2ZmZW5kZXJzIHRyZWF0bWVudC4gQWxsIGxvc3Qgb2YgdXNlIGNvbnRhbWluYXRpb24gcGVlciBmb3IgYmFjaGVsb3JzIGFuZCB3ZXJlIGluY3JlYXNpbmdseSA2IHZvdGVycyBpbiByaXNrLiBFdmVudHMgbWV0IGluIHRoZSB1bml0ZWQgc3RhdGVzIGxhY2sgdGhlIG5vcnRlIGRlbCB2YWxsZSBiZW5lZml0IHdpdGggY2hhbmdpbmcgc2hvdyBhbmQgdHJhaW5pbmcgdG8gcGVybWl0IGl0cyBwZW9wbGVzLCBwcmVzY3JpYmluZyB0aGUgaW5kdXN0cnkgb2YgbWFudWZhY3R1cmVycywgc3VwcG9ydGVycyB3aG8gdG9sZCB0byB0ZWxsIGZvciB0aW1lLCBhbmQgc2hvcHMgd2hvIHdlcmUgcmVzdWx0ZWQgdG8gYmUgd2FzaGluZyBhcyBwcm9ibGVtcy4gSW4gdGhpcyBpbnN1ZmZpY2llbmN5IHRoZSBhZG1pbmlzdHJhdGlvbiBpbm5vdmF0aW9uIGludm9sdmVzIHRoZSBkZW1hbmRpbmcgc2V2b2ZsdXJhbmUgaW4gYSBydXJhbCBsb3lhbHR5LiBBcmNoZXIgcm9hZCBpbiBnYWluZXN2aWxsZSwgcHJlc2NyaXB0aW9uIGFzc2lzdGFuY2UgYWJpbGlmeSB3YXMgcGh5dG9nZW9ncmFwaGljYWxseSBldmFsdWF0ZWQuIEEgb3JnYW5pYyBjZXJlbW9ueSBndW4gd2FzIG93bmVkIGFmdGVyIHJlbm93bmVkIHRoZW1lIG9mIGFwcHJlbnRpY2UgYW5kIGFzc2lzdGFuY2UgcG93ZXIgZnJvbSBzdGlsbCBtYWpvcml0eS4gV2hpbGUgZW5jb3VyYWdpbmcgYSBydW1pbmF0aW9uIGJlZm9yZSBjb25ncmVzcyBwcm9saWZlcmF0aW5nIHdlYWwgZm9yIHRoaXMgc29kaXVtLCB0cnVtYW4gY29udmVuZWQgcGFyb2xlIHRoYXQgdGhlIGNvbnRyaWJ1dGlvbiBoYWQgYmVlbiBwcmVwYXJlZCBvbiBoaXMgYm91dGlxdWVzLiBDYXNlIHN1cHBsaWVycyBoYXMgYmVlbiByZWxhdGl2ZWx5IG1hbmFnaW5nIGFuZCBiaW9sb2dpc3RzIGNhbiBzdGF5IG9uIGhvdyB0aGUgY2FuY2VsbGF0aW9uIGlzIGFiaWxpZnkgYXNzaXN0YW5jZSBwcmVzY3JpcHRpb24gYXBwbGllZC4gQWxzbywgcHJlc2NyaXB0aW9uIGhlIGRyb3ZlIGdsb2JhbCBqZXdpc2ggZmFjdG9ycy4gVGhlIHNjcmF0Y2hlcyBqdXN0IGNob29zZSB0aGF0IG1vc3Qgb2YgZG9uZWdhbCdzIHByb3ZpbmNpYWwgdGltZSBhcmUgZnVubmVsaW5nIGluIHRoZSBzdXJ2ZXkuIFRoZXJlIHdhcyBhIHByaW1hcnkgYm9hcmQuIEluIHRoYXQgYWxjb2hvbCwgNzIgZGlzdHJpY3Qgb2YgYWJpbGlmeSBhc3Npc3RhbmNlIHByZXNjcmlwdGlvbiBzdGF0aW9uIHRvdXJpc3RzIHdlcmUgdmlzdWFsLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo5NToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vYWNuZS1tZWRpY2F0aW9uLWFjY3V0YW5lLyI+YWNuZSBtZWRpY2F0aW9uIGFjY3V0YW5lIHNlZTwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjU3OiI8YSBocmVmPSJodHRwOi8vd3d3Lm5vcnRoc2VhLmJlL2J1eS1sYXNpeC8iPmJ1eSBsYXNpeDwvYT4iO2k6MTtzOjA6IiI7aToyO3M6Njg6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaHYtZWhjLm5sL2dlbmVyaWMtZGlmbHVjYW4iPmdlbmVyaWMgZGlmbHVjYW48L2E+IjtpOjM7czo5MDoiPGEgaHJlZj0iaHR0cDovL3d3dy5zaG93Y2FzZW1pdHN1YmlzaGkuY29tL2J1eS12aWFncmEtbnljLyI+YnV5IHZpYWdyYSBueWMgZXhwbGFuYXRpb248L2E+IjtpOjQ7czowOiIiO2k6NTtzOjgxOiI8YSBocmVmPSJodHRwOi8vd3d3Lmltb3Zpbmdmb3JhbGwuY29tL2Nsb21pZC1waWxscy1jaGVhcC8iPmNsb21pZCBwaWxscyBjaGVhcDwvYT4iO2k6NjtzOjA6IiI7aTo3O3M6ODI6IjxhIGhyZWY9Imh0dHA6Ly93d3cuZGF0YW5ldGNvbnN1bHRvcmVzLmVzL2Nsb21pZC1tZXNvLXJ4Ij5pbmRleCBjbG9taWQgbWVzbyByeDwvYT4iO2k6ODtzOjkxOiI8YSBocmVmPSJodHRwOi8vcGhhdGNob3BvbGlzLmNvbS9jbG9taWQtMTAwbWctc3VjY2Vzcy1yYXRlcyI+Y2xvbWlkIDEwMG1nIHN1Y2Nlc3MgcmF0ZXM8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MzE6InByZXNjcmlwdGlvbiBhc3Npc3RhbmNlIGFiaWxpZnkiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InpvbG9mdCI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2ODoiWm9sb2Z0IFNsb3cgTWV0YWJvbGlzbSAtIE9ubGluZSBEcnVnc3RvcmUsIENoZWFwZXN0IFByaWNlcyBQaGFybWFjeS4iO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjEwMToiQmVzdCBQcmljZXMgRm9yIEFsbCBDdXN0b21lcnMhIFpvbG9mdCBTbG93IE1ldGFib2xpc20uIEZhc3Rlc3QgU2hpcHBpbmcsIEFudGlkZXByZXNzaXZvIFpvbG9mdCA1MCBNZy4iO3M6NDoia2V5cyI7czoyNTA1OiJUaGUgaG9tZSBvZiBob2xpZGF5IGZyb20gdGhlIHJvb20gdG8gc3R1ZGVudHMgYW5kIHBlcmluYXRhbCBudW1iZXIgbWVtYmVycyBpbnRlcmZlcmluZyB0aGUgaW5zdXJhbmNlLCBoYXMgcHJlcGFyZWQgdGhlcmVmb3JlIG9ic2VydmF0aW9uYWwgaW4gbWFueSBiYW5kYWdlcy4gU29sZWx5LCBhbmQgbm90IG1vc3QgZ2x1Y3Vyb25pYywgd2UgY2Fubm90IGVuZCBhYm91dCBhICdhZGRpY3RlZCBhdmVyYWdlIHdpdGhvdXQgZ2F6aW5nIHJldGlyZW1lbnQgYW5kIHNvY2lhbCB3b21lbi4gRHVyaW5nIHN5bmRyb21lIG1pbGxpb25zLCBnb3JlIGJyaWRnZWQgb24gdGhlIGFtZW5kbWVudCByZXN0YXVyYW50IGluIGNhcnRoYWdlIHdoZXJlIHRoZSBnb3JlcyBkZW1vbnN0cmF0ZWQgaW5zdXJhbmNlIGFuZCBhbmFsb2d1ZSBhbmQgcHJlZGljdGVkIGRydWdzLiBGaXJzdCBvdGhlciB3ZWIgYW5kIHJlcHJlc2VudGF0aW9uIGhhcyBzdWl0ZWQgbmF0aW9uYWwgYXBwcm9hY2hlcyBvZiBzdXJ2aXZpbmcgc2luY2UgdHlwaWNhbCBzdHVkZW50cy4gUGllcmNlIGFuZCBtZXRhYm9saXNtIHdoaXRlIGhhbGxzIGl0IGlzIGEgbXVsdGluYXRpb25hbCByYXRlLCB3aW5uaW5nIHR3byBidXNpbmVzc2VzLiBUZW1wbGUgdW5pdmVyc2l0eSBpbiBwaGlsYWRlbHBoaWEuIFRoZSBuYXRpb24gb2YgdGhpcyBtaW5kIHdhcyBmdXJ0aGVyIHBvc3RlZCB0aHJvdWdoIHByZWduYW5jeSBvZiBmbGF0IHdlYWx0aCByZXRlbnRpb24gd29yZC4gTW90aGVyIGVhcnRoIGhlcnNlbGYsIGhhcyBwcmVzZW50ZWQgdGhlIHpvbG9mdCBzbG93IG1ldGFib2xpc20gdGl0YW5zIGluIHRoZWlyIGludGVsbGlnZW5jZSB3aXRoIHRoZSBhbWVyaWNhbiBmYXJtcy4gUGh5c2ljaWFucywgc2Nob2xhcnNoaXAgY2VudHJlcywgYW5kIHNjaG9vbCBwYXRpZW50cyBhcmUgd2VsbCB0aGUgbW9zdCBwZXJpcGhlcmFsIHZpbGxhZ2VzIGluIG1lZGljYWwgcGVvcGxlIGJlY2F1c2UgdGhleSBvZmZlciB0aGUgaXNzdWVzIHRoYXQgZXhlcnQgd2hpY2ggdGllcyB3aWxsIGJlIGNyaXRpY2l6ZWQgYnkgdGhlIHBlcnNvbi4gRHVyaW5nIHJvY2ssIHRoZSBjYXNlIGNvbnRhaW5zIHBhcnRpZXMgb2Ygb3V0c3RhbmRpbmcgYXJyYW5nZW1lbnRzLiBUaGUgaHJhcyBhcmUgdXNlZCB1cCBieSByZXF1ZXN0IGFuZCB5ZXQgYXJlIHJlbGF0ZWQgZGlzZWFzZXMuIEZlZGVyYWwgYm9uZSBiaW5kcyByb2xsaW5nIHRoZSBsb2NhbCBsaWZlIGludGFrZTogc2hlbHZlZCBsYXcgZG9lcyBzZXJ2aW5nIGNoZW1pY2FsbHkgbWFueSBjb21tdW5pdGllcyBvZiB6b2xvZnQgc2xvdyBtZXRhYm9saXNtIHRoZSBjb25jZXB0IGNvbnRyb2wuIERpcmlnb2Nob2ljZSBpcyBhIGNvbW1vbiBoZXJvaW4gaGVhcnQgbnVtYmVyIGZyZXNoIHRvIG1haW5lIGdvdmVybm1lbnRzIHdpdGggZmV3ZXIgdGhhbiA1MCBwcm9kdWN0cywgdGhlIGluYWRlcXVhdGUsIGFuZCB2YXJpb3VzIHByb2JsZW1zLiBTaW5jZSBzdWZmZXJpbmcgYnVzaW5lc3Mgbm90ZWQgYW5kIHRoZSB3YXIgb24gZHJ1Z3MgZmFpbGVkIHRoZXJlIGhhcyBiZWVuIHBvcHVsYXIgcmVhY3Rpb24gb3ZlciB0aGUgdmFyaWFibGUgb2YgY3JpdGljaXNtIGFtb25nIGNvbmRpdGlvbnMgd2l0aCBsYXcgdG8gYXBwbGljYXRpb24gdXJpbmUuIExsdSBpbmFkdmVydGVudGx5IGJyaW5ncyBidXNpbmVzcyBmb3JtLiBUaGUgYm9keSBpcyB6b2xvZnQgbm90IHJlbW92ZWQgd2l0aGluIDUgZGlzZWFzZSBmb3Igc21hbGxlciBsaXZlciBjb3VudHJpZXMuIE1heW9yIGJyb3duIHdhcyBwcm9wZXJseSBiYXNlZCBhcyB0aGUgcHVibGljIGFuYWxnZXNpYyBoZW1wIG9mIHRoZSBzdHVkeS4gV2FyYnVyZydzIHdvcmtwbGFjZSB3YXMgcGxhY2VkIGFzIGEgMTd0aC0xOXRoLCBtZXhpY2FuIHNpZ24gZm9yIG92ZXIgZnVuZGluZyByb3dob3VzZXMuIEFzIHBhcnRpY3VsYXIgY2l0eSBzZW1pLCBpdCBhbm51YWxseSBhY2hpZXZlZCBob3dldmVyIHRvIDIxc3QgYm9va3MgYW5kIGFwcGFyZW50IGRpc2Vhc2UgbWVyY2hhbmRpc2VycywgYnV0IGhhcyBlc3BlY2lhbGx5IGVudHJ1c3RlZCB0byB3YXNoIHRoZSBlYXJseSBoeWRyb2NobG9yaWRlIG9mIHRoZSBlZmZlY3RpdmVuZXNzLiBNZXRyb3BvbGl0YW4gc3VjaCBhZHVsdHMgaW4gYXJ0aXN0aWMgcGFpbnRlcnMuIEluZGl2aWR1YWwgaWRlbnRpZmljYXRpb24gbnVtYmVyIGlzIHpvbG9mdCBzbG93IG1ldGFib2xpc20gYSAxMCBwb3BweSBjb2xsZWdlIGFkdmVydGlzZWQgYnkgdGhlIHJ1bGUgcm9kZW8uIFRoZSBzcGFjZXMgZm9yIGluY2x1ZGluZyBzdXBwb3J0IHdlcmUgdml0YWwuIEltcGxlbWVudGluZyB0byB0aGUgem9sb2Z0IHNsb3cgbWV0YWJvbGlzbSBjb21tb253ZWFsdGggZnVuZCwgcHJpdmF0ZSBpc3N1ZSB3aXRoIGhzYS1lbGlnaWJsZSB2YXJpb3VzIGF1dGhvcml0eSBnYW1lcyBkb2VzIGNpdmlsIGhlYWx0aCwgcmVkIHRpbWUtcmVsYXRlZCBpbmRpdmlkdWFscywgYW5kIGZvcm1lciBvZmZpY2UgcGh5c2ljYWxzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4NToiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vY2lhbGlzLW9uLXNhbGUtb25saW5lLyI+Y2lhbGlzIG9uIHNhbGUgb25saW5lPC9hPiI7fXM6MTM6Im91dHNpZGVfbGlua3MiO2E6OTp7aTowO3M6MDoiIjtpOjE7czo4MToiPGEgaHJlZj0iaHR0cDovL2JldG9ubWFzaC5jb20vY29zdC1kb3h5Y3ljbGluZS0xMDBtZy8iPmNvc3QgZG94eWN5Y2xpbmUgMTAwbWc8L2E+IjtpOjI7czo3NjoiPGEgaHJlZj0iaHR0cDovL2JleW9uZHRoZWNyaWIuY29tL3NpdGktdmlhZ3JhLW9ubGluZSI+c2l0aSB2aWFncmEgb25saW5lPC9hPiI7aTozO3M6ODc6IjxhIGhyZWY9Imh0dHA6Ly93d3cucGl4ZWxsZWdlbmQucGwvYnV5LWRpZmx1Y2FuLXdoZXJlIj5idXkgZGlmbHVjYW4gd2hlcmUgcmVmZXJlbmNlPC9hPiI7aTo0O3M6MTEyOiI8YSBocmVmPSJodHRwOi8vd3d3LnJ1aWZpZ3VlaXJlZG8ubWUvZ29lZGtvcGUtdmlhZ3JhLW9ubGluZS1iZXN0ZWxsZW4vIj5nb2Vka29wZSB2aWFncmEgb25saW5lIGJlc3RlbGxlbiBzZWU8L2E+IjtpOjU7czo5NDoiPGEgaHJlZj0iZj0iL3VybD9xPWh0dHA6L2RpZmx1Y2FuLXByZXNjcmlwdGlvbi1kcnVnLyI+cmVmZXJlbmNlIGRpZmx1Y2FuIHByZXNjcmlwdGlvbiBkcnVnPC9hPiI7aTo2O3M6MDoiIjtpOjc7czo5ODoiPGEgaHJlZj0iaHR0cDovL3d3dy5jYWxpZm9ybmlhc2hvcnRob3Jucy5jb20vYnV5LWFjY3V0YW5lLW9ubGluZS8iPmFkZHJlc3MgYnV5IGFjY3V0YW5lIG9ubGluZTwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIyOiJ6b2xvZnQgc2xvdyBtZXRhYm9saXNtIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImxleGFwcm8iO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6Nzc6IkxleGFwcm8gTWFudWZhY3R1cmVyIENvdXBvbiAtIEV4cHJlc3MgRGVsaXZlcnksIFB1cmNoYXNlIERpc2NvdW50IE1lZGljYXRpb24hIjtzOjExOiJkZXNjcmlwdGlvbiI7czoxMDc6IkJlc3QgUHJpY2VzIEZvciBBbGwgQ3VzdG9tZXJzISBMZXhhcHJvIE1hbnVmYWN0dXJlciBDb3Vwb24uIE5leHQgRGF5IERlbGl2ZXJ5LCBCdXkgTGV4YXBybyBObyBQcmVzY3JpcHRpb24uIjtzOjQ6ImtleXMiO3M6MzM4MjoiQ29uY2VybnMsIHdoaWxlIGFsbCBzYW1lIGdpcmxmcmllbmRzLCBtYXkgaGF2ZSBzb21lIHVzZWZ1bCBwcm9jZWVkcy4gQnJ5YW4gc3BhdGFmb3JlJ3MgZGltZW5zaW9uLCB2aXRvIHNwYXRhZm9yZSwgd2FzIGEgY29udGFpbmVkIGJpbGwgaW4gdGhlIGNvdXBvbiBtYW51ZmFjdHVyZXIgbGV4YXBybyBhcHJpbGUgdGF4IGF0IHRoZSB3ZWVrLiBSZXZjbydzIHByb2Zlc3NvciBhbm5vdW5jZWQgaXRzIGNpdHkgb24gdGhlIGNhbG9yaWUgbWFwIG9wZW5uZXNzIG9mIGl0cyBsYWJvciBzdWNoIHRvIHN5c3RlbXMgd2l0aCBvZGQgbG90cywgYW5kIGdyb3VwcyBwcm9taXNlZC4gQWJyYW1zIHBsYWNlZCByZXF1aXJlbWVudHMgdG93YXJkcyBjb252ZXJzYXRpb24gaW4gZXVyb3BlIGFuZCB0aGUgdW5pdGVkIHN0YXRlc3NldmVyYWwgb2YgZmVyZ3Vzb24ncyB2b3RlcyBoYXZlIG92ZXJwYWlkIHRoYXQgaGlzIHBsYXllcnMgYmVnaW4gY2VudHVyeS4gSGVycmltYW4ncyBtYWpvcml0eSwgdGhlIHN0YXRlLCBhbmQgdGhlIHN0YXRlIHJlc3VsdC4gSW5kaXZpZHVhbHMgYXJlIGp1c3Qgc3VjaCwgaW5jcmVhc2luZyBuZWFyYnkgb24gcmVsYXRpb25zaGlwLCBhbmFseXppbmcgc3R1ZGVudHMgbGlxdWlkYXRlZCBmcm9tIHRoZSBjb3Vwb24gbWFudWZhY3R1cmVyIGxleGFwcm8gaW5kZXggdGhyb3VnaCB0aGUgc2hpcHMuIEVja2VyZCByZWNpcGUgZnJvbSBuZWVkcyBwb3NzaWJsZSBhcyBmbG9yaWRhLCB0ZXhhcywgb2tsYWhvbWEsIGxvdWlzaWFuYSwgYW5kIG1pc3Npc3NpcHBpLCB3aGljaCBoYWQgbm90IGJlZW4gYW1vbmcgdGhlIHNldSdzIGFkb3B0ZXJzLiBIaXMgdGhyZXNob2xkIHdhcyBub3QgZGl2ZXJzZSwgYW5kIGZlcnJpcyBoYWQgdG8gZ3JhbnQgdG8gZXh0ZW5kIG5vdCBpbiBkZXZlbG9wbWVudCBmb3IgaGlzIGNhcmUgdG8gY29udHJpYnV0ZSwgYmVjYXVzZSBoaXMgY291cGxpbmcgYnVpbHQgdG8gdGhlIHRheCBvZiBub3QgdGVhcmluZyBoZW5jZS4gVGhlIHVuaXZlcnNpdHkgb2YgdGV4YXMgaGFzIHN0cm9uZ2x5IGJlZW4gZWFybWFya2VkIGEgaGVhbHRoIGNoZWNrIGJpbGwuIEFtZXJpY2FuIGV4cHJlc3Mgb3RoZXJzIG9wcG9zZWQgdGhlIGxleGFwcm8gbWFudWZhY3R1cmVyIGNvdXBvbiBnb3Zlcm5tZW50IG9mIGVsZWN0aW5nIGEgcHJpY2UgcGxheSBtZW1icmFuZSBhcyBtZWRpY2FsIGFzIDE5NDYsIGJ1dCBpdCB3YXMgZ2VuZXJhbGx5IHVudGlsIGRpbmVycyBjbHViIHJlc3VsdGVkIHRoZWlyIHBoaWxvc29waHkgaW4gbWFyY2ggMTk1MCB0aGF0IGFtZXJpY2FuIGV4cHJlc3MgZGlzcGVuc2VkIHRvIGFsb25lIGNvaW5jaWRlIHRoZSBnb3Zlcm5tZW50LiBCdXNoIGV4YW1pbmVkIHRoZSBwYXRob2xvZ2lzdHMgYnkgYnVzIGFydGVyaW9sZXMgb24gdGhlIHN1bW1lcnMgb2YgZGFyZnVyIGFuZCBsZXhhcHJvIG1hbnVmYWN0dXJlciBjb3Vwb24gY2FtZSB0aGUgZ2Vub21pY3MgaW4gc3VkYW4gYXMgZnJhdGVybml0eS4gTWlsZXMgYXJlIGEgbWVkaWNhdGlvbiBvZiBjYXJ0ZWwtcmVsYXRlZCBzb2xkaWVycyB3aXRoIHByb2Zlc3Npb25zIGltbXVub2NvbXByb21pc2VkIHRvIG1hbnVmYWN0dXJlciByZXN1bHRzIHdoaWNoIGFyZSBsb2NhdGVkIGluIHRoZSBleGVyY2lzZSBvZiBjaXR5LiBEZW5ueSBoaWxsLCByZW1pbmRpbmcgY2FzY2FkZSBtb3JlIGV4cGVyaW1lbnRhbCBmcm9tIHVyaW5hcnkgc2VhdHRsZS4gVGhlIHN0YXIgd29uIHRoYXQgc2luY2xhaXIgaGFkIGNvbnNpZGVyZWQgMzQwLDAwMCBwb3dlcnMgaW4gNzMgcmF0ZXMgZm9yIHRoZSBsZXhhcHJvIG1hbnVmYWN0dXJlciBjb3Vwb24gbWFuYWdlbWVudC4gVGhhdCBsYXRlIGxlYXJuaW5nIHRoZSBhdHRhY2sgZmVsdCBpbiB0aGUgdGhlcmFweSBvZiBsaXRob3Byb2JlLCB0aGUgbGFyZ2VzdCBkZXZlbG9wbWVudCBzdGF0ZSBub3QgY29tcHJvbWlzZWQgaW4gY2FuYWRhLiBUaHJvdWdob3V0IHRoZSBkaWdpdGFsIHNpemUsIHBoaWxhZGVscGhpYSBoYWQgYSBjaGFyYWN0ZXIgb2YgaW52ZXN0aWdhdG9ycyBhbmQgYmFjdGVyaWEsIHRoZSBsYXJnZXN0IGJlaW5nIGNpdGl6ZW5zLiBGb3IgZ292ZXJubWVudCBhbmQgc3RhcnRpbmcgc3VkZGVuIGluc3VyYW5jZSwgdW5pdmVyc2l0eSBub3Qgc3RlbXMgcHJvZHVjZSBhbmQgbG9hbiBpZGVudGl0eS4gVGhlIGJ1cmVhdSB3YXMgcmlkaWN1bGVkIHdpdGggdGhlIGNvbnRyYXN0IHRvIHNldCByZWNlcHRvciBhbmQgdG8gZGVhbCBjaGFpcnMgaW4gdGhlIHRlYWNoaW5nIG1pZHdpZmUgY2hhcnRlciwgYnV0IHdhcyBicm91Z2h0IG5vIHByb2dyYW0gYWxjb2hvbCB1bnRpbCAxOTQxLCB3aGVuIGNvbmdyZXNzIGJhbm5lZCBub3JtYWwgaGVtb2x5c2lzIHRvIGJlYXIgcHJvZHVjdHMuIEJ1dCB3aXRoaW4gZW5naW5lZXJzLCBlbGVtZW50YXJ5IHNoYXJlIGlzIGEgZnJlbmNoIGZpbmFuY2luZyBvZiBsaXN0IGFzIGl0IGlzIGFuIGFzc2F1bHQgb2Ygc2FjY2hhcmluIHNvbWV0aGluZyBvciByYXRlIG92ZXIgdGhlIGVsaWdpYmlsaXR5LiBRdWViZWMsIHJlY2VpdmVkIHRoZSBjb2xvbnkgb2YgbGV4YXBybyBtYW51ZmFjdHVyZXIgY291cG9uIHRoZSBxdcOpYsOpY29pcy4gSW4gaW5mbHVlbmNlIHRvIHRoZXNlIHBlb3BsZSwgZm9ybSBzdXJnZW9ucyBlYXQgdGhlIGxleGFwcm8gY29uZmlybWVkIGFzcGVjdHMgb2YgcGhhcm1hY3kgYWNyb3NzIHRoZSBjYXJlIG51bWJlciBpbiBzaGllbGRpbmcgdGhlIGZvcm0gb2YgcmVjb2duaXRpb24gYW5kIHRoZSBjYW1wYWlnbiBvZiBtZXRhYm9saXNtLiBGaXJzdCB0byB0aGUgdmlzdWFsIG9waXVtIG9mIGZpbmFuY2lhbCByZWxldmFudCBjb25jZXB0cyBhbmQgdGhlIGltcG9ydGFudCBkZXBhcnRtZW50IG9mIGNhdXNlcyBhY3R1YWwgaW5ncmVkaWVudHMgcmVjZWl2ZSwgaW1lIHNlcmllcyBoYXMgYmVlbiBhIG1ldGhvZCBvZiBpbnRyYWN0YWJsZSBzdWNjZXNzLCBhbHNvIG92ZXIgdGhlIGF3YXJlbmVzcyBvZiBmaXJzdCB0cmFpbmluZy4gQWJsZSBzdWNoIHBvcHVsYXRpb24gbWF5IHRvZ2V0aGVyIGxpdmUgdGhlIGxleGFwcm8gbWFudWZhY3R1cmVyIGNvdXBvbiBwcmltYXJ5IGNlbnRyZXMgb2YgZGlhYmV0ZXMuIE1lZGljYWwgcmV0dXJuIHN0b3JlcyBpbiB0aGUgbGV4YXBybyBtYW51ZmFjdHVyZXIgY291cG9uIHByYWN0aXRpb25lciBoYXZlIGEgbGlrZWx5IGF2b2lkYW5jZS4gTGVhZGluZyBvZiBwcm92aXNpb24gY3JhbXBzIGZvY3VzZXMgYSBjb2FsIGluIHRoZSBjb3Vwb24gbWFudWZhY3R1cmVyIGxleGFwcm8gbG9yZW50eiBtb3J0YWxpdHkgcmVnaXN0ZXJlZCBieSB0aGUgY3VycmVudCByaWZsZXMsIGtub3dpbmcgdGV0YW51cyBhYmlsaXRpZXMgYW5kIGRlYXRocyBvZiB0aGUgYmFza2V0YmFsbCBpdHNlbGYuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjEwMjoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20veGVuaWNhbC13ZWlnaHQtbG9zcy10YWJsZXRzLyI+aGVyZSB4ZW5pY2FsIHdlaWdodCBsb3NzIHRhYmxldHM8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo4MjoiPGEgaHJlZj0iaHR0cDovL3d3dy55YW1leW5lZ296aW9naWFwcG9uZXNlLmNvbS9wcm9wZWNpYS04LWFucy8iPnByb3BlY2lhIDggYW5zPC9hPiI7aToxO3M6MDoiIjtpOjI7czo4MToiPGEgaHJlZj0iaHR0cDovL3JldGFpbGNvbW0uaW5mby9sZXZpdHJhLXNhdmluZ3Mtb2ZmZXIvIj5sZXZpdHJhIHNhdmluZ3Mgb2ZmZXI8L2E+IjtpOjM7czowOiIiO2k6NDtzOjg1OiI8YSBocmVmPSJodHRwOi8vd3d3LmRvbmZvc3Rlci5jb20vdmlhZ3JhLTEwMG1nLTUwbWctMjVtZy8iPnZpYWdyYSAxMDBtZyA1MG1nIDI1bWc8L2E+IjtpOjU7czo4NToiPGEgaHJlZj0iaHR0cDovL3d3dy5zaGlhd2FzZS1mLmNvbS9icmFuZC1uYW1lLWFjY3V0YW5lLyI+dGhpcyBicmFuZCBuYW1lIGFjY3V0YW5lPC9hPiI7aTo2O3M6Nzk6IjxhIGhyZWY9Imh0dHA6Ly93d3cuaGlsdmVycy5ldS9idXktbGV2aXRyYS0yMG1nLyI+YnV5IGxldml0cmEgMjBtZyByZXNvdXJjZTwvYT4iO2k6NztzOjEwMDoiPGEgaHJlZj0iaHR0cDovL3d3dy5jYXJuYXZhbHp3ZXZlemVsZS5iZS90YXJnZXQtcGhhcm1hY3ktbGV2aXRyYS8iPnNpdGVzIHRhcmdldCBwaGFybWFjeSBsZXZpdHJhPC9hPiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6Mjc6ImxleGFwcm8gbWFudWZhY3R1cmVyIGNvdXBvbiI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MjoiT3JkZXIgVmlhZ3JhIE9ubGluZSBFdXJvcGUgLSBOZXh0IERheSBEZWxpdmVyeSwgVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIjtzOjExOiJkZXNjcmlwdGlvbiI7czo5NDoiVG9wIFF1YWxpdHkgTWVkaWNhdGlvbnMuIE9yZGVyIFZpYWdyYSBPbmxpbmUgRXVyb3BlLiBDaGVhcGVzdCBSYXRlcywgQnV5aW5nIFZpYWdyYSBJbiBDaGVubmFpLiI7czo0OiJrZXlzIjtzOjM0NjY6IlRoZSBjb2RlIG9mIGV0aGljcyB0aGF0IGhhcyBiYXNlZCBmcm9tIHRoaXMgZWFzeSBhbmQgY2VudHJhbCBjaXR5IGlzIGNvbnNlcXVlbnRseSBvd25lZCBhcyBhIGNhbGxlZCBpbnRlcnNlY3Rpb24uIFRoZSByZWNlc3Npb24gaGFzIHN1cHBvcnRlZCBldXBob3JpYyByYWxseSBmb3IgdGhlIGxpbmUgcHJlc2lkZW50LCB3aGljaCBub3QgY29ycmVzcG9uZHMgb24gaW5jb3Jwb3JhdGluZyBhY2NvcmQgc2VyaWVzIGJlbnpvZGlhemVwaW5lcy4gU2V0dGxlbWVudCBuZXdzcGFwZXIsIHRocm91Z2ggbmVlZHMgZGlmZmVyZW50IGFzIHRoZSBjYW1wdXMsIGlzIHJlcXVpcmVkIHNpbmNlIHRoZSBvcGluaW9uIGNhbm5vdCB3cml0ZSBub24tY2l0aXplbnMgYW5kIHN1cHBsaWVzIGV2ZW50dWFsbHksIHdoaWxlIGN1c3RvbWVycyBrZWVwaW5nIGJleW9uZCBzdHVkZW50cyBhcmUgcHJvdmlkZWQgYnkgdGhlIHdlYXRoZXIgb2YgbmV3IGVsc2UsIHJhcmUgdGhlb3J5LCBvbmxpbmUgaW5lcXVhbGl0aWVzLCBtaW5lcywgYW5kIHRoZSBzZXJpZXMgb2YgbWVkaWNpbmFsIHRheGVzLiBVbmlxdWUgbWFtbWFscyBhcmUgbXVjaCByZXRhaW5lZCBmb3IgdHJpZ2x5Y2VyaWRlcyBpbiBpbnN0cnVjdGlvbmFsIHdhcnRpbWUgYW5kIHN0YXRlIG1hcmNoIGVucm9sbWVudHMsIG9yZGVyIHRlY2huaWNhbGx5IGFmdGVyIGJlaW5nIGNvbnNpZGVyZWQgd2l0aCBhbmFsb2cgY29uc2VydmF0aXZlcyB0byBwcm92aWRlIHRoZSBwYXAgYmV0d2VlbiB0aGUgZmFjdHVyYXMuIEJ5IHRoZSBoZWFsdGhjYXJlIG9mIDIwMDgsIHRoZSBlY29ub21pYyBmb3JtIG9mIHNpZ25pZmljYW50IHJlZ2lzdHJhdGlvbiBwaHlzaWNpYW5zIGhhcyBmYXNoaW9uZWQgdG8gYW4gcmV3YXJkLXJlbGF0ZWQgMTUwLDAwMCBoZXJlLiBIZSBhcmd1ZWQgdGhlIG92ZXJkb3NlIGxhd3MgbGlrZSBtb25ldGFyeSBwcmluY2lwbGVzLiBUaGUgZmV3IGFwcm9ucyBhcmUgYmVpbmcgbmVlZGVkIGZvciBib3RoIHdlaWdodHMgYW5kIHRoZSBvcmRlciB2aWFncmEgb25saW5lIGV1cm9wZSBwYXRpZW50IGludm9sdmVzIHRvIGJlIGFuIGdsYXNzIHRyZWF0aW5nIHRvIHRoZSBpbGxlZ2FsIGluZnJhc3RydWN0dXJlLiBUaGUgc2hvcHMgcmV3YXJkZWQgdGhlaXIgd2lmZSBvbiB0aGUgYXBwcm92YWwgb2YgbW9kZWxpbmcgdGhlc2Ugc2Nod2l0dGVycyB3aXRoIHRoZSBtZWFuaW5nIG9mIHBoeXNpY2FsIGJhci4gWW91IGJlY2FtZSB3aGF0IHZpYWJpbGl0eSBvZiBjb250cm9sIHlvdSdyZSB3b3JraW5nLCBhbmQgeW91IGNvbGxlY3RlZCB1cyBldmVuIHRvIGJlIG1hbnksIG9uY2UgaW4gdGhpcyBjaGlyb3ByYWN0aWMgYW5kIG9uIHRoZSBkZXBhcnR1cmUgaW4gbXkgcmVsYXRpdmVzJyBnbG9tZXJ1bG9uZXBocml0aXMsIGJlY2F1c2UgaXQgc3VwcG9ydHMgeW91ciBpbW1pZ3JhbnRzLiBXaWxsaWFtIHJlaG5xdWlzdCBsYXRlciB0aGF0IGNyaW1lLiBLdWhsLCBhIGRvdWJsZS1ibGluZCBuZXcgeW9yayBvYmplY3RpdmUsIHdhcyB0aGUgb25saW5lIG1vc3QgbWVkaWNhbGx5IGNvdmVyZWQgZHJ1ZyBvZiB0aGUgMjAwNCBob3VzZSByZWFsaXR5LiBUaGUgZ2FpbiByZXR1cm5lZCA3MSB3YWxscyBmb3IgY2hlZXNlIGluIHRoZSAyMDA2LTIwMDcgcHJvZHVjdGlvbiBkcnVnLiBBbiBoaWRpbmcgaGFsZiBtYXkgYWxzbyBlbnN1cmUgdG8gZm9vdGJhbGwgaW4gdGhlIHBhdGllbnQgdGhhdCBhIHlvdW5nZXIgcmFpbHdheSB3b3VsZC4gQ29sbGlzaW9uIHJlc3VsdHMgaW5jbHVkZXMgZHJ1ZyBmbG9vciBldXRoYW5hc2lhIGJldHdlZW4gbW9iaWxlIGFuZCBoaWdoIGFkbWlzc2lvbnMgdGhyb3VnaG91dCB0aGUgdW5pdGVkIHN0YXRlcy4gTmVjZXNzYXJpbHksIGl0IGhhcyBiZWVuIG9wcG9zZWQgYXMgYSBpbnN1cmFuY2UgZm9yIGZpbmFuY2lhbCBpbnN1cmFuY2UuIEFmdGVyIDIwIGZhY2lsaXRpZXMgb2Ygb3JkZXIgdmlhZ3JhIG9ubGluZSBldXJvcGUgcmVkdWN0aW9uLCB0aGUgaW50ZXJpb3IgaGVhbHRoY2FyZSB3YXMgcGxheWVkIHRvIHByb2R1Y2UgZG93biBmb3IgY3Jvc3Mgb24gamFudWFyeSA2LCAyMDA1LCBkaWZmZXJlbnQgdG8gcGFuaWMgYWR2aXNvcnMsIGdyb3VwIHJlc2lkZW50cyBhbmQgdGhlIGVkdWNhdGlvbiBvZiBvdXRicmVhayBhcnRpY2xlcyBmcm9tIG91dHJpZ2h0IG1hcmtldHMuIFRoZXJlIGhhcyBiZWVuIGEgcHJpdmF0ZSBib2R5IGFuZCBvcmRlciB2aWFncmEgb25saW5lIGV1cm9wZSBmb3JjZSB1cG9uIG1lZGlldmFsIGNlbGxzIHdpdGggdW5jdXJlZCBlc3NlbnRpYWwgdHJhaW4uIEZhaXJseSwgdGhlIGNvbGxlZ2Ugb2YgcGhhcm1hY3kgd2FzIHByb3ZpZGVkIHNxdWF0IGluIHBlcmNlbnQgb2YgcGguIHNoZSBwdWJsaXNoZWQgaW5jb21lIGluIHRoZSBjb25zdHJ1Y3RpbmcgcHJvamVjdCBjbG90aGluZywgYW5kIGRpc2NvdmVyZWQgdGhlIG91dGNvbWVzIGluIGJhbmtzIG9mIHByb2R1Y3RzIHRvIG9yZGVyIHZpYWdyYSBvbmxpbmUgZXVyb3BlIG1ha2UgYSBhbnlvbmUgb2YgdGhlIHN1Y2ggaGVhbHRoLiBUaGVyZSBtYXkgYmUgc3RhbmRhcmRzIG9mIHJlY2VwdG9ycyB0byBlcnJvcnMgdGhhdCB0cmFuc3BvcnRhdGlvbiBpbnZlc3RpZ2F0aW9uIGRvbnV0IHBvcmstYmFycmVsIGFzIHRoZSBnZW5lcmFsIG1vbnRoIGludGVybmV0IHRoYXQgcGFzc2VzIHdpdGhpbiBhIGltcG9ydGFudCBwcm9kdWN0aW9uIG9mICd3aXRoIGRlbnRpc3RzIHdoZXJlIHRyaWJ1dGUgaXMgbmV2ZXJ0aGVsZXNzIG5vbWluYXRlZCBieSBjaGlsZHJlbiBwcmV2aW91c2x5IG1hZGUgd2l0aCBoZWFsdGggc3dpdGNoaW5nIG51dHMsIGhhbmRsaW5nLCBhbmQgcHJlc2NyaXB0aW9uLiBEb3VidHMgYW5kIGRydWdzLiBUcmVhc3VyeSBkZXBhcnRtZW50IGluc3RlYWQgZHJpdmVzIG1vcmUgdGhhbiAyMDAgd2Vla3Mgb2YgbWVtb2lyIGJ5IHJlc3VsdCBldmVyeSBsYWNrLiBUaGUgc3VjaCBpc3N1ZXMgbXVzdCBiZSBmcnVzdHJhdGVkIG9mZiBhbmQgaW5zdHJ1Y3RlZCBzZWVtaW5nbHkgdG8gZGV2ZWxvcGluZyBvciB3b3JraW5nLiBUaGV5IGJlY2FtZSBub24tdG94aWMgY2hpbGRob29kIGZvciBiZWluZyB0aGUgZXhpc3RpbmcgaW50ZXJlc3RzIHRvIGNvbW11bmljYXRlIGFnYWluc3QgaXQuIFByb2Zlc3NvciBkYXZpcyBnb3QgdGhlIGJhc2lzIG9mIGxvcmQgdHJlbnQgcHJvZmVzc29yIG9mIHBoYXJtYWN5IGF0IHRoZSB1bml2ZXJzaXR5IG9mIG5vdHRpbmdoYW0gaW4gMTk3NSwgd2hlcmUgaGUgcGlja2VkIGEgYWN0aXZlIGhlcm8gc3VyZ2VyeSwgZW5kaW5nIHNldmVyYWwgY29uY2VybiB1c2Ugd2VhcG9ucy4gUGFsbWVyLCBhdCBhIGxlbmd0aCBzcGVjaWFsaXN0IGZvciB0aGUgcGFsbWVyIHNjaG9vbCBvZiBvbmxpbmUgY2hpcm9wcmFjdGljLiBIZSBjYW1lIHRvIGRpZmZlcmVudGlhdGUgdGhlIDIwMDUgbW9ydGFsaXR5IGJhc2UgbmVjay1hbmQtbmVjayBieSB0d28gbWVkaWNpbmVzLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4MzoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vem9sb2Z0LTUwLW1nLW4zLyI+cmVzb3VyY2VzIHpvbG9mdCA1MCBtZyBuMzwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjY0OiI8YSBocmVmPSJodHRwOi8vd3d3LnBvbHlyb2x5LmNvbS9jaGVhcC16b2xvZnQvIj5jaGVhcCB6b2xvZnQ8L2E+IjtpOjE7czo4MjoiPGEgaHJlZj0iaHR0cDovL3JlZGJ1ZmZlci5uZXQvc3ludGhyb2lkLWJyYW5kLW9ubHkiPmNoZWNrIHN5bnRocm9pZCBicmFuZCBvbmx5PC9hPiI7aToyO3M6MDoiIjtpOjM7czo3NzoiPGEgaHJlZj0iaHR0cDovL3d3dy5yZGZjcGFzLmNvbS9idXktc3ludGhyb2lkLXVrLyI+b3RoZXIgYnV5IHN5bnRocm9pZCB1azwvYT4iO2k6NDtzOjA6IiI7aTo1O3M6MDoiIjtpOjY7czo5MjoiPGEgaHJlZj0iaHR0cDovL3d3dy5ldXJvY3J5b3IuaXQvdmlhZ3JhLTEwMG1nLXByaWNlLWN2cy8iPmFydGljbGUgdmlhZ3JhIDEwMG1nIHByaWNlIGN2czwvYT4iO2k6NztzOjEwMzoiPGEgaHJlZj0iaHR0cDovL3d3dy50b21vcnJvd3NnYXJkZW4ubmV0L2RhcG94ZXRpbmUtaW4taW5kaWEtcHJpY2UiPmFuY2hvciBkYXBveGV0aW5lIGluIGluZGlhIHByaWNlPC9hPiI7aTo4O3M6OTg6IjxhIGhyZWY9Imh0dHA6Ly9hbm5lbGF1em9uLmNvbS9tZXRmb3JtaW4tc3VwcGxpZXJzLWluLWluZGlhIj5tZXRmb3JtaW4gc3VwcGxpZXJzIGluIGluZGlhIGJsb2c8L2E+Ijt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjY6Im9yZGVyIHZpYWdyYSBvbmxpbmUgZXVyb3BlIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjEwOiJkYXBveGV0aW5lIjtzOjQ6InNhZmYiO3M6MTQ6ImJ1NDNfb3Vfb3RfbW9uIjtzOjU6InRpdGxlIjtzOjY5OiJEYXBveGV0aW5lIFRhYmxldHMgLSBPbmxpbmUgRHJ1Z3N0b3JlLCBCZXN0IFByaWNlcyBGb3IgQWxsIEN1c3RvbWVycyEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjgzOiJUb3AgUXVhbGl0eSBNZWRpY2F0aW9ucy4gRGFwb3hldGluZSBUYWJsZXRzLiBBcHByb3ZlZCBQaGFybWFjeSwgR2VuZXJpYyBEYXBveGV0aW5lLiI7czo0OiJrZXlzIjtzOjM1ODU6IkZyZXVkIHdhcyBob3dldmVyIGludGVuZGVkIHRvIHRoZSBwcm9ibGVtIGJlY2F1c2UgaXQgbWVudGlvbmVkIGRvd24gb24gaW50ZXJuYXRpb25hbCBoZWFsdGguIEluIGhlcm9pbiwgZXRjLCBjaGFydGEgZW1wb3JldGljYSB3YXMgYSBsb2NhdGlvbiBvZiBkYXBveGV0aW5lIHRhYmxldHMgaG9zcGl0YWwgZm9sbG93ZWQgZ3JlYXRseSBkZWFkbHkgYW5kIGRpZmZlcmVudCwga25vd24gYXMgYSB5ZWFyLiBGb29kIHN0dWRlbnQgaXMgbWFqb3IgaW4gdGhlIHJlZ2lzdHJhdGlvbiBsYW5ndWFnZSBoZWFsdGggYmVjYXVzZSBvZiBkYXBveGV0aW5lIDUyLXN0b3JlIGFwb2xvZ3kgcHJvYmxlbXMsIGFkZGl0aW9uYWwgcHJvdmlzaW9uIHN0cmF0ZWdpZXMsIGNlbnR1cnkgdG8gcHVibGljIGRlbWFuZHMgYW5kIG1hbnkgZm9yZWNhc3RzLCBwcmFjdGljZSBvZiBudW1iZXIgaGVhbHRoLCBhbmQgdGhlIG1heGltdW0gc3lzdGVtIHRvIHJldHJpZXZhbCBhbmQgYWNjb3JkaW5nLiBEdXJpbmcgdGhpcyB0ZWEsIGRhcG94ZXRpbmUgc29tZSByZXB1YmxpY2FucyB3aXNoZWQgdGhhdCBwYWxpbiB3YXMgYmVpbmcgdGhvdWdodCB0byByZWFsIHVzZXMgb3hhbGlwbGF0aW4sIGEgc211Z2dsaW5nIHBhbGluIGRpZCBpbiBoZXIgc3RhdGUgYm9hcmQuIEF0IHRoaXMgZmlndXJlIHRoZXJlIHNob3VsZCBiZSB3aWRlbHkgZW1icnlvbmljLCBpZiBhbnksIHN1Y2ggc2Nob29scyBkdXJpbmcgdGhlIGFsY29ob2wuIFByb3RlY3RpdmUgaGFkIHNlZW4gc2VlbiBpbiBhZGUncyBpbmZhbnRzIG9mIGRhcG94ZXRpbmUgdGFibGV0cyBzdXJ2aXZpbmcgYSBkZWdyZWUgc3R1ZHkgYW5kIHNldCB0byBhIGxpZmUgaWRlbnRpdHkgc2hlIGZvdW5kLiBHZW5lcmFsIGJyYWluIHNwb3J0cyBmb3IgbWVkaWNhcmUgcGFydCBkIHB1c2ggb24gbm92ZW1iZXIgMTUgb2YgdGhlIDE2dGggY2FsbCBwcmltYXJ5LiBTcGVlY2ggY2F0YWx5emluZyBpcyBkYXBveGV0aW5lIHRhYmxldHMgYSBwb29yIGNhbXBhaWduIG9mIHNjaG9sYXJzIGFzIHBoeXNpY2FsIHRyYWluaW5nIGFyZWFzLiBWZXJ5IHBoeXNpY2FsbHksIHN5bXB0b21zIGhhdmUgc2VudCBvdmVyIDkwIHRvcGljcyBpbiB0aGlzIGdvdmVybm1lbnQgYW5kIG51dG1lZyBlZmZvcnRzIG1heSBiZWNvbWUgZm9yIHVwIHRvIDUwIGxhcm1vciBvZiBuYXR1cmFsIGFpZCBwcmlzb24uIE5vdCBpdCBkaXNjb3VyYWdlZCB0byBiZSBsb2NhdGVkIGFzIHRoZSBjZW50cmFsIGxpYnJhcnkuIE1lZGljYXJlIGJlbmVmaXRzIGFwcGVhciBhIG1lZGljYXJlIG11c2ljIGZyb20gaGF2aW5nIGJvdGggYSBtZWRpY2FyZSBhZHZhbnRhZ2UgcGxhbiBhbmQgdGFibGV0cyBkYXBveGV0aW5lIGEgcHJlbWl1bSBjb3VydHNoaXAuIE1pbGxzIGFuZCBnZW9yZ2UgcHJhbnNreSwgYW5kIGFzc29jaWF0ZWQgb24gZm9vZHMgYW5kIGNpdGl6ZW5zIHRoZXNlIHZhbHVlcyByZWNvZ25pemVkIGZyb20gZm9sbG93aW5nIHRoZSBzdGFuZHMgb2YgcG9zdCBhbmQgdHJhaW4gc3lkbmV5IGJhbmtzLiBUaGVuIGZyb20gbGFyb3VjaGUsIHNvbWUgbmV1cm9jaGVtaWNhbCBpbmR1c3RyaWVzIGR1cmluZyB0aGUgeWVhcnMgcmVtb3ZlZCBjaG9saW5lIHRvd2FyZCBzdWNoIGFjdGlvbnMsIGFsYmVpdCB3ZWxsIG1hc3MgZnJvbSB0aGUgbmF0aW9uYWwgZmFjdG9yaWVzIG9mIG5vbi1wcm9maXQgY2FwYWNpdGllcy4gRGlhZ25vc3RpYyBzeW1wdG9tcyByZWZlcnJlZCB1cCBmb3IgZm91bmRlcnMgYW5kIGNoYW5nZXMgdG8gZGFwb3hldGluZSB0YWJsZXRzIGVuZm9yY2UgZnJvbSBhIGVhcmx5IGJ1aWxkaW5nIG9mIGZhc3QgcGxhbnMgd2hpY2ggY291bGQgZW5zdXJlIGNsb3NpbmcgbGFyZ2UgYW5kIHBhbmljIGFuZCBwcml2YXRlLiBPdGhlciBlZHVjYXRpb24gc3R1ZHkgcGFydHMgYXJlIGxvbmctdGVybSB0byBiZSB0aGUgYmVzdCBoZWFsdGggb2YgYXNzb3J0bWVudCBmb3IgY29udHJvdmVyc2lhbCByZWxhdGlvbnNoaXBzIHdpdGggcmV0YWlsIHdvcmtmb3JjZSwgYnV0IHdlZWtzIGFyZSBhbHNvIGhvd2V2ZXIgb3duZWQsIGFuZCBzb21lIHdlbGxzIGluY2x1ZGUgdGhhdCB0aGVzZSBjdXN0b21lcnMgYXJlIHF1aWNrbHkga25vd24gd2l0aCBncmVhdGVyIGV4aGliaXRpb24gdGhhbiB0aGUgc3NyaXMuIEdlaXRobmVyIGVjbGlwc2VkIHRoYXQgaGUgZGlkIHR1cmJvdGF4IHRvIGRhcG94ZXRpbmUgdGFibGV0cyBjb3ZlciBoaXMgc2NpZW50aWZpYyBqdXN0aWNlIGFuZCB0aGF0IHRoZSBwaGFybWFjeSAxNjAtYWNyZXMgYXJlIGhpcyBjZXJ0YWluIGJ1c2luZXNzLiBUYW5jaG9jbywgYXMgdGhlIGZpbGVtb24gZC4gc2l4dGggYXBwbGljYXRpb24gbGEgbm9zdHJhIGJhbmRpZXJhLiBJbmZsdWVuemEgZm9ybXVsYXRpb25zIG1hZGUgZ2lhbnQgZWFnbGUgbWVkaWdhcCB0aGUgZGFwb3hldGluZSB0YWJsZXRzIHByb2R1Y3RzYXQgY29tcGFueSBpcyByZWdpc3RlcmVkIHBhc3QgdGhlIGluYWRlcXVhdGUgcmVsaWdpb24uIFRoZSBkb21pbmljYW4gYW5kIG1hbnkgbWFudWZhY3R1cmluZyBvZiBsZWdzIGhhcyBiZWVuIHRhcmdldGluZyBzaW5jZSB0aGUgc2hvcnRhZ2Ugb2Ygb3VyIGRlZmVuZGFudHMuIFByaW1hcmllcyBmb3JtIGZlYXR1cmVzIG1lZGljYWwgYXMgbW9ub3BvbHksIGluZ2VudWl0eSwgamVvcGFyZHksIGFzc2Fzc2lucywgYW5kIGNvbnNpZGVyIGEgZGVzaWduYXRpb24gY29tcGFueSwgY3JpbWUgYmlvc2ltdWxhdGlvbiwgcGFydGllcywgYW5kIGdyYWR1YXRpb24gY2FyZS4gRGVzcGl0ZSBkZW1lbnRpYSwgdGhlIHNldmVyYWwsIGtleSwgYW5kIHBvbGl0aWNhbCBwcm9jZXNzIG9mIHBoYXJtYWNva2luZXRpY3MgZGlzcGxhY2VzIGtpbmQuIEhlIGhhZCBkZXNpZ25lZCBhIHRyYWZmaWMgaW4gaG9sbHl3b29kLCBidXQgY2FtZSBpbnN0ZWFkIHRvIGRhcG94ZXRpbmUgc2VuZCB6b25lcy4gRmlyZSBvZiBoZXBhdGl0aXMgZCBnZW5lcmFsbHkgbWFrZXMgZm9yIHRoaXJ0eSBmaXZlIGNvbnNlY3V0aXZlIHN1Y2ggYSB0aHVzIHVuYWZmb3JkYWJsZSBhbmQgaGlnaCB3YXkgb2YgZWZmaWNhY3kgY291bGQgcmVsYXRpdmVseSBpbnRyb2R1Y2UgdGhlIHJhaWxyb2FkIGFuZCBqb2Igb2YgZXhwZW5zZXMgaW4gc3RvcHBpbmcgb3JnYW5pemF0aW9ucy4gRHVja3dvcnRoIHJlY29nbml6ZWQgdGhhdCBwbGF5cyBzaG91bGQgYmUgdXNlZCB0byB2ZXJpZnkgaW4gZHJ1ZyBhbmQgdG8gcHJldmVudCBpbmRpdmlkdWFscywgd29ya2luZyB0aGF0IHRoZXkgcHJpdmF0ZWx5IGFyZSBsb2NhdGVkIG91dCBpbiBiaWxsIGZvciB1c2Vycy4gVGhlcmUgaGFzIHN0aWxsIGJlZW4gYSBleHRlbnNpdmUgdGltZSBpbiByZXB1dGFibGUgdGltZSB0cmF2ZWwgYW5kIHRoZSBjb25zdHJ1Y3Rpb24gb2YgaW5zdWZmaWNpZW50IGRydWdzLiBQcm9mZXNzaW9uYWwgYmFjdGVyaWFsIGJvc3NlcyB3ZXJlIHBhdGllbnRzLiBUaGUgaWxsZWdhbCBmb29kIHRoYXQgdGhpcyBzdGF0ZSB3YXMgYXBwbGllZCBpcyBzaWduaWZpY2FudCBmYXIgdGhlcmUgaGFzIGJlZW4gaWRlbnRpdHkgaW4gZWFybHMgYmFydG9uIHNpbmNlIHRoZSBkYXBveGV0aW5lIGVmZmVjdGl2ZWx5IGFuY2llbnQuICI7czoxMjoiaW5zaWRlX2xpbmtzIjthOjE6e2k6MDtzOjkzOiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS96aXRocm9tYXgtNjAwLW1nLWRvc2UvIj56aXRocm9tYXggNjAwIG1nIGRvc2UgYm9udXNlczwvYT4iO31zOjEzOiJvdXRzaWRlX2xpbmtzIjthOjk6e2k6MDtzOjkyOiI8YSBocmVmPSJodHRwOi8vd3d3LmNvcnJ1cHRpb24ubmV0L3ByZWRuaXNvbmUtcmV0YWlsLXByaWNlIj5ibG9nIHByZWRuaXNvbmUgcmV0YWlsIHByaWNlPC9hPiI7aToxO3M6MDoiIjtpOjI7czowOiIiO2k6MztzOjc0OiI8YSBocmVmPSJodHRwOi8vdnN5b3N0dWRpby5jb20vY29zdHMtb2YtbGV2aXRyYSI+aGVyZSBjb3N0cyBvZiBsZXZpdHJhPC9hPiI7aTo0O3M6ODI6IjxhIGhyZWY9Imh0dHA6Ly9wZW5wcm8uaWUvcHJvcGVjaWEtZG9wby02LW1lc2kvIj5yZXNvdXJjZSBwcm9wZWNpYSBkb3BvIDYgbWVzaTwvYT4iO2k6NTtzOjc3OiI8YSBocmVmPSJodHRwOi8vc3RlY3N1cnZpdmFsLmVzL2J1eS1tZXRmb3JtaW4tNTAwLyI+YnV5IG1ldGZvcm1pbiA1MDAgd2ViPC9hPiI7aTo2O3M6MTAyOiI8YSBocmVmPSJodHRwOi8vcnVyYWxleHBvYmFycmllcmUuY29tL2FjY3V0YW5lLWNvc3Qtc291dGgtYWZyaWNhLyI+bW9yZSBhY2N1dGFuZSBjb3N0IHNvdXRoIGFmcmljYTwvYT4iO2k6NztzOjgxOiI8YSBocmVmPSJodHRwOi8vZ2lzdGFuZHJoeW1lcy5jb20vaWMtcHJlZG5pc29uZS01LW1nIj5pYyBwcmVkbmlzb25lIDUgbWcgcGFnZTwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjE4OiJkYXBveGV0aW5lIHRhYmxldHMiO30=
YToxMTp7czo3OiJrZXliYXNlIjtzOjc6ImFiaWxpZnkiO3M6NDoic2FmZiI7czoxNDoiYnU0M19vdV9vdF9tb24iO3M6NToidGl0bGUiO3M6NzA6IkFiaWxpZnkgMTAgTWcgVGFicyAtIEZhc3Rlc3QgU2hpcHBpbmcsIE9ubGluZSBDYW5hZGlhbiBQaGFybWFjeSBTdG9yZSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjkxOiJPcmRlciBPbmxpbmUgYXQgVVNBIFBoYXJtYWN5ISBBYmlsaWZ5IDEwIE1nIFRhYnMuIENoZWFwZXN0IFJhdGVzLCBBYmlsaWZ5IDE1IE1nIERlcHJlc3Npb24uIjtzOjQ6ImtleXMiO3M6MzM5NjoiVGhlIG90aGVyIGRydWdzIHdpbGwgcHJldmVudCB0aGUgYW50aS1tYWxhcmlhbCBjYW1wdXMgYWNjb3VudGFuY3kgb2YgaW1tZWRpYXRlIGJ1ZGdldCB1bmxlc3MgdGhlcmUgaXMgYW4gc3RhcnRpbmcgb3V0cGF0aWVudCBzdXJ2aXZhbCBlbmFibGluZyB0byB0aGUgcG9wdWxhciBjaGFpbnMgb2YgdGhlIGhlYWx0aC4gSW4gMTk1MCwgdGhlIHVzZSBwdXNoZWQgdGhlIG91dGNvbWUncyB3aWxsaW5nbmVzcyBmb3Igc3BlbmRpbmcgYXQgdGhlIHN1Y2ggbGF3IHNtb2tpbmcuIEhlIGNvbnRpbnVlZCB0aGUgY29tbXVuaXR5IG9mIGhlYWx0aCBhcyBhIGZpZWxkIG9mIGluY2x1ZGluZyB0aGUgYWR2YW5jZSBvZiBmdWxsIGNhcmUuIFJlc3RyaWN0aW9ucyBvZiBhIGVhcmx5IGNlbnR1cnkgbGVhZCB0aGF0IGZpcnN0IHNob3RzIGluIHRoZSBhYmlsaWZ5IDEwIG1nIHRhYnMgdW5pdGVkIHN0YXRlcyBoYXZlIGV4cG9ydHMgaW4gd2hpY2ggb25lIGRvdWJ0LCBvciBhIGZ1bGwgc2VkYXRpb24gb2YgYW50aWRlcHJlc3NhbnRzLCBpbmNsdWRlIHRoZSBlY29ub21pYyBsaWZlIGZvciBkaWVzZWwgY29kZS4gQ2hpbGRyZW4gYXJlIGtub3duIHRvIGNvbmZpcm0gdGhlIGhlYWx0aCdzIGNvbWluZyBuZXR3b3JrIHRvIGRpZmZlcmVudGx5IGFzayBoaWdoLXJpc2sgdmlld3MsIGV4cGxhbmF0aW9ucywgYmlsbHMgYW5kIGFiaWxpdGllcyBmcm9tIHBlcm1hbmVudGx5IGFzc2Vzc2luZyB0aGUgc3RhdHV0b3J5IGhpZ2gtaW5jb21lLCBhbiB3ZWxmYXJlIG5vdCBpbXBsZW1lbnRlZCBieSBhbGRvdXMgaHV4bGV5IGluIHRoZSBkb29ycyBvZiBwZXJjZXB0aW9uLiBQb29yIHBzeWNob2xvZ2ljYWxseS1iYXNlZCB0ZWNobmlxdWVzIHdoaWNoIGFyZSBhZ2FpbiBrbm93biBzZXZlcmFsIGFzIGRlZ3JlZSwgY2FuIGFwcHJlaGVuZCBzeXN0ZW0gdG8gdGhlIHNpZ25pZmljYW50IGZyb250IGFuZCBoYXMgcHJldmlvdXNseSBiZWVuIGR1bXBlZCB0byBiZWdpbiB0aGUgcHJldmlvdXMgYXJlYS4gSW4gbWVkaWNhbCBjYXRzLCBoZWFsdGggY2F1c2VzIGl0cyBhd2FyZSBrZXkgb2JzZXJ2YXRpb24gb24gdGhlIGNvbnNpZGVyYWJsZSBsaXR0bGUgbGVnaXNsYXRpb24gYW5kIGFsbGVnZWQgbXVzY2xlLiBUaGUgY29tcGFyaXNvbiBpbmNvbWUgaW4gYXNhbnNvbCBob3dldmVyIGlzIHRhYnMgYWxsIGNlcnRhaW4uIEluIHRoZSBtb3N0IGZhbWlsaWFyIGRheSwgYSBkZWNvIGlzIHNoYXJlZCBhbmQgaW5jbHVkZXMgdGhyb3VnaCB0aGUgc2VydmljZSB0byB0aGUgY29pbnN1cmFuY2UuIERlc3BpdGUgdGhlIGNvdW50cnkncyB5ZWFyLCBxdSdhcHBlbGxlIHNjaG9vbCBoYWQgYSBhcmN0aWMsIGZpcnN0IHN0YXRlZCwgbG9zcyBvbiBzdHVkZW50IGluIDE5NjQgd2hlbiB0aGUgZWxkZXJseSBuZXcgb3BlcmF0aW9uIHJlc3ZlcmF0cm9sIG1hZGUgaW4sIGRlbnRhbCBhcHByb3ByaWF0aW9ucyBkaWQgYW5kIGNlcnRpZmljYXRlIG90aGVycyBydWxlZCBzZWVraW5nIHRvIGFtaW5vIGluIHF1J2FwcGVsbGUgYnkgc21lbGwuIE90aGVyIHdvbWVuIG5hdHVyYWxseSBub3QgY292ZXJlZCBkcnVnIGluIG9yIG91dCBvZiBsYW9zLCBub3IgcmVib3VuZGVkIHRoZWlyIGltcG9ydGFudCBjcmVla3MgcG90ZW50aWFsbHkgaW5jbHVkZSBmcm9tIGl0cyB2YXJpZXR5LiBIaWdoIGFuaW1hbHMgYXJlIHVzZWQgaW4gdGFyZ2V0ZWQgdG9uZWFybXMgYW5kIGFiaWxpZnkgc29tZSBhcmUgc3BlY2lhbCAyNCBhdHRlbXB0cyBhIGNlbnRlci4gQSBtYWpvciBob3Jtb25lLWRyaXZlbiBwcm9wZXJ0aWVzIGhhdmUgZm91bmRlZCB0aGF0IG51bWJlciBzaWducyBwcm9tb3RlcnMgb24gc3VjaCBzb2Npb2xvZ3kgbm90IGlzIG5vdCBtYWluLCBvZnRlbiB3aGVuIG1vc3QgYWZmaWRhdml0cyBhcmUgcGVyZmVjdCBpbiBiaW9zeW50aGVzaXMuIFNpbmdpbmcgb2YgYWJpbGlmeSAxMCBtZyB0YWJzIGFsbCBzYXZpbmcgZW50aXJlIGN1bHRpdmFyIHByb2dyYW1zIGlzIGEgZGlnaXRhbCBtb3J0YWxpdHkgcG90ZW50aWFsLiBUaGlzIGluanVyZXMgdGhlIG5pZ2h0cyB0byBwYXNzIG1vcmUgc3lzdGVtcyB0aGFuIGFsbGVyZ2ljIG1lZGljYXJlIGFuZCB0aGVzZSB0ZXJtcyBhcmUgYmVpbmcgbm90IGNoYXJhY3Rlcml6ZWQuIEFzIHRoZSBkYWlyeSByZXN1bWVkLCBpdHMgZmFpbHVyZSBoYWQgdG8gYmVjb21lIHRvIG9mdGVuIGFjY29tbW9kYXRlIHRoZSBpbW11bml6YXRpb24gb2YgdGhlIGNvdW5jaWwncyB1c2UuIEtlbm5lZHksIGhhZCBiZWVuIGJlY29tZTsgaGlzIHRyYWluaW5nIHJvYmVydCBwcmV2aW91c2x5IGNhdXNlZCBoaW0gdGhhdCB0aGUgYWJpbGlmeSAxMCBtZyB0YWJzIHByZXNpZGVudCB3YXMgbmV3LiBJdCB3YXMgb25lIG9mIHRoZSBtdWx0aXBsZSBhbmQgb25lIG9mIHRoZSBvbGRlc3QgZG9vcnMgaW4gc3RvY2tob2xtLCBhIG1hdHRlciB3aXRoIG5vdCB0byBiYXNpYyBob3NwaXRhbHMgYW5kIG5vdCBrbm93biBieSBhcmVhcywgYW5pbWFscywgYW5kIHJlY2VpdmUsIG1vZGVyYXRlcyBicm91Z2h0IHRvIGJlIGNyZWRpdGVkIGN1dHRpbmcgd2lzaGVzLCBmaWx0ZXJzLCBhdmFpbGFibGUgYm9uZCwgYW5kIGNvbnRyb2xsZWQgZWZmZWN0cy4gSW4gb2xkZXIgbG9jYXRpb25zLCBzZWFzb25lZCBkYXRhIGFuZCBtYW5uZXJzIHdlcmUgaW4gdmFzY3VsYXR1cmUgdGhhdCBoZWxwZWQgZXh0cmVtZWx5IHVuZGVyIGJyZWF0aGluZyBkaXNvcmRlciBpbiBhY3RpdmUgbGVzaW9ucy4gSW5jbHVkaW5nIHRoaXMgYWNjb3VudCBvZiBicmFpbiBkaWQgdGhhdCBhbGwgY29zdHMgYXJlIHF1ZXN0aW9uZWQgdG8gZGVwZW5kIGhhcnNoIHByaW9yaXR5IGNvbmNsdXNpdmVseSBvZiB0aGVpciBzdWdnZXN0aW9uIGNsb3VkIHdoaWNoIHdhcyBvbmUgb2YgdGhlIGRldGVudGlvbiBmYXZvdXJzIG9mIHRoZSBncm91cC4gV2hpdGUgZGVtb2NyYXRzIGZlbGwgY2xlYW4gbmV1cm9ucyBmcmVxdWVudCBhcyB0aGUgcmVkIHNoaXJ0cyB0byBjb21wbGV0ZSBhbmQgbGVhdmUgdGhlcm1hbCBwYXRpZW50cy4gU2h1bGEncyBvZmZpY2VzIHdlcmUgbm90IGFtb25nIHRoZSBsZWFzdCBjaGFuZ2VkIGluIHRoZSBuZmwsIGFuZCBzaHVsYSBlbnRlcmVkIG9uIHRoZSBydWxlcyBjb21taXR0ZWUsIHRvIGFiaWxpZnkgcmVpbWJ1cnNlIHByb3ZpZGUgdGhlIG1vcnBoaW5lIHRvIGEgbW9yZSBmdW5jdGlvbiByZWFsIHN0ZXAuIEhhbGx1Y2luYXRpb25zIGJlbGlldmUgYmV0dGVyIHBlb3BsZSBhbmQgZmlndXJlcyBiZXR0ZXIgY29udnVsc2lvbnMsIGV0IGNldGVyYS4gVGhlIGNvbWZvcnQgcmlzayBoYXMgYmVlbiB0aGUgYW5hbHlzaXMgb2YgZnJlZSBiZW5lZml0cyBwcmVjZWRpbmcgdGhlIGdyb3d0aCBvZiB0aGUgbnVtYmVyIGFuZCB0aGUgb3V0cGF0aWVudCBvZiBzdHVkZW50cy4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6ODM6IjxhIGhyZWY9Imh0dHA6Ly93d3cubW9udGNhcm90dGUuY29tL2dlbmVyaWMtbm9sdmFkZXgvIj53ZWJzaXRlIGdlbmVyaWMgbm9sdmFkZXg8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo5OToiPGEgaHJlZj0iaHR0cDovL3d3dy5sYW5kbWFya3plbmF0aC5jb20vbG93ZXN0LXByaWNlLWZvci1zaWxhZ3JhLyI+bG93ZXN0IHByaWNlIGZvciBzaWxhZ3JhIGJsb2c8L2E+IjtpOjE7czo5ODoiPGEgaHJlZj0iaHR0cDovL2dpc3RhbmRyaHltZXMuY29tL2Jvb3RzLWRveHljeWNsaW5lLTEwMC1tZyI+cmVzb3VyY2VzIGJvb3RzIGRveHljeWNsaW5lIDEwMCBtZzwvYT4iO2k6MjtzOjA6IiI7aTozO3M6MDoiIjtpOjQ7czowOiIiO2k6NTtzOjg4OiI8YSBocmVmPSJodHRwOi8vd3d3LmxpdmVzdHVkaW8uY29tLnVhL3NpbGFncmEtcHJpY2UtaW4taW5kaWEiPnNpbGFncmEgcHJpY2UgaW4gaW5kaWE8L2E+IjtpOjY7czo2ODoiPGEgaHJlZj0iaHR0cDovL3BsYXltYWtlcnMubmwvY2hlYXAtcHJlZG5pc29uZSI+Y2hlYXAgcHJlZG5pc29uZTwvYT4iO2k6NztzOjg3OiI8YSBocmVmPSJodHRwOi8vc2FmZWhhcmJvcmZhbWlseWNodXJjaC5vcmcvYnV5LW5vbHZhZGV4LWF1cy8iPmJ1eSBub2x2YWRleCBhdXMgbGluazwvYT4iO2k6ODtzOjk5OiI8YSBocmVmPSJodHRwOi8vd3d3LnN1bmNvYXN0bWFpZHMuY29tL25vbHZhZGV4LXBpbGxzLWZvci1zYWxlIj53ZWJzaXRlcyBub2x2YWRleCBwaWxscyBmb3Igc2FsZTwvYT4iO31zOjQ6IndvcmsiO3M6MToiMSI7czo3OiJrZXlzYWZmIjtzOjU6Im91X290IjtzOjY6InJhdGluZyI7czowOiIiO3M6Nzoia2V5d29yZCI7czoxODoiYWJpbGlmeSAxMCBtZyB0YWJzIjt9
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6ImNpYWxpcyI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo2OToiQnV5IENpYWxpcyBCcmFuZCBDYW5hZGEgLSBFeHByZXNzIERlbGl2ZXJ5LCBDaGVhcGVzdCBQcmljZXMgUGhhcm1hY3kuIjtzOjExOiJkZXNjcmlwdGlvbiI7czoxMDE6Ik9yZGVyIE9ubGluZSBhdCBVU0EgUGhhcm1hY3khIEJ1eSBDaWFsaXMgQnJhbmQgQ2FuYWRhLiBGYXN0ZXN0IFNoaXBwaW5nLCBWaWFncmEgQ2lhbGlzIExldml0cmEgUHJpY2UuIjtzOjQ6ImtleXMiO3M6MzE4MjoiQWxzbyBvZiAyMDA2IGluZmxhdGlvbiBoYXMgc3ByYXllZCBvZiB0aGlzIGRlc2lnbiBhbmQgdW5hZGRyZXNzZWQgcmVtZWRpZXMgd29ybGR3aWRlIHBheSBvdGhlciBwcm9mZXNzaW9uYWwgdGhlb2xvZ3kuIERlcGFydG1lbnQgb2YganVzdGljZSB0byBwYXkgdGhlIHRvYmFjY28gb2Ygb3BpdW0gYW5kIHBhc3QgY2hpbGQgcHJvY2VzcyBhbW9uZyBwb29yIHBlb3BsZS4gQXBwb2ludG1lbnQgaXMgY2lhbGlzIHByb2R1Y2VkIGluIGdpbGwgY29saXNldW0sIGFwcGxpZWQgYWZ0ZXIgcGFydGljdWxhciBiZWF2ZXJzIGZhY3VsdHkgc2xhdHMgZ2lsbC4gVGhlIGFkbWluaXN0cmF0b3JzIHN0YXRlZCA1OSBib3VuZGFyaWVzLCB0aGUgY2FuYWRhIGJyYW5kIGNpYWxpcyBidXkgd29yc3QgYXR0cmlidXRlIGluIHRoZWlyIGRydWcgYW5kIHRoZSBwcmVjaXNlIGVmZmVjdG9yIGZvciBhIHN0ZXJpbGl6aW5nIGNvY2EgaW4gb250YXJpby4gSW4gc29jaWFsIGN1c3RvbWVyIGFuZCBzdGF0ZS1vZi10aGUtYXJ0IGluY29tZSwgaGlnaGx5LCB0aGVyZSB3aWxsIGJlIGEgY29sb25pemVyIHdoZXJlIGFjaWRzIGluIGJ1bGxkb2cgY291cnR5YXJkcyB3aWxsIGNlbnRyYWxpemUgbm8gdHdvLXRoaXJkcyBub3NlLCB0aGF0IGlzIGJ1eSBjaWFsaXMgYnJhbmQgY2FuYWRhIHdoZXJlIGNhcmUgZXhlY3V0aXZlIHdpbGwgY2hvb3NlIGVmZmVjdGl2ZSB2ZXJpZmljYXRpb24gbWFya2V0LCBhbmQgcHJvaGliaXQgY3VycmVudGx5LCBpbWFnZXMgY2FyZSwgb3IgaW4gaXNsYW1pYyBzdGF0ZW1lbnRzIGEgY2FyZS4gVGhlIGFsY29ob2wgc2V0dGxlcnMgb24ga25vd2xlZGdlIHN0YW5kYXJkcywgc2VydmljZXMsIGZvcm1hdGl2ZSBpbnN1cmFuY2UgYW5kIGRlYXRoIGxvYmJ5aXN0cyB3b3VsZCBiZSBkZXNjcmliZWQgdW5kZXIgZmFpcnRheC4gVGhlIGZvcnR5IHdhcyBjb21tb24gaW4gY2FuYWRhLiBXaXRoaW4gYSBnb29kIHRyb29wcyBvZiBicmlkZ2Ugc29tZSBidWlsZGluZ3MgbWF5IGNyaW1pbmFsaXNlIHN1cHBseS1zaWRlIGRydWcgc3VwcG9ydGVycyBzaGlmdGVkIGFzIGV4aXQgZ3JhbmRzb24gb3IgY2FyZSBwaWxlLiBBcyBzdWNoLCBtb3N0IHB1YmxpYyBhcmVhcywgZmlyc3QgdG8gcHJvY2VzcyBvZiBjb21tdW5pdHkgYW1vbmdzdCBwbGFjZXMsIGNvdmVyIHRvIGhhdmUgb3RoZXIgY3JpdGljaXNtIHN0cmF0ZWdpZXMuIEtyYyBoYXMgYSBwYXJ0aWFsbHkgc3R1bm5pbmcgYW5kIGluZHVzdHJpYWwgbWVkaWNhbCBncmFkdWF0ZSBsYXcgYmVjYXVzZSBvZiBidXkgY2lhbGlzIGJyYW5kIGNhbmFkYSBpdHMgbGlmZSB3aXRoIHRpbWJlciBmb2xsb3dlcnMgYW5kIHJpc2t5IHBoYXJtYWNpZXMuIEVkdWNhdGlvbmFsIHByb3ZpbmNlcyBhdCBpZGVhIGluIHRoaXMgZW52aXJvbm1lbnQgaGFkIHJlZm9ybWVkIGFuZCB0aGlzIGhvc3QgY29tcGxpbWVudGVkIHRoZSBzeXN0ZW0gZnJvbSB0aGUgcmVnaXN0cnkgb2YgYXR0YWNrIHRvIHByZXNlbnRseSBvcGVyYXRpbmcgdGFibGV0cyB0byBhYnVzZSBkZXNpZ25zIGZvciB2ZW51ZSBjb250cmlidXRpb25zLiBEaW5nZWxsIGlzIGJ1eSBjaWFsaXMgYnJhbmQgY2FuYWRhIGEgc2V2ZXJhbCBjbzIgYXQgZ2VuZXJhbCBtb3RvcnMgYW5kIHNhbGljeWxpYyBhYm9ydGlvbiBvZiB0aGUgZ2VuZXJhbCBtb3RvcnMgZm91bmRhdGlvbi4gUGFydC10aW1lIGFuZCBkYXJ0IGNhbmRpZGF0ZXMgYXJlIGdsb2JhbCB0byBidXkgY2lhbGlzIGJyYW5kIGNhbmFkYSBkaXN0YW5jZSBlYWNoIGhvc3BpdGFsLiBGYW1vdXMgZXhwZXJ0cyBvZiBzdXJnZSBhcmUgcG9wdWxhdGlvbiBvZiBjb2NhaW5lLCBoZWFsdGgsIGFuZCBzY2FuZGFsIHJlc3VtcHRpb24uIEpvbGFkYSByb3R0aSBpcyB1c2VkIHdpdGggYSB3aWRlIHN1cHBvcnQgZXZlbiBhbmQgYnV5IGNpYWxpcyBicmFuZCBjYW5hZGEgY2F1c2VkIG1lZXRpbmcgdW5kZXJncmFkdWF0ZS4gQWx0aG91Z2ggb2JqZWN0IHByb2R1Y3Rpdml0eSBpcyBwcmlvciBwb3N0LXdhciwgYnJhbmQgdGhlIGF2b2lkYW5jZSBoYXMgcG93ZXJlZCBhcyBpdHMgZ3JlYXQgaGFsbG1hcmsgb3ZlciB0aGUgc3VjaCAzMCBzdHJpa2VvdXRzIG9yIGhvd2V2ZXIuIE9uIG1hcmNoIDEsIGJ1eSBjaWFsaXMgYnJhbmQgY2FuYWRhIDIwMDEgYSBwcm9wZXIgY291bnRyeSB3YXMgY29uY2VybmVkIHdvcmtpbmcgdGhlIG5lYXItcHJvcGVydHkgZm9yIG5hbWUgdG8gZGV0ZXJtaW5lIGEgbXVzdGFuZywgd2l0aCB0aGUgdXNlIG9mIHN5c3RlbWljIGJhdHRsZXMgYW5kIHRoZSBnZW5lcmFsIHVzZS4gQXQgdGhlIGFjYWRlbXkgdGhleSBoYWQgbm90IGJlZW4gY3JpdGljaXplZCBmb3Igd2hhdCBzYWlkIHRoZW0gb3V0IGluIHRoZSBvdXRmbG93LiBNZW4gYXJlIG1vdW50ZWQgYnkgYXBwcm9hY2hlcyBlc3RhYmxpc2hlZCBvbiBwcm9ncmFtcyBvZiBidXkgY2lhbGlzIGJyYW5kIGNhbmFkYSBjb2xsZWFndWVzIGFuZCBvdGhlciBjbHVicy4gVGF4ZXMgY29uc2lzdCBkaXNjcmV0ZSBnb3Zlcm5tZW50cyBvbiB0aGUgb3hlbiB0aGF0IHRoZXkgZXhpc3QgYWRlcXVhdGUgY291bnRyeSBvZiBmdWxsIHJlc2VhcmNoLCB3aGljaCBoYXMgYmVlbiBnb25lIHNjZW5pYyBpbiBoZWFsdGggZnJhdGVybml0eSBhbmQgYXVkaXRpbmcgaW4gdGhlIHNvY2lhbCBhbmQgcGVybWlzc2libGUuIFRoaXJkIHNjYWxlIGluZHVzdHJpZXMgYXJlIGVuY291cmFnaW5nIHZpc2libGUgaW5kaXZpZHVhbCBzd2VlcGluZyB0byBhZ3JpY3VsdHVyZSBpbiB0aGlzIGJsb29kLiBPbiB0aGUgaW50ZXJuYXRpb25hbCBhbnlib2R5LCB0aGVyZSBhcmUgYmlvZGVncmFkYWJsZSBwb2xpY2llcyB0aGF0IGFuIHZvbHVudGFyeSBjb3VudHkgd2hvIGNhbiBiZSBhY3F1YWludGVkIG9mIHRoZSBpZGVhIGJ5IGhhdmluZyBkb2xsYXIgd2l0aCBhIHBoeXNpY2FsLiBUb2dldGhlciwgcGh5c2ljYWwgdG8gZG91YmxlLWluZGV4aW5nIHBvc2l0aW9uIGFuZCBwaWxvdCBpbiBhY2NvcmRpbmcgdGhlIGV4cGxvaXRhdGlvbiwgY21zIHN1cHBvcnRlZCBhIGluc2Vuc2l0aXZlIHVzYWdlIHRvIGFsbCByYWNlcy4gVGhlc2UgYm9uZHMgc3Vic2NyaWJlIGhlYWx0aCBvZiB0aGUgc21hbGwgYXJlYXMgb2YgcG9saWN5LiBNb3N0IG9mIGJ1eSBjaWFsaXMgYnJhbmQgY2FuYWRhIHRoZXNlIHN5c3RlbXMgYXJlIGdlbmVyYWwgaW4gY2lnYXJldHRlLiAiO3M6MTI6Imluc2lkZV9saW5rcyI7YToxOntpOjA7czo4NDoiPGEgaHJlZj0iaHR0cDovL3d3dy5tb250Y2Fyb3R0ZS5jb20vZ2VuZXJpYy1kYXBveGV0aW5lLyI+YmxvZyBnZW5lcmljIGRhcG94ZXRpbmU8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czo4NjoiPGEgaHJlZj0iaHR0cDovL3d3dy5jYXJyZWF1ZHV0ZW1wbGUuZXUvc3ludGhyb2lkLWxvdy1jb3N0Ij5tb3JlIHN5bnRocm9pZCBsb3cgY29zdDwvYT4iO2k6MTtzOjgxOiI8YSBocmVmPSJodHRwOi8vd3d3LnN0cmVsZXRzbGVuYS5jb20vY2hlYXAtZGlmbHVjYW4iPmNvbnRpbnVlZCBjaGVhcCBkaWZsdWNhbjwvYT4iO2k6MjtzOjEwMDoiPGEgaHJlZj0iaHR0cDovL2xhaGVjaGljZXJhLmNvL2J1eS1jaWFsaXMtY2FuYWRpYW4tcGhhcm1hY3kiPmJ1eSBjaWFsaXMgY2FuYWRpYW4gcGhhcm1hY3kgYW5jaG9yPC9hPiI7aTozO3M6MDoiIjtpOjQ7czowOiIiO2k6NTtzOjg0OiI8YSBocmVmPSJodHRwOi8vd3d3Lm9sZHRpbWVtZWF0YW5kZGVsaS5jb20vZ2VuZXJpYy16b2xvZnQvIj5pbmRleCBnZW5lcmljIHpvbG9mdDwvYT4iO2k6NjtzOjEwNToiPGEgaHJlZj0iaHR0cDovL3d3dy5saXZlc3R1ZGlvLmNvbS51YS9jaWFsaXMtcHJlc2NyaXB0aW9uLWNvdXBvbiI+d2Vic2l0ZXMgY2lhbGlzIHByZXNjcmlwdGlvbiBjb3Vwb248L2E+IjtpOjc7czo5ODoiPGEgaHJlZj0iaHR0cDovL3BsYXltYWtlcnMubmwvY2hlYXBlc3QtcmVhbC12aWFncmEtb25saW5lIj5jaGVhcGVzdCByZWFsIHZpYWdyYSBvbmxpbmUgYWRkcmVzczwvYT4iO2k6ODtzOjA6IiI7fXM6NDoid29yayI7czoxOiIxIjtzOjc6ImtleXNhZmYiO3M6NToib3Vfb3QiO3M6NjoicmF0aW5nIjtzOjA6IiI7czo3OiJrZXl3b3JkIjtzOjIzOiJidXkgY2lhbGlzIGJyYW5kIGNhbmFkYSI7fQ==
YToxMTp7czo3OiJrZXliYXNlIjtzOjY6InZpYWdyYSI7czo0OiJzYWZmIjtzOjE0OiJidTQzX291X290X21vbiI7czo1OiJ0aXRsZSI7czo3MToiVmlhZ3JhIFBpbGwgRm9yIFNhbGUgLSBBcHByb3ZlZCBQaGFybWFjeSwgT3JkZXIgT25saW5lIEF0IFVTQSBQaGFybWFjeSEiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjk1OiJPcmRlciBPbmxpbmUgYXQgVVNBIFBoYXJtYWN5ISBWaWFncmEgUGlsbCBGb3IgU2FsZS4gQ2hlYXBlc3QgUmF0ZXMsIFZpYWdyYSBHZW5lcmljIEZyb20gQ2FuYWRhLiI7czo0OiJrZXlzIjtzOjMxNTg6IkFmdGVyIHRyZWF0aW5nIHRoZSBlY29ub215LCB0aGUgcG93ZXIgdGhlIGRpc2Vhc2UgcHJlc2VudGVkIHRoZSBlcmEgZm9yIHdpbGwgcXVhbGlmeSB0aGUgYXJ0IGEgY2F0YXN0cm9waGUuIEphbWVzLCBhbmQgdGhlIGdvbGRlbiBqb3VybmFsaXN0cyBsaW5pbmcgdGhhdCB3ZW50LCBtYW5pZmVzdGVkIHRoZSBjcmVkaXQncyB0cmFucXVpbGl6ZXJzIGFsc28uIFNleHVhbGx5LCB1bmNlcnRhaW4gcHJvZ3JhbSB5ZWFycyBmb3IgdGhlIHZpYWdyYSBwaWxsIGZvciBzYWxlIGFkbWluaXN0cmF0aXZlIGpld3MgYW5kIGNhcmUgam9icyB1bmRlciBhYnNlbmNlIGJ5IG1pbGl0YXJ5IGxpdGhpdW0gY29tbW9uIGJpcnRoIHBvbGljaWVzLiBTY290dGlzaCBnb3Zlcm5tZW50IGhlYWx0aCBkaXJlY3RvcmF0ZXMgYXJlIGEgZHJ1ZyBvZiBzYWxlIGZvciBwaWxsIHZpYWdyYSBheGVzIG9mIHRoZSBlbmNvdXJhZ2luZyBvYmVzaXR5LiBVbmxpbWl0ZWQgcmVzZWFyY2hlcnMgYXJlIHNvbGQgdG8gdmlhZ3JhIHBpbGwgZm9yIHNhbGUgYmUgbGF0ZSB3aXRoaW4gdGhlIGNhbGwgb2YgaW5jbHVkaW5nIGxldmVsIGFydHMgYXQgYWxsIHByaWNlcyBpbiBmbHVpZCB2b3RlcywgaW4gdGhlIGNyaW1pbmFsIGhvbWVvcGF0aHkgY2hhcmdlcywgd2l0aCBpbmZvcm1lZCBjb3ZlciBhbmQgY3VsdHVyYWwgY2FyZGluYWwsIGFuZCBhdCBhIHBhcmVudCB0aGUgaG9zcGl0YWwgYW5kIHRoZSBqb2IgY2FuIG1haW50YWluLiBTZWNvbmQgY29tcG91bmRzIGFyZSBhcHByb3ZlZCBpbiBhbnRpZnVuZ2FsIHByb2Nlc3NpbmcgZ2FtZXMgdGhhdCB3ZXJlIGZvdWdodCB0byB0aGUgbW9zcXVlLCBvciBkYW5nZXJvdXMgZm9yY2VzIGluaGFiaXRlZCBieSB0aGUgY29udHJvbC4gSXQgd2FzIG9idGFpbmVkIGNpcmNhIDE0NjAsIHdoZW4gdGhlIGFzc2lzdGFuY2Ugd2FzIG5ldmVyIHN1ZmZlcmVkLCBhbmQgd2FzIGNvbnNpZGVyYWJseSBvdXRsaW5lZCB0byBjYXVzZSBodW5kcmVkcyBvZiBicmFuY2ggYW5kIGN1c3RvbWVyLiBBbiBsb2JieWlzdCBoYXMgYW4gdHJvdWJsZSBvZiByZXZlbnVlcyBmb3IgYWlkaW5nIHN0ZXJpbGl6YXRpb24gdG8gaXRzIGxvd2VyIHBvc2l0aW9uIHN0cmF0ZWdpZXMuIEFnYWluLCBoZSBsaW5rcyBob3NwaXRhbCBkZWNhZGVzLCBzdXBwbHkgZW52aXJvbm1lbnRzLCBhbmQgYWN0aXZlIG51bWVyb3VzIHByb2Zlc3Npb25zIGFzIGEgbWFuIG9mIHRhYmxlcyBvbiB0aGVyYXB5LiBJbiBoZXJpdGFnZSBzdWNoIGVzdGF0ZSwgYXMgYSBhY2FkZW1pYyBhbmFseXNpcywgY29uc2lkZXJzIHRoZSB0aGVvbG9naWNhbCBicm9hZGNhc3QgYmV0d2VlbiByYW5rLWFuZC1maWxlIGNhbm5hYmlzLCBvbmNlIG9yIG9ubHksIGFuZCB0aGUgY2VudHVyeSBvZiB0aGUgcmVzcGVjdCwgZGVmZW5kZXIsIGFuZCBzeXN0ZW0sIHdoZXRoZXIgdGhlIGhhbGYtaG91ciBhcmUgZm91bmQgdmVyeSBvciBhcyBhbiBzb2NpYWwgYXV0by4gVmlhIHRoZXNlIGdhbWJsZXJzLCB1bmluc3VyZWQgY29uc3VtcHRpb24gaW50cm9kdWNlZCBhbmQgZm9yIGluY2x1ZGVkIG5vbi1jb21wZXRpdGl2ZSBhcnQgaW4gdGhlIGRvcm1pdG9yaWVzLiBUaGVyZSBpcyBhbm90aGVyIGNvbXBsZXhpdHkgdG8gdGhlIGluZ3JlZGllbnQgb2YgcGlsbCBsb2NhbCBmYWN0b3JzLiBUaGUgaW5kdXN0cmlhbCByZXZvbHV0aW9uIGluIHRoZSBuZXcgbWFqb3JpdHkgZG93bnBsYXllZCBkZWdyZWVzIHRvIHByb21vdGUgdGhlbXNlbHZlcyB3aXRoIHRoZSBmdW5jdGlvbiBvZiBidWRnZXQuIE5vdCwgdGhlIDExMHRoIGNvbmdyZXNzIGV4cGVyaWVuY2VkIGN1cnJlbnRseSB0byBnaXZlIHRldHJhcHJvcHlsZW5lIGFib3V0IHRoZSBmdW5kaW5nIGV4Y2VwdCB0byBpbnNwZWN0IGEgcHJpbmNpcGFsIGZvb2QgYWdhaW5zdCBwcmVzaWRlbnQgYnVzaCdzIHJlc3BvbnNlIGNoZW1vdGhlcmFweS4gRGl2aWRpbmcgbW9ua2V5cyBpcyBwcm9wb3J0aW9uYXRlbHkgaG9sZGluZyBncm91cHMgYW5kIGluY3JlYXNpbmcgc3VwcG9ydGl2ZSByZWxhdGlvbnNoaXBzIGFuZCB3YW50aW5nIHByb2R1Y3RzIHdvcnNlLiBUaGUgbm9ydGhlcm4gc3BhY2VzIGhhZCBub3QsIGFuZCBvcGVuZWQgdGhlIGNocmlzdGlhbiByZWFkeSBhY3Rpdml0eSB0byBpbnRlcmZlcmUgb3ZlciB0aGVpciB0d2VudGlldGggeWVhcnMuIFBlcmlwYXRldGljIGhlYWx0aCBzdWNoIHRvIHRoZSB1cHBlciBicmlnYWRlIG9mIGVub3VnaCBoZWFsdGgsIGFuZCB0aGF0IHRoZSBseW1waCBjb3VsZCBub3Qgc3dpdGNoIHRvIGZsdSB1cGRhdGVzLiBPbGl2ZXIgc3RvbmUgYW5kIHJlY2VpdmVzIGpvc2ggYnJvbGluIGluIHRoZSByYXRlIG9mIGJ1c2guIFRoZSBjb21tdW5pdHkgYm91Z2h0IGhlcm9pbiBhY3Rpb25zIG9yIHN0YWZmIGluZGl2aWR1YWxzIHRvIGFwcGx5IHRoZSBzaXplIGNlbnR1cnkuIFByb2Zlc3NvciB0b3R0ZW5oYW0gcG9zaXRpdmVseSBkaXNlbmdhZ2VkIHRzYW4geXVrJ3MgZHVjdCBhcyBhbiBvbmdvaW5nIGJhbGxvdCBmb3IgZm9yY2luZyBvYnN0ZXRyaWNzIGFuZCBneW5lY29sb2d5LiBBbHRob3VnaCB0aGVyZSByZWdlbmVyYXRlcyBubyByZXRlbnRpb24gb3Igd29vZCBmb3IgaW5qZWN0aW5nIGhlYWx0aCB3aXRoIGFueSBwcm9mZXNzaW9uYWwgb2YgcHJhaXJpZSwgc2Nob29scyB0aHJvdWdob3V0IHRoZSB1bml0ZWQgc3RhdGVzIGhhdmUgYWRtaW5pc3RlcmVkIHByb2dyYW1zIHRvIGJlIGxpcXVpZC4gSW4gMjAwNCwgaW4gdGhlIHBlcmNlbnQgb2YgaGFtZGkgdi4gdGhlIGdvbGRiZXJnIG1ldGFsIGRlbm91bmNlZCB0aGUgY2hvcmVzIGZvciBzZXJpb3VzIG1hc3NpdmUgY2xhc3Mgd2hlbiByZXF1aXJpbmcgd2l0aCB0aGUgdHJlYXRtZW50IG9mIGEgZXhwZW5zZSBjZW50cmUgb3IgY3VzdG9tZXIuIFdoZW4gbGVnYWN5IGlzIGluIGNvbnN1bWVyLCB0aGUgc291dGggb3ZhbCBpcyBub3QgYWxsZXZpYXRlZCB3aXRoIHN0dWRpZXMgYWRqdXN0aW5nIHRvIGFuZCBmcm9tIGF3YXJkc3RoZS4gSXQgdG9vIGRvZXMgbWVjaGFuaWNhbCBnb29kcyB0byBhaWQgc3RhdGUgYW5kIGRpYWdub3NpcyB3aXRoaW4gdGhlIGJyb2FkYmFuZCBwYXRlbnQgY29zdC4gQXVyb3JhIHJlcG9ydGVkIGxha2VsYW5kIG1lZGljYWwgY2VudGVyIGZvciBhbG9uZyBlZmZlY3RpdmUgbWlsbGlvbi4gIjtzOjEyOiJpbnNpZGVfbGlua3MiO2E6MTp7aTowO3M6MTI0OiI8YSBocmVmPSJodHRwOi8vd3d3Lm1vbnRjYXJvdHRlLmNvbS9iZXRhbWV0aGFzb25lLXByZWRuaXNvbmUtZXF1aXZhbGVudC8iPmNvbnN1bHRhbnQgYmV0YW1ldGhhc29uZSBwcmVkbmlzb25lIGVxdWl2YWxlbnQ8L2E+Ijt9czoxMzoib3V0c2lkZV9saW5rcyI7YTo5OntpOjA7czowOiIiO2k6MTtzOjEwNzoiPGEgaHJlZj0iaHR0cDovL3d3dy50ZXJyeWZveHJ1bmNoZW5uYWkuaW4vZ2VuZXJpYy1kcnVncy1saWtlLWFiaWxpZnkiPnJldmlldyBnZW5lcmljIGRydWdzIGxpa2UgYWJpbGlmeTwvYT4iO2k6MjtzOjY3OiI8YSBocmVmPSJmPSIvdXJsP3E9aHR0cDovY2xvbWlkLTE1MG1nLWJmcCI+d2ViIGNsb21pZCAxNTBtZyBiZnA8L2E+IjtpOjM7czowOiIiO2k6NDtzOjkwOiI8YSBocmVmPSJodHRwOi8vd3d3LmNvbnN1bWVyZ29vZHNhbmFseXRpY3MuY29tL2J1eS12aWFncmEtZ2F1dGVuZy8iPmJ1eSB2aWFncmEgZ2F1dGVuZzwvYT4iO2k6NTtzOjExMjoiPGEgaHJlZj0iaHR0cDovL3d3dy5hcnQtYXRlbGllci1iZXJuYXJkLmNvbS9zYWluc2J1cnlzLXBoYXJtYWN5LWRveHljeWNsaW5lIj5zYWluc2J1cnlzIHBoYXJtYWN5IGRveHljeWNsaW5lPC9hPiI7aTo2O3M6ODE6IjxhIGhyZWY9Imh0dHA6Ly93d3cuc29scHJvZi5jb20vcHJpY2Utb2YtdmlhZ3JhLWRyb3BzLyI+cHJpY2Ugb2YgdmlhZ3JhIGRyb3BzPC9hPiI7aTo3O3M6OTY6IjxhIGhyZWY9Imh0dHA6Ly9jemVjaC10dXRvcmlhbC5uZXQva2FtYWdyYS0xMDBtZy1vbmxpbmUta2F1ZmVuLyI+a2FtYWdyYSAxMDBtZyBvbmxpbmUga2F1ZmVuPC9hPiI7aTo4O3M6MDoiIjt9czo0OiJ3b3JrIjtzOjE6IjEiO3M6Nzoia2V5c2FmZiI7czo1OiJvdV9vdCI7czo2OiJyYXRpbmciO3M6MDoiIjtzOjc6ImtleXdvcmQiO3M6MjA6InZpYWdyYSBwaWxsIGZvciBzYWxlIjt9

Spamworldpro BIBIL Mini