this should have all the changes I made.