creating custom clasess