PGh0bWw+Cgk8aGVhZD4KCQk8dGl0bGU+Qk9PU1RfUFBfU0VRX0ZJUlNUX048L3RpdGxlPgoJCTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii4uL3N0eWxlcy5jc3MiPgoJPC9oZWFkPgoJPGJvZHk+CgkJPGRpdiBzdHlsZT0ibWFyZ2luLWxlZnQ6ICAwcHg7Ij4KCQkJVGhlIDxiPkJPT1NUX1BQX1NFUV9GSVJTVF9OPC9iPiBtYWNybyBleHBhbmRzIHRvIGEgPGk+c2VxPC9pPiBvZiB0aGUgZmlyc3QgPGk+bjwvaT4KCQkJZWxlbWVudHMgb2YgYSA8aT5zZXE8L2k+LgoJCTwvZGl2PgoJCTxoND4KCQkJVXNhZ2UKCQk8L2g0PgoJCTxkaXYgY2xhc3M9ImNvZGUiPgoJCQk8Yj5CT09TVF9QUF9TRVFfRklSU1RfTjwvYj4oPGk+bjwvaT4sIDxpPmxpc3Q8L2k+KQoJCTwvZGl2PgoJCTxoND4KCQkJQXJndW1lbnRzCgkJPC9oND4KCQk8ZGw+CgkJCTxkdD5uPC9kdD4KCQkJPGRkPgoJCQkJVGhlIG51bWJlciBvZiBlbGVtZW50cyB0byBleHRyYWN0LgoJCQk8L2RkPgoJCQk8ZHQ+bGlzdDwvZHQ+CgkJCTxkZD4KCQkJCVRoZSA8aT5zZXE8L2k+IGZyb20gd2hpY2ggdGhlIGVsZW1lbnRzIGFyZSBleHRyYWN0ZWQuCgkJCTwvZGQ+CgkJPC9kbD4KCQk8aDQ+CgkJCVJlbWFya3MKCQk8L2g0PgoJCTxkaXY+CgkJCVRoaXMgbWFjcm8gZXh0cmFjdHMgPGk+bjwvaT4gZWxlbWVudHMgZnJvbSB0aGUgYmVnaW5uaW5nIG9mIDxpPnNlcTwvaT4gYW5kIAoJCQlyZXR1cm5zIHRoZW0gYXMgYSBuZXcgPGk+c2VxPC9pPgoJCTwvZGl2PgoJCTxoND4KCQkJU2VlIEFsc28KCQk8L2g0PgoJCTx1bD4KCQkJPGxpPgoJCQkJPGEgaHJlZj0ic2VxX3Jlc3Rfbi5odG1sIj5CT09TVF9QUF9TRVFfUkVTVF9OPC9hPjwvbGk+CgkJPC91bD4KCQk8aDQ+CgkJCVJlcXVpcmVtZW50cwoJCTwvaDQ+CgkJPGRpdj4KCQkJPGI+SGVhZGVyOjwvYj4gJm5ic3A7PGEgaHJlZj0iLi4vaGVhZGVycy9zZXEvZmlyc3Rfbi5odG1sIj4mbHQ7Ym9vc3QvcHJlcHJvY2Vzc29yL3NlcS9maXJzdF9uLmhwcCZndDs8L2E+CgkJPC9kaXY+CgkJPGg0PgoJCQlTYW1wbGUgQ29kZQoJCTwvaDQ+CgkJPGRpdj4KCQkJPHByZT4KI2luY2x1ZGUgJmx0OzxhIGhyZWY9Ii4uL2hlYWRlcnMvc2VxL2ZpcnN0X24uaHRtbCI+Ym9vc3QvcHJlcHJvY2Vzc29yL3NlcS9maXJzdF9uLmhwcDwvYT4mZ3Q7CgojZGVmaW5lIFNFUSAoYSkoYikoYykoZCkoZSkKCjxhIGhyZWY9InNlcV9maXJzdF9uLmh0bWwiPkJPT1NUX1BQX1NFUV9GSVJTVF9OPC9hPigyLCBTRVEpIC8vIGV4cGFuZHMgdG8gKGEpKGIpCjwvcHJlPgoJCTwvZGl2PgoJPGhyIHNpemU9IjEiPgoJPGRpdiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDBweDsiPgoJCTxpPqkgQ29weXJpZ2h0IDxhIGhyZWY9Imh0dHA6Ly93d3cuaG91c2VtYXJxdWUuY29tIiB0YXJnZXQ9Il90b3AiPkhvdXNlbWFycXVlIE95PC9hPiAyMDAyPC9pPgoJCTwvYnI+PGk+qSBDb3B5cmlnaHQgUGF1bCBNZW5zb25pZGVzIDIwMDI8L2k+Cgk8L2Rpdj4KCTxkaXYgc3R5bGU9Im1hcmdpbi1sZWZ0OiAwcHg7Ij4KCQk8cD48c21hbGw+RGlzdHJpYnV0ZWQgdW5kZXIgdGhlIEJvb3N0IFNvZnR3YXJlIExpY2Vuc2UsIFZlcnNpb24gMS4wLiAoU2VlCgkJYWNjb21wYW55aW5nIGZpbGUgPGEgaHJlZj0iLi4vLi4vLi4vLi4vTElDRU5TRV8xXzAudHh0Ij5MSUNFTlNFXzFfMC50eHQ8L2E+IG9yCgkJY29weSBhdCA8YSBocmVmPQoJCSJodHRwOi8vd3d3LmJvb3N0Lm9yZy9MSUNFTlNFXzFfMC50eHQiPnd3dy5ib29zdC5vcmcvTElDRU5TRV8xXzAudHh0PC9hPik8L3NtYWxsPjwvcD4KCTwvZGl2PgoJPC9ib2R5Pgo8L2h0bWw+Cg==