/**
  *
  * @return Array
  */
 protected function getRecurringInstances(QueryBuilder $qb, \DateTime $dateFrom, \DateTime $dateTo)
 {
     $events = array();
     $qb->andWhere($qb->expr()->isNotNull($qb->getRootAliases()[0] . '.recurrenceRule'));
     $recurringEvents = $qb->getQuery()->getResult();
     $eventUtil = new EventUtil($this->getEntityManager());
     foreach ($recurringEvents as $recurringEvent) {
         /* @var $recurringEvent \Xima\ICalBundle\Entity\Component\Event */
         $events = array_merge($events, $eventUtil->getInstances($recurringEvent, $dateFrom, $dateTo));
     }
     return $events;
 }