would the keepalive boolean go into the constructor?