PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iSVNPLTg4NTktMSI/Pgo8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBTdHJpY3QvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+CjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBsYW5nPSJmciIgeG1sOmxhbmc9ImZyIj48aGVhZD4KPG1ldGEgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgLz4KPCEtLQogICAgICAgIFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYCiAgICAgICAgICAgICAgVGhpcyBmaWxlIGlzIGdlbmVyYXRlZCBmcm9tIHhtbCBzb3VyY2U6IERPIE5PVCBFRElUCiAgICAgICAgWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFgKICAgICAgLS0+Cjx0aXRsZT5SZWRpcmVjdGlvbiBldCByZW1pc2UgZW4gY29ycmVzcG9uZGFuY2UgYXZlYyBtb2RfcmV3cml0ZSAtIFNlcnZldXIgQXBhY2hlIEhUVFAgVmVyc2lvbiAyLjQ8L3RpdGxlPgo8bGluayBocmVmPSIuLi9zdHlsZS9jc3MvbWFudWFsLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIiB0eXBlPSJ0ZXh0L2NzcyIgdGl0bGU9Ik1haW4gc3R5bGVzaGVldCIgLz4KPGxpbmsgaHJlZj0iLi4vc3R5bGUvY3NzL21hbnVhbC1sb29zZS0xMDBwYy5jc3MiIHJlbD0iYWx0ZXJuYXRlIHN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiIHR5cGU9InRleHQvY3NzIiB0aXRsZT0iTm8gU2lkZWJhciAtIERlZmF1bHQgZm9udCBzaXplIiAvPgo8bGluayBocmVmPSIuLi9zdHlsZS9jc3MvbWFudWFsLXByaW50LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0icHJpbnQiIHR5cGU9InRleHQvY3NzIiAvPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii4uL3N0eWxlL2Nzcy9wcmV0dGlmeS5jc3MiIC8+CjxzY3JpcHQgc3JjPSIuLi9zdHlsZS9zY3JpcHRzL3ByZXR0aWZ5Lm1pbi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KPC9zY3JpcHQ+Cgo8bGluayBocmVmPSIuLi9pbWFnZXMvZmF2aWNvbi5pY28iIHJlbD0ic2hvcnRjdXQgaWNvbiIgLz48L2hlYWQ+Cjxib2R5IGlkPSJtYW51YWwtcGFnZSI+PGRpdiBpZD0icGFnZS1oZWFkZXIiPgo8cCBjbGFzcz0ibWVudSI+PGEgaHJlZj0iLi4vbW9kLyI+TW9kdWxlczwvYT4gfCA8YSBocmVmPSIuLi9tb2QvZGlyZWN0aXZlcy5odG1sIj5EaXJlY3RpdmVzPC9hPiB8IDxhIGhyZWY9Imh0dHA6Ly93aWtpLmFwYWNoZS5vcmcvaHR0cGQvRkFRIj5GQVE8L2E+IHwgPGEgaHJlZj0iLi4vZ2xvc3NhcnkuaHRtbCI+R2xvc3NhaXJlPC9hPiB8IDxhIGhyZWY9Ii4uL3NpdGVtYXAuaHRtbCI+UGxhbiBkdSBzaXRlPC9hPjwvcD4KPHAgY2xhc3M9ImFwYWNoZSI+U2VydmV1ciBBcGFjaGUgSFRUUCBWZXJzaW9uIDIuNDwvcD4KPGltZyBhbHQ9IiIgc3JjPSIuLi9pbWFnZXMvZmVhdGhlci5wbmciIC8+PC9kaXY+CjxkaXYgY2xhc3M9InVwIj48YSBocmVmPSIuLyI+PGltZyB0aXRsZT0iJmx0Oy0iIGFsdD0iJmx0Oy0iIHNyYz0iLi4vaW1hZ2VzL2xlZnQuZ2lmIiAvPjwvYT48L2Rpdj4KPGRpdiBpZD0icGF0aCI+CjxhIGhyZWY9Imh0dHA6Ly93d3cuYXBhY2hlLm9yZy8iPkFwYWNoZTwvYT4gJmd0OyA8YSBocmVmPSJodHRwOi8vaHR0cGQuYXBhY2hlLm9yZy8iPlNlcnZldXIgSFRUUDwvYT4gJmd0OyA8YSBocmVmPSJodHRwOi8vaHR0cGQuYXBhY2hlLm9yZy9kb2NzLyI+RG9jdW1lbnRhdGlvbjwvYT4gJmd0OyA8YSBocmVmPSIuLi8iPlZlcnNpb24gMi40PC9hPiAmZ3Q7IDxhIGhyZWY9Ii4vIj5SZXdyaXRlPC9hPjwvZGl2PjxkaXYgaWQ9InBhZ2UtY29udGVudCI+PGRpdiBpZD0icHJlYW1ibGUiPjxoMT5SZWRpcmVjdGlvbiBldCByZW1pc2UgZW4gY29ycmVzcG9uZGFuY2UgYXZlYyBtb2RfcmV3cml0ZTwvaDE+CjxkaXYgY2xhc3M9InRvcGxhbmciPgo8cD48c3Bhbj5MYW5ndWVzIERpc3BvbmlibGVzOiA8L3NwYW4+PGEgaHJlZj0iLi4vZW4vcmV3cml0ZS9yZW1hcHBpbmcuaHRtbCIgaHJlZmxhbmc9ImVuIiByZWw9ImFsdGVybmF0ZSIgdGl0bGU9IkVuZ2xpc2giPiZuYnNwO2VuJm5ic3A7PC9hPiB8CjxhIGhyZWY9Ii4uL2ZyL3Jld3JpdGUvcmVtYXBwaW5nLmh0bWwiIHRpdGxlPSJGcmFu52FpcyI+Jm5ic3A7ZnImbmJzcDs8L2E+PC9wPgo8L2Rpdj4KCgo8cD5DZSBkb2N1bWVudCBlc3QgdW4gY29tcGzpbWVudCDgIGxhIDxhIGhyZWY9Ii4uL21vZC9tb2RfcmV3cml0ZS5odG1sIj5Eb2N1bWVudGF0aW9uIGRlIHLpZulyZW5jZTwvYT4gZGUKPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9yZXdyaXRlLmh0bWwiPm1vZF9yZXdyaXRlPC9hPjwvY29kZT4uIElsIG1vbnRyZSBjb21tZW50IHV0aWxpc2VyCjxjb2RlIGNsYXNzPSJtb2R1bGUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfcmV3cml0ZS5odG1sIj5tb2RfcmV3cml0ZTwvYT48L2NvZGU+IHBvdXIgcmVkaXJpZ2VyIGV0IHJlbWV0dHJlIGVuCmNvcnJlc3BvbmRhbmNlIHVuZSByZXF16nRlLiBJbCBjb250aWVudCBkZQpub21icmV1eCBleGVtcGxlcyBkJ3V0aWxpc2F0aW9uIGNvdXJhbnRlIGRlIG1vZF9yZXdyaXRlIGF2ZWMgdW5lCmRlc2NyaXB0aW9uIGTpdGFpbGzpZSBkZSBsZXVyIGZvbmN0aW9ubmVtZW50LjwvcD4KCjxkaXYgY2xhc3M9Indhcm5pbmciPlZvdXMgZGV2ZXogdm91cyBhdHRhY2hlciDgIGNvbXByZW5kcmUgbGUKZm9uY3Rpb25uZW1lbnQgZGVzIGV4ZW1wbGVzLCBjYXIgbGEgcGx1cGFydCBkJ2VudHJlIGV1eCBuZQpmb25jdGlvbm5lcm9udCBwYXMgc3VyIHZvdHJlIHN5c3TobWUgc2kgdm91cyB2b3VzIGNvbnRlbnRleiBkZSBsZXMKY29waWVyL2NvbGxlciBkYW5zIHZvcyBmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uLjwvZGl2PgoKPC9kaXY+CjxkaXYgaWQ9InF1aWNrdmlldyI+PGEgaHJlZj0iaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9mb3VuZGF0aW9uL2NvbnRyaWJ1dGluZy5odG1sIiBjbGFzcz0iYmFkZ2UiPjxpbWcgc3JjPSJodHRwczovL3d3dy5hcGFjaGUub3JnL2ltYWdlcy9TdXBwb3J0QXBhY2hlLXNtYWxsLnBuZyIgYWx0PSJTdXBwb3J0IEFwYWNoZSEiIC8+PC9hPjx1bCBpZD0idG9jIj48bGk+PGltZyBhbHQ9IiIgc3JjPSIuLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNvbGQtdG8tbmV3Ij5EZSBsJ2FuY2llbm5lIOAgbGEgbm91dmVsbGUgVVJMIChlbiBpbnRlcm5lKTwvYT48L2xpPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNvbGQtdG8tbmV3LWV4dGVybiI+RGUgbCdhbmNpZW4gYXUgbm91dmVhdSAoZW4gZXh0ZXJuZSk8L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi4vaW1hZ2VzL2Rvd24uZ2lmIiAvPiA8YSBocmVmPSIjbW92ZWhvbWVkaXJzIj5SZXNzb3VyY2UgZOlwbGFj6WUgdmVycyB1biBhdXRyZSBzZXJ2ZXVyPC9hPjwvbGk+CjxsaT48aW1nIGFsdD0iIiBzcmM9Ii4uL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI3N0YXRpYy10by1keW5hbWljIj5EZSBzdGF0aXF1ZSDgIGR5bmFtaXF1ZTwvYT48L2xpPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNiYWNrd2FyZC1jb21wYXRpYmlsaXR5Ij5Db21wYXRpYmlsaXTpIGFzY2VuZGFudGUgZGFucyBsZSBjYWRyZSBkJ3VuZSBtb2RpZmljYXRpb24KICAgICAgZCdleHRlbnNpb24gZGUgbm9tIGRlIGZpY2hpZXI8L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi4vaW1hZ2VzL2Rvd24uZ2lmIiAvPiA8YSBocmVmPSIjY2Fub25pY2FsaG9zdCI+Tm9tcyBkJ2j0dGVzIGNhbm9uaXF1ZXM8L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi4vaW1hZ2VzL2Rvd24uZ2lmIiAvPiA8YSBocmVmPSIjbXVsdGlwbGVkaXJzIj5SZWNoZXJjaGUgZGUgcGFnZXMgZGFucyBwbHVzIGQndW4gculwZXJ0b2lyZTwvYT48L2xpPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNhcmNoaXZlLWFjY2Vzcy1tdWx0aXBsZXhlciI+UmVkaXJlY3Rpb24gdmVycyBkZXMgc2VydmV1cnMgZ+lvZ3JhcGhpcXVlbWVudCBkaXN0cmlidelzPC9hPjwvbGk+CjxsaT48aW1nIGFsdD0iIiBzcmM9Ii4uL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI2Jyb3dzZXItZGVwZW5kZW50LWNvbnRlbnQiPkNvbnRlbnUgZOlwZW5kYW50IGR1IG5hdmlnYXRldXI8L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi4vaW1hZ2VzL2Rvd24uZ2lmIiAvPiA8YSBocmVmPSIjY2Fub25pY2FsdXJsIj5VUkxzIGNhbm9uaXF1ZXM8L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi4vaW1hZ2VzL2Rvd24uZ2lmIiAvPiA8YSBocmVmPSIjbW92ZWRkb2Nyb290Ij5E6XBsYWNlbWVudCBkdSBy6XBlcnRvaXJlIDxjb2RlPkRvY3VtZW50Um9vdDwvY29kZT48L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi4vaW1hZ2VzL2Rvd24uZ2lmIiAvPiA8YSBocmVmPSIjZmFsbGJhY2stcmVzb3VyY2UiPlJlc3NvdXJjZSBwYXIgZOlmYXV0PC9hPjwvbGk+CjxsaT48aW1nIGFsdD0iIiBzcmM9Ii4uL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI3Jld3JpdGUtcXVlcnkiPlJld3JpdGUgcXVlcnkgc3RyaW5nPC9hPjwvbGk+CjwvdWw+PGgzPlZvaXIgYXVzc2k8L2gzPjx1bCBjbGFzcz0ic2VlYWxzbyI+PGxpPjxhIGhyZWY9Ii4uL21vZC9tb2RfcmV3cml0ZS5odG1sIj5Eb2N1bWVudGF0aW9uIGR1IG1vZHVsZSBtb2RfcmV3cml0ZTwvYT48L2xpPjxsaT48YSBocmVmPSJpbnRyby5odG1sIj5JbnRyb2R1Y3Rpb24g4CBtb2RfcmV3cml0ZTwvYT48L2xpPjxsaT48YSBocmVmPSJhY2Nlc3MuaHRtbCI+Q29udHL0bGVyIGwnYWNj6HM8L2E+PC9saT48bGk+PGEgaHJlZj0idmhvc3RzLmh0bWwiPlNlcnZldXJzIHZpcnR1ZWxzPC9hPjwvbGk+PGxpPjxhIGhyZWY9InByb3h5Lmh0bWwiPlNlcnZldXJzIG1hbmRhdGFpcmVzPC9hPjwvbGk+PGxpPjxhIGhyZWY9InJld3JpdGVtYXAuaHRtbCI+VXRpbGlzYXRpb24gZGUgUmV3cml0ZU1hcDwvYT48L2xpPjxsaT48YSBocmVmPSJhZHZhbmNlZC5odG1sIj5UZWNobmlxdWVzIGF2YW5j6WVzPC9hPjwvbGk+PGxpPjxhIGhyZWY9ImF2b2lkLmh0bWwiPlF1YW5kIG5lIHBhcyB1dGlsaXNlciBtb2RfcmV3cml0ZTwvYT48L2xpPjxsaT48YSBocmVmPSIjY29tbWVudHNfc2VjdGlvbiI+Q29tbWVudGFpcmVzPC9hPjwvbGk+PC91bD48L2Rpdj4KPGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0ib2xkLXRvLW5ldyIgaWQ9Im9sZC10by1uZXciPkRlIGwnYW5jaWVubmUg4CBsYSBub3V2ZWxsZSBVUkwgKGVuIGludGVybmUpPC9hPjwvaDI+CgogICAgICAKCiAgICAgIDxkbD4KICAgICAgICA8ZHQ+RGVzY3JpcHRpb24gOjwvZHQ+CgogICAgICAgIDxkZD4KICAgICAgICAgIDxwPlN1cHBvc29ucyBxdWUgbm91cyBheW9ucyBy6WNlbW1lbnQgcmVub21t6SBsYSBwYWdlCgkgIDxjb2RlPmZvby5odG1sPC9jb2RlPiBlbiA8Y29kZT5iYXIuaHRtbDwvY29kZT4sIGV0IHZvdWxpb25zCgkgIG1haW50ZW5hbnQgcXVlIGwnYW5jaWVubmUgVVJMIHNvaXQgdG91am91cnMgdmFsaWRlIOAgZGVzIGZpbnMKCSAgZGUgY29tcGF0aWJpbGl06SBhc2NlbmRhbnRlLiBFbiBmYWl0LCBvbiB2b3VkcmFpdCBxdWUgbGUKCSAgY2hhbmdlbWVudCBkZSBub20gc29pdCB0cmFuc3BhcmVudCBhdXggdXRpbGlzYXRldXJzIGRlCgkgIGwnYW5jaWVubmUgVVJMLjwvcD4KICAgICAgICA8L2RkPgoKICAgICAgICA8ZHQ+U29sdXRpb24gOjwvZHQ+CgogICAgICAgIDxkZD4KICAgICAgICAgIDxwPk9uIHLp6WNyaXQgbCdhbmNpZW5uZSBVUkwgZW4gaW50ZXJuZSB2ZXJzIGxhIG5vdXZlbGxlIHZpYQoJICBsYSBy6GdsZSBzdWl2YW50ZSA6PC9wPgoKPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPlJld3JpdGVFbmdpbmUgIG9uClJld3JpdGVSdWxlICAgICJePHN0cm9uZz4vZm9vPC9zdHJvbmc+XC5odG1sJCIgIjxzdHJvbmc+L2Jhcjwvc3Ryb25nPi5odG1sIiBbUFRdPC9wcmU+CgogICAgPC9kZD4KICA8L2RsPgoKPC9kaXY+PGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0ib2xkLXRvLW5ldy1leHRlcm4iIGlkPSJvbGQtdG8tbmV3LWV4dGVybiI+RGUgbCdhbmNpZW4gYXUgbm91dmVhdSAoZW4gZXh0ZXJuZSk8L2E+PC9oMj4KCiAgICAgIAoKICAgICAgPGRsPgogICAgICAgIDxkdD5EZXNjcmlwdGlvbiA6PC9kdD4KCiAgICAgICAgPGRkPgogICAgICAgICAgPHA+U3VwcG9zb25zIHRvdWpvdXJzIHF1ZSBub3VzIGF5b25zIHLpY2VtbWVudCByZW5vbW3pIGxhIHBhZ2UKCSAgPGNvZGU+Zm9vLmh0bWw8L2NvZGU+IGVuIDxjb2RlPmJhci5odG1sPC9jb2RlPiwgZXQgdm91bGlvbnMKCSAgbWFpbnRlbmFudCBxdWUgbCdhbmNpZW5uZSBVUkwgc29pdCB0b3Vqb3VycyB2YWxpZGUg4CBkZXMgZmlucwoJICBkZSBjb21wYXRpYmlsaXTpIGFzY2VuZGFudGUuIEVuIHJldmFuY2hlLCBub3VzIHZvdWxvbnMgY2V0dGUKCSAgZm9pcyBxdWUgbGEgbm91dmVsbGUgVVJMIHNvaXQgc3VnZ+ly6WUgYXV4IHV0aWxpc2F0ZXVycyBkZQoJICBsJ2FuY2llbm5lIFVSTCwgYydlc3Qg4CBkaXJlIHF1ZSBsJ2FkcmVzc2UgdnVlIGRlcHVpcyBsZXVyCgkgIG5hdmlnYXRldXIgZG9pdCDpZ2FsZW1lbnQg6nRyZSBtb2RpZmnpZS48L3A+CiAgICAgICAgPC9kZD4KCiAgICAgICAgPGR0PlNvbHV0aW9uIDo8L2R0PgoKICAgICAgICA8ZGQ+CiAgICAgICAgICA8cD5PbiBmb3JjZSB1bmUgcmVkaXJlY3Rpb24gSFRUUCB2ZXJzIGxhIG5vdXZlbGxlIFVSTCwgY2UgcXVpCgkgIGVudHJh7m5lIHVuZSBtb2RpZmljYXRpb24gZGUgY2VsbGUgZHUgbmF2aWdhdGV1ciBldCBhdXNzaSBkZSBjZQoJICBxdWUgdm9pdCBsJ3V0aWxpc2F0ZXVyIDo8L3A+Cgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+UmV3cml0ZUVuZ2luZSAgb24KUmV3cml0ZVJ1bGUgICAgIl48c3Ryb25nPmZvbzwvc3Ryb25nPlwuaHRtbCQiICAiPHN0cm9uZz5iYXI8L3N0cm9uZz4uaHRtbCIgIFs8c3Ryb25nPlI8L3N0cm9uZz5dPC9wcmU+Cgo8L2RkPgoKPGR0PkRpc2N1c3Npb248L2R0PgoKICAgIDxkZD4KICAgIDxwPkRhbnMgbCdleGVtcGxlIDxhIGhyZWY9IiNvbGQtdG8tbmV3LWludGVybiI+aW50ZXJuZTwvYT4sIG9uIGEgdXRpbGlz6SBtb2RfcmV3cml0ZSBhZmluCiAgICBkZSBkaXNzaW11bGVyIGxhIHJlZGlyZWN0aW9uIGF1IGNsaWVudC4gRGFucyBjZXQgZXhlbXBsZSwgZW4KICAgIHJldmFuY2hlLCBvbiBhdXJhaXQgcHUgc2UgY29udGVudGVyIGQndW5lIGRpcmVjdGl2ZSBSZWRpcmVjdCA6PC9wPgoKICAgIDxwcmUgY2xhc3M9InByZXR0eXByaW50IGxhbmctY29uZmlnIj5SZWRpcmVjdCAiL2Zvby5odG1sIiAiL2Jhci5odG1sIjwvcHJlPgoKCiAgICA8L2RkPgogIDwvZGw+Cgo8L2Rpdj48ZGl2IGNsYXNzPSJ0b3AiPjxhIGhyZWY9IiNwYWdlLWhlYWRlciI+PGltZyBhbHQ9InRvcCIgc3JjPSIuLi9pbWFnZXMvdXAuZ2lmIiAvPjwvYT48L2Rpdj4KPGRpdiBjbGFzcz0ic2VjdGlvbiI+CjxoMj48YSBuYW1lPSJtb3ZlaG9tZWRpcnMiIGlkPSJtb3ZlaG9tZWRpcnMiPlJlc3NvdXJjZSBk6XBsYWPpZSB2ZXJzIHVuIGF1dHJlIHNlcnZldXI8L2E+PC9oMj4KCiAgCgogIDxkbD4KICAgIDxkdD5EZXNjcmlwdGlvbiA6PC9kdD4KCiAgICA8ZGQ+CiAgICAgIDxwPlNpIHVuZSByZXNzb3VyY2UgYSDpdOkgZOlwbGFj6WUgdmVycyB1biBhdXRyZSBzZXJ2ZXVyLCB2b3VzCiAgICAgIHBvdXZleiBmYWlyZSBlbiBzb3J0ZSBxdWUgbGVzIFVSTHMgZGUgbCdhbmNpZW4gc2VydmV1ciBjb250aW51ZW50CiAgICAgIGRlIGZvbmN0aW9ubmVyIHBlbmRhbnQgdW4gY2VydGFpbiB0ZW1wcywgYWZpbiBkZSBsYWlzc2VyIGF1CiAgICAgIHV0aWxpc2F0ZXVycyBsZSB0ZW1wcyBkZSBtb2RpZmllciBsZXVycyBmYXZvcmlzLjwvcD4KICAgIDwvZGQ+CgogICAgPGR0PlNvbHV0aW9uIDo8L2R0PgoKICAgIDxkZD4KICAgICAgPHA+Vm91cyBwb3V2ZXogdXRpbGlzZXIgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9yZXdyaXRlLmh0bWwiPm1vZF9yZXdyaXRlPC9hPjwvY29kZT4gcG91cgogICAgICByZWRpcmlnZXIgY2VzIFVSTHMgdmVycyBsZSBub3V2ZWF1IHNlcnZldXIsIG1haXMgdm91cyBwb3V2ZXogYXVzc2kKICAgICAgdXRpbGlzZXIgbGVzIGRpcmVjdGl2ZXMgUmVkaXJlY3Qgb3UgUmVkaXJlY3RNYXRjaC48L3A+Cgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+I0F2ZWMgbW9kX3Jld3JpdGUKUmV3cml0ZUVuZ2luZSBvbgpSZXdyaXRlUnVsZSAgICJeL2RvY3MvKC4rKSIgICJodHRwOi8vbm91dmVhdS5leGFtcGxlLmNvbS9kb2NzLyQxIiAgW1IsTF08L3ByZT4KCgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+I0F2ZWMgUmVkaXJlY3RNYXRjaApSZWRpcmVjdE1hdGNoICJeL2RvY3MvKC4qKSIgImh0dHA6Ly9ub3V2ZWF1LmV4YW1wbGUuY29tL2RvY3MvJDEiPC9wcmU+CgoKPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPiNBdmVjIFJlZGlyZWN0ClJlZGlyZWN0ICIvZG9jcy8iICJodHRwOi8vbm91dmVhdS5leGFtcGxlLmNvbS9kb2NzLyI8L3ByZT4KCiAgICA8L2RkPgogIDwvZGw+Cgo8L2Rpdj48ZGl2IGNsYXNzPSJ0b3AiPjxhIGhyZWY9IiNwYWdlLWhlYWRlciI+PGltZyBhbHQ9InRvcCIgc3JjPSIuLi9pbWFnZXMvdXAuZ2lmIiAvPjwvYT48L2Rpdj4KPGRpdiBjbGFzcz0ic2VjdGlvbiI+CjxoMj48YSBuYW1lPSJzdGF0aWMtdG8tZHluYW1pYyIgaWQ9InN0YXRpYy10by1keW5hbWljIj5EZSBzdGF0aXF1ZSDgIGR5bmFtaXF1ZTwvYT48L2gyPgoKICAgICAgCgogICAgICA8ZGw+CiAgICAgICAgPGR0PkRlc2NyaXB0aW9uIDo8L2R0PgoKICAgICAgICA8ZGQ+CiAgICAgICAgICA8cD5Db21tZW50IHRyYW5zZm9ybWVyIHVuZSBwYWdlIHN0YXRpcXVlIDxjb2RlPmZvby5odG1sPC9jb2RlPgoJICBlbiBzYSB2YXJpYW50ZSBkeW5hbWlxdWUgPGNvZGU+Zm9vLmNnaTwvY29kZT4gZGUgbWFuaehyZQoJICB0cmFuc3BhcmVudGUsIGMnZXN0IOAgZGlyZSBzYW5zIGVuIGF2ZXJ0aXIgbGUKCSAgbmF2aWdhdGV1ci91dGlsaXNhdGV1ci48L3A+CiAgICAgICAgPC9kZD4KCiAgICAgICAgPGR0PlNvbHV0aW9uIDo8L2R0PgoKICAgICAgICA8ZGQ+CiAgICAgICAgICA8cD5PbiBy6eljcml0IHNpbXBsZW1lbnQgbCdVUkwgZW4gc2NyaXB0IENHSSBldCBmb3JjZSBsZQoJICBnZXN0aW9ubmFpcmUgZGUgY29udGVudSDgIDxzdHJvbmc+Y2dpLXNjcmlwdDwvc3Ryb25nPiBkZSBmYedvbgoJICDgIGNlIHF1ZSBsZSBzY3JpcHQgcydleOljdXRlIGVuIHRhbnQgcXVlIHByb2dyYW1tZSBDR0kuCgkgIEFpbnNpLCB1bmUgcmVxdep0ZSB2ZXJzIDxjb2RlPi9+cXV1eC9mb28uaHRtbDwvY29kZT4gY29uZHVpdAoJICBlbiBpbnRlcm5lIOAgbCdpbnZvY2F0aW9uIGRlCgkgIDxjb2RlPi9+cXV1eC9mb28uY2dpPC9jb2RlPi48L3A+Cgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+UmV3cml0ZUVuZ2luZSAgb24KUmV3cml0ZUJhc2UgICAgIi9+cXV1eC8iClJld3JpdGVSdWxlICAgICJeZm9vXC5odG1sJCIgICJmb28uY2dpIiAgW0g9PHN0cm9uZz5jZ2ktc2NyaXB0PC9zdHJvbmc+XTwvcHJlPgoKICAgICAgICA8L2RkPgogICAgICA8L2RsPgoKICAgIDwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4uL2ltYWdlcy91cC5naWYiIC8+PC9hPjwvZGl2Pgo8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KPGgyPjxhIG5hbWU9ImJhY2t3YXJkLWNvbXBhdGliaWxpdHkiIGlkPSJiYWNrd2FyZC1jb21wYXRpYmlsaXR5Ij5Db21wYXRpYmlsaXTpIGFzY2VuZGFudGUgZGFucyBsZSBjYWRyZSBkJ3VuZSBtb2RpZmljYXRpb24KICAgICAgZCdleHRlbnNpb24gZGUgbm9tIGRlIGZpY2hpZXI8L2E+PC9oMj4KCiAgICAgIAoKICAgICAgPGRsPgogICAgICAgIDxkdD5EZXNjcmlwdGlvbiA6PC9kdD4KCiAgICAgICAgPGRkPgogICAgICAgICAgPHA+Q29tbWVudCBjb25m6XJlciB1bmUgY29tcGF0aWJpbGl06SBhc2NlbmRhbnRlIGF1eCBVUkxzCgkgIChleGlzdGFudCBlbmNvcmUgdmlydHVlbGxlbWVudCkgYXBy6HMgYXZvaXIgbWlncukKCSAgPGNvZGU+ZG9jdW1lbnQuWVlZWTwvY29kZT4gdmVycyA8Y29kZT5kb2N1bWVudC5YWFhYPC9jb2RlPiwKCSAgYydlc3Qg4CBkaXJlIGFwcuhzIGF2b2lyIHBhciBleGVtcGxlIHRyYWR1aXQgdW4gbG90IGRlCgkgIGZpY2hpZXJzIDxjb2RlPi5odG1sPC9jb2RlPiBlbiBmaWNoaWVycyA8Y29kZT4ucGhwPC9jb2RlPgoJICA/PC9wPgogICAgICAgIDwvZGQ+CgogICAgICAgIDxkdD5Tb2x1dGlvbiA6PC9kdD4KCiAgICAgICAgPGRkPgogICAgICAgICAgPHA+T24gcunpY3JpdCBzaW1wbGVtZW50IGxlIG5vbSBkdSBmaWNoaWVyIGVuIHNvbiBub20KCSAgZGUgYmFzZSBldCB26XJpZmllIHMnaWwgZXhpc3RlIGF1c3NpIGF2ZWMgbGEgbm91dmVsbGUKCSAgZXh0ZW5zaW9uLiBTaSBjJ2VzdCBsZSBjYXMsIG9uIHV0aWxpc2UgY2Ugbm9tLCBzaW5vbiBvbgoJICBy6eljcml0IGwnVVJMIHNvdXMgc2EgZm9ybWUgb3JpZ2luYWxlLjwvcD4KCgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+IyAgIGpldSBkZSBy6GdsZXMgYXNzdXJhbnQgdW5lIGNvbXBhdGliaWxpdOkgYXNjZW5kYW50ZSBlbiBy6eljcml2YW50PGJyIC8+CiMgICBkb2N1bWVudC5odG1sIGVuIGRvY3VtZW50LnBocCBzaSBldCBzZXVsZW1lbnQgc2kgZG9jdW1lbnQucGhwPGJyIC8+CiMgICBleGlzdGUKJmx0O0RpcmVjdG9yeSAiL3Zhci93d3cvaHRkb2NzIiZndDsKICAgIFJld3JpdGVFbmdpbmUgb24KICAgIFJld3JpdGVCYXNlICIvdmFyL3d3dy9odGRvY3MiCgogICAgUmV3cml0ZUNvbmQgIiQxLnBocCIgLWYKICAgIFJld3JpdGVDb25kICIkMS5odG1sIiAhLWYKICAgIFJld3JpdGVSdWxlICJeKC4qKS5odG1sJCIgIiQxLnBocCIKJmx0Oy9EaXJlY3RvcnkmZ3Q7PC9wcmU+CgogICAgPC9kZD4KCiAgICA8ZHQ+RGlzY3Vzc2lvbjwvZHQ+CiAgICA8ZGQ+CiAgICA8cD5DZXQgZXhlbXBsZSB1dGlsaXNlIHVuZSBmb25jdGlvbm5hbGl06SBzb3V2ZW50IG3pY29ubnVlIGRlCiAgICBtb2RfcmV3cml0ZSwgZW4gdGlyYW50IGF2YW50YWdlIGRlIGwnb3JkcmUgZCdleOljdXRpb24gZHUgamV1IGRlCiAgICBy6GdsZXMuIEVuIHBhcnRpY3VsaWVyLCBtb2RfcmV3cml0ZSDpdmFsdWUgbGEgcGFydGllIGdhdWNoZSBkZXMKICAgIHLoZ2xlcyBkZSBy6eljcml0dXJlIGF2YW50IGQn6XZhbHVlciBsZXMgZGlyZWN0aXZlcyBSZXdyaXRlQ29uZC4gRW4KICAgIGNvbnPpcXVlbmNlLCAkMSBlc3QgZOlq4CBk6WZpbmkgYXUgbW9tZW50IG/5IGxlcyBkaXJlY3RpdmVzCiAgICBSZXdyaXRlQ29uZCBzb250IOl2YWx16WVzLiBDZWNpIG5vdXMgcGVybWV0IGRlIHRlc3RlciBsJ2V4aXN0ZW5jZSBkdQogICAgZmljaGllciBvcmlnaW5hbCAoPGNvZGU+ZG9jdW1lbnQuaHRtbDwvY29kZT4pIGV0IGR1IGZpY2hpZXIgY2libGUKICAgICg8Y29kZT5kb2N1bWVudC5waHA8L2NvZGU+KSBlbiB1dGlsaXNhbnQgbGUgbeptZSBub20gZGUgYmFzZS48L3A+CgogICAgPHA+Q2UgamV1IGRlIHLoZ2xlcyBlc3QgY29u53UgcG91ciB1bmUgdXRpbGlzYXRpb24gZGFucyB1biBjb250ZXh0ZQogICAgZGUgculwZXJ0b2lyZSAoYXUgc2VpbiBkJ3VuZSBzZWN0aW9uICZsdDtEaXJlY3RvcnkmZ3Q7IG91IGQndW4KICAgIGZpY2hpZXIgLmh0YWNjZXNzKSwgZGUgZmHnb24g4CBjZSBxdWUgbGVzIHbpcmlmaWNhdGlvbnMKICAgIDxjb2RlPi1mPC9jb2RlPiBlZmZlY3R1ZW50IGxldXJzIHJlY2hlcmNoZXMgZGFucyBsZSBib24gculwZXJ0b2lyZS4KICAgIFZvdXMgc2VyZXogcGV1dC3qdHJlIGFtZW7pIOAgZOlmaW5pciB1bmUgZGlyZWN0aXZlIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfcmV3cml0ZS5odG1sI3Jld3JpdGViYXNlIj5SZXdyaXRlQmFzZTwvYT48L2NvZGU+IHBvdXIgc3DpY2lmaWVyIGxlCiAgICBy6XBlcnRvaXJlIGRlIGJhc2Ug4CBwYXJ0aXIgZHVxdWVsIHZvdXMgdHJhdmFpbGxlei48L3A+CiAgICA8L2RkPgogIDwvZGw+Cgo8L2Rpdj48ZGl2IGNsYXNzPSJ0b3AiPjxhIGhyZWY9IiNwYWdlLWhlYWRlciI+PGltZyBhbHQ9InRvcCIgc3JjPSIuLi9pbWFnZXMvdXAuZ2lmIiAvPjwvYT48L2Rpdj4KPGRpdiBjbGFzcz0ic2VjdGlvbiI+CjxoMj48YSBuYW1lPSJjYW5vbmljYWxob3N0IiBpZD0iY2Fub25pY2FsaG9zdCI+Tm9tcyBkJ2j0dGVzIGNhbm9uaXF1ZXM8L2E+PC9oMj4KCgoKICAgICAgPGRsPgogICAgICAgIDxkdD5EZXNjcmlwdGlvbiA6PC9kdD4KCiAgICAgICAgPGRkPkxlIGJ1dCBkZSBjZXR0ZSBy6GdsZSBlc3QgZGUgcHLpZulyZXIgbCd1dGlsaXNhdGlvbiBkJ3VuIG5vbQoJZCdo9HRlIHBhcnRpY3VsaWVyIOAgZCdhdXRyZXMgbm9tcyBkJ2j0dGUgdXRpbGlzYWJsZXMKCXBvdXIgYXR0ZWluZHJlIGxlIG3qbWUgc2l0ZS4gUGFyIGV4ZW1wbGUsIHNpIHZvdXMgdm91bGV6Cgl1dGlsaXNlciA8c3Ryb25nPnd3dy5leGFtcGxlLmNvbTwvc3Ryb25nPiDgIGxhIHBsYWNlIGRlCgk8c3Ryb25nPmV4YW1wbGUuY29tPC9zdHJvbmc+LCB2b3VzIHBvdXZleiB1dGlsaXNlciB1bmUgc29sdXRpb24KCWR1IHN0eWxlIDo8L2RkPgoKICAgICAgICA8ZHQ+U29sdXRpb24gOjwvZHQ+CgogICAgICAgIDxkZD4KCjxwPlBvdXIgeSBwYXJ2ZW5pciwgaWwgdmF1dCBtaWV1eCBzZSBwYXNzZXIgZGUgbW9kX3Jld3JpdGUsIGV0IHV0aWxpc2VyCnBsdXT0dCBsYSBkaXJlY3RpdmUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hbGlhcy5odG1sI3JlZGlyZWN0Ij5SZWRpcmVjdDwvYT48L2NvZGU+IGRhbnMKdW5lIHNlY3Rpb24gZGUgc2VydmV1ciB2aXJ0dWVsIHBvdXIgbGUvbGVzIG5vbXMgZCdo9HRlIG5vbiBjYW5vbmlxdWVzLjwvcD4KCjxwcmUgY2xhc3M9InByZXR0eXByaW50IGxhbmctY29uZmlnIj4mbHQ7VmlydHVhbEhvc3QgKjo4MCZndDsKICBTZXJ2ZXJOYW1lIHVuZGVzaXJlZC5leGFtcGxlLmNvbQogIFNlcnZlckFsaWFzIGV4YW1wbGUuY29tIG5vdHRoaXMuZXhhbXBsZS5jb20KCiAgUmVkaXJlY3QgIi8iICJodHRwOi8vd3d3LmV4YW1wbGUuY29tLyIKJmx0Oy9WaXJ0dWFsSG9zdCZndDsKCiZsdDtWaXJ0dWFsSG9zdCAqOjgwJmd0OwogIFNlcnZlck5hbWUgd3d3LmV4YW1wbGUuY29tCiZsdDsvVmlydHVhbEhvc3QmZ3Q7PC9wcmU+CgoKPHA+Vm91cyBwb3V2ZXogYXVzc2kgdXRpbGlzZXIgbGEgZGlyZWN0aXZlIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9Ii4uL21vZC9jb3JlLmh0bWwjaWYiPiZsdDtJZiZndDs8L2E+PC9jb2RlPiA6PC9wPgoKPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPiZsdDtJZiAiJXtIVFRQX0hPU1R9ICE9ICd3d3cuZXhhbXBsZS5jb20nIiZndDsKCVJlZGlyZWN0ICIvIiAiaHR0cDovL3d3dy5leGFtcGxlLmNvbS8iCiZsdDsvSWYmZ3Q7PC9wcmU+CgoKPHA+T3UsIHBhciBleGVtcGxlLCBwb3VyIHJlZGlyaWdlciB1bmUgcG9ydGlvbiBkZSB2b3RyZSBzaXRlIHZlcnMgSFRUUFMKOjwvcD4KCjxwcmUgY2xhc3M9InByZXR0eXByaW50IGxhbmctY29uZmlnIj4mbHQ7SWYgIiV7U0VSVkVSX1BST1RPQ09MfSAhPSAnSFRUUFMnIiZndDsKCVJlZGlyZWN0ICIvYWRtaW4vIiAiaHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vYWRtaW4vIgombHQ7L0lmJmd0OzwvcHJlPgoKCjxwPlNpLCBwb3VyIHVuZSByYWlzb24gcGFydGljdWxp6HJlLCB2b3VzIHZvdWxleiB0b3V0IGRlIG3qbWUgdXRpbGlzZXIKPGNvZGU+bW9kX3Jld3JpdGU8L2NvZGU+IC0gZGFucyBsZSBjYXMsIHBhciBleGVtcGxlLCBv+SB2b3VzIGF2ZXogYmVzb2luCmQndW4gamV1IHBsdXMgaW1wb3J0YW50IGRlIHLoZ2xlcyBkZSBy6eljcml0dXJlcyAtIHZvdXMgcG91dmV6IHV0aWxpc2VyCmxhIHJlY2V0dGUgc3VpdmFudGUgOjwvcD4KCjxwPlBvdXIgbGVzIHNpdGVzIOljb3V0YW50IHN1ciB1biBwb3J0IGF1dHJlIHF1ZSA4MDo8L3A+CjxwcmUgY2xhc3M9InByZXR0eXByaW50IGxhbmctY29uZmlnIj5SZXdyaXRlQ29uZCAiJXtIVFRQX0hPU1R9IiAgICIhXnd3d1wuZXhhbXBsZVwuY29tIiBbTkNdClJld3JpdGVDb25kICIle0hUVFBfSE9TVH0iICAgIiFeJCIKUmV3cml0ZUNvbmQgIiV7U0VSVkVSX1BPUlR9IiAiIV44MCQiClJld3JpdGVSdWxlICJeLz8oLiopIiAgICAgICAgICJodHRwOi8vd3d3LmV4YW1wbGUuY29tOiV7U0VSVkVSX1BPUlR9LyQxIiBbTCxSLE5FXTwvcHJlPgoKCjxwPkV0IHBvdXIgdW4gc2l0ZSDpY291dGFudCBzdXIgbGUgcG9ydCA4MDwvcD4KPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPlJld3JpdGVDb25kICIle0hUVFBfSE9TVH0iICAgIiFed3d3XC5leGFtcGxlXC5jb20iIFtOQ10KUmV3cml0ZUNvbmQgIiV7SFRUUF9IT1NUfSIgICAiIV4kIgpSZXdyaXRlUnVsZSAiXi8/KC4qKSIgICAgICAgICAiaHR0cDovL3d3dy5leGFtcGxlLmNvbS8kMSIgW0wsUixORV08L3ByZT4KCgk8cD4KCVNpIHZvdXMgc291aGFpdGV6IHF1ZSBjZXR0ZSBy6GdsZSBzJ2FwcGxpcXVlIOAgdG91cyBsZXMgbm9tcyBkZQoJZG9tYWluZSAtIGVuIGQnYXV0cmVzIHRlcm1lcywgc2kgdm91cyB2b3VsZXogcmVkaXJpZ2VyCgk8c3Ryb25nPmV4YW1wbGUuY29tPC9zdHJvbmc+IHZlcnMKCTxzdHJvbmc+d3d3LmV4YW1wbGUuY29tPC9zdHJvbmc+IHBvdXIgdG91dGVzIGxlcyB2YWxldXJzCglwb3NzaWJsZXMgZGUgPHN0cm9uZz5leGFtcGxlLmNvbTwvc3Ryb25nPiwgdm91cyBwb3V2ZXogdXRpbGlzZXIKCWxlIGpldSBkZSBy6GdsZXMgc3VpdmFudHMgOjwvcD4KCjxwcmUgY2xhc3M9InByZXR0eXByaW50IGxhbmctY29uZmlnIj5SZXdyaXRlQ29uZCAiJXtIVFRQX0hPU1R9IiAiIV53d3dcLiIgW05DXQpSZXdyaXRlQ29uZCAiJXtIVFRQX0hPU1R9IiAiIV4kIgpSZXdyaXRlUnVsZSAiXi8/KC4qKSIgImh0dHA6Ly93d3cuJXtIVFRQX0hPU1R9LyQxIiBbTCxSLE5FXTwvcHJlPgoKCTxwPgoJVm91cyBwb3V2ZXogdXRpbGlzZXIgY2UgamV1IGRlIHLoZ2xlcyBhdXNzaSBiaWVuIGRhbnMgbGUgZmljaGllcgoJZGUgY29uZmlndXJhdGlvbiBkZSB2b3RyZSBzZXJ2ZXVyIHByaW5jaXBhbCBxdWUgZGFucyB1biBmaWNoaWVyCgk8Y29kZT4uaHRhY2Nlc3M8L2NvZGU+IHBsYWPpIGRhbnMgbGUgculwZXJ0b2lyZSBk6WZpbmkgcGFyIGxhCglkaXJlY3RpdmUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi4vbW9kL2NvcmUuaHRtbCNkb2N1bWVudHJvb3QiPkRvY3VtZW50Um9vdDwvYT48L2NvZGU+IGR1IHNlcnZldXIuPC9wPgogICAgICAgIDwvZGQ+CiAgICAgIDwvZGw+CgogICAgPC9kaXY+PGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0ibXVsdGlwbGVkaXJzIiBpZD0ibXVsdGlwbGVkaXJzIj5SZWNoZXJjaGUgZGUgcGFnZXMgZGFucyBwbHVzIGQndW4gculwZXJ0b2lyZTwvYT48L2gyPgoKICAKCiAgPGRsPgogICAgPGR0PkRlc2NyaXB0aW9uOjwvZHQ+CgogICAgPGRkPgogICAgICA8cD5VbmUgcmVzc291cmNlIHBldXQgZXhpc3RlciBkYW5zIHBsdXNpZXVycyBy6XBlcnRvaXJlcywgZXQgbm91cwogICAgICB2b3Vsb25zIHJlY2hlcmNoZXIgY2V0dGUgcmVzc291cmNlIGRhbnMgY2VzIHLpcGVydG9pcmVzCiAgICAgIGxvcnNxdSdlbGxlIGZhaXQgbCdvYmpldCBkJ3VuZSByZXF16nRlLiBJbCBlc3QgcG9zc2libGUgcXVlIG5vdXMKICAgICAgYXlvbnMgculjZW1tZW50IHLpb3JnYW5pc+kgbGEgc3RydWN0dXJlIGRlIG5vdHJlIHNpdGUgZW4KICAgICAgculwYXJ0aXNzYW50IHNvbiBjb250ZW51IGRhbnMgcGx1c2lldXJzIHLpcGVydG9pcmVzLjwvcD4KICAgIDwvZGQ+CgogICAgPGR0PlNvbHV0aW9uIDo8L2R0PgoKICAgIDxkZD4KICAgICAgPHA+TGUgamV1IGRlIHLoZ2xlcyBzdWl2YW50IHJlY2hlcmNoZSBsYSByZXNzb3VyY2UgZGFucyBkZXV4CiAgICAgIHLpcGVydG9pcmVzLCBldCBzJ2lsIG5lIGxhIHRyb3V2ZSBkYW5zIGF1Y3VuIGRlcyBkZXV4LCBpbCB0ZW50ZXJhCiAgICAgIHNpbXBsZW1lbnQgZGUgbGEgc2VydmlyIOAgcGFydGlyIGRlIGwnYWRyZXNzZSBmb3VybmllIGRhbnMgbGEKICAgICAgcmVxdep0ZS48L3A+Cgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+UmV3cml0ZUVuZ2luZSBvbgoKIyAgIG9uIGNoZXJjaGUgdG91dCBkJ2Fib3JkIGRhbnMgZGlyMS8uLi4KIyAgIC4uLiBldCBzaSBvbiB0cm91dmUsIG9uIGVzdCBjb250ZW50IGV0IG9uIGFycup0ZSA6ClJld3JpdGVDb25kICAgICAgICAgIiV7RE9DVU1FTlRfUk9PVH0vPHN0cm9uZz5kaXIxPC9zdHJvbmc+LyV7UkVRVUVTVF9VUkl9IiAgLWYKUmV3cml0ZVJ1bGUgICJeKC4rKSIgICIle0RPQ1VNRU5UX1JPT1R9LzxzdHJvbmc+ZGlyMTwvc3Ryb25nPi8kMSIgIFtMXQoKIyAgIG9uIGNoZXJjaGUgZW5zdWl0ZSBkYW5zIGRpcjIvLi4uCiMgICAuLi4gZXQgc2kgb24gdHJvdXZlLCBvbiBlc3QgY29udGVudCBldCBvbiBhcnLqdGUgOgpSZXdyaXRlQ29uZCAgICAgICAgICIle0RPQ1VNRU5UX1JPT1R9LzxzdHJvbmc+ZGlyMjwvc3Ryb25nPi8le1JFUVVFU1RfVVJJfSIgIC1mClJld3JpdGVSdWxlICAiXiguKykiICAiJXtET0NVTUVOVF9ST09UfS88c3Ryb25nPmRpcjI8L3N0cm9uZz4vJDEiICBbTF0KCiMgICBzaW5vbiwgb24gY29udGludWUgbGEgcmVjaGVyY2hlIGF2ZWMgZCdhdXRyZXMgZGlyZWN0aXZlcyBBbGlhcwojICAgb3UgU2NyaXB0QWxpYXMsIGV0Yy4uLgpSZXdyaXRlUnVsZSAgICJeIiAgIi0iICBbUFRdPC9wcmU+CgogICAgICAgIDwvZGQ+CiAgICAgIDwvZGw+CgogICAgPC9kaXY+PGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0iYXJjaGl2ZS1hY2Nlc3MtbXVsdGlwbGV4ZXIiIGlkPSJhcmNoaXZlLWFjY2Vzcy1tdWx0aXBsZXhlciI+UmVkaXJlY3Rpb24gdmVycyBkZXMgc2VydmV1cnMgZ+lvZ3JhcGhpcXVlbWVudCBkaXN0cmlidelzPC9hPjwvaDI+CgogIAoKICA8ZGw+CiAgICA8ZHQ+RGVzY3JpcHRpb24gOjwvZHQ+CgogICAgPGRkPgogICAgPHA+Tm90cmUgc2l0ZSB3ZWIgcG9zc+hkZSBkZSBub21icmV1eCBtaXJvaXJzLCBldCBub3VzIHZvdWxvbnMKICAgIHJlZGlyaWdlciBsZXMgdXRpbGlzYXRldXJzIHZlcnMgY2VsdWkgcXVpIHNlIHNpdHVlIGRhbnMgbGUgcGF5cyBv+QogICAgaWxzIHNlIHRyb3V2ZW50LiA8L3A+CiAgICA8L2RkPgoKICAgIDxkdD5Tb2x1dGlvbiA6PC9kdD4KCiAgICA8ZGQ+CiAgICA8cD5FbiBjb25zdWx0YW50IGxlIG5vbSBkJ2j0dGUgZHUgY2xpZW50IGRlbWFuZGV1ciwgb24gZOl0ZXJtaW5lIGxlCiAgICBwYXlzIGRhbnMgbGVxdWVsIGlsIHNlIHRyb3V2ZS4gUydpbCBlc3QgaW1wb3NzaWJsZSBkJ2VmZmVjdHVlciB1bmUKICAgIHJlY2hlcmNoZSBzdXIgbGV1ciBhZHJlc3NlIElQLCBvbiBzZSByYWJhdCBzdXIgdW4gc2VydmV1ciBwYXIKICAgIGTpZmF1dC48L3A+CiAgICA8cD5Ob3VzIGFsbG9ucyB1dGlsaXNlciB1bmUgZGlyZWN0aXZlIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfcmV3cml0ZS5odG1sI3Jld3JpdGVtYXAiPlJld3JpdGVNYXA8L2E+PC9jb2RlPiBhZmluIGRlIGNvbnN0cnVpcmUgdW5lCiAgICBsaXN0ZSBkZXMgc2VydmV1cnMgcXVlIG5vdXMgdm91bG9ucyB1dGlsaXNlci48L3A+Cgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+SG9zdG5hbWVMb29rdXBzIG9uClJld3JpdGVFbmdpbmUgb24KUmV3cml0ZU1hcCAgICBtdWx0aXBsZXggICAgICAgICAidHh0Oi9wYXRoL3RvL21hcC5taXJyb3JzIgpSZXdyaXRlQ29uZCAgIiV7UkVNT1RFX0hPU1R9IiAgICAgIihbYS16XSspJCBbTkNdIgpSZXdyaXRlUnVsZSAgICJeLyguKikkIiAgIiR7bXVsdGlwbGV4OjxzdHJvbmc+JTE8L3N0cm9uZz58aHR0cDovL3d3dy5leGFtcGxlLmNvbS99JDEiICBbUixMXTwvcHJlPgoKCjxkaXYgY2xhc3M9ImV4YW1wbGUiPjxwPjxjb2RlPgojIyAgbGlzdGVfbWlyb2lycyAtLSBUYWJsZSBkZSBjb3JyZXNwb25kYW5jZSBwYXlzIC0gc2VydmV1cnM8YnIgLz4KPGJyIC8+CmRlICAgICAgICBodHRwOi8vd3d3LmV4ZW1wbGUuZGUvPGJyIC8+CnVrICAgICAgICBodHRwOi8vd3d3LmV4ZW1wbGUudWsvPGJyIC8+CmNvbSAgICAgICBodHRwOi8vd3d3LmV4YW1wbGUuY29tLzxiciAvPgojI0VPRiMjCjwvY29kZT48L3A+PC9kaXY+CiAgICA8L2RkPgoKICAgIDxkdD5EaXNjdXNzaW9uPC9kdD4KICAgIDxkZD4KICAgIDxkaXYgY2xhc3M9Indhcm5pbmciPkNlIGpldSBkZSBy6GdsZXMgbuljZXNzaXRlIGxhIGTpZmluaXRpb24g4AogICAgPGNvZGU+b248L2NvZGU+IGRlIGxhIGRpcmVjdGl2ZSA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuLi9tb2QvY29yZS5odG1sI2hvc3RuYW1lbG9va3VwcyI+SG9zdE5hbWVMb29rdXBzPC9hPjwvY29kZT4sIGNlIHF1aSBwZXV0IGluZHVpcmUgdW5lCiAgICBiYWlzc2UgZGUgcGVyZm9ybWFuY2Ugc2lnbmlmaWNhdGl2ZS48L2Rpdj4KCiAgICA8cD5MYSBkaXJlY3RpdmUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9yZXdyaXRlLmh0bWwjcmV3cml0ZWNvbmQiPlJld3JpdGVDb25kPC9hPjwvY29kZT4gZXh0cmFpdCBsYSBkZXJuaehyZQogICAgcGFydGllIGR1IG5vbSBkJ2j0dGUgZHUgY2xpZW50IGRlbWFuZGV1ciAtIGxlIGNvZGUgZHUgcGF5cyAtIGV0IGxhCiAgICBy6GdsZSBkZSBy6eljcml0dXJlIHF1aSBzdWl0IHV0aWxpc2UgY2V0dGUgdmFsZXVyIHBvdXIgcmVjaGVyY2hlciBsZQogICAgc2VydmV1ciBtaXJvaXIgYXBwcm9wcmnpIGRhbnMgbGUgZmljaGllciBkZSBjb3JyZXNwb25kYW5jZXMuPC9wPgogICAgPC9kZD4KICA8L2RsPgoKPC9kaXY+PGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0iYnJvd3Nlci1kZXBlbmRlbnQtY29udGVudCIgaWQ9ImJyb3dzZXItZGVwZW5kZW50LWNvbnRlbnQiPkNvbnRlbnUgZOlwZW5kYW50IGR1IG5hdmlnYXRldXI8L2E+PC9oMj4KCiAgICAgIAoKICAgICAgPGRsPgogICAgICAgIDxkdD5EZXNjcmlwdGlvbiA6PC9kdD4KCiAgICAgICAgPGRkPgogICAgICAgICAgPHA+Tm91cyB2b3Vsb25zIGZvdXJuaXIgZGVzIGNvbnRlbnVzIGRpZmbpcmVudHMgZW4gZm9uY3Rpb24gZHUKCSAgbmF2aWdhdGV1ciAodXNlci1hZ2VudCkgcXVpIGVmZmVjdHVlIGxhIHJlcXXqdGUuPC9wPgogICAgICAgIDwvZGQ+CgogICAgICAgIDxkdD5Tb2x1dGlvbiA6PC9kdD4KCiAgICAgICAgPGRkPgogICAgICAgICAgPHA+Tm91cyBkZXZvbnMgZOl0ZXJtaW5lciBxdWVsIGNvbnRlbnUgc2VydmlyLCBlbiBub3VzIGJhc2FudAoJICBzdXIgbCdlbi106nRlIEhUVFAgIlVzZXItQWdlbnQiLiBMYQoJICBjb25maWd1cmF0aW9uIHN1aXZhbnRlIGVmZmVjdHVlIGNlY2kgOiBzaSBsJ2VuLXTqdGUgSFRUUAoJICAiVXNlci1BZ2VudCIgY29tbWVuY2UgcGFyICJNb3ppbGxhLzMiLCBsZSBub20gZGUgbGEgcGFnZQoJICA8Y29kZT5mb28uaHRtbDwvY29kZT4gZXN0IHLp6WNyaXQgZW4gPGNvZGU+Zm9vLk5TLmh0bWw8L2NvZGU+CgkgIGV0IGxhIHLp6WNyaXR1cmUgcydhcnLqdGUuIFNpIGxlIG5hdmlnYXRldXIgZXN0ICJMeW54IiBvdQoJICAiTW96aWxsYSIgdmVyc2lvbiAxIG91IDIsIGwnVVJMIGRldmllbnQKCSAgPGNvZGU+Zm9vLjIwLmh0bWw8L2NvZGU+LiBUb3VzIGxlcyBhdXRyZXMgbmF2aWdhdGV1cnMKCSAgcmXnb2l2ZW50IGxhIHBhZ2UgPGNvZGU+Zm9vLjMyLmh0bWw8L2NvZGU+LiBUb3V0IGNlY2kgZXN0CgkgIGVmZmVjdHXpIHBhciBsZSBqZXUgZGUgcuhnbGVzIHN1aXZhbnQgOjwvcD4KPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPlJld3JpdGVDb25kICIle0hUVFBfVVNFUl9BR0VOVH0iICAiXjxzdHJvbmc+TW96aWxsYS8zPC9zdHJvbmc+LioiClJld3JpdGVSdWxlICJeZm9vXC5odG1sJCIgICAgICAgICAiZm9vLjxzdHJvbmc+TlM8L3N0cm9uZz4uaHRtbCIgICAgICAgICAgWzxzdHJvbmc+TDwvc3Ryb25nPl0KClJld3JpdGVDb25kICIle0hUVFBfVVNFUl9BR0VOVH0iICAiXkx5bngvIiBbT1JdClJld3JpdGVDb25kICIle0hUVFBfVVNFUl9BR0VOVH0iICAiXk1vemlsbGEvWzEyXSIKUmV3cml0ZVJ1bGUgIl5mb29cLmh0bWwkIiAgICAgICAgICJmb28uPHN0cm9uZz4yMDwvc3Ryb25nPi5odG1sIiAgICAgICAgICBbPHN0cm9uZz5MPC9zdHJvbmc+XQoKUmV3cml0ZVJ1bGUgIl5mb29cLmh0bWwkIiAgICAgICAgICJmb28uPHN0cm9uZz4zMjwvc3Ryb25nPi5odG1sIiAgICAgICAgICBbPHN0cm9uZz5MPC9zdHJvbmc+XTwvcHJlPgoKICAgICAgICA8L2RkPgogICAgICA8L2RsPgoKICAgIDwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4uL2ltYWdlcy91cC5naWYiIC8+PC9hPjwvZGl2Pgo8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KPGgyPjxhIG5hbWU9ImNhbm9uaWNhbHVybCIgaWQ9ImNhbm9uaWNhbHVybCI+VVJMcyBjYW5vbmlxdWVzPC9hPjwvaDI+CgoKCjxkbD4KIDxkdD5EZXNjcmlwdGlvbiA6PC9kdD4KCiAgIDxkZD4KICAgICA8cD5TdXIgY2VydGFpbnMgc2VydmV1cnMsIHVuZSByZXNzb3VyY2UgcGV1dCBwb3Nz6WRlciBwbHVzaWV1cnMKICAgICBVUkxzLiBJbCB5IGEgZW4gZ+lu6XJhbCBsZXMgVVJMcyBjYW5vbmlxdWVzIChjZWxsZXMgcXVpIHNvbnQKICAgICBy6WVsbGVtZW50IGRpc3RyaWJ16WVzIGV0IHV0aWxpc+llcyksIGV0IGNlbGxlcyBxdWkgY29ycmVzcG9uZGVudCDgCiAgICAgZGVzIHJhY2NvdXJjaXMsIGxlcyBVUkxzIGludGVybmVzLCBldGMuLi4gUXVlbGxlIHF1ZSBzb2l0IGwnYWRyZXNzZQogICAgIHF1ZSBsJ3V0aWxpc2F0ZXVyIGZvdXJuaXQgZGFucyBsYSByZXF16nRlLCBpbCBkZXZyYWl0IGZpbmFsZW1lbnQKICAgICB2b2lyIGwnVVJMIGNhbm9uaXF1ZSBkYW5zIGxhIGJhcnJlIGQnYWRyZXNzZSBkZSBzb24gbmF2aWdhdGV1ci48L3A+CiAgIDwvZGQ+CgogICA8ZHQ+U29sdXRpb24gOjwvZHQ+CgogICAgIDxkZD4KICAgICAgIDxwPk5vdXMgZWZmZWN0dW9ucyB1bmUgcmVkaXJlY3Rpb24gSFRUUCBleHRlcm5lIHBvdXIgdG91dGVzIGxlcwogICAgICAgVVJMcyBub24gY2Fub25pcXVlcyBhZmluIGRlIGxlcyBjb3JyaWdlciBkYW5zIGxhIGJhcnJlIGQnYWRyZXNzZQogICAgICAgZHUgbmF2aWdhdGV1ciwgZXQgY2VjaSBwb3VyIHRvdXRlcyBsZXMgcmVxdep0ZXMgZnV0dXJlcy4gRGFucyBsZQogICAgICAgamV1IGRlIHLoZ2xlcyBzdWl2YW50LCBub3VzIHJlbXBsYedvbnMgPGNvZGU+L21hdG91czwvY29kZT4gZXQKICAgICAgIDxjb2RlPi9taW5ldHRlczwvY29kZT4gcGFyIGxlIGNhbm9uaXF1ZSA8Y29kZT4vY2hhdHM8L2NvZGU+LjwvcD4KCgk8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+UmV3cml0ZVJ1bGUgICAiXi8obWF0b3VzfG1pbmV0dGVzKS8oLiopIiAgICAiL2NoYXRzLyQyIiAgW1JdPC9wcmU+CgogICAgICAgIDwvZGQ+CgogICAgIDxkdD5EaXNjdXNzaW9uIDo8L2R0PgogICAgIDxkZD5PbiBzZXJhaXQgbWlldXggaW5zcGly6SBkJ3V0aWxpc2VyIGljaSBsZXMgZGlyZWN0aXZlcyBSZWRpcmVjdCBvdQogICAgIFJlZGlyZWN0TWF0Y2ggOgoKICAgICA8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+UmVkaXJlY3RNYXRjaCAiXi8obWF0b3VzfG1pbmV0dGVzKS8oLiopIiAiL2NoYXRzLyQyIjwvcHJlPgoKICAgICA8L2RkPgogICAgICA8L2RsPgoKPC9kaXY+PGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0ibW92ZWRkb2Nyb290IiBpZD0ibW92ZWRkb2Nyb290Ij5E6XBsYWNlbWVudCBkdSBy6XBlcnRvaXJlIDxjb2RlPkRvY3VtZW50Um9vdDwvY29kZT48L2E+PC9oMj4KCiAgCgogIDxkbD4KICAgIDxkdD5EZXNjcmlwdGlvbiA6PC9kdD4KCiAgICA8ZGQ+CjxwPkVuIGfpbulyYWwsIGxlIHLpcGVydG9pcmUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi4vbW9kL2NvcmUuaHRtbCNkb2N1bWVudHJvb3QiPkRvY3VtZW50Um9vdDwvYT48L2NvZGU+IGR1IHNlcnZldXIgd2ViIGNvcnJlc3BvbmQg4CBsJ1VSTAoiPGNvZGU+LzwvY29kZT4iLiBDZSBy6XBlcnRvaXJlIG5lIGNvbnRpZW50IGNlcGVuZGFudCBwYXMgZm9yY+ltZW50IGRlcwpyZXNzb3VyY2VzIGRlIHByZW1p6HJlIGltcG9ydGFuY2UgcG91ciBsJ3V0aWxpc2F0ZXVyLiBQYXIgZXhlbXBsZSwgdm91cwpwculm6XJlcmV6IHBldXQt6nRyZSBxdWUgbGUgculwZXJ0b2lyZSBkJ2FjY3VlaWwgZCd1biB2aXNpdGV1ciBhY2PpZGFudApwb3VyIGxhIHByZW1p6HJlIGZvaXMg4CB2b3RyZSBzaXRlIHNvaXQgdW4gculwZXJ0b2lyZSBwYXJ0aWN1bGllcgo8Y29kZT4vYS1wcm9wb3MtZGUvPC9jb2RlPi4gUG91ciB5IHBhcnZlbmlyLCB1dGlsaXNleiBsZSBqZXUgZGUgcuhnbGVzCnN1aXZhbnQgOjwvcD4KPC9kZD4KCiAgICA8ZHQ+U29sdXRpb24gOjwvZHQ+CgogICAgPGRkPgogICAgICA8cD5PbiByZWRpcmlnZSBsJ1VSTCA8Y29kZT4vPC9jb2RlPiB2ZXJzCiAgICAgIDxjb2RlPi9hLXByb3Bvcy1kZS88L2NvZGU+IDoKICAgICAgPC9wPgoKPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPlJld3JpdGVFbmdpbmUgb24KUmV3cml0ZVJ1bGUgICAiXi8kIiAgIi9hLXByb3Bvcy1kZS8iICBbPHN0cm9uZz5SPC9zdHJvbmc+XTwvcHJlPgoKCjxwPk5vdGV6IHF1ZSBsJ29uIHBldXQgYXVzc2kgeSBwYXJ2ZW5pciBlbiB1dGlsaXNhbnQgbGEgZGlyZWN0aXZlCjxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfYWxpYXMuaHRtbCNyZWRpcmVjdG1hdGNoIj5SZWRpcmVjdE1hdGNoPC9hPjwvY29kZT4gOjwvcD4KCjxwcmUgY2xhc3M9InByZXR0eXByaW50IGxhbmctY29uZmlnIj5SZWRpcmVjdE1hdGNoICJeLyQiICJodHRwOi8vZXhhbXBsZS5jb20vYS1wcm9wb3MtZGUvIjwvcHJlPgoKCjxwPk5vdGV6IGF1c3NpIHF1ZSBjZXQgZXhlbXBsZSBuZSBy6eljcml0IHF1ZSBsJ1VSTCByYWNpbmUuIEVuIGQnYXV0cmVzCnRlcm1lcywgaWwgcunpY3JpdCB1bmUgcmVxdep0ZSBwb3VyIDxjb2RlPmh0dHA6Ly9leGFtcGxlLmNvbS88L2NvZGU+LAptYWlzIHBhcyBwb3VyIHVuZSByZXF16nRlIDxjb2RlPmh0dHA6Ly9leGFtcGxlLmNvbS9wYWdlLmh0bWw8L2NvZGU+LiBTaQp2b3VzIGF2ZXogZWZmZWN0aXZlbWVudCBtb2RpZmnpIGxhIHJhY2luZSBkZSB2b3MgZG9jdW1lbnRzIC0gYydlc3Qg4CBkaXJlCnNpIDxzdHJvbmc+dG91czwvc3Ryb25nPiB2b3MgY29udGVudXMgc2UgdHJvdXZlbnQgZGFucyB1bgpzb3VzLXLpcGVydG9pcmUsIGlsIGVzdCBsYXJnZW1lbnQgcHLpZulyYWJsZSBkZSBtb2RpZmllciBzaW1wbGVtZW50CnZvdHJlIGRpcmVjdGl2ZSA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuLi9tb2QvY29yZS5odG1sI2RvY3VtZW50cm9vdCI+RG9jdW1lbnRSb290PC9hPjwvY29kZT4sIG91IGRlCmTpcGxhY2VyIGwnZW5zZW1ibGUgZHUgY29udGVudSB2ZXJzIGxlIHLpcGVydG9pcmUgc3Vw6XJpZXVyLCBwbHV09HQgcXVlCmRlIHLp6WNyaXJlIGxlcyBVUkxzLjwvcD4KPC9kZD4KPC9kbD4KCjwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4uL2ltYWdlcy91cC5naWYiIC8+PC9hPjwvZGl2Pgo8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KPGgyPjxhIG5hbWU9ImZhbGxiYWNrLXJlc291cmNlIiBpZD0iZmFsbGJhY2stcmVzb3VyY2UiPlJlc3NvdXJjZSBwYXIgZOlmYXV0PC9hPjwvaDI+CgoKPGRsPgo8ZHQ+RGVzY3JpcHRpb24gOjwvZHQ+CjxkZD5Wb3VzIHZvdWxleiBxdSd1bmUgc2V1bGUgcmVzc291cmNlIChkaXNvbnMgdW4gY2VydGFpbiBmaWNoaWVyIHRlbApxdWUgaW5kZXgucGhwKSBzb2l0IHNlcnZpZSBwb3VyIHRvdXRlcyBsZXMgcmVxdep0ZXMg4CBkZXN0aW5hdGlvbiBkJ3VuCmNlcnRhaW4gculwZXJ0b2lyZSwgc2F1ZiBwb3VyIGNlbGxlcyBxdWkgY29uY2VybmVudCB1bmUgcmVzc291cmNlCmV4aXN0YW50IGVmZmVjdGl2ZW1lbnQgY29tbWUgdW5lIGltYWdlLCBvdSB1biBmaWNoaWVyIGNzcy48L2RkPgoKPGR0PlNvbHV0aW9uIDo8L2R0Pgo8ZGQ+CjxwPkRlcHVpcyBsYSB2ZXJzaW9uIDIuMi4xNiwgdm91cyBwb3V2ZXogeSBwYXJ2ZW5pciB2aWEgbGEgZGlyZWN0aXZlCjxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfZGlyLmh0bWwjZmFsbGJhY2tyZXNvdXJjZSI+RmFsbGJhY2tSZXNvdXJjZTwvYT48L2NvZGU+IDo8L3A+Cgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+Jmx0O0RpcmVjdG9yeSAiL3Zhci93d3cvbXlfYmxvZyImZ3Q7CiAgRmFsbGJhY2tSZXNvdXJjZSAiaW5kZXgucGhwIgombHQ7L0RpcmVjdG9yeSZndDs8L3ByZT4KCgo8cD5DZXBlbmRhbnQsIHNpIHZvcyBiZXNvaW5zIOl0YWllbnQgcGx1cyBjb21wbGV4ZXMsIHZvdXMgcG91dmlleiwgZGFucwpsZXMgdmVyc2lvbnMgcGx1cyBhbmNpZW5uZXMgZCdBcGFjaGUsIHV0aWxpc2VyIHVuIGpldSBkZSBy6GdsZXMgZHUgc3R5bGUKOjwvcD4KCjxwcmUgY2xhc3M9InByZXR0eXByaW50IGxhbmctY29uZmlnIj4mbHQ7RGlyZWN0b3J5ICIvdmFyL3d3dy9teV9ibG9nIiZndDsKICBSZXdyaXRlQmFzZSAiL215X2Jsb2ciCgogIFJld3JpdGVDb25kICIvdmFyL3d3dy9teV9ibG9nLyV7UkVRVUVTVF9GSUxFTkFNRX0iICEtZgogIFJld3JpdGVDb25kICIvdmFyL3d3dy9teV9ibG9nLyV7UkVRVUVTVF9GSUxFTkFNRX0iICEtZAogIFJld3JpdGVSdWxlICJeIiAiaW5kZXgucGhwIiBbUFRdCiZsdDsvRGlyZWN0b3J5Jmd0OzwvcHJlPgoKCjxwPkQnYXV0cmUgcGFydCwgc2kgdm91cyB2b3VsZXogdHJhbnNtZXR0cmUgbCdVUkkgZGUgbGEgcmVxdep0ZSBlbiB0YW50CnF1ZSBjaGHubmUgZGUgcGFyYW3odHJlcyDgIGluZGV4LnBocCwgdm91cyBwb3V2ZXogcmVtcGxhY2VyIGNldHRlIHLoZ2xlCmRlIHLp6WNyaXR1cmUgcGFyIDo8L3A+Cgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+UmV3cml0ZVJ1bGUgIiguKikiICJpbmRleC5waHA/JDEiIFtQVCxRU0FdPC9wcmU+CgoKPHA+Tm90ZXogcXVlIGwnb24gcGV1dCB1dGlsaXNlciBjZXMgamV1eCBkZSBy6GdsZXMgYXVzc2kgYmllbiBkYW5zIHVuCmZpY2hpZXIgPGNvZGU+Lmh0YWNjZXNzPC9jb2RlPiBxdWUgZGFucyB1bmUgc2VjdGlvbgombHQ7RGlyZWN0b3J5Jmd0Oy48L3A+Cgo8L2RkPgoKPC9kbD4KCjwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4uL2ltYWdlcy91cC5naWYiIC8+PC9hPjwvZGl2Pgo8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KPGgyPjxhIG5hbWU9InJld3JpdGUtcXVlcnkiIGlkPSJyZXdyaXRlLXF1ZXJ5Ij5SZXdyaXRlIHF1ZXJ5IHN0cmluZzwvYT48L2gyPgoKCjxkbD4KPGR0PkRlc2NyaXB0aW9uIDo8L2R0Pgo8ZGQ+Vm91cyB2b3VsZXogZXh0cmFpcmUgdW5lIHZhbGV1ciBwYXJ0aWN1bGnocmUgZCd1bmUgY2hh7m5lIGRlCnBhcmFt6HRyZXMgZCd1bmUgVVJMLCBldCBzb2l0IGxhIHJlbXBsYWNlciwgc29pdCBsJ2luY29ycG9yZXIgZGFucyB1bgphdXRyZSBjb21wb3NhbnQgZGUgbCdVUkwuPC9kZD4KCjxkdD5Tb2x1dGlvbnMgOjwvZHQ+CjxkZD4KPHA+RGFucyBsYSBwbHVwYXJ0IGRlcyBzb2x1dGlvbnMgZGUgY2V0dGUgc2VjdGlvbiwgb24gdXRpbGlzZSBsYSBt6m1lCmNvbmRpdGlvbiBxdWkgc3RvY2tlIGxhIHZhbGV1ciByZWNoZXJjaOllIGRhbnMgbGEgculm6XJlbmNlIGFycmnocmUgJTIuCiUxIGVzdCBsZSBk6WJ1dCBkZSBsYSByZXF16nRlLCBldCAlMyBjZSBxdWkgcmVzdGUuIENldHRlIGNvbmRpdGlvbiBlc3QKdW4gcGV1IGNvbXBsZXhlIGNhciBlbGxlIGludHJvZHVpdCBkZSBsYSBmbGV4aWJpbGl06SBldCDpdml0ZSBsZXMKZG91YmxlcyBwZXJsdWV0dGVzICcmYW1wOyZhbXA7JyBkYW5zIGxlcyBzdWJzdGl0dXRpb25zLjwvcD4KPHVsPgogIDxsaT5DZXR0ZSBzb2x1dGlvbiBzdXBwcmltZSBsZSBjb3VwbGUgY2zpL3ZhbGV1ciByZWNoZXJjaOkgOgoKPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPiMgUmVtb3ZlIG15a2V5PT8/PwpSZXdyaXRlQ29uZCAiJXtRVUVSWV9TVFJJTkd9IiAiKC4qKD86XnwmYW1wOykpbXlrZXk9KFteJmFtcDtdKikmYW1wOz8oLiopJmFtcDs/JCIKUmV3cml0ZVJ1bGUgIiguKikiICIkMT8lMSUzIjwvcHJlPgoKICA8L2xpPgoKICA8bGk+Q2V0dGUgc29sdXRpb24gcmVtcGxhY2UgbGEgcGFydGllIGRlIGwnVVJMIHF1aSBzdWl0IGxhIHZhbGV1cgogIHJlY2hlcmNo6WUgcGFyIHVuICc/JyA6Cgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+IyBDb3B5IGZyb20gcXVlcnkgc3RyaW5nIHRvIFBBVEhfSU5GTwpSZXdyaXRlQ29uZCAiJXtRVUVSWV9TVFJJTkd9IiAiKC4qKD86XnwmYW1wOykpbXlrZXk9KFteJmFtcDtdKikmYW1wOz8oLiopJmFtcDs/JCIKUmV3cml0ZVJ1bGUgIiguKikiICIkMS9wcm9kdWN0cy8lMi8/IiBbUFRdPC9wcmU+CgogIDwvbGk+CgogIDxsaT5DZXR0ZSBzb2x1dGlvbiB1dGlsaXNlIGxhIHZhbGV1ciByZWNoZXJjaOllIGRhbnMgdW5lIGRldXhp6G1lCiAgY29uZGl0aW9uIDo6Cgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+IyBDYXB0dXJlIHRoZSB2YWx1ZSBvZiBteWtleSBpbiB0aGUgcXVlcnkgc3RyaW5nClJld3JpdGVDb25kICIle1FVRVJZX1NUUklOR30iICIoLiooPzpefCZhbXA7KSlteWtleT0oW14mYW1wO10qKSZhbXA7PyguKikmYW1wOz8kIiIKUmV3cml0ZUNvbmQgIiUyIiAhPW5vdC1zby1zZWNyZXQtdmFsdWUgClJld3JpdGVSdWxlICIoLiopIiAtIFtGXTwvcHJlPgoKICA8L2xpPgoKICA8bGk+Q2V0dGUgc29sdXRpb24gcHJvZHVpdCBsJ2VmZmV0IGludmVyc2UgZGVzIHBy6WPpZGVudGVzIDsgZWxsZQogIGNvcGllIGRlcyBjb21wb3NhbnRlcyBkdSBjaGVtaW4gKHBldXQt6nRyZSBQQVRIX0lORk8pIGRlcHVpcyBsJ1VSTAogIHZlcnMgc2EgY2hh7m5lIGRlIHBhcmFt6HRyZXMgOgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+IyBUaGUgZGVzaXJlZCBVUkwgbWlnaHQgYmUgL3Byb2R1Y3RzL2tpdGNoZW4tc2luaywgYW5kIHRoZSBzY3JpcHQgZXhwZWN0cyAKIyAvcGF0aD9wcm9kdWN0cz1raXRjaGVuLXNpbmsuClJld3JpdGVSdWxlICJeLz9wYXRoLyhbXi9dKykvKFteL10rKSIgIi9wYXRoPyQxPSQyIiBbUFRdPC9wcmU+CgogIDwvbGk+CjwvdWw+Cgo8L2RkPgoKPC9kbD4KPC9kaXY+PC9kaXY+CjxkaXYgY2xhc3M9ImJvdHRvbWxhbmciPgo8cD48c3Bhbj5MYW5ndWVzIERpc3BvbmlibGVzOiA8L3NwYW4+PGEgaHJlZj0iLi4vZW4vcmV3cml0ZS9yZW1hcHBpbmcuaHRtbCIgaHJlZmxhbmc9ImVuIiByZWw9ImFsdGVybmF0ZSIgdGl0bGU9IkVuZ2xpc2giPiZuYnNwO2VuJm5ic3A7PC9hPiB8CjxhIGhyZWY9Ii4uL2ZyL3Jld3JpdGUvcmVtYXBwaW5nLmh0bWwiIHRpdGxlPSJGcmFu52FpcyI+Jm5ic3A7ZnImbmJzcDs8L2E+PC9wPgo8L2Rpdj48ZGl2IGNsYXNzPSJ0b3AiPjxhIGhyZWY9IiNwYWdlLWhlYWRlciI+PGltZyBzcmM9Ii4uL2ltYWdlcy91cC5naWYiIGFsdD0idG9wIiAvPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJzZWN0aW9uIj48aDI+PGEgaWQ9ImNvbW1lbnRzX3NlY3Rpb24iIG5hbWU9ImNvbW1lbnRzX3NlY3Rpb24iPkNvbW1lbnRhaXJlczwvYT48L2gyPjxkaXYgY2xhc3M9Indhcm5pbmciPjxzdHJvbmc+Tm90aWNlOjwvc3Ryb25nPjxiciAvPlRoaXMgaXMgbm90IGEgUSZhbXA7QSBzZWN0aW9uLiBDb21tZW50cyBwbGFjZWQgaGVyZSBzaG91bGQgYmUgcG9pbnRlZCB0b3dhcmRzIHN1Z2dlc3Rpb25zIG9uIGltcHJvdmluZyB0aGUgZG9jdW1lbnRhdGlvbiBvciBzZXJ2ZXIsIGFuZCBtYXkgYmUgcmVtb3ZlZCBhZ2FpbiBieSBvdXIgbW9kZXJhdG9ycyBpZiB0aGV5IGFyZSBlaXRoZXIgaW1wbGVtZW50ZWQgb3IgY29uc2lkZXJlZCBpbnZhbGlkL29mZi10b3BpYy4gUXVlc3Rpb25zIG9uIGhvdyB0byBtYW5hZ2UgdGhlIEFwYWNoZSBIVFRQIFNlcnZlciBzaG91bGQgYmUgZGlyZWN0ZWQgYXQgZWl0aGVyIG91ciBJUkMgY2hhbm5lbCwgI2h0dHBkLCBvbiBGcmVlbm9kZSwgb3Igc2VudCB0byBvdXIgPGEgaHJlZj0iaHR0cDovL2h0dHBkLmFwYWNoZS5vcmcvbGlzdHMuaHRtbCI+bWFpbGluZyBsaXN0czwvYT4uPC9kaXY+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48IS0tLy8tLT48IVtDREFUQVsvLz48IS0tCnZhciBjb21tZW50c19zaG9ydG5hbWUgPSAnaHR0cGQnOwp2YXIgY29tbWVudHNfaWRlbnRpZmllciA9ICdodHRwOi8vaHR0cGQuYXBhY2hlLm9yZy9kb2NzLzIuNC9yZXdyaXRlL3JlbWFwcGluZy5odG1sJzsKKGZ1bmN0aW9uKHcsIGQpIHsKICAgIGlmICh3LmxvY2F0aW9uLmhvc3RuYW1lLnRvTG93ZXJDYXNlKCkgPT0gImh0dHBkLmFwYWNoZS5vcmciKSB7CiAgICAgICAgZC53cml0ZSgnPGRpdiBpZD0iY29tbWVudHNfdGhyZWFkIj48XC9kaXY+Jyk7CiAgICAgICAgdmFyIHMgPSBkLmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOwogICAgICAgIHMudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnOwogICAgICAgIHMuYXN5bmMgPSB0cnVlOwogICAgICAgIHMuc3JjID0gJ2h0dHBzOi8vY29tbWVudHMuYXBhY2hlLm9yZy9zaG93X2NvbW1lbnRzLmx1YT9zaXRlPScgKyBjb21tZW50c19zaG9ydG5hbWUgKyAnJnBhZ2U9JyArIGNvbW1lbnRzX2lkZW50aWZpZXI7CiAgICAgICAgKGQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXSB8fCBkLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF0pLmFwcGVuZENoaWxkKHMpOwogICAgfQogICAgZWxzZSB7IAogICAgICAgIGQud3JpdGUoJzxkaXYgaWQ9ImNvbW1lbnRzX3RocmVhZCI+Q29tbWVudHMgYXJlIGRpc2FibGVkIGZvciB0aGlzIHBhZ2UgYXQgdGhlIG1vbWVudC48XC9kaXY+Jyk7CiAgICB9Cn0pKHdpbmRvdywgZG9jdW1lbnQpOwovLy0tPjwhXV0+PC9zY3JpcHQ+PC9kaXY+PGRpdiBpZD0iZm9vdGVyIj4KPHAgY2xhc3M9ImFwYWNoZSI+Q29weXJpZ2h0IDIwMTggVGhlIEFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLjxiciAvPkF1dG9yaXPpIHNvdXMgPGEgaHJlZj0iaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wIj5BcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjA8L2E+LjwvcD4KPHAgY2xhc3M9Im1lbnUiPjxhIGhyZWY9Ii4uL21vZC8iPk1vZHVsZXM8L2E+IHwgPGEgaHJlZj0iLi4vbW9kL2RpcmVjdGl2ZXMuaHRtbCI+RGlyZWN0aXZlczwvYT4gfCA8YSBocmVmPSJodHRwOi8vd2lraS5hcGFjaGUub3JnL2h0dHBkL0ZBUSI+RkFRPC9hPiB8IDxhIGhyZWY9Ii4uL2dsb3NzYXJ5Lmh0bWwiPkdsb3NzYWlyZTwvYT4gfCA8YSBocmVmPSIuLi9zaXRlbWFwLmh0bWwiPlBsYW4gZHUgc2l0ZTwvYT48L3A+PC9kaXY+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwhLS0vLy0tPjwhW0NEQVRBWy8vPjwhLS0KaWYgKHR5cGVvZihwcmV0dHlQcmludCkgIT09ICd1bmRlZmluZWQnKSB7CiAgICBwcmV0dHlQcmludCgpOwp9Ci8vLS0+PCFdXT48L3NjcmlwdD4KPC9ib2R5PjwvaHRtbD4=