Ho controllato la funzione, dopo che opera la matrice originale non esiste più, e restituisce degli oggetti all'interno degli indici......

così dovrebbe andare, modifica la funzione assegna (mcArr2 è la seconda matrice)

codice:
function assegna (arrai) {
	for (i=0; i<arrai.length; i++) {
		indice = arrai[i].toString() -1 
		trace ("devo andare "+arrai[i]);
		trace ("devo andare "+mcArr2[indice])		
	}
}