use Try instead of Option