improvements to interfaces