added basic interface