modified setArray