adapted to new design of varargs