errors fixed for the most part!