full functionality version