refactoring into _includes
more refactoring?