PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iSVNPLTg4NTktMSI/Pgo8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBTdHJpY3QvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+CjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBsYW5nPSJlbiIgeG1sOmxhbmc9ImVuIj48aGVhZD4KPG1ldGEgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgLz4KPCEtLQogICAgICAgIFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYCiAgICAgICAgICAgICAgVGhpcyBmaWxlIGlzIGdlbmVyYXRlZCBmcm9tIHhtbCBzb3VyY2U6IERPIE5PVCBFRElUCiAgICAgICAgWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFgKICAgICAgLS0+Cjx0aXRsZT5tb2RfYXV0aG5fZGJkIC0gQXBhY2hlIEhUVFAgU2VydmVyIFZlcnNpb24gMi40PC90aXRsZT4KPGxpbmsgaHJlZj0iLi4vc3R5bGUvY3NzL21hbnVhbC5jc3MiIHJlbD0ic3R5bGVzaGVldCIgbWVkaWE9ImFsbCIgdHlwZT0idGV4dC9jc3MiIHRpdGxlPSJNYWluIHN0eWxlc2hlZXQiIC8+CjxsaW5rIGhyZWY9Ii4uL3N0eWxlL2Nzcy9tYW51YWwtbG9vc2UtMTAwcGMuY3NzIiByZWw9ImFsdGVybmF0ZSBzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIiB0eXBlPSJ0ZXh0L2NzcyIgdGl0bGU9Ik5vIFNpZGViYXIgLSBEZWZhdWx0IGZvbnQgc2l6ZSIgLz4KPGxpbmsgaHJlZj0iLi4vc3R5bGUvY3NzL21hbnVhbC1wcmludC5jc3MiIHJlbD0ic3R5bGVzaGVldCIgbWVkaWE9InByaW50IiB0eXBlPSJ0ZXh0L2NzcyIgLz48bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSIuLi9zdHlsZS9jc3MvcHJldHRpZnkuY3NzIiAvPgo8c2NyaXB0IHNyYz0iLi4vc3R5bGUvc2NyaXB0cy9wcmV0dGlmeS5taW4uanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cjwvc2NyaXB0PgoKPGxpbmsgaHJlZj0iLi4vaW1hZ2VzL2Zhdmljb24uaWNvIiByZWw9InNob3J0Y3V0IGljb24iIC8+PC9oZWFkPgo8Ym9keT4KPGRpdiBpZD0icGFnZS1oZWFkZXIiPgo8cCBjbGFzcz0ibWVudSI+PGEgaHJlZj0iLi4vbW9kLyI+TW9kdWxlczwvYT4gfCA8YSBocmVmPSIuLi9tb2QvZGlyZWN0aXZlcy5odG1sIj5EaXJlY3RpdmVzPC9hPiB8IDxhIGhyZWY9Imh0dHA6Ly93aWtpLmFwYWNoZS5vcmcvaHR0cGQvRkFRIj5GQVE8L2E+IHwgPGEgaHJlZj0iLi4vZ2xvc3NhcnkuaHRtbCI+R2xvc3Nhcnk8L2E+IHwgPGEgaHJlZj0iLi4vc2l0ZW1hcC5odG1sIj5TaXRlbWFwPC9hPjwvcD4KPHAgY2xhc3M9ImFwYWNoZSI+QXBhY2hlIEhUVFAgU2VydmVyIFZlcnNpb24gMi40PC9wPgo8aW1nIGFsdD0iIiBzcmM9Ii4uL2ltYWdlcy9mZWF0aGVyLnBuZyIgLz48L2Rpdj4KPGRpdiBjbGFzcz0idXAiPjxhIGhyZWY9Ii4vIj48aW1nIHRpdGxlPSImbHQ7LSIgYWx0PSImbHQ7LSIgc3JjPSIuLi9pbWFnZXMvbGVmdC5naWYiIC8+PC9hPjwvZGl2Pgo8ZGl2IGlkPSJwYXRoIj4KPGEgaHJlZj0iaHR0cDovL3d3dy5hcGFjaGUub3JnLyI+QXBhY2hlPC9hPiAmZ3Q7IDxhIGhyZWY9Imh0dHA6Ly9odHRwZC5hcGFjaGUub3JnLyI+SFRUUCBTZXJ2ZXI8L2E+ICZndDsgPGEgaHJlZj0iaHR0cDovL2h0dHBkLmFwYWNoZS5vcmcvZG9jcy8iPkRvY3VtZW50YXRpb248L2E+ICZndDsgPGEgaHJlZj0iLi4vIj5WZXJzaW9uIDIuNDwvYT4gJmd0OyA8YSBocmVmPSIuLyI+TW9kdWxlczwvYT48L2Rpdj4KPGRpdiBpZD0icGFnZS1jb250ZW50Ij4KPGRpdiBpZD0icHJlYW1ibGUiPjxoMT5BcGFjaGUgTW9kdWxlIG1vZF9hdXRobl9kYmQ8L2gxPgo8ZGl2IGNsYXNzPSJ0b3BsYW5nIj4KPHA+PHNwYW4+QXZhaWxhYmxlIExhbmd1YWdlczogPC9zcGFuPjxhIGhyZWY9Ii4uL2VuL21vZC9tb2RfYXV0aG5fZGJkLmh0bWwiIHRpdGxlPSJFbmdsaXNoIj4mbmJzcDtlbiZuYnNwOzwvYT4gfAo8YSBocmVmPSIuLi9mci9tb2QvbW9kX2F1dGhuX2RiZC5odG1sIiBocmVmbGFuZz0iZnIiIHJlbD0iYWx0ZXJuYXRlIiB0aXRsZT0iRnJhbudhaXMiPiZuYnNwO2ZyJm5ic3A7PC9hPjwvcD4KPC9kaXY+Cjx0YWJsZSBjbGFzcz0ibW9kdWxlIj48dHI+PHRoPjxhIGhyZWY9Im1vZHVsZS1kaWN0Lmh0bWwjRGVzY3JpcHRpb24iPkRlc2NyaXB0aW9uOjwvYT48L3RoPjx0ZD5Vc2VyIGF1dGhlbnRpY2F0aW9uIHVzaW5nIGFuIFNRTCBkYXRhYmFzZTwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJtb2R1bGUtZGljdC5odG1sI1N0YXR1cyI+U3RhdHVzOjwvYT48L3RoPjx0ZD5FeHRlbnNpb248L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0ibW9kdWxlLWRpY3QuaHRtbCNNb2R1bGVJZGVudGlmaWVyIj5Nb2R1bGWgSWRlbnRpZmllcjo8L2E+PC90aD48dGQ+YXV0aG5fZGJkX21vZHVsZTwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJtb2R1bGUtZGljdC5odG1sI1NvdXJjZUZpbGUiPlNvdXJjZaBGaWxlOjwvYT48L3RoPjx0ZD5tb2RfYXV0aG5fZGJkLmM8L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0ibW9kdWxlLWRpY3QuaHRtbCNDb21wYXRpYmlsaXR5Ij5Db21wYXRpYmlsaXR5OjwvYT48L3RoPjx0ZD5BdmFpbGFibGUgaW4gQXBhY2hlIDIuMSBhbmQgbGF0ZXI8L3RkPjwvdHI+PC90YWJsZT4KPGgzPlN1bW1hcnk8L2gzPgoKICAgIDxwPlRoaXMgbW9kdWxlIHByb3ZpZGVzIGF1dGhlbnRpY2F0aW9uIGZyb250LWVuZHMgc3VjaCBhcwogICAgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRoX2RpZ2VzdC5odG1sIj5tb2RfYXV0aF9kaWdlc3Q8L2E+PC9jb2RlPiBhbmQgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRoX2Jhc2ljLmh0bWwiPm1vZF9hdXRoX2Jhc2ljPC9hPjwvY29kZT4KICAgIHRvIGF1dGhlbnRpY2F0ZSB1c2VycyBieSBsb29raW5nIHVwIHVzZXJzIGluIFNRTCB0YWJsZXMuCiAgICBTaW1pbGFyIGZ1bmN0aW9uYWxpdHkgaXMgcHJvdmlkZWQgYnksIGZvciBleGFtcGxlLAogICAgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRobl9maWxlLmh0bWwiPm1vZF9hdXRobl9maWxlPC9hPjwvY29kZT4uPC9wPgogICAgPHA+VGhpcyBtb2R1bGUgcmVsaWVzIG9uIDxjb2RlIGNsYXNzPSJtb2R1bGUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfZGJkLmh0bWwiPm1vZF9kYmQ8L2E+PC9jb2RlPiB0byBzcGVjaWZ5CiAgICB0aGUgYmFja2VuZCBkYXRhYmFzZSBkcml2ZXIgYW5kIGNvbm5lY3Rpb24gcGFyYW1ldGVycywgYW5kCiAgICBtYW5hZ2UgdGhlIGRhdGFiYXNlIGNvbm5lY3Rpb25zLjwvcD4KCiAgICA8cD5XaGVuIHVzaW5nIDxjb2RlIGNsYXNzPSJtb2R1bGUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfYXV0aF9iYXNpYy5odG1sIj5tb2RfYXV0aF9iYXNpYzwvYT48L2NvZGU+IG9yCiAgICA8Y29kZSBjbGFzcz0ibW9kdWxlIj48YSBocmVmPSIuLi9tb2QvbW9kX2F1dGhfZGlnZXN0Lmh0bWwiPm1vZF9hdXRoX2RpZ2VzdDwvYT48L2NvZGU+LCB0aGlzIG1vZHVsZSBpcyBpbnZva2VkIHZpYSB0aGUKICAgIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfYXV0aF9iYXNpYy5odG1sI2F1dGhiYXNpY3Byb3ZpZGVyIj5BdXRoQmFzaWNQcm92aWRlcjwvYT48L2NvZGU+IG9yCiAgICA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuLi9tb2QvbW9kX2F1dGhfZGlnZXN0Lmh0bWwjYXV0aGRpZ2VzdHByb3ZpZGVyIj5BdXRoRGlnZXN0UHJvdmlkZXI8L2E+PC9jb2RlPgogICAgd2l0aCB0aGUgPGNvZGU+ZGJkPC9jb2RlPiB2YWx1ZS48L3A+CjwvZGl2Pgo8ZGl2IGlkPSJxdWlja3ZpZXciPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvZm91bmRhdGlvbi9jb250cmlidXRpbmcuaHRtbCIgY2xhc3M9ImJhZGdlIj48aW1nIHNyYz0iaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9pbWFnZXMvU3VwcG9ydEFwYWNoZS1zbWFsbC5wbmciIGFsdD0iU3VwcG9ydCBBcGFjaGUhIiAvPjwvYT48aDM+VG9waWNzPC9oMz4KPHVsIGlkPSJ0b3BpY3MiPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNzb2NhY2hlIj5QZXJmb3JtYW5jZSBhbmQgQ2FjaGVpbmc8L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi4vaW1hZ2VzL2Rvd24uZ2lmIiAvPiA8YSBocmVmPSIjZXhhbXBsZSI+Q29uZmlndXJhdGlvbiBFeGFtcGxlPC9hPjwvbGk+CjxsaT48aW1nIGFsdD0iIiBzcmM9Ii4uL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI2V4cG9zZWQiPkV4cG9zaW5nIExvZ2luIEluZm9ybWF0aW9uPC9hPjwvbGk+CjwvdWw+PGgzIGNsYXNzPSJkaXJlY3RpdmVzIj5EaXJlY3RpdmVzPC9oMz4KPHVsIGlkPSJ0b2MiPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNhdXRoZGJkdXNlcnB3cXVlcnkiPkF1dGhEQkRVc2VyUFdRdWVyeTwvYT48L2xpPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNhdXRoZGJkdXNlcnJlYWxtcXVlcnkiPkF1dGhEQkRVc2VyUmVhbG1RdWVyeTwvYT48L2xpPgo8L3VsPgo8aDM+QnVnZml4IGNoZWNrbGlzdDwvaDM+PHVsIGNsYXNzPSJzZWVhbHNvIj48bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9kaXN0L2h0dHBkL0NIQU5HRVNfMi40Ij5odHRwZCBjaGFuZ2Vsb2c8L2E+PC9saT48bGk+PGEgaHJlZj0iaHR0cHM6Ly9iei5hcGFjaGUub3JnL2J1Z3ppbGxhL2J1Z2xpc3QuY2dpP2J1Z19zdGF0dXM9X19vcGVuX18mYW1wO2xpc3RfaWQ9MTQ0NTMyJmFtcDtwcm9kdWN0PUFwYWNoZSUyMGh0dHBkLTImYW1wO3F1ZXJ5X2Zvcm1hdD1zcGVjaWZpYyZhbXA7b3JkZXI9Y2hhbmdlZGRhdGUlMjBERVNDJTJDcHJpb3JpdHklMkNidWdfc2V2ZXJpdHkmYW1wO2NvbXBvbmVudD1tb2RfYXV0aG5fZGJkIj5Lbm93biBpc3N1ZXM8L2E+PC9saT48bGk+PGEgaHJlZj0iaHR0cHM6Ly9iei5hcGFjaGUub3JnL2J1Z3ppbGxhL2VudGVyX2J1Zy5jZ2k/cHJvZHVjdD1BcGFjaGUlMjBodHRwZC0yJmFtcDtjb21wb25lbnQ9bW9kX2F1dGhuX2RiZCI+UmVwb3J0IGEgYnVnPC9hPjwvbGk+PC91bD48aDM+U2VlIGFsc288L2gzPgo8dWwgY2xhc3M9InNlZWFsc28iPgo8bGk+PGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRobl9jb3JlLmh0bWwjYXV0aG5hbWUiPkF1dGhOYW1lPC9hPjwvY29kZT48L2xpPgo8bGk+PGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRobl9jb3JlLmh0bWwjYXV0aHR5cGUiPkF1dGhUeXBlPC9hPjwvY29kZT48L2xpPgo8bGk+CiAgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRoX2Jhc2ljLmh0bWwjYXV0aGJhc2ljcHJvdmlkZXIiPkF1dGhCYXNpY1Byb3ZpZGVyPC9hPjwvY29kZT4KPC9saT4KPGxpPgogIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfYXV0aF9kaWdlc3QuaHRtbCNhdXRoZGlnZXN0cHJvdmlkZXIiPkF1dGhEaWdlc3RQcm92aWRlcjwvYT48L2NvZGU+CjwvbGk+CjxsaT48Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuLi9tb2QvbW9kX2RiZC5odG1sI2RiZHJpdmVyIj5EQkRyaXZlcjwvYT48L2NvZGU+PC9saT4KPGxpPjxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfZGJkLmh0bWwjZGJkcGFyYW1zIj5EQkRQYXJhbXM8L2E+PC9jb2RlPjwvbGk+CjxsaT48YSBocmVmPSIuLi9taXNjL3Bhc3N3b3JkX2VuY3J5cHRpb25zLmh0bWwiPlBhc3N3b3JkIEZvcm1hdHM8L2E+PC9saT4KPGxpPjxhIGhyZWY9IiNjb21tZW50c19zZWN0aW9uIj5Db21tZW50czwvYT48L2xpPjwvdWw+PC9kaXY+CjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4uL2ltYWdlcy91cC5naWYiIC8+PC9hPjwvZGl2Pgo8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KPGgyPjxhIG5hbWU9InNvY2FjaGUiIGlkPSJzb2NhY2hlIj5QZXJmb3JtYW5jZSBhbmQgQ2FjaGVpbmc8L2E+PC9oMj4KCjxwPlNvbWUgdXNlcnMgb2YgREJEIGF1dGhlbnRpY2F0aW9uIGluIEhUVFBEIDIuMi8yLjQgaGF2ZSByZXBvcnRlZCB0aGF0IGl0CmltcG9zZXMgYSBwcm9ibGVtYXRpYyBsb2FkIG9uIHRoZSBkYXRhYmFzZS4gIFRoaXMgaXMgbW9zdCBsaWtlbHkgd2hlcmUKYW4gSFRNTCBwYWdlIGNvbnRhaW5zIGh1bmRyZWRzIG9mIG9iamVjdHMgKGUuZy4gaW1hZ2VzLCBzY3JpcHRzLCBldGMpCmVhY2ggb2Ygd2hpY2ggcmVxdWlyZXMgYXV0aGVudGljYXRpb24uICBVc2VycyBhZmZlY3RlZCAob3IgY29uY2VybmVkKQpieSB0aGlzIGtpbmQgb2YgcHJvYmxlbSBzaG91bGQgdXNlIDxjb2RlIGNsYXNzPSJtb2R1bGUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfYXV0aG5fc29jYWNoZS5odG1sIj5tb2RfYXV0aG5fc29jYWNoZTwvYT48L2NvZGU+CnRvIGNhY2hlIGNyZWRlbnRpYWxzIGFuZCB0YWtlIG1vc3Qgb2YgdGhlIGxvYWQgb2ZmIHRoZSBkYXRhYmFzZS48L3A+CjwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4uL2ltYWdlcy91cC5naWYiIC8+PC9hPjwvZGl2Pgo8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KPGgyPjxhIG5hbWU9ImV4YW1wbGUiIGlkPSJleGFtcGxlIj5Db25maWd1cmF0aW9uIEV4YW1wbGU8L2E+PC9oMj4KCjxwPlRoaXMgc2ltcGxlIGV4YW1wbGUgc2hvd3MgdXNlIG9mIHRoaXMgbW9kdWxlIGluIHRoZSBjb250ZXh0IG9mCnRoZSBBdXRoZW50aWNhdGlvbiBhbmQgREJEIGZyYW1ld29ya3MuPC9wPgo8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+IyBtb2RfZGJkIGNvbmZpZ3VyYXRpb24KIyBVUERBVEVEIHRvIGluY2x1ZGUgYXV0aGVudGljYXRpb24gY2FjaGVpbmcKREJEcml2ZXIgcGdzcWwKREJEUGFyYW1zICJkYm5hbWU9YXBhY2hlYXV0aCB1c2VyPWFwYWNoZSBwYXNzd29yZD14eHh4eHgiCgpEQkRNaW4gIDQKREJES2VlcCA4CkRCRE1heCAgMjAKREJERXhwdGltZSAzMDAKCiZsdDtEaXJlY3RvcnkgIi91c3Ivd3d3L215aG9zdC9wcml2YXRlIiZndDsKICAjIG1vZF9hdXRobl9jb3JlIGFuZCBtb2RfYXV0aF9iYXNpYyBjb25maWd1cmF0aW9uCiAgIyBmb3IgbW9kX2F1dGhuX2RiZAogIEF1dGhUeXBlIEJhc2ljCiAgQXV0aE5hbWUgIk15IFNlcnZlciIKCiAgIyBUbyBjYWNoZSBjcmVkZW50aWFscywgcHV0IHNvY2FjaGUgYWhlYWQgb2YgZGJkIGhlcmUKICBBdXRoQmFzaWNQcm92aWRlciBzb2NhY2hlIGRiZAoKICAjIEFsc28gcmVxdWlyZWQgZm9yIGNhY2hpbmc6IHRlbGwgdGhlIGNhY2hlIHRvIGNhY2hlIGRiZCBsb29rdXBzIQogIEF1dGhuQ2FjaGVQcm92aWRlRm9yIGRiZAogIEF1dGhuQ2FjaGVDb250ZXh0IG15LXNlcnZlcgoKICAjIG1vZF9hdXRoel9jb3JlIGNvbmZpZ3VyYXRpb24KICBSZXF1aXJlIHZhbGlkLXVzZXIKCiAgIyBtb2RfYXV0aG5fZGJkIFNRTCBxdWVyeSB0byBhdXRoZW50aWNhdGUgYSB1c2VyCiAgQXV0aERCRFVzZXJQV1F1ZXJ5ICJTRUxFQ1QgcGFzc3dvcmQgRlJPTSBhdXRobiBXSEVSRSB1c2VyID0gJXMiCiZsdDsvRGlyZWN0b3J5Jmd0OzwvcHJlPgoKPC9kaXY+PGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0iZXhwb3NlZCIgaWQ9ImV4cG9zZWQiPkV4cG9zaW5nIExvZ2luIEluZm9ybWF0aW9uPC9hPjwvaDI+Cgo8cD4KSWYgaHR0cGQgd2FzIGJ1aWx0IGFnYWluc3QgPGEgY2xhc3M9Imdsb3NzYXJ5bGluayIgaHJlZj0iLi4vZ2xvc3NhcnkuaHRtbCNhcHIiIHRpdGxlPSJzZWUgZ2xvc3NhcnkiPkFQUjwvYT4gdmVyc2lvbiAxLjMuMApvciBoaWdoZXIsIHRoZW4gd2hlbmV2ZXIgYSBxdWVyeSBpcyBtYWRlIHRvIHRoZSBkYXRhYmFzZSBzZXJ2ZXIsIGFsbApjb2x1bW4gdmFsdWVzIGluIHRoZSBmaXJzdCByb3cgcmV0dXJuZWQgYnkgdGhlIHF1ZXJ5IGFyZSBwbGFjZWQgaW4gdGhlCmVudmlyb25tZW50LCB1c2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgd2l0aCB0aGUgcHJlZml4ICJBVVRIRU5USUNBVEVfIi4KPC9wPgo8cD5JZiBhIGRhdGFiYXNlIHF1ZXJ5IGZvciBleGFtcGxlIHJldHVybmVkIHRoZSB1c2VybmFtZSwgZnVsbCBuYW1lCmFuZCB0ZWxlcGhvbmUgbnVtYmVyIG9mIGEgdXNlciwgYSBDR0kgcHJvZ3JhbSB3aWxsIGhhdmUgYWNjZXNzIHRvCnRoaXMgaW5mb3JtYXRpb24gd2l0aG91dCB0aGUgbmVlZCB0byBtYWtlIGEgc2Vjb25kIGluZGVwZW5kZW50IGRhdGFiYXNlCnF1ZXJ5IHRvIGdhdGhlciB0aGlzIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24uPC9wPgo8cD5UaGlzIGhhcyB0aGUgcG90ZW50aWFsIHRvIGRyYW1hdGljYWxseSBzaW1wbGlmeSB0aGUgY29kaW5nIGFuZApjb25maWd1cmF0aW9uIHJlcXVpcmVkIGluIHNvbWUgd2ViIGFwcGxpY2F0aW9ucy4KPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9ImRpcmVjdGl2ZS1zZWN0aW9uIj48aDI+PGEgbmFtZT0iQXV0aERCRFVzZXJQV1F1ZXJ5IiBpZD0iQXV0aERCRFVzZXJQV1F1ZXJ5Ij5BdXRoREJEVXNlclBXUXVlcnk8L2E+IDxhIG5hbWU9ImF1dGhkYmR1c2VycHdxdWVyeSIgaWQ9ImF1dGhkYmR1c2VycHdxdWVyeSI+RGlyZWN0aXZlPC9hPjwvaDI+Cjx0YWJsZSBjbGFzcz0iZGlyZWN0aXZlIj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI0Rlc2NyaXB0aW9uIj5EZXNjcmlwdGlvbjo8L2E+PC90aD48dGQ+U1FMIHF1ZXJ5IHRvIGxvb2sgdXAgYSBwYXNzd29yZCBmb3IgYSB1c2VyPC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjU3ludGF4Ij5TeW50YXg6PC9hPjwvdGg+PHRkPjxjb2RlPkF1dGhEQkRVc2VyUFdRdWVyeSA8dmFyPnF1ZXJ5PC92YXI+PC9jb2RlPjwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI0NvbnRleHQiPkNvbnRleHQ6PC9hPjwvdGg+PHRkPmRpcmVjdG9yeTwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI1N0YXR1cyI+U3RhdHVzOjwvYT48L3RoPjx0ZD5FeHRlbnNpb248L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNNb2R1bGUiPk1vZHVsZTo8L2E+PC90aD48dGQ+bW9kX2F1dGhuX2RiZDwvdGQ+PC90cj4KPC90YWJsZT4KICAgIDxwPlRoZSA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj5BdXRoREJEVXNlclBXUXVlcnk8L2NvZGU+IHNwZWNpZmllcyBhbgogICAgU1FMIHF1ZXJ5IHRvIGxvb2sgdXAgYSBwYXNzd29yZCBmb3IgYSBzcGVjaWZpZWQgdXNlci4gIFRoZSB1c2VyJ3MgSUQKICAgIHdpbGwgYmUgcGFzc2VkIGFzIGEgc2luZ2xlIHN0cmluZyBwYXJhbWV0ZXIgd2hlbiB0aGUgU1FMIHF1ZXJ5IGlzCiAgICBleGVjdXRlZC4gIEl0IG1heSBiZSByZWZlcmVuY2VkIHdpdGhpbiB0aGUgcXVlcnkgc3RhdGVtZW50IHVzaW5nCiAgICBhIDxjb2RlPiVzPC9jb2RlPiBmb3JtYXQgc3BlY2lmaWVyLjwvcD4KICAgIDxwcmUgY2xhc3M9InByZXR0eXByaW50IGxhbmctY29uZmlnIj5BdXRoREJEVXNlclBXUXVlcnkgIlNFTEVDVCBwYXNzd29yZCBGUk9NIGF1dGhuIFdIRVJFIHVzZXIgPSAlcyI8L3ByZT4KCiAgICA8cD5UaGUgZmlyc3QgY29sdW1uIHZhbHVlIG9mIHRoZSBmaXJzdCByb3cgcmV0dXJuZWQgYnkgdGhlIHF1ZXJ5CiAgICBzdGF0ZW1lbnQgc2hvdWxkIGJlIGEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIGVuY3J5cHRlZCBwYXNzd29yZC4KICAgIFN1YnNlcXVlbnQgcm93cyB3aWxsIGJlIGlnbm9yZWQuICBJZiBubyByb3dzIGFyZSByZXR1cm5lZCwgdGhlIHVzZXIKICAgIHdpbGwgbm90IGJlIGF1dGhlbnRpY2F0ZWQgdGhyb3VnaCA8Y29kZSBjbGFzcz0ibW9kdWxlIj48YSBocmVmPSIuLi9tb2QvbW9kX2F1dGhuX2RiZC5odG1sIj5tb2RfYXV0aG5fZGJkPC9hPjwvY29kZT4uPC9wPgogICAgPHA+SWYgaHR0cGQgd2FzIGJ1aWx0IGFnYWluc3QgPGEgY2xhc3M9Imdsb3NzYXJ5bGluayIgaHJlZj0iLi4vZ2xvc3NhcnkuaHRtbCNhcHIiIHRpdGxlPSJzZWUgZ2xvc3NhcnkiPkFQUjwvYT4gdmVyc2lvbiAxLjMuMAogICAgb3IgaGlnaGVyLCBhbnkgYWRkaXRpb25hbCBjb2x1bW4gdmFsdWVzIGluIHRoZSBmaXJzdCByb3cgcmV0dXJuZWQgYnkKICAgIHRoZSBxdWVyeSBzdGF0ZW1lbnQgd2lsbCBiZSBzdG9yZWQgYXMgZW52aXJvbm1lbnQgdmFyaWFibGVzIHdpdGgKICAgIG5hbWVzIG9mIHRoZSBmb3JtIDxjb2RlPkFVVEhFTlRJQ0FURV88dmFyPkNPTFVNTjwvdmFyPjwvY29kZT4uCiAgICA8L3A+CiAgICA8cD5UaGUgZW5jcnlwdGVkIHBhc3N3b3JkIGZvcm1hdCBkZXBlbmRzIG9uIHdoaWNoIGF1dGhlbnRpY2F0aW9uCiAgICBmcm9udGVuZCAoZS5nLiA8Y29kZSBjbGFzcz0ibW9kdWxlIj48YSBocmVmPSIuLi9tb2QvbW9kX2F1dGhfYmFzaWMuaHRtbCI+bW9kX2F1dGhfYmFzaWM8L2E+PC9jb2RlPiBvcgogICAgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRoX2RpZ2VzdC5odG1sIj5tb2RfYXV0aF9kaWdlc3Q8L2E+PC9jb2RlPikgaXMgYmVpbmcgdXNlZC4gIFNlZSA8YSBocmVmPSIuLi9taXNjL3Bhc3N3b3JkX2VuY3J5cHRpb25zLmh0bWwiPlBhc3N3b3JkIEZvcm1hdHM8L2E+IGZvcgogICAgbW9yZSBpbmZvcm1hdGlvbi48L3A+Cgo8L2Rpdj4KPGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9ImRpcmVjdGl2ZS1zZWN0aW9uIj48aDI+PGEgbmFtZT0iQXV0aERCRFVzZXJSZWFsbVF1ZXJ5IiBpZD0iQXV0aERCRFVzZXJSZWFsbVF1ZXJ5Ij5BdXRoREJEVXNlclJlYWxtUXVlcnk8L2E+IDxhIG5hbWU9ImF1dGhkYmR1c2VycmVhbG1xdWVyeSIgaWQ9ImF1dGhkYmR1c2VycmVhbG1xdWVyeSI+RGlyZWN0aXZlPC9hPjwvaDI+Cjx0YWJsZSBjbGFzcz0iZGlyZWN0aXZlIj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI0Rlc2NyaXB0aW9uIj5EZXNjcmlwdGlvbjo8L2E+PC90aD48dGQ+U1FMIHF1ZXJ5IHRvIGxvb2sgdXAgYSBwYXNzd29yZCBoYXNoIGZvciBhIHVzZXIgYW5kIHJlYWxtLgo8L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNTeW50YXgiPlN5bnRheDo8L2E+PC90aD48dGQ+PGNvZGU+QXV0aERCRFVzZXJSZWFsbVF1ZXJ5IDx2YXI+cXVlcnk8L3Zhcj48L2NvZGU+PC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjQ29udGV4dCI+Q29udGV4dDo8L2E+PC90aD48dGQ+ZGlyZWN0b3J5PC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjU3RhdHVzIj5TdGF0dXM6PC9hPjwvdGg+PHRkPkV4dGVuc2lvbjwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI01vZHVsZSI+TW9kdWxlOjwvYT48L3RoPjx0ZD5tb2RfYXV0aG5fZGJkPC90ZD48L3RyPgo8L3RhYmxlPgogICAgPHA+VGhlIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPkF1dGhEQkRVc2VyUmVhbG1RdWVyeTwvY29kZT4gc3BlY2lmaWVzIGFuCiAgICBTUUwgcXVlcnkgdG8gbG9vayB1cCBhIHBhc3N3b3JkIGZvciBhIHNwZWNpZmllZCB1c2VyIGFuZCByZWFsbSBpbiBhCiAgICBkaWdlc3QgYXV0aGVudGljYXRpb24gcHJvY2Vzcy4KICAgIFRoZSB1c2VyJ3MgSUQgYW5kIHRoZSByZWFsbSwgaW4gdGhhdCBvcmRlciwgd2lsbCBiZSBwYXNzZWQgYXMgc3RyaW5nCiAgICBwYXJhbWV0ZXJzIHdoZW4gdGhlIFNRTCBxdWVyeSBpcyBleGVjdXRlZC4gIFRoZXkgbWF5IGJlIHJlZmVyZW5jZWQKICAgIHdpdGhpbiB0aGUgcXVlcnkgc3RhdGVtZW50IHVzaW5nIDxjb2RlPiVzPC9jb2RlPiBmb3JtYXQgc3BlY2lmaWVycy48L3A+CiAgICA8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+QXV0aERCRFVzZXJSZWFsbVF1ZXJ5ICJTRUxFQ1QgcGFzc3dvcmQgRlJPTSBhdXRobiBXSEVSRSB1c2VyID0gJXMgQU5EIHJlYWxtID0gJXMiPC9wcmU+CgogICAgPHA+VGhlIGZpcnN0IGNvbHVtbiB2YWx1ZSBvZiB0aGUgZmlyc3Qgcm93IHJldHVybmVkIGJ5IHRoZSBxdWVyeQogICAgc3RhdGVtZW50IHNob3VsZCBiZSBhIHN0cmluZyBjb250YWluaW5nIHRoZSBlbmNyeXB0ZWQgcGFzc3dvcmQuCiAgICBTdWJzZXF1ZW50IHJvd3Mgd2lsbCBiZSBpZ25vcmVkLiAgSWYgbm8gcm93cyBhcmUgcmV0dXJuZWQsIHRoZSB1c2VyCiAgICB3aWxsIG5vdCBiZSBhdXRoZW50aWNhdGVkIHRocm91Z2ggPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRobl9kYmQuaHRtbCI+bW9kX2F1dGhuX2RiZDwvYT48L2NvZGU+LjwvcD4KICAgIDxwPklmIGh0dHBkIHdhcyBidWlsdCBhZ2FpbnN0IDxhIGNsYXNzPSJnbG9zc2FyeWxpbmsiIGhyZWY9Ii4uL2dsb3NzYXJ5Lmh0bWwjYXByIiB0aXRsZT0ic2VlIGdsb3NzYXJ5Ij5BUFI8L2E+IHZlcnNpb24gMS4zLjAKICAgIG9yIGhpZ2hlciwgYW55IGFkZGl0aW9uYWwgY29sdW1uIHZhbHVlcyBpbiB0aGUgZmlyc3Qgcm93IHJldHVybmVkIGJ5CiAgICB0aGUgcXVlcnkgc3RhdGVtZW50IHdpbGwgYmUgc3RvcmVkIGFzIGVudmlyb25tZW50IHZhcmlhYmxlcyB3aXRoCiAgICBuYW1lcyBvZiB0aGUgZm9ybSA8Y29kZT5BVVRIRU5USUNBVEVfPHZhcj5DT0xVTU48L3Zhcj48L2NvZGU+LgogICAgPC9wPgogICAgPHA+VGhlIGVuY3J5cHRlZCBwYXNzd29yZCBmb3JtYXQgZGVwZW5kcyBvbiB3aGljaCBhdXRoZW50aWNhdGlvbgogICAgZnJvbnRlbmQgKGUuZy4gPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRoX2Jhc2ljLmh0bWwiPm1vZF9hdXRoX2Jhc2ljPC9hPjwvY29kZT4gb3IKICAgIDxjb2RlIGNsYXNzPSJtb2R1bGUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfYXV0aF9kaWdlc3QuaHRtbCI+bW9kX2F1dGhfZGlnZXN0PC9hPjwvY29kZT4pIGlzIGJlaW5nIHVzZWQuICBTZWUgPGEgaHJlZj0iLi4vbWlzYy9wYXNzd29yZF9lbmNyeXB0aW9ucy5odG1sIj5QYXNzd29yZCBGb3JtYXRzPC9hPiBmb3IKICAgIG1vcmUgaW5mb3JtYXRpb24uPC9wPgoKPC9kaXY+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJib3R0b21sYW5nIj4KPHA+PHNwYW4+QXZhaWxhYmxlIExhbmd1YWdlczogPC9zcGFuPjxhIGhyZWY9Ii4uL2VuL21vZC9tb2RfYXV0aG5fZGJkLmh0bWwiIHRpdGxlPSJFbmdsaXNoIj4mbmJzcDtlbiZuYnNwOzwvYT4gfAo8YSBocmVmPSIuLi9mci9tb2QvbW9kX2F1dGhuX2RiZC5odG1sIiBocmVmbGFuZz0iZnIiIHJlbD0iYWx0ZXJuYXRlIiB0aXRsZT0iRnJhbudhaXMiPiZuYnNwO2ZyJm5ic3A7PC9hPjwvcD4KPC9kaXY+PGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgc3JjPSIuLi9pbWFnZXMvdXAuZ2lmIiBhbHQ9InRvcCIgLz48L2E+PC9kaXY+PGRpdiBjbGFzcz0ic2VjdGlvbiI+PGgyPjxhIGlkPSJjb21tZW50c19zZWN0aW9uIiBuYW1lPSJjb21tZW50c19zZWN0aW9uIj5Db21tZW50czwvYT48L2gyPjxkaXYgY2xhc3M9Indhcm5pbmciPjxzdHJvbmc+Tm90aWNlOjwvc3Ryb25nPjxiciAvPlRoaXMgaXMgbm90IGEgUSZhbXA7QSBzZWN0aW9uLiBDb21tZW50cyBwbGFjZWQgaGVyZSBzaG91bGQgYmUgcG9pbnRlZCB0b3dhcmRzIHN1Z2dlc3Rpb25zIG9uIGltcHJvdmluZyB0aGUgZG9jdW1lbnRhdGlvbiBvciBzZXJ2ZXIsIGFuZCBtYXkgYmUgcmVtb3ZlZCBhZ2FpbiBieSBvdXIgbW9kZXJhdG9ycyBpZiB0aGV5IGFyZSBlaXRoZXIgaW1wbGVtZW50ZWQgb3IgY29uc2lkZXJlZCBpbnZhbGlkL29mZi10b3BpYy4gUXVlc3Rpb25zIG9uIGhvdyB0byBtYW5hZ2UgdGhlIEFwYWNoZSBIVFRQIFNlcnZlciBzaG91bGQgYmUgZGlyZWN0ZWQgYXQgZWl0aGVyIG91ciBJUkMgY2hhbm5lbCwgI2h0dHBkLCBvbiBGcmVlbm9kZSwgb3Igc2VudCB0byBvdXIgPGEgaHJlZj0iaHR0cDovL2h0dHBkLmFwYWNoZS5vcmcvbGlzdHMuaHRtbCI+bWFpbGluZyBsaXN0czwvYT4uPC9kaXY+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48IS0tLy8tLT48IVtDREFUQVsvLz48IS0tCnZhciBjb21tZW50c19zaG9ydG5hbWUgPSAnaHR0cGQnOwp2YXIgY29tbWVudHNfaWRlbnRpZmllciA9ICdodHRwOi8vaHR0cGQuYXBhY2hlLm9yZy9kb2NzLzIuNC9tb2QvbW9kX2F1dGhuX2RiZC5odG1sJzsKKGZ1bmN0aW9uKHcsIGQpIHsKICAgIGlmICh3LmxvY2F0aW9uLmhvc3RuYW1lLnRvTG93ZXJDYXNlKCkgPT0gImh0dHBkLmFwYWNoZS5vcmciKSB7CiAgICAgICAgZC53cml0ZSgnPGRpdiBpZD0iY29tbWVudHNfdGhyZWFkIj48XC9kaXY+Jyk7CiAgICAgICAgdmFyIHMgPSBkLmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOwogICAgICAgIHMudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnOwogICAgICAgIHMuYXN5bmMgPSB0cnVlOwogICAgICAgIHMuc3JjID0gJ2h0dHBzOi8vY29tbWVudHMuYXBhY2hlLm9yZy9zaG93X2NvbW1lbnRzLmx1YT9zaXRlPScgKyBjb21tZW50c19zaG9ydG5hbWUgKyAnJnBhZ2U9JyArIGNvbW1lbnRzX2lkZW50aWZpZXI7CiAgICAgICAgKGQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXSB8fCBkLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF0pLmFwcGVuZENoaWxkKHMpOwogICAgfQogICAgZWxzZSB7IAogICAgICAgIGQud3JpdGUoJzxkaXYgaWQ9ImNvbW1lbnRzX3RocmVhZCI+Q29tbWVudHMgYXJlIGRpc2FibGVkIGZvciB0aGlzIHBhZ2UgYXQgdGhlIG1vbWVudC48XC9kaXY+Jyk7CiAgICB9Cn0pKHdpbmRvdywgZG9jdW1lbnQpOwovLy0tPjwhXV0+PC9zY3JpcHQ+PC9kaXY+PGRpdiBpZD0iZm9vdGVyIj4KPHAgY2xhc3M9ImFwYWNoZSI+Q29weXJpZ2h0IDIwMTkgVGhlIEFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLjxiciAvPkxpY2Vuc2VkIHVuZGVyIHRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAiPkFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDwvYT4uPC9wPgo8cCBjbGFzcz0ibWVudSI+PGEgaHJlZj0iLi4vbW9kLyI+TW9kdWxlczwvYT4gfCA8YSBocmVmPSIuLi9tb2QvZGlyZWN0aXZlcy5odG1sIj5EaXJlY3RpdmVzPC9hPiB8IDxhIGhyZWY9Imh0dHA6Ly93aWtpLmFwYWNoZS5vcmcvaHR0cGQvRkFRIj5GQVE8L2E+IHwgPGEgaHJlZj0iLi4vZ2xvc3NhcnkuaHRtbCI+R2xvc3Nhcnk8L2E+IHwgPGEgaHJlZj0iLi4vc2l0ZW1hcC5odG1sIj5TaXRlbWFwPC9hPjwvcD48L2Rpdj48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+PCEtLS8vLS0+PCFbQ0RBVEFbLy8+PCEtLQppZiAodHlwZW9mKHByZXR0eVByaW50KSAhPT0gJ3VuZGVmaW5lZCcpIHsKICAgIHByZXR0eVByaW50KCk7Cn0KLy8tLT48IV1dPjwvc2NyaXB0Pgo8L2JvZHk+PC9odG1sPg==