removed override hashcode function.