multiple patterns in function definitions