added other provision types and using joiner