refactoring : frame