Вот такая ещё беда у меня

Так как с массивами пошло не очень - хотелось бы знать реально ли использовать на ролях массива обычный String? С чтением из оного всё шло просто на ура! Из любой точки, в любое время - всегда пожалуйста (string.charAt(nn) или substr работают исправно). Но как дело дошло до записи всё снова усложнилось...
Для простоты на данном примере (
Code.rar) пытаюсь изменить только 4-й символ на "x":

Код:
var s1:String="0123456789";
var s2:String;
_root.onEnterFrame=function(){
s2=s1;
s2.charAt(3)="x"; // Выдает ошибку - т.к. только для чтения
s2[3]="x"; // Автоматически создается массив - тоже не то
s2(3)="x"; // Эххх мечты-мечты - не работает
s2=s1.substring(0,3) + "x" + s1.substring(4,10); // Работает исправно, но усложняет код
txt1.text=s1;
txt2.text=s2;
};
Вопрос вот в чем - как наиболее просто изменить в String'е один или цепочку символов? Есть такой вариант или в моём примере предложен самый простой???