why synchronous?