added more explanatory error  messages