fixed most of the things