try refactor work as modules
refactor as templates