array variations