close #39. (Still need to refactor error message)