PGh0bWw+CjxoZWFkPgoJPHRpdGxlPkJPT1NUX1BQX0xJU1RfRk9MRF9SSUdIVF8yTkQ8L3RpdGxlPgoJPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iLi4vc3R5bGVzLmNzcyI+CjwvaGVhZD4KPGJvZHk+Cgk8ZGl2IHN0eWxlPSJtYXJnaW4tbGVmdDogIDBweDsiPgoJCVRoZSA8Yj5CT09TVF9QUF9MSVNUX0ZPTERfUklHSFRfMk5EPC9iPiBtYWNybyBmb2xkcyAob3IgYWNjdW11bGF0ZXMpIHRoZSBlbGVtZW50cyBvZiBhIDxpPmxpc3Q8L2k+IHJpZ2h0LXRvLWxlZnQuCgk8L2Rpdj4KCTxoND5Vc2FnZTwvaDQ+CgkJPGRpdiBjbGFzcz0iY29kZSI+CgkJCTxiPkJPT1NUX1BQX0xJU1RfRk9MRF9SSUdIVF8yTkQ8L2I+KDxpPm9wPC9pPiwgPGk+c3RhdGU8L2k+LCA8aT5saXN0PC9pPikKCQk8L2Rpdj4KCTxoND5Bcmd1bWVudHM8L2g0PgoJCTxkbD4KCQkJPGR0Pm9wPC9kdD4KCQkJPGRkPgoJCQkJQSB0ZXJuYXJ5IG9wZXJhdGlvbiBvZiB0aGUgZm9ybSA8aT5vcDwvaT4oPGk+ZDwvaT4sIDxpPnN0YXRlPC9pPiwgPGk+ZWxlbTwvaT4pLiZuYnNwOwoJCQkJVGhpcyBtYWNybyBpcyBjYWxsZWQgZm9yIGVhY2ggZWxlbWVudCBpbiA8aT5saXN0PC9pPi0tZWFjaCB0aW1lIHJldHVybmluZyBhIG5ldyA8aT5zdGF0ZTwvaT4uJm5ic3A7CgkJCQlUaGlzIG9wZXJhdGlvbiBpcyBleHBhbmRlZCBieSA8Yj5CT09TVF9QUF9MSVNUX0ZPTERfUklHSFQ8L2I+IHdpdGggdGhlIG5leHQgYXZhaWxhYmxlIDxiPkJPT1NUX1BQX1dISUxFPC9iPiBpdGVyYXRpb24sCgkJCQl0aGUgY3VycmVudCA8aT5zdGF0ZTwvaT4sIGFuZCB0aGUgY3VycmVudCBlbGVtZW50LgoJCQk8L2RkPgoJCQk8ZHQ+c3RhdGU8L2R0PgoJCQk8ZGQ+CgkJCQlUaGUgaW5pdGlhbCBzdGF0ZSBvZiB0aGUgZm9sZC4KCQkJPC9kZD4KCQkJPGR0Pmxpc3Q8L2R0PgoJCQk8ZGQ+CgkJCQlUaGUgPGk+bGlzdDwvaT4gdG8gYmUgZm9sZGVkLgoJCQk8L2RkPgoJCTwvZGw+Cgk8aDQ+UmVtYXJrczwvaDQ+CgkJPGRpdj4KCQkJVGhpcyBtYWNybyBkb2VzIG5vdCBoYXZlIHRoZSBzYW1lIHNpZ25hdHVyZSBhcyBpdCBwcmV2aW91c2x5IGRpZC4mbmJzcDsKCQkJVGhlIGFyZ3VtZW50cyBoYXZlIGJlZW4gc3dhcHBlZCB0byBwcm92aWRlIGEgdW5pZm9ybSBpbnRlcmZhY2Ugd2l0aCA8Yj5CT09TVF9QUF9MSVNUX0ZPTERfTEVGVDwvYj4uCgkJPC9kaXY+CgkJPGRpdj4KCQkJRm9yIHRoZSA8aT5saXN0PC9pPiwgKDxpPjA8L2k+LCAoPGk+MTwvaT4sICg8aT4yPC9pPiwgPGI+Qk9PU1RfUFBfTklMPC9iPikpKSwgdGhpcyBtYWNybyBleHBhbmRzIHRvOgoJCQk8ZGl2PgoJCQkJPGk+b3A8L2k+KDxpPmQ8L2k+LCA8aT5vcDwvaT4oPGk+ZDwvaT4sIDxpPm9wPC9pPig8aT5kPC9pPiwgPGk+c3RhdGU8L2k+LCA8aT4wPC9pPiksIDxpPjE8L2k+KSwgPGk+MjwvaT4pCgkJCTwvZGl2PgoJCTwvZGl2PgoJCTxkaXY+CgkJCVRoaXMgbWFjcm8gaXMgZGVwcmVjYXRlZC4mbmJzcDsKCQkJVXNlIDxiPkJPT1NUX1BQX0xJU1RfRk9MRF9SSUdIVF88aT5kPC9pPjwvYj4gaW5zdGVhZC4KCQk8L2Rpdj4KCTxoND5TZWUgQWxzbzwvaDQ+CgkJPHVsPgoJCQk8bGk+PGEgaHJlZj0ibGlzdF9mb2xkX3JpZ2h0Lmh0bWwiPkJPT1NUX1BQX0xJU1RfRk9MRF9SSUdIVDwvYT48L2xpPgoJCQk8bGk+PGEgaHJlZj0ibGlzdF9mb2xkX3JpZ2h0X2QuaHRtbCI+Qk9PU1RfUFBfTElTVF9GT0xEX1JJR0hUXzxpPmQ8L2k+PC9hPjwvbGk+CgkJPC91bD4KCTxoND5SZXF1aXJlbWVudHM8L2g0PgoJCTxkaXY+CgkJCTxiPkhlYWRlcjo8L2I+ICZuYnNwOzxhIGhyZWY9Ii4uL2hlYWRlcnMvbGlzdC9mb2xkX3JpZ2h0Lmh0bWwiPiZsdDtib29zdC9wcmVwcm9jZXNzb3IvbGlzdC9mb2xkX3JpZ2h0LmhwcCZndDs8L2E+CgkJPC9kaXY+Cgk8aDQ+U2FtcGxlIENvZGU8L2g0Pgo8ZGl2PjxwcmU+CiNpbmNsdWRlICZsdDs8YSBocmVmPSIuLi9oZWFkZXJzL2NhdC5odG1sIj5ib29zdC9wcmVwcm9jZXNzb3IvY2F0LmhwcDwvYT4mZ3Q7CiNpbmNsdWRlICZsdDs8YSBocmVmPSIuLi9oZWFkZXJzL2xpc3QvZm9sZF9yaWdodC5odG1sIj5ib29zdC9wcmVwcm9jZXNzb3IvbGlzdC9mb2xkX3JpZ2h0LmhwcDwvYT4mZ3Q7CgojZGVmaW5lIExJU1QgKGEsIChiLCAoYywgPGEgaHJlZj0ibmlsLmh0bWwiPkJPT1NUX1BQX05JTDwvYT4pKSkKCiNkZWZpbmUgT1AoZCwgc3RhdGUsIHgpIDxhIGhyZWY9ImNhdC5odG1sIj5CT09TVF9QUF9DQVQ8L2E+KHN0YXRlLCB4KQoKPGEgaHJlZj0ibGlzdF9mb2xkX3JpZ2h0XzJuZC5odG1sIj5CT09TVF9QUF9MSVNUX0ZPTERfUklHSFRfMk5EPC9hPihPUCwgXywgTElTVCkgLy8gZXhwYW5kcyB0byBfY2JhCjwvcHJlPjwvZGl2PgoJPGhyIHNpemU9IjEiPgoJPGRpdiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDBweDsiPgoJCTxpPqkgQ29weXJpZ2h0IDxhIGhyZWY9Imh0dHA6Ly93d3cuaG91c2VtYXJxdWUuY29tIiB0YXJnZXQ9Il90b3AiPkhvdXNlbWFycXVlIE95PC9hPiAyMDAyPC9pPgoJCTwvYnI+PGk+qSBDb3B5cmlnaHQgUGF1bCBNZW5zb25pZGVzIDIwMDI8L2k+Cgk8L2Rpdj4KCTxkaXYgc3R5bGU9Im1hcmdpbi1sZWZ0OiAwcHg7Ij4KCQk8cD48c21hbGw+RGlzdHJpYnV0ZWQgdW5kZXIgdGhlIEJvb3N0IFNvZnR3YXJlIExpY2Vuc2UsIFZlcnNpb24gMS4wLiAoU2VlCgkJYWNjb21wYW55aW5nIGZpbGUgPGEgaHJlZj0iLi4vLi4vLi4vLi4vTElDRU5TRV8xXzAudHh0Ij5MSUNFTlNFXzFfMC50eHQ8L2E+IG9yCgkJY29weSBhdCA8YSBocmVmPQoJCSJodHRwOi8vd3d3LmJvb3N0Lm9yZy9MSUNFTlNFXzFfMC50eHQiPnd3dy5ib29zdC5vcmcvTElDRU5TRV8xXzAudHh0PC9hPik8L3NtYWxsPjwvcD4KCTwvZGl2Pgo8L2JvZHk+CjwvaHRtbD4K