public async void NextButton_OnClicked(object sender, EventArgs e)
        {
            if (_isButtonBusy || !NextButton.IsEnabled)
            {
                return;
            }

            _isButtonBusy = true;

            if (BindingContext is OnboardingViewModel vm)
            {
                if (!vm.NextCommand.CanExecute(null))
                {
                    return;
                }

                // fade out
#pragma warning disable 4014
                NextButton.TranslateTo(0, 100, easing: Easing.SpringIn);
#pragma warning restore 4014
                await OnboardingView.FadeTo(0);

                // execute
                vm.NextCommand.Execute(null);
                // fade in
                await OnboardingView.FadeTo(1);

                await NextButton.TranslateTo(0, 0, easing : Easing.SpringOut);
            }
            else
            {
#pragma warning disable 4014
                NextButton.TranslateTo(0, 100);
#pragma warning restore 4014
                await OnboardingView.FadeTo(0);

                await OnboardingView.FadeTo(1);

                await NextButton.TranslateTo(0, 0, easing : Easing.SpringOut);
            }
            _isButtonBusy = false;
        }