use temp array