created classes to work with