PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgeG1sOmxhbmc9ImVuIiBsYW5nPSJlbiIgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6KG51bGwpMT0iaHR0cDovL3d3dy53My5vcmcvVFIvUkVDLWh0bWw0MCI+PGhlYWQ+PCEtLQogICAgQ29weXJpZ2h0IDIwMDktMjAxMCBJbnRlbCBDb3Jwb3JhdGlvbgogICAgbGljZW5zZSBiYW5uZXIKLS0+Cjx0aXRsZT5Cb29zdCBQb2x5Z29uIExpYnJhcnk6IEludGVydmFsIENvbmNlcHQ8L3RpdGxlPgogICAgPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1JU08tODg1OS0xIj4KPHRhYmxlIHN0eWxlPSJtYXJnaW46IDBwdDsgcGFkZGluZzogMHB0OyB3aWR0aDogMTAwJTsiIGJvcmRlcj0iMCIgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIj48dGJvZHk+PHRyPgo8dGQgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYigyMzgsIDIzOCwgMjM4KTsiIG5vd3JhcD0iMSIgdmFsaWduPSJ0b3AiPgogICAgPGRpdiBzdHlsZT0icGFkZGluZzogNXB4OyIgYWxpZ249ImNlbnRlciI+CiAgICAgICAgPGltZyBib3JkZXI9IjAiIHNyYz0iaW1hZ2VzL2Jvb3N0LnBuZyIgd2lkdGg9IjI3NyIgaGVpZ2h0PSI4NiI+PGEgdGl0bGU9Ind3dy5ib29zdC5vcmcgaG9tZSBwYWdlIiBocmVmPSJodHRwOi8vd3d3LmJvb3N0Lm9yZy8iIHRhYmluZGV4PSIyIiBzdHlsZT0iYm9yZGVyOiBtZWRpdW0gbm9uZSA7Ij4KICAgICAgICAgICAgPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IHN0eWxlPSJtYXJnaW46IDVweDsiPgogICAgICAgIDxoMyBjbGFzcz0ibmF2YmFyIj5Db250ZW50czwvaDM+CiAgICAgICAgPHVsPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtIj5Cb29zdC5Qb2x5Z29uIE1haW4gUGFnZTwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iZ3RsX2Rlc2lnbl9vdmVydmlldy5odG0iPkRlc2lnbiBPdmVydmlldzwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iZ3RsX2lzb3Ryb3B5Lmh0bSI+SXNvdHJvcHk8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imd0bF9jb29yZGluYXRlX2NvbmNlcHQuaHRtIj5Db29yZGluYXRlIENvbmNlcHQ8L2E+PC9saT4KCQkJPGxpPkludGVydmFsIENvbmNlcHQ8L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iZ3RsX3BvaW50X2NvbmNlcHQuaHRtIj5Qb2ludCBDb25jZXB0PC9hPjwvbGk+CgkJCTxsaT48YSBocmVmPSJndGxfcmVjdGFuZ2xlX2NvbmNlcHQuaHRtIj5SZWN0YW5nbGUgQ29uY2VwdDwvYT48L2xpPgoJCQk8bGk+PGEgaHJlZj0iZ3RsX3BvbHlnb25fOTBfY29uY2VwdC5odG0iPlBvbHlnb24gOTAgQ29uY2VwdDwvYT48L2xpPgoJCQk8bGk+PGEgaHJlZj0iZ3RsX3BvbHlnb25fOTBfd2l0aF9ob2xlc19jb25jZXB0Lmh0bSI+UG9seWdvbiA5MCBXaXRoIEhvbGVzIENvbmNlcHQ8L2E+PC9saT4KCQkJPGxpPjxhIGhyZWY9Imd0bF9wb2x5Z29uXzQ1X2NvbmNlcHQuaHRtIj5Qb2x5Z29uIDQ1IENvbmNlcHQ8L2E+PC9saT4KCQkJPGxpPjxhIGhyZWY9Imd0bF9wb2x5Z29uXzQ1X3dpdGhfaG9sZXNfY29uY2VwdC5odG0iPlBvbHlnb24gNDUgV2l0aCBIb2xlcyBDb25jZXB0PC9hPjwvbGk+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+PGgxPkludGVydmFsIENvbmNlcHQ8L2gxPgoKPHA+IAo8cD5UaGUgaW50ZXJ2YWwgY29uY2VwdCB0YWcgaXMgPGZvbnQgZmFjZT0iQ291cmllciBOZXciPgppbnRlcnZhbF9jb25jZXB0PC9mb250PjwvcD4KPHA+IApUbyByZWdpc3RlciBhIHVzZXIgZGVmaW5lZCB0eXBlIGFzIGEgbW9kZWwgb2YgaW50ZXJ2YWwgY29uY2VwdCwgc3BlY2lhbGl6ZSB0aGUgCmdlb21ldHJ5IGNvbmNlcHQgbWV0YS1mdW5jdGlvbiBmb3IgdGhhdCB0eXBlLiZuYnNwOyBJbiB0aGUgZXhhbXBsZSBiZWxvdyAKQ0ludGVydmFsIGlzIHJlZ2lzdGVyZWQgYXMgYSBtb2RlbCBvZiBpbnRlcnZhbCZuYnNwOyBjb25jZXB0LjxwPiAKPGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDsmZ3Q7PGJyPgpzdHJ1Y3QgZ2VvbWV0cnlfY29uY2VwdCZsdDtDSW50ZXJ2YWwmZ3Q7IHsgdHlwZWRlZiBpbnRlcnZhbF9jb25jZXB0IHR5cGU7IH07PC9mb250PjxwPiAKPGZvbnQgZmFjZT0iVGltZXMgTmV3IFJvbWFuIj5UaGUgc2VtYW50aWMgb2YgYW4gaW50ZXJ2YWwgaXMgdGhhdCBpdCBoYXMgYSBsb3cgCmFuZCBoaWdoIGNvb3JkaW5hdGUgYW5kIHRoZXJlIGlzIGFuIGludmFyaWFudCB0aGF0IGxvdyBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gCmhpZ2guJm5ic3A7IFRoaXMgaW52YXJpYW50IGlzIGVuZm9yY2VkIGJ5IHRoZSBnZW5lcmljIGxpYnJhcnkgZnVuY3Rpb25zIHRoYXQgCm9wZXJhdGUgb24gaW50ZXJ2YWxzLCBhbmQgaXMgbm90IGV4cGVjdGVkIG9mIHRoZSBkYXRhIHR5cGUgaXRzZWxmIG9yIHRoZSBjb25jZXB0IAptYXBwaW5nIG9mIHRoYXQgZGF0YSB0eXBlIHRvIHRoZSBpbnRlcnZhbCBjb25jZXB0IHRocm91Z2ggaXRzIHRyYWl0cy4mbmJzcDsgSW4gCnRoaXMgd2F5IGEgc3RkOjpwYWlyJmx0O2ludCwgaW50Jmd0OywgYm9vc3Q6OnR1cGxlJmx0O2ludCwgaW50Jmd0OyBvciBib29zdDo6YXJyYXkmbHQ7aW50LCAyJmd0OyAKY291bGQgYWxsIGJlIG1hZGUgbW9kZWxzIG9mIGludGVydmFsIGJ5IHNpbXBseSBwcm92aWRpbmcgaW5kaXJlY3QgYWNjZXNzIHRvIHRoZWlyIAplbGVtZW50cyB0aHJvdWdoIHRyYWl0cy48L2ZvbnQ+PHA+IAo8Zm9udCBmYWNlPSJUaW1lcyBOZXcgUm9tYW4iPkJlbG93IGlzIHNob3duIHRoZSBkZWZhdWx0IGludGVydmFsIHRyYWl0cy4mbmJzcDsgClNwZWNpYWxpemF0aW9uIG9mIHRoZXNlIHRyYWl0cyBpcyByZXF1aXJlZCBmb3IgdHlwZXMgdGhhdCBkb24ndCBjb25mb3JtIHRvIHRoZSAKZGVmYXVsdCBiZWhhdmlvci48L2ZvbnQ+PHA+IAo8Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQmZ3Q7PGJyPgpzdHJ1Y3QgaW50ZXJ2YWxfdHJhaXRzIHs8YnI+CiZuYnNwOyB0eXBlZGVmIHR5cGVuYW1lIFQ6OmNvb3JkaW5hdGVfdHlwZSBjb29yZGluYXRlX3R5cGU7PGJyPgo8YnI+CiZuYnNwOyBzdGF0aWMgaW5saW5lIGNvb3JkaW5hdGVfdHlwZSBnZXQoY29uc3QgVCZhbXA7IGludGVydmFsLCBkaXJlY3Rpb25fMWQgZGlyKSB7PGJyPgombmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJuIGludGVydmFsLmdldChkaXIpOyA8YnI+CiZuYnNwOyB9PGJyPgp9Ozxicj4KPGJyPgp0ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVCZndDs8YnI+CnN0cnVjdCBpbnRlcnZhbF9tdXRhYmxlX3RyYWl0cyB7PGJyPgombmJzcDsgc3RhdGljIGlubGluZSB2b2lkIHNldChUJmFtcDsgaW50ZXJ2YWwsIGRpcmVjdGlvbl8xZCBkaXIsIDwvZm9udD4KPGJyPiAKPGZvbnQgZmFjZT0iQ291cmllciBOZXciPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB0eXBlbmFtZSBpbnRlcnZhbF90cmFpdHMmbHQ7VCZndDs6OmNvb3JkaW5hdGVfdHlwZSB2YWx1ZSkgezxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7CmludGVydmFsLnNldChkaXIsIHZhbHVlKTsgPGJyPgombmJzcDsKfTxicj4KJm5ic3A7CnN0YXRpYyBpbmxpbmUgVCBjb25zdHJ1Y3QodHlwZW5hbWUgaW50ZXJ2YWxfdHJhaXRzJmx0O1QmZ3Q7Ojpjb29yZGluYXRlX3R5cGUgbG93X3ZhbHVlLAo8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOwp0eXBlbmFtZSBpbnRlcnZhbF90cmFpdHMmbHQ7VCZndDs6OmNvb3JkaW5hdGVfdHlwZSBoaWdoX3ZhbHVlKSB7PGJyPgombmJzcDsmbmJzcDsmbmJzcDsKcmV0dXJuIFQobG93X3ZhbHVlLCBoaWdoX3ZhbHVlKTsgPGJyPgombmJzcDsKfTxicj4KfTs8L2ZvbnQ+PGgyPkZ1bmN0aW9uczwvaDI+Cjx0YWJsZSBib3JkZXI9IjEiIHdpZHRoPSIxMDAlIiBpZD0idGFibGUxIj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUJmd0Ozxicj4KCQljb29yZGluYXRlX3R5cGUgPGI+Z2V0PC9iPihjb25zdCBUJmFtcDsgaW50ZXJ2YWwsIGRpcmVjdGlvbl8xZCk8L2ZvbnQ+PC90ZD4KCQk8dGQ+PGZvbnQgZmFjZT0iVGltZXMgTmV3IFJvbWFuIj5FeHBlY3RzIGEgbW9kZWwgb2YgaW50ZXJ2YWwuJm5ic3A7IAoJCVJldHVybnMgdGhlIGxvdyBvciBoaWdoIGNvb3JkaW5hdGUgb2YgdGhlIGludGVydmFsLCBkZXBlbmRpbmcgb24gdGhlIAoJCWRpcmVjdGlvbl8xZCB2YWx1ZS48L2ZvbnQ+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPjxicj4KJm5ic3A7PC9mb250PjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQsIHR5cGVuYW1lIAoJCWNvb3JkaW5hdGVfdHlwZSZndDs8YnI+CgkJdm9pZCA8Yj5zZXQ8L2I+KFQmYW1wOyBpbnRlcnZhbCwgZGlyZWN0aW9uXzFkLCBjb29yZGluYXRlX3R5cGUpPC9mb250PjwvdGQ+CgkJPHRkPjxmb250IGZhY2U9IlRpbWVzIE5ldyBSb21hbiI+RXhwZWN0cyBhIG1vZGVsIG9mIGludGVydmFsLiZuYnNwOyZuYnNwOyAKCQlTZXRzIHRoZSBsb3cgb3IgaGlnaCBjb29yZGluYXRlIG9mIHRoZSBpbnRlcnZhbCB0byB0aGUgY29vcmRpbmF0ZSwgCgkJZGVwZW5kaW5nIG9uIHRoZSBkaXJlY3Rpb25fMWQgdmFsdWUuJm5ic3A7IElmIGxvdyB3b3VsZCBiZSBncmVhdGVyIHRoYW4gCgkJaGlnaCBhZnRlciB0aGlzIGNoYW5nZSB0aGVuIGJvdGggYXJlIHNldCB0byB0aGUgaW5wdXQgY29vcmRpbmF0ZSB2YWx1ZS48L2ZvbnQ+PC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVCZndDs8YnI+CgkJVCA8Yj5jb25zdHJ1Y3Q8L2I+KGNvb3JkaW5hdGVfdHlwZSBsb3csIGNvb3JkaW5hdGVfdHlwZSBoaWdoKTwvZm9udD48L3RkPgoJCTx0ZD5Db25zdHJ1Y3QgYW4gb2JqZWN0IHRoYXQgaXMgYSBtb2RlbCBvZiBpbnRlcnZhbCBnaXZlbiBsb3cgYW5kIGhpZ2ggCgkJY29vcmRpbmF0ZSB2YWx1ZXMuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVDEsIHR5cGVuYW1lIAoJCVQyJmd0Ozxicj4KCQlUMSZhbXA7IDxiPmFzc2lnbjwvYj4oVDEmYW1wOyBsZWZ0LCBjb25zdCBUMiZhbXA7IHJpZ2h0KTwvZm9udD48L3RkPgoJCTx0ZD5Db3BpZXMgZGF0YSBmcm9tIHJpZ2h0IG9iamVjdCB0aGF0IG1vZGVscyBpbnRlcnZhbCBpbnRvIGxlZnQgb2JqZWN0IAoJCXRoYXQgbW9kZWxzIGludGVydmFsLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQsIHR5cGVuYW1lIAoJCVQyJmd0Ozxicj4KCQlib29sIDxiPmVxdWl2YWxlbmNlPC9iPihjb25zdCBUJmFtcDsgaW50ZXJ2YWwxLCBjb25zdCBUMiZhbXA7IGludGVydmFsMik8L2ZvbnQ+PC90ZD4KCQk8dGQ+R2l2ZW4gdHdvIG9iamVjdHMgdGhhdCBtb2RlbCBpbnRlcnZhbCwgY29tcGFyZXMgYW5kIHJldHVybnMgdHJ1ZSBpZiAKCQl0aGVpciBsb3cgYW5kIGhpZ2ggdmFsdWVzIGFyZSByZXNwZWN0aXZlbHkgZXF1YWwgdG8gZWFjaCBvdGhlci48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUJmd0Ozxicj4KCQlib29sIDxiPmNvbnRhaW5zPC9iPihjb25zdCBUJmFtcDssIGNvb3JkaW5hdGVfdHlwZSwgPGJyPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgCgkJYm9vbCBjb25zaWRlcl90b3VjaD10cnVlKTwvZm9udD48L3RkPgoJCTx0ZD5HaXZlbiBhbiBvYmplY3QgdGhhdCBtb2RlbHMgaW50ZXJ2YWwgYW5kIGEgY29vcmRpbmF0ZSwgcmV0dXJucyB0cnVlIAoJCWlmIHRoZSBpbnRlcnZhbCBjb250YWlucyB0aGUgY29vcmRpbmF0ZS4mbmJzcDsgSWYgdGhlIGNvbnNpZGVyX3RvdWNoIAoJCWZsYWcgaXMgdHJ1ZSB3aWxsIHJldHVybiB0cnVlIGlmIHRoZSBjb29yZGluYXRlIGlzIGVxdWFsIHRvIG9uZSBvZiB0aGUgCgkJaW50ZXJ2YWwgZW5kcy48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUMSwgdHlwZW5hbWUgCgkJVDImZ3Q7PGJyPgoJCWJvb2wgPGI+Y29udGFpbnM8L2I+KGNvbnN0IFQxJmFtcDsgYSwgY29uc3QgVDImYW1wOyBiLCA8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAKCQlib29sIGNvbnNpZGVyX3RvdWNoID0gdHJ1ZSkgPC9mb250PjwvdGQ+CgkJPHRkPlJldHVybnMgdHJ1ZSBpZiBtb2RlbCBvZiBpbnRlcnZhbCBhIGNvbnRhaW5zIGJvdGggZW5kcyBvZiBtb2RlbCBvZiAKCQlpbnRlcnZhbCBiLiZuYnNwOyBJZiB0aGUgY29uc2lkZXJfdG91Y2ggZmxhZyBpcyB0cnVlIHdpbGwgY29uc2lkZXIgdGhlIAoJCWVuZCBvZiBiIGNvbnRhaW5lZCB3aXRoaW4gYSBldmVuIGlmIGl0IGlzIGVxdWFsIHRvIGFuIGVuZCBvZiBhLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIAoJCWludGVydmFsX3R5cGUmZ3Q7PGJyPgoJCWNvb3JkaW5hdGVfdHlwZSA8Yj5sb3c8L2I+KGNvbnN0IGludGVydmFsX3R5cGUmYW1wOyBpbnRlcnZhbCk8L2ZvbnQ+PC90ZD4KCQk8dGQ+UmV0dXJucyB0aGUgbG93IGVuZCBvZiBhbiBvYmplY3QgdGhhdCBtb2RlbHMgaW50ZXJ2YWwuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgCgkJaW50ZXJ2YWxfdHlwZSZndDs8YnI+CgkJY29vcmRpbmF0ZV90eXBlIDxiPmhpZ2g8L2I+KGNvbnN0IGludGVydmFsX3R5cGUmYW1wOyBpbnRlcnZhbCk8L2ZvbnQ+PC90ZD4KCQk8dGQ+UmV0dXJucyB0aGUgaGlnaCBlbmQgb2YgYW4gb2JqZWN0IHRoYXQgbW9kZWxzIGludGVydmFsLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+Ly8gZ2V0IHRoZSBjZW50ZXIgY29vcmRpbmF0ZTxicj4KCQl0ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgaW50ZXJ2YWxfdHlwZSZndDs8YnI+CgkJY29vcmRpbmF0ZV90eXBlIDxiPmNlbnRlcjwvYj4oY29uc3QgaW50ZXJ2YWxfdHlwZSZhbXA7IGludGVydmFsKTwvZm9udD48L3RkPgoJCTx0ZD5SZXR1cm5zIHRoZSBjZW50ZXIgY29vcmRpbmF0ZSBvZiBhbiBvYmplY3QgdGhhdCBtb2RlbHMgaW50ZXJ2YWwuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgCgkJaW50ZXJ2YWxfdHlwZSZndDs8YnI+CgkJdm9pZCA8Yj5sb3c8L2I+KGludGVydmFsX3R5cGUmYW1wOyBpbnRlcnZhbCwgY29vcmRpbmF0ZV90eXBlICk8L2ZvbnQ+PC90ZD4KCQk8dGQ+U2V0cyB0aGUgbG93IGVuZCBvZiB0aGUgb2JqZWN0IHRoYXQgbW9kZWxzIGludGVydmFsIHRvIHRoZSAKCQljb29yZGluYXRlIHZhbHVlLiZuYnNwOyBJZiB0aGUgbG93IGVuZCB3b3VsZCBiZSBzZXQgdG8gbGFyZ2VyIHRoYW4gaGlnaCAKCQllbmQgdGhlbiBib3RoIGFyZSBzZXQgdG8gdGhlIGNvb3JkaW5hdGUgdmFsdWUuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgCgkJaW50ZXJ2YWxfdHlwZSZndDs8YnI+CgkJdm9pZCA8Yj5oaWdoPC9iPihpbnRlcnZhbF90eXBlJmFtcDsgaW50ZXJ2YWwsIGNvb3JkaW5hdGVfdHlwZSApPC9mb250PjwvdGQ+CgkJPHRkPlNldHMgdGhlIGhpZ2ggZW5kIG9mIHRoZSBvYmplY3QgdGhhdCBtb2RlbHMgaW50ZXJ2YWwgdG8gdGhlIAoJCWNvb3JkaW5hdGUgdmFsdWUuJm5ic3A7IElmIHRoZSBoaWdoIGVuZCB3b3VsZCBiZSBzZXQgdG8gbGVzcyB0aGFuIGxvdyAKCQllbmQgdGhlbiBib3RoIGFyZSBzZXQgdG8gdGhlIGNvb3JkaW5hdGUgdmFsdWUuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgCgkJaW50ZXJ2YWxfdHlwZSZndDs8YnI+CgkJY29vcmRpbmF0ZV9kaWZmZXJlbmNlIDxiPmRlbHRhPC9iPihjb25zdCBpbnRlcnZhbF90eXBlJmFtcDsgaW50ZXJ2YWwpPC9mb250PjwvdGQ+CgkJPHRkPlJldHVybnMgdGhlIGRpc3RhbmNlIGZyb20gbG93IHRvIGhpZ2ggZW5kIG9mIGFuIG9iamVjdCB0aGF0IG1vZGVscyAKCQlpbnRlcnZhbC48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSAKCQlpbnRlcnZhbF90eXBlJmd0Ozxicj4KCQlpbnRlcnZhbF90eXBlJmFtcDsgPGI+ZmxpcDwvYj4oaW50ZXJ2YWxfdHlwZSZhbXA7IGludGVydmFsLDxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IAoJCWNvb3JkaW5hdGVfdHlwZSBheGlzID0gMCk8L2ZvbnQ+PC90ZD4KCQk8dGQ+RmxpcHMgYW4gb2JqZWN0IHRoYXQgbW9kZWxzIGludGVydmFsIGFib3V0IHRoZSBheGlzIGNvb3JkaW5hdGUuJm5ic3A7IAoJCUlmIG5vIGF4aXMgaXMgcHJvdmlkZWQgdGhlIGludGVydmFsIGlzIGZsaXBwZWQgYWNyb3NzIHRoZSB0aGUgb3JpZ2luLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIAoJCWludGVydmFsX3R5cGUmZ3Q7PGJyPgoJCWludGVydmFsX3R5cGUmYW1wOyA8Yj5zY2FsZV91cDwvYj4oaW50ZXJ2YWxfdHlwZSZhbXA7IGludGVydmFsLCA8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAKCQl1bnNpZ25lZF9hcmVhX3R5cGUgZmFjdG9yKTwvZm9udD48L3RkPgoJCTx0ZD5NdWx0aXBsaWVzIGxvdyBhbmQgaGlnaCBlbmRzIG9mIGFuIG9iamVjdCB0aGF0IG1vZGVscyBpbnRlcnZhbCBieSAKCQl1bnNpZ25lZCBmYWN0b3IuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgCgkJaW50ZXJ2YWxfdHlwZSZndDs8YnI+CgkJaW50ZXJ2YWxfdHlwZSZhbXA7IDxiPnNjYWxlX2Rvd248L2I+KGludGVydmFsX3R5cGUmYW1wOyBpbnRlcnZhbCwgPGJyPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgCgkJdW5zaWduZWRfYXJlYV90eXBlIGZhY3Rvcik8L2ZvbnQ+PC90ZD4KCQk8dGQ+RGl2aWRlcyBsb3cgYW5kIGhpZ2ggZW5kcyBvZiBhbiBvYmplY3QgdGhhdCBtb2RlbHMgaW50ZXJ2YWwgYnkgCgkJdW5zaWduZWQgZmFjdG9yLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIAoJCWludGVydmFsX3R5cGUmZ3Q7PGJyPgoJCWludGVydmFsX3R5cGUmYW1wOyA8Yj5zY2FsZTwvYj4oaW50ZXJ2YWxfdHlwZSZhbXA7IGludGVydmFsLDxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IAoJCWRvdWJsZSBmYWN0b3IpIDwvZm9udD48L3RkPgoJCTx0ZD5NdWx0aXBsaWVzIGxvdyBhbmQgaGlnaCBlbmRzIG9mIGFuIG9iamVjdCB0aGF0IG1vZGVscyBpbnRlcnZhbCBieSAKCQlmbG9hdGluZyBwb2ludCB2YWx1ZS48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSAKCQlpbnRlcnZhbF90eXBlJmd0Ozxicj4KCQlpbnRlcnZhbF90eXBlJmFtcDsgPGI+bW92ZTwvYj4oaW50ZXJ2YWxfdHlwZSZhbXA7IGludGVydmFsLDxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IAoJCWNvb3JkaW5hdGVfZGlmZmVyZW5jZSBkaXNwbGFjZW1lbnQpPC9mb250PjwvdGQ+CgkJPHRkPkFkZHMgZGlzcGxhY2VtZW50IHZhbHVlIHRvIGxvdyBhbmQgaGlnaCBlbmRzIG9mIGFuIG9iamVjdCB0aGF0IAoJCW1vZGVscyBpbnRlcnZhbC48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSAKCQlpbnRlcnZhbF90eXBlJmd0Ozxicj4KCQlpbnRlcnZhbF90eXBlJmFtcDsgPGI+Y29udm9sdmU8L2I+KGludGVydmFsX3R5cGUmYW1wOyBpbnRlcnZhbCw8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAKCQljb29yZGluYXRlX3R5cGUgYik8L2ZvbnQ+PC90ZD4KCQk8dGQ+QWRkcyBjb29yZGluYXRlIHZhbHVlIHRvIGxvdyBhbmQgaGlnaCBlbmRzIG9mIGFuIG9iamVjdCB0aGF0IG1vZGVscyAKCQlpbnRlcnZhbC48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSAKCQlpbnRlcnZhbF90eXBlJmd0Ozxicj4KCQlpbnRlcnZhbF90eXBlJmFtcDsgPGI+ZGVjb252b2x2ZTwvYj4oaW50ZXJ2YWxfdHlwZSZhbXA7IGludGVydmFsLDxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IAoJCWNvb3JkaW5hdGVfdHlwZSBiKTwvZm9udD48L3RkPgoJCTx0ZD5TdWJ0cmFjdHMgY29vcmRpbmF0ZSB2YWx1ZSBmcm9tIGxvdyBhbmQgaGlnaCBlbmRzIG9mIGFuIG9iamVjdCB0aGF0IAoJCW1vZGVscyBpbnRlcnZhbC48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUMSwgdHlwZW5hbWUgCgkJVDImZ3Q7PGJyPgoJCVQxJmFtcDsgPGI+Y29udm9sdmU8L2I+KFQxJmFtcDsgYSwgY29uc3QgVDImYW1wOyBiKTwvZm9udD48L3RkPgoJCTx0ZD5BZGRzIGxvdyBlbmQgb2YgYiB0byBsb3cgZW5kIG9mIGEgYW5kIGFkZHMgaGlnaCBlbmQgb2YgYiB0byBoaWdoIGVuZCAKCQlvZiBhLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQxLCB0eXBlbmFtZSAKCQlUMiZndDs8YnI+CgkJVDEmYW1wOyA8Yj5kZWNvbnZvbHZlPC9iPihUMSZhbXA7IGEsIGNvbnN0IFQyJmFtcDsgYik8L2ZvbnQ+PC90ZD4KCQk8dGQ+U3VidHJhY3RzIGxvdyBlbmQgb2YgYiBmcm9tIGxvdyBlbmQgb2YgYSBhbmQgc3VidHJhY3RzIGhpZ2ggZW5kIG9mIGIgCgkJZnJvbSBoaWdoIGVuZCBvZiBhLiA8L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUMSwgdHlwZW5hbWUgCgkJVDImZ3Q7PGJyPgoJCVQxJmFtcDsgPGI+cmVmbGVjdGVkX2NvbnZvbHZlPC9iPihUMSZhbXA7IGEsIGNvbnN0IFQyJmFtcDsgYik8L2ZvbnQ+PC90ZD4KCQk8dGQ+QWRkcyBoaWdoIGVuZCBvZiBiIHRvIGxvdyBlbmQgb2YgYSBhbmQgYWRkcyBsb3cgZW5kIG9mIGIgdG8gaGlnaCBlbmQgCgkJb2YgYS48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUMSwgdHlwZW5hbWUgCgkJVDImZ3Q7PGJyPgoJCVQxJmFtcDsgPGI+cmVmbGVjdGVkX2RlY29udm9sdmU8L2I+KFQxJmFtcDsgYSwgY29uc3QgVDImYW1wOyBiKTwvZm9udD48L3RkPgoJCTx0ZD5TdWJ0cmFjdHMgaGlnaCBlbmQgb2YgYiBmcm9tIGxvdyBlbmQgb2YgYSBhbmQgc3VidHJhY3RzIGxvdyBlbmQgb2YgYiAKCQlmcm9tIGhpZ2ggZW5kIG9mIGEuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVCZndDs8YnI+CgkJY29vcmRpbmF0ZV9kaWZmZXJlbmNlIDxiPmV1Y2xpZGVhbl9kaXN0YW5jZTwvYj4oY29uc3QgVCZhbXA7LDxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IAoJCWNvb3JkaW5hdGVfdHlwZSk8L2ZvbnQ+PC90ZD4KCQk8dGQ+UmV0dXJucyB0aGUgZGlzdGFuY2UgZnJvbSBhbiBvYmplY3QgdGhhdCBtb2RlbHMgaW50ZXJ2YWwgdG8gYSAKCQljb29yZGluYXRlLiZuYnNwOyBSZXR1cm5zIHplcm8gaWYgdGhlIGNvb3JkaW5hdGUgaXMgZXF1YWwgdG8gYW4gZW5kIG9mIAoJCXRoZSBpbnRlcnZhbCBvciBjb250YWluZWQgd2l0aGluIHRoZSBpbnRlcnZhbC48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUMSwgdHlwZW5hbWUgCgkJVDImZ3Q7PGJyPgoJCWJvb2wgPGI+aW50ZXJzZWN0czwvYj4oY29uc3QgVDEmYW1wOyBpbnRlcnZhbCwgY29uc3QgVDImYW1wOyBiLCA8YnI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAKCQlib29sIGNvbnNpZGVyX3RvdWNoID0gdHJ1ZSk8L2ZvbnQ+PC90ZD4KCQk8dGQ+UmV0dXJucyB0cnVlIGlmIHR3byBvYmplY3RzIHRoYXQgbW9kZWwgaW50ZXJ2YWwgb3ZlcmxhcC4mbmJzcDsgSWYgCgkJdGhlIGNvbnNpZGVyX3RvdWNoIGZsYWcgaXMgdHJ1ZSB0b3VjaGluZyBhdCB0aGUgZW5kcG9pbnRzIGlzIGNvbnNpZGVyZWQgCgkJb3ZlcmxhcC48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUMSwgdHlwZW5hbWUgCgkJVDImZ3Q7PGJyPgoJCWJvb2wgPGI+Ym91bmRhcmllc19pbnRlcnNlY3Q8L2I+KGNvbnN0IFQxJmFtcDsgaW50ZXJ2YWwsIGNvbnN0IFQyJmFtcDsgYiwgPGJyPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgCgkJYm9vbCBjb25zaWRlcl90b3VjaCA9IHRydWUpPC9mb250PjwvdGQ+CgkJPHRkPlJldHVybnMgdHJ1ZSBpcyB0d28gb2JqZWN0cyB0aGF0IG1vZGVsIGludGVydmFsIHBhcnRpYWxseSBvdmVybGFwIAoJCXN1Y2ggdGhhdCBvbmUgZW5kIHBvaW50IG9mIGVhY2ggaXMgY29udGFpbmVkIHdpdGhpbiB0aGUgb3RoZXIuJm5ic3A7IElmIAoJCXRoZSBjb25zaWRlcl90b3VjaCBmbGFnIGlzIHRydWUgYSBjb29yZGluYXRlIGlzIGNvbnNpZGVyZWQgY29udGFpbmVkIAoJCWV2ZW4gaWYgaXQgaXMgZXF1YWwgdG8gYW4gZW5kLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQxLCB0eXBlbmFtZSAKCQlUMiZndDs8YnI+CgkJYm9vbCA8Yj5hYnV0czwvYj4oY29uc3QgVDEmYW1wOyBhLCBjb25zdCBUMiZhbXA7IGIsPGJyPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZGlyZWN0aW9uXzFkIGRpcikKCQk8L2ZvbnQ+PC90ZD4KCQk8dGQ+UmV0dXJucyB0cnVlIGlmIGludGVydmFsIGIgYWJ1dHMgYnV0IGRvd24gbm90IG92ZXJsYXAgaW50ZXJ2YWwgYSBvbiAKCQl0aGUgZW5kIG9mIGludGVydmFsIGEgc3BlY2lmaWVkIGJ5IGRpci48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUMSwgdHlwZW5hbWUgCgkJVDImZ3Q7PGJyPgoJCWJvb2wgPGI+YWJ1dHM8L2I+KGNvbnN0IFQxJmFtcDsgYSwgY29uc3QgVDImYW1wOyBiKTwvZm9udD48L3RkPgoJCTx0ZD5SZXR1cm5zIHRydWUgaWYgaW50ZXJ2YWwgYiBhYnV0cyBidXQgZG93biBub3Qgb3ZlcmxhcCBpbnRlcnZhbCBhLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQxLCB0eXBlbmFtZSAKCQlUMiZndDs8YnI+CgkJYm9vbCA8Yj5pbnRlcnNlY3Q8L2I+KFQxJmFtcDsgYSwgY29uc3QgVDImYW1wOyBiLDxicj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IAoJCWJvb2wgY29uc2lkZXJfdG91Y2ggPSB0cnVlKSA8L2ZvbnQ+PC90ZD4KCQk8dGQ+U2V0cyBpbnRlcnZhbCBhIHRvIHRoZSBpbnRlcnNlY3Rpb24gb2YgaW50ZXJ2YWwgYSBhbmQgaW50ZXJ2YWwgYiBhbmQgCgkJcmV0dXJuIHRydWUuJm5ic3A7IElmIHRoZSB0d28gaW50ZXJ2YWxzIGRvIG5vdCBpbnRlcnNlY3QgaW50ZXJ2YWwgYSBpcyAKCQl1bmNoYW5nZWQgYW5kIHRoZSBmdW5jdGlvbiByZXR1cm5zIGZhbHNlLiZuYnNwOyBJZiB0aGUgZmxhZyAKCQljb25zaWRlcl90b3VjaCBpcyB0cnVlIGludGVydmFscyB0aGF0IGFidXQgYXJlIGNvbnNpZGVyZWQgdG8gaW50ZXJzZWN0LjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQxLCB0eXBlbmFtZSAKCQlUMiZndDs8YnI+CgkJVCZhbXA7IDxiPmdlbmVyYWxpemVkX2ludGVyc2VjdDwvYj4oVDEmYW1wOyBhLCBjb25zdCBUMiZhbXA7IGIpPC9mb250PjwvdGQ+CgkJPHRkPlNhbWUgYXMgaW50ZXJzZWN0LCBidXQgaWYgdGhleSBkbyBub3QgaW50ZXJzZWN0IHNldCBhIHRvIHRoZSAKCQlpbnRlcnZhbCBiZXR3ZWVuIGEgYW5kIGIuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVCZndDs8YnI+CgkJVCZhbXA7IDxiPmJsb2F0PC9iPihUJmFtcDsgaW50ZXJ2YWwsIGNvb3JkaW5hdGVfdHlwZSk8L2ZvbnQ+PC90ZD4KCQk8dGQ+QWRkcyB0aGUgY29vcmRpbmF0ZSB2YWx1ZSB0byBoaWdoIGVuZCBvZiBpbnRlcnZhbCBhbmQgc3VidHJhY3RzIGl0IAoJCWZyb20gbG93IGVuZCBvZiBpbnRlcnZhbC48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUJmd0Ozxicj4KCQlUJmFtcDsgPGI+YmxvYXQ8L2I+KFQmYW1wOyBpbnRlcnZhbCwgZGlyZWN0aW9uXzFkLCBjb29yZGluYXRlX3R5cGUpPC9mb250PjwvdGQ+CgkJPHRkPkFkZHMgdGhlIGNvb3JkaW5hdGUgdmFsdWUgdG8gaGlnaCBlbmQgb2YgaW50ZXJ2YWwgb3Igc3VidHJhY3RzIGl0IAoJCWZyb20gbG93IGVuZCBvZiBpbnRlcnZhbCBkZXBlbmRpbmcgb24gdGhlIGRpcmVjdGlvbl8xZC48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUJmd0Ozxicj4KCQlUJmFtcDsgPGI+c2hyaW5rPC9iPihUJmFtcDsgaW50ZXJ2YWwsIGNvb3JkaW5hdGVfdHlwZSk8L2ZvbnQ+PC90ZD4KCQk8dGQ+U3VidHJhY3RzIHRoZSBjb29yZGluYXRlIHZhbHVlIGZyb20gaGlnaCBlbmQgb2YgaW50ZXJ2YWwgYW5kIGFkZHMgaXQgCgkJdG8gbG93IGVuZCBvZiBpbnRlcnZhbC48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUJmd0Ozxicj4KCQlUJmFtcDsgPGI+c2hyaW5rPC9iPihUJmFtcDsgaW50ZXJ2YWwsIGRpcmVjdGlvbl8xZCwgY29vcmRpbmF0ZV90eXBlKTwvZm9udD48L3RkPgoJCTx0ZD5TdWJ0cmFjdHMgdGhlIGNvb3JkaW5hdGUgdmFsdWUgZnJvbSBoaWdoIGVuZCBvZiBpbnRlcnZhbCBvciBhZGRzIGl0IAoJCXRvIGxvdyBlbmQgb2YgaW50ZXJ2YWwgZGVwZW5kaW5nIG9uIHRoZSBkaXJlY3Rpb25fMWQuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVDEsIHR5cGVuYW1lIAoJCVQyJmd0Ozxicj4KCQlib29sIDxiPmVuY29tcGFzczwvYj4oVDEmYW1wOyBhLCBjb25zdCBUMiZhbXA7IGIpPC9mb250PjwvdGQ+CgkJPHRkPlNldHMgbG93IG9mIGEgdG8gbWluIG9mIGxvdyBvZiBhIGFuZCBsb3cgb2YgYiBhbmQgc2V0cyBoaWdoIG9mIGEgdG8gCgkJbWF4IG9mIGhpZ2ggb2YgYSBhbmQgaGlnaCBvZiBiLiZuYnNwOyBSZXR1cm5zIHRydWUgaWYgYiB3YXMgbm90IAoJCWNvbnRhaW5lZCB3aXRoaW4gYSB0byBiZWdpbiB3aXRoLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQmZ3Q7PGJyPgoJCWJvb2wgPGI+ZW5jb21wYXNzPC9iPihUJmFtcDsgYSwgY29vcmRpbmF0ZV90eXBlKTwvZm9udD48L3RkPgoJCTx0ZD5TZXRzIGxvdyBvZiBhIHRvIG1pbiBvZiBsb3cgb2YgYSBhbmQgY29vcmRpbmF0ZSB2YWx1ZSBhbmQgc2V0cyBoaWdoIAoJCW9mIGEgdG8gbWF4IG9mIGhpZ2ggb2YgYSBhbmQgY29vcmRpbmF0ZSB2YWx1ZS4mbmJzcDsgUmV0dXJucyB0cnVlIGlmIAoJCWNvb3JkaW5hdGUgdmFsdWUgd2FzIG5vdCBjb250YWluZWQgd2l0aGluIGEgdG8gYmVnaW4gd2l0aC48L3RkPgoJPC90cj4KPC90YWJsZT4KCTxoMT5JbnRlcnZhbCBEYXRhPC9oMT4KCjxwPiAKPHA+VGhlIGxpYnJhcnkgcHJvdmlkZXMgYSBtb2RlbCBvZiBpbnRlcnZhbCBjb25jZXB0IGRlY2xhcmVkCjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij4KdGVtcGxhdGUmbHQ7dHlwZW5hbWUgVCZndDsgaW50ZXJ2YWxfZGF0YSA8L2ZvbnQ+d2hlcmUgVCBpcyB0aGUgY29vcmRpbmF0ZSB0eXBlLjwvcD4KPHA+VGhpcyBkYXRhIHR5cGUgaXMgdXNlZCBpbnRlcm5hbGx5IHdoZW4gYW4gaW50ZXJ2YWwgaXMgbmVlZGVkIGFuZCBpcyBhdmFpbGFibGUgCnRvIHRoZSBsaWJyYXJ5IHVzZXIgd2hvIGZpbmRzIGl0IGNvbnZlbmllbnQgdG8gdXNlIGEgbGlicmFyeSBpbnRlcnZhbCBkYXRhIHR5cGUgCmluc3RlYWQgb2YgcHJvdmlkaW5nIHRoZWlyIG93bi4mbmJzcDsgVGhlIGRhdGEgdHlwZSBpcyBpbXBsZW1lbnRlZCB0byBiZSAKY29udmVuaWVudCB0byB1c2Ugd2l0aCB0aGUgbGlicmFyeSB0cmFpdHMuPC9wPgo8aDI+TWVtYmVyczwvaDI+Cjx0YWJsZSBib3JkZXI9IjEiIHdpZHRoPSIxMDAlIiBpZD0idGFibGUyIj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPmdlb21ldHJ5X3R5cGU8L2ZvbnQ+PC9iPjwvdGQ+CgkJPHRkPjxmb250IGZhY2U9IlRpbWVzIE5ldyBSb21hbiI+aW50ZXJ2YWxfY29uY2VwdDwvZm9udD48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPmNvb3JkaW5hdGVfdHlwZTwvZm9udD48L2I+PC90ZD4KCQk8dGQ+PGZvbnQgZmFjZT0iVGltZXMgTmV3IFJvbWFuIj5UPC9mb250PjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+PGI+aW50ZXJ2YWxfZGF0YTwvYj4oKTwvZm9udD48L3RkPgoJCTx0ZD48Zm9udCBmYWNlPSJUaW1lcyBOZXcgUm9tYW4iPkRlZmF1bHQgY29uc3RydWN0cyB0aGUgdHdvIGNvb3JkaW5hdGUgCgkJdmFsdWVzIG9mIHRoZSBpbnRlcnZhbC48L2ZvbnQ+PC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij48Yj5pbnRlcnZhbF9kYXRhPC9iPihUIGxvdywgVCAKCQloaWdoKTwvZm9udD48L3RkPgoJCTx0ZD48Zm9udCBmYWNlPSJUaW1lcyBOZXcgUm9tYW4iPkNvbnN0cnVjdHMgYW4gaW50ZXJ2YWwgd2l0aCB0d28gCgkJY29vcmRpbmF0ZXMuPC9mb250PjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+PGI+aW50ZXJ2YWxfZGF0YTwvYj4oY29uc3QgCgkJaW50ZXJ2YWxfZGF0YSZhbXA7IHRoYXQpPC9mb250PjwvdGQ+CgkJPHRkPjxmb250IGZhY2U9IlRpbWVzIE5ldyBSb21hbiI+Q29weSBjb25zdHJ1Y3Q8L2ZvbnQ+PC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij5pbnRlcnZhbF9kYXRhJmFtcDsgPGI+b3BlcmF0b3I9PC9iPihjb25zdCAKCQlpbnRlcnZhbF9kYXRhJmFtcDsgdGhhdCk8L2ZvbnQ+PC90ZD4KCQk8dGQ+QXNzaWdubWVudCBvcGVyYXRvci48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUMiZndDs8Yj4mbmJzcDsgCgkJPGJyPiA8L2I+aW50ZXJ2YWxfZGF0YSZhbXA7IDxiPm9wZXJhdG9yPTwvYj4oY29uc3QgVDImYW1wOyB0aGF0KSBjb25zdDwvZm9udD48L3RkPgoJCTx0ZD5Bc3NpZ24gZnJvbSBhbiBvYmplY3QgdGhhdCBpcyBhIG1vZGVsIG9mIGludGVydmFsLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQyJmd0OzxiPiAKCQk8YnI+IDwvYj5ib29sPGI+IAoJCW9wZXJhdG9yPT08L2I+KGNvbnN0IFQyJmFtcDsgdGhhdCkgY29uc3Q8L2ZvbnQ+PC90ZD4KCQk8dGQ+Q29tcGFyZSBlcXVhbGl0eSB0byBhbiBvYmplY3QgdGhhdCBpcyBhIG1vZGVsIG9mIGludGVydmFsLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQyJmd0OzxiPiAKCQk8YnI+IDwvYj5ib29sPGI+IAoJCW9wZXJhdG9yIT08L2I+KGNvbnN0IFQyJmFtcDsgdGhhdCkgY29uc3Q8L2ZvbnQ+PC90ZD4KCQk8dGQ+Q29tcGFyZSBpbmVxdWFsaXR5IHRvIGFuIG9iamVjdCB0aGF0IGlzIGEgbW9kZWwgb2YgaW50ZXJ2YWwuPC90ZD4KCTwvdHI+Cgk8dHI+CgkJPHRkIHdpZHRoPSI1ODYiPjxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij50ZW1wbGF0ZSAmbHQ7dHlwZW5hbWUgVDImZ3Q7PGI+IAoJCTxicj4gPC9iPmJvb2w8Yj4gCgkJb3BlcmF0b3ImbHQ7PC9iPihjb25zdCBUMiZhbXA7IHRoYXQpIGNvbnN0PC9mb250PjwvdGQ+CgkJPHRkPkNvbXBhcmVzIGxvdyBjb29yZGluYXRlcyB0aGVuIGhpZ2ggY29vcmRpbmF0ZXMgdG8gYnJlYWsgdGllcy48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUMiZndDs8Yj4gCgkJPGJyPiA8L2I+Ym9vbDxiPiAKCQlvcGVyYXRvciZsdDs9PC9iPihjb25zdCBUMiZhbXA7IHRoYXQpIGNvbnN0PC9mb250PjwvdGQ+CgkJPHRkPkNvbXBhcmVzIGxvdyBjb29yZGluYXRlcyB0aGVuIGhpZ2ggY29vcmRpbmF0ZXMgdG8gYnJlYWsgdGllcy48L3RkPgoJPC90cj4KCTx0cj4KCQk8dGQgd2lkdGg9IjU4NiI+PGZvbnQgZmFjZT0iQ291cmllciBOZXciPnRlbXBsYXRlICZsdDt0eXBlbmFtZSBUMiZndDs8Yj4gCgkJPGJyPiA8L2I+Ym9vbDxiPiAKCQlvcGVyYXRvciZndDs8L2I+KGNvbnN0IFQyJmFtcDsgdGhhdCkgY29uc3Q8L2ZvbnQ+PC90ZD4KCQk8dGQ+Q29tcGFyZXMgbG93IGNvb3JkaW5hdGVzIHRoZW4gaGlnaCBjb29yZGluYXRlcyB0byBicmVhayB0aWVzLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dGVtcGxhdGUgJmx0O3R5cGVuYW1lIFQyJmd0OzxiPiAKCQk8YnI+IDwvYj5ib29sPGI+IAoJCW9wZXJhdG9yJmd0Oz08L2I+KGNvbnN0IFQyJmFtcDsgdGhhdCkgY29uc3Q8L2ZvbnQ+PC90ZD4KCQk8dGQ+Q29tcGFyZXMgbG93IGNvb3JkaW5hdGVzIHRoZW4gaGlnaCBjb29yZGluYXRlcyB0byBicmVhayB0aWVzLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+VCA8Yj5nZXQ8L2I+KGRpcmVjdGlvbl8xZCBkaXIpIAoJCWNvbnN0PC9mb250PjwvdGQ+CgkJPHRkPkdldCB0aGUgY29vcmRpbmF0ZSBpbiB0aGUgZ2l2ZW4gZGlyZWN0aW9uLjwvdGQ+Cgk8L3RyPgoJPHRyPgoJCTx0ZCB3aWR0aD0iNTg2Ij48Zm9udCBmYWNlPSJDb3VyaWVyIE5ldyI+dm9pZCA8Yj5zZXQ8L2I+KGRpcmVjdGlvbl8xZCAKCQlkaXIsIFQgdmFsdWUpPC9mb250PjwvdGQ+CgkJPHRkPlNldHMgdGhlIGNvb3JkaW5hdGUgaW4gdGhlIGdpdmVuIGRpcmVjdGlvbiB0byB0aGUgdmFsdWUuPC90ZD4KCTwvdHI+Cgk8L3RhYmxlPgoJPHRyPgo8dGQgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYigyMzgsIDIzOCwgMjM4KTsiIG5vd3JhcD0iMSIgdmFsaWduPSJ0b3AiPgogICAgJm5ic3A7PC90ZD4KPHRkIHN0eWxlPSJwYWRkaW5nLWxlZnQ6IDEwcHg7IHBhZGRpbmctcmlnaHQ6IDEwcHg7IHBhZGRpbmctYm90dG9tOiAxMHB4OyIgdmFsaWduPSJ0b3AiIHdpZHRoPSIxMDAlIj4KCgo8dGFibGUgY2xhc3M9ImRvY2luZm8iIHJ1bGVzPSJub25lIiBmcmFtZT0idm9pZCIgaWQ9InRhYmxlMyI+Cgk8Y29sZ3JvdXA+CgkJPGNvbCBjbGFzcz0iZG9jaW5mby1uYW1lIj48Y29sIGNsYXNzPSJkb2NpbmZvLWNvbnRlbnQiPgoJPC9jb2xncm91cD4KCTx0Ym9keSB2QWxpZ249InRvcCI+CgkJPHRyPgoJCQk8dGggY2xhc3M9ImRvY2luZm8tbmFtZSI+Q29weXJpZ2h0OjwvdGg+CgkJCTx0ZD5Db3B5cmlnaHQgqSBJbnRlbCBDb3Jwb3JhdGlvbiAyMDA4LTIwMTAuPC90ZD4KCQk8L3RyPgoJCTx0ciBjbGFzcz0iZmllbGQiPgoJCQk8dGggY2xhc3M9ImRvY2luZm8tbmFtZSI+TGljZW5zZTo8L3RoPgoJCQk8dGQgY2xhc3M9ImZpZWxkLWJvZHkiPkRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBCb29zdCBTb2Z0d2FyZSBMaWNlbnNlLCAKCQkJVmVyc2lvbiAxLjAuIChTZWUgYWNjb21wYW55aW5nIGZpbGUgPHR0IGNsYXNzPSJsaXRlcmFsIj4KCQkJPHNwYW4gY2xhc3M9InByZSI+TElDRU5TRV8xXzAudHh0PC9zcGFuPjwvdHQ+IG9yIGNvcHkgYXQKCQkJPGEgY2xhc3M9InJlZmVyZW5jZSIgdGFyZ2V0PSJfdG9wIiBocmVmPSJodHRwOi8vd3d3LmJvb3N0Lm9yZy9MSUNFTlNFXzFfMC50eHQiPgoJCQlodHRwOi8vd3d3LmJvb3N0Lm9yZy9MSUNFTlNFXzFfMC50eHQ8L2E+KTwvdGQ+CgkJPC90cj4KPC90YWJsZT4KCjwvaHRtbD4=