improvements: interface