give up on $ArrayIterator