 	 */
 	private var _topLevelSystemManager:ISystemManager;
 	
-		/**
+	/**
+	 *  @private
+	 *  Whether we are the stage root or not.
+	 *  We are only the stage root if we were the root
+	 *  of the first SWF that got loaded by the player.
+	 *  Otherwise we could be top level but not stage root
+	 *  if we are loaded by some other non-Flex shell
+	 *  or are sandboxed.
+	 */
+	private var isStageRoot:Boolean = true;
+
+	/**
+	 *  @private
+	 *  Whether we are the first SWF loaded into a bootstrap
+	 *  and therefore, the topLevelRoot
+	 */
+	private var isBootstrapRoot:Boolean = false;
+
+	/**
 	 *  Depth of this object in the containment hierarchy.
 	 *  This number is used by the measurement and layout code.
 	 */

	}

	/**
	 *  @private
	 *  Cleans up references to Window. Also removes self from topLevelSystemManagers list. 
	 */

			_rawChildren = new WindowedSystemRawChildrenList(this);

		return _rawChildren;
	}

	//--------------------------------------------------------------------------
	//  sandbox bridge group
	//--------------------------------------------------------------------------
	
	/**
	 * @private
	 * 
	 * Represents the related parent and child sandboxs this SystemManager may 
	 * communicate with.
	 */
	private var _sandboxBridgeGroup:ISandboxBridgeGroup;
	
	
	public function get sandboxBridgeGroup():ISandboxBridgeGroup
	{
		if (topLevel)
			return _sandboxBridgeGroup;
		else if (topLevelSystemManager)
			return ISystemManager2(topLevelSystemManager).sandboxBridgeGroup;
			
		return null;
	}
	
	public function set sandboxBridgeGroup(bridgeGroup:ISandboxBridgeGroup):void
	{
		if (topLevel)
			_sandboxBridgeGroup = bridgeGroup;
		else if (topLevelSystemManager)
			SystemManager(topLevelSystemManager).sandboxBridgeGroup = bridgeGroup;
					
	}

	//--------------------------------------------------------------------------
