Error #1009 with nested swfs

I’m sure it’s something rather simple, but I’m at a loss because of my lack of experience with AS3. Here’s the situation:

I have an index.swf that serves as the main part of my page, and it loads swfs as sub pages. One of my sub pages, home.swf, needs to be able to load it’s own set of sub pages as well, which means I’ll have a swf within a swf within a swf (index.swf > home.swf > home_1.swf). When I test compile home.swf by itself, it works fine. But when I test compile index.swf, I get the Error #1009. Here’s my code with the line indicated where the debugger says the problem is:

// index.fla ///////////////////////////////////////

stop();

// Array of external clips to use. Variable index refers to next clip to be displayed.
var clips:Array = ["home.swf", "expertise.swf", "howwework.swf", "experience.swf", "aboutus.swf", "contactus.swf"];
var index:int = 0;

// Stuff to load swf files
var thisLoader:Loader = new Loader(); 
thisLoader.contentLoaderInfo.addEventListener(Event.INIT, doneLoading);

var thisMC:MovieClip = new MovieClip();
stage.addChild(thisMC);            // Add empty MC initially so the nextClip function can be generic

// Removes old MC and gets the next one, waiting until when it has initialized before adding it to the stage
function nextClip():void {
    thisLoader.load(new URLRequest(clips[index]));
}

// Tell AS that the loaded file is a movie clip and add it to the stage.
function doneLoading(e:Event):void {
    stage.removeChild(thisMC);
    thisMC = MovieClip(thisLoader.content);
    thisLoader.unload();
    stage.addChild(thisMC);
    thisMC.y = 156;

    //Draw a dynamic mask
    var square:Sprite = new Sprite();
    square.graphics.lineStyle(1, 0x000000);
    square.graphics.beginFill(0xff0000);
    square.graphics.drawRect(0, 156, 950, 354);
    square.graphics.endFill();
    this.addChild(square);
    thisMC.mask = square;
}

// Function that allows the clip to finish animating before loading the new page
function finishClip(e:Event):void {
    if (thisMC.currentFrame == thisMC.totalFrames)
    {
        thisMC.removeEventListener(Event.ENTER_FRAME, finishClip);
        nextClip();
    }
}

// Used to load the initial home clip
nextClip();



// home.fla ///////////////////////////////////////

stop();


// Array of external clips to use. Variable index refers to next clip to be displayed.
var homeClips:Array = ["home_1.swf", "home_2.swf", "home_3.swf", "home_4.swf", "home_5.swf", "home_6.swf", "home_7.swf", "home_8.swf", "home_9.swf"];
var indexHome:int = 0;

// Stuff to load swf files
var thisHomeLoader:Loader = new Loader(); 
thisHomeLoader.contentLoaderInfo.addEventListener(Event.INIT, doneLoadingHome);

play(); // Finish playing the animation for home.swf

var thisMCHome:MovieClip = new MovieClip();

// ******** The following line is where it throws the error ********
stage.addChild(thisMCHome);            // Add empty MC initially so the nextClip function can be generic

// Removes old MC and gets the next one, waiting until when it has initialized before adding it to the stage
function nextHomeClip():void {
    thisHomeLoader.load(new URLRequest(homeClips[indexHome]));
}

// Tell AS that the loaded file is a movie clip and add it to the stage.
function doneLoadingHome(e:Event):void {
    stage.removeChild(thisMCHome);
    thisMCHome = MovieClip(thisHomeLoader.content);
    thisHomeLoader.unload();
    stage.addChild(thisMCHome);
}

function load_1(e:MouseEvent):void {
    indexHome = 0;
    nextHomeClip();
}

function load_2(e:MouseEvent):void {
    indexHome = 1;
    nextHomeClip();
}

// Used to load the initial home clip
nextHomeClip();

If more information is needed, please let me know!