refactored after messup
merge conflict after refactor and aop
Merge branch 'master' into temp