refactor, change template