Actually, we don't want to use deep equals everywhere since it's used in equals()