PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgeG1sOmxhbmc9ImVuIiBsYW5nPSJlbiIgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6KG51bGwpMT0iaHR0cDovL3d3dy53My5vcmcvVFIvUkVDLWh0bWw0MCI+PGhlYWQ+PCEtLQogICAgQ29weXJpZ2h0IDIwMDktMjAxMCBJbnRlbCBDb3Jwb3JhdGlvbgogICAgbGljZW5zZSBiYW5uZXIKLS0+Cjx0aXRsZT5Cb29zdCBQb2x5Z29uIExpYnJhcnk6IFBvbHlnb24gNDUgV2l0aCBIb2xlcyBDb25jZXB0PC90aXRsZT4KICAgIDxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9SVNPLTg4NTktMSI+Cjx0YWJsZSBzdHlsZT0ibWFyZ2luOiAwcHQ7IHBhZGRpbmc6IDBwdDsgd2lkdGg6IDEwMCU7IiBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+PHRib2R5Pjx0cj4KPHRkIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjM4LCAyMzgsIDIzOCk7IiBub3dyYXA9IjEiIHZhbGlnbj0idG9wIj4KICAgIDxkaXYgc3R5bGU9InBhZGRpbmc6IDVweDsiIGFsaWduPSJjZW50ZXIiPgogICAgICAgIDxpbWcgYm9yZGVyPSIwIiBzcmM9ImltYWdlcy9ib29zdC5wbmciIHdpZHRoPSIyNzciIGhlaWdodD0iODYiPjxhIHRpdGxlPSJ3d3cuYm9vc3Qub3JnIGhvbWUgcGFnZSIgaHJlZj0iaHR0cDovL3d3dy5ib29zdC5vcmcvIiB0YWJpbmRleD0iMiIgc3R5bGU9ImJvcmRlcjogbWVkaXVtIG5vbmUgOyI+CiAgICAgICAgICAgIDwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBzdHlsZT0ibWFyZ2luOiA1cHg7Ij4KICAgICAgICA8aDMgY2xhc3M9Im5hdmJhciI+Q29udGVudHM8L2gzPgogICAgICAgIDx1bD4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bSI+Qm9vc3QuUG9seWdvbiBNYWluIFBhZ2U8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imd0bF9kZXNpZ25fb3ZlcnZpZXcuaHRtIj5EZXNpZ24gT3ZlcnZpZXc8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imd0bF9pc290cm9weS5odG0iPklzb3Ryb3B5PC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJndGxfY29vcmRpbmF0ZV9jb25jZXB0Lmh0bSI+Q29vcmRpbmF0ZSBDb25jZXB0PC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJndGxfaW50ZXJ2YWxfY29uY2VwdC5odG0iPkludGVydmFsIENvbmNlcHQ8L2E+PC9saT4KCQkJPGxpPjxhIGhyZWY9Imd0bF9wb2ludF9jb25jZXB0Lmh0bSI+UG9pbnQgQ29uY2VwdDwvYT48L2xpPgoJCQk8bGk+PGEgaHJlZj0iZ3RsX3JlY3RhbmdsZV9jb25jZXB0Lmh0bSI+UmVjdGFuZ2xlIENvbmNlcHQ8L2E+PC9saT4KCQkJPGxpPjxhIGhyZWY9Imd0bF9wb2x5Z29uXzkwX2NvbmNlcHQuaHRtIj5Qb2x5Z29uIDkwIENvbmNlcHQ8L2E+PC9saT4KCQkJPGxpPjxhIGhyZWY9Imd0bF9wb2x5Z29uXzkwX3dpdGhfaG9sZXNfY29uY2VwdC5odG0iPlBvbHlnb24gOTAgV2l0aCBIb2xlcyBDb25jZXB0PC9hPjwvbGk+CgkJCTxsaT48YSBocmVmPSJndGxfcG9seWdvbl80NV9jb25jZXB0Lmh0bSI+UG9seWdvbiA0NSBDb25jZXB0PC9hPjwvbGk+CgkJCTxsaT5Qb2x5Z29uIDQ1IFdpdGggSG9sZXMgQ29uY2VwdDwvbGk+CgkJCTxsaT48YSBocmVmPSJndGxfcG9seWdvbl9jb25jZXB0Lmh0bSI+UG9seWdvbiBDb25jZXB0PC9hPjwvbGk+CgkJCTxsaT48YSBocmVmPSJndGxfcG9seWdvbl93aXRoX2hvbGVzX2NvbmNlcHQuaHRtIj5Qb2x5Z29uIFdpdGggSG9sZXMgQ29uY2VwdDwvYT48L2xpPgoJCQk8bGk+PGEgaHJlZj0iZ3RsX3BvbHlnb25fOTBfc2V0X2NvbmNlcHQuaHRtIj5Qb2x5Z29uIDkwIFNldCBDb25jZXB0PC9hPjwvbGk+CgkJCTxsaT48YSBocmVmPSJndGxfcG9seWdvbl80NV9zZXRfY29uY2VwdC5odG0iPlBvbHlnb24gNDUgU2V0IENvbmNlcHQ8L2E+PC9saT4KCQkJPGxpPjxhIGhyZWY9Imd0bF9wb2x5Z29uX3NldF9jb25jZXB0Lmh0bSI+UG9seWdvbiBTZXQgQ29uY2VwdDwvYT48L2xpPgoJCQk8bGk+PGEgaHJlZj0iZ3RsX2Nvbm5lY3Rpdml0eV9leHRyYWN0aW9uXzkwLmh0bSI+Q29ubmVjdGl2aXR5IEV4dHJhY3Rpb24gOTA8L2E+PC9saT4KCQkJPGxpPjxhIGhyZWY9Imd0bF9jb25uZWN0aXZpdHlfZXh0cmFjdGlvbl80NS5odG0iPkNvbm5lY3Rpdml0eSBFeHRyYWN0aW9uIDQ1PC9hPjwvbGk+CgkJCTxsaT48YSBocmVmPSJndGxfY29ubmVjdGl2aXR5X2V4dHJhY3Rpb24uaHRtIj5Db25uZWN0aXZpdHkgRXh0cmFjdGlvbjwvYT48L2xpPgoJCQk8bGk+PGEgaHJlZj0iZ3RsX3Byb3BlcnR5X21lcmdlXzkwLmh0bSI+UHJvcGVydHkgTWVyZ2UgOTA8L2E+PC9saT4KCQkJPGxpPjxhIGhyZWY9Imd0bF9wcm9wZXJ0eV9tZXJnZV80NS5odG0iPlByb3BlcnR5IE1lcmdlIDQ1PC9hPjwvbGk+CgkJCTxsaT48YSBocmVmPSJndGxfcHJvcGVydHlfbWVyZ2UuaHRtIj5Qcm9wZXJ0eSBNZXJnZTwvYT48L2xpPgogICAgICAgIDwvdWw+CiAgICAgICAgPGgzIGNsYXNzPSJuYXZiYXIiPk90aGVyIFJlc291cmNlczwvaDM+CiAgICAgICAgPHVsPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iR1RMX2Jvb3N0Y29uMjAwOS5wZGYiPkdUTCBCb29zdGNvbiAyMDA5IFBhcGVyPC9hPjwvbGk+CiAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iR1RMX2Jvb3N0Y29uX2RyYWZ0MDMucGRmIj5HVEwgQm9vc3Rjb24gMjAwOSAKCQkJCVByZXNlbnRhdGlvbjwvYT48L2xpPgogICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImFuYWx5c2lzLmh0bSI+UGVyZm9ybWFuY2UgQW5hbHlzaXM8L2E+PC9saT4KICAgICAgICAJPGxpPjxhIGhyZWY9Imd0bF90dXRvcmlhbC5odG0iPkxheW91dCBWZXJzdXMgU2NoZW1hdGljIFR1dG9yaWFsPC9hPjwvbGk+CiAgICAgICAgCTxsaT48YSBocmVmPSJndGxfbWlua293c2tpX3R1dG9yaWFsLmh0bSI+TWlua293c2tpIFN1bSBUdXRvcmlhbDwvYT48L2xpPgogICAgICAgIDwvdWw+CiAgICA8L2Rpdj4KICAgICAgICA8aDMgY2xhc3M9Im5hdmJhciI+UG9seWdvbiBTcG9uc29yPC9oMz4KICAgIDxkaXYgc3R5bGU9InBhZGRpbmc6IDVweDsiIGFsaWduPSJjZW50ZXIiPgogICAgICAgIDxpbWcgYm9yZGVyPSIwIiBzcmM9ImltYWdlcy9pbnRsb2dvLmdpZiIgd2lkdGg9IjEyNyIgaGVpZ2h0PSI1MSI+CiAgICA8L2Rpdj4gICAgCjwvdGQ+Cjx0ZCBzdHlsZT0icGFkZGluZy1sZWZ0OiAxMHB4OyBwYWRkaW5nLXJpZ2h0OiAxMHB4OyBwYWRkaW5nLWJvdHRvbTogMTBweDsiIHZhbGlnbj0idG9wIiB3aWR0aD0iMTAwJSI+Cgo8IS0tIEVuZCBIZWFkZXIgLS0+Cgo8YnI+CjxwPgo8L3A+PGgxPlBvbHlnb24gNDUgV2l0aCBIb2xlcyBDb25jZXB0PC9oMT4KCjxwPiAKPHA+VGhlIHBvbHlnb25fNDVfd2l0aF9ob2xlcyBjb25jZXB0IHRhZyBpcyA8Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+CnBvbHlnb25fNDVfd2l0aF9ob2xlc19jb25jZXB0PC9mb250PjwvcD4KPHA+IApUbyByZWdpc3RlciBhIHVzZXIgZGVmaW5lZCB0eXBlIGFzIGEgbW9kZWwgb2YgIAo8Zm9udCBmYWNlPSJUaW1lcyBOZXcgUm9tYW4iPnBvbHlnb25fNDVfd2l0aF9ob2xlcyA8L2ZvbnQ+Y29uY2VwdCwgc3BlY2lhbGl6ZSAKdGhlIGdlb21ldHJ5IGNvbmNlcHQgbWV0YS1mdW5jdGlvbiBmb3IgdGhhdCB0eXBlLiZuYnNwOyBJbiB0aGUgZXhhbXBsZSBiZWxvdyAKQ1BvbHlnb240NVdpdGhIb2xlcyBpcyByZWdpc3RlcmVkIGFzIGEgbW9kZWwgb2YgcG9seWdvbjxmb250IGZhY2U9IlRpbWVzIE5ldyBSb21hbiI+XzQ1X3dpdGhfaG9sZXMmbmJzcDs8L2ZvbnQ+IGNvbmNlcHQuPHA+IAo8Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0OyZndDs8YnI+CnN0cnVjdCBnZW9tZXRyeV9jb25jZXB0Jmx0O0NQb2x5Z29uNDVXaXRoSG9sZXMmZ3Q7IHsgdHlwZWRlZiBwb2x5Z29uXzQ1X3dpdGhfaG9sZXNfY29uY2VwdCB0eXBlOyB9OzwvZm9udD48cD4gCjxmb250IGZhY2U9IlRpbWVzIE5ldyBSb21hbiI+VGhlIHNlbWFudGljIG9mIGEgcG9seWdvbl80NV93aXRoX2hvbGVzIGlzIGEgCnBvbHlnb25fNDUgdGhhdCBpdCBjYW4gcHJvdmlkZSBpdGVyYXRvcnMgb3ZlciBob2xlcyB0aGF0IGFyZSBhbHNvIHBvbHlnb25fNDUuJm5ic3A7IApBIG11dGFibGUgcG9seWdvbl80NV93aXRoX2hvbGVzIG11c3QgYWxzbyBiZSBhYmxlIHRvIHNldCBpdHMgZ2VvbWV0cnkgYmFzZWQgb24gCmFuIGludGVyYXRvciByYW5nZSBvdmVyIHBvbHlnb25fNDUgaG9sZXMuJm5ic3A7IFRoZXJlIGlzIG5vIGNvbnZlbnRpb24gb2YgCndpbmRpbmcgb2YgaG9sZXMgZW5mb3JjZWQgd2l0aGluIHRoZSBsaWJyYXJ5LiA8L2ZvbnQ+PHA+IAo8Zm9udCBmYWNlPSJUaW1lcyBOZXcgUm9tYW4iPkJlbG93IGlzIHNob3duIHRoZSBkZWZhdWx0IHBvbHlnb24gd2l0aCBob2xlcyAKdHJhaXRzLiZuYnNwOyBTcGVjaWFsaXphdGlvbiBvZiB0aGVzZSB0cmFpdHMgaXMgcmVxdWlyZWQgZm9yIHR5cGVzIHRoYXQgZG9uJ3QgCmNvbmZvcm0gdG8gdGhlIGRlZmF1bHQgYmVoYXZpb3IuPC9mb250PjxwPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgClQsIHR5cGVuYW1lIGVuYWJsZSA9IHZvaWQmZ3Q7PGJyPgpzdHJ1Y3QgcG9seWdvbl93aXRoX2hvbGVzX3RyYWl0cyB7PGJyPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgdHlwZWRlZiB0eXBlbmFtZSBUOjppdGVyYXRvcl9ob2xlc190eXBlIAppdGVyYXRvcl9ob2xlc190eXBlOzxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHR5cGVkZWYgdHlwZW5hbWUgVDo6aG9sZV90eXBlIGhvbGVfdHlwZTs8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBzdGF0aWMgaW5saW5lIGl0ZXJhdG9yX2hvbGVzX3R5cGUgYmVnaW5faG9sZXMoY29uc3QgVCZhbXA7IAp0KSB7PGJyPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJuIHQuYmVnaW5faG9sZXMoKTs8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB9PGJyPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgc3RhdGljIGlubGluZSBpdGVyYXRvcl9ob2xlc190eXBlIGVuZF9ob2xlcyhjb25zdCBUJmFtcDsgdCkgCns8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyByZXR1cm4gdC5lbmRfaG9sZXMoKTs8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB9PGJyPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgc2l6ZV9ob2xlcyhjb25zdCBUJmFtcDsgdCkgezxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiB0LnNpemVfaG9sZXMoKTs8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB9PGJyPgp9OzwvZm9udD48L3A+CjxwPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVCwgdHlwZW5hbWUgZW5hYmxlID0gdm9pZCZndDs8YnI+CnN0cnVjdCBwb2x5Z29uX3dpdGhfaG9sZXNfbXV0YWJsZV90cmFpdHMgezxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHRlbXBsYXRlICZsdDt0eXBlbmFtZSBpVCZndDs8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBzdGF0aWMgaW5saW5lIFQmYW1wOyBzZXRfaG9sZXMoVCZhbXA7IHQsIGlUIGlucHV0QmVnaW4sIGlUIAppbnB1dEVuZCkgezxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHQuc2V0X2hvbGVzKGlucHV0QmVnaW4sIAppbnB1dEVuZCk7PGJyPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJuIHQ7PGJyPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfTxicj4KfTs8L2ZvbnQ+PC9wPgo8cD5BbiBvYmplY3QgdGhhdCBpcyBhIG1vZGVsIG9mIDxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij4KcG9seWdvbl80NV93aXRoX2hvbGVzX2NvbmNlcHQ8L2ZvbnQ+IGNhbiBiZSB2aWV3ZWQgYXMgYSBtb2RlbCBvZiBhbnkgb2YgaXRzIApyZWZpbmVtZW50cyBpZiBpdCBpcyBkZXRlcm1pbmVkIGF0IHJ1bnRpbWUgdG8gY29uZm9ybSB0byB0aGUgcmVzdHJpY3Rpb24gb2YgCnRob3NlIGNvbmNlcHRzLiZuYnNwOyBUaGlzIGNvbmNlcHQgY2FzdGluZyBpcyBhY2NvbXBsaXNoZWQgdGhyb3VnaCB0aGUKPGZvbnQgZmFjZT0iQ291cmllciBOZXciPnZpZXdfYXMmbHQ7Jmd0OygpPC9mb250PiBmdW5jdGlvbi48L3A+CjxwPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij52aWV3X2FzJmx0O3JlY3RhbmdsZV9jb25jZXB0Jmd0Oyhwb2x5Z29uXzQ1X3dpdGhfaG9sZXNfb2JqZWN0KTwvZm9udD48YnI+Cjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij52aWV3X2FzJmx0O3BvbHlnb25fOTBfY29uY2VwdCZndDsocG9seWdvbl80NV93aXRoX2hvbGVzX29iamVjdCk8L2ZvbnQ+PGJyPgo8Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dmlld19hcyZsdDtwb2x5Z29uXzkwX3dpdGhfaG9sZXNfY29uY2VwdCZndDsocG9seWdvbl80NV93aXRoX2hvbGVzX29iamVjdCk8L2ZvbnQ+PGJyPgo8Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dmlld19hcyZsdDtwb2x5Z29uXzQ1X2NvbmNlcHQmZ3Q7KHBvbHlnb25fNDVfd2l0aF9ob2xlc19vYmplY3QpPC9mb250PjwvcD4KPHA+VGhlIHJldHVybiB2YWx1ZSBvZiA8Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dmlld19hcyZsdDsmZ3Q7KCk8L2ZvbnQ+IGNhbiBiZSAKcGFzc2VkIGludG8gYW55IGludGVyZmFjZSB0aGF0IGV4cGVjdHMgYW4gb2JqZWN0IG9mIHRoZSBjb25jZXB0dWFsIHR5cGUgCnNwZWNpZmllZCBpbiBpdHMgdGVtcGxhdGUgcGFyYW1ldGVyLiA8L3A+CjxoMj5GdW5jdGlvbnM8L2gyPgo8dGFibGUgYm9yZGVyPSIxIiB3aWR0aD0iMTAwJSIgaWQ9InRhYmxlMSI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVCZndDs8YnI+CgkJcG9pbnRfaXRlcmF0b3JfdHlwZSA8Yj5iZWdpbl9wb2ludHM8L2I+KGNvbnN0IFQmYW1wOyBwb2x5Z29uKTwvZm9udD48L3RkPgoJCTx0ZD48Zm9udCBmYWNlPSJUaW1lcyBOZXcgUm9tYW4iPkV4cGVjdHMgYSBtb2RlbCBvZiAKCQlwb2x5Z29uXzQ1X3dpdGhfaG9sZXMuJm5ic3A7IAoJCVJldHVybnMgdGhlIGJlZ2luIGl0ZXJhdG9yIG92ZXIgdGhlIHJhbmdlIG9mIHBvaW50cyB0aGF0IGNvcnJlc3BvbmQgdG8gCgkJdmVydGljZXMgb2YgdGhlIHBvbHlnb24uPC9mb250PjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQmZ3Q7PGJyPgoJCXBvaW50X2l0ZXJhdG9yX3R5cGUgPGI+ZW5kX3BvaW50czwvYj4oY29uc3QgVCZhbXA7IHBvbHlnb24pPC9mb250PjwvdGQ+CgkJPHRkPjxmb250IGZhY2U9IlRpbWVzIE5ldyBSb21hbiI+RXhwZWN0cyBhIG1vZGVsIG9mIAoJCXBvbHlnb25fNDVfd2l0aF9ob2xlcy4mbmJzcDsgCgkJUmV0dXJucyB0aGUgZW5kIGl0ZXJhdG9yIG92ZXIgdGhlIHJhbmdlIG9mIHBvaW50cyB0aGF0IGNvcnJlc3BvbmQgdG8gCgkJdmVydGljZXMgb2YgdGhlIHBvbHlnb24uPC9mb250PjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQmZ3Q7PGJyPgoJCWhvbGVfaXRlcmF0b3JfdHlwZSA8Yj5iZWdpbl9ob2xlczwvYj4oY29uc3QgVCZhbXA7IHBvbHlnb24pPC9mb250PjwvdGQ+CgkJPHRkPjxmb250IGZhY2U9IlRpbWVzIE5ldyBSb21hbiI+RXhwZWN0cyBhIG1vZGVsIG9mIAoJCXBvbHlnb25fNDVfd2l0aF9ob2xlcy4mbmJzcDsgCgkJUmV0dXJucyB0aGUgYmVnaW4gaXRlcmF0b3Igb3ZlciB0aGUgcmFuZ2Ugb2YgY29vcmRpbmF0ZXMgdGhhdCBjb3JyZXNwb25kIAoJCXRvIGhvcml6b250YWwgYW5kIHZlcnRpY2FsIGVkZ2VzLjwvZm9udD48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUJmd0Ozxicj4KCQlob2xlX2l0ZXJhdG9yX3R5cGUgPGI+ZW5kX2hvbGVzPC9iPihjb25zdCBUJmFtcDsgcG9seWdvbik8L2ZvbnQ+PC90ZD4KCQk8dGQ+PGZvbnQgZmFjZT0iVGltZXMgTmV3IFJvbWFuIj5FeHBlY3RzIGEgbW9kZWwgb2YgCgkJcG9seWdvbl80NV93aXRoX2hvbGVzLiZuYnNwOyAKCQlSZXR1cm5zIHRoZSBlbmQgaXRlcmF0b3Igb3ZlciB0aGUgcmFuZ2Ugb2YgY29vcmRpbmF0ZXMgdGhhdCBjb3JyZXNwb25kIAoJCXRvIGhvcml6b250YWwgYW5kIHZlcnRpY2FsIGVkZ2VzLjwvZm9udD48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBULCB0eXBlbmFtZSAKCQlpdGVyYXRvciZndDs8YnI+CgkJdm9pZCA8Yj5zZXRfcG9pbnRzPC9iPihUJmFtcDsgcG9seWdvbiwgaXRlcmF0b3IgYiwgaXRlcmF0b3IgZSk8L2ZvbnQ+PC90ZD4KCQk8dGQ+PGZvbnQgZmFjZT0iVGltZXMgTmV3IFJvbWFuIj5FeHBlY3RzIGEgbW9kZWwgb2YgCgkJcG9seWdvbl80NV93aXRoX2hvbGVzLiZuYnNwOyZuYnNwOyAKCQlTZXRzIHRoZSBwb2x5Z29uIHRvIHRoZSBwb2ludCBkYXRhIHJhbmdlIFtiLGUpIHRoYXQgY29ycmVzcG9uZHMgdG8gCgkJdmVydGljZXMgb2YgYSBwb2x5Z29uLiZuYnNwOyA8L2ZvbnQ+PC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVCwgdHlwZW5hbWUgCgkJaXRlcmF0b3ImZ3Q7PGJyPgoJCXZvaWQgPGI+c2V0X2hvbGVzPC9iPihUJmFtcDsgcG9seWdvbiwgaXRlcmF0b3IgYiwgaXRlcmF0b3IgZSk8L2ZvbnQ+PC90ZD4KCQk8dGQ+PGZvbnQgZmFjZT0iVGltZXMgTmV3IFJvbWFuIj5FeHBlY3RzIGEgbW9kZWwgb2YgCgkJcG9seWdvbl80NV93aXRoX2hvbGVzLiZuYnNwOyZuYnNwOyAKCQlTZXRzIHRoZSBwb2x5Z29uIGhvbGVzIHRvIHRoZSBob2xlIGRhdGEgcmFuZ2UgW2IsZSk8L2ZvbnQ+PC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVCZndDs8YnI+CgkJdW5zaWduZWQgaW50IDxiPnNpemU8L2I+KGNvbnN0IFQmYW1wOyBwb2x5Z29uKTwvZm9udD48L3RkPgoJCTx0ZD48Zm9udCBmYWNlPSJUaW1lcyBOZXcgUm9tYW4iPlJldHVybnMgdGhlIG51bWJlciBvZiBlZGdlcyBpbiB0aGUgCgkJb3V0ZXIgc2hlbGwgb2YgdGhlIHBvbHlnb25fNDVfd2l0aF9ob2xlcy4mbmJzcDsgRG9lcyBub3QgaW5jbHVkZSBzaXplcyAKCQlvZiB0aGUgaG9sZXMuPC9mb250PjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQxLCB0eXBlbmFtZSAKCQlUMiZndDs8YnI+CgkJVDEmYW1wOyA8Yj5hc3NpZ248L2I+KFQxJmFtcDsgbGVmdCwgY29uc3QgVDImYW1wOyByaWdodCk8L2ZvbnQ+PC90ZD4KCQk8dGQ+Q29waWVzIGRhdGEgZnJvbSByaWdodCBvYmplY3QgdGhhdCBtb2RlbHMgcG9seWdvbl80NV93aXRoX2hvbGVzIG9yIAoJCW9uZSBvZiBpdHMgcmVmaW5lbWVudHMgaW50byBsZWZ0IG9iamVjdCAKCQl0aGF0IG1vZGVscyBwb2x5Z29uXzQ1X3dpdGhfaG9sZXMuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVCwgCgkJdHlwZW5hbWUgcG9pbnRfdHlwZSZndDs8YnI+CgkJYm9vbCA8Yj5jb250YWluczwvYj4oY29uc3QgVCZhbXA7LCBjb25zdCBwb2ludF90eXBlJmFtcDsgcG9pbnQsIDxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IAoJCWJvb2wgY29uc2lkZXJfdG91Y2g9dHJ1ZSk8L2ZvbnQ+PC90ZD4KCQk8dGQ+R2l2ZW4gYW4gb2JqZWN0IHRoYXQgbW9kZWxzIHBvbHlnb25fNDVfd2l0aF9ob2xlcyBhbmQgYW4gb2JqZWN0IHRoYXQgbW9kZWxzIAoJCXBvaW50LCByZXR1cm5zIHRydWUgCgkJaWYgdGhlIHBvbHlnb24gc2hlbGwgY29udGFpbnMgdGhlIHBvaW50IGFuZCBvbmUgb2YgaXRzIGhvbGVzIGRvZXMgbm90IAoJCWNvbnRhaW4gdGhlIHBvaW50LiZuYnNwOyBJZiB0aGUgY29uc2lkZXJfdG91Y2ggCgkJZmxhZyBpcyB0cnVlIHdpbGwgcmV0dXJuIHRydWUgaWYgdGhlIHBvaW50IGxpZXMgYWxvbmcgdGhlIGJvdW5kYXJ5IG9mIAoJCXRoZSBwb2x5Z29uIG9yIG9uZSBvZiBpdHMgaG9sZXMuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij4vLyBnZXQgdGhlIGNlbnRlciBjb29yZGluYXRlPGJyPgoJCXRlbXBsYXRlICZsdDt0eXBlbmFtZSBULCB0eXBlbmFtZSBwb2ludF90eXBlJmd0Ozxicj4KCQl2b2lkIDxiPmNlbnRlcjwvYj4ocG9pbnRfdHlwZSZhbXA7IHAsIGNvbnN0IFQmYW1wOyBwb2x5Z29uKTwvZm9udD48L3RkPgoJCTx0ZD5TZXRzIG9iamVjdCB0aGF0IG1vZGVscyBwb2ludCB0byB0aGUgY2VudGVyIHBvaW50IG9mIHRoZSBib3VuZGluZyAKCQlib3ggb2YgYW4gb2JqZWN0IHRoYXQgbW9kZWxzIHBvbHlnb25fNDVfd2l0aF9ob2xlcy48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBULCAKCQl0eXBlbmFtZSByZWN0YW5nbGVfdHlwZSZndDs8YnI+CgkJYm9vbCA8Yj5leHRlbnRzPC9iPihyZWN0YW5nbGVfdHlwZSZhbXA7IGJib3gsIGNvbnN0IFQmYW1wOyBwb2x5Z29uKTwvZm9udD48L3RkPgoJCTx0ZD5TZXRzIG9iamVjdCB0aGF0IG1vZGVscyByZWN0YW5nbGUgdG8gdGhlIGJvdW5kaW5nIGJveCBvZiBhbiBvYmplY3QgCgkJdGhhdCBtb2RlbHMgcG9seWdvbl80NV93aXRoX2hvbGVzIGFuZCByZXR1cm5zIHRydWUuJm5ic3A7IFJldHVybnMgZmFsc2UgCgkJYW5kIGxlYXZlcyBiYm94IHVuY2hhbmdlZCBpZiBwb2x5Z29uIGlzIGVtcHR5LjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQmZ3Q7PGJyPgoJCW1hbmhhdHRhbl9hcmVhX3R5cGUgPGI+YXJlYTwvYj4oY29uc3QgVCZhbXA7IHBvbHlnb24pPC9mb250PjwvdGQ+CgkJPHRkPlJldHVybnMgdGhlIGFyZWEgb2YgYW4gb2JqZWN0IAoJCXRoYXQgbW9kZWxzIHBvbHlnb25fNDVfd2l0aF9ob2xlcyBpbmNsdWRpbmcgc3VidHJhY3RpbmcgdGhlIGFyZWEgb2YgaXRzIAoJCWhvbGVzIGZyb20gdGhlIGFyZWEgb2YgdGhlIG91dGVyIHNoZWxsIHBvbHlnb24uPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVCZndDs8YnI+CgkJZGlyZWN0aW9uXzFkIDxiPndpbmRpbmc8L2I+KGNvbnN0IFQmYW1wOyBwb2x5Z29uKTwvZm9udD48L3RkPgoJCTx0ZD5SZXR1cm5zIHRoZSB3aW5kaW5nIGRpcmVjdGlvbiBvZiBhbiBvYmplY3QgCgkJdGhhdCBtb2RlbHMgcG9seWdvbl80NV93aXRoX2hvbGVzLCBMT1cgPT0gQ0xPQ0tXSVNFLCBISUdIID0gCgkJQ09VTlRFUkNMT0NLV0lTRS48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUJmd0Ozxicj4KCQljb29yZGluYXRlX2RpZmZlcmVuY2UgPGI+cGVyaW1ldGVyPC9iPihjb25zdCBUJmFtcDsgcG9seWdvbik8L2ZvbnQ+PC90ZD4KCQk8dGQ+UmV0dXJucyB0aGUgcGVyaW1ldGVyIGxlbmd0aCBvZiBhbiBvYmplY3QgCgkJdGhhdCBtb2RlbHMgcG9seWdvbl80NSwgaW5jbHVkaW5nIHRoZSBwZXJpbWV0ZXJzIG9mIHRoZSBob2xlcy48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBULCAKCQl0eXBlbmFtZSB0cmFuc2Zvcm1fdHlwZSZndDs8YnI+CgkJVCZhbXA7IDxiPnRyYW5zZm9ybTwvYj4oVCZhbXA7IHBvbHlnb24sIGNvbnN0IHRyYW5zZm9ybV90eXBlJmFtcDspPC9mb250PjwvdGQ+CgkJPHRkPkFwcGxpZXMgdHJhbnNmb3JtKCkgb24gdGhlIHZlcnRpY2VzIG9mIHBvbHlnb24gYW5kIHNldHMgdGhlIHBvbHlnb24gdG8gdGhhdCBkZXNjcmliZWQgYnkgdGhlIHJlc3VsdCBvZiAKCQl0cmFuc2Zvcm1pbmcgaXRzIHZlcnRpY2VzLiZuYnNwOyBBbHNvIGFwcGxpZXMgdHJhbnNmb3JtKCkgb24gdGhlIGhvbGVzIAoJCW9mIHRoZSBwb2x5Z29uLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQmZ3Q7PGJyPgoJCVQmYW1wOyA8Yj5zY2FsZV91cDwvYj4oVCZhbXA7IHBvbHlnb24sIHVuc2lnbmVkX2FyZWFfdHlwZSBmYWN0b3IpPC9mb250PjwvdGQ+CgkJPHRkPlNjYWxlcyB1cCBvdXRlciBzaGVsbCBhbmQgaG9sZXMgb2YgYW4gb2JqZWN0IHRoYXQgbW9kZWxzIAoJCXBvbHlnb25fNDUgYnkgdW5zaWduZWQgZmFjdG9yLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQmZ3Q7PGJyPgoJCVQmYW1wOyA8Yj5zY2FsZV9kb3duPC9iPihUJmFtcDsgcG9seWdvbiwgdW5zaWduZWRfYXJlYV90eXBlIGZhY3Rvcik8L2ZvbnQ+PC90ZD4KCQk8dGQ+U2NhbGVzIGRvd24gb3V0ZXIgc2hlbGwgYW5kIGhvbGVzIG9mIGFuIG9iamVjdCB0aGF0IG1vZGVscyAKCQlwb2x5Z29uXzQ1IGJ5IHVuc2lnbmVkIGZhY3Rvci48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBULCBzY2FsaW5nX3R5cGUmZ3Q7PGJyPgoJCVQmYW1wOyA8Yj5zY2FsZTwvYj4oVCZhbXA7IHJlY3RhbmdsZSwgZG91YmxlIHNjYWxpbmcpIDwvZm9udD48L3RkPgoJCTx0ZD5TY2FsZXMgb3V0ZXIgc2hlbGwgYW5kIGhvbGVzIG9mIGFuIG9iamVjdCB0aGF0IG1vZGVscyBwb2x5Z29uXzQ1IGJ5IAoJCWZsb2F0aW5nIHBvaW50IGZhY3Rvci48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUJmd0Ozxicj4KCQlUJmFtcDsgPGI+bW92ZTwvYj4oVCZhbXA7IHBvbHlnb24sIG9yaWVudGF0aW9uXzJkLDxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGNvb3JkaW5hdGVfZGlmZmVyZW5jZSBkaXNwbGFjZW1lbnQpPC9mb250PjwvdGQ+CgkJPHRkPkFkZHMgZGlzcGxhY2VtZW50IHZhbHVlIHRvIGNvb3JkaW5hdGUgaW5kaWNhdGVkIGJ5IG9yaWVudGF0aW9uXzJkIG9mIAoJCXZlcnRpY2VzIG9mIGFuIG9iamVjdCB0aGF0IG1vZGVscyBwb2x5Z29uXzQ1IC48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBwb2x5Z29uX3R5cGUsIHR5cGVuYW1lIHBvaW50X3R5cGUmZ3Q7PGJyPgoJCXBvbHlnb25fdHlwZSZhbXA7IDxiPmNvbnZvbHZlPC9iPihwb2x5Z29uX3R5cGUmYW1wOyBwb2x5Z29uLDxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IAoJCWNvbnN0IHBvaW50X3R5cGUmYW1wOyBwb2ludCk8L2ZvbnQ+PC90ZD4KCQk8dGQ+Q29udm9sdmVzIGNvb3JkaW5hdGUgdmFsdWVzIG9mIHBvaW50IHdpdGggdGhlIG91dGVyIHNoZWxsIGFuZCBob2xlcyBvZiBhbiAKCQlvYmplY3QgdGhhdCBtb2RlbHMgcG9seWdvbl80NV93aXRoX2hvbGVzLjwvdGQ+Cgk8L3RyPgoJPC90YWJsZT4KCTxoMT5Qb2x5Z29uIDQ1IFdpdGggSG9sZXMgRGF0YTwvaDE+Cgo8cD4gCjxwPlRoZSBsaWJyYXJ5IHByb3ZpZGVzIGEgbW9kZWwgb2YgcG9seWdvbiA0NSB3aXRoIGhvbGVzIGNvbmNlcHQgZGVjbGFyZWQKPGZvbnQgZmFjZT0iQ291cmllciBOZXciPgp0ZW1wbGF0ZSZsdDt0eXBlbmFtZSBUJmd0OyBwb2x5Z29uXzQ1X3dpdGhfaG9sZXNfZGF0YSA8L2ZvbnQ+d2hlcmUgVCBpcyB0aGUgCmNvb3JkaW5hdGUgdHlwZS48L3A+CjxwPlRoaXMgZGF0YSB0eXBlIGlzIHVzZWQgaW50ZXJuYWxseSB3aGVuIGEgNDUgZGVncmVlIHBvbHlnb24gd2l0aCBob2xlcyBpcyAKbmVlZGVkIGFuZCBpcyBhdmFpbGFibGUgdG8gdGhlIGxpYnJhcnkgdXNlciB3aG8gZmluZHMgaXQgY29udmVuaWVudCB0byB1c2UgYSAKbGlicmFyeSBwb2x5Z29uIGRhdGEgdHlwZSBpbnN0ZWFkIG9mIHByb3ZpZGluZyB0aGVpciBvd24uJm5ic3A7IFRoZSBkYXRhIHR5cGUgaXMgCmltcGxlbWVudGVkIHRvIGJlIGNvbnZlbmllbnQgdG8gdXNlIHdpdGggdGhlIGxpYnJhcnkgdHJhaXRzLjwvcD4KPGgyPk1lbWJlcnM8L2gyPgo8dGFibGUgYm9yZGVyPSIxIiB3aWR0aD0iMTAwJSIgaWQ9InRhYmxlMiI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij5nZW9tZXRyeV90eXBlPC9mb250PjwvYj48L3RkPgoJCTx0ZD48Zm9udCBmYWNlPSJUaW1lcyBOZXcgUm9tYW4iPnBvbHlnb25fNDVfd2l0aF9ob2xlc19jb25jZXB0PC9mb250PjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Yj48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+Y29vcmRpbmF0ZV90eXBlPC9mb250PjwvYj48L3RkPgoJCTx0ZD48Zm9udCBmYWNlPSJUaW1lcyBOZXcgUm9tYW4iPlQ8L2ZvbnQ+PC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij5pdGVyYXRvcl90eXBlPC9mb250PjwvYj48L3RkPgoJCTx0ZD5JdGVyYXRvciBvdmVyIHZlcnRpY2VzIHBvaW50X2RhdGEmbHQ7VCZndDsgdmVydGljZXMgb2YgcG9seWdvbjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Yj48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+aXRlcmF0b3JfaG9sZXNfdHlwZTwvZm9udD48L2I+PC90ZD4KCQk8dGQ+PGZvbnQgZmFjZT0iVGltZXMgTmV3IFJvbWFuIj5JdGVyYXRvciBvdmVyIGhvbGUgcG9seWdvbnMgb2YgdHlwZSAKCQlwb2x5Z29uXzQ1X2RhdGEmbHQ7VCZndDsuPC9mb250PjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+PGI+cG9seWdvbl80NV93aXRoX2hvbGVzX2RhdGE8L2I+KCk8L2ZvbnQ+PC90ZD4KCQk8dGQ+PGZvbnQgZmFjZT0iVGltZXMgTmV3IFJvbWFuIj5EZWZhdWx0IGNvbnN0cnVjdHMgdGhlIDwvZm9udD5wb2x5Z29uLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+PGI+cG9seWdvbl80NV93aXRoX2hvbGVzX2RhdGE8L2I+KGNvbnN0IAoJCXBvbHlnb25fNDVfd2l0aF9ob2xlc19kYXRhJmFtcDsgdGhhdCk8L2ZvbnQ+PC90ZD4KCQk8dGQ+PGZvbnQgZmFjZT0iVGltZXMgTmV3IFJvbWFuIj5Db3B5IGNvbnN0cnVjdDwvZm9udD48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnBvbHlnb25fNDVfd2l0aF9ob2xlc19kYXRhJmFtcDsgPGI+CgkJPGJyPm9wZXJhdG9yPTwvYj4oY29uc3QgcG9seWdvbl80NV93aXRoX2hvbGVzX2RhdGEmYW1wOyB0aGF0KTwvZm9udD48L3RkPgoJCTx0ZD5Bc3NpZ25tZW50IG9wZXJhdG9yLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQyJmd0OzxiPiA8L2I+CgkJcG9seWdvbl80NV93aXRoX2hvbGVzX2RhdGEmYW1wOzxiPiZuYnNwOyAKCQk8YnI+IG9wZXJhdG9yPTwvYj4oY29uc3QgVDImYW1wOyB0aGF0KSBjb25zdDwvZm9udD48L3RkPgoJCTx0ZD5Bc3NpZ24gZnJvbSBhbiBvYmplY3QgdGhhdCBpcyBhIG1vZGVsIG9mIHBvbHlnb24gNDUgd2l0aCBob2xlcy48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPml0ZXJhdG9yX3R5cGUgPGI+YmVnaW48L2I+KCkgCgkJY29uc3Q8L2ZvbnQ+PC90ZD4KCQk8dGQ+R2V0IHRoZSBiZWdpbiBpdGVyYXRvciBvdmVyIHZlcnRpY2VzIG9mIHRoZSBwb2x5Z29uLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+aXRlcmF0b3JfdHlwZSA8Yj5lbmQ8L2I+KCkgCgkJY29uc3Q8L2ZvbnQ+PC90ZD4KCQk8dGQ+R2V0IHRoZSBlbmQgaXRlcmF0b3Igb3ZlciB2ZXJ0aWNlcyBvZiB0aGUgcG9seWdvbi48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPml0ZXJhdG9yX2hvbGVfdHlwZSA8Yj5iZWdpbl9ob2xlczwvYj4oKSAKCQljb25zdDwvZm9udD48L3RkPgoJCTx0ZD5HZXQgdGhlIGJlZ2luIGNvbXBhY3QgaXRlcmF0b3Igb3ZlciBub24tcmVkdW5kYW50IGNvb3JkaW5hdGVzIG9mIHRoZSAKCQlwb2x5Z29uLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+aXRlcmF0b3JfaG9sZV90eXBlIDxiPmVuZF9ob2xlczwvYj4oKSAKCQljb25zdDwvZm9udD48L3RkPgoJCTx0ZD5HZXQgdGhlIGVuZCBjb21wYWN0IGl0ZXJhdG9yIG92ZXIgbm9uLXJlZHVuZGFudCBjb29yZGluYXRlcyBvZiB0aGUgCgkJcG9seWdvbi48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnN0ZDo6c2l6ZV90IDxiPnNpemU8L2I+KCkgY29uc3Q8L2ZvbnQ+PC90ZD4KCQk8dGQ+R2V0IHRoZSBudW1iZXIgb2YgZWxlbWVudHMgaW4gdGhlIHNlcXVlbmNlIHN0b3JlZCB0byB0aGUgcG9seWdvbiwgCgkJdXN1YWxseSBlcXVhbCB0byB0aGUgbnVtYmVyIG9mIGVkZ2VzIG9mIHRoZSBwb2x5Z29uLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+c3RkOjpzaXplX3QgPGI+c2l6ZV9ob2xlczwvYj4oKSBjb25zdDwvZm9udD48L3RkPgoJCTx0ZD5HZXQgdGhlIG51bWJlciBvZiBob2xlcyBpbiB0aGUgcG9seWdvbjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIGlUJmd0OzxiPiZuYnNwOyAKCQk8YnI+IDwvYj52b2lkIDxiPnNldDwvYj4oaVQgYmVnaW5fcG9pbnRzLCBpVCBlbmRfcG9pbnRzKTwvZm9udD48L3RkPgoJCTx0ZD5TZXRzIHRoZSBwb2x5Z29uIHRvIHRoZSBpdGVyYXRvciByYW5nZSBvZiBwb2ludHMuJm5ic3A7IE5vIGNoZWNrIGlzIAoJCXBlcmZvcm1lZCB0byBlbnN1cmUgdGhlIHBvaW50cyBkZXNjcmliZSBhIDQ1IGRlZ3JlZSBmaWd1cmUuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgaVQmZ3Q7PGI+Jm5ic3A7IAoJCTxicj4gPC9iPnZvaWQgPGI+c2V0X2hvbGVzPC9iPihpVCBiZWdpbl9ob2xlcywgaVQgZW5kX2Nob2xlc3MpPC9mb250PjwvdGQ+CgkJPHRkPlNldHMgdGhlIHBvbHlnb24gaG9sZXMgdGhlIGl0ZXJhdG9yIHJhbmdlIG9mIGhvbGUgcG9seWdvbnMuJm5ic3A7IFRoZXNlIAoJCXBvbHlnb25zIGluIHRoZSBpbnB1dCByYW5nZSBtYXkgYmUgZWl0aGVyIHBvbHlnb25fNDVfZGF0YSBvciAKCQlwb2x5Z29uXzQ1X3dpdGhfaG9sZXNfZGF0YSBvciBhbnkgdHlwZSB0aGF0IHByb3ZpZGVzIGJlZ2luIGFuZCBlbmQgCgkJbWVtYmVyIGZ1bmN0aW9ucyB0byBpdGVyYXRlIG92ZXIgcG9pbnRfZGF0YSZsdDtUJmd0Oy48L3RkPgoJPC90cj4KPC90YWJsZT4KCTx0cj4KPHRkIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjM4LCAyMzgsIDIzOCk7IiBub3dyYXA9IjEiIHZhbGlnbj0idG9wIj4KICAgICZuYnNwOzwvdGQ+Cjx0ZCBzdHlsZT0icGFkZGluZy1sZWZ0OiAxMHB4OyBwYWRkaW5nLXJpZ2h0OiAxMHB4OyBwYWRkaW5nLWJvdHRvbTogMTBweDsiIHZhbGlnbj0idG9wIiB3aWR0aD0iMTAwJSI+CgoKPHRhYmxlIGNsYXNzPSJkb2NpbmZvIiBydWxlcz0ibm9uZSIgZnJhbWU9InZvaWQiIGlkPSJ0YWJsZTMiPgoJPGNvbGdyb3VwPgoJCTxjb2wgY2xhc3M9ImRvY2luZm8tbmFtZSI+PGNvbCBjbGFzcz0iZG9jaW5mby1jb250ZW50Ij4KCTwvY29sZ3JvdXA+Cgk8dGJvZHkgdkFsaWduPSJ0b3AiPgoJCTx0cj4KCQkJPHRoIGNsYXNzPSJkb2NpbmZvLW5hbWUiPkNvcHlyaWdodDo8L3RoPgoJCQk8dGQ+Q29weXJpZ2h0IKkgSW50ZWwgQ29ycG9yYXRpb24gMjAwOC0yMDEwLjwvdGQ+CgkJPC90cj4KCQk8dHIgY2xhc3M9ImZpZWxkIj4KCQkJPHRoIGNsYXNzPSJkb2NpbmZvLW5hbWUiPkxpY2Vuc2U6PC90aD4KCQkJPHRkIGNsYXNzPSJmaWVsZC1ib2R5Ij5EaXN0cmlidXRlZCB1bmRlciB0aGUgQm9vc3QgU29mdHdhcmUgTGljZW5zZSwgCgkJCVZlcnNpb24gMS4wLiAoU2VlIGFjY29tcGFueWluZyBmaWxlIDx0dCBjbGFzcz0ibGl0ZXJhbCI+CgkJCTxzcGFuIGNsYXNzPSJwcmUiPkxJQ0VOU0VfMV8wLnR4dDwvc3Bhbj48L3R0PiBvciBjb3B5IGF0CgkJCTxhIGNsYXNzPSJyZWZlcmVuY2UiIHRhcmdldD0iX3RvcCIgaHJlZj0iaHR0cDovL3d3dy5ib29zdC5vcmcvTElDRU5TRV8xXzAudHh0Ij4KCQkJaHR0cDovL3d3dy5ib29zdC5vcmcvTElDRU5TRV8xXzAudHh0PC9hPik8L3RkPgoJCTwvdHI+CjwvdGFibGU+Cgo8L2h0bWw+