hashCode impl for overridden equals