PGh0bWw+CjxoZWFkPgoJPHRpdGxlPkJPT1NUX1BQX0RFRFVDRV9SPC90aXRsZT4KCTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii4uL3N0eWxlcy5jc3MiPgo8L2hlYWQ+Cjxib2R5PgoJPGRpdiBzdHlsZT0ibWFyZ2luLWxlZnQ6ICAwcHg7Ij4KCQlUaGUgPGI+Qk9PU1RfUFBfREVEVUNFX1I8L2I+IG1hY3JvIG1hbnVhbGx5IGRlZHVjZXMgdGhlIHN0YXRlIG9mIHRoZSA8Yj5CT09TVF9QUF9GT1I8L2I+IGNvbnN0cnVjdC4KCTwvZGl2PgoJPGg0PlVzYWdlPC9oND4KCQk8ZGl2IGNsYXNzPSJjb2RlIj4KCQkJPGI+Qk9PU1RfUFBfREVEVUNFX1I8L2I+KCkKCQk8L2Rpdj4KCTxoND5SZW1hcmtzPC9oND4KCQk8ZGl2PgoJCQlUaGlzIG1hY3JvIGlzIGludGVuZGVkIHRvIGF2b2lkIHRoZSB1c2Ugb2YgPGk+YXV0b21hdGljLXJlY3Vyc2lvbjwvaT4gYXQgZGVlcCBleHBhbnNpb24gZGVwdGhzLiZuYnNwOwoJCQk8aT5BdXRvbWF0aWMtcmVjdXJzaW9uPC9pPiBhdCBzdWNoIGRlcHRocyBjYW4gYmUgaW5lZmZpY2llbnQgb24gc29tZSBwcmVwcm9jZXNzb3JzLiZuYnNwOwoJCQlJdCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSB3aXRoIHRoZSBpbnZvY2F0aW9uIG9mIG1hY3JvcyB3aXRoIGEgPGI+X1I8L2I+IHN1ZmZpeCBzdWNoIGFzOgoJCQk8ZGl2PgoJCQkJPGI+Qk9PU1RfUFBfTElTVF9FTlVNX1I8L2I+KDxiPkJPT1NUX1BQX0RFRFVDRV9SPC9iPigpLCAoYSwgKGIsIChjLCA8Yj5CT09TVF9QUF9OSUw8L2I+KSkpKQoJCQk8L2Rpdj4KCQkJSWYgaXQgaXMgdXNlZCBpbiB0aGlzIGNvbnRleHQsIHRoZSA8Yj5fUjwvYj4gbWFjcm8gd2lsbCBmYWlsLiZuYnNwOwoJCQlUaGUgPGI+X1I8L2I+IG1hY3JvcyBkaXJlY3RseSBjb25jYXRlbmF0ZSB0byB0aGUgPGk+cjwvaT4gcGFyYW1ldGVyIHRoYXQgaXMgcGFzc2VkIHRvIHRoZW0sCgkJCXdoaWNoIHdvdWxkIHByZXZlbnQgPGI+Qk9PU1RfUFBfREVEVUNFX1I8L2I+KCkgZnJvbSBleHBhbmRpbmcuJm5ic3A7CgkJCUZ1cnRoZXJtb3JlLCBpdCBpcyBwb2ludGxlc3MgdG8gdXNlIHRoaXMgbWFjcm8gaW4gYSBzaXR1YXRpb24gc3VjaCBhcyB0aGlzCgkJCWJlY2F1c2UgaXQgd291bGQgYWxyZWFkeSBiZSB0b28gbGF0ZSB0byBnYWluIGFueSBlZmZpY2llbmN5LgoJCTwvZGl2PgoJPGg0PlNlZSBBbHNvPC9oND4KCQk8dWw+CgkJCTxsaT48YSBocmVmPSJmb3IuaHRtbCI+Qk9PU1RfUFBfRk9SPC9hPjwvbGk+CgkJPC91bD4KCTxoND5SZXF1aXJlbWVudHM8L2g0PgoJCTxkaXY+CgkJCTxiPkhlYWRlcjo8L2I+ICZuYnNwOzxhIGhyZWY9Ii4uL2hlYWRlcnMvcmVwZXRpdGlvbi9kZWR1Y2Vfci5odG1sIj4mbHQ7Ym9vc3QvcHJlcHJvY2Vzc29yL3JlcGV0aXRpb24vZGVkdWNlX3IuaHBwJmd0OzwvYT4KCQk8L2Rpdj4KCTxociBzaXplPSIxIj4KCTxkaXYgc3R5bGU9Im1hcmdpbi1sZWZ0OiAwcHg7Ij4KCQk8aT6pIENvcHlyaWdodCA8YSBocmVmPSJodHRwOi8vd3d3LmhvdXNlbWFycXVlLmNvbSIgdGFyZ2V0PSJfdG9wIj5Ib3VzZW1hcnF1ZSBPeTwvYT4gMjAwMjwvaT4KCQk8L2JyPjxpPqkgQ29weXJpZ2h0IFBhdWwgTWVuc29uaWRlcyAyMDAyPC9pPgoJPC9kaXY+Cgk8ZGl2IHN0eWxlPSJtYXJnaW4tbGVmdDogMHB4OyI+CgkJPHA+PHNtYWxsPkRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBCb29zdCBTb2Z0d2FyZSBMaWNlbnNlLCBWZXJzaW9uIDEuMC4gKFNlZQoJCWFjY29tcGFueWluZyBmaWxlIDxhIGhyZWY9Ii4uLy4uLy4uLy4uL0xJQ0VOU0VfMV8wLnR4dCI+TElDRU5TRV8xXzAudHh0PC9hPiBvcgoJCWNvcHkgYXQgPGEgaHJlZj0KCQkiaHR0cDovL3d3dy5ib29zdC5vcmcvTElDRU5TRV8xXzAudHh0Ij53d3cuYm9vc3Qub3JnL0xJQ0VOU0VfMV8wLnR4dDwvYT4pPC9zbWFsbD48L3A+Cgk8L2Rpdj4KPC9ib2R5Pgo8L2h0bWw+Cg==