removed unnecessary hashcode function