PGh0bWw+CjxoZWFkPgoJPHRpdGxlPkJPT1NUX1BQX0FSUkFZX1JFTU9WRTwvdGl0bGU+Cgk8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSIuLi9zdHlsZXMuY3NzIj4KPC9oZWFkPgo8Ym9keT4KCTxkaXYgc3R5bGU9Im1hcmdpbi1sZWZ0OiAgMHB4OyI+CgkJVGhlIDxiPkJPT1NUX1BQX0FSUkFZX1JFTU9WRTwvYj4gbWFjcm8gcmVtb3ZlcyBhbiBlbGVtZW50IGZyb20gYW4gPGk+YXJyYXk8L2k+LgoJPC9kaXY+Cgk8aDQ+VXNhZ2U8L2g0PgoJCTxkaXYgY2xhc3M9ImNvZGUiPgoJCQk8Yj5CT09TVF9QUF9BUlJBWV9SRU1PVkU8L2I+KDxpPmFycmF5PC9pPiwgPGk+aTwvaT4pCgkJPC9kaXY+Cgk8aDQ+QXJndW1lbnRzPC9oND4KCQk8ZGw+CgkJCTxkdD5hcnJheTwvZHQ+CgkJCTxkZD4KCQkJCVRoZSA8aT5hcnJheTwvaT4gZnJvbSB3aGljaCBhbiBlbGVtZW50IGlzIHRvIGJlIHJlbW92ZWQuCgkJCTwvZGQ+CgkJCTxkdD5pPC9kdD4KCQkJPGRkPgoJCQkJVGhlIHplcm8tYmFzZWQgcG9zaXRpb24gaW4gPGk+YXJyYXk8L2k+IG9mIHRoZSBlbGVtZW50IHRvIGJlIHJlbW92ZWQuJm5ic3A7CgkJCQlWYWxpZCB2YWx1ZXMgcmFuZ2UgZnJvbSA8aT4wPC9pPiB0byA8Yj5CT09TVF9QUF9BUlJBWV9TSVpFPC9iPig8aT5hcnJheTwvaT4pIC0gPGk+MTwvaT4uCgkJCTwvZGQ+CgkJPC9kbD4KCTxoND5SZW1hcmtzPC9oND4KCQk8ZGl2PgoJCQlUaGlzIG1hY3JvIHVzZXMgPGI+Qk9PU1RfUFBfV0hJTEU8L2I+IGludGVyYWxseS4mbmJzcDsKCQkJVGhlcmVmb3JlLCB0byB1c2UgdGhlIDxpPmQ8L2k+IHBhcmFtZXRlciBwYXNzZWQgZnJvbSBvdGhlciBtYWNyb3MgdGhhdCB1c2UgPGI+Qk9PU1RfUFBfV0hJTEU8L2I+LAoJCQlzZWUgPGI+Qk9PU1RfUFBfQVJSQVlfUkVNT1ZFX0Q8L2I+LgoJCTwvZGl2PgoJPGg0PlNlZSBBbHNvPC9oND4KCQk8dWw+CgkJCTxsaT48YSBocmVmPSJhcnJheV9yZW1vdmVfZC5odG1sIj5CT09TVF9QUF9BUlJBWV9SRU1PVkVfRDwvYT48L2xpPgoJCTwvdWw+Cgk8aDQ+UmVxdWlyZW1lbnRzPC9oND4KCQk8ZGl2PgoJCQk8Yj5IZWFkZXI6PC9iPiAmbmJzcDs8YSBocmVmPSIuLi9oZWFkZXJzL2FycmF5L3JlbW92ZS5odG1sIj4mbHQ7Ym9vc3QvcHJlcHJvY2Vzc29yL2FycmF5L3JlbW92ZS5ocHAmZ3Q7PC9hPgoJCTwvZGl2PgoJPGg0PlNhbXBsZSBDb2RlPC9oND4KPGRpdj48cHJlPgojaW5jbHVkZSAmbHQ7PGEgaHJlZj0iLi4vaGVhZGVycy9hcnJheS9yZW1vdmUuaHRtbCI+Ym9vc3QvcHJlcHJvY2Vzc29yL2FycmF5L3JlbW92ZS5ocHA8L2E+Jmd0OwoKI2RlZmluZSBBUlJBWSAoMywgKGEsIGIsIGQpKQoKPGEgaHJlZj0iYXJyYXlfcmVtb3ZlLmh0bWwiPkJPT1NUX1BQX0FSUkFZX1JFTU9WRTwvYT4oQVJSQVksIDIpIC8vIGV4cGFuZHMgdG8gKDIsIChhLCBiKSkKPC9wcmU+PC9kaXY+Cgk8aHIgc2l6ZT0iMSI+Cgk8ZGl2IHN0eWxlPSJtYXJnaW4tbGVmdDogMHB4OyI+CgkJPGk+qSBDb3B5cmlnaHQgPGEgaHJlZj0iaHR0cDovL3d3dy5ob3VzZW1hcnF1ZS5jb20iIHRhcmdldD0iX3RvcCI+SG91c2VtYXJxdWUgT3k8L2E+IDIwMDI8L2k+CgkJPC9icj48aT6pIENvcHlyaWdodCBQYXVsIE1lbnNvbmlkZXMgMjAwMjwvaT4KCTwvZGl2PgoJPGRpdiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDBweDsiPgoJCTxwPjxzbWFsbD5EaXN0cmlidXRlZCB1bmRlciB0aGUgQm9vc3QgU29mdHdhcmUgTGljZW5zZSwgVmVyc2lvbiAxLjAuIChTZWUKCQlhY2NvbXBhbnlpbmcgZmlsZSA8YSBocmVmPSIuLi8uLi8uLi8uLi9MSUNFTlNFXzFfMC50eHQiPkxJQ0VOU0VfMV8wLnR4dDwvYT4gb3IKCQljb3B5IGF0IDxhIGhyZWY9CgkJImh0dHA6Ly93d3cuYm9vc3Qub3JnL0xJQ0VOU0VfMV8wLnR4dCI+d3d3LmJvb3N0Lm9yZy9MSUNFTlNFXzFfMC50eHQ8L2E+KTwvc21hbGw+PC9wPgoJPC9kaXY+CjwvYm9keT4KPC9odG1sPgo=