PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iSVNPLTg4NTktMSI/Pgo8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBTdHJpY3QvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtc3RyaWN0LmR0ZCI+CjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiBsYW5nPSJmciIgeG1sOmxhbmc9ImZyIj48aGVhZD4KPG1ldGEgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgLz4KPCEtLQogICAgICAgIFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYCiAgICAgICAgICAgICAgVGhpcyBmaWxlIGlzIGdlbmVyYXRlZCBmcm9tIHhtbCBzb3VyY2U6IERPIE5PVCBFRElUCiAgICAgICAgWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFgKICAgICAgLS0+Cjx0aXRsZT5tb2RfYXV0aHpfY29yZSAtIFNlcnZldXIgQXBhY2hlIEhUVFAgVmVyc2lvbiAyLjQ8L3RpdGxlPgo8bGluayBocmVmPSIuLi9zdHlsZS9jc3MvbWFudWFsLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIiB0eXBlPSJ0ZXh0L2NzcyIgdGl0bGU9Ik1haW4gc3R5bGVzaGVldCIgLz4KPGxpbmsgaHJlZj0iLi4vc3R5bGUvY3NzL21hbnVhbC1sb29zZS0xMDBwYy5jc3MiIHJlbD0iYWx0ZXJuYXRlIHN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiIHR5cGU9InRleHQvY3NzIiB0aXRsZT0iTm8gU2lkZWJhciAtIERlZmF1bHQgZm9udCBzaXplIiAvPgo8bGluayBocmVmPSIuLi9zdHlsZS9jc3MvbWFudWFsLXByaW50LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0icHJpbnQiIHR5cGU9InRleHQvY3NzIiAvPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii4uL3N0eWxlL2Nzcy9wcmV0dGlmeS5jc3MiIC8+CjxzY3JpcHQgc3JjPSIuLi9zdHlsZS9zY3JpcHRzL3ByZXR0aWZ5Lm1pbi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KPC9zY3JpcHQ+Cgo8bGluayBocmVmPSIuLi9pbWFnZXMvZmF2aWNvbi5pY28iIHJlbD0ic2hvcnRjdXQgaWNvbiIgLz48L2hlYWQ+Cjxib2R5Pgo8ZGl2IGlkPSJwYWdlLWhlYWRlciI+CjxwIGNsYXNzPSJtZW51Ij48YSBocmVmPSIuLi9tb2QvIj5Nb2R1bGVzPC9hPiB8IDxhIGhyZWY9Ii4uL21vZC9kaXJlY3RpdmVzLmh0bWwiPkRpcmVjdGl2ZXM8L2E+IHwgPGEgaHJlZj0iaHR0cDovL3dpa2kuYXBhY2hlLm9yZy9odHRwZC9GQVEiPkZBUTwvYT4gfCA8YSBocmVmPSIuLi9nbG9zc2FyeS5odG1sIj5HbG9zc2FpcmU8L2E+IHwgPGEgaHJlZj0iLi4vc2l0ZW1hcC5odG1sIj5QbGFuIGR1IHNpdGU8L2E+PC9wPgo8cCBjbGFzcz0iYXBhY2hlIj5TZXJ2ZXVyIEFwYWNoZSBIVFRQIFZlcnNpb24gMi40PC9wPgo8aW1nIGFsdD0iIiBzcmM9Ii4uL2ltYWdlcy9mZWF0aGVyLnBuZyIgLz48L2Rpdj4KPGRpdiBjbGFzcz0idXAiPjxhIGhyZWY9Ii4vIj48aW1nIHRpdGxlPSImbHQ7LSIgYWx0PSImbHQ7LSIgc3JjPSIuLi9pbWFnZXMvbGVmdC5naWYiIC8+PC9hPjwvZGl2Pgo8ZGl2IGlkPSJwYXRoIj4KPGEgaHJlZj0iaHR0cDovL3d3dy5hcGFjaGUub3JnLyI+QXBhY2hlPC9hPiAmZ3Q7IDxhIGhyZWY9Imh0dHA6Ly9odHRwZC5hcGFjaGUub3JnLyI+U2VydmV1ciBIVFRQPC9hPiAmZ3Q7IDxhIGhyZWY9Imh0dHA6Ly9odHRwZC5hcGFjaGUub3JnL2RvY3MvIj5Eb2N1bWVudGF0aW9uPC9hPiAmZ3Q7IDxhIGhyZWY9Ii4uLyI+VmVyc2lvbiAyLjQ8L2E+ICZndDsgPGEgaHJlZj0iLi8iPk1vZHVsZXM8L2E+PC9kaXY+CjxkaXYgaWQ9InBhZ2UtY29udGVudCI+CjxkaXYgaWQ9InByZWFtYmxlIj48aDE+TW9kdWxlIEFwYWNoZSBtb2RfYXV0aHpfY29yZTwvaDE+CjxkaXYgY2xhc3M9InRvcGxhbmciPgo8cD48c3Bhbj5MYW5ndWVzIERpc3BvbmlibGVzOiA8L3NwYW4+PGEgaHJlZj0iLi4vZW4vbW9kL21vZF9hdXRoel9jb3JlLmh0bWwiIGhyZWZsYW5nPSJlbiIgcmVsPSJhbHRlcm5hdGUiIHRpdGxlPSJFbmdsaXNoIj4mbmJzcDtlbiZuYnNwOzwvYT4gfAo8YSBocmVmPSIuLi9mci9tb2QvbW9kX2F1dGh6X2NvcmUuaHRtbCIgdGl0bGU9IkZyYW7nYWlzIj4mbmJzcDtmciZuYnNwOzwvYT48L3A+CjwvZGl2Pgo8dGFibGUgY2xhc3M9Im1vZHVsZSI+PHRyPjx0aD48YSBocmVmPSJtb2R1bGUtZGljdC5odG1sI0Rlc2NyaXB0aW9uIj5EZXNjcmlwdGlvbjo8L2E+PC90aD48dGQ+QXV0b3Jpc2F0aW9uIGJhc2lxdWU8L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0ibW9kdWxlLWRpY3QuaHRtbCNTdGF0dXMiPlN0YXR1dDo8L2E+PC90aD48dGQ+QmFzZTwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJtb2R1bGUtZGljdC5odG1sI01vZHVsZUlkZW50aWZpZXIiPklkZW50aWZpY2F0ZXVyoGRloE1vZHVsZTo8L2E+PC90aD48dGQ+YXV0aHpfY29yZV9tb2R1bGU8L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0ibW9kdWxlLWRpY3QuaHRtbCNTb3VyY2VGaWxlIj5GaWNoaWVyoFNvdXJjZTo8L2E+PC90aD48dGQ+bW9kX2F1dGh6X2NvcmUuYzwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJtb2R1bGUtZGljdC5odG1sI0NvbXBhdGliaWxpdHkiPkNvbXBhdGliaWxpdOk6PC9hPjwvdGg+PHRkPkRpc3BvbmlibGUgZGVwdWlzIGxhIHZlcnNpb24gMi4zCmQnQXBhY2hlIEhUVFBEPC90ZD48L3RyPjwvdGFibGU+CjxoMz5Tb21tYWlyZTwvaDM+CgogICAgPHA+Q2UgbW9kdWxlIGZvdXJuaXQgZGVzIGZvbmN0aW9ubmFsaXTpcyBkJ2F1dG9yaXNhdGlvbiBiYXNpcXVlcwogICAgcGVybWV0dGFudCBkJ2FjY29yZGVyIG91IHJlZnVzZXIgbCdhY2PocyDgIGNlcnRhaW5lcyB6b25lcyBkdSBzaXRlCiAgICB3ZWIgYXV4IHV0aWxpc2F0ZXVycyBhdXRoZW50aWZp6XMuIDxjb2RlIGNsYXNzPSJtb2R1bGUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfYXV0aHpfY29yZS5odG1sIj5tb2RfYXV0aHpfY29yZTwvYT48L2NvZGU+CiAgICBkb25uZSBsYSBwb3NzaWJpbGl06SBkJ2VucmVnaXN0cmVyIGRpdmVycyBmb3Vybmlzc2V1cnMKICAgIGQnYXV0b3Jpc2F0aW9uLiBJbCBlc3QgZW4gZ+lu6XJhbCB1dGlsaXPpIGF2ZWMgdW4gbW9kdWxlIGZvdXJuaXNzZXVyCiAgICBkJ2F1dGhlbnRpZmljYXRpb24gY29tbWUgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRobl9maWxlLmh0bWwiPm1vZF9hdXRobl9maWxlPC9hPjwvY29kZT4sIGV0IHVuCiAgICBtb2R1bGUgZCdhdXRvcmlzYXRpb24gY29tbWUgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRoel91c2VyLmh0bWwiPm1vZF9hdXRoel91c2VyPC9hPjwvY29kZT4uIElsCiAgICBwZXJtZXQgYXVzc2kgbCdhcHBsaWNhdGlvbiBkJ3VuZSBsb2dpcXVlIOlsYWJvcullIGF1IGTpcm91bGVtZW50IGR1CiAgICBwcm9jZXNzdXMgZCdhdXRvcmlzYXRpb24uPC9wPgo8L2Rpdj4KPGRpdiBpZD0icXVpY2t2aWV3Ij48aDM+U3VqZXRzPC9oMz4KPHVsIGlkPSJ0b3BpY3MiPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNhdXRoemFsaWFzIj5DculhdGlvbiBkZXMgYWxpYXMgZHUgZm91cm5pc3NldXIKZCdhdXRvcmlzYXRpb248L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi4vaW1hZ2VzL2Rvd24uZ2lmIiAvPiA8YSBocmVmPSIjbG9naWMiPkNvbnRlbmV1cnMgZCdhdXRvcmlzYXRpb248L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi4vaW1hZ2VzL2Rvd24uZ2lmIiAvPiA8YSBocmVmPSIjcmVxdWlyZWRpcmVjdGl2ZXMiPkxlcyBkaXJlY3RpdmVzIFJlcXVpcmU8L2E+PC9saT4KPC91bD48aDMgY2xhc3M9ImRpcmVjdGl2ZXMiPkRpcmVjdGl2ZXM8L2gzPgo8dWwgaWQ9InRvYyI+CjxsaT48aW1nIGFsdD0iIiBzcmM9Ii4uL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI2F1dGhtZXJnaW5nIj5BdXRoTWVyZ2luZzwvYT48L2xpPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNhdXRoenByb3ZpZGVyYWxpYXMiPiZsdDtBdXRoelByb3ZpZGVyQWxpYXMmZ3Q7PC9hPjwvbGk+CjxsaT48aW1nIGFsdD0iIiBzcmM9Ii4uL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI2F1dGh6c2VuZGZvcmJpZGRlbm9uZmFpbHVyZSI+QXV0aHpTZW5kRm9yYmlkZGVuT25GYWlsdXJlPC9hPjwvbGk+CjxsaT48aW1nIGFsdD0iIiBzcmM9Ii4uL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI3JlcXVpcmUiPlJlcXVpcmU8L2E+PC9saT4KPGxpPjxpbWcgYWx0PSIiIHNyYz0iLi4vaW1hZ2VzL2Rvd24uZ2lmIiAvPiA8YSBocmVmPSIjcmVxdWlyZWFsbCI+Jmx0O1JlcXVpcmVBbGwmZ3Q7PC9hPjwvbGk+CjxsaT48aW1nIGFsdD0iIiBzcmM9Ii4uL2ltYWdlcy9kb3duLmdpZiIgLz4gPGEgaHJlZj0iI3JlcXVpcmVhbnkiPiZsdDtSZXF1aXJlQW55Jmd0OzwvYT48L2xpPgo8bGk+PGltZyBhbHQ9IiIgc3JjPSIuLi9pbWFnZXMvZG93bi5naWYiIC8+IDxhIGhyZWY9IiNyZXF1aXJlbm9uZSI+Jmx0O1JlcXVpcmVOb25lJmd0OzwvYT48L2xpPgo8L3VsPgo8aDM+VHJhaXRlbWVudCBkZXMgYnVnczwvaDM+PHVsIGNsYXNzPSJzZWVhbHNvIj48bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9kaXN0L2h0dHBkL0NIQU5HRVNfMi40Ij5Kb3VybmFsIGRlcyBtb2RpZmljYXRpb25zIGRlIGh0dHBkPC9hPjwvbGk+PGxpPjxhIGhyZWY9Imh0dHBzOi8vYnouYXBhY2hlLm9yZy9idWd6aWxsYS9idWdsaXN0LmNnaT9idWdfc3RhdHVzPV9fb3Blbl9fJmFtcDtsaXN0X2lkPTE0NDUzMiZhbXA7cHJvZHVjdD1BcGFjaGUlMjBodHRwZC0yJmFtcDtxdWVyeV9mb3JtYXQ9c3BlY2lmaWMmYW1wO29yZGVyPWNoYW5nZWRkYXRlJTIwREVTQyUyQ3ByaW9yaXR5JTJDYnVnX3NldmVyaXR5JmFtcDtjb21wb25lbnQ9bW9kX2F1dGh6X2NvcmUiPlByb2Js6G1lcyBjb25udXM8L2E+PC9saT48bGk+PGEgaHJlZj0iaHR0cHM6Ly9iei5hcGFjaGUub3JnL2J1Z3ppbGxhL2VudGVyX2J1Zy5jZ2k/cHJvZHVjdD1BcGFjaGUlMjBodHRwZC0yJmFtcDtjb21wb25lbnQ9bW9kX2F1dGh6X2NvcmUiPlNpZ25hbGVyIHVuIGJ1ZzwvYT48L2xpPjwvdWw+PGgzPlZvaXIgYXVzc2k8L2gzPgo8dWwgY2xhc3M9InNlZWFsc28iPgo8bGk+PGEgaHJlZj0iI2NvbW1lbnRzX3NlY3Rpb24iPkNvbW1lbnRhaXJlczwvYT48L2xpPjwvdWw+PC9kaXY+CjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4uL2ltYWdlcy91cC5naWYiIC8+PC9hPjwvZGl2Pgo8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KPGgyPjxhIG5hbWU9ImF1dGh6YWxpYXMiIGlkPSJhdXRoemFsaWFzIj5DculhdGlvbiBkZXMgYWxpYXMgZHUgZm91cm5pc3NldXIKZCdhdXRvcmlzYXRpb248L2E+PC9oMj4KCiAgICA8cD5JbCBlc3QgcG9zc2libGUgZGUgY3LpZXIgZGVzIGZvdXJuaXNzZXVycyBkJ2F1dG9yaXNhdGlvbiDpdGVuZHVzCiAgICBkYW5zIGxlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBldCBkZSBsZXVyIGFzc2lnbmVyIHVuIG5vbSBkJ2FsaWFzLgogICAgT24gcGV1dCBlbnN1aXRlIHV0aWxpc2VyIGNlcyBmb3Vybmlzc2V1cnMgYWxpYXPpcyBkYW5zIHVuZQogICAgZGlyZWN0aXZlIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9IiNyZXF1aXJlIj5SZXF1aXJlPC9hPjwvY29kZT4gZGUKICAgIGxhIG3qbWUgbWFuaehyZSBxdSdvbiBsZSBmZXJhaXQgcG91ciBkZXMgZm91cm5pc3NldXJzIGQnYXV0b3Jpc2F0aW9uCiAgICBkZSBiYXNlLiBFbiBwbHVzIGRlIGxhIHBvc3NpYmlsaXTpIGRlIGNy6WVyIGV0IGQnYWxpYXNlciB1bgogICAgZm91cm5pc3NldXIg6XRlbmR1LCBsZSBt6m1lIGZvdXJuaXNzZXVyIGQnYXV0b3Jpc2F0aW9uIOl0ZW5kdSBwZXV0CiAgICDqdHJlIHLpZulyZW5j6SBwYXIgcGx1c2lldXJzIGxvY2FsaXNhdGlvbnMuCiAgICA8L3A+CgogICAgPGgzPjxhIG5hbWU9ImV4YW1wbGUiIGlkPSJleGFtcGxlIj5FeGVtcGxlPC9hPjwvaDM+CiAgICAgICAgPHA+RGFucyBsJ2V4ZW1wbGUgc3VpdmFudCwgb24gY3LpZSBkZXV4IGFsaWFzIGRlIGZvdXJuaXNzZXVyCglkJ2F1dG9yaXNhdGlvbiBsZGFwIGRpZmbpcmVudHMgYmFz6XMgc3VyIGxlIGZvdXJuaXNzZXVyCglkJ2F1dG9yaXNhdGlvbiBsZGFwLWdyb3VwLiBJbCBlc3QgYWluc2kgcG9zc2libGUgcG91ciB1biBzZXVsCgly6XBlcnRvaXJlIGRlIHbpcmlmaWVyIGwnYXBwYXJ0ZW5hbmNlIOAgdW4gZ3JvdXBlIGRhbnMgcGx1c2lldXJzCglzZXJ2ZXVycyBsZGFwIDoKICAgICAgICA8L3A+CgogICAgICAgIDxwcmUgY2xhc3M9InByZXR0eXByaW50IGxhbmctY29uZmlnIj4mbHQ7QXV0aHpQcm92aWRlckFsaWFzIGxkYXAtZ3JvdXAgbGRhcC1ncm91cC1hbGlhczEgY249bXktZ3JvdXAsbz1jdHgmZ3Q7CiAgICBBdXRoTERBUEJpbmRETiBjbj15b3VydXNlcixvPWN0eAogICAgQXV0aExEQVBCaW5kUGFzc3dvcmQgeW91cnBhc3N3b3JkCiAgICBBdXRoTERBUFVSTCBsZGFwOi8vbGRhcC5ob3N0L289Y3R4CiZsdDsvQXV0aHpQcm92aWRlckFsaWFzJmd0OwoKJmx0O0F1dGh6UHJvdmlkZXJBbGlhcyBsZGFwLWdyb3VwIGxkYXAtZ3JvdXAtYWxpYXMyIGNuPW15LW90aGVyLWdyb3VwLG89ZGV2Jmd0OwogICAgQXV0aExEQVBCaW5kRE4gY249eW91cm90aGVydXNlcixvPWRldgogICAgQXV0aExEQVBCaW5kUGFzc3dvcmQgeW91cm90aGVycGFzc3dvcmQKICAgIEF1dGhMREFQVVJMIGxkYXA6Ly9vdGhlci5sZGFwLmhvc3Qvbz1kZXY/Y24KJmx0Oy9BdXRoelByb3ZpZGVyQWxpYXMmZ3Q7CgpBbGlhcyAiL3NlY3VyZSIgIi93ZWJwYWdlcy9zZWN1cmUiCiZsdDtEaXJlY3RvcnkgIi93ZWJwYWdlcy9zZWN1cmUiJmd0OwogICAgUmVxdWlyZSBhbGwgZ3JhbnRlZAogICAgCiAgICBBdXRoQmFzaWNQcm92aWRlciBmaWxlCiAgICAKICAgIEF1dGhUeXBlIEJhc2ljCiAgICBBdXRoTmFtZSBMREFQX1Byb3RlY3RlZF9QbGFjZQogICAgCiAgICAjaW1wbGllZCBPUiBvcGVyYXRpb24KICAgIFJlcXVpcmUgbGRhcC1ncm91cC1hbGlhczEKICAgIFJlcXVpcmUgbGRhcC1ncm91cC1hbGlhczIKJmx0Oy9EaXJlY3RvcnkmZ3Q7PC9wcmU+CgogICAgCgo8L2Rpdj48ZGl2IGNsYXNzPSJ0b3AiPjxhIGhyZWY9IiNwYWdlLWhlYWRlciI+PGltZyBhbHQ9InRvcCIgc3JjPSIuLi9pbWFnZXMvdXAuZ2lmIiAvPjwvYT48L2Rpdj4KPGRpdiBjbGFzcz0ic2VjdGlvbiI+CjxoMj48YSBuYW1lPSJsb2dpYyIgaWQ9ImxvZ2ljIj5Db250ZW5ldXJzIGQnYXV0b3Jpc2F0aW9uPC9hPjwvaDI+CgogICAgPHA+TGVzIGRpcmVjdGl2ZXMgZGUgY29udGVuZXVyIGQnYXV0b3Jpc2F0aW9uIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9IiNyZXF1aXJlYWxsIj4mbHQ7UmVxdWlyZUFsbCZndDs8L2E+PC9jb2RlPiwKICAgIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9IiNyZXF1aXJlYW55Ij4mbHQ7UmVxdWlyZUFueSZndDs8L2E+PC9jb2RlPiBldCA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIjcmVxdWlyZW5vbmUiPiZsdDtSZXF1aXJlTm9uZSZndDs8L2E+PC9jb2RlPgogICAgcGV1dmVudCDqdHJlIGNvbWJpbullcyBlbnRyZSBlbGxlcyBldCBhdmVjIGxhIGRpcmVjdGl2ZSA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIjcmVxdWlyZSI+UmVxdWlyZTwvYT48L2NvZGU+IHBvdXIgY29uZmVjdGlvbm5lciB1bmUKICAgIGxvZ2lxdWUgZCdhdXRvcmlzYXRpb24gY29tcGxleGUuPC9wPgoKICAgIDxwPkwnZXhlbXBsZSBjaS1kZXNzb3VzIGlsbHVzdHJlIGxhIGxvZ2lxdWUgZCdhdXRvcmlzYXRpb24gc3VpdmFudGUuCiAgICBQb3VyIHBvdXZvaXIgYWNj6WRlciDgIGxhIHJlc3NvdXJjZSwgbCd1dGlsaXNhdGV1ciBkb2l0IOp0cmUKICAgIGwndXRpbGlzYXRldXIgPGNvZGU+c3VwZXJhZG1pbjwvY29kZT4sIG91IGFwcGFydGVuaXIgYXV4IGRldXgKICAgIGdyb3VwZXMgTERBUCA8Y29kZT5hZG1pbnM8L2NvZGU+IGV0IDxjb2RlPkFkbWluaXN0cmF0ZXVyczwvY29kZT4gZXQKICAgIHNvaXQgYXBwYXJ0ZW5pciBhdSBncm91cGUgPGNvZGU+dmVudGVzPC9jb2RlPiBvdSBhdm9pcgogICAgPGNvZGU+dmVudGVzPC9jb2RlPiBjb21tZSB2YWxldXIgZGUgbCdhdHRyaWJ1dCBMREFQCiAgICA8Y29kZT5kZXB0PC9jb2RlPi4gRGUgcGx1cywgcG91ciBwb3V2b2lyIGFjY+lkZXIg4CBsYSByZXNzb3VyY2UsCiAgICBsJ3V0aWxpc2F0ZXVyIG5lIGRvaXQgYXBwYXJ0ZW5pciBuaSBhdSBncm91cGUgPGNvZGU+dGVtcHM8L2NvZGU+LCBuaQogICAgYXUgZ3JvdXBlIExEQVAgPGNvZGU+RW1wbG956XMgdGVtcG9yYWlyZXM8L2NvZGU+LjwvcD4KCiAgICA8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+Jmx0O0RpcmVjdG9yeSAiL3d3dy9teWRvY3MiJmd0OwogICAgJmx0O1JlcXVpcmVBbGwmZ3Q7CiAgICAgICAgJmx0O1JlcXVpcmVBbnkmZ3Q7CiAgICAgICAgICAgIFJlcXVpcmUgdXNlciBzdXBlcmFkbWluCiAgICAgICAgICAgICZsdDtSZXF1aXJlQWxsJmd0OwogICAgICAgICAgICBSZXF1aXJlIGdyb3VwIGFkbWlucwogICAgICAgICAgICBSZXF1aXJlIGxkYXAtZ3JvdXAgY249QWRtaW5pc3RyYXRvcnMsbz1BaXJpdXMKICAgICAgICAgICAgICAgICZsdDtSZXF1aXJlQW55Jmd0OwogICAgICAgICAgICAgICAgUmVxdWlyZSBncm91cCBzYWxlcwogICAgICAgICAgICAgICAgUmVxdWlyZSBsZGFwLWF0dHJpYnV0ZSBkZXB0PSJzYWxlcyIKICAgICAgICAgICAgICAgICZsdDsvUmVxdWlyZUFueSZndDsKICAgICAgICAgICAgJmx0Oy9SZXF1aXJlQWxsJmd0OwogICAgICAgICZsdDsvUmVxdWlyZUFueSZndDsKICAgICAgICAmbHQ7UmVxdWlyZU5vbmUmZ3Q7CiAgICAgICAgICAgIFJlcXVpcmUgZ3JvdXAgdGVtcHMKICAgICAgICAgICAgUmVxdWlyZSBsZGFwLWdyb3VwIGNuPVRlbXBvcmFyeSBFbXBsb3llZXMsbz1BaXJpdXMKICAgICAgICAmbHQ7L1JlcXVpcmVOb25lJmd0OwogICAgJmx0Oy9SZXF1aXJlQWxsJmd0OwombHQ7L0RpcmVjdG9yeSZndDs8L3ByZT4KCjwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIGFsdD0idG9wIiBzcmM9Ii4uL2ltYWdlcy91cC5naWYiIC8+PC9hPjwvZGl2Pgo8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KPGgyPjxhIG5hbWU9InJlcXVpcmVkaXJlY3RpdmVzIiBpZD0icmVxdWlyZWRpcmVjdGl2ZXMiPkxlcyBkaXJlY3RpdmVzIFJlcXVpcmU8L2E+PC9oMj4KCiAgPHA+TGUgbW9kdWxlIDxjb2RlIGNsYXNzPSJtb2R1bGUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfYXV0aHpfY29yZS5odG1sIj5tb2RfYXV0aHpfY29yZTwvYT48L2NvZGU+IG1ldCDgIGRpc3Bvc2l0aW9uIGRlcwogIGZvdXJuaXNzZXVycyBkJ2F1dG9yaXNhdGlvbiBn6W7pcmlxdWVzIHV0aWxpc2FibGVzIGF2ZWMgbGEgZGlyZWN0aXZlCiAgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iI3JlcXVpcmUiPlJlcXVpcmU8L2E+PC9jb2RlPi48L3A+CgogIDxoMz48YSBuYW1lPSJyZXFlbnYiIGlkPSJyZXFlbnYiPlJlcXVpcmUgZW52PC9hPjwvaDM+CgogICAgPHA+TGUgZm91cm5pc3NldXIgPGNvZGU+ZW52PC9jb2RlPiBwZXJtZXQgZGUgY29udHL0bGVyIGwnYWNj6HMgYXUKICAgIHNlcnZldXIgZW4gZm9uY3Rpb24gZGUgbCdleGlzdGVuY2UgZCd1bmUgPGEgaHJlZj0iLi4vZW52Lmh0bWwiPnZhcmlhYmxlIGQnZW52aXJvbm5lbWVudDwvYT4uIExvcnNxdWUgPGNvZGU+UmVxdWlyZQogICAgZW52IDx2YXI+ZW52LXZhcmlhYmxlPC92YXI+PC9jb2RlPiBlc3Qgc3DpY2lmaeksIGxhIHJlcXXqdGUgc2Ugdm9pdAogICAgYXV0b3Jpc2VyIGwnYWNj6HMgc2kgbGEgdmFyaWFibGUgZCdlbnZpcm9ubmVtZW50CiAgICA8dmFyPmVudi12YXJpYWJsZTwvdmFyPiBleGlzdGUuIExlIHNlcnZldXIgcGVybWV0IGRlIGTpZmluaXIKICAgIGZhY2lsZW1lbnQgZGVzIHZhcmlhYmxlcyBkJ2Vudmlyb25uZW1lbnQgZW4gZm9uY3Rpb24gZGVzCiAgICBjYXJhY3TpcmlzdGlxdWVzIGRlIGxhIHJlcXXqdGUgZHUgY2xpZW50IHZpYSBsZXMgZGlyZWN0aXZlcyBmb3VybmllcwogICAgcGFyIGxlIG1vZHVsZSA8Y29kZSBjbGFzcz0ibW9kdWxlIj48YSBocmVmPSIuLi9tb2QvbW9kX3NldGVudmlmLmh0bWwiPm1vZF9zZXRlbnZpZjwvYT48L2NvZGU+LiBDZXR0ZSBkaXJlY3RpdmUgUmVxdWlyZQogICAgZW52IHBlcm1ldCBkb25jIGRlIGNvbnRy9GxlciBsJ2FjY+hzIGVuIGZvbmN0aW9uIGRlcwogICAgdmFsZXVycyBkZXMgZW4tdOp0ZXMgZGUgbGEgcmVxdep0ZSBIVFRQIHRlbHMgcXVlCiAgICA8Y29kZT5Vc2VyLUFnZW50PC9jb2RlPiAodHlwZSBkZSBuYXZpZ2F0ZXVyKSwgPGNvZGU+UmVmZXJlcjwvY29kZT4sCiAgICBlbnRyZSBhdXRyZXMuPC9wPgoKICAgIDxwcmUgY2xhc3M9InByZXR0eXByaW50IGxhbmctY29uZmlnIj5TZXRFbnZJZiBVc2VyLUFnZW50IF5Lbm9ja0tub2NrLzJcLjAgbGV0X21lX2luCiZsdDtEaXJlY3RvcnkgIi9kb2Nyb290IiZndDsKICAgIFJlcXVpcmUgZW52IGxldF9tZV9pbgombHQ7L0RpcmVjdG9yeSZndDs8L3ByZT4KCgogICAgPHA+QXZlYyBjZXQgZXhlbXBsZSwgbGVzIG5hdmlnYXRldXJzIGRvbnQgbGEgY2hh7m5lIHVzZXItYWdlbnQKICAgIGNvbW1lbmNlIHBhciA8Y29kZT5Lbm9ja0tub2NrLzIuMDwvY29kZT4gc2UgdmVycm9udCBhdXRvcmlzZXIKICAgIGwnYWNj6HMsIGFsb3JzIHF1ZSB0b3VzIGxlcyBhdXRyZXMgc2Vyb250IHJlamV06XMuPC9wPgoKICAgIDxwPkxvcnNxdWUgbGUgc2VydmV1ciBjaGVyY2hlIHVuIGNoZW1pbiB2aWEgdW5lIDxhIGNsYXNzPSJnbG9zc2FyeWxpbmsiIGhyZWY9Ii4uL2dsb3NzYXJ5Lmh0bWwjc3VicmVxdWVzdCIgdGl0bGU9InZvaXIgZ2xvc3NhaXJlIj5zb3VzLXJlcXXqdGU8L2E+IGludGVybmUgKHBhciBleGVtcGxlIGxhCiAgIHJlY2hlcmNoZSBkJ3VuIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfZGlyLmh0bWwjZGlyZWN0b3J5aW5kZXgiPkRpcmVjdG9yeUluZGV4PC9hPjwvY29kZT4pLCBvdSBsb3JzcXUnaWwgZ+lu6HJlIHVuCiAgIGxpc3RpbmcgZHUgY29udGVudSBkJ3VuIHLpcGVydG9pcmUgdmlhIGxlIG1vZHVsZQogICA8Y29kZSBjbGFzcz0ibW9kdWxlIj48YSBocmVmPSIuLi9tb2QvbW9kX2F1dG9pbmRleC5odG1sIj5tb2RfYXV0b2luZGV4PC9hPjwvY29kZT4sIGxhIHNvdXMtcmVxdep0ZSBuJ2jpcml0ZSBwYXMgZGVzCiAgIHZhcmlhYmxlcyBkJ2Vudmlyb25uZW1lbnQgc3DpY2lmaXF1ZXMg4CBsYSByZXF16nRlLiBFbiBvdXRyZSwg4CBjYXVzZQogICBkZXMgcGhhc2VzIGRlIGwnQVBJIGF1eHF1ZWxsZXMgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9zZXRlbnZpZi5odG1sIj5tb2Rfc2V0ZW52aWY8L2E+PC9jb2RlPiBwcmVuZAogICBwYXJ0LCBsZXMgZGlyZWN0aXZlcyA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuLi9tb2QvbW9kX3NldGVudmlmLmh0bWwjc2V0ZW52aWYiPlNldEVudklmPC9hPjwvY29kZT4gbmUgc29udCBwYXMg6XZhbHXpZXMKICAgc+lwYXLpbWVudCBkYW5zIGxhIHNvdXMtcmVxdep0ZS48L3A+CgogIAoKICA8aDM+PGEgbmFtZT0icmVxYWxsIiBpZD0icmVxYWxsIj5SZXF1aXJlIGFsbDwvYT48L2gzPgoKICAgIDxwPkxlIGZvdXJuaXNzZXVyIDxjb2RlPmFsbDwvY29kZT4gcmVwcm9kdWl0IGxhIGZvbmN0aW9ubmFsaXTpCiAgICBwculj6WRlbW1lbnQgZm91cm5pZSBwYXIgbGVzIGRpcmVjdGl2ZXMgJ0FsbG93IGZyb20gYWxsJyBldCAnRGVueQogICAgZnJvbSBhbGwnLiBJbCBhY2NlcHRlIHVuIGFyZ3VtZW50IGRvbnQgbGVzIGRldXggdmFsZXVycyBwb3NzaWJsZXMKICAgIHNvbnQgOiAnZ3JhbnRlZCcgb3UgJ2RlbmllZCcuIExlcyBleGVtcGxlcyBzdWl2YW50cyBhdXRvcmlzZW50IG91CiAgICBpbnRlcmRpc2VudCBsJ2FjY+hzIOAgdG91dGVzIGxlcyByZXF16nRlcy48L3A+CgogICAgPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPlJlcXVpcmUgYWxsIGdyYW50ZWQ8L3ByZT4KCgogICAgPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPlJlcXVpcmUgYWxsIGRlbmllZDwvcHJlPgoKCiAgCgogIDxoMz48YSBuYW1lPSJyZXFtZXRob2QiIGlkPSJyZXFtZXRob2QiPlJlcXVpcmUgbWV0aG9kPC9hPjwvaDM+CgogICAgPHA+TGUgZm91cm5pc3NldXIgPGNvZGU+bWV0aG9kPC9jb2RlPiBwZXJtZXQgZCd1dGlsaXNlciBsYSBt6XRob2RlCiAgICBIVFRQIGRhbnMgbGUgcHJvY2Vzc3VzIGQnYXV0b3Jpc2F0aW9uLiBMZXMgbel0aG9kZXMgR0VUIGV0IEhFQUQgc29udAogICAgaWNpIGNvbnNpZOly6WVzIGNvbW1lIOlxdWl2YWxlbnRlcy4gTGEgbel0aG9kZSBUUkFDRSBuJ2VzdCBwYXMKICAgIHN1cHBvcnTpZSBwYXIgY2UgZm91cm5pc3NldXIgOyB1dGlsaXNleiDgIGxhIHBsYWNlIGxhIGRpcmVjdGl2ZQogICAgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi4vbW9kL2NvcmUuaHRtbCN0cmFjZWVuYWJsZSI+VHJhY2VFbmFibGU8L2E+PC9jb2RlPi48L3A+CgogICAgPHA+RGFucyBsJ2V4ZW1wbGUgc3VpdmFudCwgc2V1bGVzIGxlcyBt6XRob2RlcyBHRVQsIEhFQUQsIFBPU1QsIGV0CiAgICBPUFRJT05TIHNvbnQgYXV0b3Jpc+llcyA6PC9wPgoKICAgIDxwcmUgY2xhc3M9InByZXR0eXByaW50IGxhbmctY29uZmlnIj5SZXF1aXJlIG1ldGhvZCBHRVQgUE9TVCBPUFRJT05TPC9wcmU+CgoKICAgIDxwPkRhbnMgbCdleGVtcGxlIHN1aXZhbnQsIGxlcyBt6XRob2RlcyBHRVQsIEhFQUQsIFBPU1QsIGV0IE9QVElPTlMKICAgIHNvbnQgYXV0b3Jpc+llcyBzYW5zIGF1dGhlbnRpZmljYXRpb24sIGFsb3JzIHF1ZSB0b3V0ZXMgbGVzIGF1dHJlcwogICAgbel0aG9kZXMgbuljZXNzaXRlbnQgdW4gdXRpbGlzYXRldXIgdmFsaWRlIDo8L3A+CgogICAgPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPiZsdDtSZXF1aXJlQW55Jmd0OwogICAgoFJlcXVpcmUgbWV0aG9kIEdFVCBQT1NUIE9QVElPTlMKICAgIKBSZXF1aXJlIHZhbGlkLXVzZXIKJmx0Oy9SZXF1aXJlQW55Jmd0OzwvcHJlPgoKCiAgCiAgPGgzPjxhIG5hbWU9InJlcWV4cHIiIGlkPSJyZXFleHByIj5SZXF1aXJlIGV4cHI8L2E+PC9oMz4KCiAgPHA+TGUgZm91cm5pc3NldXIgPGNvZGU+ZXhwcjwvY29kZT4gcGVybWV0IGQnYWNjb3JkZXIgbCdhdXRvcmlzYXRpb24KICBkJ2FjY+hzIGRlIGJhc2UgZW4gZm9uY3Rpb24gZCdleHByZXNzaW9ucyBhcmJpdHJhaXJlcy48L3A+CgogICAgPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPlJlcXVpcmUgZXhwciAiJXtUSU1FX0hPVVJ9IC1nZSA5ICZhbXA7JmFtcDsgJXtUSU1FX0hPVVJ9IC1sZSAxNyI8L3ByZT4KCgogICAgPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPiZsdDtSZXF1aXJlQWxsJmd0OwogICAgUmVxdWlyZSBleHByICIhKCV7UVVFUllfU1RSSU5HfSA9fiAvc2VjcmV0LykiCiAgICBSZXF1aXJlIGV4cHIgIiV7UkVRVUVTVF9VUkl9IGluIHsgJy9leGFtcGxlLmNnaScsICcvb3RoZXIuY2dpJyB9IiAKJmx0Oy9SZXF1aXJlQWxsJmd0OzwvcHJlPgoKCiAgICA8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+UmVxdWlyZSBleHByICIhKCV7UVVFUllfU1RSSU5HfSA9fiAvc2VjcmV0LykgJmFtcDsmYW1wOyAle1JFUVVFU1RfVVJJfSBpbiB7ICcvZXhhbXBsZS5jZ2knLCAnL290aGVyLmNnaScgfSI8L3ByZT4KCgogICAgPHA+TGEgc3ludGF4ZSBkZSBsJ2V4cHJlc3Npb24gZXN0IGTpY3JpdGUgZGFucyBsYSBkb2N1bWVudGF0aW9uIGRlIDxhIGhyZWY9Ii4uL2V4cHIuaHRtbCI+YXBfZXhwcjwvYT4uPC9wPgoKICAgIDxwPk5vcm1hbGVtZW50LCBsJ2V4cHJlc3Npb24gZXN0IOl2YWx16WUgYXZhbnQgbCdhdXRoZW50aWZpY2F0aW9uLgogICAgQ2VwZW5kYW50LCBzaSBsJ2V4cHJlc3Npb24gcmVudm9pZSBmYWxzZSBldCBzZSBy6WbocmUg4CBsYSB2YXJpYWJsZQogICAgPGNvZGU+JXtSRU1PVEVfVVNFUn08L2NvZGU+LCBsZSBwcm9jZXNzdXMgZCdhdXRoZW50aWZpY2F0aW9uIHNlcmEKICAgIGVuZ2Fn6SBldCBsJ2V4cHJlc3Npb24gcunpdmFsdellLjwvcD4KCiAgCgo8L2Rpdj4KPGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9ImRpcmVjdGl2ZS1zZWN0aW9uIj48aDI+PGEgbmFtZT0iYXV0aG1lcmdpbmciIGlkPSJhdXRobWVyZ2luZyI+RGlyZWN0aXZlPC9hPiA8YSBuYW1lPSJBdXRoTWVyZ2luZyIgaWQ9IkF1dGhNZXJnaW5nIj5BdXRoTWVyZ2luZzwvYT48L2gyPgo8dGFibGUgY2xhc3M9ImRpcmVjdGl2ZSI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNEZXNjcmlwdGlvbiI+RGVzY3JpcHRpb246PC9hPjwvdGg+PHRkPkTpZmluaXQgbGEgbWFuaehyZSBkb250IGNoYXF1ZSBsb2dpcXVlIGQnYXV0b3Jpc2F0aW9uIGRlcwpzZWN0aW9ucyBkZSBjb25maWd1cmF0aW9uIHNlIGNvbWJpbmUgYXZlYyBjZWxsZXMgZGVzIHNlY3Rpb25zIGRlCmNvbmZpZ3VyYXRpb24gcHLpY+lkZW50ZXMuPC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjU3ludGF4Ij5TeW50YXhlOjwvYT48L3RoPjx0ZD48Y29kZT5BdXRoTWVyZ2luZyBPZmYgfCBBbmQgfCBPcjwvY29kZT48L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNEZWZhdWx0Ij5E6WZhdXQ6PC9hPjwvdGg+PHRkPjxjb2RlPkF1dGhNZXJnaW5nIE9mZjwvY29kZT48L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNDb250ZXh0Ij5Db250ZXh0ZTo8L2E+PC90aD48dGQ+culwZXJ0b2lyZSwgLmh0YWNjZXNzPC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjT3ZlcnJpZGUiPkFsbG93T3ZlcnJpZGU6PC9hPjwvdGg+PHRkPkF1dGhDb25maWc8L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNTdGF0dXMiPlN0YXR1dDo8L2E+PC90aD48dGQ+QmFzZTwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI01vZHVsZSI+TW9kdWxlOjwvYT48L3RoPjx0ZD5tb2RfYXV0aHpfY29yZTwvdGQ+PC90cj4KPC90YWJsZT4KICAgIDxwPkxvcnNxdWUgbCdhdXRvcmlzYXRpb24gZXN0IGFjdGl26WUsIGVsbGUgZXN0IG5vcm1hbGVtZW50IGjpcml06WUKICAgIHBhciBjaGFxdWUgPGEgaHJlZj0iLi4vc2VjdGlvbnMuaHRtbCNtZXJnaW5nIj5zZWN0aW9uIGRlCiAgICBjb25maWd1cmF0aW9uPC9hPiBzdWl2YW50ZSwg4CBtb2lucyBxdSd1biBqZXUgZGUgZGlyZWN0aXZlcwogICAgZCdhdXRvcmlzYXRpb25zIGRpZmbpcmVudCBuZSBzb2l0IHNw6WNpZmnpLiBJbCBzJ2FnaXQgZHUKICAgIGNvbXBvcnRlbWVudCBwYXIgZOlmYXV0LCBxdWkgY29ycmVzcG9uZCDgIGxhIGTpZmluaXRpb24gZXhwbGljaXRlCiAgICA8Y29kZT5BdXRoTWVyZ2luZyBPZmY8L2NvZGU+LjwvcD4KCiAgICA8cD5EYW5zIGNlcnRhaW5lcyBzaXR1YXRpb25zIGNlcGVuZGFudCwgaWwgcGV1dCDqdHJlIHNvdWhhaXRhYmxlIGRlCiAgICBjb21iaW5lciBsYSBsb2dpcXVlIGQnYXV0b3Jpc2F0aW9uIGQndW5lIHNlY3Rpb24gZGUgY29uZmlndXJhdGlvbgogICAgYXZlYyBjZWxsZSBkZSBsYSBzZWN0aW9uIHBy6WPpZGVudGUgbG9yc3F1ZSBsZXMgc2VjdGlvbnMgZGUKICAgIGNvbmZpZ3VyYXRpb24gc2UgY29tYmluZW50IGVudHJlIGVsbGVzLiBEYW5zIGNlIGNhcywgZGV1eCBvcHRpb25zCiAgICBzb250IGRpc3BvbmlibGVzLCA8Y29kZT5BbmQ8L2NvZGU+IGV0IDxjb2RlPk9yPC9jb2RlPi48L3A+CgogICAgPHA+TG9yc3F1J3VuZSBzZWN0aW9uIGRlIGNvbmZpZ3VyYXRpb24gY29udGllbnQgPGNvZGU+QXV0aE1lcmdpbmcKICAgIEFuZDwvY29kZT4gb3UgPGNvZGU+QXV0aE1lcmdpbmcgT3I8L2NvZGU+LCBzYSBsb2dpcXVlIGQnYXV0b3Jpc2F0aW9uCiAgICBzZSBjb21iaW5lIGF2ZWMgY2VsbGUgZGUgbGEgc2VjdGlvbiBkZSBjb25maWd1cmF0aW9uIHF1aSBsYSBwculj6GRlCiAgICAoc2Vsb24gbCdvcmRyZSBn6W7pcmFsIGRlcyBzZWN0aW9ucyBkZSBjb25maWd1cmF0aW9uKSwgZXQgcXVpCiAgICBjb250aWVudCBhdXNzaSB1bmUgbG9naXF1ZSBkJ2F1dG9yaXNhdGlvbiwgY29tbWUgc2kgbGVzIGRldXgKICAgIHNlY3Rpb25zIOl0YWllbnQgY29uY2F06W7pZXMgcmVzcGVjdGl2ZW1lbnQgZGFucyB1bmUgZGlyZWN0aXZlCiAgICA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIjcmVxdWlyZWFsbCI+Jmx0O1JlcXVpcmVBbGwmZ3Q7PC9hPjwvY29kZT4gb3UgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iI3JlcXVpcmVhbnkiPiZsdDtSZXF1aXJlQW55Jmd0OzwvYT48L2NvZGU+LjwvcD4KCiAgICA8ZGl2IGNsYXNzPSJub3RlIj5MYSBk6WZpbml0aW9uIGRlIGxhIGRpcmVjdGl2ZQogICAgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+QXV0aE1lcmdpbmc8L2NvZGU+IG5lIGNvbmNlcm5lIHF1ZSBsYSBzZWN0aW9uIGRlCiAgICBjb25maWd1cmF0aW9uIGRhbnMgbGFxdWVsbGUgZWxsZSBhcHBhcmHudC4gRGFucyBsJ2V4ZW1wbGUgc3VpdmFudCwKICAgIHNldWxzIGxlcyB1dGlsaXNhdGV1cnMgYXBwYXJ0ZW5hbnQgYXUgZ3JvdXBlIDxjb2RlPmFscGhhPC9jb2RlPiBzb250CiAgICBhdXRvcmlz6XMg4CBhY2PpZGVyIOAgPGNvZGU+L3d3dy9kb2NzPC9jb2RlPi4gTGVzIHV0aWxpc2F0ZXVycwogICAgYXBwYXJ0ZW5hbnQgYXUgZ3JvdXBlIDxjb2RlPmFscGhhPC9jb2RlPiBvdSBhdSBncm91cGUKICAgIDxjb2RlPmJldGE8L2NvZGU+IHNvbnQgYXV0b3Jpc+lzIOAgYWNj6WRlciDgCiAgICA8Y29kZT4vd3d3L2RvY3MvYWI8L2NvZGU+LiBDZXBlbmRhbnQsIGxhIGTpZmluaXRpb24gaW1wbGljaXRlIOAKICAgIDxjb2RlPk9mZjwvY29kZT4gZGUgbGEgZGlyZWN0aXZlIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPkF1dGhNZXJnaW5nPC9jb2RlPgogICAgcydhcHBsaXF1ZSDgIGxhIHNlY3Rpb24gZGUgY29uZmlndXJhdGlvbiA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuLi9tb2QvY29yZS5odG1sI2RpcmVjdG9yeSI+Jmx0O0RpcmVjdG9yeSZndDs8L2E+PC9jb2RlPiBjb25jZXJuYW50IGxlIHLpcGVydG9pcmUKICAgIDxjb2RlPi93d3cvZG9jcy9hYi9nYW1tYTwvY29kZT4sIGNlIHF1aSBpbXBsaXF1ZSBxdWUgbGVzIGRpcmVjdGl2ZXMKICAgIGQnYXV0b3Jpc2F0aW9uIGRlIGNldHRlIHNlY3Rpb24gbCdlbXBvcnRlbnQgc3VyIGNlbGxlcyBkZXMgc2VjdGlvbnMKICAgIHBy6WPpZGVudGVzLiBQYXIgdm9pZSBkZSBjb25z6XF1ZW5jZSwgc2V1bHMgbGVzIHV0aWxpc2F0ZXVycwogICAgYXBwYXJ0ZW5hbnQgYXUgZ3JvdXBlIDxjb2RlPmdhbW1hPC9jb2RlPiBzb250IGF1dG9yaXPpcyDgIGFjY+lkZXIg4AogICAgPGNvZGU+L3d3dy9kb2NzL2FiL2dhbW1hPC9jb2RlPi48L2Rpdj4KCiAgICA8cHJlIGNsYXNzPSJwcmV0dHlwcmludCBsYW5nLWNvbmZpZyI+Jmx0O0RpcmVjdG9yeSAiL3d3dy9kb2NzIiZndDsKICAgIEF1dGhUeXBlIEJhc2ljCiAgICBBdXRoTmFtZSBEb2N1bWVudHMKICAgIEF1dGhCYXNpY1Byb3ZpZGVyIGZpbGUKICAgIEF1dGhVc2VyRmlsZSAiL3Vzci9sb2NhbC9hcGFjaGUvcGFzc3dkL3Bhc3N3b3JkcyIKICAgIFJlcXVpcmUgZ3JvdXAgYWxwaGEKJmx0Oy9EaXJlY3RvcnkmZ3Q7CgombHQ7RGlyZWN0b3J5ICIvd3d3L2RvY3MvYWIiJmd0OwogICAgQXV0aE1lcmdpbmcgT3IKICAgIFJlcXVpcmUgZ3JvdXAgYmV0YQombHQ7L0RpcmVjdG9yeSZndDsKCiZsdDtEaXJlY3RvcnkgIi93d3cvZG9jcy9hYi9nYW1tYSImZ3Q7CiAgICBSZXF1aXJlIGdyb3VwIGdhbW1hCiZsdDsvRGlyZWN0b3J5Jmd0OzwvcHJlPgoKCjwvZGl2Pgo8ZGl2IGNsYXNzPSJ0b3AiPjxhIGhyZWY9IiNwYWdlLWhlYWRlciI+PGltZyBhbHQ9InRvcCIgc3JjPSIuLi9pbWFnZXMvdXAuZ2lmIiAvPjwvYT48L2Rpdj4KPGRpdiBjbGFzcz0iZGlyZWN0aXZlLXNlY3Rpb24iPjxoMj48YSBuYW1lPSJhdXRoenByb3ZpZGVyYWxpYXMiIGlkPSJhdXRoenByb3ZpZGVyYWxpYXMiPkRpcmVjdGl2ZTwvYT4gPGEgbmFtZT0iQXV0aHpQcm92aWRlckFsaWFzIiBpZD0iQXV0aHpQcm92aWRlckFsaWFzIj4mbHQ7QXV0aHpQcm92aWRlckFsaWFzJmd0OzwvYT48L2gyPgo8dGFibGUgY2xhc3M9ImRpcmVjdGl2ZSI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNEZXNjcmlwdGlvbiI+RGVzY3JpcHRpb246PC9hPjwvdGg+PHRkPlJlZ3JvdXBlIGRlcyBkaXJlY3RpdmVzIHJlcHLpc2VudGFudCB1bmUgZXh0ZW5zaW9uIGQndW4KZm91cm5pc3NldXIgZCdhdXRvcmlzYXRpb24gZGUgYmFzZSBxdWkgcG91cnJhIOp0cmUgculm6XJlbmPpZSDgIGwnYWlkZQpkZSBsJ2FsaWFzIHNw6WNpZmnpPC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjU3ludGF4Ij5TeW50YXhlOjwvYT48L3RoPjx0ZD48Y29kZT4mbHQ7QXV0aHpQcm92aWRlckFsaWFzIDx2YXI+Zm91cm5pc3NldXItZGUtYmFzZSBBbGlhcwpQYXJhbeh0cmVzLVJlcXVpcmU8L3Zhcj4mZ3Q7Ci4uLiAmbHQ7L0F1dGh6UHJvdmlkZXJBbGlhcyZndDsKPC9jb2RlPjwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI0NvbnRleHQiPkNvbnRleHRlOjwvYT48L3RoPjx0ZD5jb25maWd1cmF0aW9uIGR1IHNlcnZldXI8L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNTdGF0dXMiPlN0YXR1dDo8L2E+PC90aD48dGQ+QmFzZTwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI01vZHVsZSI+TW9kdWxlOjwvYT48L3RoPjx0ZD5tb2RfYXV0aHpfY29yZTwvdGQ+PC90cj4KPC90YWJsZT4KICAgIDxwPkxlcyBiYWxpc2VzIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPiZsdDtBdXRoelByb3ZpZGVyQWxpYXMmZ3Q7PC9jb2RlPiBldAogICAgPGNvZGU+Jmx0Oy9BdXRoelByb3ZpZGVyQWxpYXMmZ3Q7PC9jb2RlPiBwZXJtZXR0ZW50IGRlIHJlZ3JvdXBlciBkZXMKICAgIGRpcmVjdGl2ZXMgZCdhdXRvcmlzYXRpb24gYXV4cXVlbGxlcyBvbiBwb3VycmEgZmFpcmUgculm6XJlbmNlIOAKICAgIGwnYWlkZSBkZSBsJ2FsaWFzIHNw6WNpZmnpIGRhbnMgdW5lIGRpcmVjdGl2ZSA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIjcmVxdWlyZSI+UmVxdWlyZTwvYT48L2NvZGU+LjwvcD4KCgo8L2Rpdj4KPGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9ImRpcmVjdGl2ZS1zZWN0aW9uIj48aDI+PGEgbmFtZT0iYXV0aHpzZW5kZm9yYmlkZGVub25mYWlsdXJlIiBpZD0iYXV0aHpzZW5kZm9yYmlkZGVub25mYWlsdXJlIj5EaXJlY3RpdmU8L2E+IDxhIG5hbWU9IkF1dGh6U2VuZEZvcmJpZGRlbk9uRmFpbHVyZSIgaWQ9IkF1dGh6U2VuZEZvcmJpZGRlbk9uRmFpbHVyZSI+QXV0aHpTZW5kRm9yYmlkZGVuT25GYWlsdXJlPC9hPjwvaDI+Cjx0YWJsZSBjbGFzcz0iZGlyZWN0aXZlIj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI0Rlc2NyaXB0aW9uIj5EZXNjcmlwdGlvbjo8L2E+PC90aD48dGQ+RW52b2llICc0MDMgRk9SQklEREVOJyBhdSBsaWV1IGRlICc0MDEgVU5BVVRIT1JJWkVEJyBzaQpsJ2F1dGhlbnRpZmljYXRpb24gcul1c3NpdCBldCBzaSBsJ2F1dG9yaXNhdGlvbiBhIOl06SByZWZ1c+llLgo8L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNTeW50YXgiPlN5bnRheGU6PC9hPjwvdGg+PHRkPjxjb2RlPkF1dGh6U2VuZEZvcmJpZGRlbk9uRmFpbHVyZSBPbnxPZmY8L2NvZGU+PC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjRGVmYXVsdCI+ROlmYXV0OjwvYT48L3RoPjx0ZD48Y29kZT5BdXRoelNlbmRGb3JiaWRkZW5PbkZhaWx1cmUgT2ZmPC9jb2RlPjwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI0NvbnRleHQiPkNvbnRleHRlOjwvYT48L3RoPjx0ZD5y6XBlcnRvaXJlLCAuaHRhY2Nlc3M8L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNTdGF0dXMiPlN0YXR1dDo8L2E+PC90aD48dGQ+QmFzZTwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI01vZHVsZSI+TW9kdWxlOjwvYT48L3RoPjx0ZD5tb2RfYXV0aHpfY29yZTwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI0NvbXBhdGliaWxpdHkiPkNvbXBhdGliaWxpdOk6PC9hPjwvdGg+PHRkPkRpc3BvbmlibGUgZGVwdWlzIGxhIHZlcnNpb24gMi4zLjExIGQnQXBhY2hlIEhUVFBEPC90ZD48L3RyPgo8L3RhYmxlPgogICAgPHA+UGFyIGTpZmF1dCwgc2kgbCdhdXRoZW50aWZpY2F0aW9uIHLpdXNzaXQsIGFsb3JzIHF1ZQogICAgbCdhdXRvcmlzYXRpb24gZXN0IHJlZnVz6WUsIEFwYWNoZSBIVFRQRCByZW52b2llIHVuIGNvZGUgZGUgculwb25zZQogICAgSFRUUCAnNDAxIFVOQVVUSE9SSVpFRCcuIEVuIGfpbulyYWwsIGxlcyBuYXZpZ2F0ZXVycyBwcm9wb3NlbnQgYWxvcnMKICAgIHVuZSBub3V2ZWxsZSBmb2lzIOAgbCd1dGlsaXNhdGV1ciBsYSBib+50ZSBkZSBkaWFsb2d1ZSBkZSBzYWlzaWUgZHUKICAgIG1vdCBkZSBwYXNzZSwgY2UgcXVpIG4nZXN0IHBhcyB0b3Vqb3VycyBzb3VoYWl0YWJsZS4gTGEgZGlyZWN0aXZlCiAgICA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj5BdXRoelNlbmRGb3JiaWRkZW5PbkZhaWx1cmU8L2NvZGU+IHBlcm1ldCBkZSBjaGFuZ2VyCiAgICBsZSBjb2RlIGRlIHLpcG9uc2UgZW4gJzQwMyBGT1JCSURERU4nLjwvcD4KCiAgICA8ZGl2IGNsYXNzPSJ3YXJuaW5nIj48aDM+QXZlcnRpc3NlbWVudCBkZSBz6WN1cml06TwvaDM+CiAgICA8cD5MYSBtb2RpZmljYXRpb24gZGUgbGEgculwb25zZSBlbiBjYXMgZGUgcmVmdXMgZCdhdXRvcmlzYXRpb24KICAgIGRpbWludWUgbGEgc+ljdXJpdOkgZHUgbW90IGRlIHBhc3NlLCBjYXIgZWxsZSBpbmRpcXVlIOAgdW4g6XZlbnR1ZWwKICAgIGF0dGFxdWFudCBxdWUgbGUgbW90IGRlIHBhc3NlIHF1J2lsIGEgc2Fpc2kg6XRhaXQgY29ycmVjdC48L3A+CiAgICA8L2Rpdj4KCjwvZGl2Pgo8ZGl2IGNsYXNzPSJ0b3AiPjxhIGhyZWY9IiNwYWdlLWhlYWRlciI+PGltZyBhbHQ9InRvcCIgc3JjPSIuLi9pbWFnZXMvdXAuZ2lmIiAvPjwvYT48L2Rpdj4KPGRpdiBjbGFzcz0iZGlyZWN0aXZlLXNlY3Rpb24iPjxoMj48YSBuYW1lPSJyZXF1aXJlIiBpZD0icmVxdWlyZSI+RGlyZWN0aXZlPC9hPiA8YSBuYW1lPSJSZXF1aXJlIiBpZD0iUmVxdWlyZSI+UmVxdWlyZTwvYT48L2gyPgo8dGFibGUgY2xhc3M9ImRpcmVjdGl2ZSI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNEZXNjcmlwdGlvbiI+RGVzY3JpcHRpb246PC9hPjwvdGg+PHRkPlbpcmlmaWUgc2kgdW4gdXRpbGlzYXRldXIgYXV0aGVudGlmaekgYSB1bmUKYXV0b3Jpc2F0aW9uIGQnYWNj6HMgYWNjb3Jk6WUgcGFyIHVuIGZvdXJuaXNzZXVyCmQnYXV0b3Jpc2F0aW9uLjwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI1N5bnRheCI+U3ludGF4ZTo8L2E+PC90aD48dGQ+PGNvZGU+UmVxdWlyZSBbbm90XSA8dmFyPm5vbS1lbnRpdOk8L3Zhcj4gWzx2YXI+bm9tLWVudGl06TwvdmFyPl0KLi4uPC9jb2RlPjwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI0NvbnRleHQiPkNvbnRleHRlOjwvYT48L3RoPjx0ZD5y6XBlcnRvaXJlLCAuaHRhY2Nlc3M8L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNPdmVycmlkZSI+QWxsb3dPdmVycmlkZTo8L2E+PC90aD48dGQ+QXV0aENvbmZpZzwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI1N0YXR1cyI+U3RhdHV0OjwvYT48L3RoPjx0ZD5CYXNlPC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjTW9kdWxlIj5Nb2R1bGU6PC9hPjwvdGg+PHRkPm1vZF9hdXRoel9jb3JlPC90ZD48L3RyPgo8L3RhYmxlPgogICAgPHA+Q2V0dGUgZGlyZWN0aXZlIHBlcm1ldCBkZSB26XJpZmllciBzaSB1biB1dGlsaXNhdGV1ciBhdXRoZW50aWZp6QogICAgYSBsJ2F1dG9yaXNhdGlvbiBkJ2FjY+hzIGFjY29yZOllIHBvdXIgdW4gY2VydGFpbiBmb3Vybmlzc2V1cgogICAgZCdhdXRvcmlzYXRpb24gZXQgZW4gdGVuYW50IGNvbXB0ZSBkZSBjZXJ0YWluZXMgcmVzdHJpY3Rpb25zLgogICAgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRoel9jb3JlLmh0bWwiPm1vZF9hdXRoel9jb3JlPC9hPjwvY29kZT4gbWV0IOAgZGlzcG9zaXRpb24gbGVzIGZvdXJuaXNzZXVycwogICAgZCdhdXRvcmlzYXRpb24gZ+lu6XJpcXVlcyBzdWl2YW50cyA6PC9wPgoKICAgIDxkbD4KICAgICAgPGR0Pjxjb2RlPlJlcXVpcmUgYWxsIGdyYW50ZWQ8L2NvZGU+PC9kdD4KICAgICAgPGRkPkwnYWNj6HMgZXN0IGF1dG9yaXPpIHNhbnMgcmVzdHJpY3Rpb24uPC9kZD4KCiAgICAgIDxkdD48Y29kZT5SZXF1aXJlIGFsbCBkZW5pZWQ8L2NvZGU+PC9kdD4KICAgICAgPGRkPkwnYWNj6HMgZXN0IHN5c3TpbWF0aXF1ZW1lbnQgcmVmdXPpLjwvZGQ+CgogICAgICA8ZHQ+PGNvZGU+UmVxdWlyZSBlbnYgPHZhcj5lbnYtdmFyPC92YXI+IFs8dmFyPmVudi12YXI8L3Zhcj5dCiAgICAgIC4uLjwvY29kZT48L2R0PgogICAgICA8ZGQ+TCdhY2PocyBuJ2VzdCBhdXRvcmlz6SBxdWUgc2kgbCd1bmUgYXUgbW9pbnMgZGVzIHZhcmlhYmxlcwogICAgICBkJ2Vudmlyb25uZW1lbnQgc3DpY2lmaellcyBlc3QgZOlmaW5pZS48L2RkPgoKICAgICAgPGR0Pjxjb2RlPlJlcXVpcmUgbWV0aG9kIDx2YXI+aHR0cC1tZXRob2Q8L3Zhcj4gWzx2YXI+aHR0cC1tZXRob2Q8L3Zhcj5dCiAgICAgIC4uLjwvY29kZT48L2R0PgogICAgICA8ZGQ+TCdhY2PocyBuJ2VzdCBhdXRvcmlz6SBxdWUgcG91ciBsZXMgbel0aG9kZXMgSFRUUCBzcOljaWZp6WVzLjwvZGQ+CgogICAgICA8ZHQ+PGNvZGU+UmVxdWlyZSBleHByIDx2YXI+ZXhwcmVzc2lvbjwvdmFyPiA8L2NvZGU+PC9kdD4KICAgICAgPGRkPkwnYWNj6HMgZXN0IGF1dG9yaXPpIHNpIDx2YXI+ZXhwcmVzc2lvbjwvdmFyPiBlc3Qg6XZhbHXpIOAKICAgICAgdnJhaS48L2RkPgogICAgPC9kbD4KCiAgICA8cD5Wb2ljaSBxdWVscXVlcyBleGVtcGxlcyBkZSBzeW50YXhlcyBhdXRvcmlz6WVzIHBhcgogICAgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRoel91c2VyLmh0bWwiPm1vZF9hdXRoel91c2VyPC9hPjwvY29kZT4sIDxjb2RlIGNsYXNzPSJtb2R1bGUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfYXV0aHpfaG9zdC5odG1sIj5tb2RfYXV0aHpfaG9zdDwvYT48L2NvZGU+IGV0CiAgICA8Y29kZSBjbGFzcz0ibW9kdWxlIj48YSBocmVmPSIuLi9tb2QvbW9kX2F1dGh6X2dyb3VwZmlsZS5odG1sIj5tb2RfYXV0aHpfZ3JvdXBmaWxlPC9hPjwvY29kZT4gOjwvcD4KCiAgICA8ZGw+CiAgICAgIDxkdD48Y29kZT5SZXF1aXJlIHVzZXIgPHZhcj5pZGVudGlmaWFudCB1dGlsaXNhdGV1cjwvdmFyPgogICAgICBbPHZhcj5pZGVudGlmaWFudCB1dGlsaXNhdGV1cjwvdmFyPl0KICAgICAgLi4uPC9jb2RlPjwvZHQ+CiAgICAgIDxkZD5TZXVscyBsZXMgdXRpbGlzYXRldXJzIHNw6WNpZmnpcyBhdXJvbnQgYWNj6HMg4CBsYQogICAgICByZXNzb3VyY2UuPC9kZD4KCiAgICAgIDxkdD48Y29kZT5SZXF1aXJlIGdyb3VwIDx2YXI+bm9tIGdyb3VwZTwvdmFyPiBbPHZhcj5ub20KICAgICAgZ3JvdXBlPC92YXI+XQogICAgICAuLi48L2NvZGU+PC9kdD4KICAgICAgPGRkPlNldWxzIGxlcyB1dGlsaXNhdGV1cnMgYXBwYXJ0ZW5hbnQgYXV4IGdyb3VwZXMgc3DpY2lmaelzCiAgICAgIGF1cm9udCBhY2PocyDgIGxhIHJlc3NvdXJjZS48L2RkPgoKICAgICAgPGR0Pjxjb2RlPlJlcXVpcmUgdmFsaWQtdXNlcjwvY29kZT48L2R0PgogICAgICA8ZGQ+VG91cyBsZXMgdXRpbGlzYXRldXJzIHZhbGlkZXMgYXVyb250IGFjY+hzIOAgbGEKICAgICAgcmVzc291cmNlLjwvZGQ+CgogICAgICA8ZHQ+PGNvZGU+UmVxdWlyZSBpcCAxMCAxNzIuMjAgMTkyLjE2OC4yPC9jb2RlPjwvZHQ+CiAgICAgIDxkZD5MZXMgY2xpZW50cyBkb250IGxlcyBhZHJlc3NlcyBJUCBmb250IHBhcnRpZSBkZXMgdHJhbmNoZXMKICAgICAgc3DpY2lmaellcyBhdXJvbnQgYWNj6HMg4CBsYSByZXNzb3VyY2UuPC9kZD4KICAgIDwvZGw+CgogICAgPHA+RCdhdXRyZXMgbW9kdWxlcyBkJ2F1dG9yaXNhdGlvbiBjb21tZQogICAgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRobnpfbGRhcC5odG1sIj5tb2RfYXV0aG56X2xkYXA8L2E+PC9jb2RlPiwgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRoel9kYm0uaHRtbCI+bW9kX2F1dGh6X2RibTwvYT48L2NvZGU+LAogICAgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRoel9kYmQuaHRtbCI+bW9kX2F1dGh6X2RiZDwvYT48L2NvZGU+LAogICAgPGNvZGUgY2xhc3M9Im1vZHVsZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRoel9vd25lci5odG1sIj5tb2RfYXV0aHpfb3duZXI8L2E+PC9jb2RlPiBldCA8Y29kZSBjbGFzcz0ibW9kdWxlIj48YSBocmVmPSIuLi9tb2QvbW9kX3NzbC5odG1sIj5tb2Rfc3NsPC9hPjwvY29kZT4KICAgIGltcGzpbWVudGVudCBkZXMgb3B0aW9ucyBkZSBsYSBkaXJlY3RpdmUgUmVxdWlyZS48L3A+CgogICAgPHA+UG91ciBxdSd1bmUgY29uZmlndXJhdGlvbiBkJ2F1dGhlbnRpZmljYXRpb24gZXQgZCdhdXRvcmlzYXRpb24KICAgIGZvbmN0aW9ubmUgY29ycmVjdGVtZW50LCBsYSBkaXJlY3RpdmUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+UmVxdWlyZTwvY29kZT4KICAgIGRvaXQg6nRyZSBhY2NvbXBhZ27pZSBkYW5zIGxhIHBsdXBhcnQgZGVzIGNhcyBkZSBkaXJlY3RpdmVzIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9Ii4uL21vZC9tb2RfYXV0aG5fY29yZS5odG1sI2F1dGhuYW1lIj5BdXRoTmFtZTwvYT48L2NvZGU+LCA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuLi9tb2QvbW9kX2F1dGhuX2NvcmUuaHRtbCNhdXRodHlwZSI+QXV0aFR5cGU8L2E+PC9jb2RlPiBldCA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuLi9tb2QvbW9kX2F1dGhfYmFzaWMuaHRtbCNhdXRoYmFzaWNwcm92aWRlciI+QXV0aEJhc2ljUHJvdmlkZXI8L2E+PC9jb2RlPiBvdSA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuLi9tb2QvbW9kX2F1dGhfZGlnZXN0Lmh0bWwjYXV0aGRpZ2VzdHByb3ZpZGVyIj5BdXRoRGlnZXN0UHJvdmlkZXI8L2E+PC9jb2RlPiwgYWluc2kgcXVlCiAgICBkZSBkaXJlY3RpdmVzIHRlbGxlcyBxdWUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi4vbW9kL21vZF9hdXRobl9maWxlLmh0bWwjYXV0aHVzZXJmaWxlIj5BdXRoVXNlckZpbGU8L2E+PC9jb2RlPiBldCA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuLi9tb2QvbW9kX2F1dGh6X2dyb3VwZmlsZS5odG1sI2F1dGhncm91cGZpbGUiPkF1dGhHcm91cEZpbGU8L2E+PC9jb2RlPiAocG91ciBsYQogICAgZOlmaW5pdGlvbiBkZXMgdXRpbGlzYXRldXJzIGV0IGRlcyBncm91cGVzKS4gRXhlbXBsZSA6PC9wPgoKICAgIDxwcmUgY2xhc3M9InByZXR0eXByaW50IGxhbmctY29uZmlnIj5BdXRoVHlwZSBCYXNpYwpBdXRoTmFtZSAiUmVzdHJpY3RlZCBSZXNvdXJjZSIKQXV0aEJhc2ljUHJvdmlkZXIgZmlsZQpBdXRoVXNlckZpbGUgIi93ZWIvdXNlcnMiCkF1dGhHcm91cEZpbGUgIi93ZWIvZ3JvdXBzIgpSZXF1aXJlIGdyb3VwIGFkbWluPC9wcmU+CgoKICAgIDxwPkxlcyBjb250cvRsZXMgZCdhY2PocyBhcHBsaXF16XMgZGUgY2V0dGUgbWFuaehyZSBzb250IGVmZmVjdGlmcwogICAgcG91ciA8c3Ryb25nPnRvdXRlczwvc3Ryb25nPiBsZXMgbel0aG9kZXMuIDxzdHJvbmc+Qydlc3QgZCdhaWxsZXVycwogICAgY2UgcXVlIGwnb24gc291aGFpdGUgZW4gZ+lu6XJhbC48L3N0cm9uZz4gU2kgdm91cyB2b3VsZXogbidhcHBsaXF1ZXIKICAgIGxlcyBjb250cvRsZXMgZCdhY2PocyBxdSfgIGNlcnRhaW5lcyBt6XRob2RlcywgdG91dCBlbiBsYWlzc2FudCBsZXMKICAgIGF1dHJlcyBt6XRob2RlcyBzYW5zIHByb3RlY3Rpb24sIHBsYWNleiBsYSBkaXJlY3RpdmUKICAgIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPlJlcXVpcmU8L2NvZGU+IGRhbnMgdW5lIHNlY3Rpb24gPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi4vbW9kL2NvcmUuaHRtbCNsaW1pdCI+Jmx0O0xpbWl0Jmd0OzwvYT48L2NvZGU+LjwvcD4KCiAgICA8cD5MZSBy6XN1bHRhdCBkZSBsYSBkaXJlY3RpdmUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+UmVxdWlyZTwvY29kZT4gcGV1dAogICAg6nRyZSBpbnZlcnPpIGVuIHV0aWxpc2FudCBsJ29wdGlvbiA8Y29kZT5ub3Q8L2NvZGU+LiBDb21tZSBkYW5zIGxlCiAgICBjYXMgZGUgbCdhdXRyZSBkaXJlY3RpdmUgZCdhdXRvcmlzYXRpb24gaW52ZXJz6WUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+Jmx0O1JlcXVpcmVOb25lJmd0OzwvY29kZT4sIHNpIGxhIGRpcmVjdGl2ZQogICAgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+UmVxdWlyZTwvY29kZT4gZXN0IGludmVyc+llLCBlbGxlIG5lIHBldXQgcXUn6WNob3VlcgogICAgb3UgcHJvZHVpcmUgdW4gculzdWx0YXQgbmV1dHJlIDsgZWxsZSBuZSBwZXV0IGRvbmMgYWxvcnMgcGFzCiAgICBhdXRvcmlzZXIgdW5lIHJlcXXqdGUgZGUgbWFuaehyZSBpbmTpcGVuZGFudGUuPC9wPgoKICAgIDxwPkRhbnMgbCdleGVtcGxlIHN1aXZhbnQsIHRvdXMgbGVzIHV0aWxpc2F0ZXVycyBhcHBhcnRlbmFudCBhdXgKICAgIGdyb3VwZXMgPGNvZGU+YWxwaGE8L2NvZGU+IGV0IDxjb2RlPmJldGE8L2NvZGU+IG9udCBsJ2F1dG9yaXNhdGlvbgogICAgZCdhY2Pocywg4CBsJ2V4Y2VwdGlvbiBkZSBjZXV4IGFwcGFydGVuYW50IGF1IGdyb3VwZQogICAgPGNvZGU+cmVqZWN0PC9jb2RlPi48L3A+CgogICAgPHByZSBjbGFzcz0icHJldHR5cHJpbnQgbGFuZy1jb25maWciPiZsdDtEaXJlY3RvcnkgIi93d3cvZG9jcyImZ3Q7CiAgICAmbHQ7UmVxdWlyZUFsbCZndDsKICAgICAgICBSZXF1aXJlIGdyb3VwIGFscGhhIGJldGEKICAgICAgICBSZXF1aXJlIG5vdCBncm91cCByZWplY3QKICAgICZsdDsvUmVxdWlyZUFsbCZndDsKJmx0Oy9EaXJlY3RvcnkmZ3Q7PC9wcmU+CgoKICAgIDxwPkxvcnNxdWUgcGx1c2lldXJzIGRpcmVjdGl2ZXMgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+UmVxdWlyZTwvY29kZT4gc29udAogICAgcGxhY+llcyBkYW5zIHVuZSBt6m1lIDxhIGhyZWY9Ii4uL3NlY3Rpb25zLmh0bWwjbWVyZ2luZyI+c2VjdGlvbiBkZQogICAgY29uZmlndXJhdGlvbjwvYT4sIGV0IG5lIHNlIHRyb3V2ZW50IHBhcyBkYW5zIHVuZSBhdXRyZSBkaXJlY3RpdmUKICAgIGQnYXV0b3Jpc2F0aW9uIGNvbW1lIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9IiNyZXF1aXJlYWxsIj4mbHQ7UmVxdWlyZUFsbCZndDs8L2E+PC9jb2RlPiwgZWxsZXMgc29udCBpbXBsaWNpdGVtZW50CiAgICBjb250ZW51ZXMgZGFucyB1bmUgZGlyZWN0aXZlIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9IiNyZXF1aXJlYW55Ij4mbHQ7UmVxdWlyZUFueSZndDs8L2E+PC9jb2RlPi4gQWluc2ksIGxhIHByZW1p6HJlIGRpcmVjdGl2ZQogICAgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+UmVxdWlyZTwvY29kZT4gcXVpIGF1dG9yaXNlIGwnYWNj6HMg4CB1biB1dGlsaXNhdGV1cgogICAgYXV0b3Jpc2UgbCdhY2PocyBwb3VyIGwnZW5zZW1ibGUgZGUgbGEgcmVxdep0ZSwgZXQgbGVzIGRpcmVjdGl2ZXMKICAgIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPlJlcXVpcmU8L2NvZGU+IHN1aXZhbnRlcyBzb250IGlnbm9y6WVzLjwvcD4KCiAgICA8ZGl2IGNsYXNzPSJ3YXJuaW5nIj48aDM+QXZlcnRpc3NlbWVudCDgIHByb3BvcyBkZSBsYSBz6WN1cml06TwvaDM+CiAgICA8cD5QcmV0dGV6IHVuZSBhdHRlbnRpb24gcGFydGljdWxp6HJlIGF1eCBkaXJlY3RpdmVzIGQnYXV0b3Jpc2F0aW9uCiAgICBk6WZpbmllcwogICAgYXUgc2VpbiBkZXMgc2VjdGlvbnMgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+PGEgaHJlZj0iLi4vbW9kL2NvcmUuaHRtbCNsb2NhdGlvbiI+TG9jYXRpb248L2E+PC9jb2RlPgogICAgcXVpIHNlIGNoZXZhdWNoZW50IGF2ZWMgZGVzIGNvbnRlbnVzIHNlcnZpcyBkZXB1aXMgbGUgc3lzdOhtZSBkZQogICAgZmljaGllcnMuIFBhciBk6WZhdXQsIGxlcyBjb25maWd1cmF0aW9ucyBk6WZpbmllcyBkYW5zIGNlcyA8YSBocmVmPSIuLi9zZWN0aW9ucy5odG1sI21lcmdpbmciPnNlY3Rpb25zPC9hPiBsJ2VtcG9ydGVudCBzdXIgbGVzCiAgICBjb25maWd1cmF0aW9ucyBkJ2F1dG9yaXNhdGlvbnMgZOlmaW5pZXMgYXUgc2VpbiBkZXMgc2VjdGlvbnMKICAgIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPjxhIGhyZWY9Ii4uL21vZC9jb3JlLmh0bWwjZGlyZWN0b3J5Ij5EaXJlY3Rvcnk8L2E+PC9jb2RlPiBldCA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIuLi9tb2QvY29yZS5odG1sI2ZpbGVzIj5GaWxlczwvYT48L2NvZGU+IHNlY3Rpb25zLjwvcD4KICAgIDxwPkxhIGRpcmVjdGl2ZSA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj48YSBocmVmPSIjYXV0aG1lcmdpbmciPkF1dGhNZXJnaW5nPC9hPjwvY29kZT4gcGVybWV0IGRlIGNvbnRy9GxlcgogICAgbGEgbWFuaehyZSBzZWxvbiBsYXF1ZWxsZSBsZXMgY29uZmlndXJhdGlvbnMgZCdhdXRvcmlzYXRpb25zIHNvbnQKICAgIGZ1c2lvbm7pZXMgYXUgc2VpbiBkZXMgc2VjdGlvbnMgcHLpY2l06WVzLjwvcD4KICAgIDwvZGl2PgoKPGgzPlZvaXIgYXVzc2k8L2gzPgo8dWw+CjxsaT48YSBocmVmPSIuLi9ob3d0by9hY2Nlc3MuaHRtbCI+VHV0b3JpZWwgZHUgY29udHL0bGUgZCdhY2PoczwvYT48L2xpPgo8bGk+PGEgaHJlZj0iI2xvZ2ljIj5Db250ZW5ldXJzIGQnYXV0b3Jpc2F0aW9uPC9hPjwvbGk+CjxsaT48Y29kZSBjbGFzcz0ibW9kdWxlIj48YSBocmVmPSIuLi9tb2QvbW9kX2F1dGhuX2NvcmUuaHRtbCI+bW9kX2F1dGhuX2NvcmU8L2E+PC9jb2RlPjwvbGk+CjxsaT48Y29kZSBjbGFzcz0ibW9kdWxlIj48YSBocmVmPSIuLi9tb2QvbW9kX2F1dGh6X2hvc3QuaHRtbCI+bW9kX2F1dGh6X2hvc3Q8L2E+PC9jb2RlPjwvbGk+CjwvdWw+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJ0b3AiPjxhIGhyZWY9IiNwYWdlLWhlYWRlciI+PGltZyBhbHQ9InRvcCIgc3JjPSIuLi9pbWFnZXMvdXAuZ2lmIiAvPjwvYT48L2Rpdj4KPGRpdiBjbGFzcz0iZGlyZWN0aXZlLXNlY3Rpb24iPjxoMj48YSBuYW1lPSJyZXF1aXJlYWxsIiBpZD0icmVxdWlyZWFsbCI+RGlyZWN0aXZlPC9hPiA8YSBuYW1lPSJSZXF1aXJlQWxsIiBpZD0iUmVxdWlyZUFsbCI+Jmx0O1JlcXVpcmVBbGwmZ3Q7PC9hPjwvaDI+Cjx0YWJsZSBjbGFzcz0iZGlyZWN0aXZlIj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI0Rlc2NyaXB0aW9uIj5EZXNjcmlwdGlvbjo8L2E+PC90aD48dGQ+UmVncm91cGUgcGx1c2lldXJzIGRpcmVjdGl2ZXMgZCdhdXRvcmlzYXRpb24gZG9udCBhdWN1bmUgbmUKZG9pdCDpY2hvdWVyIGV0IGRvbnQgYXUgbW9pbnMgdW5lIGRvaXQgcmV0b3VybmVyIHVuIHLpc3VsdGF0IHBvc2l0aWYKcG91ciBxdWUgbGEgZGlyZWN0aXZlIGdsb2JhbGUgcmV0b3VybmUgZWxsZS1t6m1lIHVuIHLpc3VsdGF0CnBvc2l0aWYuPC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjU3ludGF4Ij5TeW50YXhlOjwvYT48L3RoPjx0ZD48Y29kZT4mbHQ7UmVxdWlyZUFsbCZndDsgLi4uICZsdDsvUmVxdWlyZUFsbCZndDs8L2NvZGU+PC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjQ29udGV4dCI+Q29udGV4dGU6PC9hPjwvdGg+PHRkPnLpcGVydG9pcmUsIC5odGFjY2VzczwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI092ZXJyaWRlIj5BbGxvd092ZXJyaWRlOjwvYT48L3RoPjx0ZD5BdXRoQ29uZmlnPC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjU3RhdHVzIj5TdGF0dXQ6PC9hPjwvdGg+PHRkPkJhc2U8L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNNb2R1bGUiPk1vZHVsZTo8L2E+PC90aD48dGQ+bW9kX2F1dGh6X2NvcmU8L3RkPjwvdHI+CjwvdGFibGU+CiAgICA8cD5MZXMgYmFsaXNlcyA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj4mbHQ7UmVxdWlyZUFsbCZndDs8L2NvZGU+IGV0CiAgICA8Y29kZT4mbHQ7L1JlcXVpcmVBbGwmZ3Q7PC9jb2RlPiBwZXJtZXR0ZW50IGRlIHJlZ3JvdXBlciBkZXMKICAgIGRpcmVjdGl2ZXMgZCdhdXRvcmlzYXRpb24gZG9udCBhdWN1bmUgbmUgZG9pdCDpY2hvdWVyLCBldCBkb250IGF1CiAgICBtb2lucyB1bmUgZG9pdCByZXRvdXJuZXIgdW4gculzdWx0YXQgcG9zaXRpZiBwb3VyIHF1ZSBsYSBkaXJlY3RpdmUKICAgIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPiZsdDtSZXF1aXJlQWxsJmd0OzwvY29kZT4gcmV0b3VybmUgZWxsZS1t6m1lCiAgICB1biBy6XN1bHRhdCBwb3NpdGlmLjwvcD4KCiAgICA8cD5TaSBhdWN1bmUgZGVzIGRpcmVjdGl2ZXMgY29udGVudWVzIGRhbnMgbGEgZGlyZWN0aXZlIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPiZsdDtSZXF1aXJlQWxsJmd0OzwvY29kZT4gbifpY2hvdWUsIGV0IHNpIGF1IG1vaW5zIHVuZQogICAgcmV0b3VybmUgdW4gculzdWx0YXQgcG9zaXRpZiwgYWxvcnMgbGEgZGlyZWN0aXZlIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPiZsdDtSZXF1aXJlQWxsJmd0OzwvY29kZT4gcmV0b3VybmUgZWxsZS1t6m1lIHVuIHLpc3VsdGF0CiAgICBwb3NpdGlmLiBTaSBhdWN1bmUgbmUgcmV0b3VybmUgdW4gculzdWx0YXQgcG9zaXRpZiwgZXQgc2kgYXVjdW5lCiAgICBuJ+ljaG91ZSwgbGEgZGlyZWN0aXZlIGdsb2JhbGUgcmV0b3VybmUgdW4gculzdWx0YXQgbmV1dHJlLiBEYW5zCiAgICB0b3VzIGxlcyBhdXRyZXMgY2FzLCBlbGxlIOljaG91ZS48L3A+Cgo8aDM+Vm9pciBhdXNzaTwvaDM+Cjx1bD4KPGxpPjxhIGhyZWY9IiNsb2dpYyI+Q29udGVuZXVycyBkJ2F1dG9yaXNhdGlvbjwvYT48L2xpPgo8bGk+PGEgaHJlZj0iLi4vaG93dG8vYXV0aC5odG1sIj5BdXRoZW50aWZpY2F0aW9uLCBhdXRvcmlzYXRpb24gZXQKY29udHL0bGUgZCdhY2PoczwvYT48L2xpPgo8L3VsPgo8L2Rpdj4KPGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9ImRpcmVjdGl2ZS1zZWN0aW9uIj48aDI+PGEgbmFtZT0icmVxdWlyZWFueSIgaWQ9InJlcXVpcmVhbnkiPkRpcmVjdGl2ZTwvYT4gPGEgbmFtZT0iUmVxdWlyZUFueSIgaWQ9IlJlcXVpcmVBbnkiPiZsdDtSZXF1aXJlQW55Jmd0OzwvYT48L2gyPgo8dGFibGUgY2xhc3M9ImRpcmVjdGl2ZSI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNEZXNjcmlwdGlvbiI+RGVzY3JpcHRpb246PC9hPjwvdGg+PHRkPlJlZ3JvdXBlIGRlcyBkaXJlY3RpdmVzIGQnYXV0b3Jpc2F0aW9uIGRvbnQgYXUgbW9pbnMgdW5lCmRvaXQgcmV0b3VybmVyIHVuIHLpc3VsdGF0IHBvc2l0aWYgcG91ciBxdWUgbGEgZGlyZWN0aXZlIGdsb2JhbGUKcmV0b3VybmUgZWxsZS1t6m1lIHVuIHLpc3VsdGF0IHBvc2l0aWYuPC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjU3ludGF4Ij5TeW50YXhlOjwvYT48L3RoPjx0ZD48Y29kZT4mbHQ7UmVxdWlyZUFueSZndDsgLi4uICZsdDsvUmVxdWlyZUFueSZndDs8L2NvZGU+PC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjQ29udGV4dCI+Q29udGV4dGU6PC9hPjwvdGg+PHRkPnLpcGVydG9pcmUsIC5odGFjY2VzczwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI092ZXJyaWRlIj5BbGxvd092ZXJyaWRlOjwvYT48L3RoPjx0ZD5BdXRoQ29uZmlnPC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjU3RhdHVzIj5TdGF0dXQ6PC9hPjwvdGg+PHRkPkJhc2U8L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNNb2R1bGUiPk1vZHVsZTo8L2E+PC90aD48dGQ+bW9kX2F1dGh6X2NvcmU8L3RkPjwvdHI+CjwvdGFibGU+CiAgICA8cD5MZXMgYmFsaXNlcyA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj4mbHQ7UmVxdWlyZUFueSZndDs8L2NvZGU+IGV0CiAgICA8Y29kZT4mbHQ7L1JlcXVpcmVBbnkmZ3Q7PC9jb2RlPiBwZXJtZXR0ZW50IGRlIHJlZ3JvdXBlciBkZXMKICAgIGRpcmVjdGl2ZXMgZCdhdXRvcmlzYXRpb24gZG9udCBhdSBtb2lucyB1bmUgZG9pdCByZXRvdXJuZXIgdW4KICAgIHLpc3VsdGF0IHBvc2l0aWYgcG91ciBxdWUgbGEgZGlyZWN0aXZlIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPiZsdDtSZXF1aXJlQW55Jmd0OzwvY29kZT4gcmV0b3VybmUgZWxsZS1t6m1lIHVuIHLpc3VsdGF0CiAgICBwb3NpdGlmLjwvcD4KCiAgICA8cD5TaSB1bmUgb3UgcGx1c2lldXJzIGRpcmVjdGl2ZXMgY29udGVudWVzIGRhbnMgbGEgZGlyZWN0aXZlCiAgICA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj4mbHQ7UmVxdWlyZUFueSZndDs8L2NvZGU+IHJldG91cm5lbnQgdW4KICAgIHLpc3VsdGF0IHBvc2l0aWYsIGFsb3JzIGxhIGRpcmVjdGl2ZSA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj4mbHQ7UmVxdWlyZUFueSZndDs8L2NvZGU+IHJldG91cm5lIGVsbGUtbeptZSB1biBy6XN1bHRhdAogICAgcG9zaXRpZi4gU2kgYXVjdW5lIG5lIHJldG91cm5lIHVuIHLpc3VsdGF0IHBvc2l0aWYgZXQgYXVjdW5lCiAgICBuJ+ljaG91ZSwgbGEgZGlyZWN0aXZlIGdsb2JhbGUgcmV0b3VybmUgdW4gculzdWx0YXQgbmV1dHJlLiBEYW5zCiAgICB0b3VzIGxlcyBhdXRyZXMgY2FzLCBlbGxlIOljaG91ZS48L3A+CgogICAgPGRpdiBjbGFzcz0ibm90ZSI+Q29tbWUgbGVzIGRpcmVjdGl2ZXMgZCdhdXRvcmlzYXRpb24gaW52ZXJz6WVzIHNvbnQgaW5jYXBhYmxlcwogICAgZGUgcmV0b3VybmVyIHVuIHLpc3VsdGF0IHBvc2l0aWYsIGVsbGVzIG5lIHBldXZlbnQgcGFzIGltcGFjdGVyIGRlCiAgICBtYW5p6HJlIHNpZ25pZmljYXRpdmUgbGUgculzdWx0YXQgZCd1bmUgZGlyZWN0aXZlIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPiZsdDtSZXF1aXJlQW55Jmd0OzwvY29kZT4gKGVsbGVzIHBvdXJyYWllbnQgdG91dCBhdSBwbHVzCiAgICBmYWlyZSDpY2hvdWVyIGxhIGRpcmVjdGl2ZSBkYW5zIGxlIGNhcyBv+SBlbGxlcyDpY2hvdWVyYWllbnQKICAgIGVsbGVzLW3qbWVzLCBldCBv+QogICAgdG91dGVzIGxlcyBhdXRyZXMgZGlyZWN0aXZlcyByZXRvdXJuZXJhaWVudCB1biBy6XN1bHRhdCBuZXV0cmUpLgogICAgQydlc3QgcG91cnF1b2kgaWwgbidlc3QgcGFzIHBlcm1pcyBkJ3V0aWxpc2VyIGxlcyBkaXJlY3RpdmVzCiAgICBkJ2F1dG9yaXNhdGlvbiBpbnZlcnPpZXMgZGFucyB1bmUgZGlyZWN0aXZlIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPiZsdDtSZXF1aXJlQW55Jmd0OzwvY29kZT4uPC9kaXY+Cgo8aDM+Vm9pciBhdXNzaTwvaDM+Cjx1bD4KPGxpPjxhIGhyZWY9IiNsb2dpYyI+Q29udGVuZXVycyBkJ2F1dG9yaXNhdGlvbjwvYT48L2xpPgo8bGk+PGEgaHJlZj0iLi4vaG93dG8vYXV0aC5odG1sIj5BdXRoZW50aWZpY2F0aW9uLCBhdXRvcmlzYXRpb24gZXQKY29udHL0bGUgZCdhY2PoczwvYT48L2xpPgo8L3VsPgo8L2Rpdj4KPGRpdiBjbGFzcz0idG9wIj48YSBocmVmPSIjcGFnZS1oZWFkZXIiPjxpbWcgYWx0PSJ0b3AiIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgLz48L2E+PC9kaXY+CjxkaXYgY2xhc3M9ImRpcmVjdGl2ZS1zZWN0aW9uIj48aDI+PGEgbmFtZT0icmVxdWlyZW5vbmUiIGlkPSJyZXF1aXJlbm9uZSI+RGlyZWN0aXZlPC9hPiA8YSBuYW1lPSJSZXF1aXJlTm9uZSIgaWQ9IlJlcXVpcmVOb25lIj4mbHQ7UmVxdWlyZU5vbmUmZ3Q7PC9hPjwvaDI+Cjx0YWJsZSBjbGFzcz0iZGlyZWN0aXZlIj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI0Rlc2NyaXB0aW9uIj5EZXNjcmlwdGlvbjo8L2E+PC90aD48dGQ+UmVncm91cGUgZGVzIGRpcmVjdGl2ZXMgZCdhdXRvcmlzYXRpb24gZG9udCBhdWN1bmUgbmUgZG9pdApyZXRvdXJuZXIgdW4gculzdWx0YXQgcG9zaXRpZiBwb3VyIHF1ZSBsYSBkaXJlY3RpdmUgZ2xvYmFsZSBuJ+ljaG91ZQpwYXMuPC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjU3ludGF4Ij5TeW50YXhlOjwvYT48L3RoPjx0ZD48Y29kZT4mbHQ7UmVxdWlyZU5vbmUmZ3Q7IC4uLiAmbHQ7L1JlcXVpcmVOb25lJmd0OzwvY29kZT48L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNDb250ZXh0Ij5Db250ZXh0ZTo8L2E+PC90aD48dGQ+culwZXJ0b2lyZSwgLmh0YWNjZXNzPC90ZD48L3RyPgo8dHI+PHRoPjxhIGhyZWY9ImRpcmVjdGl2ZS1kaWN0Lmh0bWwjT3ZlcnJpZGUiPkFsbG93T3ZlcnJpZGU6PC9hPjwvdGg+PHRkPkF1dGhDb25maWc8L3RkPjwvdHI+Cjx0cj48dGg+PGEgaHJlZj0iZGlyZWN0aXZlLWRpY3QuaHRtbCNTdGF0dXMiPlN0YXR1dDo8L2E+PC90aD48dGQ+QmFzZTwvdGQ+PC90cj4KPHRyPjx0aD48YSBocmVmPSJkaXJlY3RpdmUtZGljdC5odG1sI01vZHVsZSI+TW9kdWxlOjwvYT48L3RoPjx0ZD5tb2RfYXV0aHpfY29yZTwvdGQ+PC90cj4KPC90YWJsZT4KICAgIDxwPkxlcyBiYWxpc2VzIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPiZsdDtSZXF1aXJlTm9uZSZndDs8L2NvZGU+IGV0CiAgICA8Y29kZT4mbHQ7L1JlcXVpcmVOb25lJmd0OzwvY29kZT4gcGVybWV0dGVudCBkZSByZWdyb3VwZXIgZGVzCiAgICBkaXJlY3RpdmVzIGQnYXV0b3Jpc2F0aW9uIGRvbnQgYXVjdW5lIG5lIGRvaXQgcmV0b3VybmVyIHVuIHLpc3VsdGF0CiAgICBwb3NpdGlmIHBvdXIgcXVlIGxhIGRpcmVjdGl2ZSA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj4mbHQ7UmVxdWlyZU5vbmUmZ3Q7PC9jb2RlPiBuJ+ljaG91ZSBwYXMuPC9wPgoKICAgIDxwPlNpIHVuZSBvdSBwbHVzaWV1cnMgZGlyZWN0aXZlcyBjb250ZW51ZXMgZGFucyBsYSBkaXJlY3RpdmUKICAgIDxjb2RlIGNsYXNzPSJkaXJlY3RpdmUiPiZsdDtSZXF1aXJlTm9uZSZndDs8L2NvZGU+IHJldG91cm5lbnQgdW4KICAgIHLpc3VsdGF0IHBvc2l0aWYsIGxhIGRpcmVjdGl2ZSA8Y29kZSBjbGFzcz0iZGlyZWN0aXZlIj4mbHQ7UmVxdWlyZU5vbmUmZ3Q7PC9jb2RlPiDpY2hvdWVyYS4gRGFucyB0b3VzIGxlcwogICAgYXV0cmVzIGNhcywgY2V0dGUgZGVybmnocmUgcmV0b3VybmVyYSB1biBy6XN1bHRhdCBuZXV0cmUuIEFpbnNpLAogICAgY29tbWUgcG91ciBsYSBkaXJlY3RpdmUgZCdhdXRvcmlzYXRpb24gaW52ZXJz6WUgPGNvZGU+UmVxdWlyZQogICAgbm90PC9jb2RlPiwgZWxsZSBuZSBwZXV0IGphbWFpcyBhdXRvcmlzZXIgdW5lIHJlcXXqdGUgZGUgbWFuaehyZQogICAgaW5k6XBlbmRhbnRlIGNhciBlbGxlIG5lIHBvdXJyYSBqYW1haXMgcmV0b3VybmVyIHVuIHLpc3VsdGF0CiAgICBwb3NpdGlmLiBQYXIgY29udHJlLCBvbiBwZXV0IGwndXRpbGlzZXIgcG91ciByZXN0cmVpbmRyZSBsJ2Vuc2VtYmxlCiAgICBkZXMgdXRpbGlzYXRldXJzIGF1dG9yaXPpcyDgIGFjY+lkZXIg4CB1bmUgcmVzc291cmNlLjwvcD4KCiAgICA8ZGl2IGNsYXNzPSJub3RlIj5Db21tZSBsZXMgZGlyZWN0aXZlcyBkJ2F1dG9yaXNhdGlvbiBpbnZlcnPpZXMgc29udCBpbmNhcGFibGVzCiAgICBkZSByZXRvdXJuZXIgdW4gculzdWx0YXQgcG9zaXRpZiwgZWxsZXMgbmUgcGV1dmVudCBwYXMgaW1wYWN0ZXIgZGUKICAgIG1hbmnocmUgc2lnbmlmaWNhdGl2ZSBsZSBy6XN1bHRhdCBkJ3VuZSBkaXJlY3RpdmUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+Jmx0O1JlcXVpcmVOb25lJmd0OzwvY29kZT4uCiAgICBDJ2VzdCBwb3VycXVvaSBpbCBuJ2VzdCBwYXMgcGVybWlzIGQndXRpbGlzZXIgbGVzIGRpcmVjdGl2ZXMKICAgIGQnYXV0b3Jpc2F0aW9uIGludmVyc+llcyBkYW5zIHVuZSBkaXJlY3RpdmUgPGNvZGUgY2xhc3M9ImRpcmVjdGl2ZSI+Jmx0O1JlcXVpcmVOb25lJmd0OzwvY29kZT4uPC9kaXY+Cgo8aDM+Vm9pciBhdXNzaTwvaDM+Cjx1bD4KPGxpPjxhIGhyZWY9IiNsb2dpYyI+Q29udGVuZXVycyBkJ2F1dG9yaXNhdGlvbjwvYT48L2xpPgo8bGk+PGEgaHJlZj0iLi4vaG93dG8vYXV0aC5odG1sIj5BdXRoZW50aWZpY2F0aW9uLCBhdXRvcmlzYXRpb24gZXQKY29udHL0bGUgZCdhY2PoczwvYT48L2xpPgo8L3VsPgo8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9ImJvdHRvbWxhbmciPgo8cD48c3Bhbj5MYW5ndWVzIERpc3BvbmlibGVzOiA8L3NwYW4+PGEgaHJlZj0iLi4vZW4vbW9kL21vZF9hdXRoel9jb3JlLmh0bWwiIGhyZWZsYW5nPSJlbiIgcmVsPSJhbHRlcm5hdGUiIHRpdGxlPSJFbmdsaXNoIj4mbmJzcDtlbiZuYnNwOzwvYT4gfAo8YSBocmVmPSIuLi9mci9tb2QvbW9kX2F1dGh6X2NvcmUuaHRtbCIgdGl0bGU9IkZyYW7nYWlzIj4mbmJzcDtmciZuYnNwOzwvYT48L3A+CjwvZGl2PjxkaXYgY2xhc3M9InRvcCI+PGEgaHJlZj0iI3BhZ2UtaGVhZGVyIj48aW1nIHNyYz0iLi4vaW1hZ2VzL3VwLmdpZiIgYWx0PSJ0b3AiIC8+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InNlY3Rpb24iPjxoMj48YSBpZD0iY29tbWVudHNfc2VjdGlvbiIgbmFtZT0iY29tbWVudHNfc2VjdGlvbiI+Q29tbWVudGFpcmVzPC9hPjwvaDI+PGRpdiBjbGFzcz0id2FybmluZyI+PHN0cm9uZz5Ob3RpY2U6PC9zdHJvbmc+PGJyIC8+VGhpcyBpcyBub3QgYSBRJmFtcDtBIHNlY3Rpb24uIENvbW1lbnRzIHBsYWNlZCBoZXJlIHNob3VsZCBiZSBwb2ludGVkIHRvd2FyZHMgc3VnZ2VzdGlvbnMgb24gaW1wcm92aW5nIHRoZSBkb2N1bWVudGF0aW9uIG9yIHNlcnZlciwgYW5kIG1heSBiZSByZW1vdmVkIGFnYWluIGJ5IG91ciBtb2RlcmF0b3JzIGlmIHRoZXkgYXJlIGVpdGhlciBpbXBsZW1lbnRlZCBvciBjb25zaWRlcmVkIGludmFsaWQvb2ZmLXRvcGljLiBRdWVzdGlvbnMgb24gaG93IHRvIG1hbmFnZSB0aGUgQXBhY2hlIEhUVFAgU2VydmVyIHNob3VsZCBiZSBkaXJlY3RlZCBhdCBlaXRoZXIgb3VyIElSQyBjaGFubmVsLCAjaHR0cGQsIG9uIEZyZWVub2RlLCBvciBzZW50IHRvIG91ciA8YSBocmVmPSJodHRwOi8vaHR0cGQuYXBhY2hlLm9yZy9saXN0cy5odG1sIj5tYWlsaW5nIGxpc3RzPC9hPi48L2Rpdj4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwhLS0vLy0tPjwhW0NEQVRBWy8vPjwhLS0KdmFyIGNvbW1lbnRzX3Nob3J0bmFtZSA9ICdodHRwZCc7CnZhciBjb21tZW50c19pZGVudGlmaWVyID0gJ2h0dHA6Ly9odHRwZC5hcGFjaGUub3JnL2RvY3MvMi40L21vZC9tb2RfYXV0aHpfY29yZS5odG1sJzsKKGZ1bmN0aW9uKHcsIGQpIHsKICAgIGlmICh3LmxvY2F0aW9uLmhvc3RuYW1lLnRvTG93ZXJDYXNlKCkgPT0gImh0dHBkLmFwYWNoZS5vcmciKSB7CiAgICAgICAgZC53cml0ZSgnPGRpdiBpZD0iY29tbWVudHNfdGhyZWFkIj48XC9kaXY+Jyk7CiAgICAgICAgdmFyIHMgPSBkLmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOwogICAgICAgIHMudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnOwogICAgICAgIHMuYXN5bmMgPSB0cnVlOwogICAgICAgIHMuc3JjID0gJ2h0dHBzOi8vY29tbWVudHMuYXBhY2hlLm9yZy9zaG93X2NvbW1lbnRzLmx1YT9zaXRlPScgKyBjb21tZW50c19zaG9ydG5hbWUgKyAnJnBhZ2U9JyArIGNvbW1lbnRzX2lkZW50aWZpZXI7CiAgICAgICAgKGQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXSB8fCBkLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF0pLmFwcGVuZENoaWxkKHMpOwogICAgfQogICAgZWxzZSB7IAogICAgICAgIGQud3JpdGUoJzxkaXYgaWQ9ImNvbW1lbnRzX3RocmVhZCI+Q29tbWVudHMgYXJlIGRpc2FibGVkIGZvciB0aGlzIHBhZ2UgYXQgdGhlIG1vbWVudC48XC9kaXY+Jyk7CiAgICB9Cn0pKHdpbmRvdywgZG9jdW1lbnQpOwovLy0tPjwhXV0+PC9zY3JpcHQ+PC9kaXY+PGRpdiBpZD0iZm9vdGVyIj4KPHAgY2xhc3M9ImFwYWNoZSI+Q29weXJpZ2h0IDIwMTYgVGhlIEFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLjxiciAvPkF1dG9yaXPpIHNvdXMgPGEgaHJlZj0iaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wIj5BcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjA8L2E+LjwvcD4KPHAgY2xhc3M9Im1lbnUiPjxhIGhyZWY9Ii4uL21vZC8iPk1vZHVsZXM8L2E+IHwgPGEgaHJlZj0iLi4vbW9kL2RpcmVjdGl2ZXMuaHRtbCI+RGlyZWN0aXZlczwvYT4gfCA8YSBocmVmPSJodHRwOi8vd2lraS5hcGFjaGUub3JnL2h0dHBkL0ZBUSI+RkFRPC9hPiB8IDxhIGhyZWY9Ii4uL2dsb3NzYXJ5Lmh0bWwiPkdsb3NzYWlyZTwvYT4gfCA8YSBocmVmPSIuLi9zaXRlbWFwLmh0bWwiPlBsYW4gZHUgc2l0ZTwvYT48L3A+PC9kaXY+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwhLS0vLy0tPjwhW0NEQVRBWy8vPjwhLS0KaWYgKHR5cGVvZihwcmV0dHlQcmludCkgIT09ICd1bmRlZmluZWQnKSB7CiAgICBwcmV0dHlQcmludCgpOwp9Ci8vLS0+PCFdXT48L3NjcmlwdD4KPC9ib2R5PjwvaHRtbD4=