UPDATED: use try statement around precond