I hate class scope!

why can’t i access the container and preloader as defined in my OnMotionFinished Function?!


/** 
    Load Sub Stage class 
    author: Ahmed I. Masri 
    version: 1.1 
    modified: 08/11/2008 
    copyright: Ahmed I. Masri 

    This code defines a custom class that loads the correct sub movie. 
*/

// Import Built-In Classes
import mx.utils.Delegate;
import mx.transitions.Tween;
import mx.transitions.easing.*;

// Class to Load SubStages
class LoadSubStage {

    // Variable Definitions
    var Container:MovieClip;
    var StageLoader:MovieClipLoader;
    var Listener:Object;
    var Preloader:MovieClip;
    
    // Constructor Function to Select SubStage and prepare Stage
    public function LoadSubStage(linkToFile:String) {
        if (linkToFile != "intro_stage.swf") return;
        LIntroStage(linkToFile);
    }
    
    // Constructor Function to PreLoad and present Intro SubStage
    private function LIntroStage(linkToFile):Void {
        // Variable definitions 
        StageLoader = new MovieClipLoader();
        Listener = new Object();
        StageLoader.addListener(Listener);

        // Empty Movie Clip to place Intro SubStage 
        Container = _root.createEmptyMovieClip("MC_emptyHolder", _root.getNextHighestDepth());
        Container._x = 0;
        Container._y = 55;

        // Function to handle (pre)loading
        Listener.onLoadStart = Delegate.create(this, onLoadStart);
        Listener.onLoadProgress = Delegate.create(this, onLoadProgress);
        Listener.onLoadInit = Delegate.create(this, onLoadInit);
        
        Preloader = _root.attachMovie("MC_stageLoader", "MC_stageLoader" , _root.getNextHighestDepth(), {_x:400, _y:261.5});
        Preloader.MC_loadingProgressBar._width = 0;
        Preloader.txt_PercentLoaded.text = "00";
        
        // Loading of SubStage
        StageLoader.loadClip(linkToFile, Container);
    }
    
    // Function to handle start of (pre)loading
    private function onLoadStart() {
        Container._visible = false;
    }
    
    // Function to handle progress of (pre)loading
    private function onLoadProgress(mc:MovieClip, l:Number, t:Number):Void {
        Preloader.MC_loadingProgressBar._width = (l / t) * (Stage.width * 1.2);
        Preloader.txt_PercentLoaded.text = Math.round((l / t) * 100);
    }
    
    // Function to handle completion of (pre)loading
    private function onLoadInit():Void {
        // Variable definition
        var middleOrangeBarY:Number = _root.MC_headerBackground.MC_middleOrangeBar._y;
        var bottomOrangeBarY:Number = _root.MC_headerBackground.MC_bottomOrangeBar._y;
        
        // Fade out Preloader;
        var tweenPreloaderFade:Tween = new Tween(Preloader, "_alpha", Strong.easeOut, 100, 0, 10, false);
        var tweenMiddleBar:Tween = new Tween(_root.MC_headerBackground.MC_middleOrangeBar, "_y", Strong.easeOut, middleOrangeBarY, -3.5, 10, false);
        var tweenBottomBar:Tween = new Tween(_root.MC_headerBackground.MC_bottomOrangeBar, "_y", Strong.easeOut, bottomOrangeBarY, 619, 10, false);
        
        // On completion of Fade out
        tweenPreloaderFade.onMotionFinished = function() {
            Preloader.removeMovieClip();
            Container._visible = true;
        }
    }
}