push generation of hashCodes upwards, so that they can be better shared