lots of stuff fixed