class LogUniformDistribution(Distribution):
    def __init__(self):
        self.uniform_distribution = UniformDistribution()

    def sample(self, box, n):
        log_box = [(log(box_p[0]), log(box_p[1])) for box_p in box]
        log_set = self.uniform_distribution.sample(log_box, n)
        return [
            tuple(exp(log_mu_p) for log_mu_p in log_mu) for log_mu in log_set
        ]
 def __init__(self):
     self.uniform_distribution = UniformDistribution()