with documentation updated for dfm() and functions