basic class defined