lots a fixes