public static function first(Iterator $iterator) { $iterator->rewind(); if (!$iterator->valid()) { throw new InvalidArgumentException("Iterator is empty"); } return $iterator->current(); }