PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iSVNPLTg4NTktMSI/Pgo8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBTdHJpY3QvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+CjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBsYW5nPSJmciIgeG1sOmxhbmc9ImZyIj48aGVhZD4KPG1ldGEgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgLz4KPG1ldGEgY29udGVudD0ibm9pbmRleCwgbm9mb2xsb3ciIG5hbWU9InJvYm90cyIgLz4KPCEtLQogICAgICAgIFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYCiAgICAgICAgICAgICAgVGhpcyBmaWxlIGlzIGdlbmVyYXRlZCBmcm9tIHhtbCBzb3VyY2U6IERPIE5PVCBFRElUCiAgICAgICAgWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFgKICAgICAgLS0+Cjx0aXRsZT5O6WdvY2lhdGlvbiBkZSBDb250ZW51cyAtIFNlcnZldXIgQXBhY2hlIEhUVFA8L3RpdGxlPgo8bGluayBocmVmPSIuL3N0eWxlL2Nzcy9tYW51YWwuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiIHR5cGU9InRleHQvY3NzIiB0aXRsZT0iTWFpbiBzdHlsZXNoZWV0IiAvPgo8bGluayBocmVmPSIuL3N0eWxlL2Nzcy9tYW51YWwtbG9vc2UtMTAwcGMuY3NzIiByZWw9ImFsdGVybmF0ZSBzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIiB0eXBlPSJ0ZXh0L2NzcyIgdGl0bGU9Ik5vIFNpZGViYXIgLSBEZWZhdWx0IGZvbnQgc2l6ZSIgLz4KPGxpbmsgaHJlZj0iLi9zdHlsZS9jc3MvbWFudWFsLXByaW50LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0icHJpbnQiIHR5cGU9InRleHQvY3NzIiAvPgo8bGluayBocmVmPSIuL2ltYWdlcy9mYXZpY29uLmljbyIgcmVsPSJzaG9ydGN1dCBpY29uIiAvPjxsaW5rIGhyZWY9Imh0dHA6Ly9odHRwZC5hcGFjaGUub3JnL2RvY3MvY3VycmVudC9jb250ZW50LW5lZ290aWF0aW9uLmh0bWwiIHJlbD0iY2Fub25pY2FsIiAvPjwvaGVhZD4KPGJvZHkgaWQ9Im1hbnVhbC1wYWdlIj48ZGl2IGlkPSJwYWdlLWhlYWRlciI+CjxwIGNsYXNzPSJtZW51Ij48YSBocmVmPSIuL21vZC8iPk1vZHVsZXM8L2E+IHwgPGEgaHJlZj0iLi9tb2QvZGlyZWN0aXZlcy5odG1sIj5EaXJlY3RpdmVzPC9hPiB8IDxhIGhyZWY9Ii4vZmFxLyI+RkFRPC9hPiB8IDxhIGhyZWY9Ii4vZ2xvc3NhcnkuaHRtbCI+R2xvc3NhaXJlPC9hPiB8IDxhIGhyZWY9Ii4vc2l0ZW1hcC5odG1sIj5QbGFuIGR1IHNpdGU8L2E+PC9wPgo8cCBjbGFzcz0iYXBhY2hlIj5TZXJ2ZXVyIEFwYWNoZSBIVFRQIFZlcnNpb24gMi4wPC9wPgo8aW1nIGFsdD0iIiBzcmM9Ii4vaW1hZ2VzL2ZlYXRoZXIuZ2lmIiAvPjwvZGl2Pgo8ZGl2IGNsYXNzPSJ1cCI+PGEgaHJlZj0iLi8iPjxpbWcgdGl0bGU9IiZsdDstIiBhbHQ9IiZsdDstIiBzcmM9Ii4vaW1hZ2VzL2xlZnQuZ2lmIiAvPjwvYT48L2Rpdj4KPGRpdiBpZD0icGF0aCI+CjxhIGhyZWY9Imh0dHA6Ly93d3cuYXBhY2hlLm9yZy8iPkFwYWNoZTwvYT4gJmd0OyA8YSBocmVmPSJodHRwOi8vaHR0cGQuYXBhY2hlLm9yZy8iPlNlcnZldXIgSFRUUDwvYT4gJmd0OyA8YSBocmVmPSJodHRwOi8vaHR0cGQuYXBhY2hlLm9yZy9kb2NzLyI+RG9jdW1lbnRhdGlvbjwvYT4gJmd0OyA8YSBocmVmPSIuLyI+VmVyc2lvbiAyLjA8L2E+PC9kaXY+PGRpdiBpZD0icGFnZS1jb250ZW50Ij48ZGl2IGNsYXNzPSJyZXRpcmVkIj48aDQ+UGxlYXNlIG5vdGU8L2g0PgogICAgICAgICAgICA8cD5UaGlzIGRvY3VtZW50IHJlZmVycyB0byB0aGUgPHN0cm9uZz4yLjA8L3N0cm9uZz4gdmVyc2lvbiBvZiBBcGFjaGUgaHR0cGQsIHdoaWNoIDxzdHJvbmc+aXMgbm8gbG9uZ2VyIG1haW50YWluZWQ8L3N0cm9uZz4uIFVwZ3JhZGUsIGFuZCByZWZlciB0byB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIGh0dHBkIGluc3RlYWQsIGRvY3VtZW50ZWQgYXQ6PC9wPgogICAgICAgIDx1bD48bGk+PGEgaHJlZj0iaHR0cDovL2h0dHBkLmFwYWNoZS5vcmcvZG9jcy9jdXJyZW50LyI+Q3VycmVudCByZWxlYXNlIHZlcnNpb24gb2YgQXBhY2hlIEhUVFAgU2VydmVyIGRvY3VtZW50YXRpb248L2E+PC9saT48L3VsPjxwPllvdSBtYXkgZm9sbG93IDxhIGhyZWY9Imh0dHA6Ly9odHRwZC5hcGFjaGUub3JnL2RvY3MvY3VycmVudC9jb250ZW50LW5lZ290aWF0aW9uLmh0bWwiPnRoaXMgbGluazwvYT4gdG8gZ28gdG8gdGhlIGN1cnJlbnQgdmVyc2lvbiBvZiB0aGlzIGRvY3VtZW50LjwvcD48L2Rpdj48ZGl2IGlkPSJwcmVhbWJsZSI+PGgxPk7pZ29jaWF0aW9uIGRlIENvbnRlbnVzPC9oMT4KPGRpdiBjbGFzcz0idG9wbGFuZyI+CjxwPjxzcGFuPkxhbmd1ZXMgRGlzcG9uaWJsZXM6IDwvc3Bhbj48YSBocmVmPSIuL2VuL2NvbnRlbnQtbmVnb3RpYXRpb24uaHRtbCIgaHJlZmxhbmc9ImVuIiByZWw9ImFsdGVybmF0ZSIgdGl0bGU9IkVuZ2xpc2giPiZuYnNwO2VuJm5ic3A7PC9hPiB8CjxhIGhyZWY9Ii4vZnIvY29udGVudC1uZWdvdGlhdGlvbi5odG1sIiB0aXRsZT0iRnJhbudhaXMiPiZuYnNwO2ZyJm5ic3A7PC9hPiB8CjxhIGhyZWY9Ii4vamEvY29udGVudC1uZWdvdGlhdGlvbi5odG1sIiBocmVmbGFuZz0iamEiIHJlbD0iYWx0ZXJuYXRlIiB0aXRsZT0iSmFwYW5lc2UiPiZuYnNwO2phJm5ic3A7PC9hPiB8CjxhIGhyZWY9Ii4va28vY29udGVudC1uZWdvdGlhdGlvbi5odG1sIiBocmVmbGFuZz0ia28iIHJlbD0iYWx0ZXJuYXRlIiB0aXRsZT0iS29yZWFuIj4mbmJzcDtrbyZuYnNwOzwvYT4gfAo8YSBocmVmPSIuL3RyL2NvbnRlbnQtbmVnb3RpYXRpb24uaHRtbCIgaHJlZmxhbmc9InRyIiByZWw9ImFsdGVybmF0ZSIgdGl0bGU9IlT8cmvnZSI+Jm5ic3A7dHImbmJzcDs8L2E+PC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0ib3V0b2ZkYXRlIj5DZXR0ZSB0cmFkdWN0aW9uIHBldXQg6nRyZSBw6XJpbellLiBDb25zdWx0ZXogbGEgdmVyc2lvbgogICAgICAgICAgICBBbmdsYWlzZSBwb3VyIGxlcyBjaGFuZ2VtZW50cyBy6WNlbnRzLjwvZGl2PgoKCiAgICA8cD5BcGFjaGUgc3VpdCBsZXMgc3DpY2lmaWNhdGlvbnMgSFRUUC8xLjEgZW4gY2UgcXVpIGNvbmNlcm5lIAogICAgbGVzIG7pZ29jaWF0aW9ucyBkZSBjb250ZW51cy4gSWwgZXN0IGFpbnNpIHBvc3NpYmxlIGQndXRpbGlzZXIKICAgIGxlcyBpbmZvcm1hdGlvbnMgZm91cm5pZXMgcGFyIGxlIG5hdmlnYXRldXIgKHBy6WbpcmVuY2VzIGRlIGxhbmd1ZXMsCiAgICBqZXUgZGUgY2FyYWN06HJlcywgZW5jb2RhZ2UgZXQgdHlwZXMgZGUgbelkaWFzKS4gQXBhY2hlIGVzc2F5ZQogICAgYXVzc2kgZCdvcHRpbWlzZXIgbGVzIGNhcyBkZXMgbmF2aWdhdGV1cnMgZW52b3lhbnQgZGVzIAogICAgaW5mb3JtYXRpb25zIGluY29tcGzodGVzLjwvcD4KCiAgICA8cD5DJ2VzdCBsZSBtb2R1bGUgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi9tb2QvbW9kX25lZ290aWF0aW9uLmh0bWwiPm1vZF9uZWdvdGlhdGlvbjwvYT48L2NvZGU+IHF1aSBmb3Vybml0CiAgICBsYSBu6WdvY2lhdGlvbiBkZSBjb250ZW51cyZuYnNwOzsgY2UgbW9kdWxlIGVzdCBpbmNsdXMgZGFucyBBcGFjaGUgCiAgICBwYXIgZOlmYXV0LjwvcD4KPC9kaXY+CjxkaXYgaWQ9InF1aWNrdmlldyI+PHVsIGlkPSJ0b2MiPjxsaT48aW1nIGFsdD0iIiBzcmM9Ii4vaW1hZ2VzL2Rvd24uZ2lmIiAvPiA8YSBocmVmPSIjYWJvdXQiPsAgcHJvcG9zIGRlIGxhIE7pZ29jaWF0aW9uIGRlIENvbnRlbnVzPC9hPjwvbGk+CjxsaT48aW1nIGFsdD0iIiBzcmM9Ii4vaW1hZ2VzL2Rvd24uZ2lmIiAvPiA8YSBocmVmPSIjbmVnb3RpYXRpb24iPk7pZ29jaWF0aW9ucyBhdmVjIEFwYWNoZTwvYT48L2xpPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI21ldGhvZHMiPk3pdGhvZGVzIGRlIE7pZ29jaWF0aW9uczwvYT48L2xpPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI2JldHRlciI+VHJpY2hlciBzdXIgbGVzIEZhY3RldXJzIGRlIFF1YWxpdOk8L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNleHRlbnNpb25zIj5FeHRlbnNpb25zIHZlcnMgbGEgTulnb2NpYXRpb24gZGUgQ29udGVudQpUcmFuc3BhcmVudGU8L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNuYW1pbmciPsAgcHJvcG9zIGRlcyBsaWVucyBoeXBlcnRleHRlcyBldCBkZXMgY29udmVudGlvbnMgZGUgbm9tbWFnZTwvYT48L2xpPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI2NhY2hpbmciPsAgcHJvcG9zIGRlcyBDYWNoZXM8L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNtb3JlIj5QbHVzIGQnSW5mb3JtYXRpb248L2E+PC9saT4KPC91bD48L2Rpdj4KPGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi9pbWFnZXMvdXAuZ2lmIiAvPjwvYT48L2Rpdj4KPGRpdiBjbGFzcz0ic2VjdGlvbiI+CjxoMj48YSBuYW1lPSJhYm91dCIgaWQ9ImFib3V0Ij7AIHByb3BvcyBkZSBsYSBO6WdvY2lhdGlvbiBkZSBDb250ZW51czwvYT48L2gyPgoKICAgIDxwPkRpZmbpcmVudGVzIHJlcHLpc2VudGF0aW9ucyBwZXV2ZW50IOp0cmUgdXRpbGlz6WVzIHBvdXIgCiAgICBjb21tdW5pcXVlciB1bmUgcmVzc291cmNlLiBQYXIgZXhlbXBsZSwgcGx1c2lldXJzIGxhbmd1ZXMgcGV1dmVudAogICAg6nRyZSBkaXNwb25pYmxlcywgb3UgcGx1c2lldXJzIHR5cGVzIGRlIG3pZGlhcywgdm9pcmUgcGFyZm9pcyB1bmUKICAgIGNvbWJpbmFpc29uIGRlIGNlcyBwb3NzaWJpbGl06XMuCiAgICBVbmUgbel0aG9kZSBwb3VyIGfpcmVyIGNlbGEgZXN0IGRlIGRvbm5lciBsZSBjaG9peCBhdSB2aXNpdGV1ciwKICAgIGVuIGx1aSBwcm9wb3NhbnQgdW4gaW5kZXggZ+lu6XJhbCwgcXVpIGx1aSBwZXJtZXQgcGFyIGV4ZW1wbGUgZGUKICAgIGNob2lzaXIgc2EgbGFuZ3VlLiBDZXBlbmRhbnQsIGlsIGVzdCBzb3V2ZW50IHBvc3NpYmxlIGRlIGZhaXJlIGNlIAogICAgY2hvaXggZGUgbWFuaehyZSBhdXRvbWF0aXF1ZSBjYXIgbGVzIG5hdmlnYXRldXJzIHBldXZlbnQgcHLpY2lzZXIgCiAgICBhdmVjIGxldXJzIHJlcXXqdGVzLCBsYSByZXBy6XNlbnRhdGlvbiBxdSdpbHMgcHLpZuhyZW50IHJlY2V2b2lyLiBQYXIKICAgIGV4ZW1wbGUsIHVuIG5hdmlnYXRldXIgcG91cnJhaXQgc3DpY2lmaWVyIHF1J2lsIHBy6WbocmUgcmVjZXZvaXIgbGVzCiAgICBpbmZvcm1hdGlvbnMgZW4gZnJhbudhaXMgc2kgZWxsZXMgc29udCBkaXNwb25pYmxlcywgb3UgZW4gYW5nbGFpcyAKICAgIGRhbnMgbGUgY2FzIGNvbnRyYWlyZS4gQ2UgdHlwZSBkJ2luZm9ybWF0aW9uIGVzdCBjb21tdW5pcXXpIHBhciBsZXMKICAgIG5hdmlnYXRldXJzLCBkYW5zIGxlcyBlbi106nRlcyBkZSBjaGFxdWUgcmVxdep0ZS4gVW4gbmF2aWdhdGV1ciBuZQogICAgZGVtYW5kYW50IHF1ZSBkZXMgZG9jdW1lbnRzIGVuIGZyYW7nYWlzIGVudmVycmFpdDwvcD4KICAgIAo8ZGl2IGNsYXNzPSJleGFtcGxlIj48cD48Y29kZT5BY2NlcHQtTGFuZ3VhZ2U6IGZyPC9jb2RlPjwvcD48L2Rpdj4KCiAgICA8cD5Ob3RleiBxdWUgY2V0dGUgcHLpZulyZW5jZSBuZSBzZXJhIGfpcullIHBhciBsZSBzZXJ2ZXVyIHF1ZQogICAgcydpbCBleGlzdGUgdW4gY2hvaXggZGUgbGFuZ3VlcyBkdSBj9HTpIGR1IHNlcnZldXIuPC9wPgoKICAgIDxwPlZvaWNpIHVuIGV4ZW1wbGUgcGx1cyBjb21wbGV0LCBv+SBsZSBuYXZpZ2F0ZXVyIGVzdCBjb25maWd1cukgcG91cgogICAgYWNjZXB0ZXIgbGUgZnJhbudhaXMgZXQgbCdhbmdsYWlzLCBtYWlzIGF2ZWMgdW5lIHBy6WbpcmVuY2UgcG91ciBsZQogICAgZnJhbudhaXMsIGV0IHBvdXIgYWNjZXB0ZXIgZGl2ZXJzIHR5cGVzIGRlIG3pZGlhcywgZW4gcHLpZulyYW50IGxlIAogICAgSFRNTCBhdSB0ZXh0ZSBicnV0LCBldCBlbiBwculm6XJhbnQgbGUgR0lGIG91IGxlIEpQRUcgYXV4IGF1dHJlcyB0eXBlcwogICAgZGUgbelkaWFzIChzYW5zIHBvdXIgYXV0YW50IHJlZnVzZXIgY2VzIGRlcm5pZXJzLCBsZSBjYXMg6WNo6WFudCkmbmJzcDs6PC9wPgoKPGRpdiBjbGFzcz0iZXhhbXBsZSI+PHA+PGNvZGU+CiAgQWNjZXB0LUxhbmd1YWdlOiBmcjsgcT0xLjAsIGVuOyBxPTAuNTxiciAvPgogIEFjY2VwdDogdGV4dC9odG1sOyBxPTEuMCwgdGV4dC8qOyBxPTAuOCwgaW1hZ2UvZ2lmOyBxPTAuNiwgaW1hZ2UvanBlZzsgcT0wLjYsIGltYWdlLyo7IHE9MC41LCAqLyo7IHE9MC4xCjwvY29kZT48L3A+PC9kaXY+CgogICAgPHA+QXBhY2hlIHN1cHBvcnRlIGxlcyBu6WdvY2lhdGlvbnMgZGUgY29udGVudXMgJ2fpculzIHBhcgogICAgbGUgc2VydmV1cicsIHRlbGxlcyBxdWUgc3DpY2lmaellcyBkYW5zIEhUVFAvMS4xLiBMZXMgZW4tdOp0ZXMKICAgIDxjb2RlPkFjY2VwdDwvY29kZT4sIDxjb2RlPkFjY2VwdC1MYW5ndWFnZTwvY29kZT4sIAogICAgPGNvZGU+QWNjZXB0LUNoYXJzZXQ8L2NvZGU+IGV0IDxjb2RlPkFjY2VwdC1FbmNvZGluZzwvY29kZT4gCiAgICBzb250IGfpculzLiBBcGFjaGUgc3VwcG9ydGUg6WdhbGVtZW50IGxlcyBu6WdvY2lhdGlvbnMgZGUgCiAgICBjb250ZW51cyAndHJhbnNwYXJlbnRlcycsIHRlbGxlcyBxdWUgZOlmaW5pZXMgZGFucyBsZXMgUkZDCiAgICAyMjk1IGV0IDIyOTYuIEVuIHJldmFuY2hlIGxlcyBmb25jdGlvbnMgZGUgJ2ZlYXR1cmUgCiAgICBuZWdvdGlhdGlvbicgZOlmaW5pZXMgZGFucyBjZXMgUkZDcyBuZSBzb250IHBhcyBzdXBwb3J06WVzLjwvcD4KICAgIAogICAgPHA+T24gYXBwZWxsZSA8c3Ryb25nPnJlc3NvdXJjZTwvc3Ryb25nPiB1bmUgZW50aXTpIGNvbmNlcHR1ZWxsZQogICAgaWRlbnRpZmnpZSBwYXIgdW4gVVJJIChSRkMgMjM5NikuIExlIHRyYXZhaWwgZCd1biBzZXJ2ZXVyIEhUVFAsCiAgICB0ZWwgQXBhY2hlLCBlc3QgZGUgZG9ubmVyIHVuIGFjY+hzIOAgZGVzIAogICAgPHN0cm9uZz5yZXBy6XNlbnRhdGlvbnM8L3N0cm9uZz4gZGVzIHJlc3NvdXJjZXMg4CBzYSBkaXNwb3NpdGlvbiwKICAgIGNoYXF1ZSByZXBy6XNlbnRhdGlvbiDpdGFudCBlbnZveellIHNvdXMgbGEgZm9ybWUgZCd1bmUgc+lxdWVuY2UgCiAgICBkJ29jdGV0cyBk6WZpbmllIHNlbG9uIHVuIHR5cGUgZGUgbelkaWEsIHVuIGpldSBkZSBjYXJhY3TocmVzLCAKICAgIHVuIGVuY29kYWdlLCBldGMuIMAgdG91dCBtb21lbnQsIGNoYXF1ZSByZXNzb3VyY2UgZXN0IGFzc29jaellIAogICAg4CB66XJvLCB1bmUgb3UgcGx1c2lldXJzIHJlcHLpc2VudGF0aW9ucy4gU2kgcGx1c2lldXJzIHJlcHLpc2VudGF0aW9ucwogICAgc29udCBkaXNwb25pYmxlcyBwb3VyIHVuZSByZXNzb3VyY2UsIG9uIGRpdCBxdWUgY2V0dGUgZGVybmnocmUgZXN0CiAgICA8c3Ryb25nPm7pZ29jaWFibGU8L3N0cm9uZz4gZXQgY2hhY3VuZSBkZSBzZXMgcmVwculzZW50YXRpb25zCiAgICBwb3NzaWJsZXMgZXN0IGFwcGVs6WUgdW5lIDxzdHJvbmc+dmFyaWFudGU8L3N0cm9uZz4uCiAgICBMZXMgZGlmZulyZW50ZXMgcG9zc2liaWxpdOlzIGRlIGNob2lzaXIgbGVzIHZhcmlhbnRlcyBkJ3VuZSByZXNzb3VyY2UKICAgIG7pZ29jaWFibGUgc29udCBhcHBlbOllcyA8c3Ryb25nPmRpbWVuc2lvbnM8L3N0cm9uZz4gZGUgbGEgCiAgICBu6WdvY2lhdGlvbi48L3A+CjwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0ibmVnb3RpYXRpb24iIGlkPSJuZWdvdGlhdGlvbiI+Tulnb2NpYXRpb25zIGF2ZWMgQXBhY2hlPC9hPjwvaDI+CgogICAgPHA+UG91ciBxdSdBcGFjaGUgcHVpc3NlIHByb2PpZGVyIOAgbGEgbulnb2NpYXRpb24gZCd1bmUgcmVzc291cmNlLAogICAgaWwgZmF1dCBxdSdpbCBkaXNwb3NlIGQnaW5mb3JtYXRpb25zIOAgcHJvcG9zIGRlIGNoYWN1bmUgZGVzIHZhcmlhbnRlcy4KICAgIERldXggbel0aG9kZXMgc29udCBwb3NzaWJsZXMmbmJzcDs6PC9wPgoKICAgIDx1bD4KICAgICAgPGxpPlLpYWxpc2VyIHVuZSAiVGFibGUgZGUgVHlwZXMiICg8ZW0+Yydlc3Qt4C1kaXJlPC9lbT4sCiAgICAgIHVuIGZpY2hpZXIgPGNvZGU+Ki52YXI8L2NvZGU+KSBxdWkgcHLpY2lzZSBleHBsaWNpdGVtZW50IGxlcyBmaWNoaWVycwogICAgICBk6WZpbmlzc2FudCBsZXMgdmFyaWFudGVzLCBvdTwvbGk+CiAgICAgIAogICAgICA8bGk+VXRpbGlzZXIgdW5lIHJlY2hlcmNoZSAnTXVsdGlWaWV3cycsIG3pdGhvZGUgcGFyIGxhcXVlbGxlCiAgICAgIGxlIHNlcnZldXIgculhbGlzZSB1bmUgcmVjaGVyY2hlIHBhciBtb3RpZnMgaW1wbGljaXRlcywKICAgICAgZXQgY2hvaXNpdCBwYXJtaSBsZXMgculzdWx0YXRzLjwvbGk+CiAgICA8L3VsPgoKICAgPGgzPjxhIG5hbWU9InR5cGUtbWFwIiBpZD0idHlwZS1tYXAiPlV0aWxpc2F0aW9uIGQndW5lIFRhYmxlIGRlIFR5cGVzIChUeXBlIE1hcCk8L2E+PC9oMz4KCiAgICA8cD5VbmUgdGFibGUgZGUgdHlwZXMgZXN0IHVuIGRvY3VtZW50IHF1aSBlc3QgYXNzb2Np6SBhdmVjIGxlIAogICAgZ2VzdGlvbm5haXJlIDxjb2RlPnR5cGUtbWFwPC9jb2RlPiAob3UsIGRhbnMgbGVzIHBsdXMgYW5jaWVubmVzIAogICAgdmVyc2lvbnMgZCdBcGFjaGUsIGxlIHR5cGUgbWltZSA8Y29kZT5hcHBsaWNhdGlvbi94LXR5cGUtbWFwPC9jb2RlPikuCiAgICBOb3RleiBxdWUgcG91ciBpbXBs6W1lbnRlciBjZXR0ZSBt6XRob2RlLCB1biAnaGFuZGxlcicgZG9pdCDqdHJlCiAgICBk6WZpbmkgZGFucyBsYSBjb25maWd1cmF0aW9uIHBvdXIgYXNzb2NpZXIgdW5lIGV4dGVuc2lvbiBkZSBmaWNoaWVyIOAgCiAgICA8Y29kZT50eXBlLW1hcDwvY29kZT4mbmJzcDs7IGNlIHF1aSBlc3QgZ+lu6XJhbGVtZW50IG9idGVudSBhdSBtb3llbiBkZTwvcD4KICAgIAo8ZGl2IGNsYXNzPSJleGFtcGxlIj48cD48Y29kZT5BZGRIYW5kbGVyIHR5cGUtbWFwIC52YXI8L2NvZGU+PC9wPjwvZGl2PgoKICAgIDxwPmRhbnMgbGUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIGR1IHNlcnZldXIuPC9wPgoKICAgIDxwPkxlcyBmaWNoaWVycyBkZSB0YWJsZSBkZSB0eXBlcyBwb3J0ZW50IGfpbulyYWxlbWVudCBsZSBub20gZGUgbGEgCiAgICByZXNzb3VyY2UgcXUnaWxzIGTpY3JpdmVudCwgZXQgY29udGllbm5lbnQgdW5lIGVudHLpZSBjb3JyZXNwb25kYW50CiAgICDgIGNoYXF1ZSB2YXJpYW50ZSBwb3NzaWJsZSZuYnNwOzsgY2VzIGVudHLpZXMgc29udCBjb25zdGl0dellcyBkZSBsaWduZXMKICAgIGF1IGZvcm1hdCBkJ2VuLXTqdGVzIEhUVFAuIExlcyBlbnRy6WVzIGRlIGRldXggdmFyaWFudGVzIGRpc3RpbmN0ZXMKICAgIHNvbnQg4CBz6XBhcmVyIHBhciBkZXMgbGlnbmVzIHZpZGVzLiBJbCBuJ2VzdCBwYXMgcGVybWlzIGQndXRpbGlzZXIKICAgIGRlcyBsaWduZXMgdmlkZXMgYXUgc2VpbiBkJ3VuZSBlbnRy6WUuIElsIGVzdCBjb3VyYW50IGRlIHBsYWNlciBlbiAKICAgIGTpYnV0IGRlIGZpY2hpZXIgdW5lIGVudHLpZSBwb3VyIGwnZW50aXTpIGNvbWJpbullIAogICAgZGFucyBzb24gZW5zZW1ibGUgKGJpZW4gcXVlIGNlbGEgbmUgc29pdCBwYXMgbuljZXNzYWlyZSwgZXQgaWdub3LpCiAgICBwYXIgQXBhY2hlKS4gVW4gZXhlbXBsZSBkZSBmaWNoaWVyIGRlIHRhYmxlIGVzdCBkb25u6SBlbiBleGVtcGxlCiAgICBjaS1hcHLocy4gTGUgbm9tIGRlIGNlIGZpY2hpZXIgc2VyYWl0IDxjb2RlPmZvby52YXI8L2NvZGU+LCBwdWlzcXVlCiAgICBsZSBmaWNoaWVyIGTpY3JpdCB1bmUgcmVzc291cmNlIGFwcGVs6WUgPGNvZGU+Zm9vPC9jb2RlPi48L3A+CiAgICAKPGRpdiBjbGFzcz0iZXhhbXBsZSI+PHA+PGNvZGU+CiAgVVJJOiBmb288YnIgLz4KPGJyIC8+CiAgVVJJOiBmb28uZW4uaHRtbDxiciAvPgogIENvbnRlbnQtdHlwZTogdGV4dC9odG1sPGJyIC8+CiAgQ29udGVudC1sYW5ndWFnZTogZW48YnIgLz4KPGJyIC8+CiAgVVJJOiBmb28uZnIuZGUuaHRtbDxiciAvPgogIENvbnRlbnQtdHlwZTogdGV4dC9odG1sO2NoYXJzZXQ9aXNvLTg4NTktMjxiciAvPgogIENvbnRlbnQtbGFuZ3VhZ2U6IGZyLCBkZTxiciAvPgo8L2NvZGU+PC9wPjwvZGl2PgoKICAgIDxwPk5vdGV6IHF1ZSBsZXMgZmljaGllcnMgZGUgdGFibGUgZGUgdHlwZXMgc29udCB0b3Vqb3VycwogICAgdXRpbGlz6XMgZW4gcHJpb3JpdOkgcGFyIEFwYWNoZSBwYXIgcmFwcG9ydCDgIGwnZXh0ZW5zaW9uIGR1CiAgICBub20gZHUgZmljaGllciwgZXQgY2UgbeptZSBzaSBsJ29wdGlvbiBNdWx0aXZpZXdzIGVzdCBhY3RpdullLgogICAgRGVzIHZhcmlhbnRlcyBwculzZW50YW50IGRlcyBxdWFsaXTpcyBpbulnYWxlcyBwZXV2ZW50IOp0cmUgaW5kaXF16WVzCiAgICBhdSBtb3llbiBkdSBwYXJhbeh0cmUgZGUgdHlwZSBkZSBt6WRpYSZuYnNwOzogInFzIiwgY29tbWUgZGFucyBsZSBjYXMgZGUgCiAgICBjZXR0ZSBpbWFnZSAoZGlzcG9uaWJsZSBlbiBKUEVHLCBHSUYgb3UgQVNDSUktYXJ0KSZuYnNwOzogPC9wPgogICAgCjxkaXYgY2xhc3M9ImV4YW1wbGUiPjxwPjxjb2RlPgogIFVSSTogZm9vPGJyIC8+CjxiciAvPgogIFVSSTogZm9vLmpwZWc8YnIgLz4KICBDb250ZW50LXR5cGU6IGltYWdlL2pwZWc7IHFzPTAuODxiciAvPgo8YnIgLz4KICBVUkk6IGZvby5naWY8YnIgLz4KICBDb250ZW50LXR5cGU6IGltYWdlL2dpZjsgcXM9MC41PGJyIC8+CjxiciAvPgogIFVSSTogZm9vLnR4dDxiciAvPgogIENvbnRlbnQtdHlwZTogdGV4dC9wbGFpbjsgcXM9MC4wMTxiciAvPgo8L2NvZGU+PC9wPjwvZGl2PgoKICAgIDxwPkxlcyB2YWxldXJzIGRlIHFzIGFjY2VwdGFibGVzIHNvbnQgY29tcHJpc2VzIGVudHJlIDAuMDAwCiAgICBldCAxLjAwMC4gTm90ZXogcXUndW5lIHZhcmlhbnRlIGF2ZWMgdW4gcXMgZGUgMC4wMDAgbmUgc2VyYQogICAgamFtYWlzIGNob2lzaWUuIExhIHZhbGV1ciBkZSBxcyBwYXIgZOlmYXV0IGVzdCBkZSAxLjAuIExlCiAgICBwYXJhbeh0cmUgcXMgc2VydCDgIGluZGlxdWVyIGxhIHF1YWxpdOkgZGUgbGEgdmFyaWFudGUsIHBhcgogICAgcmFwcG9ydCBhdXggYXV0cmVzIHZhcmlhbnRlcyBkaXNwb25pYmxlcywgZXQgY2UgaW5k6XBlbmRhbW1lbnQKICAgIGRlcyBwb3NzaWJpbGl06XMgZHUgbmF2aWdhdGV1ci4gUGFyIGV4ZW1wbGUsIHVuIGZpY2hpZXIgSlBFRwogICAgZXN0IGfpbulyYWxlbWVudCBkZSBtZWlsbGV1cmUgcXVhbGl06SBxdSd1biBmaWNoaWVyIEFTQ0lJLCBzaQogICAgbGVzIDIgZG9jdW1lbnRzIHNvbnQgZGVzdGlu6XMg4CByZXBy6XNlbnRlciB1bmUgcGhvdG9ncmFwaGllLgogICAgQmllbiBz+3IsIHNpIGxhIHJlc3NvdXJjZSBvcmlnaW5hbGUgZXN0IGVsbGUtbeptZSB1biBmaWNoaWVyCiAgICBBU0NJSSwgbGEgcmVwculzZW50YXRpb24gQVNDSUkgc2VyYSBjb25zaWTpcukgY29tbWUgZGUgbWVpbGxldXJlCiAgICBxdWFsaXTpIHF1ZSBsYSByZXBy6XNlbnRhdGlvbiBKUEVHLiBMYSB2YWxldXIgZGUgcXMgZOlwZW5kIGRvbmMKICAgIGRlIGxhIG5hdHVyZSBkZSBsYSByZXNzb3VyY2UgcXVlIGwnb24gc291aGFpdGUgcmVwculzZW50ZXIuPC9wPgogICAgCiAgICA8cD5MYSBsaXN0ZSBjb21wbOh0ZSBkZXMgZW4tdOp0ZXMgdXRpbGlzYWJsZXMgZXN0IGRpc3BvbmlibGUKICAgIGRhbnMgbGEgZG9jdW1lbnRhdGlvbiBkZSAKICAgIDxhIGhyZWY9Im1vZC9tb2RfbmVnb3RpYXRpb24uaHRtbCN0eXBlbWFwcyI+bW9kX25lZ290YXRpb248L2E+LjwvcD4KCgo8aDM+PGEgbmFtZT0ibXVsdGl2aWV3cyIgaWQ9Im11bHRpdmlld3MiPk11bHRpdmlld3M8L2E+PC9oMz4KCiAgICA8cD5MJ29wdGlvbiA8Y29kZT5NdWx0aVZpZXdzPC9jb2RlPiBlc3Qg4CBzcOljaWZpZXIgcGFyIHLpcGVydG9pcmUsCiAgICBjZSBxdWkgc2lnbmlmaWUgcXUnZWxsZSBwZXV0IOp0cmUgdXRpbGlz6WUgYXUgbW95ZW4gZCd1bmUgZGlyZWN0aXZlCiAgICA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuL21vZC9jb3JlLmh0bWwjb3B0aW9ucyI+T3B0aW9uczwvYT48L2NvZGU+IGRhbnMgdW5lIHNlY3Rpb24gCiAgICA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuL21vZC9jb3JlLmh0bWwjZGlyZWN0b3J5Ij4mbHQ7RGlyZWN0b3J5Jmd0OzwvYT48L2NvZGU+LCAKICAgIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9Ii4vbW9kL2NvcmUuaHRtbCNsb2NhdGlvbiI+Jmx0O0xvY2F0aW9uJmd0OzwvYT48L2NvZGU+IG91IAogICAgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi9tb2QvY29yZS5odG1sI2ZpbGVzIj4mbHQ7RmlsZXMmZ3Q7PC9hPjwvY29kZT4gCiAgICBkdSBmaWNoaWVyIDxjb2RlPmh0dHBkLmNvbmY8L2NvZGU+LCBvdSBkYW5zIGxlcyBmaWNoaWVycyAKICAgIDxjb2RlPi5odGFjY2VzczwvY29kZT4gKOAgY29uZGl0aW9uIHF1ZSBsJ29wdGlvbiA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuL21vZC9jb3JlLmh0bWwjYWxsb3dvdmVycmlkZSI+QWxsb3dPdmVycmlkZTwvYT48L2NvZGU+IHNvaXQgcGFyYW3pdHLpZSBwb3VyIGNlbGEpLgogICAgTm90ZXogcXVlIDxjb2RlPk9wdGlvbnMgQWxsPC9jb2RlPiBuJ2FjdGl2ZSBwYXMgbCdvcHRpb24KICAgIDxjb2RlPk11bHRpVmlld3M8L2NvZGU+Jm5ic3A7OyBjZXR0ZSBkZXJuaehyZSBkb2l0IOp0cmUgcG9zaXRpb25u6WUKICAgIGV4cGxpY2l0ZW1lbnQuPC9wPgogICAgCiAgICA8cD5Wb2ljaSBjb21tZW50IGZvbmN0aW9ubmUgPGNvZGU+TXVsdGlWaWV3czwvY29kZT4mbmJzcDs6IHN1cHBvc29ucyBxdSd1bgogICAgc2VydmV1ciByZedvaXZlIHVuZSByZXF16nRlIHBvdXIgPGNvZGU+L3NvbWUvZGlyL2ZvbzwvY29kZT4sIHF1ZSBsJ29wdGlvbgogICAgPGNvZGU+TXVsdGlWaWV3czwvY29kZT4gc29pdCBhY3RpdullIHBvdXIgPGNvZGU+L3NvbWUvZGlyPC9jb2RlPiwgCiAgICBldCBxdWUgbGUgZmljaGllciA8Y29kZT4vc29tZS9kaXIvZm9vPC9jb2RlPiA8ZW0+bic8L2VtPmV4aXN0ZSAKICAgIDxlbT5wYXM8L2VtPiZuYnNwOzsgYWxvcnMgbGUgc2VydmV1ciBjaGVyY2hlIGxlcyBmaWNoaWVycyBub21t6XMgZm9vLiogCiAgICBkYW5zIGxlIHLpcGVydG9pcmUgL3NvbWUvZGlyLCBldCBjb25zdHJ1aXQgdW5lIHRhYmxlIGRlIHR5cGVzIOAgCiAgICBwYXJ0aXIgZGUgY2VzIG5vbXMgZGUgZmljaGllcnMuIERhbnMgbGEgdGFibGUsIGNoYXF1ZSBmaWNoaWVyIHNlIAogICAgdm9pdCBhc3NpZ25lciBsZXMgdHlwZXMgZGUgbelkaWFzIGV0IGxlcyBlbmNvZGFnZXMgZGUgY29udGVudSAKICAgIHRlbHMgcXUnaWxzIHNlcmFpZW50IGVudm956XMgc2kgbGUgY2xpZW50IGxlcyBkZW1hbmRhaXQgcGFyIGxldXIKICAgIG5vbSBwcm9wcmUuIEFwYWNoZSBjaG9pc2l0IGFsb3JzIGxhIG1laWxsZXVyZSByZXBy6XNlbnRhdGlvbiDgIAogICAgZW52b3llciBhdSBjbGllbnQsIGVuIGZvbmN0aW9uIGRlIHNlcyBwculm6XJlbmNlcy48L3A+CiAgICAKICAgIDxwPkwnb3B0aW9uIDxjb2RlPk11bHRpVmlld3M8L2NvZGU+IHNlcnQgYXVzc2kgbG9ycyBkdSBjaG9peCBkJ3VuCiAgICBpbmRleCwgbG9yc3F1ZSBsYSBkaXJlY3RpdmUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi9tb2QvbW9kX2Rpci5odG1sI2RpcmVjdG9yeWluZGV4Ij5EaXJlY3RvcnlJbmRleDwvYT48L2NvZGU+IGVzdCBwculjaXPpZS4gCiAgICBQYXIgZXhlbXBsZSwgc2kgbGEgY29uZmlndXJhdGlvbiBjb250aWVudDwvcD4KPGRpdiBjbGFzcz0iZXhhbXBsZSI+PHA+PGNvZGU+RGlyZWN0b3J5SW5kZXggaW5kZXg8L2NvZGU+PC9wPjwvZGl2PgogICAgPHA+bGUgc2VydmV1ciBkZXZyYSBjaG9pc2lyIGVudHJlIGxlcyBmaWNoaWVycyA8Y29kZT5pbmRleC5odG1sPC9jb2RlPiBldAogICAgPGNvZGU+aW5kZXguaHRtbDM8L2NvZGU+LCBkYW5zIGxlIGNhcyBv+SBjZXMgZGV1eCBmaWNoaWVycyBleGlzdGVudC4gU2kKICAgIGF1Y3VuIGRlIGNlcyBmaWNoaWVycyBuJ2V4aXN0ZSwgbWFpcyBxdSd1biBmaWNoaWVyIDxjb2RlPmluZGV4LmNnaTwvY29kZT4KICAgIGVzdCBwculzZW50LCBjZSBkZXJuaWVyIHNlcmEgZXjpY3V06SBwYXIgbGUgc2VydmV1ci48L3A+CgogICAgPHA+U2kg4CBsYSBsZWN0dXJlIGR1IHLpcGVydG9pcmUsIHVuIGZpY2hpZXIgZXN0IHRyb3V26SAKICAgIGRvbnQgbCdleHRlbnNpb24gbidlc3QgcGFzIHJlY29ubnVlIHBhciA8Y29kZT5tb2RfbWltZTwvY29kZT4gCiAgICBjb21tZSBwculjaXNhbnQgc29uIGpldSBkZSBjYXJhY3TocmVzLCBzYSBsYW5ndWUsIHNvbiB0eXBlIGRlIAogICAgY29udGVudSAoQ29udGVudC1UeXBlKSBvdSBzb24gZW5jb2RhZ2UsIGFsb3JzIHRvdXQgZOlwZW5kcmEgZGUgbGEgCiAgICBkaXJlY3RpdmUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi9tb2QvbW9kX21pbWUuaHRtbCNtdWx0aXZpZXdzbWF0Y2giPk11bHRpVmlld3NNYXRjaDwvYT48L2NvZGU+LgogICAgQ2V0dGUgZGlyZWN0aXZlIHBy6WNpc2UgZW4gZWZmZXQgcXVlbHMgZ2VzdGlvbm5haXJlcywgZmlsdHJlcywgZXQKICAgIGF1dHJlcyB0eXBlcyBkJ2V4dGVuc2lvbnMgcGV1dmVudCBjb250cmlidWVyIOAgbGEgbulnb2NpYXRpb24KICAgIE11bHRpVmlld3MuPC9wPgoKPC9kaXY+PGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi9pbWFnZXMvdXAuZ2lmIiAvPjwvYT48L2Rpdj4KPGRpdiBjbGFzcz0ic2VjdGlvbiI+CjxoMj48YSBuYW1lPSJtZXRob2RzIiBpZD0ibWV0aG9kcyI+Tel0aG9kZXMgZGUgTulnb2NpYXRpb25zPC9hPjwvaDI+CgogICAgPHA+QXBy6HMgcXUnQXBhY2hlIGFpdCBk6WZpbmkgbGEgbGlzdGUgZGUgdmFyaWFudGVzIHBvc3NpYmxlcyAKICAgIHBvdXIgdW5lIHJlc3NvdXJjZSwgcXVlIGNlIHNvaXQgdmlhIHVuIGZpY2hpZXIgZGUgdGFibGVzIGRlIAogICAgdHlwZXMgb3Ug4CBwYXJ0aXIgZGVzIG5vbXMgZGUgZmljaGllcnMgY29udGVudXMgZGFucyBsZSBy6XBlcnRvaXJlLCAKICAgIGRldXggbel0aG9kZXMgcGV1dmVudCDqdHJlIGludm9xdellcyBwb3VyIGNob2lzaXIgbGEgJ21laWxsZXVyZScgCiAgICB2YXJpYW50ZSBxdWkgc2VyYSBlbnZveellLCBwb3VyIGF1dGFudCBxdSdpbCBlbiBleGlzdGUgYXUgbW9pbnMgCiAgICB1bmUuIElsIG4nZXN0IHBhcyBu6WNlc3NhaXJlIGRlIGNvbm5h7nRyZSBjZSBmb25jdGlvbm5lbWVudCBwb3VyIAogICAgdXRpbGlzZXIgbGVzIG7pZ29jaWF0aW9ucyBkZSBjb250ZW51IGF2ZWMgQXBhY2hlJm5ic3A7OyBjZXBlbmRhbnQgcG91ciAKICAgIGxlIGxlY3RldXIgaW506XJlc3PpIGxhIHN1aXRlIGRlIGNlIGRvY3VtZW50IHMnYXR0YWNoZSDgIGTpY3JpcmUgCiAgICBjZSBmb25jdGlvbm5lbWVudC48L3A+CiAgICAKICAgIDxwPklsIGV4aXN0ZSBkZXV4IG3pdGhvZGVzIGRlIG7pZ29jaWF0aW9ucyZuYnNwOzo8L3A+CgogICAgPG9sPgogICAgICA8bGk+PHN0cm9uZz5MYSBu6WdvY2lhdGlvbiBtZW7pZSBwYXIgbGUgc2VydmV1ciwgc2Vsb24gCiAgICAgIGwnYWxnb3JpdGhtZSBkJ0FwYWNoZTwvc3Ryb25nPiwgZXN0IHV0aWxpc+llIGRhbnMgbGEgcGx1cGFydCAKICAgICAgZGVzIGNhcy4gTCdhbGdvcml0aG1lIGQnQXBhY2hlIGVzdCBk6XRhaWxs6SBkYW5zIGxhIHN1aXRlIGRlIAogICAgICBjZSBkb2N1bWVudC4gRGFucyBsZXMgY2FzIG/5IGNldCBhbGdvcml0aG1lIGVzdCB1dGlsaXPpLCBpbCAKICAgICAgYXJyaXZlIHF1J0FwYWNoZSAndHJpY2hlJyBzdXIgbGUgZmFjdGV1ciBxdWFsaXTpIChxcykgZCd1bmUgCiAgICAgIGRpbWVuc2lvbiBkb25u6WUgcG91ciBwYXJ2ZW5pciDgIHVuIG1laWxsZXVyIHLpc3VsdGF0LiBMZXMgY2FzIAogICAgICBv+SBjZWxhIHNlIHByb2R1aXQgc29udCBwculzZW506XMgZGFucyBsYSBzdWl0ZSBkZSBjZSBkb2N1bWVudC48L2xpPgoKICAgICAgPGxpPjxzdHJvbmc+TGEgbulnb2NpYXRpb24gdHJhbnNwYXJlbnRlIGRlIGNvbnRlbnU8L3N0cm9uZz4gCiAgICAgIGVzdCB1dGlsaXPpZSBzdXIgZGVtYW5kZSBzcOljaWZpcXVlIGR1IG5hdmlnYXRldXIsIHNlbG9uIGxhIAogICAgICBt6XRob2RlIGTpZmluaWUgZGFucyBsYSBSRkMgMjI5NS4gQ2V0dGUgbel0aG9kZSBkZSBu6WdvY2lhdGlvbiAKICAgICAgZG9ubmUgYXUgbmF2aWdhdGV1ciBsZXMgcGxlaW5zIHBvdXZvaXJzIHBvdXIgY2hvaXNpciBsYSAKICAgICAgJ21laWxsZXVyZScgdmFyaWFudGUsIGxlcyBy6XN1bHRhdHMgZOlwZW5kZW50IGRvbmMgZGVzIGFsZ29yaXRobWVzIAogICAgICBkZSBjaG9peCBwcm9wcmVzIOAgY2hhcXVlIG5hdmlnYXRldXIuIENldHRlIG3pdGhvZGUgcGVybWV0IAogICAgICDpZ2FsZW1lbnQgYXUgbmF2aWdhdGV1ciBkZSBkZW1hbmRlciDgIEFwYWNoZSBkJ3V0aWxpc2VyIAogICAgICBsJ2FsZ29yaXRobWUgZGUgJ3PpbGVjdGlvbiBkZSB2YXJpYW50ZSDgIGRpc3RhbmNlJywgdGVsIHF1ZSBk6WZpbmkgCiAgICAgIHBhciBsYSBSRkMgMjI5Ni48L2xpPgogICAgPC9vbD4KICAgICAgCjxoMz48YSBuYW1lPSJkaW1lbnNpb25zIiBpZD0iZGltZW5zaW9ucyI+RGltZW5zaW9ucyBkJ3VuZSBO6WdvY2lhdGlvbjwvYT48L2gzPgoKICAgIDx0YWJsZT4KICAgICAgCiAgICAgIDx0ciB2YWxpZ249InRvcCI+CiAgICAgICAgPHRoPkRpbWVuc2lvbjwvdGg+CgogICAgICAgIDx0aD5Ob3RlczwvdGg+CiAgICAgIDwvdHI+CgogICAgICA8dHIgdmFsaWduPSJ0b3AiPgogICAgICAgIDx0ZD5UeXBlIGRlIE3pZGlhPC90ZD4KCiAgICAgICAgPHRkPkxlIG5hdmlnYXRldXIgcHLpc2VudGUgc2VzIHBy6WbpcmVuY2VzIGF1IG1veWVuIGR1IAogICAgICAgIGNoYW1wIDxjb2RlPkFjY2VwdDwvY29kZT4gZGUgbCdlbi106nRlLiDAIGNoYXF1ZSDpbOltZW50IHBldXQg6nRyZSAKICAgICAgICBhc3NvY2npIHVuIGZhY3RldXIgZGUgcXVhbGl06S4gRGUgbGEgbeptZSBtYW5p6HJlLCBsYSBkZXNjcmlwdGlvbiAKICAgICAgICBkZSBsYSB2YXJpYW50ZSBwZXV0IHBy6XNlbnRlciB1biBmYWN0ZXVyIGRlIHF1YWxpdOkgKGxlIAogICAgICAgIHBhcmFt6HRyZSAicXMiKS48L3RkPgogICAgICA8L3RyPgoKICAgICAgPHRyIHZhbGlnbj0idG9wIj4KICAgICAgICA8dGQ+TGFuZ3VlczwvdGQ+CgogICAgICAgIDx0ZD5MZSBuYXZpZ2F0ZXVyIHBy6XNlbnRlIHNlcyBwculm6XJlbmNlcyBhdSBtb3llbiBkdSBjaGFtcCAKICAgICAgICA8Y29kZT5BY2NlcHQtTGFuZ3VhZ2U8L2NvZGU+IGRlIGwnZW4tdOp0ZS4gwCBjaGFxdWUg6WzpbWVudCAKICAgICAgICBwZXV0IOp0cmUgYXNzb2Np6SB1biBmYWN0ZXVyIGRlIHF1YWxpdOkuIExlcyBkaWZm6XJlbnRlcyAKICAgICAgICB2YXJpYW50ZXMgcGV1dmVudCDpZ2FsZW1lbnQg6nRyZSBhc3NvY2npZXMgb3Ugbm9uIOAgdW5lIAogICAgICAgIG91IHBsdXNpZXVycyBsYW5ndWVzLjwvdGQ+CiAgICAgIDwvdHI+CgogICAgICA8dHIgdmFsaWduPSJ0b3AiPgogICAgICAgIDx0ZD5FbmNvZGFnZTwvdGQ+CgogICAgICAgIDx0ZD5MZSBuYXZpZ2F0ZXVyIHBy6XNlbnRlIHNlcyBwculm6XJlbmNlcyBhdSBtb3llbiBkdSBjaGFtcCAKICAgICAgICA8Y29kZT5BY2NlcHQtRW5jb2Rpbmc8L2NvZGU+IGRlIGwnZW4tdOp0ZS4gwCBjaGFxdWUg6WzpbWVudCAKICAgICAgICBwZXV0IOp0cmUgYXNzb2Np6SB1biBmYWN0ZXVyIGRlIHF1YWxpdOkuPC90ZD4KICAgICAgPC90cj4KCiAgICAgIDx0ciB2YWxpZ249InRvcCI+CiAgICAgICAgPHRkPkpldSBkZSBjYXJhY3TocmVzPC90ZD4KCiAgICAgICAgPHRkPkxlIG5hdmlnYXRldXIgcHLpc2VudGUgc2VzIHBy6WbpcmVuY2VzIGF1IG1veWVuIGR1IGNoYW1wIAogICAgICAgIDxjb2RlPkFjY2VwdC1DaGFyc2V0PC9jb2RlPiBkZSBsJ2VuLXTqdGUuIMAgY2hhcXVlIOls6W1lbnQgCiAgICAgICAgcGV1dCDqdHJlIGFzc29jaekgdW4gZmFjdGV1ciBkZSBxdWFsaXTpLiBMZXMgZGlmZulyZW50ZXMgCiAgICAgICAgdmFyaWFudGVzIHBldXZlbnQgc2Ugdm9pciBhc3NvY2llciB1biBqZXUgZGUgY2FyYWN06HJlcyAKICAgICAgICBjb21tZSB0eXBlIGRlIG3pZGlhLjwvdGQ+CiAgICAgIDwvdHI+CiAgICA8L3RhYmxlPgoKCjxoMz48YSBuYW1lPSJhbGdvcml0aG0iIGlkPSJhbGdvcml0aG0iPkFsZ29yaXRobWUgZGUgTulnb2NpYXRpb24gZCdBcGFjaGU8L2E+PC9oMz4KCiAgICA8cD5BcGFjaGUgcGV1dCB1dGlsaXNlciBsJ2FsZ29yaXRobWUgcHLpc2VudOkgY2ktYXBy6HMgcG91ciBjaG9pc2lyIGxhCiAgICAnbWVpbGxldXJlJyB2YXJpYW50ZSwgc2kgZWxsZSBleGlzdGUsIOAgcmVudm95ZXIgYXUgbmF2aWdhdGV1ci4gQ2V0CiAgICBhbGdvcml0aG1lIG4nZXN0IHBhcyBjb25maWd1cmFibGUuIElsIGZvbmN0aW9ubmUgZGUgY2V0dGUgbWFuaehyZSZuYnNwOzo8L3A+CgogICAgPG9sPgogICAgICA8bGk+RW4gcHJlbWllciBsaWV1LCBwb3VyIGNoYXF1ZSBkaW1lbnNpb24gZGUgbGEgbulnb2NpYXRpb24sIAogICAgICB26XJpZmllciBsZSBjaGFtcCBkJ2VuLXTqdGUgPGVtPkFjY2VwdCo8L2VtPiBhcHByb3ByaekgZXQgCiAgICAgIGF0dHJpYnVlciB1biBmYWN0ZXVyIGRlIHF1YWxpdOkg4CBjaGFjdW5lIGRlcyB2YXJpYW50ZXMuIFNpIAogICAgICBsJ2VuLXTqdGUgPGVtPkFjY2VwdCo8L2VtPiBkJ3VuZSBkaW1lbnNpb24gaW5kaXF1ZSBxdWUgY2V0dGUgCiAgICAgIHZhcmlhbnRlIG4nZXN0IHBhcyBhY2NlcHRhYmxlLCDpbGltaW5lciBjZXR0ZSB2YXJpYW50ZS4gUydpbCAKICAgICAgbmUgcmVzdGUgYXVjdW5lIHZhcmlhbnRlLCBhbGxlciDgIGwn6XRhcGUgNC48L2xpPgoKICAgICAgPGxpPgogICAgICAgIENob2lzaXIgbGEgJ21laWxsZXVyZScgZGVzIHZhcmlhbnRlcyBwYXIg6WxpbWluYXRpb24uIAogICAgICAgIENoYWN1biBkZXMgdGVzdHMgc3VpdmFudHMgZXN0IGFwcGxpcXXpIGRhbnMgY2V0IG9yZHJlLiAKICAgICAgICBUb3V0ZXMgbGVzIHZhcmlhbnRlcyBuZSBwYXNzYW50IHBhcyB1biB0ZXN0IHNvbnQgCiAgICAgICAgc3lzdOltYXRpcXVlbWVudCDpbGltaW7pZXMuIEFwcuhzIGNoYWN1biBkZXMgdGVzdHMsIHMnaWwgCiAgICAgICAgbmUgcmVzdGUgcXUndW5lIHZhcmlhbnRlLCBsYSBjaG9pc2lyIGNvbW1lIGxhIG1laWxsZXVyZSAKICAgICAgICBldCBhbGxlciDgIGwn6XRhcGUgMy4gUydpbCByZXN0ZSBwbHVzIGQndW5lIHZhcmlhbnRlLCBhbGxlciAKICAgICAgICDgIGwn6XRhcGUgc3VpdmFudGUuCgkKICAgICAgICA8b2w+CiAgICAgICAgICA8bGk+TXVsdGlwbGllciBsZSBmYWN0ZXVyIGRlIHF1YWxpdOkgZGUgbCdlbi106nRlIAogICAgICAgICAgPGNvZGU+QWNjZXB0PC9jb2RlPiBwYXIgbGUgZmFjdGV1ciBxdWFsaXTpIGRlIGxhIHNvdXJjZSBkdSAKICAgICAgICAgIHR5cGUgZGUgbelkaWEgZGUgY2V0dGUgdmFyaWFudGUsIGV0IGNob2lzaXIgbGVzIHZhcmlhbnRlcyAKICAgICAgICAgIGF2ZWMgbGUgcGx1cyBncmFuZCBy6XN1bHRhdC48L2xpPgoJICAKICAgICAgICAgIDxsaT5DaG9pc2lyIGxlcyB2YXJpYW50ZXMgcXVpIHBy6XNlbnRlbnQgbGUgcGx1cyBncmFuZCAKICAgICAgICAgIGZhY3RldXIgZGUgcXVhbGl06SBkZSBsYW5ndWUuPC9saT4KCiAgICAgICAgICA8bGk+Q2hvaXNpciBsZXMgdmFyaWFudGVzIGRvbnQgbGEgbGFuZ3VlIGNvcnJlc3BvbmQgbGUgCiAgICAgICAgICBtaWV1eCwgc29pdCDgIGwnb3JkcmUgZGUgcHLpZulyZW5jZSBkZXMgbGFuZ3VlcyBkYW5zIAogICAgICAgICAgbCdlbi106nRlIDxjb2RlPkFjY2VwdC1MYW5ndWFnZTwvY29kZT4gKHMnaWwgZXhpc3RlKSwgCiAgICAgICAgICBzb2l0IOAgbCdvcmRyZSBkZXMgbGFuZ3VlcyBkZSBsYSBkaXJlY3RpdmUgCiAgICAgICAgICA8Y29kZT5MYW5ndWFnZVByaW9yaXR5PC9jb2RlPiAoc2kgZWxsZSBleGlzdGUpLjwvbGk+CgkgIAogICAgICAgICAgPGxpPkNob2lzaXIgbGVzIHZhcmlhbnRlcyBwculzZW50YW50IGxlIHBhcmFt6HRyZSBkZSBuaXZlYXUgCiAgICAgICAgICAoJ2xldmVsJykgZGUgbelkaWEgbGUgcGx1cyBncmFuZCAoYydlc3QgY2UgcXVpIGVzdCB1dGlsaXPpIAogICAgICAgICAgcG91ciBjb25uYe50cmUgbGEgdmVyc2lvbiBkZXMgdHlwZXMgZGUgbelkaWFzIHRleHQvaHRtbCkuPC9saT4KCiAgICAgICAgICA8bGk+Q2hvaXNpciBsZXMgdmFyaWFudGVzIGRvbnQgbGUgamV1IGRlIGNhcmFjdOhyZXMgZXN0IGxlIAogICAgICAgICAgbWVpbGxldXIsIHBhciByYXBwb3J0IOAgbCdlbi106nRlIDxjb2RlPkFjY2VwdC1DaGFyc2V0PC9jb2RlPi4gCiAgICAgICAgICBMZSBqZXUgZGUgY2FyYWN06HJlcyBJU08tODg1OS0xIGVzdCB0b3Vqb3VycyBhY2NlcHRhYmxlLCDgIAogICAgICAgICAgbW9pbnMgcXUnaWwgbidhaXQg6XTpIGV4cGxpY2l0ZW1lbnQgcmVmdXPpLiBMZXMgdmFyaWFudGVzIAogICAgICAgICAgYXZlYyB1biB0eXBlIGRlIG3pZGlhIDxjb2RlPnRlc3QvKjwvY29kZT4gZXQgcXVpIG5lIHNvbnQgCiAgICAgICAgICBwYXMgZXhwbGljaXRlbWVudCBhc3NvY2npZXMg4CB1biBqZXUgZGUgY2FyYWN06HJlIGRvbm7pIAogICAgICAgICAgc29udCBzdXBwb3PpZXMgZW5jb2TpZXMgZW4gSVNPLTg4NTktMS48L2xpPgoKICAgICAgICAgIDxsaT5DaG9pc2lyIGxlcyB2YXJpYW50ZXMgcXVpIG9udCB1biBqZXUgZGUgY2FyYWN06HJlcyAKICAgICAgICAgIGTpZmluaSBldCBxdWkgPGVtPm4nPC9lbT5lc3QgPGVtPnBhczwvZW0+IElTTy04ODU5LTEuIAogICAgICAgICAgUydpbCBuJ2V4aXN0ZSBwYXMgZGUgdGVsbGVzIHZhcmlhbnRlcywgYWxvcnMgbGVzIAogICAgICAgICAgY2hvaXNpciB0b3V0ZXMuPC9saT4KCiAgICAgICAgICA8bGk+Q2hvaXNpciBsZXMgdmFyaWFudGVzIHBy6XNlbnRhbnQgbGUgbWVpbGxldXIgZW5jb2RhZ2UuIAogICAgICAgICAgUydpbCBleGlzdGUgZGVzIHZhcmlhbnRlcyBhdmVjIHVuIGVuY29kYWdlIGFjY2VwdGFibGUgcGFyIAogICAgICAgICAgbGUgJ3VzZXItYWdlbnQnIGR1IG5hdmlnYXRldXIsIGNob2lzaXIgY2VzIHZhcmlhbnRlcyBzZXVsZXMuIAogICAgICAgICAgRGFucyBsZSBjYXMgY29udHJhaXJlLCBzJ2lsIGV4aXN0ZSDgIGxhIGZvaXMgZGVzIHZhcmlhbnRlcyAKICAgICAgICAgIGVuY29k6WVzIGV0IG5vbiBlbmNvZOllcywgbmUgY2hvaXNpciBxdWUgbGVzIHZhcmlhbnRlcyAKICAgICAgICAgIG5vbiBlbmNvZOllcy4gRGFucyBsZXMgYXV0cmVzIGNhcywgY2hvaXNpciB0b3V0ZXMgbGVzIAogICAgICAgICAgdmFyaWFudGVzLjwvbGk+CgogICAgICAgICAgPGxpPkNob2lzaXIgbGVzIHZhcmlhbnRlcyBwculzZW50YW50IGxhIHBsdXMgcGV0aXRlIHRhaWxsZS48L2xpPgoKICAgICAgICAgIDxsaT5DaG9pc2lyIGxhIHByZW1p6HJlIHZhcmlhbnRlIGRlIGNlbGxlcyBxdWkgcmVzdGVudC4gQ2UgCiAgICAgICAgICBzZXJhIGRvbmMgc29pdCBsYSBwcmVtaehyZSB2YXJpYW50ZSBsaXN06WUgZGFucyBsZSBmaWNoaWVyIAogICAgICAgICAgZGVzIHRhYmxlcyBkZSB0eXBlcywgc29pdCwgc2kgbGVzIHZhcmlhbnRlcyBzb250IGx1ZXMgZCd1biAKICAgICAgICAgIHLpcGVydG9pcmUsIGNlbGxlIGRvbnQgbGUgbm9tIGFwcGFyYe50IGVuIHByZW1pZXIgZGFucyB1biAKICAgICAgICAgIGNsYXNzZW1lbnQgcGFyIGNvZGUgQVNDSUkuPC9saT4KICAgICAgICA8L29sPgogICAgICA8L2xpPgoKICAgICAgPGxpPkNldCBhbGdvcml0aG1lIGEgcGVybWlzIGRlIGNob2lzaXIgbGEgJ21laWxsZXVyZScgZGVzIAogICAgICB2YXJpYW50ZXMsIHF1aSBlc3QgcmVudm956WUgZW4gculwb25zZSDgIGxhIHJlcXXqdGUgZHUgCiAgICAgIG5hdmlnYXRldXIuIEwnZW4tdOp0ZSA8Y29kZT5WYXJ5PC9jb2RlPiBkZSBsYSBy6XBvbnNlIEhUVFAgCiAgICAgIGVzdCB1dGlsaXPpIHBvdXIgaW5kaXF1ZXIgbGVzIGRpbWVuc2lvbnMgZGUgbGEgbulnb2NpYXRpb24gCiAgICAgIChsZXMgbmF2aWdhdGV1cnMgZXQgbGVzIHNlcnZldXJzIG1hbmRhdGFpcmVzIHNvbnQgY2FwYWJsZXMgZGUgCiAgICAgIHByZW5kcmUgZW4gY29tcHRlIGNldHRlIGluZm9ybWF0aW9uIHF1YW5kIGlsIGdhcmRlbnQgdW5lIAogICAgICByZXNzb3VyY2UgZW4gY2FjaGUpLiBGaW4gZGVzIG9w6XJhdGlvbnMuPC9saT4KICAgICAgCiAgICAgIDxsaT5BcnJpdmVyIOAgY2UgcG9pbnQgc2lnbmlmaWUgcXUnYXVjdW5lIHZhcmlhbnRlIG4nYSBwdSDqdHJlIAogICAgICBjaG9pc2llLCBjYXIgYXVjdW5lIG4nZXN0IGFjY2VwdGFibGUgYXV4IHlldXggZHUgbmF2aWdhdGV1ci4gCiAgICAgIFJlbnZveWVyIHVuZSBlcnJldXIgNDA2ICgiTm8gYWNjZXB0YWJsZSByZXByZXNlbnRhdGlvbiIgLSBOZFQmbmJzcDs6IAogICAgICAiQXVjdW5lIHJlcHLpc2VudGF0aW9uIGFjY2VwdGFibGUiKSBkYW5zIHVuIGRvY3VtZW50IEhUTUwgCiAgICAgIHBy6XNlbnRhbnQgbGVzIGRpdmVyc2VzIHZhcmlhbnRlcyBwb3NzaWJsZXMuIEwnZW4tdOp0ZSBIVFRQIAogICAgICA8Y29kZT5WYXJ5PC9jb2RlPiBlc3Qg6WdhbGVtZW50IHJlbnNlaWdu6SBwb3VyIHBy6XNlbnRlciBsZXMgCiAgICAgIGRpbWVuc2lvbnMgZGUgbGEgbulnb2NpYXRpb24uPC9saT4KICAgIDwvb2w+Cgo8L2Rpdj48ZGl2IGNsYXNzPSJ0b3AiPjxhIGhyZWY9IiNwYWdlLWhlYWRlciI+PGltZyBhbHQ9InRvcCIgc3JjPSIuL2ltYWdlcy91cC5naWYiIC8+PC9hPjwvZGl2Pgo8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KPGgyPjxhIG5hbWU9ImJldHRlciIgaWQ9ImJldHRlciI+VHJpY2hlciBzdXIgbGVzIEZhY3RldXJzIGRlIFF1YWxpdOk8L2E+PC9oMj4KCiAgICA8cD5JbCBhcnJpdmUgcXUnQXBhY2hlIG1vZGlmaWUgbGVzIGZhY3RldXJzIGRlIHF1YWxpdOkgcGFyIHJhcHBvcnQgCiAgICDgIGxhIHZhbGV1ciBxdSdpbHMgZGV2cmFpZW50IGF2b2lyIGVuIHN1aXZhbnQgc3RyaWN0ZW1lbnQgCiAgICBsJ2FsZ29yaXRobWUgZOljcml0IHBsdXMgaGF1dC4gQ2VjaSBwZXJtZXQgZCdvYnRlbmlyIGRlIG1laWxsZXVycyAKICAgIHLpc3VsdGF0cyBwb3VyIGfpcmVyIGxlcyBuYXZpZ2F0ZXVycyBxdWkgbidlbnZvaWVudCBwYXMgdG91dGVzIAogICAgbGVzIGluZm9ybWF0aW9ucyBvdSBlbnZvaWVudCBkZXMgaW5mb3JtYXRpb25zIGVycm9u6WVzLiBBaW5zaSwgCiAgICBjZXJ0YWlucyBuYXZpZ2F0ZXVycywgcGFybWkgbGVzIHBsdXMgculwYW5kdXMgZHUgbWFyY2jpLCBlbnZvaWVudCAKICAgIGRlcyBlbi106nRlcyA8Y29kZT5BY2NlcHQ8L2NvZGU+IHF1aSBlbnRyYe5uZXJhaWVudCBsJ2Vudm9pIGRlIGxhIAogICAgbWF1dmFpc2UgdmFyaWFudGUgZGFucyBkZSBub21icmV1eCBjYXMuIFNpIGxlIG5hdmlnYXRldXIgZW52b2llIAogICAgZGVzIGluZm9ybWF0aW9ucyBjb3JyZWN0ZXMsIEFwYWNoZSBuZSB0cmljaGVyYSBwYXMgc3VyIGxlcyBmYWN0ZXVycyAKICAgIGRlIHF1YWxpdOkuPC9wPgoKPGgzPjxhIG5hbWU9IndpbGRjYXJkcyIgaWQ9IndpbGRjYXJkcyI+VHlwZXMgZGUgTelkaWFzIGV0IEpva2VyczwvYT48L2gzPgoKICAgIDxwPkwnZW4tdOp0ZSBkZSByZXF16nRlIDxjb2RlPkFjY2VwdDo8L2NvZGU+IGluZGlxdWUgbGVzIHBy6WbpcmVuY2VzIAogICAgZGVzIHR5cGVzIGRlIG3pZGlhcy4gRWxsZSBwZXV0IGNvbXBvcnRlciBkZXMgJ2pva2VycycgdGVscyBxdWUgCiAgICAiaW1hZ2UvKiIgb3UgIiovKiIsIG/5ICogc2lnbmlmaWUgIm4naW1wb3J0ZSBxdW9pIi4gQWluc2ksIHVuZSAKICAgIHJlcXXqdGUgcHLpc2VudGFudCZuYnNwOzo8L3A+Cgo8ZGl2IGNsYXNzPSJleGFtcGxlIj48cD48Y29kZT5BY2NlcHQ6IGltYWdlLyosICovKjwvY29kZT48L3A+PC9kaXY+CgogICAgPHA+c2lnbmlmaWVyYWl0IHF1ZSB0b3V0IHR5cGUgY29tbWVu52FudCBwYXIgImltYWdlLyIgZXN0IAogICAgYWNjZXB0YWJsZSwgY29tbWUgc2VyYWl0IGFjY2VwdGFibGUgdG91dCBhdXRyZSB0eXBlLiBDZXJ0YWlucyAKICAgIG5hdmlnYXRldXJzIGVudm9pZW50IHNhbnMgYXJy6nQgZGVzIGpva2VycyBlbiBwbHVzIGRlcyB0eXBlcyAKICAgIHF1J2lscyBwZXV2ZW50IGVmZmVjdGl2ZW1lbnQgZ+lyZXIuIFBhciBleGVtcGxlJm5ic3A7OjwvcD4KCjxkaXYgY2xhc3M9ImV4YW1wbGUiPjxwPjxjb2RlPgogIEFjY2VwdDogdGV4dC9odG1sLCB0ZXh0L3BsYWluLCBpbWFnZS9naWYsIGltYWdlL2pwZWcsICovKgo8L2NvZGU+PC9wPjwvZGl2PgogICAgPHA+TGUgYnV0IGRlIGNlcyBpbmZvcm1hdGlvbnMgZXN0IGQnaW5kaXF1ZXIgcXVlIGxlcyB0eXBlcyAKICAgIGV4cGxpY2l0ZW1lbnQgY2l06XMgc29udCBsZXMgcHLpZuly6XMgbWFpcyBxdWUgbGUgCiAgICBuYXZpZ2F0ZXVyIGFjY2VwdGUg6WdhbGVtZW50IGQnYXV0cmVzIHJlcHLpc2VudGF0aW9ucy4gCiAgICBFbiB1dGlsaXNhbnQgbGVzIGZhY3RldXJzIGRlIHF1YWxpdOksIHZvaWNpIGNlIHF1ZSBkZXZyYWl0IAogICAgZW52b3llciBsZSBuYXZpZ2F0ZXVyJm5ic3A7OjwvcD4KPGRpdiBjbGFzcz0iZXhhbXBsZSI+PHA+PGNvZGU+CiAgQWNjZXB0OiB0ZXh0L2h0bWwsIHRleHQvcGxhaW4sIGltYWdlL2dpZiwgaW1hZ2UvanBlZywgKi8qOyBxPTAuMDEKPC9jb2RlPjwvcD48L2Rpdj4KICAgIDxwPkxlcyB0eXBlcyBleHBsaWNpdGVtZW50IGNpdOlzIG5lIHBy6XNlbnRlbnQgcGFzIGRlIGZhY3RldXIgCiAgICBkZSBxdWFsaXTpLCBpbHMgcmXnb2l2ZW50IGRvbmMgbGEgdmFsZXVyIHBhciBk6WZhdXQgZGUgMS4wIAogICAgKGxhIHBsdXMgaGF1dGUgdmFsZXVyIHBvc3NpYmxlKS4gTGVzIGpva2VycyBzb250IGFmZmVjdOlzIAogICAgZCd1bmUgcHLpZulyZW5jZSB0cuhzIGJhc3NlIGRlIDAuMDEsIHNpIGJpZW4gcXVlIGxlcyBhdXRyZXMgCiAgICB0eXBlcyBuZSBzZXJvbnQgdXRpbGlz6XMgcXVlIHNpIGF1Y3VuZSBkZXMgdmFyaWFudGVzIG5lIAogICAgY29ycmVzcG9uZCDgIHVuIGRlcyB0eXBlcyBleHBsaWNpdGVtZW50IHBy6WbpculzLjwvcD4KCiAgICA8cD5TaSBsZSBjaGFtcCBkJ2VuLXTqdGUgPGNvZGU+QWNjZXB0OjwvY29kZT4gPGVtPm5lPC9lbT4gCiAgICBjb250aWVudCA8ZW0+YXVjdW48L2VtPiBmYWN0ZXVyIGRlIHF1YWxpdOksIEFwYWNoZSBtb2RpZmllIAogICAgbGUgZmFjdGV1ciBkZSBxdWFsaXTpIGRlICIqLyoiIChzJ2lsIGVzdCBwculzZW50KSBlbiAwLjAxIAogICAgYWZpbiBkJ+ltdWxlciBsZSBjb21wb3J0ZW1lbnQgc291aGFpdOkuIEFwYWNoZSBwb3NpdGlvbm5lIAogICAg6WdhbGVtZW50IGxlIGZhY3RldXIgZGUgcXVhbGl06SBkZXMgam9rZXJzIHF1aSBzZSBwculzZW50ZW50IAogICAgc291cyBsYSBmb3JtZSAidHlwZS8qIiBlbiAwLjAyIChhZmluIHF1ZSBjZXMgZGVybmllcnMgc29pZW50IAogICAgcHLpZuly6XMg4CAiKi8qIikuIFNpIHVuIHNldWwgb3UgcGx1c2lldXJzIHR5cGVzIGRlIG3pZGlhIGRlIAogICAgbCdlbi106nRlIDxjb2RlPkFjY2VwdDo8L2NvZGU+IHBy6XNlbnRlIHVuIGZhY3RldXIgZGUgcXVhbGl06SwgCiAgICBjZXMgbW9kaWZpY2F0aW9ucyA8ZW0+bmU8L2VtPiBzb250IDxlbT5wYXM8L2VtPiBlZmZlY3R16WVzLCAKICAgIGFmaW4gcXVlIGxlcyByZXF16nRlcyBkZXMgbmF2aWdhdGV1cnMgcXVpIGVudm9pZW50IGRlcyAKICAgIGluZm9ybWF0aW9ucyBjb3JyZWN0ZXMgZm9uY3Rpb25uZW50IGNvbW1lIHBy6XZ1LjwvcD4KCgo8aDM+PGEgbmFtZT0iZXhjZXB0aW9ucyIgaWQ9ImV4Y2VwdGlvbnMiPkV4Y2VwdGlvbnMgYXV4IE7pZ29jaWF0aW9ucyBzdXIgbGEgTGFuZ3VlPC9hPjwvaDM+CgogICAgPHA+wCBwYXJ0aXIgZCdBcGFjaGUgMi4wLCBjZXJ0YWluZXMgZXhjZXB0aW9ucyBvbnQg6XTpIGFqb3V06WVzIAogICAg4CBsJ2FsZ29yaXRobWUgZGUgbulnb2NpYXRpb24gYWZpbiBkZSByZXRvbWJlciDpbOlnYW1tZW50IHN1ciAKICAgIG5vcyBwYXR0ZXMgZGFucyBsZXMgY2FzIG/5IGxhIG7pZ29jaWF0aW9uIHN1ciBsYSBsYW5ndWUgCiAgICBuJ2Fib3V0aXQgcGFzLjwvcD4KICAgIAogICAgPHA+U2kgdW4gY2xpZW50IGRlbWFuZGUgdW5lIHBhZ2UgZHUgc2VydmV1ciwgc2FucyBxdWUgY2UgZGVybmllciAKICAgIG5lIHB1aXNzZSBk6XRlcm1pbmVyIHVuZSBwYWdlIGNvcnJlc3BvbmRhbnQgYXUgY2hhbXAgCiAgICA8Y29kZT5BY2NlcHQtbGFuZ3VhZ2U8L2NvZGU+IGVudm956SBwYXIgbGUgbmF2aWdhdGV1ciwgbGUgc2VydmV1ciAKICAgIGRvaXQgcmVudm95ZXIgdW5lIHLpcG9uc2UgcGFybWkgIlBhcyBkZSBWYXJpYW50ZSBBY2NlcHRhYmxlIiAKICAgIGV0ICJDaG9peCBNdWx0aXBsZXMiIGF1IGNsaWVudC4gQWZpbiBkJ+l2aXRlciBjZXMgbWVzc2FnZXMgCiAgICBkJ2VycmV1ciwgaWwgZXN0IHBvc3NpYmxlIGRlIGNvbmZpZ3VyZXIgQXBhY2hlIHBvdXIgcXUnaWwgaWdub3JlIAogICAgbGUgY2hhbXAgPGNvZGU+QWNjZXB0LWxhbmd1YWdlPC9jb2RlPiBkYW5zIGNlcyBjYXMgZXQgcXUnaWwgCiAgICBmb3Vybmlzc2UgYXUgY2xpZW50IHVuIGRvY3VtZW50IHF1aSBuZSBjb3JyZXNwb25kIHBhcyAKICAgIGV4cGxpY2l0ZW1lbnQg4CBzYSByZXF16nRlLiBMYSBkaXJlY3RpdmUgCiAgICA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuL21vZC9tb2RfbmVnb3RpYXRpb24uaHRtbCNmb3JjZWxhbmd1YWdlcHJpb3JpdHkiPkZvcmNlTGFuZ3VhZ2VQcmlvcml0eTwvYT48L2NvZGU+IAogICAgcGV1dCDqdHJlIHV0aWxpc+llIHBvdXIgcGFzc2VyIG91dHJlIOAgY2VzIGRldXggbWVzc2FnZXMgZCdlcnJldXIgCiAgICBldCBtb2RpZmllciBsYSBy6XBvbnNlIGR1IHNlcnZldXIgYXUgbW95ZW4gZGUgbGEgZGlyZWN0aXZlIAogICAgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi9tb2QvbW9kX25lZ290aWF0aW9uLmh0bWwjbGFuZ3VhZ2Vwcmlvcml0eSI+TGFuZ3VhZ2VQcmlvcml0eTwvYT48L2NvZGU+LjwvcD4KCiAgICA8cD5MZSBzZXJ2ZXVyIHZhIOlnYWxlbWVudCBlc3NheWVyIGRlIG1vZGlmaWVyIGxhIHNvdXMtY2xhc3NlIAogICAgZGUgbGFuZ3VlIHNpIGF1Y3VuZSBjb3JyZXNwb25kYW5jZSBuJ2VzdCB0cm91dullLiBQYXIgZXhlbXBsZSwgCiAgICBkYW5zIGxlIGNhcyBv+SB1biBjbGllbnQgZGVtYW5kZSBkZXMgZG9jdW1lbnRzIGF2ZWMgbGUgbGFuZ2FnZSAKICAgIDxjb2RlPmVuLUdCPC9jb2RlPiBwb3VyICJCcml0aXNoIEVuZ2xpc2giLCBsZSBwcm90b2NvbGUgSFRUUC8xLjEgCiAgICBuJ2F1dG9yaXNlIHBhcyBsZSBzZXJ2ZXVyIOAgculwb25kcmUgcGFyIHVuIGRvY3VtZW50IHF1aSBzZXJhaXQgCiAgICBtYXJxdekgcGFyIDxjb2RlPmVuPC9jb2RlPi4gKE5vdGV6IHF1ZSBwculzZW50ZXIgCiAgICA8Y29kZT5lbi1HQjwvY29kZT4gZGFucyBsJ2VuLXTqdGUgPGNvZGU+QWNjZXB0LWxhbmd1YWdlPC9jb2RlPiAKICAgIGVzdCBsb2luIGQn6nRyZSBwZXJ0aW5lbnQsIGlsIHNlbWJsZSB0cuhzIHBldSBwcm9iYWJsZSBxdWUgbGUgCiAgICBsZWN0ZXVyIGNvbXByZW5uZSBsJ2FuZ2xhaXMgIkJyaXRpc2giIGV0IG5lIGNvbXByZW5uZSBwYXMgCiAgICBsJ2FuZ2xhaXMgInRvdXQgY291cnQiLiBJbCBzZSB0cm91dmUgbWFsaGV1cmV1c2VtZW50IHF1ZSAKICAgIGJlYXVjb3VwIGRlIG5hdmlnYXRldXJzIHBy6XNlbnRlbnQgY2UgY29tcG9ydGVtZW50LikgQnJlZiwgCiAgICBzaSBhdWN1bmUgYXV0cmUgbGFuZ3VlIG5lIGNvcnJlc3BvbmQgZXQgcXVlIGxlIHNlcnZldXIgCiAgICBzJ2FwcHLqdGVyYWl0IG5vcm1hbGVtZW50IOAgZW52b3llciB1bmUgculwb25zZSBkJ2VycmV1ciAKICAgICJObyBBY2NlcHRhYmxlIFZhcmlhbnRzIiwgb3Ug4CB1dGlsaXNlciBsYSBt6XRob2RlIAogICAgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi9tb2QvbW9kX25lZ29jaWF0aW9uLmh0bWwjbGFuZ3VhZ2Vwcmlvcml0eSI+TGFuZ3VhZ2VQcmlvcml0eTwvYT48L2NvZGU+IAogICAgcHLpc2VudOllIGNpLWF2YW50LCBsZSBzZXJ2ZXVyIHZhIGlnbm9yZXIgbGEgc291cy1jbGFzc2UgZGUgCiAgICBsYW5ndWUgPGNvZGU+R0I8L2NvZGU+IGV0IGNvbnNpZOlyZXIgcXVlIGxhIHJlcXXqdGUgCiAgICA8Y29kZT5lbi1HQjwvY29kZT4gY29ycmVzcG9uZCBiaWVuIGF1IGRvY3VtZW50IDxjb2RlPmVuPC9jb2RlPi4gCiAgICBJbXBsaWNpdGVtZW50LCBBcGFjaGUgYWpvdXRlIGxhIGxhbmd1ZSBwYXJlbnRlICg8Y29kZT5lbjwvY29kZT4pIAogICAg4CBsYSBsaXN0ZSBkZXMgbGFuZ3VlcyBjb25zaWTpcullcyBjb21tZSBhY2NlcHRhYmxlcyBwYXIgbGUgCiAgICBuYXZpZ2F0ZXVyLCBhdmVjIHVuIGZhY3RldXIgZGUgcXVhbGl06SB0cuhzIGZhaWJsZS4gTm90ZXogCiAgICBjZXBlbmRhbnQgcXVlIHNpIGxlIGNsaWVudCBkZW1hbmRlICJlbi1HQjsgcXM9MC45LCBmcjsgcXM9MC44IiwgCiAgICBldCBxdWUgbGUgc2VydmV1ciBkaXNwb3NlIGRlIGRvY3VtZW50cyBtYXJxdelzIGNvbW1lICJlbiIgZXQgCiAgICAiZnIiLCBhbG9ycyBsZSBkb2N1bWVudCBlbiBmcmFu52FpcyBzZXJhIHJlbnZveekgcGFyIGxlIHNlcnZldXIuIAogICAgQ2UgY29tcG9ydGVtZW50IGVzdCBu6WNlc3NhaXJlLCBhZmluIGRlIGdhcmRlciBsYSBjb21wYXRpYmlsaXTpIAogICAgYXZlYyBIVFRQLzEuMSBldCBmb25jdGlvbm5lciBhdmVjIGxlcyBuYXZpZ2F0ZXVycyBjb3JyZWN0ZW1lbnQgCiAgICBjb25maWd1culzLjwvcD4KICAgIAogICAgPHA+UG91ciBzdXBwb3J0ZXIgbGVzIHRlY2huaXF1ZXMgYXZhbmPpZXMgZGUgZOl0ZWN0aW9uIGRlCiAgICBwculm6XJlbmNlIGRlIGxhbmd1ZXMgZGUgbCd1dGlsaXNhdGV1ciAodGVsbGVzIHF1ZSBsZXMgCiAgICBDb29raWVzLCBvdSBsZXMgY2hlbWlucyBkJ1VSTCBzcOljaWF1eCksIEFwYWNoZSByZWNvbm5h7nQgCiAgICBkZXB1aXMgbGEgdmVyc2lvbiAyLjAuNDcgbGEgPGEgaHJlZj0iZW52Lmh0bWwiPnZhcmlhYmxlIAogICAgZCdlbnZpcm9ubmVtZW50PC9hPiA8Y29kZT5wcmVmZXItbGFuZ3VhZ2U8L2NvZGU+LiBTaSBjZXR0ZSAKICAgIHZhcmlhYmxlIGV4aXN0ZSwgZXQgcXUnZWxsZSBwculjaXNlIHVuZSBsYW5ndWUgdmFsaWRlLCAKICAgIDxjb2RlIGNsYXNzPSJtb2R1bGUiPjxhIGhyZWY9Ii4vbW9kL21vZF9uZWdvY2lhdGlvbi5odG1sIj5tb2RfbmVnb2NpYXRpb248L2E+PC9jb2RlPiBjaGVyY2hlcmEgdW5lIHZhcmlhbnRlIHF1aSAKICAgIHkgY29ycmVzcG9uZGUuIFMnaWwgbidlbiB0cm91dmUgcGFzLCBsZSBwcm9jZXNzdXMgZGUgCiAgICBu6WdvY2lhdGlvbiBub3JtYWwgc2UgZOlyb3VsZXJhLjwvcD4KCiAgICA8ZGl2IGNsYXNzPSJleGFtcGxlIj48aDM+RXhlbXBsZTwvaDM+PHA+PGNvZGU+CiAgICAgIFNldEVudklmIENvb2tpZSAibGFuZ3VhZ2U9ZW4iIHByZWZlci1sYW5ndWFnZT1lbjxiciAvPgogICAgICBTZXRFbnZJZiBDb29raWUgImxhbmd1YWdlPWZyIiBwcmVmZXItbGFuZ3VhZ2U9ZnIKICAgIDwvY29kZT48L3A+PC9kaXY+Cgo8L2Rpdj48ZGl2IGNsYXNzPSJ0b3AiPjxhIGhyZWY9IiNwYWdlLWhlYWRlciI+PGltZyBhbHQ9InRvcCIgc3JjPSIuL2ltYWdlcy91cC5naWYiIC8+PC9hPjwvZGl2Pgo8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KPGgyPjxhIG5hbWU9ImV4dGVuc2lvbnMiIGlkPSJleHRlbnNpb25zIj5FeHRlbnNpb25zIHZlcnMgbGEgTulnb2NpYXRpb24gZGUgQ29udGVudQpUcmFuc3BhcmVudGU8L2E+PC9oMj4KCjxwPkFwYWNoZSBjb21wbOh0ZSBsZSBwcm90b2NvbGUgZGUgbulnb2NpYXRpb24gZGUgY29udGVudSAoUkZDIDIyOTUpIApjb21tZSBk6WNyaXQgaWNpLiBVbiBub3V2ZWwg6WzpbWVudCA8Y29kZT57ZW5jb2RpbmcgLi59PC9jb2RlPiBlc3QgCnV0aWxpc+kgZGFucyBsYSBsaXN0ZSBkZXMgdmFyaWFudGVzIHBvdXIgbm9tbWVyIGNlbGxlcyBxdWkgbmUgc29udCAKZGlzcG9uaWJsZXMgcXVlIHNvdXMgdW4gZW5jb2RhZ2Ugc3DpY2lmaXF1ZS4gTCdpbXBs6W1lbnRhdGlvbiBkZSAKbCdhbGdvcml0aG1lIFJWU0EvMS4wIChSRkMgMjI5NikgZXN0IOl0ZW5kdWUgYWZpbiBkJ2ludOlncmVyIGxlcyAKdmFyaWFudGVzIGVuY29k6WVzIGRhbnMgbGEgbGlzdGUsIGV0IGRlIGxlcyBwcm9wb3NlciBjb21tZSAKY2FuZGlkYXRlcyBxdWFuZCBsZXVyIGVuY29kYWdlIGVzdCBhY2NlcHRhYmxlIGF1IHZ1IGRlIGwnZW4tdOp0ZSAKPGNvZGU+QWNjZXB0LUVuY29kaW5nPC9jb2RlPi4gTCdpbXBs6W1lbnRhdGlvbiBSVlNBLzEuMCBuZSB0cm9ucXVlIApwYXMgbGVzIGZhY3RldXJzIGRlIHF1YWxpdOkg4CA1IGTpY2ltYWxlcyBhdmFudCBkZSBjaG9pc2lyIGxhIAptZWlsbGV1cmUgZGVzIHZhcmlhbnRlcy48L3A+CjwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0ibmFtaW5nIiBpZD0ibmFtaW5nIj7AIHByb3BvcyBkZXMgbGllbnMgaHlwZXJ0ZXh0ZXMgZXQgZGVzIGNvbnZlbnRpb25zIGRlIG5vbW1hZ2U8L2E+PC9oMj4KCiAgICA8cD5EYW5zIGxlIGNhcyBv+SBsYSBu6WdvY2lhdGlvbiBkZSBsYW5ndWVzIGVzdCB1dGlsaXPpZSwgaWwgZXN0IAogICAgcG9zc2libGUgZGUgY2hvaXNpciBkaXZlcnNlcyBjb252ZW50aW9ucyBkZSBub21tYWdlLCBjYXIgbGVzIAogICAgZmljaGllcnMgcGV1dmVudCBwculzZW50ZXIgcGx1cyBkJ3VuZSBleHRlbnNpb24sIGV0IGwnb3JkcmUgZGVzIAogICAgZXh0ZW5zaW9ucyBuJ2VzdCBub3JtYWxlbWVudCBwYXMgc2lnbmlmaWNhdGlmICh2b2lyIGxhIAogICAgZG9jdW1lbnRhdGlvbiA8YSBocmVmPSJtb2QvbW9kX21pbWUuaHRtbCNtdWx0aXBsZWV4dCI+bW9kX21pbWU8L2E+IAogICAgcG91ciBwbHVzIGRlIGTpdGFpbHMpLjwvcD4KCiAgICA8cD5IYWJpdHVlbGxlbWVudCwgdW4gZmljaGllciBhIHVuZSBleHRlbnNpb24gcG91ciBzb24gdHlwZSBNSU1FIAogICAgKHBhciBleGVtcGxlLCA8Y29kZT5odG1sPC9jb2RlPiksIHBhcmZvaXMgdW5lIGV4dGVuc2lvbiBwb3VyIHNvbiAKICAgIGVuY29kYWdlIChwYXIgZXhlbXBsZSwgPGNvZGU+Z3o8L2NvZGU+KSwgZXQgYmllbiBz+3IgdW5lIGV4dGVuc2lvbiAKICAgIGRlIGxhbmd1ZSAocGFyIGV4ZW1wbGUsIDxjb2RlPmVuPC9jb2RlPikgcG91ciBkaXN0aW5ndWVyIGxlcyAKICAgIGRpdmVyc2VzIHZhcmlhbnRlcy48L3A+CgogICAgPHA+RXhlbXBsZXMmbmJzcDs6PC9wPgoKICAgIDx1bD4KICAgICAgPGxpPmZvby5lbi5odG1sPC9saT4KCiAgICAgIDxsaT5mb28uaHRtbC5lbjwvbGk+CgogICAgICA8bGk+Zm9vLmVuLmh0bWwuZ3o8L2xpPgogICAgPC91bD4KCiAgICA8cD5Wb2ljaSBkJ2F1dHJlcyBleGVtcGxlcyBkZSBub21zIGRlIGZpY2hpZXJzIGFpbnNpIHF1ZSBkZXMgbGllbnMKICAgIGh5cGVydGV4dGVzIHZhbGlkZXMgZXQgaW52YWxpZGVzJm5ic3A7OjwvcD4KCiAgICA8dGFibGUgY2xhc3M9ImJvcmRlcmVkIj4KICAgICAgCiAgICAgIDx0cj4KICAgICAgICA8dGg+Tm9tIGRlIEZpY2hpZXI8L3RoPgoKICAgICAgICA8dGg+TGllbiB2YWxpZGU8L3RoPgoKICAgICAgICA8dGg+TGllbiBpbnZhbGlkZTwvdGg+CiAgICAgIDwvdHI+CgogICAgICA8dHI+CiAgICAgICAgPHRkPjxlbT5mb28uaHRtbC5lbjwvZW0+PC90ZD4KCiAgICAgICAgPHRkPmZvbzxiciAvPgogICAgICAgICBmb28uaHRtbDwvdGQ+CgogICAgICAgIDx0ZD4tPC90ZD4KICAgICAgPC90cj4KCiAgICAgIDx0cj4KICAgICAgICA8dGQ+PGVtPmZvby5lbi5odG1sPC9lbT48L3RkPgoKICAgICAgICA8dGQ+Zm9vPC90ZD4KCiAgICAgICAgPHRkPmZvby5odG1sPC90ZD4KICAgICAgPC90cj4KCiAgICAgIDx0cj4KICAgICAgICA8dGQ+PGVtPmZvby5odG1sLmVuLmd6PC9lbT48L3RkPgoKICAgICAgICA8dGQ+Zm9vPGJyIC8+CiAgICAgICAgIGZvby5odG1sPC90ZD4KCiAgICAgICAgPHRkPmZvby5nejxiciAvPgogICAgICAgICBmb28uaHRtbC5nejwvdGQ+CiAgICAgIDwvdHI+CgogICAgICA8dHI+CiAgICAgICAgPHRkPjxlbT5mb28uZW4uaHRtbC5nejwvZW0+PC90ZD4KCiAgICAgICAgPHRkPmZvbzwvdGQ+CgogICAgICAgIDx0ZD5mb28uaHRtbDxiciAvPgogICAgICAgICBmb28uaHRtbC5nejxiciAvPgogICAgICAgICBmb28uZ3o8L3RkPgogICAgICA8L3RyPgoKICAgICAgPHRyPgogICAgICAgIDx0ZD48ZW0+Zm9vLmd6Lmh0bWwuZW48L2VtPjwvdGQ+CgogICAgICAgIDx0ZD5mb288YnIgLz4KICAgICAgICAgZm9vLmd6PGJyIC8+CiAgICAgICAgIGZvby5nei5odG1sPC90ZD4KCiAgICAgICAgPHRkPmZvby5odG1sPC90ZD4KICAgICAgPC90cj4KCiAgICAgIDx0cj4KICAgICAgICA8dGQ+PGVtPmZvby5odG1sLmd6LmVuPC9lbT48L3RkPgoKICAgICAgICA8dGQ+Zm9vPGJyIC8+CiAgICAgICAgIGZvby5odG1sPGJyIC8+CiAgICAgICAgIGZvby5odG1sLmd6PC90ZD4KCiAgICAgICAgPHRkPmZvby5nejwvdGQ+CiAgICAgIDwvdHI+CiAgICA8L3RhYmxlPgoKICAgIDxwPkxlIHRhYmxlYXUgY2ktZGVzc3VzIG1vbnRyZSBxdSdpbCBlc3QgdG91am91cnMgcG9zc2libGUgZGUgCiAgICBzcOljaWZpZXIgbGUgbGllbiBzYW5zIGF1Y3VuZSBleHRlbnNpb24gZGFucyB1biBsaWVuIGh5cGVydGV4dGUuIAogICAgKHBhciBleGVtcGxlLCA8Y29kZT5mb288L2NvZGU+KS4gTCdhdmFudGFnZSBlbiBlc3QgcXUnaWwgZXN0IAogICAgYWluc2kgcG9zc2libGUgZGUgbmUgcGFzIG1vbnRyZXIgbGUgdHlwZSBkJ3VuIGRvY3VtZW50LCBldCBkZSAKICAgIGxlIG1vZGlmaWVyIHVsdOlyaWV1cmVtZW50LCBwYXIgZXhlbXBsZSBsZSBwYXNzZXIgZGUgPGNvZGU+aHRtbDwvY29kZT4gCiAgICDgIDxjb2RlPnNodG1sPC9jb2RlPiBvdSA8Y29kZT5jZ2k8L2NvZGU+IHNhbnMgYXZvaXIgYmVzb2luIGRlIAogICAgbW9kaWZpZXIgYXVjdW4gbGllbi48L3A+CiAgICAKICAgIDxwPlBvdXIgY29udGludWVyIOAgdXRpbGlzZXIgbGVzIHR5cGVzIE1JTUUgZGFucyBsZXMgbGllbnMgCiAgICAocGFyIGV4ZW1wbGUsIDxjb2RlPmZvby5odG1sPC9jb2RlPiksIGwnZXh0ZW5zaW9uIGNvcnJlc3BvbmRhbnQgCiAgICDgIGxhIGxhbmd1ZSAoYWluc2kgcXVlIGwnZXh0ZW5zaW9uIGQnZW5jb2RhZ2UsIHNpIGVsbGUgZXhpc3RlKSAKICAgIGRvaXQg6nRyZSBkdSBjb3TpIGRyb2l0IGRlIGwnZXh0ZW5zaW9uIGR1IHR5cGUgTUlNRSAocGFyIGV4ZW1wbGUsIAogICAgPGNvZGU+Zm9vLmh0bWwuZW48L2NvZGU+KS48L3A+CjwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9InNlY3Rpb24iPgo8aDI+PGEgbmFtZT0iY2FjaGluZyIgaWQ9ImNhY2hpbmciPsAgcHJvcG9zIGRlcyBDYWNoZXM8L2E+PC9oMj4KCiAgICA8cD5RdWFuZCB1biBjYWNoZSBnYXJkZSBlbiBt6W1vaXJlIHVuZSByZXBy6XNlbnRhdGlvbiwgaWwgbCdhc3NvY2llIAogICAg4CBsJ1VSTCBkZSBsYSByZXF16nRlLiBRdWFuZCBsYSBt6m1lIFVSTCB2aWVudCDgIOp0cmUgcmVkZW1hbmTpZSwgCiAgICBsZSBjYWNoZSBwZXV0IHV0aWxpc2VyIGxhIHJlcHLpc2VudGF0aW9uIGdhcmTpZSBlbiBt6W1vaXJlLCBwbHV09HQgCiAgICBxdWUgZGUgcmVmYWlyZSB1bmUgcmVxdep0ZSBhdSBzZXJ2ZXVyLiBDZXBlbmRhbnQsIHNpIGxhIHJlc3NvdXJjZSAKICAgIGVzdCBu6WdvY2lhYmxlIGNvdOkgc2VydmV1ciwgbGUgculzdWx0YXQgcG91cnJhaXQgZW4g6nRyZSBxdWUgbGEgCiAgICBy6XBvbnNlIOAgbGEgcHJlbWnocmUgcmVxdep0ZSBtaXNlIGVuIGNhY2hlIHNlcmFpdCByZW52b3npZSBkZSAKICAgIGZh529uIGVycm9u6WUuIFBvdXIgcHLpdmVuaXIgY2UgcHJvYmzobWUsIEFwYWNoZSBtYXJxdWUgdG91dGVzIAogICAgbGVzIHLpcG9uc2VzIGlzc3VlcyBkJ3VuZSBu6WdvY2lhdGlvbiBjb21tZSAibm9uLWNhY2hhYmxlcyIgcGFyIAogICAgbGVzIGNsaWVudHMgSFRUUC8xLjAuIEFwYWNoZSBzdXBwb3J0ZSBsZXMgc3DpY2lmaWNhdGlvbnMgZHUgCiAgICBwcm90b2NvbGUgSFRUUC8xLjEgZW4gY2UgcXVpIGNvbmNlcm5lIGxhIG1pc2UgZW4gY2FjaGUgZGVzIAogICAgculwb25zZXMgbulnb2Np6WVzLjwvcD4KCiAgICA8cD5MZXMgcmVxdep0ZXMgdmVuYW50IGQndW4gY2xpZW50IGNvbmZvcm1lIGF1IHByb3RvY29sZSBIVFRQLzEuMCAKICAgIChxdSdpbCBzJ2FnaXNzZSBkJ3VuIG5hdmlnYXRldXIgb3UgZCd1biBzZXJ2ZXVyIGNhY2hlKSBwZXV2ZW50IAogICAg6nRyZSByZW5kdWVzICJjYWNoYWJsZXMiIHNpIGxhIGRpcmVjdGl2ZSA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuL21vZC9tb2RfbmVnb2NpYXRpb24uaHRtbCNjYWNoZW5lZ290aWF0ZWRkb2NzIj5DYWNoZU5lZ290aWF0ZWREb2NzPC9hPjwvY29kZT4gZXN0IAogICAgdXRpbGlz6WUuIENldHRlIGRpcmVjdGl2ZSBwZXV0IOp0cmUgc3DpY2lmaellIGF1c3NpIGJpZW4gZGFucyAKICAgIGxhIGNvbmZpZ3VyYXRpb24gcHJpbmNpcGFsZSBkdSBzZXJ2ZXVyIHF1ZSBkYW5zIHVuIHNlcnZldXIgCiAgICB2aXJ0dWVsLCBldCBuZSBu6WNlc3NpdGUgcGFzIGQnYXJndW1lbnQuIEVsbGUgbidhIGF1Y3VuIGltcGFjdCAKICAgIHN1ciBsZXMgcmVxdep0ZXMgZGVzIGNsaWVudHMgZm9uY3Rpb25uYW50IGVuIEhUVFAvMS4xLjwvcD4KPC9kaXY+PGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi9pbWFnZXMvdXAuZ2lmIiAvPjwvYT48L2Rpdj4KPGRpdiBjbGFzcz0ic2VjdGlvbiI+CjxoMj48YSBuYW1lPSJtb3JlIiBpZD0ibW9yZSI+UGx1cyBkJ0luZm9ybWF0aW9uPC9hPjwvaDI+CgogICAgPHA+UG91ciBwbHVzIGQnaW5mb3JtYXRpb25zIGF1IHN1amV0IGRlIGxhIG7pZ29jaWF0aW9uIGRlIGNvbnRlbnUsIHZvaXIKICAgIDxhIGhyZWY9Imh0dHA6Ly9wcGV3d3cucGguZ2xhLmFjLnVrL35mbGF2ZWxsL3d3dy9sYW5nLW5lZy5odG1sIj5MYW5ndWFnZQogICAgTmVnb3RpYXRpb24gTm90ZXM8L2E+IGRlIEFsYW4gSi4gRmxhdmVsbC4gTm90ZXogcXVlIGNlIAogICAgZG9jdW1lbnQgbmUgc2VyYSBwZXV0Lep0cmUgcGFzIG1pcyDgIGpvdXIgZW4gZm9uY3Rpb24gZGVzIAogICAgY2hhbmdlbWVudHMgaW50ZXJ2ZW51cyBkYW5zIEFwYWNoZSAyLjAuPC9wPgo8L2Rpdj48L2Rpdj4KPGRpdiBjbGFzcz0iYm90dG9tbGFuZyI+CjxwPjxzcGFuPkxhbmd1ZXMgRGlzcG9uaWJsZXM6IDwvc3Bhbj48YSBocmVmPSIuL2VuL2NvbnRlbnQtbmVnb3RpYXRpb24uaHRtbCIgaHJlZmxhbmc9ImVuIiByZWw9ImFsdGVybmF0ZSIgdGl0bGU9IkVuZ2xpc2giPiZuYnNwO2VuJm5ic3A7PC9hPiB8CjxhIGhyZWY9Ii4vZnIvY29udGVudC1uZWdvdGlhdGlvbi5odG1sIiB0aXRsZT0iRnJhbudhaXMiPiZuYnNwO2ZyJm5ic3A7PC9hPiB8CjxhIGhyZWY9Ii4vamEvY29udGVudC1uZWdvdGlhdGlvbi5odG1sIiBocmVmbGFuZz0iamEiIHJlbD0iYWx0ZXJuYXRlIiB0aXRsZT0iSmFwYW5lc2UiPiZuYnNwO2phJm5ic3A7PC9hPiB8CjxhIGhyZWY9Ii4va28vY29udGVudC1uZWdvdGlhdGlvbi5odG1sIiBocmVmbGFuZz0ia28iIHJlbD0iYWx0ZXJuYXRlIiB0aXRsZT0iS29yZWFuIj4mbmJzcDtrbyZuYnNwOzwvYT4gfAo8YSBocmVmPSIuL3RyL2NvbnRlbnQtbmVnb3RpYXRpb24uaHRtbCIgaHJlZmxhbmc9InRyIiByZWw9ImFsdGVybmF0ZSIgdGl0bGU9IlT8cmvnZSI+Jm5ic3A7dHImbmJzcDs8L2E+PC9wPgo8L2Rpdj48ZGl2IGlkPSJmb290ZXIiPgo8cCBjbGFzcz0iYXBhY2hlIj5Db3B5cmlnaHQgMjAxMyBUaGUgQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb24uPGJyIC8+QXV0b3Jpc+kgc291cyA8YSBocmVmPSJodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAiPkFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDwvYT4uPC9wPgo8cCBjbGFzcz0ibWVudSI+PGEgaHJlZj0iLi9tb2QvIj5Nb2R1bGVzPC9hPiB8IDxhIGhyZWY9Ii4vbW9kL2RpcmVjdGl2ZXMuaHRtbCI+RGlyZWN0aXZlczwvYT4gfCA8YSBocmVmPSIuL2ZhcS8iPkZBUTwvYT4gfCA8YSBocmVmPSIuL2dsb3NzYXJ5Lmh0bWwiPkdsb3NzYWlyZTwvYT4gfCA8YSBocmVmPSIuL3NpdGVtYXAuaHRtbCI+UGxhbiBkdSBzaXRlPC9hPjwvcD48L2Rpdj4KPC9ib2R5PjwvaHRtbD4=