PGh0bWw+Cgk8aGVhZD4KCQk8dGl0bGU+Qk9PU1RfUFBfU0VRX0ZPUl9FQUNIPC90aXRsZT4KCQk8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSIuLi9zdHlsZXMuY3NzIj4KCTwvaGVhZD4KCTxib2R5PgoJCTxkaXYgc3R5bGU9Im1hcmdpbi1sZWZ0OiAgMHB4OyI+CgkJCVRoZSA8Yj5CT09TVF9QUF9TRVFfRk9SX0VBQ0g8L2I+IG1hY3JvIHJlcGVhdHMgYSBtYWNybyBmb3IgZWFjaCBlbGVtZW50IGluIGEgPGk+c2VxPC9pPi4KCQk8L2Rpdj4KCQk8aDQ+CgkJCVVzYWdlCgkJPC9oND4KCQk8ZGl2IGNsYXNzPSJjb2RlIj4KCQkJPGI+Qk9PU1RfUFBfU0VRX0ZPUl9FQUNIPC9iPig8aT5tYWNybzwvaT4sIDxpPmRhdGE8L2k+LCA8aT5zZXE8L2k+KQoJCTwvZGl2PgoJCTxoND4KCQkJQXJndW1lbnRzCgkJPC9oND4KCQk8ZGw+CgkJCTxkdD5tYWNybzwvZHQ+CgkJCTxkZD4KCQkJCUEgdGVybmFyeSBtYWNybyBvZiB0aGUgZm9ybSA8aT5tYWNybzwvaT4oPGk+cjwvaT4sIDxpPmRhdGE8L2k+LCA8aT5lbGVtPC9pPikuJm5ic3A7IAoJCQkJVGhpcyBtYWNybyBpcyBleHBhbmRlZCBieSA8Yj5CT09TVF9QUF9TRVFfRk9SX0VBQ0g8L2I+IHdpdGggZWFjaCBlbGVtZW50IGluIDxpPnNlcTwvaT4uJm5ic3A7IAoJCQkJSXQgaXMgZXhwYW5kZWQgd2l0aCB0aGUgbmV4dCBhdmFpbGFibGUgPGI+Qk9PU1RfUFBfRk9SPC9iPiByZXBldGl0aW9uLCB0aGUgCgkJCQlhdXhpbGlhcnkgPGk+ZGF0YTwvaT4sIGFuZCB0aGUgY3VycmVudCBlbGVtZW50LgoJCQk8L2RkPgoJCQk8ZHQ+ZGF0YTwvZHQ+CgkJCTxkZD4KCQkJCUF1eGlsaWFyeSBkYXRhIHBhc3NlZCB0byA8aT5tYWNybzwvaT4uCgkJCTwvZGQ+CgkJCTxkdD5zZXE8L2R0PgoJCQk8ZGQ+CgkJCQlUaGUgPGk+c2VxPC9pPiBmb3Igd2hpY2ggPGk+bWFjcm88L2k+IHdpbGwgYmUgaW52b2tlZCBvbiBlYWNoIGVsZW1lbnQuCgkJCTwvZGQ+CgkJPC9kbD4KCQk8aDQ+CgkJCVJlbWFya3MKCQk8L2g0PgoJCTxkaXY+CgkJCVRoaXMgbWFjcm8gaXMgYSByZXBldGl0aW9uIGNvbnN0cnVjdC4mbmJzcDsgSWYgPGk+c2VxPC9pPiBpcyAoPGk+YTwvaT4pKDxpPmI8L2k+KSg8aT5jPC9pPiksIAoJCQlpdCBleHBhbmRzIHRvIHRoZSBzZXF1ZW5jZToKCQkJPGRpdj4KCQkJCTxpPm1hY3JvPC9pPig8aT5yPC9pPiwgPGk+ZGF0YTwvaT4sIDxpPmE8L2k+KSA8aT5tYWNybzwvaT4oPGk+cjwvaT4sIDxpPmRhdGE8L2k+LAoJCQkJPGk+YjwvaT4pIDxpPm1hY3JvPC9pPig8aT5yPC9pPiwgPGk+ZGF0YTwvaT4sIDxpPmM8L2k+KQoJCQk8L2Rpdj4KCQk8L2Rpdj4KCQk8ZGl2PgoJCQlGb3IgbWF4aW11bSBlZmZpY2llbmN5LCB1c2UgPGI+Qk9PU1RfUFBfU0VRX0ZPUl9FQUNIX1I8L2I+LgoJCTwvZGl2PgoJCTxoND4KCQkJU2VlIEFsc28KCQk8L2g0PgoJCTx1bD4KCQkJPGxpPgoJCQkJPGEgaHJlZj0ic2VxX2Zvcl9lYWNoX3IuaHRtbCI+Qk9PU1RfUFBfU0VRX0ZPUl9FQUNIX1I8L2E+PC9saT4KCQk8L3VsPgoJCTxoND4KCQkJUmVxdWlyZW1lbnRzCgkJPC9oND4KCQk8ZGl2PgoJCQk8Yj5IZWFkZXI6PC9iPiAmbmJzcDs8YSBocmVmPSIuLi9oZWFkZXJzL3NlcS9mb3JfZWFjaC5odG1sIj4mbHQ7Ym9vc3QvcHJlcHJvY2Vzc29yL3NlcS9mb3JfZWFjaC5ocHAmZ3Q7PC9hPgoJCTwvZGl2PgoJCTxoND4KCQkJU2FtcGxlIENvZGUKCQk8L2g0PgoJCTxkaXY+CgkJCTxwcmU+CiNpbmNsdWRlICZsdDs8YSBocmVmPSIuLi9oZWFkZXJzL2NhdC5odG1sIj5ib29zdC9wcmVwcm9jZXNzb3IvY2F0LmhwcDwvYT4mZ3Q7CiNpbmNsdWRlICZsdDs8YSBocmVmPSIuLi9oZWFkZXJzL3NlcS9mb3JfZWFjaC5odG1sIj5ib29zdC9wcmVwcm9jZXNzb3Ivc2VxL2Zvcl9lYWNoLmhwcDwvYT4mZ3Q7CgojZGVmaW5lIFNFUSAodykoeCkoeSkoeikKCiNkZWZpbmUgTUFDUk8ociwgZGF0YSwgZWxlbSkgPGEgaHJlZj0iY2F0Lmh0bWwiPkJPT1NUX1BQX0NBVDwvYT4oZWxlbSwgZGF0YSkKCjxhIGhyZWY9InNlcV9mb3JfZWFjaC5odG1sIj5CT09TVF9QUF9TRVFfRk9SX0VBQ0g8L2E+KE1BQ1JPLCBfLCBTRVEpIC8vIGV4cGFuZHMgdG8gd18geF8geV8gel8KPC9wcmU+CgkJPC9kaXY+Cgk8aHIgc2l6ZT0iMSI+Cgk8ZGl2IHN0eWxlPSJtYXJnaW4tbGVmdDogMHB4OyI+CgkJPGk+qSBDb3B5cmlnaHQgPGEgaHJlZj0iaHR0cDovL3d3dy5ob3VzZW1hcnF1ZS5jb20iIHRhcmdldD0iX3RvcCI+SG91c2VtYXJxdWUgT3k8L2E+IDIwMDI8L2k+CgkJPC9icj48aT6pIENvcHlyaWdodCBQYXVsIE1lbnNvbmlkZXMgMjAwMjwvaT4KCTwvZGl2PgoJPGRpdiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDBweDsiPgoJCTxwPjxzbWFsbD5EaXN0cmlidXRlZCB1bmRlciB0aGUgQm9vc3QgU29mdHdhcmUgTGljZW5zZSwgVmVyc2lvbiAxLjAuIChTZWUKCQlhY2NvbXBhbnlpbmcgZmlsZSA8YSBocmVmPSIuLi8uLi8uLi8uLi9MSUNFTlNFXzFfMC50eHQiPkxJQ0VOU0VfMV8wLnR4dDwvYT4gb3IKCQljb3B5IGF0IDxhIGhyZWY9CgkJImh0dHA6Ly93d3cuYm9vc3Qub3JnL0xJQ0VOU0VfMV8wLnR4dCI+d3d3LmJvb3N0Lm9yZy9MSUNFTlNFXzFfMC50eHQ8L2E+KTwvc21hbGw+PC9wPgoJPC9kaXY+Cgk8L2JvZHk+CjwvaHRtbD4K