add the cell module
fix weak pointers