PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgeG1sOmxhbmc9ImVuIiBsYW5nPSJlbiI+PGhlYWQ+PCEtLQogICAgQ29weXJpZ2h0IDIwMDktMjAxMCBJbnRlbCBDb3Jwb3JhdGlvbgogICAgbGljZW5zZSBiYW5uZXIKLS0+Cjx0aXRsZT5Cb29zdCBQb2x5Z29uIExpYnJhcnk6IE1haW4gUGFnZTwvdGl0bGU+CiAgICA8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PUlTTy04ODU5LTEiPgo8dGFibGUgc3R5bGU9Im1hcmdpbjogMHB0OyBwYWRkaW5nOiAwcHQ7IHdpZHRoOiAxMDAlOyIgYm9yZGVyPSIwIiBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiPjx0Ym9keT48dHI+Cjx0ZCBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzOCwgMjM4LCAyMzgpOyIgbm93cmFwPSIxIiB2YWxpZ249InRvcCI+CiAgICA8ZGl2IHN0eWxlPSJwYWRkaW5nOiA1cHg7IiBhbGlnbj0iY2VudGVyIj4KICAgICAgICA8aW1nIGJvcmRlcj0iMCIgc3JjPSJpbWFnZXMvYm9vc3QucG5nIiB3aWR0aD0iMjc3IiBoZWlnaHQ9Ijg2Ij48YSB0aXRsZT0id3d3LmJvb3N0Lm9yZyBob21lIHBhZ2UiIGhyZWY9Imh0dHA6Ly93d3cuYm9vc3Qub3JnLyIgdGFiaW5kZXg9IjIiIHN0eWxlPSJib3JkZXI6IG1lZGl1bSBub25lIDsiPgogICAgICAgICAgICA8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgc3R5bGU9Im1hcmdpbjogNXB4OyI+CiAgICAgICAgPGgzIGNsYXNzPSJuYXZiYXIiPkNvbnRlbnRzPC9oMz4KICAgICAgICA8dWw+CiAgICAgICAgICAgIDxsaT5Cb29zdC5Qb2x5Z29uIE1haW4gUGFnZTwvbGk+CgkJCTxsaT48YSBocmVmPSJndGxfZGVzaWduX292ZXJ2aWV3Lmh0bSI+RGVzaWduIE92ZXJ2aWV3PC9hPjwvbGk+CgkJCTxsaT48YSBocmVmPSJndGxfaXNvdHJvcHkuaHRtIj5Jc290cm9weTwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iZ3RsX2Nvb3JkaW5hdGVfY29uY2VwdC5odG0iPkNvb3JkaW5hdGUgQ29uY2VwdDwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iZ3RsX2ludGVydmFsX2NvbmNlcHQuaHRtIj5JbnRlcnZhbCBDb25jZXB0PC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT4KCQkJPGEgaHJlZj0iZ3RsX3BvaW50X2NvbmNlcHQuaHRtIj5Qb2ludCBDb25jZXB0PC9hPjwvbGk+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+PC9saT4KCQkJPGxpPjxhIGhyZWY9Imd0bF90dXRvcmlhbC5odG0iPkxheW91dCBWZXJzdXMgU2NoZW1hdGljIFR1dG9yaWFsPC9hPjwvbGk+CgkJCTxsaT48YSBocmVmPSJndGxfbWlua293c2tpX3R1dG9yaWFsLmh0bSI+TWlua293c2tpIFN1bSBUdXRvcmlhbDwvYT48L2xpPgogICAgICAgIDwvdWw+CiAgICA8L2Rpdj4KICAgICAgICA8aDMgY2xhc3M9Im5hdmJhciI+UG9seWdvbiBTcG9uc29yPC9oMz4KICAgIDxkaXYgc3R5bGU9InBhZGRpbmc6IDVweDsiIGFsaWduPSJjZW50ZXIiPgogICAgICAgIDxpbWcgYm9yZGVyPSIwIiBzcmM9ImltYWdlcy9pbnRsb2dvLmdpZiIgd2lkdGg9IjEyNyIgaGVpZ2h0PSI1MSI+CiAgICA8L2Rpdj4gICAgCjwvdGQ+Cjx0ZCBzdHlsZT0icGFkZGluZy1sZWZ0OiAxMHB4OyBwYWRkaW5nLXJpZ2h0OiAxMHB4OyBwYWRkaW5nLWJvdHRvbTogMTBweDsiIHZhbGlnbj0idG9wIiB3aWR0aD0iMTAwJSI+Cgo8IS0tIEVuZCBIZWFkZXIgLS0+Cgo8YnI+CjxwPgo8L3A+PGgxPlRIRSBCT09TVC5QT0xZR09OIExJQlJBUlk8L2gxPiAKPHA+VGhlIEJvb3N0LlBvbHlnb24gbGlicmFyeSBwcm92aWRlcyBhbGdvcml0aG1zIGZvY3VzZWQgb24gbWFuaXB1bGF0aW5nIHBsYW5hciAKcG9seWdvbiBnZW9tZXRyeSBkYXRhLiZuYnNwOyBTcGVjaWZpYyBhbGdvcml0aG1zIHByb3ZpZGVkIGFyZSB0aGUgcG9seWdvbiBzZXQgCm9wZXJhdGlvbnMgKGludGVyc2VjdGlvbiwgdW5pb24sIGRpZmZlcmVuY2UsIGRpc2pvaW50LXVuaW9uKSBhbmQgcmVsYXRlZCAKYWxnb3JpdGhtcyBzdWNoIGFzIHBvbHlnb24gY29ubmVjdGl2aXR5IGdyYXBoIGV4dHJhY3Rpb24sIG9mZnNldHRpbmcgYW5kIG1hcC1vdmVybGF5LiZuYnNwOyAKQW4gZXhhbXBsZSBvZiB0aGUgZGlzam9pbnQtdW5pb24gKFhPUikgb2YgZmlndXJlIGEgYW5kIGZpZ3VyZSBiIGlzIHNob3duIGJlbG93IAppbiBmaWd1cmUgYy4mbmJzcDsgClRoZXNlIHNvLWNhbGxlZCBCb29sZWFuIGFsZ29yaXRobXMgYXJlIG9mIHNpZ25pZmljYW50IGludGVyZXN0IGluIEdJUyAoR2Vvc3BhdGlhbCBJbmZvcm1hdGlvbiAKU3lzdGVtcyksIFZMU0kgQ0FEIGFzIHdlbGwgYWwgb3RoZXIgZmllbGRzIG9mIENBRCwgYW5kIG1hbnkgbW9yZSBhcHBsaWNhdGlvbiAKYXJlYXMsIGFuZCBwcm92aWRpbmcgdGhlbSBpcyB0aGUgcHJpbWFyeSBmb2N1cyBvZiB0aGlzIGxpYnJhcnkuJm5ic3A7IFRoZSAKQm9vc3QuUG9seWdvbiBsaWJyYXJ5IGlzIG5vdCBpbnRlbmRlZCB0byBjb3ZlciBhbGwgb2YgY29tcHV0YXRpb25hbCAKZ2VvbWV0cnkgaW4gaXRzIHNjb3BlLCBhbmQgcHJvdmlkZXMgYSBzZXQgb2YgY2FwYWJpbGl0aWVzIGZvciB3b3JraW5nIHdpdGggCmNvb3JkaW5hdGVzLCBwb2ludHMsIGludGVydmFscyBhbmQgcmVjdGFuZ2xlcyB0aGF0IGFyZSBuZWVkZWQgdG8gc3VwcG9ydCAKaW1wbGVtZW50aW5nIGFuZCBpbnRlcmFjdGluZyB3aXRoIHBvbHlnb24gZGF0YSBzdHJ1Y3R1cmVzIGFuZCBhbGdvcml0aG1zLiZuYnNwOyA8L3A+PGltZyBib3JkZXI9IjAiIHNyYz0iaW1hZ2VzL2hhbmQucG5nIiB3aWR0aD0iODM3IiBoZWlnaHQ9IjI3NyI+PHA+ClRoZSBjb29yZGluYXRlIGRhdGEgdHlwZSBpcyBhIHRlbXBsYXRlIHBhcmFtZXRlciBvZiBhbGwgZGF0YSB0eXBlcyBhbmQgCmFsZ29yaXRobXMgcHJvdmlkZWQgYnkgdGhlIGxpYnJhcnksIGFuZCBpcyBleHBlY3RlZCB0byBiZSBpbnRlZ3JhbC4mbmJzcDsgCkZsb2F0aW5nIHBvaW50IGNvb3JkaW5hdGUgZGF0YSB0eXBlcyBhcmUgbm90IHN1cHBvcnRlZCBieSB0aGUgYWxnb3JpdGhtcyAKaW1wbGVtZW50ZWQgaW4gdGhlIGxpYnJhcnkgZHVlIHRvIHRoZSBmYWN0IHRoYXQgdGhlIGFjaGlldmluZyBmbG9hdGluZyBwb2ludCAKcm9idXN0bmVzcyBpbXBsaWVzIGEgZGlmZmVyZW50IHNldCBvZiBhbGdvcml0aG1zIGFuZCBnZW5lcmFsbHkgcGxhdGZvcm0gc3BlY2lmaWMgCmFzc3VtcHRpb25zIGFib3V0IGZsb2F0aW5nIHBvaW50IHJlcHJlc2VudGF0aW9ucy4mbmJzcDsKRm9yIGFkZGl0aW9uYWwgZGV0YWlsZWQgZGlzY3Vzc2lvbiBvZiB0aGUgbGlicmFyeSBhbmQgaXRzIGltcGxlbWVudGF0aW9uIAppbmNsdWRpbmcgYmVuY2htYXJrIGNvbXBhcmlzb25zIHdpdGggb3RoZXIgb3BlbiBzb3VyY2UgYWx0ZXJuYXRpdmVzIHBsZWFzZSBzZWUgCnRoZSA8YSBocmVmPSJHVExfYm9vc3Rjb24yMDA5LnBkZiI+cGFwZXI8L2E+IGFuZAo8YSBocmVmPSJHVExfYm9vc3Rjb25fZHJhZnQwMy5wZGYiPnByZXNlbnRhdGlvbjwvYT4gZnJvbQo8YSBocmVmPSJodHRwOi8vd3d3LmJvb3N0Y29uLmNvbS9ob21lIj5ib29zdGNvbjwvYT4gMjAwOSBhcyB3ZWxsIGFzIGEgZGV0YWlsZWQKPGEgaHJlZj0iYW5hbHlzaXMuaHRtIj5hbmFseXNpczwvYT4gb2YgdGhlIHJ1bnRpbWUgY29tcGxleGl0eSBvZiAKdGhlIGxpYnJhcnkncyBjb3JlIGFsZ29yaXRobXMuIDwvcD4KPHA+VGhlIGRlc2lnbiBwaGlsb3NvcGh5IGJlaGluZCB0aGUgcG9seWdvbiBsaWJyYXJ5IHdhcyB0byBjcmVhdGUgYW4gQVBJIGZvciAKaW52b2tpbmcgdGhlIGxpYnJhcnkgYWxnb3JpdGhtcyBpdCBwcm92aWRlcyBvbiB1c2VyIGdlb21ldHJ5IGRhdGEgdHlwZXMgdGhhdCBpcyBtYXhpbWFsbHkgCmludHVpdGl2ZSwgbWluaW1hbGx5IGVycm9yLXByb25lIGFuZCBlYXN5IHRvIGludGVncmF0ZSBpbnRvIHByZS1leGlzdGluZyAKYXBwbGljYXRpb25zLiZuYnNwOyBDKystY29uY2VwdHMgYmFzZWQgdGVtcGxhdGUgbWV0YS1wcm9ncmFtbWluZyBjb21iaW5lZCB3aXRoIApnZW5lcmljIG9wZXJhdG9yIG92ZXJsb2FkaW5nIG1lZXRzIHRoZXNlIGRlc2lnbiBnb2FscyB3aXRob3V0IHNhY3JpZmljaW5nIHRoZSAKcnVudGltZSBvciBtZW1vcnkgZWZmaWNpZW5jeSBvZiB0aGUgdW5kZXJseWluZyBhbGdvcml0aG1zLiZuYnNwOyBUaGUgQVBJIGlzIAppbnRlbmRlZCB0byBkZW1vbnN0cmF0ZSB3aGF0IGNvdWxkIGJlIGFjaGlldmVkIHdpdGggZWFzZSBieSBhIEMrKy1jb25jZXB0cyBiYXNlZCAKbGlicmFyeSBpbnRlcmZhY2UsIGJ1dCBpcyBpbXBsZW1lbnRlZCBiYXNlZCBvbiBjdXJyZW50IGxhbmd1YWdlIGZlYXR1cmVzLiZuYnNwOyBUaGlzIEFQSSBtYWtlcyAKdGhlIGZvbGxvd2luZyBjb2RlIHNuaXBwZXQgdGhhdCBvcGVyYXRlcyBvbiBub24tbGlicmFyeSBnZW9tZXRyeSB0eXBlcyBwb3NzaWJsZTo8L3A+CjxwOmNvbG9yc2NoZW1lCiBjb2xvcnM9IiNmZmZmZmYsIzAwMDAwMCwjODA4MDgwLCMwMDAwMDAsI2JiZTBlMywjMzMzMzk5LCMwMDk5OTksIzk5Y2MwMCIvPgoKPGRpdiB2OnNoYXBlPSJfeDAwMDBfczEwMjYiIGNsYXNzPSJPIj4KCTxkaXYgc3R5bGU9InRleHQtYWxpZ246anVzdGlmeTttc28tY2hhci13cmFwOjE7bXNvLWtpbnNva3Utb3ZlcmZsb3c6MSI+CgkJPG5vYnI+CgkJPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiBDb3VyaWVyIE5ldzsgbXNvLWFzY2lpLWZvbnQtZmFtaWx5OiBDb3VyaWVyIE5ldzsgbXNvLWJpZGktZm9udC1mYW1pbHk6IEFyaWFsOyBtc28taGFuc2ktZm9udC1mYW1pbHk6IENvdXJpZXIgTmV3Ij4KCQl2b2lkIGZvbyhsaXN0Jmx0O0NQb2x5Z29uJmd0OyZhbXA7IHJlc3VsdCwgY29uc3QgbGlzdCZsdDtDUG9seWdvbiZndDsmYW1wOyBhLCA8L3NwYW4+PC9ub2JyPjxicj4KCQk8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6IENvdXJpZXIgTmV3Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsKCQk8L3NwYW4+PG5vYnI+CgkJPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiBDb3VyaWVyIE5ldzsgbXNvLWFzY2lpLWZvbnQtZmFtaWx5OiBDb3VyaWVyIE5ldzsgbXNvLWJpZGktZm9udC1mYW1pbHk6IEFyaWFsOyBtc28taGFuc2ktZm9udC1mYW1pbHk6IENvdXJpZXIgTmV3Ij4KCQljb25zdCBsaXN0Jmx0O0NQb2x5Z29uJmd0OyZhbXA7IAoJCWIsIGludCBkZWZsYXRlVmFsdWUpIHsgPC9zcGFuPjwvbm9icj48L2Rpdj4KCTxkaXYgc3R5bGU9InRleHQtYWxpZ246anVzdGlmeTttc28tY2hhci13cmFwOjE7bXNvLWtpbnNva3Utb3ZlcmZsb3c6MSI+CgkJPG5vYnI+CjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogQ291cmllciBOZXc7IG1zby1hc2NpaS1mb250LWZhbWlseTogQ291cmllciBOZXc7IG1zby1iaWRpLWZvbnQtZmFtaWx5OiBBcmlhbDsgbXNvLWhhbnNpLWZvbnQtZmFtaWx5OiBDb3VyaWVyIE5ldyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IAoJCUNCb3VuZGluZ0JveCBkb21haW5FeHRlbnQ7IDwvc3Bhbj48L25vYnI+PC9kaXY+Cgk8ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOmp1c3RpZnk7bXNvLWNoYXItd3JhcDoxO21zby1raW5zb2t1LW92ZXJmbG93OjEiPgoJCTxub2JyPgoJCTxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogQ291cmllciBOZXc7IG1zby1hc2NpaS1mb250LWZhbWlseTogQ291cmllciBOZXc7IG1zby1iaWRpLWZvbnQtZmFtaWx5OiBBcmlhbDsgbXNvLWhhbnNpLWZvbnQtZmFtaWx5OiBDb3VyaWVyIE5ldyI+CgkJPHNwYW4gc3R5bGU9Im1zby1zcGFjZXJ1bjp5ZXMiPiZuYnNwOyA8L3NwYW4+Jm5ic3A7Jm5ic3A7IHVzaW5nIG5hbWVzcGFjZSBib29zdDo6cG9seWdvbjo6b3BlcmF0b3JzOyA8L3NwYW4+PC9ub2JyPjwvZGl2PgoJPGRpdiBzdHlsZT0idGV4dC1hbGlnbjpqdXN0aWZ5O21zby1jaGFyLXdyYXA6MTttc28ta2luc29rdS1vdmVyZmxvdzoxIj4KCQk8bm9icj4KCQk8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6IENvdXJpZXIgTmV3OyBtc28tYXNjaWktZm9udC1mYW1pbHk6IENvdXJpZXIgTmV3OyBtc28tYmlkaS1mb250LWZhbWlseTogQXJpYWw7IG1zby1oYW5zaS1mb250LWZhbWlseTogQ291cmllciBOZXciPgoJCTxzcGFuIHN0eWxlPSJtc28tc3BhY2VydW46eWVzIj4mbmJzcDsgPC9zcGFuPiZuYnNwOyZuYnNwOyAKCQlib29zdDo6cG9seWdvbjo6ZXh0ZW50cyhkb21haW5FeHRlbnQsIGEpOyA8L3NwYW4+PC9ub2JyPjwvZGl2PgoJPGRpdiBzdHlsZT0idGV4dC1hbGlnbjpqdXN0aWZ5O21zby1jaGFyLXdyYXA6MTttc28ta2luc29rdS1vdmVyZmxvdzoxIj4KCQk8bm9icj4KCQk8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6IENvdXJpZXIgTmV3OyBtc28tYXNjaWktZm9udC1mYW1pbHk6IENvdXJpZXIgTmV3OyBtc28tYmlkaS1mb250LWZhbWlseTogQXJpYWw7IG1zby1oYW5zaS1mb250LWZhbWlseTogQ291cmllciBOZXciPgoJCTxzcGFuIHN0eWxlPSJtc28tc3BhY2VydW46eWVzIj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgPC9zcGFuPnJlc3VsdCArPSAoYiAmYW1wOyAKCQlkb21haW5FeHRlbnQpIF4gKGEgLSBkZWZsYXRlVmFsdWUpOyA8L3NwYW4+PC9ub2JyPjwvZGl2PgoJPGRpdiBzdHlsZT0idGV4dC1hbGlnbjpqdXN0aWZ5O21zby1jaGFyLXdyYXA6MTttc28ta2luc29rdS1vdmVyZmxvdzoxIj4KCQk8bm9icj4KCQk8c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6IENvdXJpZXIgTmV3OyBtc28tYXNjaWktZm9udC1mYW1pbHk6IENvdXJpZXIgTmV3OyBtc28tYmlkaS1mb250LWZhbWlseTogQXJpYWw7IG1zby1oYW5zaS1mb250LWZhbWlseTogQ291cmllciBOZXciPgoJCX08L3NwYW4+PC9ub2JyPjwvZGl2Pgo8L2Rpdj4KPHA+SW4gdGhlIGNvZGUgc25pcHBldCBhYm92ZSB0aGUgaHlwb3RoZXRpY2FsIHBvbHlnb24gdHlwZSBDUG9seWdvbiBoYXMgYmVlbiAKbWFwcGVkIHRvIHRoZSBsaWJyYXJ5IHBvbHlnb24gY29uY2VwdCBhbmQgaXMgdXNlZCB3aXRoIGxpYnJhcnkgQVBJcyB0byBjbGlwIApwb2x5Z29uIGxpc3QgPGk+YjwvaT4gYWdhaW5zdCB0aGUgYm91bmRpbmcgYm94IG9mIHBvbHlnb24gbGlzdCA8aT5hPC9pPiBhbmQgYXBwbHkgdGhlIApkaXNqb2ludC11bmlvbiBvZiB0aGF0IHdpdGggcG9seWdvbiBsaXN0IDxpPmE8L2k+IGRlZmxhdGVkIGJ5IHNvbWUgaW50ZWdlciBhbW91bnQuJm5ic3A7IApUaGUgZW5kIHJlc3VsdCBpcyBhY2N1bXVsYXRlZCBpbnRvIGEgbGlzdCBvZiBwb2x5Z29ucyB3aXRoIGEgdW5pb24gb3BlcmF0aW9uLiZuYnNwOyAKSXQgaXMgY29uc2lkZXJhYmx5IG1vcmUgdHlwaW5nIHRvIGRlc2NyaWJlIHRoaXMgdXNhZ2Ugb2YgdGhlIEFQSSB0aGFuIHRvIGNvZGUgCml0LCBhbmQgdGhlIGRlc2NyaXB0aW9uIGlzIG5vdCBtdWNoIGNsZWFyZXIgdGhhbiB0aGUgY29kZSBpdHNlbGYuJm5ic3A7IApBIHBpY3R1cmUgaXMgd29ydGggYSB0aG91c2FuZCB3b3Jkcy48L3A+CjxwPjxpbWcgYm9yZGVyPSIwIiBzcmM9ImltYWdlcy9mb28uUE5HIiB3aWR0aD0iNDMyIiBoZWlnaHQ9IjM3MSI+PC9wPgo8cD5JbiBCb29zdC5Qb2x5Z29uIG9wZXJhdGlvbnMgc3VjaCBhcyB0aG9zZSBzaG93biBhYm92ZSBhcmUgZnJlZSBmdW5jdGlvbnMgbmFtZWQgZm9yIHdoYXQgdGhleSBkbywgb3IgYXJlIG92ZXJsb2FkcyBvZiBDKysgb3BlcmF0b3JzIHRoYXQgbWFrZSBpdCAKZWFzeSB0byBpbmZlciBmcm9tIHJlYWRpbmcgdGhlIGNvZGUgd2hhdCB0byBleHBlY3QuJm5ic3A7IE9wZXJhdG9ycyBhcmUgCmNvbnRhaW5lZCBpbiB0aGUgbmFtZXNwYWNlIDxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij5ib29zdDo6cG9seWdvbjo6b3BlcmF0b3JzPC9mb250PiAKc28gdGhhdCB0aGV5IGNhbiBiZSB1c2VkIG91dHNpZGUgdGhlIDxmb250IGZhY2U9IkNvdXJpZXIgTmV3Ij5ib29zdDo6cG9seWdvbjwvZm9udD4gCm5hbWVzcGFjZSB3aXRob3V0IGJyaW5naW5nIGluIHRoZSBlbnRpcmUgPGZvbnQgZmFjZT0iQ291cmllciBOZXciPmJvb3N0Ojpwb2x5Z29uPC9mb250PiAKbmFtZXNwYWNlLiZuYnNwOyBGb2xsb3dpbmcgdGhlIApwcmluY2lwbGUgb2YgbGVhc3QgYXN0b25pc2htZW50LCB0aGUgaW5mZXJyZWQgYmVoYXZpb3Igc2hvdWxkIGdlbmVyYWxseSBtYXRjaCAKdGhlIGFjdHVhbCBiZWhhdmlvci4mbmJzcDsgQ29udmVudGlvbnMgc3VjaCBhcyBhcmd1bWVudCBvcmRlcmluZyAob3V0cHV0IAphcmd1bWVudHMgY29tZSBmaXJzdCkgYW5kIGNvbnNpc3RlbnRseSBhcHBseWluZyB0aGUgc2FtZSBzZW1hbnRpY3MgYWNyb3NzIApkaWZmZXJlbnQgZnVuY3Rpb25zIChhY2N1bXVsYXRlKSByZWR1Y2VzIHRoZSBsZWFybmluZyBjdXJ2ZSBmb3IgbmV3IHVzZXJzIHdoaWxlIHJlZHVjaW5nIHRoZSAKbmVlZCB0byBtZW1vcml6ZSBzZW1hbnRpY3MgYW5kIGFyZ3VtZW50IG9yZGVyaW5nIG9mIG1hbnkgZGlmZmVyZW50IGZ1bmN0aW9ucyBmb3IgCmFkdmFuY2VkIHVzZXJzLjwvcD4KPHA+V2hpbGUgdGhlIGludGVybmFsIGxpYnJhcnkgY29kZSB0aGF0IGltcGxlbWVudHMgdGhpcyBBUEkgaXMgdXN1YWxseSBjb21wbGV4IGFuZCAKY3J5cHRpYyBkdWUgdG8gaGVhdnkgdXNlIG9mIHRlbXBsYXRlIG1ldGEtcHJvZ3JhbW1pbmcsIHRoZSBhcHBsaWNhdGlvbiBvZiB0aGUgbGlicmFyeSAKQVBJIGluIHVzZXIgY29kZSBpcyB1c3VhbGx5IHNpbXBsZSBhbmQgY2xlYXIgYmVjYXVzZSBpdCBpcyBmcmVlIG9mIGFueSAKZXh0cmFuZW91cyBzeW50YXguJm5ic3A7IFRoZSBvbmUgZXhjZXB0aW9uIHRvIHRoaXMgaXMgdGhlIG1hcHBpbmcgb2YgdXNlciB0eXBlcyAKdG8gbGlicmFyeSBjb25jZXB0cywgd2hpY2ggbmVjZXNzaXRhdGVzIHRoYXQgdGhlIHVzZXIgcGVyZm9ybSBzb21lIHNpbXBsZSAKdGVtcGxhdGUgcHJvZ3JhbW1pbmcgYW5kIHVuZGVyc3RhbmQgc29tZSBvZiB0aGUgaW50ZXJuYWxzIG9mIGhvdyB0aGUgbGlicmFyeSAKY29uY2VwdCB0eXBlIHN5c3RlbSB3b3Jrcy4mbmJzcDsgVGhlIGV4YW1wbGVzIGJlbG93IHNob3VsZCBhaWQgdGhlIHVzZXIgaW4gCnBlcmZvcm1pbmcgdGhlc2UgcHJvZ3JhbW1pbmcgdGFza3MuPC9wPgo8dWw+Cgo8bGk+RXhhbXBsZSBmaWxlczoKICAgIDx1bD4KICAgICAgICA8bGk+PGEgaHJlZj0iZ3RsX3BvaW50X3VzYWdlLmh0bSI+cG9pbnRfdXNhZ2UuY3BwPC9hPiBVc2luZyB0aGUgCgkJbGlicmFyeSBwcm92aWRlZCBwb2ludCBkYXRhIHR5cGUgYW5kIGZ1bmN0aW9uczwvbGk+CgkJPGxpPjxhIGhyZWY9Imd0bF9jdXN0b21fcG9pbnQuaHRtIj5jdXN0b21fcG9pbnQuY3BwPC9hPiBNYXBwaW5nIGEgCgkJdXNlciBkZWZpbmVkIHBvaW50IGNsYXNzIHRvIHRoZSBsaWJyYXJ5IHBvaW50X2NvbmNlcHQ8L2xpPgogICAgICAgIDxsaT48YSBocmVmPSJndGxfcG9seWdvbl91c2FnZS5odG0iPnBvbHlnb25fdXNhZ2UuY3BwPC9hPiBVc2luZyAKCQl0aGUgbGlicmFyeSBwcm92aWRlZCBwb2x5Z29uIGRhdGEgdHlwZXMgYW5kIGZ1bmN0aW9uczwvbGk+CiAgICAgICAgPGxpPjxhIGhyZWY9Imd0bF9jdXN0b21fcG9seWdvbi5odG0iPmN1c3RvbV9wb2x5Z29uLmNwcDwvYT4gTWFwcGluZyBhIAoJCXVzZXIgZGVmaW5lZCBwb2x5Z29uIGNsYXNzIHRvIHRoZSBsaWJyYXJ5IHBvbHlnb25fY29uY2VwdDwvbGk+CiAgICAgICAgPGxpPjxhIGhyZWY9Imd0bF9wb2x5Z29uX3NldF91c2FnZS5odG0iPnBvbHlnb25fc2V0X3VzYWdlLmNwcDwvYT4gVXNpbmcgCgkJdGhlIGxpYnJhcnkgcHJvdmlkZWQgcG9seWdvbiBzZXQgZGF0YSB0eXBlcyBhbmQgZnVuY3Rpb25zPC9saT4KCQk8bGk+PGEgaHJlZj0iZ3RsX2N1c3RvbV9wb2x5Z29uX3NldC5odG0iPmN1c3RvbV9wb2x5Z29uX3NldC5jcHA8L2E+IAoJCU1hcHBpbmcgYSB1c2VyIGRlZmluZWQgY2xhc3MgdG8gdGhlIGxpYnJhcnkgcG9seWdvbl9zZXRfY29uY2VwdDwvbGk+CgkJPGxpPjxhIGhyZWY9Imd0bF9jb25uZWN0aXZpdHlfZXh0cmFjdGlvbl91c2FnZS5odG0iPmNvbm5lY3Rpdml0eV9leHRyYWN0aW9uX3VzYWdlLmNwcDwvYT4gCgkJVXNpbmcgdGhlIGNvbm5lY3Rpdml0eSBleHRyYWN0aW9uIGFsZ29yaXRobSB0byBidWlsZCBhIGNvbm5lY3Rpdml0eSAKCQlncmFwaCBvbiBwb2x5Z29uczwvbGk+CgkJPGxpPjxhIGhyZWY9Imd0bF9wcm9wZXJ0eV9tZXJnZV91c2FnZS5odG0iPnByb3BlcnR5X21lcmdlX3VzYWdlLmNwcDwvYT4gCgkJVXNpbmcgdGhlIG4tbGF5ZXIgbWFwLW92ZXJsYXkgYWxnb3JpdGhtIG9uIHBvbHlnb24gZGF0YTwvbGk+CiAgICA8L3VsPgoKPGxpPlR1dG9yaWFsczogCjx1bD4KCTxsaT48YSBocmVmPSJndGxfdHV0b3JpYWwuaHRtIj5MYXlvdXQgVmVyc3VzIFNjaGVtYXRpYzwvYT4gTGVhcm4gaG93IHRvIAoJYXBwbHkgQm9vc3QuUG9seWdvbiBjYXBhYmlsaXRpZXMgdG8gaW1wbGVtZW50IGEgc2ltcGxpZmllZCBjaXJjdWl0IAoJZXh0cmFjdGlvbiBhcHBsaWNhdGlvbjwvbGk+Cgk8bGk+PGEgaHJlZj0iZ3RsX21pbmtvd3NraV90dXRvcmlhbC5odG0iPk1pbmtvd3NraSBTdW08L2E+IExlYXJuIGhvdyB0byAKCWFwcGx5IEJvb3N0LlBvbHlnb24gY2FwYWJpbGl0aWVzIHRvIGltcGxlbWVudCBNaW5rb3dza2kgc3VtIG9mIHBvbHlnb24gc2V0czwvbGk+CjwvdWw+Cgo8L3VsPgoKCjxwPldlIHdvdWxkIGxpa2UgdG8gdGhhbms6IFRob21hcyBLbGltcGVsLCBGcmFuayBNb3JpIEhlc3MsIEJhcmVuZCBHZWhyZWxzLCAKQW5kcmVhcyBGYWJyaSwgSmVmZnJleSBIZWxscnVuZywgVGltIEtlaXR0LCBNYXJrdXMgV2VybGUsIFBhdWwgQS4gQnJpc3RvdywgClJvYmVydCBTdGV3YXJ0LCBNYXRoaWFzIEdhdW5hcmQsIE1pY2hhZWwgRmF3Y2V0dCwgU3RldmVuIFdhdGFuYWJlLCBKb2FjaGltIApGYXVsaGFiZXIsIEpvaG4gQnl0aGV3YXksIFNlYmFzdGlhbiBSZWRsLCBNaWthIEhlaXNrYW5lbiwgSm9obiBQaGlsbGlwcywgS2FpIApCZW5uZG9yZiwgSGFydG11dCBLYWlzZXIsIEFyYXNoIFBhcnRvdywgTWF1cml6aW8gVml0YWxlLCBCcmFuZG9uIEtvaG4sIERhdmlkIApBYnJhaGFtcywgR29yZG9uIFdvb2RodWxsLCBEYW5pZWwgSmFtZXMsIEpvaG4gTWFkZG9jaywgVG9tIEJyaW5rbWFuLCBCbyBQZXJzc29uLCAKTWF0ZXVzeiBMb3Nrb3QsIENocmlzdGlhbiBIZW5uaW5nLCBKZWFuLVNlYmFzdGllbiBTdG9lemVsLCBmb3IgcHJvdmlkaW5nIApmZWVkYmFjayBhbmQgb3IgZm9ybWFsIHJldmlldyBvZiB0aGUgbGlicmFyeSBhcyBwYXJ0IG9mIHRoZSBib29zdCBzdWJtaXNzaW9uIApwcm9jZXNzIGFuZCBGZXJuYW5kbyBDYWNjaW9sYSBmb3IgZ3JhY2lvdXNseSBzZXJ2aW5nIGFzIHJldmlldyBtYW5hZ2VyLjwvcD4KCgoJPHRyPgo8dGQgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYigyMzgsIDIzOCwgMjM4KTsiIG5vd3JhcD0iMSIgdmFsaWduPSJ0b3AiPgogICAgJm5ic3A7PC90ZD4KPHRkIHN0eWxlPSJwYWRkaW5nLWxlZnQ6IDEwcHg7IHBhZGRpbmctcmlnaHQ6IDEwcHg7IHBhZGRpbmctYm90dG9tOiAxMHB4OyIgdmFsaWduPSJ0b3AiIHdpZHRoPSIxMDAlIj4KCgo8dGFibGUgY2xhc3M9ImRvY2luZm8iIHJ1bGVzPSJub25lIiBmcmFtZT0idm9pZCIgaWQ9InRhYmxlMiI+Cgk8Y29sZ3JvdXA+CgkJPGNvbCBjbGFzcz0iZG9jaW5mby1uYW1lIj48Y29sIGNsYXNzPSJkb2NpbmZvLWNvbnRlbnQiPgoJPC9jb2xncm91cD4KCTx0Ym9keSB2QWxpZ249InRvcCI+CgkJPHRyPgoJCQk8dGggY2xhc3M9ImRvY2luZm8tbmFtZSI+Q29weXJpZ2h0OjwvdGg+CgkJCTx0ZD5Db3B5cmlnaHQgqSBJbnRlbCBDb3Jwb3JhdGlvbiAyMDA4LTIwMTAuPC90ZD4KCQk8L3RyPgoJCTx0ciBjbGFzcz0iZmllbGQiPgoJCQk8dGggY2xhc3M9ImRvY2luZm8tbmFtZSI+TGljZW5zZTo8L3RoPgoJCQk8dGQgY2xhc3M9ImZpZWxkLWJvZHkiPkRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBCb29zdCBTb2Z0d2FyZSBMaWNlbnNlLCAKCQkJVmVyc2lvbiAxLjAuIChTZWUgYWNjb21wYW55aW5nIGZpbGUgPHR0IGNsYXNzPSJsaXRlcmFsIj4KCQkJPHNwYW4gY2xhc3M9InByZSI+TElDRU5TRV8xXzAudHh0PC9zcGFuPjwvdHQ+IG9yIGNvcHkgYXQKCQkJPGEgY2xhc3M9InJlZmVyZW5jZSIgdGFyZ2V0PSJfdG9wIiBocmVmPSJodHRwOi8vd3d3LmJvb3N0Lm9yZy9MSUNFTlNFXzFfMC50eHQiPgoJCQlodHRwOi8vd3d3LmJvb3N0Lm9yZy9MSUNFTlNFXzFfMC50eHQ8L2E+KTwvdGQ+CgkJPC90cj4KPC90YWJsZT4KCjwvaHRtbD4=