PGh0bWw+CjxoZWFkPgoJPHRpdGxlPkJPT1NUX1BQX0lGPC90aXRsZT4KCTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii4uL3N0eWxlcy5jc3MiPgo8L2hlYWQ+Cjxib2R5PgoJPGRpdiBzdHlsZT0ibWFyZ2luLWxlZnQ6ICAwcHg7Ij4KCQlUaGUgPGI+Qk9PU1RfUFBfSUY8L2I+IG1hY3JvIGNob29zZXMgYmV0d2VlbiB0byB2YWx1ZXMgYmFzZWQgb24gYSBsb2dpY2FsIGNvbmRpdGlvbi4KCTwvZGl2PgoJPGg0PlVzYWdlPC9oND4KCQk8ZGl2IGNsYXNzPSJjb2RlIj4KCQkJPGI+Qk9PU1RfUFBfSUY8L2I+KDxpPmNvbmQ8L2k+LCA8aT50PC9pPiwgPGk+ZjwvaT4pCgkJPC9kaXY+Cgk8aDQ+QXJndW1lbnRzPC9oND4KCQk8ZGw+CgkJCTxkdD5jb25kPC9kdD4KCQkJPGRkPgoJCQkJVGhlIGNvbmRpdGlvbiB0aGF0IGRldGVybWluZXMgaWYgdGhlIHJlc3VsdCBpcyA8aT5leHByPC9pPiBvciBub3RoaW5nLiZuYnNwOwoJCQkJVmFsaWQgdmFsdWVzIHJhbmdlIGZyb20gPGk+MDwvaT4gdG8gPGI+Qk9PU1RfUFBfTElNSVRfTUFHPC9iPi4KCQkJPC9kZD4KCQkJPGR0PnQ8L2R0PgoJCQk8ZGQ+CgkJCQlUaGUgcmVzdWx0IG9mIHRoZSBleHBhbnNpb24gaWYgPGk+Y29uZDwvaT4gaXMgbm9uLXplcm8uCgkJCTwvZGQ+CgkJCTxkdD5mPC9kdD4KCQkJPGRkPgoJCQkJVGhlIHJlc3VsdCBvZiB0aGUgZXhwYW5zaW9uIGlmIDxpPmNvbmQ8L2k+IGlzIDxpPjA8L2k+LgoJCQk8L2RkPgoJCTwvZGw+Cgk8aDQ+UmVtYXJrczwvaDQ+CgkJPGRpdj4KCQkJVGhpcyBtYWNybyBwZXJmb3JtcyBhIGJvb2xlYW4gY29udmVyc2lvbiBvbiBpdHMgZmlyc3QgYXJndW1lbnQuJm5ic3A7CgkJCUlmIHRoYXQgY29udmVyc2lvbiBpcyB1bm5lY2Vzc2FyeSwgdXNlIDxiPkJPT1NUX1BQX0lJRjwvYj4gaW5zdGVhZC4KCQk8L2Rpdj4KCTxoND5TZWUgQWxzbzwvaDQ+CgkJPHVsPgoJCQk8bGk+PGEgaHJlZj0iaWlmLmh0bWwiPkJPT1NUX1BQX0lJRjwvYT48L2xpPgoJCQk8bGk+PGEgaHJlZj0ibGltaXRfbWFnLmh0bWwiPkJPT1NUX1BQX0xJTUlUX01BRzwvYT48L2xpPgoJCTwvdWw+Cgk8aDQ+UmVxdWlyZW1lbnRzPC9oND4KCQk8ZGl2PgoJCQk8Yj5IZWFkZXI6PC9iPiAmbmJzcDs8YSBocmVmPSIuLi9oZWFkZXJzL2NvbnRyb2wvaWYuaHRtbCI+Jmx0O2Jvb3N0L3ByZXByb2Nlc3Nvci9jb250cm9sL2lmLmhwcCZndDs8L2E+CgkJPC9kaXY+Cgk8aDQ+U2FtcGxlIENvZGU8L2g0Pgo8ZGl2PjxwcmU+CiNpbmNsdWRlICZsdDs8YSBocmVmPSIuLi9oZWFkZXJzL2NvbnRyb2wvaWYuaHRtbCI+Ym9vc3QvcHJlcHJvY2Vzc29yL2NvbnRyb2wvaWYuaHBwPC9hPiZndDsKCjxhIGhyZWY9ImlmLmh0bWwiPkJPT1NUX1BQX0lGPC9hPigxMCwgYSwgYikgLy8gZXhwYW5kcyB0byBhCjxhIGhyZWY9ImlmLmh0bWwiPkJPT1NUX1BQX0lGPC9hPigwLCBhLCBiKSAvLyBleHBhbmRzIHRvIGIKPC9wcmU+PC9kaXY+Cgk8aHIgc2l6ZT0iMSI+Cgk8ZGl2IHN0eWxlPSJtYXJnaW4tbGVmdDogMHB4OyI+CgkJPGk+qSBDb3B5cmlnaHQgPGEgaHJlZj0iaHR0cDovL3d3dy5ob3VzZW1hcnF1ZS5jb20iIHRhcmdldD0iX3RvcCI+SG91c2VtYXJxdWUgT3k8L2E+IDIwMDI8L2k+CgkJPC9icj48aT6pIENvcHlyaWdodCBQYXVsIE1lbnNvbmlkZXMgMjAwMjwvaT4KCTwvZGl2PgoJPGRpdiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDBweDsiPgoJCTxwPjxzbWFsbD5EaXN0cmlidXRlZCB1bmRlciB0aGUgQm9vc3QgU29mdHdhcmUgTGljZW5zZSwgVmVyc2lvbiAxLjAuIChTZWUKCQlhY2NvbXBhbnlpbmcgZmlsZSA8YSBocmVmPSIuLi8uLi8uLi8uLi9MSUNFTlNFXzFfMC50eHQiPkxJQ0VOU0VfMV8wLnR4dDwvYT4gb3IKCQljb3B5IGF0IDxhIGhyZWY9CgkJImh0dHA6Ly93d3cuYm9vc3Qub3JnL0xJQ0VOU0VfMV8wLnR4dCI+d3d3LmJvb3N0Lm9yZy9MSUNFTlNFXzFfMC50eHQ8L2E+KTwvc21hbGw+PC9wPgoJPC9kaXY+CjwvYm9keT4KPC9odG1sPgo=