further update to the main class