changed zap's defmacro to mac