PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iSVNPLTg4NTktMSI/Pgo8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBTdHJpY3QvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+CjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBsYW5nPSJkZSIgeG1sOmxhbmc9ImRlIj48aGVhZD4KPG1ldGEgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgLz4KPCEtLQogICAgICAgIFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYCiAgICAgICAgICAgICAgVGhpcyBmaWxlIGlzIGdlbmVyYXRlZCBmcm9tIHhtbCBzb3VyY2U6IERPIE5PVCBFRElUCiAgICAgICAgWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFgKICAgICAgLS0+Cjx0aXRsZT5BcGFjaGUgc3RhcnRlbiAtIEFwYWNoZSBIVFRQIFNlcnZlciBWZXJzaW9uIDIuNTwvdGl0bGU+CjxsaW5rIGhyZWY9Ii4vc3R5bGUvY3NzL21hbnVhbC5jc3MiIHJlbD0ic3R5bGVzaGVldCIgbWVkaWE9ImFsbCIgdHlwZT0idGV4dC9jc3MiIHRpdGxlPSJNYWluIHN0eWxlc2hlZXQiIC8+CjxsaW5rIGhyZWY9Ii4vc3R5bGUvY3NzL21hbnVhbC1sb29zZS0xMDBwYy5jc3MiIHJlbD0iYWx0ZXJuYXRlIHN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiIHR5cGU9InRleHQvY3NzIiB0aXRsZT0iTm8gU2lkZWJhciAtIERlZmF1bHQgZm9udCBzaXplIiAvPgo8bGluayBocmVmPSIuL3N0eWxlL2Nzcy9tYW51YWwtcHJpbnQuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJwcmludCIgdHlwZT0idGV4dC9jc3MiIC8+PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iLi9zdHlsZS9jc3MvcHJldHRpZnkuY3NzIiAvPgo8c2NyaXB0IHNyYz0iLi9zdHlsZS9zY3JpcHRzL3ByZXR0aWZ5Lm1pbi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KPC9zY3JpcHQ+Cgo8bGluayBocmVmPSIuL2ltYWdlcy9mYXZpY29uLmljbyIgcmVsPSJzaG9ydGN1dCBpY29uIiAvPjwvaGVhZD4KPGJvZHkgaWQ9Im1hbnVhbC1wYWdlIj48ZGl2IGlkPSJwYWdlLWhlYWRlciI+CjxwIGNsYXNzPSJtZW51Ij48YSBocmVmPSIuL21vZC8iPk1vZHVsZTwvYT4gfCA8YSBocmVmPSIuL21vZC9xdWlja3JlZmVyZW5jZS5odG1sIj5EaXJla3RpdmVuPC9hPiB8IDxhIGhyZWY9Imh0dHA6Ly93aWtpLmFwYWNoZS5vcmcvaHR0cGQvRkFRIj5GQVE8L2E+IHwgPGEgaHJlZj0iLi9nbG9zc2FyeS5odG1sIj5HbG9zc2FyPC9hPiB8IDxhIGhyZWY9Ii4vc2l0ZW1hcC5odG1sIj5TZWl0ZW5pbmRleDwvYT48L3A+CjxwIGNsYXNzPSJhcGFjaGUiPkFwYWNoZSBIVFRQIFNlcnZlciBWZXJzaW9uIDIuNTwvcD4KPGltZyBhbHQ9IiIgc3JjPSIuL2ltYWdlcy9mZWF0aGVyLnBuZyIgLz48L2Rpdj4KPGRpdiBjbGFzcz0idXAiPjxhIGhyZWY9Ii4vIj48aW1nIHRpdGxlPSImbHQ7LSIgYWx0PSImbHQ7LSIgc3JjPSIuL2ltYWdlcy9sZWZ0LmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgaWQ9InBhdGgiPgo8YSBocmVmPSJodHRwOi8vd3d3LmFwYWNoZS5vcmcvIj5BcGFjaGU8L2E+ICZndDsgPGEgaHJlZj0iaHR0cDovL2h0dHBkLmFwYWNoZS5vcmcvIj5IVFRQLVNlcnZlcjwvYT4gJmd0OyA8YSBocmVmPSJodHRwOi8vaHR0cGQuYXBhY2hlLm9yZy9kb2NzLyI+RG9rdW1lbnRhdGlvbjwvYT4gJmd0OyA8YSBocmVmPSIuLyI+VmVyc2lvbiAyLjU8L2E+PC9kaXY+PGRpdiBpZD0icGFnZS1jb250ZW50Ij48ZGl2IGlkPSJwcmVhbWJsZSI+PGgxPkFwYWNoZSBzdGFydGVuPC9oMT4KPGRpdiBjbGFzcz0idG9wbGFuZyI+CjxwPjxzcGFuPlZlcmb8Z2JhcmUgU3ByYWNoZW46IDwvc3Bhbj48YSBocmVmPSIuL2RlL2ludm9raW5nLmh0bWwiIHRpdGxlPSJEZXV0c2NoIj4mbmJzcDtkZSZuYnNwOzwvYT4gfAo8YSBocmVmPSIuL2VuL2ludm9raW5nLmh0bWwiIGhyZWZsYW5nPSJlbiIgcmVsPSJhbHRlcm5hdGUiIHRpdGxlPSJFbmdsaXNoIj4mbmJzcDtlbiZuYnNwOzwvYT4gfAo8YSBocmVmPSIuL2VzL2ludm9raW5nLmh0bWwiIGhyZWZsYW5nPSJlcyIgcmVsPSJhbHRlcm5hdGUiIHRpdGxlPSJFc3Bh8W9sIj4mbmJzcDtlcyZuYnNwOzwvYT4gfAo8YSBocmVmPSIuL2ZyL2ludm9raW5nLmh0bWwiIGhyZWZsYW5nPSJmciIgcmVsPSJhbHRlcm5hdGUiIHRpdGxlPSJGcmFu52FpcyI+Jm5ic3A7ZnImbmJzcDs8L2E+IHwKPGEgaHJlZj0iLi9qYS9pbnZva2luZy5odG1sIiBocmVmbGFuZz0iamEiIHJlbD0iYWx0ZXJuYXRlIiB0aXRsZT0iSmFwYW5lc2UiPiZuYnNwO2phJm5ic3A7PC9hPiB8CjxhIGhyZWY9Ii4va28vaW52b2tpbmcuaHRtbCIgaHJlZmxhbmc9ImtvIiByZWw9ImFsdGVybmF0ZSIgdGl0bGU9IktvcmVhbiI+Jm5ic3A7a28mbmJzcDs8L2E+IHwKPGEgaHJlZj0iLi90ci9pbnZva2luZy5odG1sIiBocmVmbGFuZz0idHIiIHJlbD0iYWx0ZXJuYXRlIiB0aXRsZT0iVPxya+dlIj4mbmJzcDt0ciZuYnNwOzwvYT48L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJvdXRvZmRhdGUiPkRpZXNlINxiZXJzZXR6dW5nIGlzdCBt9mdsaWNoZXJ3ZWlzZQogICAgICAgICAgICBuaWNodCBtZWhyIGFrdHVlbGwuIEJpdHRlIHBy/GZlbiBTaWUgZGllIGVuZ2xpc2NoZSBWZXJzaW9uIGF1ZgogICAgICAgICAgICBkaWUgbmV1ZXN0ZW4gxG5kZXJ1bmdlbi48L2Rpdj4KCiAgICA8cD5VbnRlciBXaW5kb3dzIGzkdWZ0IGRlciBBcGFjaGUg/GJsaWNoZXJ3ZWlzZSBhbHMgRGllbnN0CiAgICAoV2luZG93cyBOVCwgMjAwMCB1bmQgWFApIG9kZXIgYWxzIEtvbnNvbGVuYW53ZW5kdW5nIChXaW5kb3dzIDl4IHVuZAogICAgTUUpLiBG/HIgRWluemVsaGVpdGVuIGxlc2VuIFNpZSBiaXR0ZSA8YSBocmVmPSJwbGF0Zm9ybS93aW5kb3dzLmh0bWwjd2luc3ZjIj5BcGFjaGUgYWxzIERpZW5zdCBiZXRyZWliZW48L2E+CiAgICB1bmQgPGEgaHJlZj0icGxhdGZvcm0vd2luZG93cy5odG1sI3dpbmNvbnMiPkFwYWNoZSBhbHMgS29uc29sZW5hbndlbmR1bmcgYmV0cmVpYmVuPC9hPi48L3A+CgogICAgPHA+VW50ZXIgVW5peCB3aXJkIGRhcyA8Y29kZSBjbGFzcz0icHJvZ3JhbSI+PGEgaHJlZj0iLi9wcm9ncmFtcy9odHRwZC5odG1sIj5odHRwZDwvYT48L2NvZGU+LVByb2dyYW1tIGFscyBEYWVtb24KICAgIGF1c2dlZvxocnQsIGRlciBpbSBIaW50ZXJncnVuZCBmb3J0bGF1ZmVuZCBha3RpdiBpc3QsIHVtCiAgICBBbmZyYWdlbiB6dSBiZWFyYmVpdGVuLiBEaWVzZXMgRG9rdW1lbnQgYmVzY2hyZWlidCwgd2llCiAgICA8Y29kZSBjbGFzcz0icHJvZ3JhbSI+PGEgaHJlZj0iLi9wcm9ncmFtcy9odHRwZC5odG1sIj5odHRwZDwvYT48L2NvZGU+IGF1ZmdlcnVmZW4gd2lyZC48L3A+CjwvZGl2Pgo8ZGl2IGlkPSJxdWlja3ZpZXciPjx1bCBpZD0idG9jIj48bGk+PGltZyBhbHQ9IiIgc3JjPSIuL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI3N0YXJ0dXAiPldpZSBkZXIgQXBhY2hlIHN0YXJ0ZXQ8L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNlcnJvcnMiPkZlaGxlciB35GhyZW5kIGRlcyBIb2NoZmFocmVuczwvYT48L2xpPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI2Jvb3QiPkJlaW0gQm9vdHZvcmdhbmcgc3RhcnRlbjwvYT48L2xpPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI2luZm8iPldlaXRlcmUgSW5mb3JtYXRpb25lbjwvYT48L2xpPgo8L3VsPjxoMz5TaWVoZSBhdWNoPC9oMz48dWwgY2xhc3M9InNlZWFsc28iPjxsaT48YSBocmVmPSJzdG9wcGluZy5odG1sIj5CZWVuZGVuIHVuZCBOZXVzdGFydGVuPC9hPjwvbGk+PGxpPjxjb2RlIGNsYXNzPSJwcm9ncmFtIj48YSBocmVmPSIuL3Byb2dyYW1zL2h0dHBkLmh0bWwiPmh0dHBkPC9hPjwvY29kZT48L2xpPjxsaT48Y29kZSBjbGFzcz0icHJvZ3JhbSI+PGEgaHJlZj0iLi9wcm9ncmFtcy9hcGFjaGVjdGwuaHRtbCI+YXBhY2hlY3RsPC9hPjwvY29kZT48L2xpPjxsaT48YSBocmVmPSIjY29tbWVudHNfc2VjdGlvbiI+S29tbWVudGFyZTwvYT48L2xpPjwvdWw+PC9kaXY+CjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0ic3RhcnR1cCIgaWQ9InN0YXJ0dXAiPldpZSBkZXIgQXBhY2hlIHN0YXJ0ZXQ8L2E+IDxhIHRpdGxlPSJQZXJtYW5lbnQgbGluayIgaHJlZj0iI3N0YXJ0dXAiIGNsYXNzPSJwZXJtYWxpbmsiPiZwYXJhOzwvYT48L2gyPgoKICAgIDxwPldlbm4gZGllIGluIGRlciBLb25maWd1cmF0aW9uc2RhdGVpIGFuZ2VnZWJlbmUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi9tb2QvbXBtX2NvbW1vbi5odG1sI2xpc3RlbiI+TGlzdGVuPC9hPjwvY29kZT4tQW53ZWlzdW5nIGF1ZiBkaWUgVm9yZWluc3RlbGx1bmcKICAgIHZvbiA4MCBnZXNldHp0IGlzdCAob2RlciBlaW5lbiBhbmRlcmVuIFBvcnQgdW50ZXJoYWxiIHZvbiAxMDI0KSwgZGFubgogICAgbfxzc2VuIFNpZSByb290LUJlcmVjaHRpZ3VuZyBiZXNpdHplbiwgdW0gZGVuIEFwYWNoZSBzdGFydGVuCiAgICB6dSBr9m5uZW4uIE51ciBkYW5uIGthbm4gZXIgc2ljaCBhbiBkaWVzZW4gcHJpdmlsZWdpZXJ0ZW4KICAgIFBvcnQgYmluZGVuLiBTb2JhbGQgZGVyIFNlcnZlciBnZXN0YXJ0ZXQgaXN0IHVuZCBlaW5pZ2Ugdm9yYmVyZWl0ZW5kZQogICAgQWt0aW9uZW4gd2llIGRhcyDWZmZuZW4gc2VpbmVyIExvZy1EYXRlaWVuIGF1c2dlZvxocnQgaGF0LAogICAgc3RhcnRldCBlciBtZWhyZXJlIDxlbT5LaW5kPC9lbT4tUHJvemVzc2UsIHdlbGNoZSBkaWUgQXJiZWl0IGVybGVkaWdlbjoKICAgIGRhcyBMYXVzY2hlbiBhdWYgdW5kIEJlYW50d29ydGVuIHZvbiBBbmZyYWdlbiB2b24gQ2xpZW50cy4gRGVyCiAgICBIYXVwdC08Y29kZT5odHRwZDwvY29kZT4tUHJvemVzcyBs5HVmdCB1bnRlciBkZW0gQmVudXR6ZXIgcm9vdAogICAgd2VpdGVyLCBkaWUgS2luZC1Qcm96ZXNzZSBqZWRvY2ggd2VyZGVuIHVudGVyIHdlbmlnZXIgcHJpdmlsZWdpZXJ0ZW4KICAgIEJlbnV0emVya2VubnVuZ2VuIGF1c2dlZvxocnQuIERpZXMgd2lyZCB2b24gZGVtIGF1c2dld+RobHRlbgogICAgPGEgaHJlZj0ibXBtLmh0bWwiPk11bHRpLVByb2Nlc3NpbmctTW9kdWw8L2E+IGdlc3RldWVydC48L3A+CgogICAgPHA+RGllIFZlcndlbmR1bmcgZGVzIFN0ZXVlcnNrcmlwdHMgPGNvZGUgY2xhc3M9InByb2dyYW0iPjxhIGhyZWY9Ii4vcHJvZ3JhbXMvYXBhY2hlY3RsLmh0bWwiPmFwYWNoZWN0bDwvYT48L2NvZGU+IGlzdCBkaWUKICAgIGVtcGZvaGxlbmUgTWV0aG9kZSwgZGFzIDxjb2RlIGNsYXNzPSJwcm9ncmFtIj48YSBocmVmPSIuL3Byb2dyYW1zL2h0dHBkLmh0bWwiPmh0dHBkPC9hPjwvY29kZT4tUHJvZ3JhbW0genUgc3RhcnRlbi4KICAgIERpZXNlcyBTa3JpcHQgc2V0enQgdmVyc2NoaWVkZW5lIFVtZ2VidW5nc3ZhcmlhYmxlbiwgZGllIGb8ciBkaWUKICAgIGtvcnJla3RlIEZ1bmt0aW9uIHZvbiA8Y29kZSBjbGFzcz0icHJvZ3JhbSI+PGEgaHJlZj0iLi9wcm9ncmFtcy9odHRwZC5odG1sIj5odHRwZDwvYT48L2NvZGU+IHVudGVyIGVpbmlnZW4KICAgIEJldHJpZWJzc3lzdGVtZW4gbm90d2VuZGlnIHNpbmQsIHVuZCBzdGFydGV0IGRhbm4gZGFzCiAgICA8Y29kZSBjbGFzcz0icHJvZ3JhbSI+PGEgaHJlZj0iLi9wcm9ncmFtcy9odHRwZC5odG1sIj5odHRwZDwvYT48L2NvZGU+LVByb2dyYW1tLiA8Y29kZSBjbGFzcz0icHJvZ3JhbSI+PGEgaHJlZj0iLi9wcm9ncmFtcy9hcGFjaGVjdGwuaHRtbCI+YXBhY2hlY3RsPC9hPjwvY29kZT4KICAgIHJlaWNodCBhbGxlIEtvbW1hbmRvemVpbGVuYXJndW1lbnRlIGR1cmNoLCBzbyBkYXNzIGFsbGUKICAgIDxjb2RlIGNsYXNzPSJwcm9ncmFtIj48YSBocmVmPSIuL3Byb2dyYW1zL2h0dHBkLmh0bWwiPmh0dHBkPC9hPjwvY29kZT4tT3B0aW9uZW4gYXVjaCBtaXQgPGNvZGUgY2xhc3M9InByb2dyYW0iPjxhIGhyZWY9Ii4vcHJvZ3JhbXMvYXBhY2hlY3RsLmh0bWwiPmFwYWNoZWN0bDwvYT48L2NvZGU+CiAgICB2ZXJ3ZW5kZXQgd2VyZGVuIGv2bm5lbi4gVW0gZGVuIGtvcnJla3RlbiBBYmxhZ2VvcnQgZGVzCiAgICA8Y29kZSBjbGFzcz0icHJvZ3JhbSI+PGEgaHJlZj0iLi9wcm9ncmFtcy9odHRwZC5odG1sIj5odHRwZDwvYT48L2NvZGU+LVByb2dyYW1tcyBzb3dpZSBlaW5pZ2UgS29tbWFuZG96ZWlsZW5hcmd1bWVudGUKICAgIGFuenVnZWJlbiwgZGllIFNpZSA8ZW0+aW1tZXI8L2VtPiB2ZXJ3ZW5kZW4gbfZjaHRlbiwga/ZubmVuCiAgICBTaWUgYXVjaCBkYXMgU2tyaXB0IDxjb2RlIGNsYXNzPSJwcm9ncmFtIj48YSBocmVmPSIuL3Byb2dyYW1zL2FwYWNoZWN0bC5odG1sIj5hcGFjaGVjdGw8L2E+PC9jb2RlPiBkaXJla3QgZWRpdGllcmVuIHVuZCBkaWUKICAgIFZhcmlhYmxlIDxjb2RlPkhUVFBEPC9jb2RlPiBhbSBBbmZhbmcg5G5kZXJuLjwvcD4KCiAgICA8cD5EYXMgRXJzdGUgd2FzIDxjb2RlPmh0dHBkPC9jb2RlPiBtYWNodCwgd2VubiBlcyBzdGFydGV0LCBpc3QgZGFzCiAgICBTdWNoZW4gdW5kIEVpbmxlc2VuIGRlciA8YSBocmVmPSJjb25maWd1cmluZy5odG1sIj5Lb25maWd1cmF0aW9uc2RhdGVpPC9hPiA8Y29kZT5odHRwZC5jb25mPC9jb2RlPi4KICAgIERlciBBYmxhZ2VvcnQgZGllc2VyIERhdGVpIHdpcmQgenVyIEtvbXBpbGllcnVuZ3N6ZWl0IGZlc3RnZWxlZ3QuIEVzIGlzdAogICAgYWJlciBt9mdsaWNoLCBkZW4gQWJsYWdlb3J0IHp1ciBMYXVmemVpdCBhbnp1Z2ViZW4sIGluZGVtIGRpZQogICAgS29tbWFuZG96ZWlsZW5vcHRpb24gPGNvZGU+LWY8L2NvZGU+IHdpZSBmb2xndCB2ZXJ3ZW5kZXQgd2lyZDo8L3A+CgogICAgPGRpdiBjbGFzcz0iZXhhbXBsZSI+PHA+PGNvZGU+L3Vzci9sb2NhbC9hcGFjaGUyL2Jpbi9hcGFjaGVjdGwgLWYKICAgICAgL3Vzci9sb2NhbC9hcGFjaGUyL2NvbmYvaHR0cGQuY29uZjwvY29kZT48L3A+PC9kaXY+CgogICAgPHA+V2VubiB35GhyZW5kIGRlcyBTdGFydHMgYWxsZXMgZ3V0Z2VodCwgdHJlbm50IHNpY2ggZGVyIFNlcnZlcgogICAgdm9tIFRlcm1pbmFsIGFiIHVuZCBkaWUgRWluZ2FiZWF1ZmZvcmRlcnVuZyBlcnNjaGVpbnQgZ2xlaWNoIGRhcmF1ZgogICAgd2llZGVyLiBEaWVzIHplaWd0IGFuLCBkYXNzIGRlciBTZXJ2ZXIgaG9jaGdlZmFocmVuIGlzdCB1bmQgbOR1ZnQuCiAgICBTaWUga/ZubmVuIG51biBJaHJlbiBCcm93c2VyIGJlbnV0emVuLCB1bSBWZXJiaW5kdW5nIHp1bSBTZXJ2ZXIKICAgIGF1Znp1bmVobWVuIHVuZCBzaWNoIGRpZSBUZXN0c2VpdGUgaW0gPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi9tb2QvY29yZS5odG1sI2RvY3VtZW50cm9vdCI+RG9jdW1lbnRSb290PC9hPjwvY29kZT4tVmVyemVpY2huaXMgYW56dXNlaGVuIHdpZSBhdWNoCiAgICBkaWUgbG9rYWxlIEtvcGllIGRlciBEb2t1bWVudGF0aW9uLCBkaWUgdm9uIGRpZXNlciBTZWl0ZSBhdXMgdmVybGlua3QKICAgIGlzdC48L3A+CjwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0iZXJyb3JzIiBpZD0iZXJyb3JzIj5GZWhsZXIgd+RocmVuZCBkZXMgSG9jaGZhaHJlbnM8L2E+IDxhIHRpdGxlPSJQZXJtYW5lbnQgbGluayIgaHJlZj0iI2Vycm9ycyIgY2xhc3M9InBlcm1hbGluayI+JnBhcmE7PC9hPjwvaDI+CgogICAgPHA+V2VubiBkZXIgQXBhY2hlIHfkaHJlbmQgZGVzIEhvY2hmYWhyZW5zIGVpbmVuIHNjaHdlcmVuIEZlaGxlcgogICAgZmVzdHN0ZWxsdCwgc2NocmVpYnQgZXIgZW50d2VkZXIgZWluZSBOYWNocmljaHQsIGRpZSBkYXMgUHJvYmxlbQogICAgbuRoZXIgc2NoaWxkZXJ0LCBhdWYgZGllIEtvbnNvbGUgb2RlciBpbnMgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi9tb2QvY29yZS5odG1sI2Vycm9ybG9nIj5FcnJvckxvZzwvYT48L2NvZGU+LCBiZXZvciBlciBzaWNoIHNlbGJzdCBiZWVuZGV0LgogICAgRWluZSBkZXIgaOR1Zmlnc3RlbiBGZWhsZXJtZWxkdW5nZW4gaXN0ICI8Y29kZT5VbmFibGUKICAgIHRvIGJpbmQgdG8gUG9ydCAuLi48L2NvZGU+IiA8c3BhbiBjbGFzcz0idHJhbnNub3RlIj4oPGVtPkFubS5kLtwuOjwvZW0+ICJLYW5uIG5pY2h0IGFuIFBvcnQgLi4uCiAgICBiaW5kZW4iKTwvc3Bhbj4uIERpZXNlIE1lbGR1bmcgd2lyZCD8YmxpY2hlcndlaXNlIHZlcnVyc2FjaHQ6PC9wPgoKICAgIDx1bD4KICAgICAgPGxpPmVudHdlZGVyIGR1cmNoIGRlbiBWZXJzdWNoLCBkZW4gU2VydmVyIGFuIGVpbmVtIHByaXZpbGVnaWVydGVuCiAgICAgIFBvcnQgenUgc3RhcnRlbiwgd+RocmVuZCBtYW4gbmljaHQgYWxzIEJlbnV0emVyIHJvb3QgYW5nZW1lbGRldAogICAgICBpc3QsPC9saT4KCiAgICAgIDxsaT5vZGVyIGR1cmNoIGRlbiBWZXJzdWNoLCBkZW4gU2VydmVyIHp1IHN0YXJ0ZW4sIHdlbm4gYmVyZWl0cyBlaW5lCiAgICAgIGFuZGVyZSBJbnN0YW56IGRlcyBBcGFjaGUgb2RlciBlaW4gYW5kZXJlciBXZWJzZXJ2ZXIgYW4gZGVuIGdsZWljaGVuCiAgICAgIFBvcnQgZ2VidW5kZW4gaXN0LjwvbGk+CiAgICA8L3VsPgoKICAgIDxwPkb8ciB3ZWl0ZXJlIEFubGVpdHVuZ2VuIHp1ciBGZWhsZXJiZWhlYnVuZyBsZXNlbiBTaWUgYml0dGUgZGllCiAgICBBcGFjaGUtPGEgaHJlZj0iZmFxLyI+RkFRPC9hPi48L3A+CjwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0iYm9vdCIgaWQ9ImJvb3QiPkJlaW0gQm9vdHZvcmdhbmcgc3RhcnRlbjwvYT4gPGEgdGl0bGU9IlBlcm1hbmVudCBsaW5rIiBocmVmPSIjYm9vdCIgY2xhc3M9InBlcm1hbGluayI+JnBhcmE7PC9hPjwvaDI+CgogICAgPHA+V2VubiBTaWUgbfZjaHRlbiwgZGFzcyBJaHIgU2VydmVyIGRpcmVrdCBuYWNoIGVpbmVtCiAgICBTeXN0ZW0tTmV1c3RhcnQgd2VpdGVybOR1ZnQsIHNvbGx0ZW4gU2llIGVpbmVuIEF1ZnJ1ZiB2b24KICAgIDxjb2RlIGNsYXNzPSJwcm9ncmFtIj48YSBocmVmPSIuL3Byb2dyYW1zL2FwYWNoZWN0bC5odG1sIj5hcGFjaGVjdGw8L2E+PC9jb2RlPiB6dSBkZW4gU3RhcnRkYXRlaWVuIElocmVzIFN5c3RlbXMKICAgIGhpbnp1ZvxnZW4gKPxibGljaGVyd2Vpc2UgPGNvZGU+cmMubG9jYWw8L2NvZGU+IG9kZXIKICAgIGVpbmUgRGF0ZWkgaW4gZWluZW0gPGNvZGU+cmMuTjwvY29kZT4tVmVyemVpY2huaXMpLiBEaWVzIHN0YXJ0ZXQKICAgIGRlbiBBcGFjaGUgYWxzIHJvb3QuIFN0ZWxsZW4gU2llIHp1dm9yIGplZG9jaCBzaWNoZXIsIGRhc3MgSWhyCiAgICBTZXJ2ZXIgaGluc2ljaHRsaWNoIFNpY2hlcmhlaXQgdW5kIFp1Z3JpZmZzYmVzY2hy5G5rdW5nZW4KICAgIHJpY2h0aWcga29uZmlndXJpZXJ0IGlzdC48L3A+CgogICAgPHA+RGFzIDxjb2RlIGNsYXNzPSJwcm9ncmFtIj48YSBocmVmPSIuL3Byb2dyYW1zL2FwYWNoZWN0bC5odG1sIj5hcGFjaGVjdGw8L2E+PC9jb2RlPi1Ta3JpcHQgaXN0IGRhZvxyIGF1c2dlbGVndCwgd2llCiAgICBlaW4gU3RhbmRhcmQtU3lzVi1pbml0LVNrcmlwdCB6dSBhcmJlaXRlbi4gRXMgYWt6ZXB0aWVydCBkaWUgQXJndW1lbnRlCiAgICA8Y29kZT5zdGFydDwvY29kZT4sIDxjb2RlPnJlc3RhcnQ8L2NvZGU+IHVuZCA8Y29kZT5zdG9wPC9jb2RlPgogICAgdW5kIPxiZXJzZXR6dCBzaWUgaW4gZGllIGVudHNwcmVjaGVuZGVuIFNpZ25hbGUgZvxyCiAgICA8Y29kZSBjbGFzcz0icHJvZ3JhbSI+PGEgaHJlZj0iLi9wcm9ncmFtcy9odHRwZC5odG1sIj5odHRwZDwvYT48L2NvZGU+LiBEYWhlciBr9m5uZW4gU2llIG9mdG1hbHMKICAgIGVpbmZhY2ggPGNvZGUgY2xhc3M9InByb2dyYW0iPjxhIGhyZWY9Ii4vcHJvZ3JhbXMvYXBhY2hlY3RsLmh0bWwiPmFwYWNoZWN0bDwvYT48L2NvZGU+IGluIGRhcyBlbnRzcHJlY2hlbmRlIGluaXQtVmVyemVpY2huaXMKICAgIGxpbmtlbi4g3GJlcnBy/GZlbiBTaWUgYml0dGUgYXVmIGplZGVuIEZhbGwgZGllIGdlbmF1ZW4KICAgIEFuZm9yZGVydW5nZW4gSWhyZXMgU3lzdGVtcy48L3A+CjwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0iaW5mbyIgaWQ9ImluZm8iPldlaXRlcmUgSW5mb3JtYXRpb25lbjwvYT4gPGEgdGl0bGU9IlBlcm1hbmVudCBsaW5rIiBocmVmPSIjaW5mbyIgY2xhc3M9InBlcm1hbGluayI+JnBhcmE7PC9hPjwvaDI+CgogICAgPHA+V2VpdGVyZSBJbmZvcm1hdGlvbmVuIPxiZXIgS29tbWFuZG96ZWlsZW5vcHRpb25lbiB2b24gPGNvZGUgY2xhc3M9InByb2dyYW0iPjxhIGhyZWY9Ii4vcHJvZ3JhbXMvaHR0cGQuaHRtbCI+aHR0cGQ8L2E+PC9jb2RlPiB1bmQgPGNvZGUgY2xhc3M9InByb2dyYW0iPjxhIGhyZWY9Ii4vcHJvZ3JhbXMvYXBhY2hlY3RsLmh0bWwiPmFwYWNoZWN0bDwvYT48L2NvZGU+IHNvd2llIGFuZGVyZW4KICAgIEhpbGZzcHJvZ3JhbW1lbiwgZGllIGRlbSBTZXJ2ZXIgYmVpZ2Vm/Gd0IHNpbmQsIHNpbmQgYXVmIGRlcgogICAgU2VpdGUgPGEgaHJlZj0icHJvZ3JhbXMvIj5TZXJ2ZXIgdW5kIEhpbGZzcHJvZ3JhbW1lPC9hPgogICAgdmVyZvxnYmFyLiBFcyBleGlzdGllcnQgYXXfZXJkZW0gZWluZSBEb2t1bWVudGF0aW9uCiAgICBhbGxlciBpbiBkZXIgQXBhY2hlLURpc3RyaWJ1dGlvbiBlbnRoYWx0ZW5lbiA8YSBocmVmPSJtb2QvIj5Nb2R1bGU8L2E+IHVuZCBkZXIgdm9uIGlobmVuIGJlcmVpdGdlc3RlbGx0ZW4KICAgIDxhIGhyZWY9Im1vZC9kaXJlY3RpdmVzLmh0bWwiPkRpcmVrdGl2ZW48L2E+LjwvcD4KPC9kaXY+PC9kaXY+CjxkaXYgY2xhc3M9ImJvdHRvbWxhbmciPgo8cD48c3Bhbj5WZXJm/GdiYXJlIFNwcmFjaGVuOiA8L3NwYW4+PGEgaHJlZj0iLi9kZS9pbnZva2luZy5odG1sIiB0aXRsZT0iRGV1dHNjaCI+Jm5ic3A7ZGUmbmJzcDs8L2E+IHwKPGEgaHJlZj0iLi9lbi9pbnZva2luZy5odG1sIiBocmVmbGFuZz0iZW4iIHJlbD0iYWx0ZXJuYXRlIiB0aXRsZT0iRW5nbGlzaCI+Jm5ic3A7ZW4mbmJzcDs8L2E+IHwKPGEgaHJlZj0iLi9lcy9pbnZva2luZy5odG1sIiBocmVmbGFuZz0iZXMiIHJlbD0iYWx0ZXJuYXRlIiB0aXRsZT0iRXNwYfFvbCI+Jm5ic3A7ZXMmbmJzcDs8L2E+IHwKPGEgaHJlZj0iLi9mci9pbnZva2luZy5odG1sIiBocmVmbGFuZz0iZnIiIHJlbD0iYWx0ZXJuYXRlIiB0aXRsZT0iRnJhbudhaXMiPiZuYnNwO2ZyJm5ic3A7PC9hPiB8CjxhIGhyZWY9Ii4vamEvaW52b2tpbmcuaHRtbCIgaHJlZmxhbmc9ImphIiByZWw9ImFsdGVybmF0ZSIgdGl0bGU9IkphcGFuZXNlIj4mbmJzcDtqYSZuYnNwOzwvYT4gfAo8YSBocmVmPSIuL2tvL2ludm9raW5nLmh0bWwiIGhyZWZsYW5nPSJrbyIgcmVsPSJhbHRlcm5hdGUiIHRpdGxlPSJLb3JlYW4iPiZuYnNwO2tvJm5ic3A7PC9hPiB8CjxhIGhyZWY9Ii4vdHIvaW52b2tpbmcuaHRtbCIgaHJlZmxhbmc9InRyIiByZWw9ImFsdGVybmF0ZSIgdGl0bGU9IlT8cmvnZSI+Jm5ic3A7dHImbmJzcDs8L2E+PC9wPgo8L2Rpdj48ZGl2IGNsYXNzPSJ0b3AiPjxhIGhyZWY9IiNwYWdlLWhlYWRlciI+PGltZyBzcmM9Ii4vaW1hZ2VzL3VwLmdpZiIgYWx0PSJ0b3AiIC8+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InNlY3Rpb24iPjxoMj48YSBpZD0iY29tbWVudHNfc2VjdGlvbiIgbmFtZT0iY29tbWVudHNfc2VjdGlvbiI+S29tbWVudGFyZTwvYT48L2gyPjxkaXYgY2xhc3M9Indhcm5pbmciPjxzdHJvbmc+Tm90aWNlOjwvc3Ryb25nPjxiciAvPlRoaXMgaXMgbm90IGEgUSZhbXA7QSBzZWN0aW9uLiBDb21tZW50cyBwbGFjZWQgaGVyZSBzaG91bGQgYmUgcG9pbnRlZCB0b3dhcmRzIHN1Z2dlc3Rpb25zIG9uIGltcHJvdmluZyB0aGUgZG9jdW1lbnRhdGlvbiBvciBzZXJ2ZXIsIGFuZCBtYXkgYmUgcmVtb3ZlZCBieSBvdXIgbW9kZXJhdG9ycyBpZiB0aGV5IGFyZSBlaXRoZXIgaW1wbGVtZW50ZWQgb3IgY29uc2lkZXJlZCBpbnZhbGlkL29mZi10b3BpYy4gUXVlc3Rpb25zIG9uIGhvdyB0byBtYW5hZ2UgdGhlIEFwYWNoZSBIVFRQIFNlcnZlciBzaG91bGQgYmUgZGlyZWN0ZWQgYXQgZWl0aGVyIG91ciBJUkMgY2hhbm5lbCwgI2h0dHBkLCBvbiBMaWJlcmEuY2hhdCwgb3Igc2VudCB0byBvdXIgPGEgaHJlZj0iaHR0cHM6Ly9odHRwZC5hcGFjaGUub3JnL2xpc3RzLmh0bWwiPm1haWxpbmcgbGlzdHM8L2E+LjwvZGl2Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+PCEtLS8vLS0+PCFbQ0RBVEFbLy8+PCEtLQp2YXIgY29tbWVudHNfc2hvcnRuYW1lID0gJ2h0dHBkJzsKdmFyIGNvbW1lbnRzX2lkZW50aWZpZXIgPSAnaHR0cDovL2h0dHBkLmFwYWNoZS5vcmcvZG9jcy90cnVuay9pbnZva2luZy5odG1sJzsKKGZ1bmN0aW9uKHcsIGQpIHsKICAgIGlmICh3LmxvY2F0aW9uLmhvc3RuYW1lLnRvTG93ZXJDYXNlKCkgPT0gImh0dHBkLmFwYWNoZS5vcmciKSB7CiAgICAgICAgZC53cml0ZSgnPGRpdiBpZD0iY29tbWVudHNfdGhyZWFkIj48XC9kaXY+Jyk7CiAgICAgICAgdmFyIHMgPSBkLmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOwogICAgICAgIHMudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnOwogICAgICAgIHMuYXN5bmMgPSB0cnVlOwogICAgICAgIHMuc3JjID0gJ2h0dHBzOi8vY29tbWVudHMuYXBhY2hlLm9yZy9zaG93X2NvbW1lbnRzLmx1YT9zaXRlPScgKyBjb21tZW50c19zaG9ydG5hbWUgKyAnJnBhZ2U9JyArIGNvbW1lbnRzX2lkZW50aWZpZXI7CiAgICAgICAgKGQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXSB8fCBkLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF0pLmFwcGVuZENoaWxkKHMpOwogICAgfQogICAgZWxzZSB7CiAgICAgICAgZC53cml0ZSgnPGRpdiBpZD0iY29tbWVudHNfdGhyZWFkIj5Db21tZW50cyBhcmUgZGlzYWJsZWQgZm9yIHRoaXMgcGFnZSBhdCB0aGUgbW9tZW50LjxcL2Rpdj4nKTsKICAgIH0KfSkod2luZG93LCBkb2N1bWVudCk7Ci8vLS0+PCFdXT48L3NjcmlwdD48L2Rpdj48ZGl2IGlkPSJmb290ZXIiPgo8cCBjbGFzcz0iYXBhY2hlIj5Db3B5cmlnaHQgMjAyMyBUaGUgQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb24uPGJyIC8+TGl6ZW56aWVydCB1bnRlciBkZXIgPGEgaHJlZj0iaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wIj5BcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjA8L2E+LjwvcD4KPHAgY2xhc3M9Im1lbnUiPjxhIGhyZWY9Ii4vbW9kLyI+TW9kdWxlPC9hPiB8IDxhIGhyZWY9Ii4vbW9kL3F1aWNrcmVmZXJlbmNlLmh0bWwiPkRpcmVrdGl2ZW48L2E+IHwgPGEgaHJlZj0iaHR0cDovL3dpa2kuYXBhY2hlLm9yZy9odHRwZC9GQVEiPkZBUTwvYT4gfCA8YSBocmVmPSIuL2dsb3NzYXJ5Lmh0bWwiPkdsb3NzYXI8L2E+IHwgPGEgaHJlZj0iLi9zaXRlbWFwLmh0bWwiPlNlaXRlbmluZGV4PC9hPjwvcD48L2Rpdj48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+PCEtLS8vLS0+PCFbQ0RBVEFbLy8+PCEtLQppZiAodHlwZW9mKHByZXR0eVByaW50KSAhPT0gJ3VuZGVmaW5lZCcpIHsKICAgIHByZXR0eVByaW50KCk7Cn0KLy8tLT48IV1dPjwvc2NyaXB0Pgo8L2JvZHk+PC9odG1sPg==