do we need to catch Exception?