Multidispatch based on value of positional argument