substitution for arrays