refactoring on cell