PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+DQo8aHRtbD4NCjxoZWFkPg0KPE1FVEEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9c2hpZnRfamlzIj4NCjwhLS0qKiogVGhpcyBpcyBhIGdlbmVyYXRlZCBmaWxlLiAgRG8gbm90IGVkaXQuICAqKiotLT4NCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vc2tpbi90aWdyaXMuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+DQo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL3NraW4vbXlzaXRlLmNzcyIgdHlwZT0idGV4dC9jc3MiPg0KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9za2luL3NpdGUuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+DQo8bGluayBtZWRpYT0icHJpbnQiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vc2tpbi9wcmludC5jc3MiIHR5cGU9InRleHQvY3NzIj4NCjx0aXRsZT5XZWJTZXJ2aWNlcyAtIEF4aXM8L3RpdGxlPg0KPC9oZWFkPg0KPGJvZHkgYmdjb2xvcj0id2hpdGUiIGNsYXNzPSJjb21wb3NpdGUiPg0KPCEtLT09PT09PT09PT09PT09PT09IHN0YXJ0IEJhbm5lciA9PT09PT09PT09PT09PT09PT0tLT4NCjxkaXYgaWQ9ImJhbm5lciI+DQo8dGFibGUgd2lkdGg9IjEwMCUiIGNlbGxwYWRkaW5nPSI4IiBjZWxsc3BhY2luZz0iMCIgc3VtbWFyeT0iYmFubmVyIiBib3JkZXI9IjAiPg0KPHRib2R5Pg0KPHRyPg0KPCEtLT09PT09PT09PT09PT09PT09IHN0YXJ0IEdyb3VwIExvZ28gPT09PT09PT09PT09PT09PT09LS0+DQo8dGQgYWxpZ249ImxlZnQiPg0KPGRpdiBjbGFzcz0iZ3JvdXBMb2dvIj4NCjxhIGhyZWY9Imh0dHA6Ly93cy5hcGFjaGUub3JnLyI+PGltZyBib3JkZXI9IjAiIGNsYXNzPSJsb2dvSW1hZ2UiIGFsdD0iVGhlIEFwYWNoZSBXZWJTZXJ2aWNlcyBQcm9qZWN0IiBzcmM9Ii4uL2ltYWdlcy9wcm9qZWN0LWxvZ28uanBnIj48L2E+DQo8L2Rpdj4NCjwvdGQ+DQo8IS0tPT09PT09PT09PT09PT09PT0gZW5kIEdyb3VwIExvZ28gPT09PT09PT09PT09PT09PT09LS0+DQo8IS0tPT09PT09PT09PT09PT09PT0gc3RhcnQgUHJvamVjdCBMb2dvID09PT09PT09PT09PT09PT09PS0tPjx0ZCBhbGlnbj0icmlnaHQiPg0KPGRpdiBjbGFzcz0icHJvamVjdExvZ28iPg0KPGEgaHJlZj0iaHR0cDovL3dzLmFwYWNoZS5vcmcvYXhpcy8iPjxpbWcgYm9yZGVyPSIwIiBjbGFzcz0ibG9nb0ltYWdlIiBhbHQ9IlRoZSBBcGFjaGUgQXhpcyBQcm9qZWN0IiBzcmM9Ii4uL2ltYWdlcy9heGlzLmpwZyI+PC9hPg0KPC9kaXY+DQo8L3RkPg0KPCEtLT09PT09PT09PT09PT09PT09IGVuZCBQcm9qZWN0IExvZ28gPT09PT09PT09PT09PT09PT09LS0+DQo8IS0tPT09PT09PT09PT09PT09PT0gc3RhcnQgU2VhcmNoID09PT09PT09PT09PT09PT09PS0tPjx0ZCB2YWxpZ249InRvcCIgcm93c3Bhbj0iMiIgYWxpZ249InJpZ2h0IiBjbGFzcz0ic2VhcmNoIj4NCjxmb3JtIHRhcmdldD0iX2JsYW5rIiBhY3Rpb249Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbS9zZWFyY2giIG1ldGhvZD0iZ2V0Ij4NCjx0YWJsZSBzdW1tYXJ5PSJzZWFyY2giIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIwIj4NCjx0cj4NCjx0ZCBiZ2NvbG9yPSIjYTViNmM2IiBjb2xzcGFuPSIzIj48aW1nIGhlaWdodD0iMTAiIHdpZHRoPSIxIiBhbHQ9IiIgc3JjPSIuLi9za2luL2ltYWdlcy9zcGFjZXIuZ2lmIiBjbGFzcz0ic3BhY2VyIj48L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCBjb2xzcGFuPSIzIj48aW1nIGhlaWdodD0iOCIgd2lkdGg9IjEiIGFsdD0iIiBzcmM9Ii4uL3NraW4vaW1hZ2VzL3NwYWNlci5naWYiIGNsYXNzPSJzcGFjZXIiPjwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbWcgaGVpZ2h0PSIxIiB3aWR0aD0iMSIgYWx0PSIiIHNyYz0iLi4vc2tpbi9pbWFnZXMvc3BhY2VyLmdpZiIgY2xhc3M9InNwYWNlciI+PC90ZD48dGQgbm93cmFwPSJub3dyYXAiPjxpbnB1dCB2YWx1ZT0id3MuYXBhY2hlLm9yZyIgbmFtZT0ic2l0ZXNlYXJjaCIgdHlwZT0iaGlkZGVuIj48aW5wdXQgc2l6ZT0iMTAiIG5hbWU9InEiIGlkPSJxdWVyeSIgdHlwZT0idGV4dCI+PGltZyBoZWlnaHQ9IjEiIHdpZHRoPSI1IiBhbHQ9IiIgc3JjPSIuLi9za2luL2ltYWdlcy9zcGFjZXIuZ2lmIiBjbGFzcz0ic3BhY2VyIj48aW5wdXQgbmFtZT0iU2VhcmNoIiB2YWx1ZT0iR08iIHR5cGU9InN1Ym1pdCI+DQo8YnI+DQogICAgICAgICAgICAgICAgICAgICAgICAgIFNlYXJjaCBXUzwvdGQ+PHRkPjxpbWcgaGVpZ2h0PSIxIiB3aWR0aD0iMSIgYWx0PSIiIHNyYz0iLi4vc2tpbi9pbWFnZXMvc3BhY2VyLmdpZiIgY2xhc3M9InNwYWNlciI+PC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQgY29sc3Bhbj0iMyI+PGltZyBoZWlnaHQ9IjciIHdpZHRoPSIxIiBhbHQ9IiIgc3JjPSIuLi9za2luL2ltYWdlcy9zcGFjZXIuZ2lmIiBjbGFzcz0ic3BhY2VyIj48L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCBjbGFzcz0iYm90dG9tLWxlZnQtdGhpY2siPjwvdGQ+PHRkIGJnY29sb3I9IiNhNWI2YzYiPjxpbWcgaGVpZ2h0PSIxIiB3aWR0aD0iMSIgYWx0PSIiIHNyYz0iLi4vc2tpbi9pbWFnZXMvc3BhY2VyLmdpZiIgY2xhc3M9InNwYWNlciI+PC90ZD48dGQgY2xhc3M9ImJvdHRvbS1yaWdodC10aGljayI+PC90ZD4NCjwvdHI+DQo8L3RhYmxlPg0KPC9mb3JtPg0KPC90ZD4NCjwhLS09PT09PT09PT09PT09PT09PSBlbmQgU2VhcmNoID09PT09PT09PT09PT09PT09PS0tPg0KPC90cj4NCjwvdGJvZHk+DQo8L3RhYmxlPg0KPC9kaXY+DQo8IS0tPT09PT09PT09PT09PT09PT0gZW5kIEJhbm5lciA9PT09PT09PT09PT09PT09PT0tLT4NCjwhLS09PT09PT09PT09PT09PT09PSBzdGFydCBNYWluID09PT09PT09PT09PT09PT09PS0tPg0KPHRhYmxlIHdpZHRoPSIxMDAlIiBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCIgc3VtbWFyeT0ibmF2IiBpZD0iYnJlYWRjcnVtYnMiPg0KPHRib2R5Pg0KPCEtLT09PT09PT09PT09PT09PT09IHN0YXJ0IFN0YXR1cyA9PT09PT09PT09PT09PT09PT0tLT4NCjx0ciBjbGFzcz0ic3RhdHVzIj4NCjx0ZD4NCjwhLS09PT09PT09PT09PT09PT09PSBzdGFydCBCcmVhZENydW1iID09PT09PT09PT09PT09PT09PS0tPjxhIGhyZWY9Imh0dHA6Ly93d3cuYXBhY2hlLm9yZy8iPkFwYWNoZTwvYT4gfCA8YSBocmVmPSJodHRwOi8vd3MuYXBhY2hlLm9yZy8iPldTPC9hPjxhIGhyZWY9IiI+PC9hPg0KPCEtLT09PT09PT09PT09PT09PT09IGVuZCBCcmVhZENydW1iID09PT09PT09PT09PT09PT09PS0tPjwvdGQ+PHRkIGlkPSJ0YWJzIj4NCjwhLS09PT09PT09PT09PT09PT09PSBzdGFydCBUYWJzID09PT09PT09PT09PT09PT09PS0tPg0KPGRpdiBjbGFzcz0idGFiIj4NCjxzcGFuIGNsYXNzPSJzZWxlY3RlZFRhYiI+PGEgY2xhc3M9ImJhc2Utc2VsZWN0ZWQiIGhyZWY9Ii4uL2luZGV4Lmh0bWwiPldlYlNlcnZpY2VzLUF4aXM8L2E+PC9zcGFuPg0KPC9kaXY+DQo8IS0tPT09PT09PT09PT09PT09PT0gZW5kIFRhYnMgPT09PT09PT09PT09PT09PT09LS0+DQo8L3RkPg0KPC90cj4NCjwvdGJvZHk+DQo8L3RhYmxlPg0KPCEtLT09PT09PT09PT09PT09PT09IGVuZCBTdGF0dXMgPT09PT09PT09PT09PT09PT09LS0+DQo8dGFibGUgaWQ9Im1haW4iIHdpZHRoPSIxMDAlIiBjZWxscGFkZGluZz0iOCIgY2VsbHNwYWNpbmc9IjAiIHN1bW1hcnk9IiIgYm9yZGVyPSIwIj4NCjx0Ym9keT4NCjx0ciB2YWxpZ249InRvcCI+DQo8IS0tPT09PT09PT09PT09PT09PT0gc3RhcnQgTWVudSA9PT09PT09PT09PT09PT09PT0tLT4NCjx0ZCBpZD0ibGVmdGNvbCI+DQo8ZGl2IGlkPSJuYXZjb2x1bW4iPg0KPGRpdiBjbGFzcz0ibWVudUJhciI+DQo8ZGl2IGNsYXNzPSJtZW51Ij4NCjxzcGFuIGNsYXNzPSJtZW51TGFiZWwiPkF4aXM8L3NwYW4+DQogDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSIvYXhpcy9qYS9pbmRleC5odG1sIj6CzYK2gt+CyTwvYT4NCjwvZGl2Pg0KIA0KPGRpdiBjbGFzcz0ibWVudUl0ZW0iPg0KPGEgaHJlZj0iL2F4aXMvamEvbmV3cy5odG1sIj6CqJJtgueCuTwvYT4NCjwvZGl2Pg0KDQogDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSJpbmRleC5odG1sIj5GQVEvV2lraTwvYT4NCjwvZGl2Pg0KIA0KPGRpdiBjbGFzcz0ibWVudSI+DQo8c3BhbiBjbGFzcz0ibWVudUxhYmVsIj6KiJOugsmOUYnBPC9zcGFuPg0KICANCjxkaXYgY2xhc3M9Im1lbnVJdGVtIj4NCjxhIGhyZWY9Ii9heGlzL2phL292ZXJ2aWV3Lmh0bWwiPopUl3Y8L2E+DQo8L2Rpdj4NCiAgDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSIvYXhpcy9qYS9jdnMuaHRtbCI+Q1ZTIIOKg3yDV4Nng4o8L2E+DQo8L2Rpdj4NCiAgDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSIvYXhpcy9qYS9tYWlsLmh0bWwiPoOBgVuDioOTg0+DioNYg2c8L2E+DQo8L2Rpdj4NCiAgDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSIvYXhpcy9qYS9yZWYuaHRtbCI+g4qDdINAg4yDk4NYg4mDQ4N1g4mDijwvYT4NCjwvZGl2Pg0KICANCjxkaXYgY2xhc3M9Im1lbnVJdGVtIj4NCjxhIGhyZWY9Ii9heGlzL2phL2J1Z3MuaHRtbCI+g2+DTzwvYT4NCjwvZGl2Pg0KDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSJob3d0b2J1aWxkLmh0bWwiPoNUg0ODZ41cknqV+5ZAPC9hPg0KPC9kaXY+DQogDQo8L2Rpdj4NCiANCjxkaXYgY2xhc3M9Im1lbnUiPg0KPHNwYW4gY2xhc3M9Im1lbnVMYWJlbCI+QXhpcyAoSmF2YSk8L3NwYW4+DQogIA0KPGRpdiBjbGFzcz0ibWVudUl0ZW0iPg0KPGEgaHJlZj0iL2F4aXMvamEvamF2YS9pbmRleC5odG1sIj6DaINMg4WDgYOTg2c8L2E+DQo8L2Rpdj4NCiAgDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSIvYXhpcy9qYS9qYXZhL2luc3RhbGwuaHRtbCI+g0ODk4NYg2eBW4OLPC9hPg0KPC9kaXY+DQogIA0KPGRpdiBjbGFzcz0ibWVudUl0ZW0iPg0KPGEgaHJlZj0iL2F4aXMvamEvamF2YS91c2VyLWd1aWRlLmh0bWwiPoOGgVuDVYNLg0ODaDwvYT4NCjwvZGl2Pg0KICANCjxkaXYgY2xhc3M9Im1lbnVJdGVtIj4NCjxhIGhyZWY9Ii9heGlzL2phL2phdmEvZGV2ZWxvcGVycy1ndWlkZS5odG1sIj6KSpStjtKDS4NDg2g8L2E+DQo8L2Rpdj4NCiAgDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSIvYXhpcy9qYS9qYXZhL2ludGVncmF0aW9uLWd1aWRlLmh0bWwiPpOdjYeDS4NDg2g8L2E+DQo8L2Rpdj4NCiAgDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSIvYXhpcy9qYS9qYXZhL2FyY2hpdGVjdHVyZS1ndWlkZS5odG1sIj6DQYFbg0yDZYNOg2CDg4NLg0ODaDwvYT4NCjwvZGl2Pg0KICANCjxkaXYgY2xhc3M9Im1lbnVJdGVtIj4NCjxhIGhyZWY9Ii9heGlzL2phL2phdmEvcmVmZXJlbmNlLmh0bWwiPoOKg3SDQIOMg5ODWINLg0ODaDwvYT4NCjwvZGl2Pg0KICANCjxkaXYgY2xhc3M9Im1lbnVJdGVtIj4NCjxhIGhyZWY9Ii9heGlzL2phL2phdmEvcmVhZGluZy5odG1sIj6Tx4+Rg0uDQ4NoPC9hPg0KPC9kaXY+DQogIA0KPGRpdiBjbGFzcz0ibWVudUl0ZW0iPg0KPGEgaHJlZj0iL2F4aXMvamEvamF2YS9yZXF1aXJlbWVudHMuaHRtbCI+l3aMjzwvYT4NCjwvZGl2Pg0KIA0KPC9kaXY+DQogDQo8ZGl2IGNsYXNzPSJtZW51Ij4NCjxzcGFuIGNsYXNzPSJtZW51TGFiZWwiPkF4aXMgKEMrKyk8L3NwYW4+DQogIA0KPGRpdiBjbGFzcz0ibWVudUl0ZW0iPg0KPGEgaHJlZj0iL2F4aXMvamEvY3BwL2luZGV4Lmh0bWwiPkF4aXMgQysrII3FkFaUxYOKg4qBW4NYPC9hPg0KPC9kaXY+DQogIA0KPGRpdiBjbGFzcz0ibWVudUl0ZW0iPg0KPGEgaHJlZj0iL2F4aXMvamEvY3BwL2RvY3VtZW50YXRpb24uaHRtbCI+g2iDTIOFg4GDk4NnPC9hPg0KPC9kaXY+DQogIA0KPGRpdiBjbGFzcz0ibWVudUl0ZW0iPg0KPGEgaHJlZj0iL2F4aXMvamEvY3BwL2Rvd25sb2FkLmh0bWwiPoNfg0WDk4ONgVuDaDwvYT4NCjwvZGl2Pg0KICANCjxkaXYgY2xhc3M9Im1lbnVJdGVtIj4NCjxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP0F4aXNDUFBQcm9qZWN0UGFnZXMiPldpa2kgg3mBW4NXPC9hPiBbik+VlINUg0ODZ10NCjwvZGl2Pg0KICANCjxkaXYgY2xhc3M9Im1lbnVJdGVtIj4NCjxhIGhyZWY9Ii9heGlzL2phL2NwcC93aG8uaHRtbCI+g4GDk4Nvj9CJ7jwvYT4NCjwvZGl2Pg0KICANCjwvZGl2Pg0KDQo8ZGl2IGNsYXNzPSJtZW51Ij4NCjxzcGFuIGNsYXNzPSJtZW51TGFiZWwiPoNfg0WDk4ONgVuDaDwvc3Bhbj4NCiAgDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSIvYXhpcy9qYS9yZWxlYXNlcy5odG1sIj6DioOKgVuDWDwvYT4NCjwvZGl2Pg0KICANCjxkaXYgY2xhc3M9Im1lbnVJdGVtIj4NCjxhIGhyZWY9Ii9heGlzL2phL2ludGVyaW0uaHRtbCI+jmKS6JTFPC9hPg0KPC9kaXY+DQogIA0KPGRpdiBjbGFzcz0ibWVudUl0ZW0iPg0KPGEgaHJlZj0iaHR0cDovL2N2cy5hcGFjaGUub3JnL3ZpZXdjdnMvd3MtYXhpcy8iPoNcgVuDWINSgVuDaDwvYT4gW4pPlZSDVINDg2ddDQo8L2Rpdj4NCg0KPC9kaXY+DQoNCjxkaXYgY2xhc3M9Im1lbnUiPg0KPHNwYW4gY2xhc3M9Im1lbnVMYWJlbCI+itaYQYN2g42DV4NGg06DZzwvc3Bhbj4NCiAgDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSJodHRwOi8vd3MuYXBhY2hlLm9yZy93c2lmLyI+V1NJRjwvYT4gW4pPlZSDVINDg2ddDQo8L2Rpdj4NCiAgDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSJodHRwOi8vY3ZzLmFwYWNoZS5vcmcvdmlld2N2cy8qY2hlY2tvdXQqL3dzLXdzaWwvamF2YS9SRUFETUUuaHRtIj5XU0lMPC9hPiBbik+VlINUg0ODZ10NCjwvZGl2Pg0KICANCjxkaXYgY2xhc3M9Im1lbnVJdGVtIj4NCjxhIGhyZWY9Imh0dHA6Ly93d3ctMTI0LmlibS5jb20vZGV2ZWxvcGVyd29ya3MvcHJvamVjdHMvd3NkbDRqLyI+V1NETDRKPC9hPiBbik+VlINUg0ODZ10NCjwvZGl2Pg0KICANCjxkaXYgY2xhc3M9Im1lbnVJdGVtIj4NCjxhIGhyZWY9Imh0dHA6Ly93d3cudWRkaTRqLm9yZy8iPlVEREk0SjwvYT4gW4pPlZSDVINDg2ddDQo8L2Rpdj4NCg0KPC9kaXY+DQoNCjxkaXYgY2xhc3M9Im1lbnUiPg0KPHNwYW4gY2xhc3M9Im1lbnVMYWJlbCI+gruCzJG8PC9zcGFuPg0KDQo8IS0tICANCjxkaXYgY2xhc3M9Im1lbnVJdGVtIj4NCjxhIGhyZWY9Ii4uL3NpdGUuaHRtbCI+g1SDQ4NnkVOCxDwvYT4NCjwvZGl2Pg0KLS0+DQogIA0KPGRpdiBjbGFzcz0ibWVudUl0ZW0iPg0KPGEgaHJlZj0iL2F4aXMvamEvd2hvLmh0bWwiPoOBg5ODb4/Qie48L2E+DQo8L2Rpdj4NCiAgDQo8ZGl2IGNsYXNzPSJtZW51SXRlbSI+DQo8YSBocmVmPSIvYXhpcy9qYS9jb250YWN0Lmh0bWwiPphBl42Q5jwvYT4NCjwvZGl2Pg0KICANCjxkaXYgY2xhc3M9Im1lbnVJdGVtIj4NCjxhIGhyZWY9Ii9heGlzL2phL2xlZ2FsLmh0bWwiPpZAitaYQTwvYT4NCjwvZGl2Pg0KDQogIA0KPGRpdiBjbGFzcz0ibWVudUl0ZW0iPg0KPGEgaHJlZj0iL2F4aXMvamEvZG9jcy5odG1sIj6DgYOCL4Nog0yDhYOBg5ODZzwvYT4NCjwvZGl2Pg0KDQo8L2Rpdj4NCg0KDQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L3RkPg0KPCEtLT09PT09PT09PT09PT09PT09IGVuZCBNZW51ID09PT09PT09PT09PT09PT09PS0tPg0KPCEtLT09PT09PT09PT09PT09PT09IHN0YXJ0IENvbnRlbnQgPT09PT09PT09PT09PT09PT09LS0+PHRkPg0KPGRpdiBpZD0iYm9keWNvbCI+DQo8ZGl2IGNsYXNzPSJhcHAiPg0KPGRpdiBhbGlnbj0iY2VudGVyIj4NCjxoMT5XZWJTZXJ2aWNlcyAtIEF4aXM8L2gxPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJoMyI+DQoNCjxkaXYgY2xhc3M9ImgzIj4NCjxoMz5XZWJTZXJ2aWNlcyAtIEF4aXMgLSBGQVEvV2lraTwvaDM+DQo8L2Rpdj4NCg0KPHA+W5Z8lvOO0pKNOiCCsYLMg3mBW4NXgs0gRkFRL1dpa2kgg3mBW4NXgvCQw5NJgsmWfJbzgrWCvYLggsyCxYK3gUKNxZBWgsyT4JdlgsmCwoKrgtyCtYLEgs08YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9BeGlzUHJvamVjdFBhZ2VzIj6We4nGIEZBUS9XaWtpPC9hPiCC8IKyl5eJuoKzgqKBQl08L3A+DQoNCjxkaXYgY2xhc3M9Img0Ij4NCjxoND6DToOJg0ODQYOTg2eK1phBPC9oND4NCjwvZGl2Pg0KDQoNCjxvbD4NCjxsaT48YSBuYW1lPSJKYXZhVGltZW91dCI+W1dTREwySmF2YSCDWINeg3WC8I5nl3CCt4LpjduCyYFBgseCzILmgqSCyYK1gsSDXoNDg4CDQYNFg2eC8JDdkuiCt4LpgsyCxYK3gqk/XTwvYT4gW5XSj1eT+o6eIDIwMDSUTjWMjjI0k/pwbTg6MjIglMVdDQoNCjxwPjxiPo6/luI6IFdTREwySmF2YSCDWINeg3WC8I5nl3CCt4LpjduCyYFBgseCzILmgqSCyYK1gsSDXoNDg4CDQYNFg2eC8JDdkuiCt4LpgsyCxYK3gqk/PC9iPjwvcD4NCjxwPonxk5o6IJC2kKyCs4Lqgr2DWINeg3WRU4LEgqqKZ5KjgreC6SBvcmcuYXBhY2hlLmF4aXMuY2xpZW50LlN0dWIgg06DiYNYgskgc2V0VGltZW91dCCDgYNcg2KDaIKqgqCC6ILcgreBQjwvcD4NCjxwPoKxgrGCySBGb28ggsaCooKklryRT4LMg1SBW4Nyg1iCyYNeg0ODgINBg0WDZ4LwkN2S6IK3gumV+5ZAgvCOpoK1gtyCt4FCPC9wPg0KPHByZT4gRm9vU2VydmljZUxvY2F0b3IgbG9jID0gbmV3IEZvb1NlcnZpY2VMb2NhdG9yKCk7DQogRm9vU2VydmljZSBiaW5kaW5nID0gbG9jLmdldEZvb1NlcnZpY2UoKTsNCiBvcmcuYXBhY2hlLmF4aXMuY2xpZW50LlN0dWIgcyA9IChTdHViKSBiaW5kaW5nOw0KIHMuc2V0VGltZW91dCgxMDAwKTsgIC8vIDGVYoFCg36DipVigsUNCjwvcHJlPg0KPHA+QXhpcyAxLjEgiMiNfoLMg2aDdINIg4uDZ4LMg16DQ4OAg0GDRYNngs02MJVigsWCt4FCQXhpcyAxLjAggsmCzYNmg3SDSIOLg2eCzINeg0ODgINBg0WDZ4KqgqCC6ILcgrmC8YLFgrWCvSiCwoLcguiDZoN0g0iDi4NnMJViKYFCgrGCzINeg0ODgINBg0WDZ5Jsgs0gSFRUUCCDXINQg2KDZ4LJkN2S6IKzguqC6YLggsyCxYKggsGCxIFBQXhpcyAxLjEggsmCzYLIgqKOwJGVgvCVS5d2gsaCt4Lpg1KDbINOg1aDh4OTg16DQ4OAg0GDRYNngsWCzYKgguiC3IK5gvGBQjwvcD4NCg0KPHA+PGI+jr+W4jogc2V0VGltZW91dCgxNSoxMDAwMCmBQYKggumCooLNguaC6JHlgquCyJJsgvCQ3ZLogrWCxCBodHRwIILMIHVybCCCyZDakbGCt4LpgsaIyIm6gsyDR4OJgVuCqoLFgtyCt4FCgr2CvoK1IGxvY2FsaG9zdCCCzCB1cmwggsWCzYNHg4mBW4KqgsWC3IK5gvGBQjwvYj48L3A+DQo8Yj48cHJlPiBqYXZhLm5ldC5Db25uZWN0RXhjZXB0aW9uPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPUNvbm5lY3RFeGNlcHRpb24iPj88L2E+OiBDb25uZWN0aW9uIHRpbWVkIG91dDogY29ubmVjdA0KICAgICAgICBhdCBqYXZhLm5ldC5QbGFpblNvY2tldEltcGw8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9UGxhaW5Tb2NrZXRJbXBsIj4/PC9hPi5zb2NrZXRDb25uZWN0KE5hdGl2ZSBNZXRob2QpDQogICAgICAgIGF0IGphdmEubmV0LlBsYWluU29ja2V0SW1wbDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1QbGFpblNvY2tldEltcGwiPj88L2E+LmRvQ29ubmVjdChQbGFpblNvY2tldEltcGw8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9UGxhaW5Tb2NrZXRJbXBsIj4/PC9hPi5qYXZhOjMwNSkNCiAgICAgICAgYXQgamF2YS5uZXQuUGxhaW5Tb2NrZXRJbXBsPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPVBsYWluU29ja2V0SW1wbCI+PzwvYT4uY29ubmVjdFRvQWRkcmVzczxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1Ub0FkZHJlc3MiPj88L2E+KFBsYWluU29ja2V0SW1wbDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1QbGFpblNvY2tldEltcGwiPj88L2E+LmphdmE6MTcxKQ0KICAgICAgICBhdCBqYXZhLm5ldC5QbGFpblNvY2tldEltcGw8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9UGxhaW5Tb2NrZXRJbXBsIj4/PC9hPi5jb25uZWN0KFBsYWluU29ja2V0SW1wbDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1QbGFpblNvY2tldEltcGwiPj88L2E+LmphdmE6MTU4KQ0KICAgICAgICBhdCBqYXZhLm5ldC5Tb2NrZXQuY29ubmVjdChTb2NrZXQuamF2YTo0NTIpDQogICAgICAgIGF0IGphdmEubmV0LlNvY2tldC5jb25uZWN0KFNvY2tldC5qYXZhOjQwMikNCiAgICAgICAgYXQgc3VuLm5ldC5OZXR3b3JrQ2xpZW50PGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPU5ldHdvcmtDbGllbnQiPj88L2E+LmRvQ29ubmVjdChOZXR3b3JrQ2xpZW50PGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPU5ldHdvcmtDbGllbnQiPj88L2E+LmphdmE6MTM5KQ0KICAgICAgICBhdCBzdW4ubmV0Lnd3dy5odHRwLjxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP0h0dHBDbGllbnQiPkh0dHBDbGllbnQ8L2E+Lm9wZW5TZXJ2ZXIoPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/SHR0cENsaWVudCI+SHR0cENsaWVudDwvYT4uamF2YTo0MDIpDQogICAgICAgIGF0IHN1bi5uZXQud3d3Lmh0dHAuPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/SHR0cENsaWVudCI+SHR0cENsaWVudDwvYT4ub3BlblNlcnZlcig8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9IdHRwQ2xpZW50Ij5IdHRwQ2xpZW50PC9hPi5qYXZhOjYxOCkNCiAgICAgICAgYXQgc3VuLm5ldC53d3cuaHR0cC48YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9IdHRwQ2xpZW50Ij5IdHRwQ2xpZW50PC9hPi4mbHQ7aW5pdCZndDsoPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/SHR0cENsaWVudCI+SHR0cENsaWVudDwvYT4uamF2YTozMDYpDQogICAgICAgIGF0IHN1bi5uZXQud3d3Lmh0dHAuPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/SHR0cENsaWVudCI+SHR0cENsaWVudDwvYT4uJmx0O2luaXQmZ3Q7KDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP0h0dHBDbGllbnQiPkh0dHBDbGllbnQ8L2E+LmphdmE6MjY3KQ0KICAgICAgICBhdCBzdW4ubmV0Lnd3dy5odHRwLjxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP0h0dHBDbGllbnQiPkh0dHBDbGllbnQ8L2E+Lk5ldyg8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9IdHRwQ2xpZW50Ij5IdHRwQ2xpZW50PC9hPi5qYXZhOjMzOSkNCiAgICAgICAgYXQgc3VuLm5ldC53d3cuaHR0cC48YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9IdHRwQ2xpZW50Ij5IdHRwQ2xpZW50PC9hPi5OZXcoPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/SHR0cENsaWVudCI+SHR0cENsaWVudDwvYT4uamF2YTozMjApDQogICAgICAgIGF0IHN1bi5uZXQud3d3Lmh0dHAuPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/SHR0cENsaWVudCI+SHR0cENsaWVudDwvYT4uTmV3KDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP0h0dHBDbGllbnQiPkh0dHBDbGllbnQ8L2E+LmphdmE6MzE1KQ0KICAgICAgICBhdCBzdW4ubmV0Lnd3dy5wcm90b2NvbC5odHRwLkh0dHBVUkxDb25uZWN0aW9uPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPUh0dHBVUkxDb25uZWN0aW9uIj4/PC9hPi5wbGFpbkNvbm5lY3QoSHR0cFVSTENvbm5lPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPUh0dHBVUkxDb25uZSI+PzwvYT5jdGlvbi5qYXZhOjUxMikNCiAgICAgICAgYXQgc3VuLm5ldC53d3cucHJvdG9jb2wuaHR0cC5IdHRwVVJMQ29ubmVjdGlvbjxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1IdHRwVVJMQ29ubmVjdGlvbiI+PzwvYT4uY29ubmVjdChIdHRwVVJMQ29ubmVjdGlvbjxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1IdHRwVVJMQ29ubmVjdGlvbiI+PzwvYT4uamF2YTo0ODkpDQogICAgICAgIGF0IHN1bi5uZXQud3d3LnByb3RvY29sLmh0dHAuSHR0cFVSTENvbm5lY3Rpb248YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9SHR0cFVSTENvbm5lY3Rpb24iPj88L2E+LmdldElucHV0U3RyZWFtPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPUlucHV0U3RyZWFtIj4/PC9hPihIdHRwVVJMQ29uPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPUh0dHBVUkxDb24iPj88L2E+bmVjdGlvbi5qYXZhOjYxNykNCiAgICAgICAgYXQgamF2YS5uZXQuVVJMLm9wZW5TdHJlYW0oVVJMLmphdmE6OTEzKQ0KICAgICAgICBhdCBvcmcuYXBhY2hlLnhlcmNlcy5yZWFkZXJzLkRlZmF1bHRSZWFkZXJGYWN0b3J5PGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPURlZmF1bHRSZWFkZXJGYWN0b3J5Ij4/PC9hPi5jcmVhdGVSZWFkZXIoRGVmYXVsdFJlPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPURlZmF1bHRSZSI+PzwvYT5hZGVyRmFjdG9yeS5qYXZhOjE0OSkNCiAgICAgICAgYXQgb3JnLmFwYWNoZS54ZXJjZXMucmVhZGVycy5EZWZhdWx0RW50aXR5SGFuZGxlcjxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1EZWZhdWx0RW50aXR5SGFuZGxlciI+PzwvYT4uc3RhcnRSZWFkaW5nRnJvbURvY3VtZTxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1SZWFkaW5nRnJvbURvY3VtZSI+PzwvYT5udChEZWZhdWx0RW50aXR5SGFuZGxlcjxBIA0KaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPURlZmF1bHRFbnRpdHlIYW5kbGVyIj4/PC9hPi5qYXZhOjQ5MSkNCiAgICAgICAgYXQgb3JnLmFwYWNoZS54ZXJjZXMuZnJhbWV3b3JrLlhNTFBhcnNlci5wYXJzZVNvbWVTZXR1cDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1Tb21lU2V0dXAiPj88L2E+KFhNTFBhcnNlci5qYXZhOjMxMikNCiAgICAgICAgYXQgb3JnLmFwYWNoZS54ZXJjZXMuZnJhbWV3b3JrLlhNTFBhcnNlci5wYXJzZShYTUxQYXJzZXIuamF2YToxMDgwKQ0KICAgICAgICBhdCBvcmcuYXBhY2hlLnhlcmNlcy5qYXhwLkRvY3VtZW50QnVpbGRlckltcGw8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9RG9jdW1lbnRCdWlsZGVySW1wbCI+PzwvYT4ucGFyc2UoRG9jdW1lbnRCdWlsZGVySW1wbDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1Eb2N1bWVudEJ1aWxkZXJJbXBsIj4/PC9hPi5qYXZhOjE5NSkNCiAgICAgICAgYXQgb3JnLmFwYWNoZS5heGlzLnV0aWxzLlhNTFV0aWxzLm5ld0RvY3VtZW50KFhNTFV0aWxzLmphdmE6MzIyKQ0KICAgICAgICBhdCBvcmcuYXBhY2hlLmF4aXMudXRpbHMuWE1MVXRpbHMubmV3RG9jdW1lbnQoWE1MVXRpbHMuamF2YTozNjcpDQogICAgICAgIGF0IG9yZy5hcGFjaGUuYXhpcy53c2RsLnN5bWJvbFRhYmxlLlN5bWJvbFRhYmxlPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPVN5bWJvbFRhYmxlIj4/PC9hPi5wb3B1bGF0ZShTeW1ib2xUYWJsZTxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1TeW1ib2xUYWJsZSI+PzwvYT4uamF2YTozODQpDQogICAgICAgIGF0IG9yZy5hcGFjaGUuYXhpcy53c2RsLmdlbi5QYXJzZXIkV1NETFJ1bm5hYmxlLnJ1bihQYXJzZXIuamF2YToyNDUpDQogICAgICAgIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjUzNClqYXZhLm5ldC5Db25uZWN0RXhjZXB0aW9uPEEgDQpocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9Q29ubmVjdEV4Y2VwdGlvbiI+PzwvYT46IA0KQ29ubmVjdGlvbiB0aW1lZCBvdXQ6IGNvbm5lY3QgYXQgamF2YS5uZXQuUGxhaW5Tb2NrZXRJbXBsPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPVBsYWluU29ja2V0SW1wbCI+PzwvYT4uc29ja2V0Q29ubmVjdChOYXRpdmUgTWV0aG9kKQ0KICAgICAgICBhdCBqYXZhLm5ldC5QbGFpblNvY2tldEltcGw8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9UGxhaW5Tb2NrZXRJbXBsIj4/PC9hPi5kb0Nvbm5lY3QoUGxhaW5Tb2NrZXRJbXBsPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPVBsYWluU29ja2V0SW1wbCI+PzwvYT4uamF2YTozMDUpDQogICAgICAgIGF0IGphdmEubmV0LlBsYWluU29ja2V0SW1wbDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1QbGFpblNvY2tldEltcGwiPj88L2E+LmNvbm5lY3RUb0FkZHJlc3M8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9VG9BZGRyZXNzIj4/PC9hPihQbGFpblNvY2tldEltcGw8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9UGxhaW5Tb2NrZXRJbXBsIj4/PC9hPi5qYXZhOjE3MSkNCiAgICAgICAgYXQgamF2YS5uZXQuUGxhaW5Tb2NrZXRJbXBsPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPVBsYWluU29ja2V0SW1wbCI+PzwvYT4uY29ubmVjdChQbGFpblNvY2tldEltcGw8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9UGxhaW5Tb2NrZXRJbXBsIj4/PC9hPi5qYXZhOjE1OCkNCiAgICAgICAgYXQgamF2YS5uZXQuU29ja2V0LmNvbm5lY3QoU29ja2V0LmphdmE6NDUyKQ0KICAgICAgICBhdCBqYXZhLm5ldC5Tb2NrZXQuY29ubmVjdChTb2NrZXQuamF2YTo0MDIpDQogICAgICAgIGF0IHN1bi5uZXQuTmV0d29ya0NsaWVudDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1OZXR3b3JrQ2xpZW50Ij4/PC9hPi5kb0Nvbm5lY3QoTmV0d29ya0NsaWVudDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1OZXR3b3JrQ2xpZW50Ij4/PC9hPi5qYXZhOjEzOSkNCiAgICAgICAgYXQgc3VuLm5ldC53d3cuaHR0cC48YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9IdHRwQ2xpZW50Ij5IdHRwQ2xpZW50PC9hPi5vcGVuU2VydmVyKDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP0h0dHBDbGllbnQiPkh0dHBDbGllbnQ8L2E+LmphdmE6NDAyKQ0KICAgICAgICBhdCBzdW4ubmV0Lnd3dy5odHRwLjxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP0h0dHBDbGllbnQiPkh0dHBDbGllbnQ8L2E+Lm9wZW5TZXJ2ZXIoPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/SHR0cENsaWVudCI+SHR0cENsaWVudDwvYT4uamF2YTo2MTgpDQogICAgICAgIGF0IHN1bi5uZXQud3d3Lmh0dHAuPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/SHR0cENsaWVudCI+SHR0cENsaWVudDwvYT4uJmx0O2luaXQmZ3Q7KDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP0h0dHBDbGllbnQiPkh0dHBDbGllbnQ8L2E+LmphdmE6MzA2KQ0KICAgICAgICBhdCBzdW4ubmV0Lnd3dy5odHRwLjxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP0h0dHBDbGllbnQiPkh0dHBDbGllbnQ8L2E+LiZsdDtpbml0Jmd0Oyg8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9IdHRwQ2xpZW50Ij5IdHRwQ2xpZW50PC9hPi5qYXZhOjI2NykNCiAgICAgICAgYXQgc3VuLm5ldC53d3cuaHR0cC48YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9IdHRwQ2xpZW50Ij5IdHRwQ2xpZW50PC9hPi5OZXcoPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/SHR0cENsaWVudCI+SHR0cENsaWVudDwvYT4uamF2YTozMzkpDQogICAgICAgIGF0IHN1bi5uZXQud3d3Lmh0dHAuPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/SHR0cENsaWVudCI+SHR0cENsaWVudDwvYT4uTmV3KDxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP0h0dHBDbGllbnQiPkh0dHBDbGllbnQ8L2E+LmphdmE6MzIwKQ0KICAgICAgICBhdCBzdW4ubmV0Lnd3dy5odHRwLjxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP0h0dHBDbGllbnQiPkh0dHBDbGllbnQ8L2E+Lk5ldyg8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9IdHRwQ2xpZW50Ij5IdHRwQ2xpZW50PC9hPi5qYXZhOjMxNSkNCiAgICAgICAgYXQgc3VuLm5ldC53d3cucHJvdG9jb2wuaHR0cC5IdHRwVVJMQ29ubmVjdGlvbjxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1IdHRwVVJMQ29ubmVjdGlvbiI+PzwvYT4ucGxhaW5Db25uZWN0KEh0dHBVUkxDb25uZTxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1IdHRwVVJMQ29ubmUiPj88L2E+Y3Rpb24uamF2YTo1MTIpDQogICAgICAgIGF0IHN1bi5uZXQud3d3LnByb3RvY29sLmh0dHAuSHR0cFVSTENvbm5lY3Rpb248YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9SHR0cFVSTENvbm5lY3Rpb24iPj88L2E+LmNvbm5lY3QoSHR0cFVSTENvbm5lY3Rpb248YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9SHR0cFVSTENvbm5lY3Rpb24iPj88L2E+LmphdmE6NDg5KQ0KICAgICAgICBhdCBzdW4ubmV0Lnd3dy5wcm90b2NvbC5odHRwLkh0dHBVUkxDb25uZWN0aW9uPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPUh0dHBVUkxDb25uZWN0aW9uIj4/PC9hPi5nZXRJbnB1dFN0cmVhbTxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1JbnB1dFN0cmVhbSI+PzwvYT4oSHR0cFVSTENvbjxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1IdHRwVVJMQ29uIj4/PC9hPm5lY3Rpb24uamF2YTo2MTcpDQogICAgICAgIGF0IGphdmEubmV0LlVSTC5vcGVuU3RyZWFtKFVSTC5qYXZhOjkxMykNCiAgICAgICAgYXQgb3JnLmFwYWNoZS54ZXJjZXMucmVhZGVycy5EZWZhdWx0UmVhZGVyRmFjdG9yeTxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1EZWZhdWx0UmVhZGVyRmFjdG9yeSI+PzwvYT4uY3JlYXRlUmVhZGVyKERlZmF1bHRSZTxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1EZWZhdWx0UmUiPj88L2E+YWRlckZhY3RvcnkuamF2YToxNDkpDQogICAgICAgIGF0IG9yZy5hcGFjaGUueGVyY2VzLnJlYWRlcnMuRGVmYXVsdEVudGl0eUhhbmRsZXI8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9RGVmYXVsdEVudGl0eUhhbmRsZXIiPj88L2E+LnN0YXJ0UmVhZGluZ0Zyb21Eb2N1bWU8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9UmVhZGluZ0Zyb21Eb2N1bWUiPj88L2E+bnQoRGVmYXVsdEVudGl0eUhhbmRsZXI8QSANCmhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1EZWZhdWx0RW50aXR5SGFuZGxlciI+PzwvYT4uamF2YTo0OTEpDQogICAgICAgIGF0IG9yZy5hcGFjaGUueGVyY2VzLmZyYW1ld29yay5YTUxQYXJzZXIucGFyc2VTb21lU2V0dXA8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9U29tZVNldHVwIj4/PC9hPihYTUxQYXJzZXIuamF2YTozMTIpDQogICAgICAgIGF0IG9yZy5hcGFjaGUueGVyY2VzLmZyYW1ld29yay5YTUxQYXJzZXIucGFyc2UoWE1MUGFyc2VyLmphdmE6MTA4MCkNCiAgICAgICAgYXQgb3JnLmFwYWNoZS54ZXJjZXMuamF4cC5Eb2N1bWVudEJ1aWxkZXJJbXBsPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPURvY3VtZW50QnVpbGRlckltcGwiPj88L2E+LnBhcnNlKERvY3VtZW50QnVpbGRlckltcGw8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9RG9jdW1lbnRCdWlsZGVySW1wbCI+PzwvYT4uamF2YToxOTUpDQogICAgICAgIGF0IG9yZy5hcGFjaGUuYXhpcy51dGlscy5YTUxVdGlscy5uZXdEb2N1bWVudChYTUxVdGlscy5qYXZhOjMyMikNCiAgICAgICAgYXQgb3JnLmFwYWNoZS5heGlzLnV0aWxzLlhNTFV0aWxzLm5ld0RvY3VtZW50KFhNTFV0aWxzLmphdmE6MzY3KQ0KICAgICAgICBhdCBvcmcuYXBhY2hlLmF4aXMud3NkbC5zeW1ib2xUYWJsZS5TeW1ib2xUYWJsZTxhIGhyZWY9Imh0dHA6Ly9uYWdveWEuYXBhY2hlLm9yZy93aWtpL2FwYWNoZXdpa2kuY2dpP2FjdGlvbj1lZGl0JmFtcDtpZD1TeW1ib2xUYWJsZSI+PzwvYT4ucG9wdWxhdGUoU3ltYm9sVGFibGU8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9hY3Rpb249ZWRpdCZhbXA7aWQ9U3ltYm9sVGFibGUiPj88L2E+LmphdmE6Mzg0KQ0KICAgICAgICBhdCBvcmcuYXBhY2hlLmF4aXMud3NkbC5nZW4uUGFyc2VyJFdTRExSdW5uYWJsZS5ydW4oUGFyc2VyLmphdmE6MjQ1KQ0KICAgICAgICBhdCBqYXZhLmxhbmcuVGhyZWFkLnJ1bihUaHJlYWQuamF2YTo1MzQpDQo8L3ByZT48L2I+DQo8cD48Yj6RvILJkN2S6IKqlUuXdoLFgreCqT88L2I+PC9wPg0KDQoNCjwvbGk+DQo8aHI+DQoNCjxsaT48YSBuYW1lPSJBeGlzUHJveHkiPluDdoONg0yDVoLNgseCzILmgqSCyYK1gsSQ3ZLogreC6YLMgsWCt4KpP108L2E+IFuV0o9Xk/qOniAyMDA0lE4zjI4xNpP6YW01OjE2IJTFXQ0KDQo8cD48Yj6DdoONg0yDVoLNgseCzILmgqSCyYK1gsSQ3ZLogreC6YLMgsWCt4KpPzwvYj48L3A+DQo8cD6J8ZOaOiCDdoONg0yDVoLMkN2S6ILJgs2CooKtgsKCqYLMlfuWQIKqgqCC6ILcgreBQjwvcD4NCjxwPo3Fj4mCzJX7lkCCzYFBg3aDjYNMg1aP7pXxgvCOd5LogreC6YNWg1iDZYOAg3aDjYNwg2WDQoLwkN2S6IK3gumV+5ZAgsWCt4FCPC9wPg0KPHA+grGC6oLwjXOCpILJgs2BQUphdmEggvCLTpOugreC6Y3bgsmIyIm6gsyDSYN2g1aDh4OTgvCDUoN9g5ODaIOJg0ODk4LJkseJwYK1gtyCt4FCPC9wPg0KPHA+LURodHRwLnByb3h5SG9zdD1wcm94eS5teWNvbXBhbnkuY29tIC1EaHR0cC5wcm94eVBvcnQ9ODAgLURodHRwLnByb3h5VXNlcj1teXVzZXJuYW1lIC1EaHR0cC5wcm94eVBhc3N3b3JkPW15cGFzc3dvcmQ8L3A+DQo8cD4ygsKC34LMlfuWQILNgUFKYXZhIDEuNC54IILFgsyYYoLFgreCqoFBPGEgaHJlZj0iaHR0cDovL2phdmEuc3VuLmNvbS9qMnNlLzEuNC4xL2RvY3MvYXBpL2phdmEvbmV0L0F1dGhlbnRpY2F0b3IuaHRtbCI+W0F1dGhlbnRpY2F0b3JdPC9hPiCC8JDdkuiCt4LplfuWQILFgreBQjwvcD4NCjxwPojIibqCzILmgqSCyYK1gsSDUoFbg2iDjIN4g4uCxYNWg1iDZYOAg3aDjYNwg2WDQoLwkN2S6IK3gumCsYLGguCCxYKrgtyCt4FCPC9wPg0KPHA+U3lzdGVtLnNldFByb3BlcnR5KCJodHRwLnByb3h5SG9zdCIsIjE5Mi4xNjguMTAwLjE0Iik7PC9wPg0KPHA+U3lzdGVtLnNldFByb3BlcnR5KCJodHRwLnByb3h5UG9ydCIsIjQ0ODAiKTs8L3A+DQo8cD6CsYLMlfuWQILNgUFwcm94eSBwbHVzIJOZgsyC5oKkgsiDdoONg0yDVoNBg3aDioNQgVuDVoOHg5OC8I5nl3CCt4LpkGyCzIK9gt+CzILggsyCxYK3gUI8L3A+DQo8cD48Yj6Ov5biOiCDdoONg0yDVoNUg3yBW4NngsmK1oK1gsSMeI2QguKMb4yxkaWCyILHgs2CoILogtyCt4KpPzwvYj48L3A+DQo8cD6J8ZOaOiBKYXZhIILMjLuN3YLMg4qDioFbg1iCzYFBiu6We5RGj9iC8I5nl3CCt4Lpg3aDjYNMg1aDVIFbg2+CtYKpg1SDfIFbg2eCtYLEgqKC3IK5gvGBQm51dHNoZWxsIILFgs2DhoFbg1WWvILGg3CDWIOPgVuDaIKqIGJhc2U2NCCCxYNHg5ODUoFbg2iCs4LqgsSBQWh0dHAgg4qDToNHg1iDZ4LMg3eDYoNfgsmSx4nBgrOC6oLcgreBQo/ajdeCzSA8YSBocmVmPSJodHRwOi8vd3d3LmtiY2FmZS5jb20vYXJ0aWNsZXMvSG93VG8uQmFzZTY0LnBkZiI+W0hvdyB0byBCYXNlLTY0IChCYXNlLTY0IILMjmSV+yldPC9hPiCC8IKyl5eJuoKzgqKBQjwvcD4NCjxwPldpbmRvd3MggswgSmF2YSAxLjQuMiCCxYLNgUFTdW4ggs0gTlRMTSCURo/YgsyDVIN8gVuDZ4LwkseJwYK1gr2C5oKkgsWCt4FCj9qN14LNIDxhIGhyZWY9Imh0dHA6Ly9qYXZhLnN1bi5jb20vajJzZS8xLjQuMi9jaGFuZ2VzLmh0bWwjbmV0d29ya2luZyI+W0VuaGFuY2VtZW50cyBhbmQgQ2hhbmdlcyBpbiBKYXZhIDIgU0UgVmVyc2lvbiAxLjQuMiAoSmF2YSAyIFNFIINvgVuDV4OHg5MgMS40LjIggsmCqIKvgumLQJRci62Ju4LGlc+NWCldPC9hPiCC8IKyl5eJuoKzgqKBQjwvcD4NCjxwPk5UTE0glEaP2ILNiOqUypNJgskgTWljcm9zb2Z0IFByb3h5IFNlcnZlciCCxY5nl3CCs4LqgtyCt4FCg1SBW4Nog3CBW4Nlg0KQu4Ncg3SDZ4NFg0aDQYLwjmeXcIK5griCyYFBSmF2YSCCzIjIkU+CzIOKg4qBW4NYgsyC4ILGgsWSvJDaIE5UTE0glEaP2ILwjmeXcIK3gumCzILNlXOJwpRcgsWCt4FCKJazkcqCyI6eitSC8InfgrKCs4LIgqKCxYm6grOCoimBQjwvcD4NCjxwPk1pY3Jvc29mdCBQcm94eSBTZXJ2ZXIggsmK1oK3gumW4pHogsyP2o3Xgs2CsYK/gueC8IKyl5eJuoKzgqKBQjxhIGhyZWY9Imh0dHA6Ly93d3cudmFtcGhxLmNvbS9qd3NmYXEuaHRtbCNtc3Byb3h5Ij5bVW5vZmZpY2lhbCBKYXZhIFdlYiBTdGFydC9KTkxQIEZBUSAog0GDk4NJg3SDQoNWg4ODi4LIIEphdmEgV2ViIFN0YXJ0L0pOTFAgRkFRKV08L2E+PC9wPg0KPHA+TlRMTSCCzItaj3CTSYLIi2OYX4LJgsKCooLEgs2CsYK/gueC8IKyl5eJuoKzgqKBQjxhIGhyZWY9Imh0dHA6Ly9kYXZlbnBvcnQuc291cmNlZm9yZ2UubmV0L250bG0uaHRtbCI+W1RoZSBOVExNIEF1dGhlbnRpY2F0aW9uIFByb3RvY29sIChOVExNIJRGj9iDdoONg2eDUoOLKV08L2E+gUI8L3A+DQo8cD6Mu43dgsyCxoKxguuBQU5UTE0gg1SDfIFbg2eCyYrWgrWCxILNIDxhIGhyZWY9Imh0dHA6Ly9qYWthcnRhLmFwYWNoZS5vcmcvY29tbW9ucy9odHRwY2xpZW50LyI+W0pha2FydGEgQ29tbW9ucyBIdHRwQ2xpZW50XTwvYT4ggvCOZ5dwgreC6YKxgsaC8IKoiqmC34K1gtyCt4FCPC9wPg0KDQo8L2xpPg0KPGhyPg0KPGxpPjxhIG5hbWU9IktlZXBBbGl2ZSI+W0F4aXMggs0gSFRUUCAxLjEgS2VlcC1BbGl2ZSCDd4Nig1+C8INUg3yBW4NngrWCxIKigtyCt4KpP108L2E+IFuV0o9Xk/qOniAyMDAzlE4xMYyOMjST+nBtNTozMiCUxV0NCg0KPHA+PGI+jr+W4jogQXhpcyCCzSBIVFRQIDEuMSBLZWVwLUFsaXZlIIN3g2KDX4Lwg1SDfIFbg2eCtYLEgqKC3IK3gqk/PC9iPjwvcD4NCjxwPonxk5o6IDxhIGhyZWY9Imh0dHA6Ly9pZXRmLm9yZy9yZmMvcmZjMjYxNi50eHQiPltIVFRQIDEuMSBzcGVjaWZpY2F0aW9uIChIVFRQIDEuMSCOZJdsKV08L2E+IILFgs2BQUhUVFAgkNqRsYLMg0mBW4N2g5OCxoNOg42BW4NZgsmK1phBgreC6YNJgVuDb4N3g2KDaILwjcWPrIzAgsmCt4Lpgr2C34LJgUFLZWVwLUFsaXZlIIN3g2KDX4LJgsKCooLEjL6LeYK1gsSCooLcgreBQjwvcD4NCjxwPo7AjduCzILGgrGC6yBLZWVwLUFsaXZlIILNgUGJ747QgsyQ3ZLogsWCzYN2g42DTINWg1SBW4NvgqqCoILpgsyCxZPBgsmJv5JsgqqCoILpgu2Cr4LFgs2CoILogtyCuYLxgUI8L3A+DQo8cD5LZWVwLUFsaXZlIIN3g2KDX4LwjmeXcIK1gr2Coo/qjYeCzYFBPGEgaHJlZj0iaHR0cDovL2pha2FydGEuYXBhY2hlLm9yZy9jb21tb25zL2h0dHBjbGllbnQiPltKYWthcnRhIENvbW1vbnMgSHR0cENsaWVudCBwYWNrYWdlIChKYWthcnRhIENvbW1vbnMgSHR0cENsaWVudCCDcINig1CBW4NXKV08L2E+IILGi6SCySBvcmcuYXBhY2hlLmF4aXMudHJhbnNwb3J0Lmh0dHAuQ29tbW9uc0hUVFBTZW5kZXIgg06DiYNYgvCOZ5dwgreC14KrgsWCt4FCPC9wPg0KPHA+itaYQYK3gumDZ4Nzg2KDTjogPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL2J1Z3ppbGxhL3Nob3dfYnVnLmNnaT9pZD0xNjUyMiI+aHR0cDovL25hZ295YS5hcGFjaGUub3JnL2J1Z3ppbGxhL3Nob3dfYnVnLmNnaT9pZD0xNjUyMjwvYT48L3A+DQoNCjwvbGk+DQo8aHI+DQo8bGk+PGEgbmFtZT0iQXhpc0NsaWVudFdTREQiPltBWElTIINOg4mDQ4NBg5ODZ4LJIGNsaWVudC1jb25maWcud3NkZCCC8JLKkm2Cs4K5gumCyYLNgseCpIK3guqCzoKigqKCzILFgreCqT9dPC9hPiBbldKPV5P6jp4gMjAwNJRONIyOMZP6YW01OjIxIJTFXQ0KDQo8cD48Yj5BWElTIILJIGNsaWVudC1jb25maWcud3NkZCCC8IypgsKCr4KzgrmC6YLJgs2Cx4KkgreC6oLOgqKCooLMgsWCt4KpPzwvYj48L3A+DQo8cD5BWElTIILNg06DiYNDg0GDk4NnkaSCxYNug5ODaIOJgsyOZ5dwgvCDVIN8gVuDZ4K1gsSCooLEgUE8YSBocmVmPSJodHRwOi8vd3MuYXBhY2hlLm9yZy93cy1meC8iPltXUy1GWF08L2E+IIN2g42DV4NGg06DZ4LMkb2CrYLNgrGCzJPBkqWC8JeYl3CCtYLEjsCRlYKzguqCxIKigtyCt4FCg06DiYNDg0GDk4NngsyQ3ZLoj+6V8YLNIGNsaWVudC1jb25maWcud3NkZCCCyYrcgtyC6oLEgqKC3IK3gUI8L3A+DQo8cD6DZoN0g0iDi4NngsWCzYFBQVhJUyCCzINOg4mDQ4NBg5ODZ4NSgVuDaILNMonTj4qCxYKxgsyDdINAg0ODi4LwklSCtYLcgreBQjwvcD4NCjxwPjEpIILcgriCzYFBQVhJU4Kqi06TroK1gsSCooLpg3aDjYNag1iCzI3si8aDZoNCg4yDToNng4qC8IptlEaCtYLcgreBQoLggrWCu4KxgsUgY2xpZW50LWNvbmZpZy53c2RkIIKqjKmCwoKpguqCzoK7guqC8I5nl3CCtYLcgreBQjwvcD4NCjxwPjIpIILggrUgY2xpZW50LWNvbmZpZy53c2RkIIKqjKmCwoKpgueCyIKvguqCziBvcmcvYXBhY2hlL2F4aXMvY2xpZW50IINwg2KDUIFbg1eCzJKGgsyDToOJg1iDcINYgvCKbZRGgrWC3IK3gUI8L3A+DQo8cD4oguCCtZDdkuiDdINAg0ODi4LwlcqBWILMj+qPioLJknWCq4K9gqKCzILFgqCC6oLOKSBjbGllbnQtY29uZmlnLndzZGQgg3SDQINDg4uCzI/qj4qC8Ja+jqaTSYLJjneS6IK3gumCsYLGguCJwpRcgsWCt4FCgrGC6oLwjXOCpILJgs2BQYNSg32Dk4Nog4mDQ4OTgvCOZ5dwgrWCxIjIibqCzILmgqSCyYNWg1iDZYOAg3aDjYNwg2WDQoLwkN2S6IK3gumVS5d2gqqCoILogtyCt4FCPC9wPg0KPHByZT5qYXZhIC1EYXhpcy5DbGllbnRDb25maWdGaWxlPS9sb2NhdGlvbi9vZi9jbGllbnQtY29uZmlnLndzZGQgLi4uDQo8L3ByZT4NCjxwPoKxguqCzSBBbnSCxYFBJmx0O2phdmEmZ3Q7IILJg2yDWINngrOC6oK9ICZsdDtzeXN0ZW1wcm9wZXJ0eSZndDsgl3aRZoLwjmeXcIK1gsSNc4KkgrGCxoLggsWCq4LcgreBQjwvcD4NCjxwcmU+Jmx0O3N5c3Byb3BlcnR5IGtleT0iYXhpcy5DbGllbnRDb25maWdGaWxlIiB2YWx1ZT0iL2xvY2F0aW9uL29mL2NsaWVudC1jb25maWcud3NkZCImZ3Q7DQo8L3ByZT4NCg0KDQo8L2xpPg0KPGhyPg0KPGxpPjxhIG5hbWU9IkF4aXNDb21tb25zSFRUUCI+W0FwYWNoZSBKYWthcnRhIENvbW1vbnMtSHR0cENsaWVudCCC8I5nl3CCtYLEkNqRsYLwg3aBW4OLgreC6YLJgs2BQUF4aXMgg06DiYNDg0GDk4NngvCCx4LMguaCpILJkN2S6IK3guqCzoKigqKCzILFgreCqT9dPC9hPiBbldKPV5P6jp4gMjAwNJRONYyOMjaT+mFtOTo0OSCUxV0NCg0KPHA+PGI+PGEgaHJlZj0iaHR0cDovL2pha2FydGEuYXBhY2hlLm9yZy9jb21tb25zL2h0dHBjbGllbnQvIj5bQXBhY2hlIEpha2FydGEgQ29tbW9ucy1IdHRwQ2xpZW50XTwvYT4ggvCOZ5dwgrWCxJDakbGC8IN2gVuDi4K3gumCyYLNgUFBeGlzIINOg4mDQ4NBg5ODZ4LwgseCzILmgqSCyZDdkuiCt4Lqgs6CooKigsyCxYK3gqk/PC9iPjwvcD4NCjxwPonxk5o6IILggrWDToOJg0ODQYOTg2eCqldlYoNBg3aDioNQgVuDVoOHg5OCxoK1gsSDZoN2g42DQ4KzguqCxIKigumCzILFgqCC6oLOgUFDTEFTU1BBVEgggqCC6YKigs0gV0VCLUlORi9saWIggskgY29tbW9ucy1odHRwY2xpZW50IILwg0ODk4NYg2eBW4OLgreC6ZVLl3aCqoKgguiC3IK3gUKC4IK1IEF4aXMggvCDXIFbg1iCqYLng3KDi4NogreC6YLMgsWCoILqgs6BQUF4aXMgiMuRtoNmg0KDjINOg2eDioLJIGNvbW1vbnMtaHR0cGNsaWVudCCC8JJ1gqKCxCBDb21tb25zSFRUUFNlbmRlciCDToOJg1iCqoNyg4uDaIKzguqC6YLmgqSCyYK3gumVS5d2gqqCoILogtyCt4FCPC9wPg0KPHA+jp+CyYFBQXhpcyCCqiBIVFRQIILwie6CtYLEg4GDYoNagVuDV4LwkZeC6YFBgqCC6YKigs2O84KvjuaC6Y3bgsmBQZVXj4CTSYLIIEhUVFBTZW5kZXIggsyR44LtguiCySBDb21tb25zSFRUUFNlbmRlciCC8I5nl3CCt4LpguaCpILJkN2S6IKzguqCvSBjbGllbnQtY29uZmlnLndzZGQggvCDQ4OTg1iDZ4Fbg4uCt4LplUuXdoKqgqCC6ILcgreBQoKxgrGCyZfhgvCOpoK1gtyCt4FCPC9wPg0KPHByZT4mbHQ7P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/Jmd0Ow0KDQombHQ7ZGVwbG95bWVudCBuYW1lPSJjb21tb25zSFRUUENvbmZpZyIgDQp4bWxucz0iaHR0cDovL3htbC5hcGFjaGUub3JnL2F4aXMvd3NkZC8iIA0KeG1sbnM6amF2YT0iaHR0cDovL3htbC5hcGFjaGUub3JnL2F4aXMvd3NkZC9wcm92aWRlcnMvamF2YSImZ3Q7DQogICZsdDt0cmFuc3BvcnQgbmFtZT0iaHR0cCIgcGl2b3Q9ImphdmE6b3JnLmFwYWNoZS5heGlzLnRyYW5zcG9ydC5odHRwLkNvbW1vbnNIVFRQU2VuZGVyIiAvJmd0Ow0KICAmbHQ7dHJhbnNwb3J0IG5hbWU9ImxvY2FsIiBwaXZvdCA9ICJqYXZhOm9yZy5hcGFjaGUuYXhpcy50cmFuc3BvcnQubG9jYWwuTG9jYWxTZW5kZXIiIC8mZ3Q7DQogICZsdDt0cmFuc3BvcnQgbmFtZT0iamF2YSIgcGl2b3Q9ImphdmE6b3JnLmFwYWNoZS5heGlzLnRyYW5zcG9ydC5qYXZhLkphdmFTZW5kZXIiIC8mZ3Q7DQombHQ7L2RlcGxveW1lbnQmZ3Q7PC9wcmU+DQo8cD6NxYzjgsmBQYNSg2yDToNWg4eDk4N2gVuDi4LMg2aDdINIg4uDZ4LMkN2S6CAog3aBW4OLg1SDQ4NZgUGDXoNDg4CDQYNFg2eCyILHKSCC8JKykK6CtYLcgreBQoKxguqC54LNIG9yZy5hcGFjaGUuYXhpcy5jb21wb25lbnRzLm5ldC5Db21tb25zSFRUUENsaWVudFByb3BlcnRpZXMgg0ODk4NegVuDdINGgVuDWILJkuiLYIKzguqCxIKigsSBQUF4aXMggsyDdoOJg0+JwpRcgsiRU4LEgsyDUoOTg3yBW4Nsg5ODZ4KpgueOZ5dwgrOC6oLpIEF4aXNQcm9wZXJ0aWVzPGEgaHJlZj0iaHR0cDovL25hZ295YS5hcGFjaGUub3JnL3dpa2kvYXBhY2hld2lraS5jZ2k/YWN0aW9uPWVkaXQmYW1wO2lkPUF4aXNQcm9wZXJ0aWVzIj4/PC9hPiBBUEkggvCOZ5dwgrWCxJDdkuiCt4LpgrGCxoKqgsWCq4LcgreBQoK7guqC54LMkN2S6ILJkc6CtYLEk8GVyoLIkrKQroLwjXOCpJVLl3aCqoKggumP6o2Hgs2BQUNvbW1vbnNIVFRQQ2xpZW50UHJvcGVydGllcyCDQ4OTg16BW4N0g0aBW4NYgsyOqZWql3CCzI7AkZWC8JLxi5+Ct4LpgrGCxoLggsWCq4LcgreBQoK7gsyCvYLfgsmCzSBjb21tb25zLWRpc2NvdmVyeSBBUEkggvCOZ5dwgrWC3IK3gUIogrGC6oLJgs0gQXhpcyAxLjIggqqVS5d2gsWCtyk8L3A+DQoNCjwvbGk+DQo8aHI+DQo8bGk+PGEgbmFtZT0iQXhpc1dlYlN0YXJ0Ij5bQXhpcyCCxSBXZWIgU3RhcnQggvCOZ5dwgreC6YLJgs2Cx4KkgreC6oLOgqKCooLMgsWCt4KpP108L2E+IFuV0o9Xk/qOniAyMDAzlE4xMYyOMjCT+nBtMTE6MzgglMVdDQoNCjxwPjxiPo6/luI6IDxhIGhyZWY9Imh0dHA6Ly9qYXZhLnN1bi5jb20vcHJvZHVjdHMvamF2YXdlYnN0YXJ0LyI+W1dlYiBTdGFydF08L2E+IIKpgueXp4K/j+OCqoLpg0GDdoOKg1CBW4NWg4eDk4LFIEF4aXMggvCOZ5dwgreC6YKxgsaCzYLFgquC3IK3gqk/PC9iPjwvcD4NCjxwPonxk5o6IILNgqKBQoKggsiCvYLMg0GDdoOKg1CBW4NWg4eDk4LJityC3ILqgumRU4LEgswgamFyIILwj5CWvIK1gsSBQZFTgsSCzINSgVuDaIKqk0uQ2ILIg1qDTIOFg4qDZYNCg3CBW4N+g2KDVoOHg5OCxY7AjXOCs4LqgumCsYLGgvCV24/YgreC6ZVLl3aCqoKgguiC3IK3gUJXZWIgU3RhcnQggsmC5oLoi62Qp4KzguqC6YNag0yDhYOKg2WDQoOCg2aDi4LNgUGDQYN2g4qDUIFbg1aDh4OTgqqBQYNfg0WDk4ONgVuDaIKzguqCvYNUgVuDb4jIik+CzINUgVuDb4LJkNqRsYLwgreC6YKxgsaC8JZogqyC3IK3gUI8L3A+DQo8cD5XZWIgU3RhcnQggsYglEaP2IN2g42DTINWg1SBW4NvgsyOZ5dwgsWBQZXxjZCCs4Lqgr2W4pHogqqCoILpgrGCxoLJko2I04K1gsSCrYK+grOCooFCQXhpcyCCxYN2g42DTINWg1SBW4NvgvCOZ5dwgreC6Y3bgsyP2o3XgsmCwoKigsSCzSA8YSBocmVmPSJodHRwOi8vbmFnb3lhLmFwYWNoZS5vcmcvd2lraS9hcGFjaGV3aWtpLmNnaT9BeGlzUHJvamVjdFBhZ2VzL0F4aXNQcm94eSI+L0F4aXNQcm94eTwvYT4ggvCCspeXibqCs4KigUI8L3A+DQo8cD6Cs4LngsmW4pHogqqCoILogtyCt4FCSmF2YSBXZWIgU3RhcnQggs2DVoNYg2WDgIN2g42DcINlg0IgInByb3h5SG9zdCIggsYgInByb3h5UG9ydCIggvCQ3ZLogrWC3IK3gqqBQUF4aXMggs0gImh0dHAucHJveHlIb3N0IiCCxiAiaHR0cC5wcm94eVBvcnQiIILwlUuXdoLGgrWC3IK3gUKCxYK3gqmC546EgsyDToOJg0ODQYOTg2eCxYLNiMiJuoLMg1KBW4NogvCOZ5dwgrWC3IK3gUI8L3A+DQo8cHJlPiAgICAvLyBKYXZhIFdlYiBTdGFydCCCzYNWg1iDZYOAg3aDjYNwg2WDQiAicHJveHlIb3N0IiCCxiAicHJveHlQb3J0IiCC8JDdkuiCtYLcgreCqoFBQXhpcyCCzSAiaHR0cC5wcm94eUhvc3QiIILGICJodHRwLnByb3h5UG9ydCIggvCVS5d2gsaCtYLcgrchDQogICAgLy8gaHR0cHMuKiCC4JDdkuiCt4LplUuXdoKqgqCC6ILcgreCqT8NCiAgICBpZiAoKG51bGwgPT0gU3lzdGVtLmdldFByb3BlcnR5ICgiaHR0cC5wcm94eUhvc3QiKSkgJmFtcDsmYW1wOyAobnVsbCAhPSBTeXN0ZW0uZ2V0UHJvcGVydHkgKCJwcm94eUhvc3QiKSkpIHsNCiAgICAgIFN5c3RlbS5zZXRQcm9wZXJ0eSAoImh0dHAucHJveHlIb3N0IiwgU3lzdGVtLmdldFByb3BlcnR5ICgicHJveHlIb3N0IikpOw0KICAgIH0NCiAgICBpZiAoKG51bGwgPT0gU3lzdGVtLmdldFByb3BlcnR5ICgiaHR0cC5wcm94eVBvcnQiKSkgJmFtcDsmYW1wOyAobnVsbCAhPSBTeXN0ZW0uZ2V0UHJvcGVydHkgKCJwcm94eVBvcnQiKSkpIHsNCiAgICAgIFN5c3RlbS5zZXRQcm9wZXJ0eSAoImh0dHAucHJveHlQb3J0IiwgU3lzdGVtLmdldFByb3BlcnR5ICgicHJveHlQb3J0IikpOw0KICAgIH0NCjwvcHJlPg0KPHA+V2ViIFN0YXJ0IILJitaCt4LpgrOC54LIgumP7pXxgsYgamFyIIN0g0CDQ4OLgsyPkJa8gsmCwoKigsSCzYKxgr+C54LwgrKXl4m6grOCooFCPC9wPg0KPHByZT4gIDxhIGhyZWY9Imh0dHA6Ly93d3cudmFtcGhxLmNvbS9qd3NmYXEuaHRtbCI+W1Vub2ZmaWNpYWwgSmF2YSBXZWIgU3RhcnQvSk5MUCBGQVFdPC9hPg0KPGEgaHJlZj0iaHR0cDovL2phdmEuc3VuLmNvbS9wcm9kdWN0cy9qYXZhd2Vic3RhcnQvZmFxLmh0bWwiPltTdW4gSmF2YSBXZWIgU3RhcnQgRkFRIF08L2E+DQo8L3ByZT4NCg0KPC9saT4NCjxocj4NCjxsaT48YSBuYW1lPSJBeGlzQ2xpZW50Q29uZmlndXJhdGlvbiI+W0F4aXMgg06DiYNDg0GDk4NngsWCx4LMguaCpILJgrWCxINug5ODaIOJgvCQ3ZLogreC6oLOgqKCooLMgsWCt4KpP108L2E+IFuV0o9Xk/qOniAyMDA0lE41jI4yk/phbTU6MTgglMVdDQoNCjxwPjxiPkF4aXMgg06DiYNDg0GDk4NngsWCx4LMguaCpILJgrWCxINug5ODaIOJgvCQ3ZLogreC6oLOgqKCooLMgsWCt4KpPzwvYj48L3A+DQo8cD6DVIFbg3KDWINJg3WDV4NGg06DZ4Lwg0ODk4NYg16Dk4NYibuCt4LpjduCyYFBjqmVqpdwgswgRW5naW5lQ29uZmlndXJhdGlvbiCC8JLxi5+CtYLcgreBQo6plaqXcILMkN2S6ILwjVySeoK3gumV+5ZAgs2CooKtgsKCqYKgguiC3IK3gUI8L3A+DQoNCjx1bD4NCjxsaT6DVIFbg2+RpILMg2aDdoONg0ODgYOTg2eDZoNCg1iDToOKg3aDXoLMguaCpILJgUFXU0RELVhNTCCC8I5nl3CCt4LpgUI8L2xpPg0KPC91bD4NCg0KPGRsPg0KPGR0PjwvZHQ+DQo8ZGQ+grGCzJfhgs0gSFRUUC10cmFuc3BvcnQtY2hhaW4ggsyDioNOg0eDWINng3SDjYFbgsaDjINYg3yDk4NYg3SDjYFbgsmCqIKvgukgU2ltcGxlU2Vzc2lvbkhhbmRsZXIggvCQ3ZLogrWC3IK3gUI8L2RkPg0KPC9kbD4NCg0KPHByZT4gICAgICZsdDtkZXBsb3ltZW50IHhtbG5zPSJodHRwOi8veG1sLmFwYWNoZS5vcmcvYXhpcy93c2RkLyIgeG1sbnM6amF2YT0iLi4uIiAmZ3Q7DQogICAgICAgJmx0O2hhbmRsZXIgdHlwZT0iamF2YTpvcmcuYXBhY2hlLmF4aXMuaGFuZGxlcnMuU2ltcGxlU2Vzc2lvbkhhbmRsZXIiDQogICAgICAgICAgICAgICAgbmFtZT0iU2ltcGxlU2Vzc2lvbkhhbmRsZXIiLyZndDsNCiAgICAgICAmbHQ7dHJhbnNwb3J0IG5hbWU9Imh0dHAiDQogICAgICAgICAgICAgICAgICBwaXZvdD0iamF2YTpvcmcuYXBhY2hlLmF4aXMudHJhbnNwb3J0Lmh0dHAuSFRUUFNlbmRlciImZ3Q7DQogICAgICAgICAmbHQ7cmVxdWVzdEZsb3cmZ3Q7Jmx0O2hhbmRsZXIgdHlwZT0iU2ltcGxlU2Vzc2lvbkhhbmRsZXIiLyZndDsmbHQ7L3JlcXVlc3RGbG93Jmd0Ow0KICAgICAgICAgJmx0O3Jlc3BvbnNlRmxvdyZndDsmbHQ7aGFuZGxlciB0eXBlPSJTaW1wbGVTZXNzaW9uSGFuZGxlciIvJmd0OyZsdDsvcmVzcG9uc2VGbG93Jmd0Ow0KICAgICAgICZsdDsvdHJhbnNwb3J0Jmd0OyINCiAgICAgJmx0Oy9kZXBsb3ltZW50Jmd0Ow0KPC9wcmU+DQoNCjxkbD4NCjxkdD48L2R0Pg0KPGRkPoKxgsyXXoKmgueC6oK9lbaOmpfxgqmC5yBFbmdpbmVDb25maWd1cmF0aW9uIILwk76C6YNSgVuDaILNjp+CzILmgqSCyYLIguiC3IK3gUI8L2RkPg0KPC9kbD4NCg0KPHByZT4gICAgIEVuZ2luZUNvbmZpZ3VyYXRpb24gY2xpZW50Q29uZmlnID0gKEVuZ2luZUNvbmZpZ3VyYXRpb24pIG5ldyBYTUxTdHJpbmdQcm92aWRlcihXU0REU3RyaW5nKTsNCjwvcHJlPg0KDQo8dWw+DQo8bGk+RW5naW5lQ29uZmlndXJhdGlvbiCDQ4OTg16BW4N0g0aBW4NYgvCOwJGVgreC6Y6plaqXcILMg06DiYNYgvCNXJJ6grWC3IK3gUI8L2xpPg0KPC91bD4NCg0KPHVsPg0KPGxpPpWUlaqTSYLJkN2S6InClFyCyIr5kbaCzCBFbmdpbmVDb25maWd1cmF0aW9uIINOg4mDWILwjmeXcIK1gtyCt4FCPC9saT4NCjwvdWw+DQoNCjxkbD4NCjxkdD48L2R0Pg0KPGRkPpfhgqaCziBTaW1wbGVQcm92aWRlciCCzSBUcmFuc3BvcnQgY2hhaW4ggsyDZoN2g42DQ4LwlEaC34LcgreBQjwvZGQ+DQo8ZHQ+PC9kdD4NCjxkZD6IyIm6gsyX4YLNj+OLTILMIFdTREQggsaTr4K2grGCxoLwjXOCooLcgreBQjwvZGQ+DQo8L2RsPg0KDQo8cHJlPiAgICAgaW1wb3J0IG9yZy5hcGFjaGUuYXhpcy5jb25maWd1cmF0aW9uLlNpbXBsZVByb3ZpZGVyOw0KICAgICBpbXBvcnQgb3JnLmFwYWNoZS5heGlzLkVuZ2luZUNvbmZpZ3VyYXRpb247DQogICAgIGltcG9ydCBvcmcuYXBhY2hlLmF4aXMuSGFuZGxlcjsNCiAgICAgaW1wb3J0IG9yZy5hcGFjaGUuYXhpcy5TaW1wbGVDaGFpbjsNCiAgICAgaW1wb3J0IG9yZy5hcGFjaGUuYXhpcy5TaW1wbGVUYXJnZXRlZENoYWluOw0KICAgICBpbXBvcnQgb3JnLmFwYWNoZS5heGlzLmhhbmRsZXJzLlNpbXBsZVNlc3Npb25IYW5kbGVyOw0KICAgICBpbXBvcnQgb3JnLmFwYWNoZS5heGlzLnRyYW5zcG9ydC5odHRwLkhUVFBTZW5kZXI7DQogICAgIGltcG9ydCBvcmcuYXBhY2hlLmF4aXMudHJhbnNwb3J0Lmh0dHAuSFRUUFRyYW5zcG9ydDsNCg0KICAgICBFbmdpbmVDb25maWd1cmF0aW9uIGNyZWF0ZUNsaWVudENvbmZpZygpDQogICAgIHsNCiAgICAgICBTaW1wbGVQcm92aWRlciBjbGllbnRDb25maWc9bmV3IFNpbXBsZVByb3ZpZGVyKCk7DQogICAgICAgSGFuZGxlciBzZXNzaW9uSGFuZGxlcj0oSGFuZGxlciluZXcgU2ltcGxlU2Vzc2lvbkhhbmRsZXIoKTsNCiAgICAgICBTaW1wbGVDaGFpbiByZXFIYW5kbGVyPW5ldyBTaW1wbGVDaGFpbigpOw0KICAgICAgIFNpbXBsZUNoYWluIHJlc3BIYW5kbGVyPW5ldyBTaW1wbGVDaGFpbigpOw0KICAgICAgIHJlcUhhbmRsZXIuYWRkSGFuZGxlcihzZXNzaW9uSGFuZGxlcik7DQogICAgICAgcmVzcEhhbmRsZXIuYWRkSGFuZGxlcihzZXNzaW9uSGFuZGxlcik7DQogICAgICAgSGFuZGxlciBwaXZvdD0oSGFuZGxlciluZXcgSFRUUFNlbmRlcigpOw0KICAgICAgIEhhbmRsZXIgdHJhbnNwb3J0PW5ldyBTaW1wbGVUYXJnZXRlZENoYWluKHJlcUhhbmRsZXIsIHBpdm90LCByZXNwSGFuZGxlcik7DQogICAgICAgY2xpZW50Q29uZmlnLmRlcGxveVRyYW5zcG9ydChIVFRQVHJhbnNwb3J0LkRFRkFVTFRfVFJBTlNQT1JUX05BTUUsdHJhbnNwb3J0KTsNCg0KICAgICAgIHJldHVybiBjbGllbnRDb25maWc7ICAgDQogICAgIH0NCg0KPC9wcmU+DQoNCjxwPldTREwySmF2YSCCqpC2kKyCtYK9g1KBW4NogvCOZ5dwgreC6Y3bgUEoU2VydmljZSCC8IpnkqOCtYK9KSBYWVNlcnZpY2VMb2NhdG9yIILNkN2S6ILwl16CpoLpg1KDk4NYg2eDiYNOg16C8JLxi5+CtYLcgrmC8YFCkLaQrIKzguqCvYNSgVuDaILwj0OQs4K1gr2CrYLIgq+C6oLOgUGIyIm6gsyC5oKkgsmCtYLEkc6PiIK3gumCsYLGgqqCxYKrgtyCt4FCPC9wPg0KPHByZT4gICAgICAgRW5naW5lQ29uZmlndXJhdGlvbiBjbGllbnRDb25maWc9Z2V0Q2xpZW50Q29uZmlnKCk7DQogICAgICAgWFlTZXJ2aWNlTG9jYXRvciBzZXJ2aWNlPW5ldyBYWVNlcnZpY2VMb2NhdG9yKCk7DQogICAgICAgc2VydmljZS5zZXRFbmdpbmVDb25maWd1cmF0aW9uKGNsaWVudENvbmZpZyk7DQogICAgICAgc2VydmljZS5zZXRFbmdpbmUobmV3IEF4aXNDbGllbnQoY2xpZW50Q29uZmlnKSk7DQogICAgICAgWFkgbXlzZXJ2aWNlPXNlcnZpY2UuZ2V0bXlzZXJ2aWNlKCk7DQo8L3ByZT4NCg0KPC9saT4NCg0KPC9vbD4NCg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPC90ZD4NCjwhLS09PT09PT09PT09PT09PT09PSBlbmQgQ29udGVudCA9PT09PT09PT09PT09PT09PT0tLT4NCjwvdHI+DQo8L3Rib2R5Pg0KPC90YWJsZT4NCjwhLS09PT09PT09PT09PT09PT09PSBlbmQgTWFpbiA9PT09PT09PT09PT09PT09PT0tLT4NCjwhLS09PT09PT09PT09PT09PT09PSBzdGFydCBGb290ZXIgPT09PT09PT09PT09PT09PT09LS0+DQo8ZGl2IGlkPSJmb290ZXIiPg0KPHRhYmxlIHN1bW1hcnk9ImZvb3RlciIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSI0IiB3aWR0aD0iMTAwJSIgYm9yZGVyPSIwIj4NCjx0Ym9keT4NCjx0cj4NCjwhLS09PT09PT09PT09PT09PT09PSBzdGFydCBDb3B5cmlnaHQgPT09PT09PT09PT09PT09PT09LS0+DQo8dGQgY29sc3Bhbj0iMiI+DQo8ZGl2IGFsaWduPSJjZW50ZXIiPg0KPGRpdiBjbGFzcz0iY29weXJpZ2h0Ij48L2Rpdj4NCjwvZGl2Pg0KPC90ZD4NCjwhLS09PT09PT09PT09PT09PT09PSBlbmQgQ29weXJpZ2h0ID09PT09PT09PT09PT09PT09PS0tPg0KPC90cj4NCjx0cj4NCjx0ZCBhbGlnbj0ibGVmdCI+DQo8IS0tPT09PT09PT09PT09PT09PT0gc3RhcnQgSG9zdCA9PT09PT09PT09PT09PT09PT0tLT4NCjwhLS09PT09PT09PT09PT09PT09PSBlbmQgSG9zdCA9PT09PT09PT09PT09PT09PT0tLT48L3RkPjx0ZCBhbGlnbj0icmlnaHQiPg0KPCEtLT09PT09PT09PT09PT09PT09IHN0YXJ0IENyZWRpdHMgPT09PT09PT09PT09PT09PT09LS0+DQo8ZGl2IGFsaWduPSJyaWdodCI+DQo8ZGl2IGNsYXNzPSJjcmVkaXQiPg0KPGEgaHJlZj0iaHR0cDovL3ZhbGlkYXRvci53My5vcmcvY2hlY2svcmVmZXJlciI+PGltZyB3aWR0aD0iODgiIGhlaWdodD0iMzEiIGFsdD0iVmFsaWQgSFRNTCA0LjAxISIgc3JjPSIuLi9za2luL2ltYWdlcy92YWxpZC1odG1sNDAxLnBuZyIgY2xhc3M9ImxvZ29JbWFnZSI+PC9hPjxhIGhyZWY9Imh0dHA6Ly9qaWdzYXcudzMub3JnL2Nzcy12YWxpZGF0b3IvIj48aW1nIHdpZHRoPSI4OCIgaGVpZ2h0PSIzMSIgYWx0PSJWYWxpZCBDU1MhIiBzcmM9Ii4uL3NraW4vaW1hZ2VzL3Zjc3MucG5nIiBjbGFzcz0ibG9nb0ltYWdlIj48L2E+PGEgaHJlZj0iaHR0cDovL3htbC5hcGFjaGUub3JnL2ZvcnJlc3QvIj48aW1nIGJvcmRlcj0iMCIgY2xhc3M9ImxvZ29JbWFnZSIgYWx0PSJCdWlsdCB3aXRoIEFwYWNoZSBGb3JyZXN0IiBzcmM9Ii4uL2ltYWdlcy9idWlsdC13aXRoLWZvcnJlc3QtYnV0dG9uLnBuZyIgd2lkdGg9Ijg4IiBoZWlnaHQ9IjMxIj48L2E+DQo8L2Rpdj4NCjwvZGl2Pg0KPCEtLT09PT09PT09PT09PT09PT09IGVuZCBDcmVkaXRzID09PT09PT09PT09PT09PT09PS0tPg0KPC90ZD4NCjwvdHI+DQo8L3Rib2R5Pg0KPC90YWJsZT4NCjwvZGl2Pg0KPCEtLT09PT09PT09PT09PT09PT09IGVuZCBGb290ZXIgPT09PT09PT09PT09PT09PT09LS0+DQo8L2JvZHk+DQo8L2h0bWw+DQo=