added basic super functionality