/// <summary>
 /// Synchronously executes the OAuth 2.0 Authentication Request and returns the result.
 /// </summary>
 /// <param name="authenticator">The <see cref="IIdSiteTokenAuthenticator"/>.</param>
 /// <param name="authenticationRequest">The Authentication Request this authenticator will attempt.</param>
 /// <returns>An Authentication Result representing the successful authentication.</returns>
 /// <exception cref="Error.ResourceException">The authentication failed.</exception>
 public static IOauthGrantAuthenticationResult Authenticate(this IIdSiteTokenAuthenticator authenticator, IIdSiteTokenAuthenticationRequest authenticationRequest)
     => (authenticator as IIdSiteTokenAuthenticatorSync).Authenticate(authenticationRequest);
 /// <summary>
 /// Synchronously executes the OAuth 2.0 Authentication Request and returns the result.
 /// </summary>
 /// <param name="authenticator">The <see cref="IIdSiteTokenAuthenticator"/>.</param>
 /// <param name="authenticationRequest">The Authentication Request this authenticator will attempt.</param>
 /// <returns>An Authentication Result representing the successful authentication.</returns>
 /// <exception cref="Error.ResourceException">The authentication failed.</exception>
 public static IOauthGrantAuthenticationResult Authenticate(this IIdSiteTokenAuthenticator authenticator, IIdSiteTokenAuthenticationRequest authenticationRequest)
 => (authenticator as IIdSiteTokenAuthenticatorSync).Authenticate(authenticationRequest);