sample type optionality