PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPjxodG1sPjxoZWFkPjx0aXRsZT5BcGFjaGUgUmFtcGFydC9DIC0gUmFtcGFydC9DOiByYW1wYXJ0X3JlcGxheV9kZXRlY3Rvcl9vcHMgU3RydWN0IFJlZmVyZW5jZTwvdGl0bGU+PHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0iYWxsIj4KICAgICAgICAgIEBpbXBvcnQgdXJsKCIuLi8uLi9zdHlsZS9tYXZlbi1iYXNlLmNzcyIpOwogICAgICAgICAgCgkJCSAgICBAaW1wb3J0IHVybCgiLi4vLi4vc3R5bGUvbWF2ZW4tY2xhc3NpYy5jc3MiKTs8L3N0eWxlPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vc3R5bGUvcHJpbnQuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InByaW50Ij48L2xpbms+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMSI+PC9tZXRhPjwvaGVhZD48Ym9keSBjbGFzcz0iY29tcG9zaXRlIj48ZGl2IGlkPSJiYW5uZXIiPjxhIGhyZWY9Imh0dHA6Ly93d3cuYXBhY2hlLm9yZy8iIGlkPSJvcmdhbml6YXRpb25Mb2dvIj48aW1nIGFsdD0iQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb24iIHNyYz0iaHR0cDovL3d3dy5hcGFjaGUub3JnL2ltYWdlcy9hc2YtbG9nby5naWYiPjwvaW1nPjwvYT48YSBocmVmPSJodHRwOi8vd3MuYXBhY2hlLm9yZy9yYW1wYXJ0L2MiIGlkPSJwcm9qZWN0TG9nbyI+PGltZyBhbHQ9IkFwYWNoZSBSYW1wYXJ0L0MiIHNyYz0iaHR0cDovL3dzLmFwYWNoZS5vcmcvcmFtcGFydC9jL2ltYWdlcy9yYW1wYXJ0Y19sb2dvLmpwZyI+PC9pbWc+PC9hPjxkaXYgY2xhc3M9ImNsZWFyIj48aHI+PC9ocj48L2Rpdj48L2Rpdj48ZGl2IGlkPSJicmVhZGNydW1icyI+PGRpdiBjbGFzcz0ieGxlZnQiPgogICAgICAgICAgICAgICAgCUxhc3QgcHVibGlzaGVkOiAxMiBNYXkgMjAwOAogICAgICAgICAgICAgICAgICB8IERvYyBmb3IgMS4yLjA8L2Rpdj48ZGl2IGNsYXNzPSJ4cmlnaHQiPjwvZGl2PjxkaXYgY2xhc3M9ImNsZWFyIj48aHI+PC9ocj48L2Rpdj48L2Rpdj48ZGl2IGlkPSJsZWZ0Q29sdW1uIj48ZGl2IGlkPSJuYXZjb2x1bW4iPjxkaXYgaWQ9Im1lbnVBcGFjaGVfUmFtcGFydF9DIj48aDU+QXBhY2hlIFJhbXBhcnQvQzwvaDU+PHVsPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0iLi4vLi4vaW5kZXguaHRtbCI+QXBhY2hlIFJhbXBhcnQvQyBIb21lPC9hPjwvbGk+PGxpIGNsYXNzPSJleHBhbmRlZCI+PGEgaHJlZj0iLi4vLi4vZG93bmxvYWQuY2dpIj5Eb3dubG9hZCBSYW1wYXJ0L0M8L2E+PHVsPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0iLi4vLi4vZG93bmxvYWQuY2dpIj5SZWxlYXNlczwvYT48L2xpPjwvdWw+PC9saT48bGkgY2xhc3M9ImV4cGFuZGVkIj48YSBocmVmPSIuLi8uLi9kb2NzL2luZGV4Lmh0bWwiPkRvY3VtZW50YXRpb248L2E+PHVsPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0iLi4vLi4vZG9jcy9pbnN0YWxsYXRpb25ndWlkZS5odG1sIj5JbnN0YWxsYXRpb24gR3VpZGU8L2E+PC9saT48bGkgY2xhc3M9Im5vbmUiPjxhIGhyZWY9Ii4uLy4uL2RvY3MvcmFtcGFydGNfbWFudWFsLmh0bWwiPlJhbXBhcnQvQyBtYW51YWw8L2E+PC9saT48bGkgY2xhc3M9Im5vbmUiPjxhIGhyZWY9Ii4uLy4uL2RvY3MvY29uZmlndXJhdGlvbnMuaHRtbCI+Q29uZmlndXJhdGlvbnMgZ3VpZGU8L2E+PC9saT48L3VsPjwvbGk+PGxpIGNsYXNzPSJleHBhbmRlZCI+PGEgaHJlZj0iLi4vLi4vbGlzdHNfaXNzdWVzLmh0bWwiPkdldCBJbnZvbHZlZDwvYT48dWw+PGxpIGNsYXNzPSJub25lIj48YSBocmVmPSIuLi8uLi9saXN0c19pc3N1ZXMuaHRtbCI+TWFpbGluZyBMaXN0cyAmYW1wOyBJc3N1ZSBUcmFja2luZzwvYT48L2xpPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0iLi4vLi4vc3ZuLmh0bWwiPkNoZWNrb3V0IFNvdXJjZSBDb2RlPC9hPjwvbGk+PC91bD48L2xpPjxsaSBjbGFzcz0iZXhwYW5kZWQiPjxhIGhyZWY9Ii4uLy4uL2NvZGluZ19jb252ZW50aW9ucy5odG1sIj5EZXZlbG9wZXIgR3VpZGVsaW5lczwvYT48dWw+PGxpIGNsYXNzPSJub25lIj48YSBocmVmPSIuLi8uLi9jb2RpbmdfY29udmVudGlvbnMuaHRtbCI+Q29kaW5nIENvbnZlbnRpb248L2E+PC9saT48bGkgY2xhc3M9Im5vbmUiPjxhIGhyZWY9Ii4uLy4uL3ZlcnNpb25pbmcuaHRtbCI+VmVyc2lvbm5pbmc8L2E+PC9saT48L3VsPjwvbGk+PGxpIGNsYXNzPSJleHBhbmRlZCI+PGEgaHJlZj0iLi4vLi4vdGVhbS1saXN0Lmh0bWwiPlByb2plY3QgSW5mb3JtYXRpb248L2E+PHVsPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0iLi4vLi4vdGVhbS1saXN0Lmh0bWwiPlByb2plY3QgVGVhbTwvYT48L2xpPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0iaHR0cDovL3N2bi5hcGFjaGUub3JnL3ZpZXdjdnMuY2dpL3dlYnNlcnZpY2VzL3JhbXBhcnQvdHJ1bmsvYy8iIGNsYXNzPSJleHRlcm5hbExpbmsiIHRpdGxlPSJFeHRlcm5hbCBMaW5rIj5Tb3VyY2UgQ29kZTwvYT48L2xpPjwvdWw+PC9saT48L3VsPjwvZGl2PjxhIGhyZWY9Imh0dHA6Ly9tYXZlbi5hcGFjaGUub3JnLyIgdGl0bGU9IkJ1aWx0IGJ5IE1hdmVuIiBpZD0icG93ZXJlZEJ5Ij48aW1nIGFsdD0iQnVpbHQgYnkgTWF2ZW4iIHNyYz0iLi4vLi4vaW1hZ2VzL2xvZ29zL21hdmVuLWJ1dHRvbi0xLnBuZyI+PC9pbWc+PC9hPjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImJvZHlDb2x1bW4iPjxkaXYgY2xhc3M9ImNvbnRlbnRCb3giPjxkaXYgY2xhc3M9InNlY3Rpb24iPjxwPgo8ZGl2IGNsYXNzPSJ0YWJzIj4KICA8dWw+CiAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbqBQYWdlPC9zcGFuPjwvYT48L2xpPgogICAgPGxpPjxhIGhyZWY9Im1vZHVsZXMuaHRtbCI+PHNwYW4+TW9kdWxlczwvc3Bhbj48L2E+PC9saT4KICAgIDxsaSBpZD0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+CiAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+CiAgICA8bGk+PGEgaHJlZj0iZGlycy5odG1sIj48c3Bhbj5EaXJlY3Rvcmllczwvc3Bhbj48L2E+PC9saT4KICA8L3VsPjwvZGl2PjxkaXYgY2xhc3M9InRhYnMiPgogIDx1bD4KICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3OgTGlzdDwvc3Bhbj48L2E+PC9saT4KICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3OgTWVtYmVyczwvc3Bhbj48L2E+PC9saT4KICA8L3VsPjwvZGl2PjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZWN0aW9uIj48YSBuYW1lPSJyYW1wYXJ0X3JlcGxheV9kZXRlY3Rvcl9vcHNfU3RydWN0X1JlZmVyZW5jZSI+PC9hPjxoMj5yYW1wYXJ0X3JlcGxheV9kZXRlY3Rvcl9vcHMgU3RydWN0IFJlZmVyZW5jZTwvaDI+PGNvZGU+I2luY2x1ZGUgJmx0OzxhIGNsYXNzPSJlbCIgaHJlZj0icmFtcGFydF9fcmVwbGF5X19kZXRlY3Rvcl84aC1zb3VyY2UuaHRtbCI+cmFtcGFydF9yZXBsYXlfZGV0ZWN0b3IuaDwvYT4mZ3Q7PC9jb2RlPjxwPgo8YSBocmVmPSJzdHJ1Y3RyYW1wYXJ0X19yZXBsYXlfX2RldGVjdG9yX19vcHMtbWVtYmVycy5odG1sIj5MaXN0IG9mIGFsbCBtZW1iZXJzLjwvYT48dGFibGUgY2xhc3M9ImJvZHlUYWJsZSI+PHRyIGNsYXNzPSJhIj48dGQ+PC90ZD48L3RyPjx0ciBjbGFzcz0iYiI+PHRkIGNvbHNwYW49IjIiPjxicj48L2JyPjxoMj5QdWJsaWMgQXR0cmlidXRlczwvaDI+PC90ZD48L3RyPjx0ciBjbGFzcz0iYSI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwPSIiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9IjJkODE0MWU3Y2M2M2M3YzJiZTgyNTBlNmUzMDUyNGVhIj48L2E+CmF4aXMyX3N0YXR1c190KCqgPC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxiPmxvYWQ8L2I+ICkoPGEgY2xhc3M9ImVsIiBocmVmPSJncm91cF9fcmFtcGFydF9fcmVwbGF5X19kZXRlY3Rvci5odG1sI2dkNWU3OTk3YmZkMmViZmJiZTQwYzk0ZGEyMjE4ZWRjZiI+cmFtcGFydF9yZXBsYXlfZGV0ZWN0b3JfdDwvYT4gKnJlcGxheV9kZXRlY3RvciwgY29uc3QgYXh1dGlsX2Vudl90ICplbnYpPC90ZD48L3RyPjx0ciBjbGFzcz0iYiI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwPSIiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImZjMzMzMzczYzUwOGU0MDIxMTMwZWY5NzQ2NDYwZjQxIj48L2E+CmF4aXMyX3N0YXR1c190KCqgPC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxiPmlzX3JlcGxheWVkPC9iPiApKDxhIGNsYXNzPSJlbCIgaHJlZj0iZ3JvdXBfX3JhbXBhcnRfX3JlcGxheV9fZGV0ZWN0b3IuaHRtbCNnZDVlNzk5N2JmZDJlYmZiYmU0MGM5NGRhMjIxOGVkY2YiPnJhbXBhcnRfcmVwbGF5X2RldGVjdG9yX3Q8L2E+ICpycmQsIGNvbnN0IGF4dXRpbF9lbnZfdCAqZW52LCBheGlzMl9tc2dfY3R4X3QgKm1zZ19jdHgpPC90ZD48L3RyPjx0ciBjbGFzcz0iYSI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwPSIiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9IjFkNmZiYmFlMDhlYWMxMDgyMGIwZjQxODI3YjM4MTA2Ij48L2E+CmF4aXMyX3N0YXR1c190KCqgPC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxiPmZyZWU8L2I+ICkoPGEgY2xhc3M9ImVsIiBocmVmPSJncm91cF9fcmFtcGFydF9fcmVwbGF5X19kZXRlY3Rvci5odG1sI2dkNWU3OTk3YmZkMmViZmJiZTQwYzk0ZGEyMjE4ZWRjZiI+cmFtcGFydF9yZXBsYXlfZGV0ZWN0b3JfdDwvYT4gKnJyZCwgY29uc3QgYXh1dGlsX2Vudl90ICplbnYpPC90ZD48L3RyPjwvdGFibGU+CjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZWN0aW9uIj48cD48YSBuYW1lPSJfZGV0YWlscyI+PC9hPjwvcD48ZGl2IGNsYXNzPSJzdWJzZWN0aW9uIj48YSBuYW1lPSJEZXRhaWxlZF9EZXNjcmlwdGlvbiI+PC9hPjxoMz5EZXRhaWxlZCBEZXNjcmlwdGlvbjwvaDM+PHA+Ck9ubHkgb3BlcmF0aW9uIGdldF9wYXNzd29yZCBpcyB0byBnZXQgdGhlIHBhc3N3b3JkIFVzZXIgc2hvdWxkIHByb3ZpZGUgYSBmdW5jdGlvbiBwb2ludGVyIHRvIHRoaXMgCjwvcD48cD4KPC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNlY3Rpb24iPjxwPlRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGlzIHN0cnVjdCB3YXMgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBmaWxlOjx1bD4KPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0icmFtcGFydF9fcmVwbGF5X19kZXRlY3Rvcl84aC1zb3VyY2UuaHRtbCI+cmFtcGFydF9yZXBsYXlfZGV0ZWN0b3IuaDwvYT48L2xpPjwvdWw+PC9wPjwvZGl2PjxkaXYgY2xhc3M9InNlY3Rpb24iPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFRodSBPY3QgNCAxNzozNzoxMCAyMDA3IGZvciBSYW1wYXJ0L0MgYnmgCjxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCIgY2xhc3M9ImV4dGVybmFsTGluayIgdGl0bGU9IkV4dGVybmFsIExpbmsiPgo8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2ltZz48L2E+IDEuNC43IDwvc21hbGw+PC9hZGRyZXNzPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImNsZWFyIj48aHI+PC9ocj48L2Rpdj48ZGl2IGlkPSJmb290ZXIiPjxkaXYgY2xhc3M9InhyaWdodCI+qSAyMDA1LTIwMDgsIEFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9uPC9kaXY+PGRpdiBjbGFzcz0iY2xlYXIiPjxocj48L2hyPjwvZGl2PjwvZGl2PjwvYm9keT48L2h0bWw+