class HybridProvider extends AbstractProvider {

    @Override
    public AccessToken getAccessToken(String googleIdentity, List<String> scopes) {
        if (googleIdentity.endsWith(".iam.gserviceaccount.com")) {
            return serviceAccountProvider.getAccessToken(googleIdentity, scopes);
        }
        else {
            return userProvider.getAccessToken(googleIdentity, scopes);
        }
    }

    public  HybridProvider();

}