'Determine which variant of this experiment, if any, is active.
Does not send a bucketing event.'

def variant(self, user):

    url_flag = self.config.get('url')
    if (url_flag and isinstance(url_flag, dict)):
        for feature in self.world.url_features():
            try:
                return url_flag[feature]
            except KeyError:
                pass
    experiment = self.config.get('experiment')
    if (not experiment):
        return None
    if FeatureState.is_user_experiment(experiment):
        return self._get_user_experiment_variant(experiment, user)
    return self._get_page_experiment_variant(experiment)
