fixed stuff, but need to fix more