defmacro backup