def __call__(self, distribution):
    f = self._analyze_distr(distribution)
    if (f is None):
        return self.null_result
    results = {}
    (p, s, g) = f[:3]
    p = (self.value_scale[1] * (p + self.value_scale[0]))
    s = (self.selectivity_scale[1] * (s + self.selectivity_scale[0]))
    results[''] = Pref(preference=p, selectivity=s, goodness_of_fit=g)
    (p, s, g, n) = f[3:]
    p = (self.value_scale[1] * (p + self.value_scale[0]))
    s = (self.selectivity_scale[1] * (s + self.selectivity_scale[0]))
    results['Mode2'] = Pref(preference=p, selectivity=s, goodness_of_fit=g)
    results['Modes'] = Pref(number=n)
    return results
def __call__(self, distribution):
    f = self._analyze_distr(distribution)
    if (f is None):
        return self.null_result
    results = {}
    (p, s, g) = f[:3]
    p = (self.value_scale[1] * (p + self.value_scale[0]))
    s = (self.selectivity_scale[1] * (s + self.selectivity_scale[0]))
    results[] = Pref(preference=p, selectivity=s, goodness_of_fit=g)
    (p, s, g, n) = f[3:]
    p = (self.value_scale[1] * (p + self.value_scale[0]))
    s = (self.selectivity_scale[1] * (s + self.selectivity_scale[0]))
    results['Mode2'] = Pref(preference=p, selectivity=s, goodness_of_fit=g)
    results['Modes'] = Pref(number=n)
    return results