rollback lazy val hashCode

lazy val will synchronize on all the object, not worth the cost for
hashCode