PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+DQo8IS0tIE5ld1BhZ2UgLS0+DQo8aHRtbCBsYW5nPSJydSI+DQo8aGVhZD48bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCB1c2VyLXNjYWxhYmxlPW5vLCBpbml0aWFsLXNjYWxlPTEsIG1heGltdW0tc2NhbGU9MSI+DQo8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jICh2ZXJzaW9uIDEuNy4wXzc1KSBvbiBNb24gRGVjIDIxIDEyOjI1OjIzIE1TSyAyMDE1IC0tPg0KPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWwiIGNoYXJzZXQ9IlVURi04Ij4NCjx0aXRsZT5EZXBsb3ltZW50RXZlbnQgKElnbml0ZSAxLjUuMC1maW5hbC1TTkFQU0hPVCk8L3RpdGxlPg0KPG1ldGEgbmFtZT0iZGF0ZSIgY29udGVudD0iMjAxNS0xMi0yMSI+DQo8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSIuLi8uLi8uLi8uLi9qYXZhZG9jLmNzcyIgdGl0bGU9IlN0eWxlIj4NCjxsaW5rIHJlbD0nc2hvcnRjdXQgaWNvbicgaHJlZj0naHR0cHM6Ly9pZ25pdGUuYXBhY2hlLm9yZy9mYXZpY29uLmljbycvPgo8bGluayB0eXBlPSd0ZXh0L2NzcycgcmVsPSdzdHlsZXNoZWV0JyBocmVmPSdodHRwOi8vYWdvcmJhdGNoZXYudHlwZXBhZC5jb20vcHViL3NoLzNfMF84My9zdHlsZXMvc2hDb3JlLmNzcycvPgo8bGluayB0eXBlPSd0ZXh0L2NzcycgcmVsPSdzdHlsZXNoZWV0JyBocmVmPSdodHRwOi8vYWdvcmJhdGNoZXYudHlwZXBhZC5jb20vcHViL3NoLzNfMF84My9zdHlsZXMvc2hUaGVtZURlZmF1bHQuY3NzJy8+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly9hZ29yYmF0Y2hldi50eXBlcGFkLmNvbS9wdWIvc2gvM18wXzgzL3NjcmlwdHMvc2hDb3JlLmpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL2Fnb3JiYXRjaGV2LnR5cGVwYWQuY29tL3B1Yi9zaC8zXzBfODMvc2NyaXB0cy9zaExlZ2FjeS5qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly9hZ29yYmF0Y2hldi50eXBlcGFkLmNvbS9wdWIvc2gvM18wXzgzL3NjcmlwdHMvc2hCcnVzaEphdmEuanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vYWdvcmJhdGNoZXYudHlwZXBhZC5jb20vcHViL3NoLzNfMF84My9zY3JpcHRzL3NoQnJ1c2hQbGFpbi5qcyc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly9hZ29yYmF0Y2hldi50eXBlcGFkLmNvbS9wdWIvc2gvM18wXzgzL3NjcmlwdHMvc2hCcnVzaEpTY3JpcHQuanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vYWdvcmJhdGNoZXYudHlwZXBhZC5jb20vcHViL3NoLzNfMF84My9zY3JpcHRzL3NoQnJ1c2hCYXNoLmpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL2Fnb3JiYXRjaGV2LnR5cGVwYWQuY29tL3B1Yi9zaC8zXzBfODMvc2NyaXB0cy9zaEJydXNoWG1sLmpzJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL2Fnb3JiYXRjaGV2LnR5cGVwYWQuY29tL3B1Yi9zaC8zXzBfODMvc2NyaXB0cy9zaEJydXNoU2NhbGEuanMnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vYWdvcmJhdGNoZXYudHlwZXBhZC5jb20vcHViL3NoLzNfMF84My9zY3JpcHRzL3NoQnJ1c2hHcm9vdnkuanMnPjwvc2NyaXB0Pgo8L2hlYWQ+Cg0KPGJvZHk+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+PCEtLQ0KICAgIGlmIChsb2NhdGlvbi5ocmVmLmluZGV4T2YoJ2lzLWV4dGVybmFsPXRydWUnKSA9PSAtMSkgew0KICAgICAgICBwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkRlcGxveW1lbnRFdmVudCAoSWduaXRlIDEuNS4wLWZpbmFsLVNOQVBTSE9UKSI7DQogICAgfQ0KLy8tLT4NCjwvc2NyaXB0Pg0KPG5vc2NyaXB0Pg0KPGRpdj5KYXZhU2NyaXB0IGlzIGRpc2FibGVkIG9uIHlvdXIgYnJvd3Nlci48L2Rpdj4NCjwvbm9zY3JpcHQ+DQo8IS0tID09PT09PT09PSBTVEFSVCBPRiBUT1AgTkFWQkFSID09PT09PT0gLS0+DQo8ZGl2IGNsYXNzPSJ0b3BOYXYiPjxhIG5hbWU9Im5hdmJhcl90b3AiPg0KPCEtLSAgIC0tPg0KPC9hPjxhIGhyZWY9IiNza2lwLW5hdmJhcl90b3AiIHRpdGxlPSJTa2lwIG5hdmlnYXRpb24gbGlua3MiPjwvYT48YSBuYW1lPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij4NCjwhLS0gICAtLT4NCjwvYT4NCjx1bCBjbGFzcz0ibmF2TGlzdCIgdGl0bGU9Ik5hdmlnYXRpb24iPg0KPGxpPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+T3ZlcnZpZXc8L2E+PC9saT4NCjxsaT48YSBocmVmPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+UGFja2FnZTwvYT48L2xpPg0KPGxpIGNsYXNzPSJuYXZCYXJDZWxsMVJldiI+Q2xhc3M8L2xpPg0KPGxpPjxhIGhyZWY9ImNsYXNzLXVzZS9EZXBsb3ltZW50RXZlbnQuaHRtbCI+VXNlPC9hPjwvbGk+DQo8bGk+PGEgaHJlZj0icGFja2FnZS10cmVlLmh0bWwiPlRyZWU8L2E+PC9saT4NCjxsaT48YSBocmVmPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+RGVwcmVjYXRlZDwvYT48L2xpPg0KPGxpPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL2luZGV4LWFsbC5odG1sIj5JbmRleDwvYT48L2xpPg0KPGxpPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPkhlbHA8L2E+PC9saT4NCjwvdWw+DQo8ZGl2IGNsYXNzPSJhYm91dExhbmd1YWdlIj48ZW0+SWduaXRlIC0gSW4tTWVtb3J5IERhdGEgRmFicmljPC9lbT48L2Rpdj4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0ic3ViTmF2Ij4NCjx1bCBjbGFzcz0ibmF2TGlzdCI+DQo8bGk+PGEgaHJlZj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9pZ25pdGUvZXZlbnRzL0NoZWNrcG9pbnRFdmVudC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmFwYWNoZS5pZ25pdGUuZXZlbnRzIj48c3BhbiBjbGFzcz0ic3Ryb25nIj5QcmV2IENsYXNzPC9zcGFuPjwvYT48L2xpPg0KPGxpPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9EaXNjb3ZlcnlFdmVudC5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmFwYWNoZS5pZ25pdGUuZXZlbnRzIj48c3BhbiBjbGFzcz0ic3Ryb25nIj5OZXh0IENsYXNzPC9zcGFuPjwvYT48L2xpPg0KPC91bD4NCjx1bCBjbGFzcz0ibmF2TGlzdCI+DQo8bGk+PGEgaHJlZj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbD9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRGVwbG95bWVudEV2ZW50Lmh0bWwiIHRhcmdldD0iX3RvcCI+RnJhbWVzPC9hPjwvbGk+DQo8bGk+PGEgaHJlZj0iRGVwbG95bWVudEV2ZW50Lmh0bWwiIHRhcmdldD0iX3RvcCI+Tm8gRnJhbWVzPC9hPjwvbGk+DQo8L3VsPg0KPHVsIGNsYXNzPSJuYXZMaXN0IiBpZD0iYWxsY2xhc3Nlc19uYXZiYXJfdG9wIj4NCjxsaT48YSBocmVmPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCI+QWxsIENsYXNzZXM8L2E+PC9saT4NCjwvdWw+DQo8ZGl2Pg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwhLS0NCiAgYWxsQ2xhc3Nlc0xpbmsgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWxsY2xhc3Nlc19uYXZiYXJfdG9wIik7DQogIGlmKHdpbmRvdz09dG9wKSB7DQogICAgYWxsQ2xhc3Nlc0xpbmsuc3R5bGUuZGlzcGxheSA9ICJibG9jayI7DQogIH0NCiAgZWxzZSB7DQogICAgYWxsQ2xhc3Nlc0xpbmsuc3R5bGUuZGlzcGxheSA9ICJub25lIjsNCiAgfQ0KICAvLy0tPg0KPC9zY3JpcHQ+DQo8L2Rpdj4NCjxkaXY+DQo8dWwgY2xhc3M9InN1Yk5hdkxpc3QiPg0KPGxpPlN1bW1hcnk6Jm5ic3A7PC9saT4NCjxsaT5OZXN0ZWQmbmJzcDt8Jm5ic3A7PC9saT4NCjxsaT5GaWVsZCZuYnNwO3wmbmJzcDs8L2xpPg0KPGxpPjxhIGhyZWY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5Db25zdHI8L2E+Jm5ic3A7fCZuYnNwOzwvbGk+DQo8bGk+PGEgaHJlZj0iI21ldGhvZF9zdW1tYXJ5Ij5NZXRob2Q8L2E+PC9saT4NCjwvdWw+DQo8dWwgY2xhc3M9InN1Yk5hdkxpc3QiPg0KPGxpPkRldGFpbDombmJzcDs8L2xpPg0KPGxpPkZpZWxkJm5ic3A7fCZuYnNwOzwvbGk+DQo8bGk+PGEgaHJlZj0iI2NvbnN0cnVjdG9yX2RldGFpbCI+Q29uc3RyPC9hPiZuYnNwO3wmbmJzcDs8L2xpPg0KPGxpPjxhIGhyZWY9IiNtZXRob2RfZGV0YWlsIj5NZXRob2Q8L2E+PC9saT4NCjwvdWw+DQo8L2Rpdj4NCjxhIG5hbWU9InNraXAtbmF2YmFyX3RvcCI+DQo8IS0tICAgLS0+DQo8L2E+PC9kaXY+DQo8IS0tID09PT09PT09PSBFTkQgT0YgVE9QIE5BVkJBUiA9PT09PT09PT0gLS0+DQo8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+DQo8ZGl2IGNsYXNzPSJoZWFkZXIiPg0KPGRpdiBjbGFzcz0ic3ViVGl0bGUiPm9yZy5hcGFjaGUuaWduaXRlLmV2ZW50czwvZGl2Pg0KPGgyIHRpdGxlPSJDbGFzcyBEZXBsb3ltZW50RXZlbnQiIGNsYXNzPSJ0aXRsZSI+Q2xhc3MgRGVwbG95bWVudEV2ZW50PC9oMj4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0iY29udGVudENvbnRhaW5lciI+DQo8dWwgY2xhc3M9ImluaGVyaXRhbmNlIj4NCjxsaT48YSBocmVmPSJodHRwOi8vZG9jcy5vcmFjbGUuY29tL2phdmFzZS83L2RvY3MvYXBpL2phdmEvbGFuZy9PYmplY3QuaHRtbD9pcy1leHRlcm5hbD10cnVlIiB0aXRsZT0iY2xhc3Mgb3IgaW50ZXJmYWNlIGluIGphdmEubGFuZyI+amF2YS5sYW5nLk9iamVjdDwvYT48L2xpPg0KPGxpPg0KPHVsIGNsYXNzPSJpbmhlcml0YW5jZSI+DQo8bGk+PGEgaHJlZj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9pZ25pdGUvZXZlbnRzL0V2ZW50QWRhcHRlci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmFwYWNoZS5pZ25pdGUuZXZlbnRzIj5vcmcuYXBhY2hlLmlnbml0ZS5ldmVudHMuRXZlbnRBZGFwdGVyPC9hPjwvbGk+DQo8bGk+DQo8dWwgY2xhc3M9ImluaGVyaXRhbmNlIj4NCjxsaT5vcmcuYXBhY2hlLmlnbml0ZS5ldmVudHMuRGVwbG95bWVudEV2ZW50PC9saT4NCjwvdWw+DQo8L2xpPg0KPC91bD4NCjwvbGk+DQo8L3VsPg0KPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPg0KPHVsIGNsYXNzPSJibG9ja0xpc3QiPg0KPGxpIGNsYXNzPSJibG9ja0xpc3QiPg0KPGRsPg0KPGR0PkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvZHQ+DQo8ZGQ+PGEgaHJlZj0iaHR0cDovL2RvY3Mub3JhY2xlLmNvbS9qYXZhc2UvNy9kb2NzL2FwaS9qYXZhL2lvL1NlcmlhbGl6YWJsZS5odG1sP2lzLWV4dGVybmFsPXRydWUiIHRpdGxlPSJjbGFzcyBvciBpbnRlcmZhY2UgaW4gamF2YS5pbyI+U2VyaWFsaXphYmxlPC9hPiwgPGEgaHJlZj0iaHR0cDovL2RvY3Mub3JhY2xlLmNvbS9qYXZhc2UvNy9kb2NzL2FwaS9qYXZhL2xhbmcvQ29tcGFyYWJsZS5odG1sP2lzLWV4dGVybmFsPXRydWUiIHRpdGxlPSJjbGFzcyBvciBpbnRlcmZhY2UgaW4gamF2YS5sYW5nIj5Db21wYXJhYmxlPC9hPjxzcGFuIGNsYXNzPSdhbmdsZV9icmFja2V0Jz4mbHQ7PC9zcGFuPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9FdmVudC5odG1sIiB0aXRsZT0iaW50ZXJmYWNlIGluIG9yZy5hcGFjaGUuaWduaXRlLmV2ZW50cyI+RXZlbnQ8L2E+PHNwYW4gY2xhc3M9J2FuZ2xlX2JyYWNrZXQnPiZndDs8L3NwYW4+LCA8YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRXZlbnQuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuYXBhY2hlLmlnbml0ZS5ldmVudHMiPkV2ZW50PC9hPjwvZGQ+DQo8L2RsPg0KPGhyPg0KPGJyPg0KPHByZT5wdWJsaWMgY2xhc3MgPHNwYW4gY2xhc3M9InN0cm9uZyI+RGVwbG95bWVudEV2ZW50PC9zcGFuPg0KZXh0ZW5kcyA8YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRXZlbnRBZGFwdGVyLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuYXBhY2hlLmlnbml0ZS5ldmVudHMiPkV2ZW50QWRhcHRlcjwvYT48L3ByZT4NCjxkaXYgY2xhc3M9ImJsb2NrIj5HcmlkIGRlcGxveW1lbnQgZXZlbnQuCiA8cD4KIEdyaWQgZXZlbnRzIGFyZSB1c2VkIGZvciBub3RpZmljYXRpb24gYWJvdXQgd2hhdCBoYXBwZW5zIHdpdGhpbiB0aGUgZ3JpZC4gTm90ZSB0aGF0IGJ5CiBkZXNpZ24gSWduaXRlIGtlZXBzIGFsbCBldmVudHMgZ2VuZXJhdGVkIG9uIHRoZSBsb2NhbCBub2RlIGxvY2FsbHkgYW5kIGl0IHByb3ZpZGVzCiBBUElzIGZvciBwZXJmb3JtaW5nIGEgZGlzdHJpYnV0ZWQgcXVlcmllcyBhY3Jvc3MgbXVsdGlwbGUgbm9kZXM6CiA8dWw+CiAgICAgIDxsaT4KICAgICAgICAgIDxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL0lnbml0ZUV2ZW50cy5odG1sI3JlbW90ZVF1ZXJ5KG9yZy5hcGFjaGUuaWduaXRlLmxhbmcuSWduaXRlUHJlZGljYXRlLCUyMGxvbmcsJTIwaW50Li4uKSI+PGNvZGU+SWduaXRlRXZlbnRzLnJlbW90ZVF1ZXJ5KG9yZy5hcGFjaGUuaWduaXRlLmxhbmcuSWduaXRlUHJlZGljYXRlLCBsb25nLCBpbnQuLi4pPC9jb2RlPjwvYT4gLQogICAgICAgICAgYXN5bmNocm9ub3VzbHkgcXVlcnlpbmcgZXZlbnRzIG9jY3VycmVkIG9uIHRoZSBub2RlcyBzcGVjaWZpZWQsIGluY2x1ZGluZyByZW1vdGUgbm9kZXMuCiAgICAgIDwvbGk+CiAgICAgIDxsaT4KICAgICAgICAgIDxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL0lnbml0ZUV2ZW50cy5odG1sI2xvY2FsUXVlcnkob3JnLmFwYWNoZS5pZ25pdGUubGFuZy5JZ25pdGVQcmVkaWNhdGUsJTIwaW50Li4uKSI+PGNvZGU+SWduaXRlRXZlbnRzLmxvY2FsUXVlcnkob3JnLmFwYWNoZS5pZ25pdGUubGFuZy5JZ25pdGVQcmVkaWNhdGUsIGludC4uLik8L2NvZGU+PC9hPiAtCiAgICAgICAgICBxdWVyeWluZyBvbmx5IGxvY2FsIGV2ZW50cyBzdG9yZWQgb24gdGhpcyBsb2NhbCBub2RlLgogICAgICA8L2xpPgogICAgICA8bGk+CiAgICAgICAgICA8YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9JZ25pdGVFdmVudHMuaHRtbCNsb2NhbExpc3RlbihvcmcuYXBhY2hlLmlnbml0ZS5sYW5nLklnbml0ZVByZWRpY2F0ZSwlMjBpbnQuLi4pIj48Y29kZT5JZ25pdGVFdmVudHMubG9jYWxMaXN0ZW4ob3JnLmFwYWNoZS5pZ25pdGUubGFuZy5JZ25pdGVQcmVkaWNhdGUsIGludC4uLik8L2NvZGU+PC9hPiAtCiAgICAgICAgICBsaXN0ZW5pbmcgdG8gbG9jYWwgZ3JpZCBldmVudHMgKGV2ZW50cyBmcm9tIHJlbW90ZSBub2RlcyBub3QgaW5jbHVkZWQpLgogICAgICA8L2xpPgogPC91bD4KIFVzZXIgY2FuIGFsc28gd2FpdCBmb3IgZXZlbnRzIHVzaW5nIG1ldGhvZCA8YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9JZ25pdGVFdmVudHMuaHRtbCN3YWl0Rm9yTG9jYWwob3JnLmFwYWNoZS5pZ25pdGUubGFuZy5JZ25pdGVQcmVkaWNhdGUsJTIwaW50Li4uKSI+PGNvZGU+SWduaXRlRXZlbnRzLndhaXRGb3JMb2NhbChvcmcuYXBhY2hlLmlnbml0ZS5sYW5nLklnbml0ZVByZWRpY2F0ZSwgaW50Li4uKTwvY29kZT48L2E+LgogPGgxIGNsYXNzPSJoZWFkZXIiPkV2ZW50cyBhbmQgUGVyZm9ybWFuY2U8L2gxPgogTm90ZSB0aGF0IGJ5IGRlZmF1bHQgYWxsIGV2ZW50cyBpbiBJZ25pdGUgYXJlIGVuYWJsZWQgYW5kIHRoZXJlZm9yZSBnZW5lcmF0ZWQgYW5kIHN0b3JlZAogYnkgd2hhdGV2ZXIgZXZlbnQgc3RvcmFnZSBTUEkgaXMgY29uZmlndXJlZC4gSWduaXRlIGNhbiBhbmQgb2Z0ZW4gZG9lcyBnZW5lcmF0ZSB0aG91c2FuZHMgZXZlbnRzIHBlciBzZWNvbmRzCiB1bmRlciB0aGUgbG9hZCBhbmQgdGhlcmVmb3JlIGl0IGNyZWF0ZXMgYSBzaWduaWZpY2FudCBhZGRpdGlvbmFsIGxvYWQgb24gdGhlIHN5c3RlbS4gSWYgdGhlc2UgZXZlbnRzIGFyZQogbm90IG5lZWRlZCBieSB0aGUgYXBwbGljYXRpb24gdGhpcyBsb2FkIGlzIHVubmVjZXNzYXJ5IGFuZCBsZWFkcyB0byBzaWduaWZpY2FudCBwZXJmb3JtYW5jZSBkZWdyYWRhdGlvbi4KIDxwPgogSXQgaXMgPGI+aGlnaGx5IHJlY29tbWVuZGVkPC9iPiB0byBlbmFibGUgb25seSB0aG9zZSBldmVudHMgdGhhdCB5b3VyIGFwcGxpY2F0aW9uIGxvZ2ljIHJlcXVpcmVzCiBieSB1c2luZyA8YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9jb25maWd1cmF0aW9uL0lnbml0ZUNvbmZpZ3VyYXRpb24uaHRtbCNnZXRJbmNsdWRlRXZlbnRUeXBlcygpIj48Y29kZT5JZ25pdGVDb25maWd1cmF0aW9uLmdldEluY2x1ZGVFdmVudFR5cGVzKCk8L2NvZGU+PC9hPiBtZXRob2QgaW4gSWduaXRlIGNvbmZpZ3VyYXRpb24uIE5vdGUgdGhhdCBjZXJ0YWluCiBldmVudHMgYXJlIHJlcXVpcmVkIGZvciBJZ25pdGUncyBpbnRlcm5hbCBvcGVyYXRpb25zIGFuZCBzdWNoIGV2ZW50cyB3aWxsIHN0aWxsIGJlIGdlbmVyYXRlZCBidXQgbm90IHN0b3JlZCBieQogZXZlbnQgc3RvcmFnZSBTUEkgaWYgdGhleSBhcmUgZGlzYWJsZWQgaW4gSWduaXRlIGNvbmZpZ3VyYXRpb24uPC9kaXY+DQo8ZGw+PGR0PjxzcGFuIGNsYXNzPSJzdHJvbmciPlNlZSBBbHNvOjwvc3Bhbj48L2R0PjxkZD48YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRXZlbnRUeXBlLmh0bWwjRVZUX0NMQVNTX0RFUExPWV9GQUlMRUQiPjxjb2RlPkV2ZW50VHlwZS5FVlRfQ0xBU1NfREVQTE9ZX0ZBSUxFRDwvY29kZT48L2E+LCANCjxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9FdmVudFR5cGUuaHRtbCNFVlRfQ0xBU1NfREVQTE9ZRUQiPjxjb2RlPkV2ZW50VHlwZS5FVlRfQ0xBU1NfREVQTE9ZRUQ8L2NvZGU+PC9hPiwgDQo8YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRXZlbnRUeXBlLmh0bWwjRVZUX0NMQVNTX1VOREVQTE9ZRUQiPjxjb2RlPkV2ZW50VHlwZS5FVlRfQ0xBU1NfVU5ERVBMT1lFRDwvY29kZT48L2E+LCANCjxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9FdmVudFR5cGUuaHRtbCNFVlRfVEFTS19ERVBMT1lfRkFJTEVEIj48Y29kZT5FdmVudFR5cGUuRVZUX1RBU0tfREVQTE9ZX0ZBSUxFRDwvY29kZT48L2E+LCANCjxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9FdmVudFR5cGUuaHRtbCNFVlRfVEFTS19ERVBMT1lFRCI+PGNvZGU+RXZlbnRUeXBlLkVWVF9UQVNLX0RFUExPWUVEPC9jb2RlPjwvYT4sIA0KPGEgaHJlZj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9pZ25pdGUvZXZlbnRzL0V2ZW50VHlwZS5odG1sI0VWVF9UQVNLX1VOREVQTE9ZRUQiPjxjb2RlPkV2ZW50VHlwZS5FVlRfVEFTS19VTkRFUExPWUVEPC9jb2RlPjwvYT4sIA0KPGEgaHJlZj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9pZ25pdGUvZXZlbnRzL0V2ZW50VHlwZS5odG1sI0VWVFNfREVQTE9ZTUVOVCI+PGNvZGU+RXZlbnRUeXBlLkVWVFNfREVQTE9ZTUVOVDwvY29kZT48L2E+LCANCjxhIGhyZWY9Ii4uLy4uLy4uLy4uL3NlcmlhbGl6ZWQtZm9ybS5odG1sI29yZy5hcGFjaGUuaWduaXRlLmV2ZW50cy5EZXBsb3ltZW50RXZlbnQiPlNlcmlhbGl6ZWQgRm9ybTwvYT48L2RkPjwvZGw+DQo8L2xpPg0KPC91bD4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0ic3VtbWFyeSI+DQo8dWwgY2xhc3M9ImJsb2NrTGlzdCI+DQo8bGkgY2xhc3M9ImJsb2NrTGlzdCI+DQo8IS0tID09PT09PT09IENPTlNUUlVDVE9SIFNVTU1BUlkgPT09PT09PT0gLS0+DQo8dWwgY2xhc3M9ImJsb2NrTGlzdCI+DQo8bGkgY2xhc3M9ImJsb2NrTGlzdCI+PGEgbmFtZT0iY29uc3RydWN0b3Jfc3VtbWFyeSI+DQo8IS0tICAgLS0+DQo8L2E+DQo8aDM+Q29uc3RydWN0b3IgU3VtbWFyeTwvaDM+DQo8dGFibGUgY2xhc3M9Im92ZXJ2aWV3U3VtbWFyeSIgYm9yZGVyPSIwIiBjZWxscGFkZGluZz0iMyIgY2VsbHNwYWNpbmc9IjAiIHN1bW1hcnk9IkNvbnN0cnVjdG9yIFN1bW1hcnkgdGFibGUsIGxpc3RpbmcgY29uc3RydWN0b3JzLCBhbmQgYW4gZXhwbGFuYXRpb24iPg0KPGNhcHRpb24+PHNwYW4+Q29uc3RydWN0b3JzPC9zcGFuPjxzcGFuIGNsYXNzPSJ0YWJFbmQiPiZuYnNwOzwvc3Bhbj48L2NhcHRpb24+DQo8dHI+DQo8dGggY2xhc3M9ImNvbE9uZSIgc2NvcGU9ImNvbCI+Q29uc3RydWN0b3IgYW5kIERlc2NyaXB0aW9uPC90aD4NCjwvdHI+DQo8dHIgY2xhc3M9ImFsdENvbG9yIj4NCjx0ZCBjbGFzcz0iY29sT25lIj48Y29kZT48c3Ryb25nPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9EZXBsb3ltZW50RXZlbnQuaHRtbCNEZXBsb3ltZW50RXZlbnQoKSI+RGVwbG95bWVudEV2ZW50PC9hPjwvc3Ryb25nPigpPC9jb2RlPg0KPGRpdiBjbGFzcz0iYmxvY2siPk5vLWFyZyBjb25zdHJ1Y3Rvci48L2Rpdj4NCjwvdGQ+DQo8L3RyPg0KPHRyIGNsYXNzPSJyb3dDb2xvciI+DQo8dGQgY2xhc3M9ImNvbE9uZSI+PGNvZGU+PHN0cm9uZz48YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRGVwbG95bWVudEV2ZW50Lmh0bWwjRGVwbG95bWVudEV2ZW50KG9yZy5hcGFjaGUuaWduaXRlLmNsdXN0ZXIuQ2x1c3Rlck5vZGUsJTIwamF2YS5sYW5nLlN0cmluZywlMjBpbnQpIj5EZXBsb3ltZW50RXZlbnQ8L2E+PC9zdHJvbmc+KDxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2NsdXN0ZXIvQ2x1c3Rlck5vZGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuYXBhY2hlLmlnbml0ZS5jbHVzdGVyIj5DbHVzdGVyTm9kZTwvYT4mbmJzcDtub2RlLA0KICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2RvY3Mub3JhY2xlLmNvbS9qYXZhc2UvNy9kb2NzL2FwaS9qYXZhL2xhbmcvU3RyaW5nLmh0bWw/aXMtZXh0ZXJuYWw9dHJ1ZSIgdGl0bGU9ImNsYXNzIG9yIGludGVyZmFjZSBpbiBqYXZhLmxhbmciPlN0cmluZzwvYT4mbmJzcDttc2csDQogICAgICAgICAgICAgICBpbnQmbmJzcDt0eXBlKTwvY29kZT4NCjxkaXYgY2xhc3M9ImJsb2NrIj5DcmVhdGVzIGRlcGxveW1lbnQgZXZlbnQgd2l0aCBnaXZlbiBwYXJhbWV0ZXJzLjwvZGl2Pg0KPC90ZD4NCjwvdHI+DQo8L3RhYmxlPg0KPC9saT4NCjwvdWw+DQo8IS0tID09PT09PT09PT0gTUVUSE9EIFNVTU1BUlkgPT09PT09PT09PT0gLS0+DQo8dWwgY2xhc3M9ImJsb2NrTGlzdCI+DQo8bGkgY2xhc3M9ImJsb2NrTGlzdCI+PGEgbmFtZT0ibWV0aG9kX3N1bW1hcnkiPg0KPCEtLSAgIC0tPg0KPC9hPg0KPGgzPk1ldGhvZCBTdW1tYXJ5PC9oMz4NCjx0YWJsZSBjbGFzcz0ib3ZlcnZpZXdTdW1tYXJ5IiBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIzIiBjZWxsc3BhY2luZz0iMCIgc3VtbWFyeT0iTWV0aG9kIFN1bW1hcnkgdGFibGUsIGxpc3RpbmcgbWV0aG9kcywgYW5kIGFuIGV4cGxhbmF0aW9uIj4NCjxjYXB0aW9uPjxzcGFuPk1ldGhvZHM8L3NwYW4+PHNwYW4gY2xhc3M9InRhYkVuZCI+Jm5ic3A7PC9zcGFuPjwvY2FwdGlvbj4NCjx0cj4NCjx0aCBjbGFzcz0iY29sRmlyc3QiIHNjb3BlPSJjb2wiPk1vZGlmaWVyIGFuZCBUeXBlPC90aD4NCjx0aCBjbGFzcz0iY29sTGFzdCIgc2NvcGU9ImNvbCI+TWV0aG9kIGFuZCBEZXNjcmlwdGlvbjwvdGg+DQo8L3RyPg0KPHRyIGNsYXNzPSJhbHRDb2xvciI+DQo8dGQgY2xhc3M9ImNvbEZpcnN0Ij48Y29kZT48YSBocmVmPSJodHRwOi8vZG9jcy5vcmFjbGUuY29tL2phdmFzZS83L2RvY3MvYXBpL2phdmEvbGFuZy9TdHJpbmcuaHRtbD9pcy1leHRlcm5hbD10cnVlIiB0aXRsZT0iY2xhc3Mgb3IgaW50ZXJmYWNlIGluIGphdmEubGFuZyI+U3RyaW5nPC9hPjwvY29kZT48L3RkPg0KPHRkIGNsYXNzPSJjb2xMYXN0Ij48Y29kZT48c3Ryb25nPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9EZXBsb3ltZW50RXZlbnQuaHRtbCNhbGlhcygpIj5hbGlhczwvYT48L3N0cm9uZz4oKTwvY29kZT4NCjxkaXYgY2xhc3M9ImJsb2NrIj5HZXRzIGRlcGxveW1lbnQgYWxpYXMgZm9yIHRoaXMgZXZlbnQuPC9kaXY+DQo8L3RkPg0KPC90cj4NCjx0ciBjbGFzcz0icm93Q29sb3IiPg0KPHRkIGNsYXNzPSJjb2xGaXJzdCI+PGNvZGU+dm9pZDwvY29kZT48L3RkPg0KPHRkIGNsYXNzPSJjb2xMYXN0Ij48Y29kZT48c3Ryb25nPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9EZXBsb3ltZW50RXZlbnQuaHRtbCNhbGlhcyhqYXZhLmxhbmcuU3RyaW5nKSI+YWxpYXM8L2E+PC9zdHJvbmc+KDxhIGhyZWY9Imh0dHA6Ly9kb2NzLm9yYWNsZS5jb20vamF2YXNlLzcvZG9jcy9hcGkvamF2YS9sYW5nL1N0cmluZy5odG1sP2lzLWV4dGVybmFsPXRydWUiIHRpdGxlPSJjbGFzcyBvciBpbnRlcmZhY2UgaW4gamF2YS5sYW5nIj5TdHJpbmc8L2E+Jm5ic3A7YWxpYXMpPC9jb2RlPg0KPGRpdiBjbGFzcz0iYmxvY2siPlNldHMgZGVwbG95bWVudCBhbGlhcyBmb3IgdGhpcyBldmVudC48L2Rpdj4NCjwvdGQ+DQo8L3RyPg0KPHRyIGNsYXNzPSJhbHRDb2xvciI+DQo8dGQgY2xhc3M9ImNvbEZpcnN0Ij48Y29kZT48YSBocmVmPSJodHRwOi8vZG9jcy5vcmFjbGUuY29tL2phdmFzZS83L2RvY3MvYXBpL2phdmEvbGFuZy9TdHJpbmcuaHRtbD9pcy1leHRlcm5hbD10cnVlIiB0aXRsZT0iY2xhc3Mgb3IgaW50ZXJmYWNlIGluIGphdmEubGFuZyI+U3RyaW5nPC9hPjwvY29kZT48L3RkPg0KPHRkIGNsYXNzPSJjb2xMYXN0Ij48Y29kZT48c3Ryb25nPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9EZXBsb3ltZW50RXZlbnQuaHRtbCNzaG9ydERpc3BsYXkoKSI+c2hvcnREaXNwbGF5PC9hPjwvc3Ryb25nPigpPC9jb2RlPg0KPGRpdiBjbGFzcz0iYmxvY2siPkdldHMgYSBzaG9ydGVuZWQgdmVyc2lvbiBvZiA8Y29kZT50b1N0cmluZygpPC9jb2RlPiByZXN1bHQuPC9kaXY+DQo8L3RkPg0KPC90cj4NCjx0ciBjbGFzcz0icm93Q29sb3IiPg0KPHRkIGNsYXNzPSJjb2xGaXJzdCI+PGNvZGU+PGEgaHJlZj0iaHR0cDovL2RvY3Mub3JhY2xlLmNvbS9qYXZhc2UvNy9kb2NzL2FwaS9qYXZhL2xhbmcvU3RyaW5nLmh0bWw/aXMtZXh0ZXJuYWw9dHJ1ZSIgdGl0bGU9ImNsYXNzIG9yIGludGVyZmFjZSBpbiBqYXZhLmxhbmciPlN0cmluZzwvYT48L2NvZGU+PC90ZD4NCjx0ZCBjbGFzcz0iY29sTGFzdCI+PGNvZGU+PHN0cm9uZz48YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRGVwbG95bWVudEV2ZW50Lmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L2E+PC9zdHJvbmc+KCk8L2NvZGU+PC90ZD4NCjwvdHI+DQo8L3RhYmxlPg0KPHVsIGNsYXNzPSJibG9ja0xpc3QiPg0KPGxpIGNsYXNzPSJibG9ja0xpc3QiPjxhIG5hbWU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3Nfb3JnLmFwYWNoZS5pZ25pdGUuZXZlbnRzLkV2ZW50QWRhcHRlciI+DQo8IS0tICAgLS0+DQo8L2E+DQo8aDM+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyZuYnNwO29yZy5hcGFjaGUuaWduaXRlLmV2ZW50cy48YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRXZlbnRBZGFwdGVyLmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuYXBhY2hlLmlnbml0ZS5ldmVudHMiPkV2ZW50QWRhcHRlcjwvYT48L2gzPg0KPGNvZGU+PGEgaHJlZj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9pZ25pdGUvZXZlbnRzL0V2ZW50QWRhcHRlci5odG1sI2NvbXBhcmVUbyhvcmcuYXBhY2hlLmlnbml0ZS5ldmVudHMuRXZlbnQpIj5jb21wYXJlVG88L2E+LCA8YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRXZlbnRBZGFwdGVyLmh0bWwjZXF1YWxzKGphdmEubGFuZy5PYmplY3QpIj5lcXVhbHM8L2E+LCA8YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRXZlbnRBZGFwdGVyLmh0bWwjaGFzaENvZGUoKSI+aGFzaENvZGU8L2E+LCA8YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRXZlbnRBZGFwdGVyLmh0bWwjaWQoKSI+aWQ8L2E+LCA8YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRXZlbnRBZGFwdGVyLmh0bWwjbG9jYWxPcmRlcigpIj5sb2NhbE9yZGVyPC9hPiwgPGEgaHJlZj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9pZ25pdGUvZXZlbnRzL0V2ZW50QWRhcHRlci5odG1sI21lc3NhZ2UoKSI+bWVzc2FnZTwvYT4sIDxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9FdmVudEFkYXB0ZXIuaHRtbCNtZXNzYWdlKGphdmEubGFuZy5TdHJpbmcpIj5tZXNzYWdlPC9hPiwgPGEgaHJlZj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9pZ25pdGUvZXZlbnRzL0V2ZW50QWRhcHRlci5odG1sI25hbWUoKSI+bmFtZTwvYT4sIDxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9FdmVudEFkYXB0ZXIuaHRtbCNub2RlKCkiPm5vZGU8L2E+LCA8YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRXZlbnRBZGFwdGVyLmh0bWwjbm9kZShvcmcuYXBhY2hlLmlnbml0ZS5jbHVzdGVyLkNsdXN0ZXJOb2RlKSI+bm9kZTwvYT4sIDxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9FdmVudEFkYXB0ZXIuaHRtbCN0aW1lc3RhbXAoKSI+dGltZXN0YW1wPC9hPiwgPGEgaHJlZj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9pZ25pdGUvZXZlbnRzL0V2ZW50QWRhcHRlci5odG1sI3R5cGUoKSI+dHlwZTwvYT4sIDxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9FdmVudEFkYXB0ZXIuaHRtbCN0eXBlKGludCkiPnR5cGU8L2E+PC9jb2RlPjwvbGk+DQo8L3VsPg0KPHVsIGNsYXNzPSJibG9ja0xpc3QiPg0KPGxpIGNsYXNzPSJibG9ja0xpc3QiPjxhIG5hbWU9Im1ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+DQo8IS0tICAgLS0+DQo8L2E+DQo8aDM+TWV0aG9kcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyZuYnNwO2phdmEubGFuZy48YSBocmVmPSJodHRwOi8vZG9jcy5vcmFjbGUuY29tL2phdmFzZS83L2RvY3MvYXBpL2phdmEvbGFuZy9PYmplY3QuaHRtbD9pcy1leHRlcm5hbD10cnVlIiB0aXRsZT0iY2xhc3Mgb3IgaW50ZXJmYWNlIGluIGphdmEubGFuZyI+T2JqZWN0PC9hPjwvaDM+DQo8Y29kZT48YSBocmVmPSJodHRwOi8vZG9jcy5vcmFjbGUuY29tL2phdmFzZS83L2RvY3MvYXBpL2phdmEvbGFuZy9PYmplY3QuaHRtbD9pcy1leHRlcm5hbD10cnVlI2Nsb25lKCkiIHRpdGxlPSJjbGFzcyBvciBpbnRlcmZhY2UgaW4gamF2YS5sYW5nIj5jbG9uZTwvYT4sIDxhIGhyZWY9Imh0dHA6Ly9kb2NzLm9yYWNsZS5jb20vamF2YXNlLzcvZG9jcy9hcGkvamF2YS9sYW5nL09iamVjdC5odG1sP2lzLWV4dGVybmFsPXRydWUjZmluYWxpemUoKSIgdGl0bGU9ImNsYXNzIG9yIGludGVyZmFjZSBpbiBqYXZhLmxhbmciPmZpbmFsaXplPC9hPiwgPGEgaHJlZj0iaHR0cDovL2RvY3Mub3JhY2xlLmNvbS9qYXZhc2UvNy9kb2NzL2FwaS9qYXZhL2xhbmcvT2JqZWN0Lmh0bWw/aXMtZXh0ZXJuYWw9dHJ1ZSNnZXRDbGFzcygpIiB0aXRsZT0iY2xhc3Mgb3IgaW50ZXJmYWNlIGluIGphdmEubGFuZyI+Z2V0Q2xhc3M8L2E+LCA8YSBocmVmPSJodHRwOi8vZG9jcy5vcmFjbGUuY29tL2phdmFzZS83L2RvY3MvYXBpL2phdmEvbGFuZy9PYmplY3QuaHRtbD9pcy1leHRlcm5hbD10cnVlI25vdGlmeSgpIiB0aXRsZT0iY2xhc3Mgb3IgaW50ZXJmYWNlIGluIGphdmEubGFuZyI+bm90aWZ5PC9hPiwgPGEgaHJlZj0iaHR0cDovL2RvY3Mub3JhY2xlLmNvbS9qYXZhc2UvNy9kb2NzL2FwaS9qYXZhL2xhbmcvT2JqZWN0Lmh0bWw/aXMtZXh0ZXJuYWw9dHJ1ZSNub3RpZnlBbGwoKSIgdGl0bGU9ImNsYXNzIG9yIGludGVyZmFjZSBpbiBqYXZhLmxhbmciPm5vdGlmeUFsbDwvYT4sIDxhIGhyZWY9Imh0dHA6Ly9kb2NzLm9yYWNsZS5jb20vamF2YXNlLzcvZG9jcy9hcGkvamF2YS9sYW5nL09iamVjdC5odG1sP2lzLWV4dGVybmFsPXRydWUjd2FpdCgpIiB0aXRsZT0iY2xhc3Mgb3IgaW50ZXJmYWNlIGluIGphdmEubGFuZyI+d2FpdDwvYT4sIDxhIGhyZWY9Imh0dHA6Ly9kb2NzLm9yYWNsZS5jb20vamF2YXNlLzcvZG9jcy9hcGkvamF2YS9sYW5nL09iamVjdC5odG1sP2lzLWV4dGVybmFsPXRydWUjd2FpdChsb25nKSIgdGl0bGU9ImNsYXNzIG9yIGludGVyZmFjZSBpbiBqYXZhLmxhbmciPndhaXQ8L2E+LCA8YSBocmVmPSJodHRwOi8vZG9jcy5vcmFjbGUuY29tL2phdmFzZS83L2RvY3MvYXBpL2phdmEvbGFuZy9PYmplY3QuaHRtbD9pcy1leHRlcm5hbD10cnVlI3dhaXQobG9uZywlMjBpbnQpIiB0aXRsZT0iY2xhc3Mgb3IgaW50ZXJmYWNlIGluIGphdmEubGFuZyI+d2FpdDwvYT48L2NvZGU+PC9saT4NCjwvdWw+DQo8L2xpPg0KPC91bD4NCjwvbGk+DQo8L3VsPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJkZXRhaWxzIj4NCjx1bCBjbGFzcz0iYmxvY2tMaXN0Ij4NCjxsaSBjbGFzcz0iYmxvY2tMaXN0Ij4NCjwhLS0gPT09PT09PT09IENPTlNUUlVDVE9SIERFVEFJTCA9PT09PT09PSAtLT4NCjx1bCBjbGFzcz0iYmxvY2tMaXN0Ij4NCjxsaSBjbGFzcz0iYmxvY2tMaXN0Ij48YSBuYW1lPSJjb25zdHJ1Y3Rvcl9kZXRhaWwiPg0KPCEtLSAgIC0tPg0KPC9hPg0KPGgzPkNvbnN0cnVjdG9yIERldGFpbDwvaDM+DQo8YSBuYW1lPSJEZXBsb3ltZW50RXZlbnQoKSI+DQo8IS0tICAgLS0+DQo8L2E+DQo8dWwgY2xhc3M9ImJsb2NrTGlzdCI+DQo8bGkgY2xhc3M9ImJsb2NrTGlzdCI+DQo8aDQ+RGVwbG95bWVudEV2ZW50PC9oND4NCjxwcmU+cHVibGljJm5ic3A7RGVwbG95bWVudEV2ZW50KCk8L3ByZT4NCjxkaXYgY2xhc3M9ImJsb2NrIj5Oby1hcmcgY29uc3RydWN0b3IuPC9kaXY+DQo8L2xpPg0KPC91bD4NCjxhIG5hbWU9IkRlcGxveW1lbnRFdmVudChvcmcuYXBhY2hlLmlnbml0ZS5jbHVzdGVyLkNsdXN0ZXJOb2RlLCBqYXZhLmxhbmcuU3RyaW5nLCBpbnQpIj4NCjwhLS0gICAtLT4NCjwvYT4NCjx1bCBjbGFzcz0iYmxvY2tMaXN0TGFzdCI+DQo8bGkgY2xhc3M9ImJsb2NrTGlzdCI+DQo8aDQ+RGVwbG95bWVudEV2ZW50PC9oND4NCjxwcmU+cHVibGljJm5ic3A7RGVwbG95bWVudEV2ZW50KDxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2NsdXN0ZXIvQ2x1c3Rlck5vZGUuaHRtbCIgdGl0bGU9ImludGVyZmFjZSBpbiBvcmcuYXBhY2hlLmlnbml0ZS5jbHVzdGVyIj5DbHVzdGVyTm9kZTwvYT4mbmJzcDtub2RlLA0KICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2RvY3Mub3JhY2xlLmNvbS9qYXZhc2UvNy9kb2NzL2FwaS9qYXZhL2xhbmcvU3RyaW5nLmh0bWw/aXMtZXh0ZXJuYWw9dHJ1ZSIgdGl0bGU9ImNsYXNzIG9yIGludGVyZmFjZSBpbiBqYXZhLmxhbmciPlN0cmluZzwvYT4mbmJzcDttc2csDQogICAgICAgICAgICAgICBpbnQmbmJzcDt0eXBlKTwvcHJlPg0KPGRpdiBjbGFzcz0iYmxvY2siPkNyZWF0ZXMgZGVwbG95bWVudCBldmVudCB3aXRoIGdpdmVuIHBhcmFtZXRlcnMuPC9kaXY+DQo8ZGw+PGR0PjxzcGFuIGNsYXNzPSJzdHJvbmciPlBhcmFtZXRlcnM6PC9zcGFuPjwvZHQ+PGRkPjxjb2RlPm5vZGU8L2NvZGU+IC0gTm9kZS48L2RkPjxkZD48Y29kZT5tc2c8L2NvZGU+IC0gT3B0aW9uYWwgZXZlbnQgbWVzc2FnZS48L2RkPjxkZD48Y29kZT50eXBlPC9jb2RlPiAtIEV2ZW50IHR5cGUuPC9kZD48L2RsPg0KPC9saT4NCjwvdWw+DQo8L2xpPg0KPC91bD4NCjwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4NCjx1bCBjbGFzcz0iYmxvY2tMaXN0Ij4NCjxsaSBjbGFzcz0iYmxvY2tMaXN0Ij48YSBuYW1lPSJtZXRob2RfZGV0YWlsIj4NCjwhLS0gICAtLT4NCjwvYT4NCjxoMz5NZXRob2QgRGV0YWlsPC9oMz4NCjxhIG5hbWU9InNob3J0RGlzcGxheSgpIj4NCjwhLS0gICAtLT4NCjwvYT4NCjx1bCBjbGFzcz0iYmxvY2tMaXN0Ij4NCjxsaSBjbGFzcz0iYmxvY2tMaXN0Ij4NCjxoND5zaG9ydERpc3BsYXk8L2g0Pg0KPHByZT5wdWJsaWMmbmJzcDs8YSBocmVmPSJodHRwOi8vZG9jcy5vcmFjbGUuY29tL2phdmFzZS83L2RvY3MvYXBpL2phdmEvbGFuZy9TdHJpbmcuaHRtbD9pcy1leHRlcm5hbD10cnVlIiB0aXRsZT0iY2xhc3Mgb3IgaW50ZXJmYWNlIGluIGphdmEubGFuZyI+U3RyaW5nPC9hPiZuYnNwO3Nob3J0RGlzcGxheSgpPC9wcmU+DQo8ZGl2IGNsYXNzPSJibG9jayI+R2V0cyBhIHNob3J0ZW5lZCB2ZXJzaW9uIG9mIDxjb2RlPnRvU3RyaW5nKCk8L2NvZGU+IHJlc3VsdC4gU3VpdGFibGUgZm9yIGh1bWFucyB0byByZWFkLjwvZGl2Pg0KPGRsPg0KPGR0PjxzdHJvbmc+U3BlY2lmaWVkIGJ5Ojwvc3Ryb25nPjwvZHQ+DQo8ZGQ+PGNvZGU+PGEgaHJlZj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9pZ25pdGUvZXZlbnRzL0V2ZW50Lmh0bWwjc2hvcnREaXNwbGF5KCkiPnNob3J0RGlzcGxheTwvYT48L2NvZGU+Jm5ic3A7aW4gaW50ZXJmYWNlJm5ic3A7PGNvZGU+PGEgaHJlZj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9pZ25pdGUvZXZlbnRzL0V2ZW50Lmh0bWwiIHRpdGxlPSJpbnRlcmZhY2UgaW4gb3JnLmFwYWNoZS5pZ25pdGUuZXZlbnRzIj5FdmVudDwvYT48L2NvZGU+PC9kZD4NCjxkdD48c3Ryb25nPk92ZXJyaWRlczo8L3N0cm9uZz48L2R0Pg0KPGRkPjxjb2RlPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9FdmVudEFkYXB0ZXIuaHRtbCNzaG9ydERpc3BsYXkoKSI+c2hvcnREaXNwbGF5PC9hPjwvY29kZT4mbmJzcDtpbiBjbGFzcyZuYnNwOzxjb2RlPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9FdmVudEFkYXB0ZXIuaHRtbCIgdGl0bGU9ImNsYXNzIGluIG9yZy5hcGFjaGUuaWduaXRlLmV2ZW50cyI+RXZlbnRBZGFwdGVyPC9hPjwvY29kZT48L2RkPg0KPGR0PjxzcGFuIGNsYXNzPSJzdHJvbmciPlJldHVybnM6PC9zcGFuPjwvZHQ+PGRkPlNob3J0ZW5lZCB2ZXJzaW9uIG9mIDxjb2RlPnRvU3RyaW5nKCk8L2NvZGU+IHJlc3VsdC48L2RkPjwvZGw+DQo8L2xpPg0KPC91bD4NCjxhIG5hbWU9ImFsaWFzKCkiPg0KPCEtLSAgIC0tPg0KPC9hPg0KPHVsIGNsYXNzPSJibG9ja0xpc3QiPg0KPGxpIGNsYXNzPSJibG9ja0xpc3QiPg0KPGg0PmFsaWFzPC9oND4NCjxwcmU+cHVibGljJm5ic3A7PGEgaHJlZj0iaHR0cDovL2RvY3Mub3JhY2xlLmNvbS9qYXZhc2UvNy9kb2NzL2FwaS9qYXZhL2xhbmcvU3RyaW5nLmh0bWw/aXMtZXh0ZXJuYWw9dHJ1ZSIgdGl0bGU9ImNsYXNzIG9yIGludGVyZmFjZSBpbiBqYXZhLmxhbmciPlN0cmluZzwvYT4mbmJzcDthbGlhcygpPC9wcmU+DQo8ZGl2IGNsYXNzPSJibG9jayI+R2V0cyBkZXBsb3ltZW50IGFsaWFzIGZvciB0aGlzIGV2ZW50LjwvZGl2Pg0KPGRsPjxkdD48c3BhbiBjbGFzcz0ic3Ryb25nIj5SZXR1cm5zOjwvc3Bhbj48L2R0PjxkZD5EZXBsb3ltZW50IGFsaWFzLjwvZGQ+PC9kbD4NCjwvbGk+DQo8L3VsPg0KPGEgbmFtZT0iYWxpYXMoamF2YS5sYW5nLlN0cmluZykiPg0KPCEtLSAgIC0tPg0KPC9hPg0KPHVsIGNsYXNzPSJibG9ja0xpc3QiPg0KPGxpIGNsYXNzPSJibG9ja0xpc3QiPg0KPGg0PmFsaWFzPC9oND4NCjxwcmU+cHVibGljJm5ic3A7dm9pZCZuYnNwO2FsaWFzKDxhIGhyZWY9Imh0dHA6Ly9kb2NzLm9yYWNsZS5jb20vamF2YXNlLzcvZG9jcy9hcGkvamF2YS9sYW5nL1N0cmluZy5odG1sP2lzLWV4dGVybmFsPXRydWUiIHRpdGxlPSJjbGFzcyBvciBpbnRlcmZhY2UgaW4gamF2YS5sYW5nIj5TdHJpbmc8L2E+Jm5ic3A7YWxpYXMpPC9wcmU+DQo8ZGl2IGNsYXNzPSJibG9jayI+U2V0cyBkZXBsb3ltZW50IGFsaWFzIGZvciB0aGlzIGV2ZW50LjwvZGl2Pg0KPGRsPjxkdD48c3BhbiBjbGFzcz0ic3Ryb25nIj5QYXJhbWV0ZXJzOjwvc3Bhbj48L2R0PjxkZD48Y29kZT5hbGlhczwvY29kZT4gLSBEZXBsb3ltZW50IGFsaWFzLjwvZGQ+PC9kbD4NCjwvbGk+DQo8L3VsPg0KPGEgbmFtZT0idG9TdHJpbmcoKSI+DQo8IS0tICAgLS0+DQo8L2E+DQo8dWwgY2xhc3M9ImJsb2NrTGlzdExhc3QiPg0KPGxpIGNsYXNzPSJibG9ja0xpc3QiPg0KPGg0PnRvU3RyaW5nPC9oND4NCjxwcmU+cHVibGljJm5ic3A7PGEgaHJlZj0iaHR0cDovL2RvY3Mub3JhY2xlLmNvbS9qYXZhc2UvNy9kb2NzL2FwaS9qYXZhL2xhbmcvU3RyaW5nLmh0bWw/aXMtZXh0ZXJuYWw9dHJ1ZSIgdGl0bGU9ImNsYXNzIG9yIGludGVyZmFjZSBpbiBqYXZhLmxhbmciPlN0cmluZzwvYT4mbmJzcDt0b1N0cmluZygpPC9wcmU+DQo8ZGw+DQo8ZHQ+PHN0cm9uZz5PdmVycmlkZXM6PC9zdHJvbmc+PC9kdD4NCjxkZD48Y29kZT48YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvRXZlbnRBZGFwdGVyLmh0bWwjdG9TdHJpbmcoKSI+dG9TdHJpbmc8L2E+PC9jb2RlPiZuYnNwO2luIGNsYXNzJm5ic3A7PGNvZGU+PGEgaHJlZj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9pZ25pdGUvZXZlbnRzL0V2ZW50QWRhcHRlci5odG1sIiB0aXRsZT0iY2xhc3MgaW4gb3JnLmFwYWNoZS5pZ25pdGUuZXZlbnRzIj5FdmVudEFkYXB0ZXI8L2E+PC9jb2RlPjwvZGQ+DQo8L2RsPg0KPC9saT4NCjwvdWw+DQo8L2xpPg0KPC91bD4NCjwvbGk+DQo8L3VsPg0KPC9kaXY+DQo8L2Rpdj4NCjwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4NCjwhLS0gPT09PT09PSBTVEFSVCBPRiBCT1RUT00gTkFWQkFSID09PT09PSAtLT4NCjxkaXYgY2xhc3M9ImJvdHRvbU5hdiI+PGEgbmFtZT0ibmF2YmFyX2JvdHRvbSI+DQo8IS0tICAgLS0+DQo8L2E+PGEgaHJlZj0iI3NraXAtbmF2YmFyX2JvdHRvbSIgdGl0bGU9IlNraXAgbmF2aWdhdGlvbiBsaW5rcyI+PC9hPjxhIG5hbWU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPg0KPCEtLSAgIC0tPg0KPC9hPg0KPHVsIGNsYXNzPSJuYXZMaXN0IiB0aXRsZT0iTmF2aWdhdGlvbiI+DQo8bGk+PGEgaHJlZj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj5PdmVydmlldzwvYT48L2xpPg0KPGxpPjxhIGhyZWY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj5QYWNrYWdlPC9hPjwvbGk+DQo8bGkgY2xhc3M9Im5hdkJhckNlbGwxUmV2Ij5DbGFzczwvbGk+DQo8bGk+PGEgaHJlZj0iY2xhc3MtdXNlL0RlcGxveW1lbnRFdmVudC5odG1sIj5Vc2U8L2E+PC9saT4NCjxsaT48YSBocmVmPSJwYWNrYWdlLXRyZWUuaHRtbCI+VHJlZTwvYT48L2xpPg0KPGxpPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj5EZXByZWNhdGVkPC9hPjwvbGk+DQo8bGk+PGEgaHJlZj0iLi4vLi4vLi4vLi4vaW5kZXgtYWxsLmh0bWwiPkluZGV4PC9hPjwvbGk+DQo8bGk+PGEgaHJlZj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+SGVscDwvYT48L2xpPg0KPC91bD4NCjxkaXYgY2xhc3M9ImFib3V0TGFuZ3VhZ2UiPjxlbT5JZ25pdGUgLSBJbi1NZW1vcnkgRGF0YSBGYWJyaWM8L2VtPjwvZGl2Pg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJzdWJOYXYiPg0KPHVsIGNsYXNzPSJuYXZMaXN0Ij4NCjxsaT48YSBocmVmPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL2lnbml0ZS9ldmVudHMvQ2hlY2twb2ludEV2ZW50Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuYXBhY2hlLmlnbml0ZS5ldmVudHMiPjxzcGFuIGNsYXNzPSJzdHJvbmciPlByZXYgQ2xhc3M8L3NwYW4+PC9hPjwvbGk+DQo8bGk+PGEgaHJlZj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9pZ25pdGUvZXZlbnRzL0Rpc2NvdmVyeUV2ZW50Lmh0bWwiIHRpdGxlPSJjbGFzcyBpbiBvcmcuYXBhY2hlLmlnbml0ZS5ldmVudHMiPjxzcGFuIGNsYXNzPSJzdHJvbmciPk5leHQgQ2xhc3M8L3NwYW4+PC9hPjwvbGk+DQo8L3VsPg0KPHVsIGNsYXNzPSJuYXZMaXN0Ij4NCjxsaT48YSBocmVmPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sP29yZy9hcGFjaGUvaWduaXRlL2V2ZW50cy9EZXBsb3ltZW50RXZlbnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj5GcmFtZXM8L2E+PC9saT4NCjxsaT48YSBocmVmPSJEZXBsb3ltZW50RXZlbnQuaHRtbCIgdGFyZ2V0PSJfdG9wIj5ObyBGcmFtZXM8L2E+PC9saT4NCjwvdWw+DQo8dWwgY2xhc3M9Im5hdkxpc3QiIGlkPSJhbGxjbGFzc2VzX25hdmJhcl9ib3R0b20iPg0KPGxpPjxhIGhyZWY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIj5BbGwgQ2xhc3NlczwvYT48L2xpPg0KPC91bD4NCjxkaXY+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+PCEtLQ0KICBhbGxDbGFzc2VzTGluayA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbGxjbGFzc2VzX25hdmJhcl9ib3R0b20iKTsNCiAgaWYod2luZG93PT10b3ApIHsNCiAgICBhbGxDbGFzc2VzTGluay5zdHlsZS5kaXNwbGF5ID0gImJsb2NrIjsNCiAgfQ0KICBlbHNlIHsNCiAgICBhbGxDbGFzc2VzTGluay5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOw0KICB9DQogIC8vLS0+DQo8L3NjcmlwdD4NCjwvZGl2Pg0KPGRpdj4NCjx1bCBjbGFzcz0ic3ViTmF2TGlzdCI+DQo8bGk+U3VtbWFyeTombmJzcDs8L2xpPg0KPGxpPk5lc3RlZCZuYnNwO3wmbmJzcDs8L2xpPg0KPGxpPkZpZWxkJm5ic3A7fCZuYnNwOzwvbGk+DQo8bGk+PGEgaHJlZj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNvbnN0cjwvYT4mbmJzcDt8Jm5ic3A7PC9saT4NCjxsaT48YSBocmVmPSIjbWV0aG9kX3N1bW1hcnkiPk1ldGhvZDwvYT48L2xpPg0KPC91bD4NCjx1bCBjbGFzcz0ic3ViTmF2TGlzdCI+DQo8bGk+RGV0YWlsOiZuYnNwOzwvbGk+DQo8bGk+RmllbGQmbmJzcDt8Jm5ic3A7PC9saT4NCjxsaT48YSBocmVmPSIjY29uc3RydWN0b3JfZGV0YWlsIj5Db25zdHI8L2E+Jm5ic3A7fCZuYnNwOzwvbGk+DQo8bGk+PGEgaHJlZj0iI21ldGhvZF9kZXRhaWwiPk1ldGhvZDwvYT48L2xpPg0KPC91bD4NCjwvZGl2Pg0KPGEgbmFtZT0ic2tpcC1uYXZiYXJfYm90dG9tIj4NCjwhLS0gICAtLT4NCjwvYT48L2Rpdj4NCjwhLS0gPT09PT09PT0gRU5EIE9GIEJPVFRPTSBOQVZCQVIgPT09PT09PSAtLT4NCjxwIGNsYXNzPSJsZWdhbENvcHkiPjxzbWFsbD48dGFibGUgd2lkdGg9IjEwMCUiIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9MCBjZWxscGFkZGluZz0wIHN0eWxlPSJwYWRkaW5nOiA1cHgiPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRhYmxlIHN0eWxlPSJwYWRkaW5nLWxlZnQ6IDA7IG1hcmdpbjogMCI+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keSBzdHlsZT0icGFkZGluZzogMDsgbWFyZ2luOiAwIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBzdHlsZT0icGFkZGluZzogMDsgbWFyZ2luOiAwIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIHRhcmdldD1fYmxhbmsgaHJlZj0iaHR0cHM6Ly9hcGFjaGUub3JnL3Byb2plY3RzL2lnbml0ZS5odG1sIj48bm9icj4yMDE1IENvcHlyaWdodCAmIzE2OTsgQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb248L25vYnI+PC9hPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHdpZHRoPSIxMDAlIiBhbGlnbj0icmlnaHQiIHZhbGlnbj0iY2VudGVyIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL3R3aXR0ZXIuY29tL0FwYWNoZUlnbml0ZSIgY2xhc3M9InR3aXR0ZXItZm9sbG93LWJ1dHRvbiIgZGF0YS1zaG93LWNvdW50PSJmYWxzZSIgZGF0YS1zaXplPSJsYXJnZSI+Rm9sbG93IEBBcGFjaGVJZ25pdGU8L2E+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNjcmlwdD4hZnVuY3Rpb24oZCxzLGlkKXt2YXIganMsZmpzPWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUocylbMF0scD0vXmh0dHA6Ly50ZXN0KGQubG9jYXRpb24pPydodHRwJzonaHR0cHMnO2lmKCFkLmdldEVsZW1lbnRCeUlkKGlkKSl7anM9ZC5jcmVhdGVFbGVtZW50KHMpO2pzLmlkPWlkO2pzLnNyYz1wKyc6Ly9wbGF0Zm9ybS50d2l0dGVyLmNvbS93aWRnZXRzLmpzJztmanMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoanMsZmpzKTt9fShkb2N1bWVudCwgJ3NjcmlwdCcsICd0d2l0dGVyLXdqcycpOzwvc2NyaXB0PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49IjIiIHZhbGlnbj0idG9wIiBhbGlnbj0ibGVmdCI+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRhYmxlIHN0eWxlPSJwYWRkaW5nLWxlZnQ6IDA7IG1hcmdpbjogMCI+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keSBzdHlsZT0icGFkZGluZzogMDsgbWFyZ2luOiAwIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBzdHlsZT0icGFkZGluZzogMDsgbWFyZ2luOiAwIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPklnbml0ZSBGYWJyaWM8L2I+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+OiZuYnNwOyZuYnNwOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXIuIDxzdHJvbmc+MS41LjAtZmluYWwtU05BUFNIT1Q8L3N0cm9uZz4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBzdHlsZT0icGFkZGluZzogMDsgbWFyZ2luOiAwIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPlJlbGVhc2UgRGF0ZTwvYj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD46Jm5ic3A7Jm5ic3A7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMTl6uDh8PwgMjEgMjAxNSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPjwvc21hbGw+PC9wPg0KPCEtLUZPT1RFUi0tPjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz5TeW50YXhIaWdobGlnaHRlci5hbGwoKTtkcC5TeW50YXhIaWdobGlnaHRlci5IaWdobGlnaHRBbGwoJ2NvZGUnKTs8L3NjcmlwdD4KPC9ib2R5PgoNCjwvaHRtbD4NCg==