omit watchCallback and who args if they are empty