interface changed to synchronous