refactored bringing it together collation sections using a mix-in