adding self-keepalive