final public static function load($root = true, $timeout = 0, $version = 1, $background = self::DEFAULT_BACKGROUND, $navigable3d = false)
    {
        if (class_exists('\ManiaLib\Application\Config')) {
            $config = \ManiaLib\Application\Config::getInstance();
            self::$langsURL = $config->getLangsURL();
            self::$imagesURL = $config->getImagesURL();
            self::$mediaURL = $config->getMediaURL();
        }

        // Load the XML object
        self::$domDocument = new \DOMDocument('1.0', 'utf-8');
        self::$parentNodes = array();
        self::$parentLayouts = array();
        self::$parentFrames = array();

        if ($root) {
            $nodeManialink = self::$domDocument->createElement('manialink');
            $nodeManialink->setAttribute('version', $version);
            $nodeManialink->setAttribute('background', $background);
            $nodeManialink->setAttribute('navigable3d', (int)$navigable3d);
            self::$domDocument->appendChild($nodeManialink);
            self::$parentNodes[] = $nodeManialink;

            $nodeTimeout = self::$domDocument->createElement('timeout');
            $nodeManialink->appendChild($nodeTimeout);
            $nodeTimeout->nodeValue = $timeout;
        } else {
            $frame = self::$domDocument->createElement('frame');
            self::$domDocument->appendChild($frame);
            self::$parentNodes[] = $frame;
        }
    }