Вот есть такой кусок кода

Код AS3:
package
{
import flash.display.*;
import flash.net.URLRequest;
import flash.events.*;
public class TheGame extends MovieClip
{
public function TheGame()
{
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
loader.load(new URLRequest("library.swf"));
}
private function completeHandler(e:Event):void
{
var info:LoaderInfo = e.target as LoaderInfo;
try
{
var SubmitButton:Class = info.applicationDomain.getDefinition("SubmitButton") as Class;
var SpeakBubble:Class = info.applicationDomain.getDefinition("SpeakBubble") as Class;
var ReplayButton:Class = info.applicationDomain.getDefinition("ReplayButton") as Class;
var NextButton:Class = info.applicationDomain.getDefinition("NextButton") as Class;
var CorrectBubble:Class = info.applicationDomain.getDefinition("CorrectBubble") as Class;
var CannotBubble:Class = info.applicationDomain.getDefinition("CannotBubble") as Class;
var BG:Class = info.applicationDomain.getDefinition("BG") as Class;
addChild(new BG());
addChild(new SpeakBubble());
addChild(new SubmitButton());
addChild(new ReplayButton());
addChild(new NextButton());
addChild(new CannotBubble());
addChild(new CorrectBubble());
}
catch (e:ReferenceError)
{
trace('ERROR: '+ e);
}
}
private function ioErrorHandler(e:IOErrorEvent):void
{
trace("ERROR: " + e);
}
}
}
меня терзают два вопроса.
1. Можно ли оптимизировать фрагмент непосредственно загрузки файлов?
2. Как обратиться к объекту и его свойствам в другом обработчике событий? Я пробовал сложить объект в переменную, но тщетно ее существование ограничивается обработчиком. Я пробовал прописывать в методе конструкторе конкретного класса, но опять-таки тщетно - то ли класс не видим для основного, то ли.. да даже и не знаю чего...