tons of fixes and other stuff