changed from libev to libuv