add basic multiple_op, fixed a macro bug