PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+DQo8aHRtbD4NCjxoZWFkPg0KPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im5ldGJlYW5zLG1hZ2F6aW5lLE5ldEJlYW5zLFBsYXRmb3JtLA0KRGV2ZWxvcG1lbnQsYm9vayxkb2N1bWVudGF0aW9uLGFydGljbGUsUkNQLGFwcGxpY2F0aW9uIj4NCjxNRVRBIE5BTUU9ImRlc2NyaXB0aW9uIiBDT05URU5UPSJOZXRCZWFucyBNYWdhemluZTogQSBOZXcgSGFuZGJvb2sgZm9yIE5ldEJlYW5zIFBsYXRmb3JtIERldmVsb3BtZW50Ij4NCjxtZXRhIGh0dHAtZXF1aXY9Q29udGVudC1UeXBlIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD13aW5kb3dzLTEyNTIiPg0KPCEtLVtpZiAhbXNvXT4NCjxzdHlsZT4NCnZcOioge2JlaGF2aW9yOnVybCgjZGVmYXVsdCNWTUwpO30NCm9cOioge2JlaGF2aW9yOnVybCgjZGVmYXVsdCNWTUwpO30NCndcOioge2JlaGF2aW9yOnVybCgjZGVmYXVsdCNWTUwpO30NCi5zaGFwZSB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQ0KPC9zdHlsZT4NCjwhW2VuZGlmXS0tPg0KPHRpdGxlPkEgTmV3IEhhbmRib29rIGZvciBOZXRCZWFucyBQbGF0Zm9ybSBEZXZlbG9wbWVudDwvdGl0bGU+DQo8IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCiA8bzpEb2N1bWVudFByb3BlcnRpZXM+DQogIDxvOkF1dGhvcj50YXJjaXNpbzwvbzpBdXRob3I+DQogIDxvOlRlbXBsYXRlPk5vcm1hbDwvbzpUZW1wbGF0ZT4NCiAgPG86TGFzdEF1dGhvcj50YXJjaXNpbzwvbzpMYXN0QXV0aG9yPg0KICA8bzpSZXZpc2lvbj4yPC9vOlJldmlzaW9uPg0KICA8bzpUb3RhbFRpbWU+MDwvbzpUb3RhbFRpbWU+DQogIDxvOkNyZWF0ZWQ+MjAwNy0wNS0wNVQwMDoxMzowMFo8L286Q3JlYXRlZD4NCiAgPG86TGFzdFNhdmVkPjIwMDctMDUtMDVUMDA6MTM6MDBaPC9vOkxhc3RTYXZlZD4NCiAgPG86UGFnZXM+MTwvbzpQYWdlcz4NCiAgPG86V29yZHM+NDc2PC9vOldvcmRzPg0KICA8bzpDaGFyYWN0ZXJzPjI1NzQ8L286Q2hhcmFjdGVycz4NCiAgPG86Q29tcGFueT5waGRlc2lnbjwvbzpDb21wYW55Pg0KICA8bzpMaW5lcz4yMTwvbzpMaW5lcz4NCiAgPG86UGFyYWdyYXBocz42PC9vOlBhcmFncmFwaHM+DQogIDxvOkNoYXJhY3RlcnNXaXRoU3BhY2VzPjMwNDQ8L286Q2hhcmFjdGVyc1dpdGhTcGFjZXM+DQogIDxvOlZlcnNpb24+MTEuNTYwNjwvbzpWZXJzaW9uPg0KIDwvbzpEb2N1bWVudFByb3BlcnRpZXM+DQo8L3htbD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCiA8dzpXb3JkRG9jdW1lbnQ+DQogIDx3OkF1dG9IeXBoZW5hdGlvbi8+DQogIDx3Okh5cGhlbmF0aW9uWm9uZT4yMTwvdzpIeXBoZW5hdGlvblpvbmU+DQogIDx3OkRvTm90SHlwaGVuYXRlQ2Fwcy8+DQogIDx3OlB1bmN0dWF0aW9uS2VybmluZy8+DQogIDx3OkRyYXdpbmdHcmlkSG9yaXpvbnRhbFNwYWNpbmc+NiBwdDwvdzpEcmF3aW5nR3JpZEhvcml6b250YWxTcGFjaW5nPg0KICA8dzpEcmF3aW5nR3JpZFZlcnRpY2FsU3BhY2luZz42IHB0PC93OkRyYXdpbmdHcmlkVmVydGljYWxTcGFjaW5nPg0KICA8dzpEaXNwbGF5SG9yaXpvbnRhbERyYXdpbmdHcmlkRXZlcnk+MDwvdzpEaXNwbGF5SG9yaXpvbnRhbERyYXdpbmdHcmlkRXZlcnk+DQogIDx3OkRpc3BsYXlWZXJ0aWNhbERyYXdpbmdHcmlkRXZlcnk+MzwvdzpEaXNwbGF5VmVydGljYWxEcmF3aW5nR3JpZEV2ZXJ5Pg0KICA8dzpVc2VNYXJnaW5zRm9yRHJhd2luZ0dyaWRPcmlnaW4vPg0KICA8dzpWYWxpZGF0ZUFnYWluc3RTY2hlbWFzPmZhbHNlPC93OlZhbGlkYXRlQWdhaW5zdFNjaGVtYXM+DQogIDx3OlNhdmVJZlhNTEludmFsaWQ+ZmFsc2U8L3c6U2F2ZUlmWE1MSW52YWxpZD4NCiAgPHc6SWdub3JlTWl4ZWRDb250ZW50PmZhbHNlPC93Oklnbm9yZU1peGVkQ29udGVudD4NCiAgPHc6QWx3YXlzU2hvd1BsYWNlaG9sZGVyVGV4dD5mYWxzZTwvdzpBbHdheXNTaG93UGxhY2Vob2xkZXJUZXh0Pg0KICA8dzpEb05vdFVuZGVybGluZUludmFsaWRYTUwvPg0KICA8dzpEb05vdFNoYWRlRm9ybURhdGEvPg0KICA8dzpDb21wYXRpYmlsaXR5Pg0KICAgPHc6Rm9vdG5vdGVMYXlvdXRMaWtlV1c4Lz4NCiAgIDx3OlNoYXBlTGF5b3V0TGlrZVdXOC8+DQogICA8dzpBbGlnblRhYmxlc1Jvd0J5Um93Lz4NCiAgIDx3OkZvcmdldExhc3RUYWJBbGlnbm1lbnQvPg0KICAgPHc6TGF5b3V0UmF3VGFibGVXaWR0aC8+DQogICA8dzpMYXlvdXRUYWJsZVJvd3NBcGFydC8+DQogICA8dzpVc2VXb3JkOTdMaW5lQnJlYWtpbmdSdWxlcy8+DQogICA8dzpTZWxlY3RFbnRpcmVGaWVsZFdpdGhTdGFydE9yRW5kLz4NCiAgIDx3OlVzZVdvcmQyMDAyVGFibGVTdHlsZVJ1bGVzLz4NCiAgPC93OkNvbXBhdGliaWxpdHk+DQogIDx3OkJyb3dzZXJMZXZlbD5NaWNyb3NvZnRJbnRlcm5ldEV4cGxvcmVyNDwvdzpCcm93c2VyTGV2ZWw+DQogPC93OldvcmREb2N1bWVudD4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KIDx3OkxhdGVudFN0eWxlcyBEZWZMb2NrZWRTdGF0ZT0iZmFsc2UiIExhdGVudFN0eWxlQ291bnQ9IjE1NiI+DQogPC93OkxhdGVudFN0eWxlcz4NCjwveG1sPjwhW2VuZGlmXS0tPg0KPHN0eWxlPg0KPCEtLQ0KIC8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCiBAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OlRpbWVzOw0KCXBhbm9zZS0xOjAgMCA1IDAgMCAwIDAgMCAwIDA7DQoJbXNvLWZvbnQtY2hhcnNldDowOw0KCW1zby1nZW5lcmljLWZvbnQtZmFtaWx5OnJvbWFuOw0KCW1zby1mb250LWZvcm1hdDpvdGhlcjsNCgltc28tZm9udC1waXRjaDp2YXJpYWJsZTsNCgltc28tZm9udC1zaWduYXR1cmU6MyAwIDAgMCAxIDA7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseToiVmVyZGFuYSI7DQoJcGFub3NlLTE6MCAwIDAgMCAwIDAgMCAwIDAgMDsNCgltc28tZm9udC1jaGFyc2V0OjA7DQoJbXNvLWdlbmVyaWMtZm9udC1mYW1pbHk6c3dpc3M7DQoJbXNvLWZvbnQtZm9ybWF0Om90aGVyOw0KCW1zby1mb250LXBpdGNoOnZhcmlhYmxlOw0KCW1zby1mb250LXNpZ25hdHVyZTozIDAgMCAwIDEgMDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OiJWZXJkYW5hIjsNCglwYW5vc2UtMTowIDAgMCAwIDAgMCAwIDAgMCAwOw0KCW1zby1mb250LWNoYXJzZXQ6MDsNCgltc28tZ2VuZXJpYy1mb250LWZhbWlseTpzd2lzczsNCgltc28tZm9udC1mb3JtYXQ6b3RoZXI7DQoJbXNvLWZvbnQtcGl0Y2g6dmFyaWFibGU7DQoJbXNvLWZvbnQtc2lnbmF0dXJlOjMgMCAwIDAgMSAwO30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IlZlcmRhbmEiOw0KCXBhbm9zZS0xOjAgMCAwIDAgMCAwIDAgMCAwIDA7DQoJbXNvLWZvbnQtY2hhcnNldDowOw0KCW1zby1nZW5lcmljLWZvbnQtZmFtaWx5OnN3aXNzOw0KCW1zby1mb250LWZvcm1hdDpvdGhlcjsNCgltc28tZm9udC1waXRjaDp2YXJpYWJsZTsNCgltc28tZm9udC1zaWduYXR1cmU6MyAwIDAgMCAxIDA7fQ0KIC8qIFN0eWxlIERlZmluaXRpb25zICovDQogcC5Nc29Ob3JtYWwsIGxpLk1zb05vcm1hbCwgZGl2Lk1zb05vcm1hbA0KCXttc28tc3R5bGUtcGFyZW50OiIiOw0KCW1hcmdpbjowY207DQoJbWFyZ2luLWJvdHRvbTouMDAwMXB0Ow0KCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsNCglmb250LXNpemU6MTIuMHB0Ow0KCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOw0KCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iO30NCnAuTm9wYXJhZ3JhcGhzdHlsZSwgbGkuTm9wYXJhZ3JhcGhzdHlsZSwgZGl2Lk5vcGFyYWdyYXBoc3R5bGUNCgl7bXNvLXN0eWxlLW5hbWU6IlxbTm8gcGFyYWdyYXBoIHN0eWxlXF0iOw0KCW1zby1zdHlsZS1wYXJlbnQ6IiI7DQoJbWFyZ2luOjBjbTsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJbGluZS1oZWlnaHQ6MTIwJTsNCgltc28tcGFnaW5hdGlvbjpub25lOw0KCW1zby1sYXlvdXQtZ3JpZC1hbGlnbjpub25lOw0KCXRleHQtYXV0b3NwYWNlOm5vbmU7DQoJZm9udC1zaXplOjEyLjBwdDsNCglmb250LWZhbWlseTpUaW1lczsNCgltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsNCgltc28tYmlkaS1mb250LWZhbWlseTpUaW1lczsNCgljb2xvcjpibGFjazsNCgltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzt9DQpwLk5CLUNvcnBvLCBsaS5OQi1Db3JwbywgZGl2Lk5CLUNvcnBvDQoJe21zby1zdHlsZS1uYW1lOiJOQiAtIENvcnBvIjsNCgltc28tc3R5bGUtcGFyZW50OiJcW05vIHBhcmFncmFwaCBzdHlsZVxdIjsNCgltc28tc3R5bGUtbmV4dDoiXFtObyBwYXJhZ3JhcGggc3R5bGVcXSI7DQoJbWFyZ2luOjBjbTsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7CXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWluZGVudDo1LjY1cHQ7DQoJbGluZS1oZWlnaHQ6MTYuMHB0Ow0KCW1zby1wYWdpbmF0aW9uOm5vbmU7DQoJbXNvLWxheW91dC1ncmlkLWFsaWduOm5vbmU7DQoJdGV4dC1hdXRvc3BhY2U6bm9uZTsNCglmb250LXNpemU6OS4wcHQ7DQoJZm9udC1mYW1pbHk6IlZlcmRhbmEiOw0KCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOw0KCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJWZXJkYW5hIjsNCgljb2xvcjpibGFjazsNCgltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzt9DQpwLk5CLUxlZ2VuZGFpbWFnZW0sIGxpLk5CLUxlZ2VuZGFpbWFnZW0sIGRpdi5OQi1MZWdlbmRhaW1hZ2VtDQoJe21zby1zdHlsZS1uYW1lOiJOQiAtIExlZ2VuZGEgaW1hZ2VtIjsNCgltc28tc3R5bGUtcGFyZW50OiJcW05vIHBhcmFncmFwaCBzdHlsZVxdIjsNCgltc28tc3R5bGUtbmV4dDoiXFtObyBwYXJhZ3JhcGggc3R5bGVcXSI7DQoJbWFyZ2luOjBjbTsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJbGluZS1oZWlnaHQ6MTIuMHB0Ow0KCW1zby1wYWdpbmF0aW9uOm5vbmU7DQoJbXNvLWh5cGhlbmF0ZTpub25lOw0KCXRhYi1zdG9wczoxNC4xNXB0Ow0KCW1zby1sYXlvdXQtZ3JpZC1hbGlnbjpub25lOw0KCXRleHQtYXV0b3NwYWNlOm5vbmU7DQoJZm9udC1zaXplOjEwLjBwdDsNCglmb250LWZhbWlseToiVmVyZGFuYSI7DQoJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7DQoJbXNvLWJpZGktZm9udC1mYW1pbHk6IlZlcmRhbmEiOw0KCWNvbG9yOmJsYWNrOw0KCWxldHRlci1zcGFjaW5nOi4wNXB0Ow0KCW1zby1hbnNpLWxhbmd1YWdlOkVOLUdCO30NCnNwYW4uTkItTmVncml0b1Rjbmljbw0KCXttc28tc3R5bGUtbmFtZToiTkIgLSBOZWdyaXRvIFTpY25pY28iOw0KCW1zby1zdHlsZS1wYXJlbnQ6IiI7DQoJbXNvLWFuc2ktZm9udC1zaXplOjEwLjBwdDsNCgltc28tYmlkaS1mb250LXNpemU6MTAuMHB0Ow0KCWZvbnQtZmFtaWx5OiJWZXJkYW5hIjsNCgltc28tYXNjaWktZm9udC1mYW1pbHk6IlZlcmRhbmEiOw0KCW1zby1oYW5zaS1mb250LWZhbWlseToiVmVyZGFuYSI7DQoJbXNvLWJpZGktZm9udC1mYW1pbHk6IlZlcmRhbmEiOw0KCWNvbG9yOmJsYWNrOw0KCWxldHRlci1zcGFjaW5nOi4wNXB0Ow0KCW1zby1mb250LXdpZHRoOjEwMCU7DQoJZm9udC13ZWlnaHQ6Ym9sZDsNCgl2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTt9DQpzcGFuLk5CLUxlZ2VuZGFuZWdyaXRvDQoJe21zby1zdHlsZS1uYW1lOiJOQiAtIExlZ2VuZGEgbmVncml0byI7DQoJbXNvLXN0eWxlLXBhcmVudDoiIjsNCglmb250LXdlaWdodDpib2xkO30NCiAvKiBQYWdlIERlZmluaXRpb25zICovDQogQHBhZ2UNCgl7bXNvLXBhZ2UtYm9yZGVyLXN1cnJvdW5kLWhlYWRlcjpubzsNCgltc28tcGFnZS1ib3JkZXItc3Vycm91bmQtZm9vdGVyOm5vO30NCkBwYWdlIFNlY3Rpb24xDQoJe3NpemU6NTgxLjFwdCA3NzkuNTVwdDsNCgltYXJnaW46MzYuMHB0IDM2LjBwdCAzNi4wcHQgMzYuMHB0Ow0KCW1zby1oZWFkZXItbWFyZ2luOjM2LjBwdDsNCgltc28tZm9vdGVyLW1hcmdpbjozNi4wcHQ7DQoJbXNvLXBhcGVyLXNvdXJjZTowO30NCmRpdi5TZWN0aW9uMQ0KCXtwYWdlOlNlY3Rpb24xO30NCmRpdi5OQi1Db3JwbzEge21zby1zdHlsZS1uYW1lOiJOQiAtIENvcnBvIjsNCgltc28tc3R5bGUtcGFyZW50OiJcW05vIHBhcmFncmFwaCBzdHlsZVxdIjsNCgltc28tc3R5bGUtbmV4dDoiXFtObyBwYXJhZ3JhcGggc3R5bGVcXSI7DQoJbWFyZ2luOjBjbTsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7CXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWluZGVudDo1LjY1cHQ7DQoJbGluZS1oZWlnaHQ6MTYuMHB0Ow0KCW1zby1wYWdpbmF0aW9uOm5vbmU7DQoJbXNvLWxheW91dC1ncmlkLWFsaWduOm5vbmU7DQoJdGV4dC1hdXRvc3BhY2U6bm9uZTsNCglmb250LXNpemU6OS4wcHQ7DQoJZm9udC1mYW1pbHk6IlZlcmRhbmEiOw0KCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOw0KCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJWZXJkYW5hIjsNCgljb2xvcjpibGFjazsNCgltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzt9DQpsaS5OQi1Db3JwbzEge21zby1zdHlsZS1uYW1lOiJOQiAtIENvcnBvIjsNCgltc28tc3R5bGUtcGFyZW50OiJcW05vIHBhcmFncmFwaCBzdHlsZVxdIjsNCgltc28tc3R5bGUtbmV4dDoiXFtObyBwYXJhZ3JhcGggc3R5bGVcXSI7DQoJbWFyZ2luOjBjbTsNCgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7CXRleHQtYWxpZ246bGVmdDsNCgl0ZXh0LWluZGVudDo1LjY1cHQ7DQoJbGluZS1oZWlnaHQ6MTYuMHB0Ow0KCW1zby1wYWdpbmF0aW9uOm5vbmU7DQoJbXNvLWxheW91dC1ncmlkLWFsaWduOm5vbmU7DQoJdGV4dC1hdXRvc3BhY2U6bm9uZTsNCglmb250LXNpemU6OS4wcHQ7DQoJZm9udC1mYW1pbHk6IlZlcmRhbmEiOw0KCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOw0KCW1zby1iaWRpLWZvbnQtZmFtaWx5OiJWZXJkYW5hIjsNCgljb2xvcjpibGFjazsNCgltc28tYW5zaS1sYW5ndWFnZTpFTi1VUzt9DQpwLk5CLUNvcnBvMSB7bXNvLXN0eWxlLW5hbWU6Ik5CIC0gQ29ycG8iOw0KCW1zby1zdHlsZS1wYXJlbnQ6IlxbTm8gcGFyYWdyYXBoIHN0eWxlXF0iOw0KCW1zby1zdHlsZS1uZXh0OiJcW05vIHBhcmFncmFwaCBzdHlsZVxdIjsNCgltYXJnaW46MGNtOw0KCW1hcmdpbi1ib3R0b206LjAwMDFwdDsJdGV4dC1hbGlnbjpsZWZ0Ow0KCXRleHQtaW5kZW50OjUuNjVwdDsNCglsaW5lLWhlaWdodDoxNi4wcHQ7DQoJbXNvLXBhZ2luYXRpb246bm9uZTsNCgltc28tbGF5b3V0LWdyaWQtYWxpZ246bm9uZTsNCgl0ZXh0LWF1dG9zcGFjZTpub25lOw0KCWZvbnQtc2l6ZTo5LjBwdDsNCglmb250LWZhbWlseToiVmVyZGFuYSI7DQoJbXNvLWZhcmVhc3QtZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7DQoJbXNvLWJpZGktZm9udC1mYW1pbHk6IlZlcmRhbmEiOw0KCWNvbG9yOmJsYWNrOw0KCW1zby1hbnNpLWxhbmd1YWdlOkVOLVVTO30NCi0tPg0KPC9zdHlsZT4NCjwhLS1baWYgZ3RlIG1zbyAxMF0+DQo8c3R5bGU+DQogLyogU3R5bGUgRGVmaW5pdGlvbnMgKi8NCiB0YWJsZS5Nc29Ob3JtYWxUYWJsZQ0KCXttc28tc3R5bGUtbmFtZToiVGFiZWxhIG5vcm1hbCI7DQoJbXNvLXRzdHlsZS1yb3diYW5kLXNpemU6MDsNCgltc28tdHN0eWxlLWNvbGJhbmQtc2l6ZTowOw0KCW1zby1zdHlsZS1ub3Nob3c6eWVzOw0KCW1zby1zdHlsZS1wYXJlbnQ6IiI7DQoJbXNvLXBhZGRpbmctYWx0OjBjbSA1LjRwdCAwY20gNS40cHQ7DQoJbXNvLXBhcmEtbWFyZ2luOjBjbTsNCgltc28tcGFyYS1tYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJbXNvLXBhZ2luYXRpb246d2lkb3ctb3JwaGFuOw0KCWZvbnQtc2l6ZToxMC4wcHQ7DQoJZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7DQoJbXNvLWFuc2ktbGFuZ3VhZ2U6IzA0MDA7DQoJbXNvLWZhcmVhc3QtbGFuZ3VhZ2U6IzA0MDA7DQoJbXNvLWJpZGktbGFuZ3VhZ2U6IzA0MDA7fQ0KPC9zdHlsZT4NCjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KIDxvOnNoYXBlZGVmYXVsdHMgdjpleHQ9ImVkaXQiIHNwaWRtYXg9IjIwNTAiLz4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KIDxvOnNoYXBlbGF5b3V0IHY6ZXh0PSJlZGl0Ij4NCiAgPG86aWRtYXAgdjpleHQ9ImVkaXQiIGRhdGE9IjEiLz4NCiA8L286c2hhcGVsYXlvdXQ+PC94bWw+PCFbZW5kaWZdLS0+DQo8L2hlYWQ+DQoNCjxib2R5IGxhbmc9UFQtQlIgc3R5bGU9J3RhYi1pbnRlcnZhbDozNi4wcHQ7dGV4dC1qdXN0aWZ5LXRyaW06cHVuY3R1YXRpb24nPg0KPHRhYmxlIHdpZHRoPSI3NzAiIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIwIj4NCiAgPHRyPg0KICAgIDx0ZD48aW1nIHNyYz0iL2ltYWdlc193d3cvbWFnYXppbmUvYm9vay90b3BfcmVzZW5oYV93ZWIuanBnIiB3aWR0aD0iNzcwIiBoZWlnaHQ9IjIwMCI+PC90ZD4NCiAgPC90cj4NCiAgPHRyPg0KICAgIDx0ZD48ZGl2Pg0KICAgICAgPHAgY2xhc3M9TkItQ29ycG8xIHN0eWxlPSd0ZXh0LWluZGVudDowY20nPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2xldHRlci1zcGFjaW5nOg0KLS4ycHQnPjxicj4NCiAgICAgICAgV2VsY29tZSB0byB0aGUgd29ybGQgb2YgcmljaCBjbGllbnQgZGV2ZWxvcG1lbnQgb24gdGhlIE5ldEJlYW5zDQogICAgICAgIFBsYXRmb3JtLiZyZHF1bzsgU28gYmVnaW5zIHRoZSBuZXcgYm9vayBvbiB0aGUgTmV0QmVhbnMgUGxhdGZvcm0sIGNhbGxlZCAmbGRxdW87UmljaCBDbGllbnQNCiAgICAgICAgUHJvZ3JhbW1pbmc6IFBsdWdnaW5nIGludG8gdGhlIE5ldEJlYW5zIFBsYXRmb3JtJnJkcXVvOy4gV3JpdHRlbiBieSB0aHJlZSBzdGFsd2FydHMNCiAgICAgICAgb2YgdGhlIE5ldEJlYW5zIElERSwgVGltIEJvdWRyZWF1LCBKYXJvc2xhdiBUdWxhY2gsIGFuZCBHZWVydGphbiBXaWVsZW5nYSwgdGhpcw0KICAgICAgICBuZXcgdGl0bGUgZnJvbSBQcmVudGljZSBIYWxsIGludHJvZHVjZXMgeW91IHRvIHRoZSBjZW50cmFsIGNvbmNlcHRzIG9mIHRoZQ0KICAgICAgICBOZXRCZWFucyBQbGF0Zm9ybS4NCiAgICAgICAgPG86cD48L286cD4NCiAgICAgIDwvc3Bhbj48L3A+DQogICAgICA8cCBjbGFzcz1OQi1Db3JwbzE+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nbGV0dGVyLXNwYWNpbmc6LS4ycHQnPlRoZSBib29rIGJlZ2lucw0KICAgICAgICBieSBkaXNjdXNzaW5nIHRoZSByYXRpb25hbGUgZm9yIG1vZHVsYXIgcHJvZ3JhbW1pbmcuICZsZHF1bztMb29zZSBjb3VwbGluZyZyZHF1bzssIHdoZXJlYnkNCiAgICAgICAgc3BhZ2hldHRpIGNvZGUgaXMgYXZvaWRlZCB0aHJvdWdoIGEgc2V0IG9mIHJlbGF0ZWQgYnV0IGluZGVwZW5kZW50IG1vZHVsZXMsIGlzDQogICAgICAgIGRpc2N1c3NlZCB3aXRoIHJlZmVyZW5jZSB0byBhIHNldCBvZiBjb25jcmV0ZSBleGFtcGxlcy4gR3JhZHVhbGx5LCB0aGUgbmVlZCBmb3INCiAgICAgICAgdGhpcyBhcHByb2FjaCB0byByb2J1c3QgcHJvZ3JhbW1pbmcgaXMgaW50cm9kdWNlZCBhbmQsIHBpZWNlIGJ5IHBpZWNlLCB0aGUNCiAgICAgICAgYXV0aG9ycyBoaWdobGlnaHQgTmV0QmVhbnMmcnNxdW87IHJlc3BvbnNlcyB0byB0aGlzIG5lZWQuIFRoZSB0b29saW5nIGZvciBtb2R1bGFyDQogICAgICAgIHByb2dyYW1taW5nIHNpbmNlIHRoZSByZWxlYXNlIG9mIE5ldEJlYW5zIElERSA1LjAgaGFzIHByb3ZlbiBpdHMgdmFsdWUgdG8NCiAgICAgICAgbnVtZXJvdXMgcHJvZ3JhbW1lcnMsIGFuZCB0aGUgcmVhc29ucyBmb3IgdGhpcyBxdWlja2x5IGJlY29tZSBjbGVhciBpbiB0aGUNCiAgICAgICAgYm9vay4gVHlwaWNhbCBzdHVtYmxpbmcgYmxvY2tzIHRoYXQgbmV3IGRldmVsb3BlcnMgY29tZSBhY3Jvc3MsIHN1Y2ggYXMgJmxkcXVvO25vZGVzJnJkcXVvOw0KICAgICAgICBhbmQgJmxkcXVvO2Nvb2tpZXMmcmRxdW87IGFyZSBleHBsb3JlZCBpbiBkZXRhaWwuDQogICAgICAgIDxvOnA+PC9vOnA+DQogICAgICA8L3NwYW4+PGJyPg0KICAgICAgPC9wPg0KICAgICAgPHAgY2xhc3M9TkItQ29ycG8xPjxzcGFuIGxhbmc9RU4tVVMgc3R5bGU9J2xldHRlci1zcGFjaW5nOi0uMnB0Jz5UaGUgc2Vjb25kIHBhcnQNCiAgICAgICAgb2YgdGhlIGJvb2sgZGVhbHMgd2l0aCBhIHNldCBvZiBjb25jcmV0ZSBOZXRCZWFucyBBUEkgc2NlbmFyaW9zLiBIb3csIGZvcg0KICAgICAgICBleGFtcGxlLCBjYW4gb25lIHByb3ZpZGUgY29kZSBjb21wbGV0aW9uPyBPciBoeXBlcmxpbmtzIGluIHRoZSBTb3VyY2UgRWRpdG9yPw0KICAgICAgICBBbmQgd2hhdCBhYm91dCBwYWxldHRlcyB3aXRoIGl0ZW1zIHRoYXQgY2FuIGJlIGRyYWdnZWQgYW5kIGRyb3BwZWQ/IFRoZXNlIGFuZA0KICAgICAgICBvdGhlciBzY2VuYXJpb3MgYXJlIGRpc2N1c3NlZCBpbiBkZXRhaWwuIEVhY2ggY2hhcHRlciB0cmF2ZWxzIHRocm91Z2ggYSB2ZXJ5DQogICAgICAgIHNwZWNpZmljIGV4YW1wbGUgc2NlbmFyaW8sIGJhc2VkIG9uIHRoZSBleGFtcGxlIGluIHRoZSBDRCB0aGF0IGFjY29tcGFuaWVzIHRoZQ0KICAgICAgICBib29rLiBBdCB0aGUgZW5kIG9mIHRoaXMgcGFydCwgdGhlIHJlYWRlciBzaG91bGQgdW5kZXJzdGFuZCBzb21lIG9mIHRoZSBiYXNpYw0KICAgICAgICBBUElzIHRoYXQgYXJlIHR5cGljYWxseSBpbXBsZW1lbnRlZCBieSBkZXZlbG9wZXJzIG1ha2luZyB1c2Ugb2YgdGhlIE5ldEJlYW5zDQogICAgICAgIFBsYXRmb3JtLg0KICAgICAgICAgICAgPG86cD48L286cD4NCiAgICAgIDwvc3Bhbj48YnI+DQogICAgICA8L3A+DQogICAgICA8cCBjbGFzcz1OQi1Db3JwbzE+PHNwYW4gbGFuZz1FTi1VUyBzdHlsZT0nbGV0dGVyLXNwYWNpbmc6LS4ycHQnPlRoZSBib29rIGNsb3Nlcw0KICAgICAgICB3aXRoIHR3byBjaGFwdGVycyBjb250cmlidXRlZCBieSB0d28gZGV2ZWxvcGVycyB3aXRoIHllYXJzIG9mIGV4cGVyaWVuY2Ugd2l0aA0KICAgICAgICB0aGUgTmV0QmVhbnMgUGxhdGZvcm0uIEZpcnN0LCBKZW5zIFRyYXBwLCBmcm9tIEdlcm1hbnksIGRpc2N1c3NlcyBob3cgaGUNCiAgICAgICAgaW50ZWdyYXRlZCB0aGUgSFRNTCBUaWR5IHByb2plY3QgaW50byBOZXRCZWFucyBJREUuIEluIGRvaW5nIHNvLCBoZSBicmluZ3MNCiAgICAgICAgdG9nZXRoZXIgbWFueSBvZiB0aGUgcHJpbmNpcGxlcyBhbmQgQVBJcyBkaXNjdXNzZWQgaW4gdGhlIHByZWNlZGluZyBjaGFwdGVycy4NCiAgICAgICAgTmV4dCwgVVMtYmFzZWQgUmljaCBVbmdlciBkZXNjcmliZXMgYSBjb21wbGV0ZSBhcHBsaWNhdGlvbiBidWlsdCBvbiB0b3Agb2YgdGhlDQogICAgICAgIE5ldEJlYW5zIFBsYXRmb3JtLCBmb3IgZWRpdGluZyBXQVYgZmlsZXMuIFR5cGljYWwgY29uY2VybnMgaW52b2x2ZWQgaW4gY3JlYXRpbmcNCiAgICAgICAgUGxhdGZvcm0tYmFzZWQgYXBwbGljYXRpb25zIGFyZSBkaXNjdXNzZWQgaW4gdGhpcyBjaGFwdGVyLiBUb2dldGhlciBKZW5zIGFuZA0KICAgICAgICBSaWNoIHByb3ZpZGUgdGhlIHR3byAmbGRxdW87dXNlIGNhc2VzJnJkcXVvOyBvZiB0aGUgTmV0QmVhbnMgUGxhdGZvcm0gJm5kYXNoOyBhbGxvd2luZyB5b3UgdG8NCiAgICAgICAgZXh0ZW5kIE5ldEJlYW5zIElERSB3aXRoIG5ldyBmZWF0dXJlcywgYW5kIGNyZWF0aW5nIGNvbXBsZXRlbHkgc2VwYXJhdGUNCiAgICAgICAgYXBwbGljYXRpb25zLCB3aGljaCBpbiB0dXJuIGNvdWxkIGNvbnN0aXR1dGU8L3NwYW4+PHNwYW4gbGFuZz1FTi1VUw0Kc3R5bGU9J2NvbG9yOnJlZDtsZXR0ZXItc3BhY2luZzotLjJwdCc+IDwvc3Bhbj48c3BhbiBsYW5nPUVOLVVTDQpzdHlsZT0nbGV0dGVyLXNwYWNpbmc6LS4ycHQnPnRoZSBwbGF0Zm9ybSBvZiBzdGlsbCBvdGhlciBhcHBsaWNhdGlvbnMuDQogICAgICAgICAgPG86cD48L286cD4NCiAgICAgICAgPC9zcGFuPjxicj4NCiAgICAgIDwvcD4NCiAgICAgIDxwIGNsYXNzPU5CLUNvcnBvMT48c3BhbiBsYW5nPUVOLVVTIHN0eWxlPSdsZXR0ZXItc3BhY2luZzotLjJwdCc+VGhpcyBpcyB0aGUNCiAgICAgICAgZmlyc3QgYm9vayBzaW5jZSBUaW0gQm91ZHJlYXUmcnNxdW87cyBhbmQgSmVzc2UgR2xpY2smcnNxdW87cyAmbGRxdW87TmV0QmVhbnM6IFRoZSBEZWZpbml0aXZlDQogICAgICAgIEd1aWRlJnJkcXVvOyAmbmRhc2g7IHRoZSBwb3B1bGFyIHRpdGxlIGZyb20gc29tZSB5ZWFycyBhZ28gd2hpY2ggaGFkIGEgbGFyZ2Ugc2VjdGlvbiBvbiB0aGUNCiAgICAgICAgTmV0QmVhbnMgUGxhdGZvcm0gJm5kYXNoOyB0byBjb3ZlciB0aGUgbGVuZ3RoIGFuZCBicmVhZHRoIG9mIHRoZSBOZXRCZWFucyBQbGF0Zm9ybS4NCiAgICAgICAgSnVkZ2luZyBmcm9tIHRoZSBsZXZlbCBvZiBpbnRlcmVzdCBzaG93biBpbiB0aGUgU2FmYXJpIFJvdWdoIEN1dHMgdmVyc2lvbiBvZiB0aGUNCiAgICAgICAgYm9vaywgd2hpY2ggcHJvdmlkZXMgYW4gZWFybHkgZHJhZnQgaW4gUERGIGZvcm1hdCwgJmxkcXVvO1JpY2ggQ2xpZW50IFByb2dyYW1taW5nOg0KICAgICAgICBQbHVnZ2luZyBpbnRvIHRoZSBOZXRCZWFucyBQbGF0Zm9ybSZyZHF1bzsgcHJvbWlzZXMgdG8gdGFrZSB0aGUgU3dpbmcgZGV2ZWxvcG1lbnQNCiAgICAgICAgd29ybGQgYnkgc3Rvcm0uIElmIHlvdSB3YW50IHRvIGxldmVyYWdlIHRoZSBmdWxsIHBvdGVudGlhbCBvZiB0aGUgTmV0QmVhbnMgUGxhdGZvcm0sDQogICAgICAgIHRoaXMgaXMgZGVmaW5pdGVseSBub3QgYSBib29rIHRoYXQgeW91IHdhbnQgdG8gbWlzcyEgPC9zcGFuPg0KICAgICAgICAgIDwhLS1baWYgZ3RlIHZtbCAxXT48djpzaGFwZXR5cGUNCiBpZD0iX3gwMDAwX3QyMDIiIGNvb3Jkc2l6ZT0iMjE2MDAsMjE2MDAiIG86c3B0PSIyMDIiIHBhdGg9Im0sbCwyMTYwMHIyMTYwMCxsMjE2MDAseGUiPg0KIDx2OnN0cm9rZSBqb2luc3R5bGU9Im1pdGVyIi8+DQogPHY6cGF0aCBncmFkaWVudHNoYXBlb2s9InQiIG86Y29ubmVjdHR5cGU9InJlY3QiLz4NCjwvdjpzaGFwZXR5cGU+PHY6c2hhcGUgaWQ9Il94MDAwMF9zMTAyNiIgdHlwZT0iI194MDAwMF90MjAyIiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7DQogbWFyZ2luLWxlZnQ6MDttYXJnaW4tdG9wOjA7d2lkdGg6Ny4xcHQ7aGVpZ2h0OjcuNnB0O3RleHQtaW5kZW50OjA7ei1pbmRleDoxOw0KIG1zby13cmFwLWRpc3RhbmNlLWxlZnQ6MDttc28td3JhcC1kaXN0YW5jZS1yaWdodDowO21zby1wb3NpdGlvbi1ob3Jpem9udGFsOmxlZnQ7DQogbXNvLXBvc2l0aW9uLWhvcml6b250YWwtcmVsYXRpdmU6Y2hhcjttc28tcG9zaXRpb24tdmVydGljYWw6Y2VudGVyOw0KIG1zby1wb3NpdGlvbi12ZXJ0aWNhbC1yZWxhdGl2ZTpsaW5lJyBvOmFsbG93aW5jZWxsPSJmIj4NCiA8djp0ZXh0Ym94Pg0KICA8IVtpZiAhbXNvXT4NCiAgPHRhYmxlIGNlbGxwYWRkaW5nPTAgY2VsbHNwYWNpbmc9MCB3aWR0aD0iMTAwJSI+DQogICA8dHI+DQogICAgPHRkPjwhW2VuZGlmXT4NCiAgICA8ZGl2Pg0KICAgIDxwIGNsYXNzPU5CLUxlZ2VuZGFpbWFnZW0+PHNwYW4gY2xhc3M9TkItTmVncml0b1Rjbmljbz48c3BhbiBsYW5nPUVOLVVTDQogICAgc3R5bGU9J21zby1hbnNpLWxhbmd1YWdlOkVOLVVTJz50PG86cD48L286cD48L3NwYW4+PC9zcGFuPjwvcD4NCiAgICA8L2Rpdj4NCiAgICA8IVtpZiAhbXNvXT48L3RkPg0KICAgPC90cj4NCiAgPC90YWJsZT4NCiAgPCFbZW5kaWZdPjwvdjp0ZXh0Ym94Pg0KIDx3OndyYXAgdHlwZT0ic3F1YXJlIiBhbmNob3J4PSJtYXJnaW4iIGFuY2hvcnk9Im1hcmdpbiIvPg0KPC92OnNoYXBlPjwhW2VuZGlmXS0tPg0KICAgICAgPC9wPg0KICAgICAgPHAgY2xhc3M9TkItQ29ycG8xPiZuYnNwOzwvcD4NCiAgICAgIDxwIGNsYXNzPU5CLUNvcnBvMT48aW1nIHNyYz0iL2ltYWdlc193d3cvbWFnYXppbmUvYm9vay9pbWFnZXMvbGl2cm8uanBnIiBhbHQ9IkJvb2siIHdpZHRoPSIxNjYiIGhlaWdodD0iMTY2Ij48L3A+DQogICAgICA8cCBjbGFzcz1OQi1Db3JwbzE+PHN0cm9uZz5SaWMgICBDbGllbnQgUHJvZ3JhbW1pbmc6IFBsdWdnaW5nIGludG8gdGhlIE5ldEJlYW5zJnRyYWRlOyBQbGF0Zm9ybSA8YnI+DQogICAgICAgICAgICA8L3N0cm9uZz48ZW0+PFNQQU4gbGFuZz0iRU4tVVMiPlRpbSBCb3VkcmVhdSwgSmFyb3NsYXYgVHVsYWNoLCBHZWVydGphbiBXaWVsZW5nYSA8L2VtPihQcmVudGljZSAgIEhhbGwpICAgICAgIElTQk4tMTM6ICAgOTc4LTAtMTMtMjM1NDgwLTYgLiA2NDAgcGFnZXM8YnI+DQogICAgICA8L3A+DQogICAgICA8dGFibGUgd2lkdGg9Ijc3MCIgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2VsbHBhZGRpbmc9IjAiPg0KICAgICAgICA8dHI+DQogICAgICAgICAgPHRkIGNsYXNzPSJOQi1Db3JwbzEiPiZuYnNwOzwvdGQ+DQogICAgICAgIDwvdHI+DQogICAgICA8L3RhYmxlPg0KICAgICAgPHAgY2xhc3M9TkItQ29ycG8xPiZuYnNwOzwvcD4NCiAgICA8L2Rpdj48L3RkPg0KICA8L3RyPg0KPC90YWJsZT4NCjwvYm9keT4NCg0KPC9odG1sPg0K