impove toArray()