guard for required parameters