renamed listen() to receive()