separating some concerns