added back in block halving