diff converted to variadic form