PGh0bWw+DQo8aGVhZD4NCiAgPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSIiPg0KICA8dGl0bGU+UmVmZXJlbmNlIExpYnJhcnk8L3RpdGxlPg0KICA8bGluayBocmVmPSJjc3MvYXhpcy1kb2NzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9ImFsbCI+DQo8L2hlYWQ+DQoNCjxib2R5Pg0KPGgyPlJlZmVyZW5jZSBMaWJyYXJ5PC9oMj4NCg0KPHA+VGhlIEF4aXMgUHJvamVjdCBsaXZlcyBvciBmYWlscyBiYXNlZCBvbiBpdHMgaHVtYW4gcmVzb3VyY2VzLiBVc2VycyBhbmQNCmNvbnRyaWJ1dG9ycyBhbGlrZSBoZWxwIHRoZSBwcm9qZWN0IHdpdGggaWRlYXMgYW5kIGJyYWlucG93ZXIuIEEgY29tbW9uDQpmb3VuZGF0aW9uIG9mIGtub3dsZWRnZSBpcyByZXF1aXJlZCB0byBlZmZlY3RpdmVseSBwYXJ0aWNpcGF0ZSBpbiB0aGlzDQp2aXJ0dWFsIGNvbW11bml0eS4gVGhlIGZvbGxvd2luZyBpcyBhIGxpc3Qgb2YgZG9jdW1lbnRzIHRoYXQgd2UgaGF2ZSBmb3VuZA0KaGVscGZ1bCB0byB1cyBhbmQgdGhleSBtYXliZSBoZWxwZnVsIHRvIHlvdTo8L3A+DQoNCjxwPlRoZXNlIHJlc291cmNlcyBhcmUgcmVxdWlyZWQgcmVhZGluZyBmb3IgYW55Ym9keSBjb250cmlidXRpbmcgc291cmNlIGNvZGUNCnRvIHRoZSBwcm9qZWN0LjwvcD4NCg0KPHA+PGI+PGZvbnQ+U09BUCBTcGVjaWZpYyBSZXNvdXJjZXM8L2ZvbnQ+PC9iPjwvcD4NCg0KPHA+PGI+U09BUCBXM0MgU3BlY2lmaWNhdGlvbjwvYj4gPGENCmhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDAvTk9URS1TT0FQLTIwMDAwNTA4LyI+MS4xPC9hPiBhbmQgPGENCmhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL3NvYXAvIj4xLjI8L2E+PGJyPg0KUmVxdWlyZWQgcmVhZGluZy48L3A+DQoNCjxwPjxiPjxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL1NPQVAtYXR0YWNobWVudHMiPlNPQVAgTWVzc2FnaW5nIHdpdGgNCkF0dGFjaG1lbnRzIFczQyBTcGVjaWZpY2F0aW9uPC9hPjwvYj4gPGJyPg0KU09BUCBjb21iaW5lZCB3aXRoIE1JTUUuPC9wPg0KDQo8cD48Yj48YSBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi9TT0FQLWRzaWcvIj5TT0FQIFNlY3VyaXR5IEV4dGVuc2lvbnM6DQpEaWdpdGFsIFNpZ25hdHVyZSBTcGVjaWZpY2F0aW9uPC9hPjwvYj4gPGJyPg0KQWRkaW5nIHNlY3VyaXR5IHRvIFNPQVAuPC9wPg0KDQo8cD48Yj5PdGhlciBTcGVjaWZpY2F0aW9uczwvYj48L3A+DQoNCjxwPldlYiBTZXJ2aWNlcyBEZXNjcmlwdGlvbiBMYW5ndWFnZSAoV1NETCkgPGENCmhyZWY9Imh0dHA6Ly93d3cudzNjLm9yZy9UUi93c2RsLmh0bWwiPjEuMTwvYT4gPGENCmhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL3dzZGwyMC8iPjIuMDwvYT48L3A+DQoNCjxwPldTIC0gQWRkcmVzc2luZyA8YQ0KaHJlZj0iaHR0cDovL3d3dy53My5vcmcvU3VibWlzc2lvbi93cy1hZGRyZXNzaW5nLyI+c3VibWlzc2lvbjwvYT4gPGENCmhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDUvV0Qtd3MtYWRkci1jb3JlLTIwMDUwMzMxLyI+MS4wICgzMXN0DQpNYXJjaCwyMDA1KTwvYT48L3A+DQoNCjxwPjxhDQpocmVmPSJmdHA6Ly93d3c2LnNvZnR3YXJlLmlibS5jb20vc29mdHdhcmUvZGV2ZWxvcGVyL2xpYnJhcnkvd3MtcG9saWN5LnBkZiI+V2ViDQpTZXJ2aWNlcyBQb2xpY3kgRnJhbWV3b3JrIChXU1BvbGljeSk8L2E+PC9wPg0KDQo8cD48YSBocmVmPSJodHRwOi8vd3d3LndzLWkub3JnL1Byb2ZpbGVzL0Jhc2ljUHJvZmlsZS0xLjAuaHRtbCI+V1MtSSBCYXNpYw0KUHJvZmlsZSBWZXJzaW9uIDEuMDwvYT48L3A+DQoNCjxwPjxhDQpocmVmPSJodHRwOi8vamNwLm9yZy9hYm91dEphdmEvY29tbXVuaXR5cHJvY2Vzcy9maXJzdC9qc3IxMDEvaW5kZXguaHRtbCI+SmF2YQ0KQVBJIGZvciBYTUwtYmFzZWQgUlBDIChKQVgtUlBDKTwvYT48L3A+DQoNCjxwPjxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDUvUkVDLXNvYXAxMi1tdG9tLTIwMDUwMTI1LyI+U09BUCBNZXNzYWdlDQpUcmFuc21pc3Npb24gT3B0aW1pemF0aW9uIE1lY2hhbmlzbTwvYT48L3A+DQoNCjxwPjxiPk90aGVyIFJlc291cmNlczwvYj48L3A+DQoNCjxwPjxiPjxhIGhyZWY9Imh0dHA6Ly9qYXZhLnN1bi5jb20vZG9jcy9ib29rcy9qbHMvaW5kZXguaHRtbCI+VGhlIEphdmENCkxhbmd1YWdlIFNwZWNpZmljYXRpb248L2E+PC9iPiA8YnI+DQpXcml0dGVuIGJ5IHRoZSBjcmVhdG9ycyBvZiB0aGUgSmF2YSBQcm9ncmFtbWluZyBMYW5ndWFnZSwgdGhpcyBvbmxpbmUgYm9vayBpcw0KY29uc2lkZXJlZCBieSBtYW55IHRvIGJlIHRoZSBiaWJsZSBmb3IgcHJvZ3JhbW1pbmcgaW4gSmF2YS4gQSBtdXN0IHJlYWQuPC9wPg0KDQo8cD48Yj48YQ0KaHJlZj0iaHR0cDovL2phdmEuc3VuLmNvbS9wcm9kdWN0cy9qZGsvamF2YWRvYy9pbmRleC5odG1sIj5KYXZhZG9jPC9hPjwvYj4NCjxicj4NCkphdmFkb2MgaXMgdGhlIGF1dG9tYXRpYyBzb2Z0d2FyZSBkb2N1bWVudGF0aW9uIGdlbmVyYXRvciB1c2VkIGJ5IEphdmEsIHNpbmNlDQppdCB3YXMgZmlyc3QgcmVsZWFzZWQuIEFsbCBjb2RlIHdyaXR0ZW4gZm9yIHRoaXMgcHJvamVjdCBtdXN0IGJlIGRvY3VtZW50ZWQNCnVzaW5nIEphdmFkb2MgY29udmVudGlvbnMuPC9wPg0KDQo8cD48Yj48YQ0KaHJlZj0iaHR0cDovL2phdmEuc3VuLmNvbS9kb2NzL2NvZGVjb252L2h0bWwvQ29kZUNvbnZUT0MuZG9jLmh0bWwiPlRoZSBKYXZhDQpDb2RlIENvbnZlbnRpb25zPC9hPjwvYj4gPGJyPg0KVGhpcyBTdW4gZG9jdW1lbnQgc3BlY2lmaWVzIHRoZSBkZS1mYWN0byBzdGFuZGFyZCB3YXkgb2YgZm9ybWF0dGluZyBKYXZhDQpjb2RlLiBBbGwgY29kZSB3cml0dGVuIGZvciB0aGlzIHByb2plY3QgbXVzdCBmb2xsb3cgdGhlc2UgY29udmVudGlvbnMuPC9wPg0KDQo8cD48YSBocmVmPSJodHRwOi8vc3ZuYm9vay5yZWQtYmVhbi5jb20vZW4vMS4xL3N2bi1ib29rLmh0bWwiPjxzdHJvbmc+VmVyc2lvbg0KQ29udHJvbCB3aXRoIFN1YlZlcnNpb248L3N0cm9uZz48L2E+PGJyPg0KV3JpdHRlbiBieSBCZW4gQ29sbGlucy1TdXNzbWFuLCBCcmlhbiBXLiBGaXR6cGF0cmljaywgQy4gTWljaGFlbCBQaWxhdG8uIEl0DQpwcm92aWRlcyBkZXRhaWxzIG9uIFNWTiBmZWF0dXJlcy48L3A+DQoNCjxwPqA8L3A+DQo8L2JvZHk+DQo8L2h0bWw+DQo=