a whole lot of fixes