public static async Task <AccountStatus> GetValidEmailAccountStatusAsync(this EmailAddress validEmail, LogOnIdentity identity)
        {
            if (validEmail == null)
            {
                throw new ArgumentNullException(nameof(validEmail));
            }

            if (identity == null)
            {
                throw new ArgumentNullException(nameof(identity));
            }

            IAccountService accountService = New <LogOnIdentity, IAccountService>(identity);

            if (await accountService.IsAccountSourceLocalAsync())
            {
                Texts.AccountServiceLocalExceptionDialogText.ShowWarning(Texts.WarningTitle);
                return(AccountStatus.Unknown);
            }

            AccountStorage accountStorage = new AccountStorage(accountService);

            return(await accountStorage.StatusAsync(validEmail).Free());
        }