move dirty loading to another module
clean style
refactoring