Merge branch 'refactor'