Now works as a (non-asynchronous) server