added array utilities