fix the interface a bit