abstract cms classes