constructing classes