refactor the framework