no need to capture exceptions. Let caller do it