generalize dfHeistTemplate type