classes and their properties and comments [ci skip]