dust made immutable and dust functions separate from dust return variables