hashcode and more this........