Refactored: to be a fat model
Refactored: divide show