We can experiment with the following encoding: ```scala @threadUnsafe override final lazy val hashCode: Int = Hash[X].hash(this) ``` Currently, we recalculate hashCode every time.