added array comprehension support