now with basic interface.