/**
  * Build an OAuth 1 provider instance.
  *
  * @param string $providerClass must extend Laravel\Socialite\One\AbstractProvider
  * @param string $oauth1Server  must extend League\OAuth1\Client\Server\Server
  * @param array  $config
  *
  * @return \Laravel\Socialite\One\AbstractProvider
  */
 protected function buildOAuth1Provider(SocialiteManager $socialite, $providerClass, $providerName, $oauth1Server)
 {
     $this->classExtends($providerClass, \Laravel\Socialite\One\AbstractProvider::class);
     $this->classExtends($oauth1Server, \League\OAuth1\Client\Server\Server::class);
     $config = $this->getConfig($providerClass, $providerName);
     $configServer = $socialite->formatConfig($config->get());
     $provider = new $providerClass($this->app->offsetGet('request'), new $oauth1Server($configServer));
     $provider->setConfig($config);
     return $provider;
 }