public function getDistributions($token, $event, array $dates)
    {
        $distributions = [];

        foreach ($dates as $date) {
            $key = $this->generateEntryKey(
                $token,
                $event,
                $date
            );

            $partials = $this->doRedisQuery(function () use ($key) {
                $this
                    ->redis
                    ->hgetall($key . '_distr');
            }, []);

            foreach ($partials as $key => $value) {
                $distributions[$key] = isset($partialTotals[$key])
                    ? $distributions[$key] + $value
                    : $value;
            }
        }

        arsort($distributions);

        return $distributions;
    }