Есть произвольное и заранее неизвестное число классов, зашитое в swc либу. Все эти классы в обязательном порядке поименованы итеративно (Class_1, Class_2, ...); Для каждого из этих классов мне необходимо создать инстанс и запрятать в массив, к которому позднее будет идти обращение. Раньше (когда fla файл являлся main-классом), я делал что-то вроде этого.

Код AS3:
function fillClassesFromLib():Vector.<Sprite> {
var toReturn:Vector.<Sprite> = new Vector.<Sprite>();
for (var i:int = 1; i > -1; i++) {
try {
var className:Class = getDefinitionByName("IterativeClass_" + i) as Class;
var sprite:Sprite = new className();
toReturn.push(sprite);
} catch (e:Error) {
return toReturn;
}
}
return new Vector.<Sprite>;
}
Работало идеально. Но когда я решил разделить труд аниматора и программиста, экспортируя .fla в .swc - блок try перестал выполняться даже единожды, отвечая на свою первую строчку:

Код AS3:
ReferenceError: Error #1065: Переменная IterativeClass_1 не определена.
Если же прописать блок try следующим образом:

Код AS3:
<...>
try {
var c:Sprite = new IterativeClass_1();
c = new IterativeClass_2();
c = new IterativeClass_3();
var className:Class = getDefinitionByName("IterativeClass_" + i) as Class;
<...>
То блок выполнится три с небольшим раза, на четвёртом генерируя референс-эррор. Понятно, что на этапе создания инстанса класса,
с указанием имени напрямую он каким-то образом "подхватывает" этот класс из библиотеки, однако не дело это: заранее "подхватывать" все 1~9000 классов.
Есть какой-нибудь добрый и изящный выход?