better array handling3