beginning with handle_client()