Added: hashCode and equals method