main class defined