This should be the interface