trying to work out logic in between model and components