classes and functions in main