integration with interface