This is great except for the unchecked exception.