PGh0bWw+CjxoZWFkPgoJPHRpdGxlPkJPT1NUX1BQX0FSUkFZX1JFUExBQ0U8L3RpdGxlPgoJPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iLi4vc3R5bGVzLmNzcyI+CjwvaGVhZD4KPGJvZHk+Cgk8ZGl2IHN0eWxlPSJtYXJnaW4tbGVmdDogIDBweDsiPgoJCVRoZSA8Yj5CT09TVF9QUF9BUlJBWV9SRVBMQUNFPC9iPiBtYWNybyByZXBsYWNlcyBhbiBlbGVtZW50IGluIGFuIDxpPmFycmF5PC9pPi4KCTwvZGl2PgoJPGg0PlVzYWdlPC9oND4KCQk8ZGl2IGNsYXNzPSJjb2RlIj4KCQkJPGI+Qk9PU1RfUFBfQVJSQVlfUkVQTEFDRTwvYj4oPGk+YXJyYXk8L2k+LCA8aT5pPC9pPiwgPGk+ZWxlbTwvaT4pCgkJPC9kaXY+Cgk8aDQ+QXJndW1lbnRzPC9oND4KCQk8ZGw+CgkJCTxkdD5hcnJheTwvZHQ+CgkJCTxkZD4KCQkJCUFuIDxpPmFycmF5PC9pPiB0byByZXBsYWNlIGFuIGVsZW1lbnQgaW4uCgkJCTwvZGQ+CgkJCTxkdD5pPC9kdD4KCQkJPGRkPgoJCQkJVGhlIHplcm8tYmFzZWQgcG9zaXRpb24gaW4gPGk+YXJyYXk8L2k+IG9mIHRoZSBlbGVtZW50IHRvIGJlIHJlcGxhY2VkLiZuYnNwOwoJCQkJVmFsaWQgdmFsdWVzIHJhbmdlIGZyb20gPGk+MDwvaT4gdG8gPGI+Qk9PU1RfUFBfQVJSQVlfU0laRTwvYj4oPGk+YXJyYXk8L2k+KSAtIDxpPjE8L2k+LgoJCQk8L2RkPgoJCQk8ZHQ+ZWxlbTwvZHQ+CgkJCTxkZD4KCQkJCVRoZSByZXBsYWNlbWVudCBlbGVtZW50LgoJCQk8L2RkPgoJCTwvZGw+Cgk8aDQ+UmVtYXJrczwvaDQ+CgkJPGRpdj4KCQkJVGhpcyBtYWNybyB1c2VzIDxiPkJPT1NUX1BQX1dISUxFPC9iPiBpbnRlcmFsbHkuJm5ic3A7CgkJCVRoZXJlZm9yZSwgdG8gdXNlIHRoZSA8aT5kPC9pPiBwYXJhbWV0ZXIgcGFzc2VkIGZyb20gb3RoZXIgbWFjcm9zIHRoYXQgdXNlIDxiPkJPT1NUX1BQX1dISUxFPC9iPiwKCQkJc2VlIDxiPkJPT1NUX1BQX0FSUkFZX1JFUExBQ0VfRDwvYj4uCgkJPC9kaXY+Cgk8aDQ+U2VlIEFsc288L2g0PgoJCTx1bD4KCQkJPGxpPjxhIGhyZWY9ImFycmF5X3JlcGxhY2VfZC5odG1sIj5CT09TVF9QUF9BUlJBWV9SRVBMQUNFX0Q8L2E+PC9saT4KCQk8L3VsPgoJPGg0PlJlcXVpcmVtZW50czwvaDQ+CgkJPGRpdj4KCQkJPGI+SGVhZGVyOjwvYj4gJm5ic3A7PGEgaHJlZj0iLi4vaGVhZGVycy9hcnJheS9yZXBsYWNlLmh0bWwiPiZsdDtib29zdC9wcmVwcm9jZXNzb3IvYXJyYXkvcmVwbGFjZS5ocHAmZ3Q7PC9hPgoJCTwvZGl2PgoJPGg0PlNhbXBsZSBDb2RlPC9oND4KPGRpdj48cHJlPgojaW5jbHVkZSAmbHQ7PGEgaHJlZj0iLi4vaGVhZGVycy9hcnJheS9yZXBsYWNlLmh0bWwiPmJvb3N0L3ByZXByb2Nlc3Nvci9hcnJheS9yZXBsYWNlLmhwcDwvYT4mZ3Q7CgojZGVmaW5lIEFSUkFZICgzLCAoYSwgeCwgYykpCgo8YSBocmVmPSJhcnJheV9yZXBsYWNlLmh0bWwiPkJPT1NUX1BQX0FSUkFZX1JFUExBQ0U8L2E+KEFSUkFZLCAxLCBiKSAvLyBleHBhbmRzIHRvICgzLCAoYSwgYiwgYykpCjwvcHJlPjwvZGl2PgoJPGhyIHNpemU9IjEiPgoJPGRpdiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDBweDsiPgoJCTxpPqkgQ29weXJpZ2h0IDxhIGhyZWY9Imh0dHA6Ly93d3cuaG91c2VtYXJxdWUuY29tIiB0YXJnZXQ9Il90b3AiPkhvdXNlbWFycXVlIE95PC9hPiAyMDAyPC9pPgoJCTwvYnI+PGk+qSBDb3B5cmlnaHQgUGF1bCBNZW5zb25pZGVzIDIwMDI8L2k+Cgk8L2Rpdj4KCTxkaXYgc3R5bGU9Im1hcmdpbi1sZWZ0OiAwcHg7Ij4KCQk8cD48c21hbGw+RGlzdHJpYnV0ZWQgdW5kZXIgdGhlIEJvb3N0IFNvZnR3YXJlIExpY2Vuc2UsIFZlcnNpb24gMS4wLiAoU2VlCgkJYWNjb21wYW55aW5nIGZpbGUgPGEgaHJlZj0iLi4vLi4vLi4vLi4vTElDRU5TRV8xXzAudHh0Ij5MSUNFTlNFXzFfMC50eHQ8L2E+IG9yCgkJY29weSBhdCA8YSBocmVmPQoJCSJodHRwOi8vd3d3LmJvb3N0Lm9yZy9MSUNFTlNFXzFfMC50eHQiPnd3dy5ib29zdC5vcmcvTElDRU5TRV8xXzAudHh0PC9hPik8L3NtYWxsPjwvcD4KCTwvZGl2Pgo8L2JvZHk+CjwvaHRtbD4K