Could you add a macro to hide the horrible cast?