Cleaned up interface