private async Task <QuantumResult> Send(RequestMessage request)
        {
            if (request.MessageId == 0)
            {
                request.RequestId = DateTime.UtcNow.Ticks * (request is SequentialRequestMessage ? 1 : -1);
            }
            if (request.Account == 0)
            {
                request.Account = connection.AccountId;
            }
            var envelope = request.CreateEnvelope();
            var result   = await connection.SendMessage(envelope);

            _ = result.OnFinalized.ContinueWith(task => HandleQuantumResult(task.Result));
            return(result);
        }