PGh0bWw+CjxoZWFkPgoJPHRpdGxlPkJPT1NUX1BQX0xFU1NfRVFVQUxfRDwvdGl0bGU+Cgk8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSIuLi9zdHlsZXMuY3NzIj4KPC9oZWFkPgo8Ym9keT4KCTxkaXYgc3R5bGU9Im1hcmdpbi1sZWZ0OiAgMHB4OyI+CgkJVGhlIDxiPkJPT1NUX1BQX0xFU1NfRVFVQUxfRDwvYj4gbWFjcm8gY29tcGFyZXMgdHdvIHZhbHVlcyBmb3IgZXF1YWxpdHkgb3IgbGVzc2VyIG1hZ25pdHVkZS4mbmJzcDsKCQlJdCByZWVudGVycyA8Yj5CT09TVF9QUF9XSElMRTwvYj4gd2l0aCBtYXhpbXVtIGVmZmljaWVuY3kuCgk8L2Rpdj4KCTxoND5Vc2FnZTwvaDQ+CgkJPGRpdiBjbGFzcz0iY29kZSI+CgkJCTxiPkJPT1NUX1BQX0xFU1NfRVFVQUxfRDwvYj4oPGk+ZDwvaT4sIDxpPng8L2k+LCA8aT55PC9pPikKCQk8L2Rpdj4KCTxoND5Bcmd1bWVudHM8L2g0PgoJCTxkbD4KCQkJPGR0PmQ8L2R0PgoJCQk8ZGQ+CgkJCQlUaGUgbmV4dCBhdmFpbGFibGUgPGI+Qk9PU1RfUFBfV0hJTEU8L2I+IGl0ZXJhdGlvbi4mbmJzcDsKCQkJPC9kZD4KCQkJPGR0Png8L2R0PgoJCQk8ZGQ+CgkJCQlUaGUgbGVmdCBvcGVyYW5kIG9mIHRoZSBjb21wYXJpc29uLiZuYnNwOwoJCQkJVmFsaWQgdmFsdWVzIHJhbmdlIGZyb20gPGk+MDwvaT4gdG8gPGI+Qk9PU1RfUFBfTElNSVRfTUFHPC9iPi4KCQkJPC9kZD4KCQkJPGR0Pnk8L2R0PgoJCQk8ZGQ+CgkJCQlUaGUgcmlnaHQgb3BlcmFuZCBvZiB0aGUgY29tcGFyaXNvbi4mbmJzcDsKCQkJCVZhbGlkIHZhbHVlcyByYW5nZSBmcm9tIDxpPjA8L2k+IHRvIDxiPkJPT1NUX1BQX0xJTUlUX01BRzwvYj4uCgkJCTwvZGQ+CgkJPC9kbD4KCTxoND5SZW1hcmtzPC9oND4KCQk8ZGl2PgoJCQlJZiA8aT54PC9pPiBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gPGk+eTwvaT4sIHRoaXMgbWFjcm8gZXhwYW5kcyB0byA8aT4xPC9pPi4mbmJzcDsKCQkJT3RoZXJ3aXNlLCBpdCBleHBhbmRzIHRvIDxpPjA8L2k+LgoJCTwvZGl2PgoJPGg0PlNlZSBBbHNvPC9oND4KCQk8dWw+CgkJCTxsaT48YSBocmVmPSJsZXNzX2VxdWFsLmh0bWwiPkJPT1NUX1BQX0xFU1NfRVFVQUw8L2E+PC9saT4KCQkJPGxpPjxhIGhyZWY9ImxpbWl0X21hZy5odG1sIj5CT09TVF9QUF9MSU1JVF9NQUc8L2E+PC9saT4KCQk8L3VsPgoJPGg0PlJlcXVpcmVtZW50czwvaDQ+CgkJPGRpdj4KCQkJPGI+SGVhZGVyOjwvYj4gJm5ic3A7PGEgaHJlZj0iLi4vaGVhZGVycy9jb21wYXJpc29uL2xlc3NfZXF1YWwuaHRtbCI+Jmx0O2Jvb3N0L3ByZXByb2Nlc3Nvci9jb21wYXJpc29uL2xlc3NfZXF1YWwuaHBwJmd0OzwvYT4KCQk8L2Rpdj4KCTxoND5TYW1wbGUgQ29kZTwvaDQ+CjxkaXY+PHByZT4KI2luY2x1ZGUgJmx0OzxhIGhyZWY9Ii4uL2hlYWRlcnMvY29tcGFyaXNvbi9sZXNzX2VxdWFsLmh0bWwiPmJvb3N0L3ByZXByb2Nlc3Nvci9jb21wYXJpc29uL2xlc3NfZXF1YWwuaHBwPC9hPiZndDsKI2luY2x1ZGUgJmx0OzxhIGhyZWY9Ii4uL2hlYWRlcnMvbGlzdC9maWx0ZXIuaHRtbCI+Ym9vc3QvcHJlcHJvY2Vzc29yL2xpc3QvZmlsdGVyLmhwcDwvYT4mZ3Q7CgojZGVmaW5lIExJU1QgKDEsICgyLCAoMywgKDQsICg1LCA8YSBocmVmPSJuaWwuaHRtbCI+Qk9PU1RfUFBfTklMPC9hPikpKSkpCgojZGVmaW5lIFBSRUQoZCwgXywgbnVtKSA8YSBocmVmPSJsZXNzX2VxdWFsX2QuaHRtbCI+Qk9PU1RfUFBfTEVTU19FUVVBTF9EPC9hPihkLCBudW0sIDQpCgo8YSBocmVmPSJsaXN0X2ZpbHRlci5odG1sIj5CT09TVF9QUF9MSVNUX0ZJTFRFUjwvYT4oUFJFRCwgbmlsLCBMSVNUKQogICAvLyBleHBhbmRzIHRvICgxLCAoMiwgKDMsICg0LCA8YSBocmVmPSJuaWwuaHRtbCI+Qk9PU1RfUFBfTklMPC9hPikpKSkKPC9wcmU+PC9kaXY+Cgk8aHIgc2l6ZT0iMSI+Cgk8ZGl2IHN0eWxlPSJtYXJnaW4tbGVmdDogMHB4OyI+CgkJPGk+qSBDb3B5cmlnaHQgPGEgaHJlZj0iaHR0cDovL3d3dy5ob3VzZW1hcnF1ZS5jb20iIHRhcmdldD0iX3RvcCI+SG91c2VtYXJxdWUgT3k8L2E+IDIwMDI8L2k+CgkJPC9icj48aT6pIENvcHlyaWdodCBQYXVsIE1lbnNvbmlkZXMgMjAwMjwvaT4KCTwvZGl2PgoJPGRpdiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDBweDsiPgoJCTxwPjxzbWFsbD5EaXN0cmlidXRlZCB1bmRlciB0aGUgQm9vc3QgU29mdHdhcmUgTGljZW5zZSwgVmVyc2lvbiAxLjAuIChTZWUKCQlhY2NvbXBhbnlpbmcgZmlsZSA8YSBocmVmPSIuLi8uLi8uLi8uLi9MSUNFTlNFXzFfMC50eHQiPkxJQ0VOU0VfMV8wLnR4dDwvYT4gb3IKCQljb3B5IGF0IDxhIGhyZWY9CgkJImh0dHA6Ly93d3cuYm9vc3Qub3JnL0xJQ0VOU0VfMV8wLnR4dCI+d3d3LmJvb3N0Lm9yZy9MSUNFTlNFXzFfMC50eHQ8L2E+KTwvc21hbGw+PC9wPgoJPC9kaXY+CjwvYm9keT4KPC9odG1sPgo=