make it more error-friendly.