changed from shared_ptr for request to reference