refactored data out from presentation