added class diagram