You could put expand-expressions in a separate module and then provide it using protect-out.

Also, the magic looks slightly wrong. I'll send a separate message about that.