fix equals problems