protected override async Task ExecuteAsync(Object parameter)
        {
            //TODO Добавить логгер
            if (parameter == null)
            {
                _returnValidationResult(new List <String> {
                    "Null arguments"
                });
                return;
            }

            List <String> values = parameter as List <String>;

            if (values == null)
            {
                _returnValidationResult(new List <String> {
                    "Null arguments"
                });
                return;
            }

            String login    = values[0];
            String password = values[1];

            //TryGetUser
            CTokenDto result = await _authSupplier.LogInAsync(login, password);

            CTokenDto user       = result;
            Boolean   hasGetUser = user != null;

            //validate TryGetUser result
            _returnValidationResult(!hasGetUser ? new List <String> {
                "Login or password is invalid"
            } : null);

            if (!hasGetUser)
            {
                return;
            }

            STokenProvider.OnAuthCompleted(user.Id);

            //await Task.Delay(1_000);

            CViewModelLocator.Instance.ApplicationViewModel.GoToPage(EApplicationPage.Chat);
        }