added classes and main