Use proper casting (when passing in the block) to prevent mangling memory