better client exception handling.