protected void SignInWithProvider(string providerId)
        {
            Firebase.Auth.FederatedOAuthProvider provider = BuildFederatedOAuthProvider(providerId);
            auth.SignInWithProviderAsync(provider).ContinueWithOnMainThread(signin_task => {
                if (LogTaskCompletion(signin_task, "SignInWithProvider"))
                {
                    DebugLog("SignInWithProviderTask Completed:" + signin_task.IsCompleted);
                }
                if (signin_task.Exception != null)
                {
                    DebugLog("SignInWithProviderTask - Exception: " + signin_task.Exception.Message);
                    return;
                }

                DisplaySignInResult(signin_task.Result, 1);
            });
        }
        protected void LinkWithProvider(string providerId)
        {
            if (auth.CurrentUser == null)
            {
                DebugLog("Login with user before linking.");
                return;
            }

            Firebase.Auth.FederatedOAuthProvider provider = BuildFederatedOAuthProvider(providerId);
            auth.CurrentUser.LinkWithProviderAsync(provider).ContinueWithOnMainThread(task => {
                if (LogTaskCompletion(task, "LinkWithProvider"))
                {
                    DebugLog("LinkWithProvider Completed:" + task.IsCompleted);
                }
                if (task.Exception != null)
                {
                    Debug.Log("LinkWithProvider - Exception: " + task.Exception.Message);
                    return;
                }
                DisplaySignInResult(task.Result, 1);
            });
        }