refactored cell type