fiddled with interface for clarity + use