added class implementation