require both parameters