/** 
 * flowplayer.js 3.0.5. The Flowplayer API
 * 
 * Copyright 2009 Flowplayer Oy
 * 
 * This file is part of Flowplayer.
 * 
 * Flowplayer is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * Flowplayer is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with Flowplayer.  If not, see <http://www.gnu.org/licenses/>.
 * 
 * Version: 3.0.5 - Tue Feb 03 2009 13:14:17 GMT-0000 (GMT+00:00)
 */
(function() {
    function log(args) { console.log("$f.fireEvent", [].slice.call(args)); }
    function clone(obj) {
        if (!obj || typeof obj != 'object') { return obj; } var temp = new obj.constructor();
        for (var key in obj) { if (obj.hasOwnProperty(key)) { temp[key] = clone(obj[key]); } }
        return temp;
    } function each(obj, fn) {
        if (!obj) { return; } var name, i = 0, length = obj.length; if (length === undefined) {
        for (name in obj) { if (fn.call(obj[name], name, obj[name]) === false) { break; } } 
    }
    else {
        for (var value = obj[0]; i < length && fn.call(value, i, value) !== false; value = obj[++i]) { } 
    }
    return obj;
} function el(id) { return document.getElementById(id); }

function extend(to, from, skipFuncs) {
    if (to && from) {
        each(from, function(name, value) {
        if (!skipFuncs || typeof value != 'function') { to[name] = value; } 
    });
} 
}
function select(query) {
    var index = query.indexOf(".");
    if (index != -1) {
        var tag = query.substring(0, index) || "*"; var klass = query.substring(index + 1, query.length); var els = []; each(document.getElementsByTagName(tag), function() {
        if (this.className && this.className.indexOf(klass) != -1) { els.push(this); } 
    }); 
        return els;
    }
}

function stopEvent(e) {
    e = e || window.event; 
    if (e.preventDefault) { e.stopPropagation(); e.preventDefault(); }
    else {
        e.returnValue = false;
        e.cancelBubble = true;
    }
    return false;
}
function bind(to, evt, fn) {
    to[evt] = to[evt] || []; to[evt].push(fn);
}
function makeId() {
    return "_" + ("" + Math.random()).substring(2, 10);
} 

var Clip = function(json, index, player) {
var self = this; var cuepoints = {}; 
var listeners = {}; self.index = index;
if (typeof json == 'string') {
    json = { url: json };
}
extend(this, json, true);
each(("Begin*,Start,Pause*,Resume*,Seek*,Stop*,Finish*,LastSecond,Update,BufferFull,BufferEmpty,BufferStop").split(","),
function() {

var evt = "on" + this; 
if (evt.indexOf("*") != -1) {
    evt = evt.substring(0, evt.length - 1);
    var before = "onBefore" + evt.substring(2); self[before] = function(fn) {
    bind(listeners, before, fn); return self;
};
} self[evt] = function(fn) {
bind(listeners, evt, fn); return self;
};
if (index == -1) {
    if (self[before]) {
        player[before] = self[before];
    } if (self[evt]) { player[evt] = self[evt]; } 
}
});
extend(this, { onCuepoint: function(points, fn) {
if (arguments.length == 1) {
    cuepoints.embedded = [null, points]; return self;
}
if (typeof points == 'number') {
    points = [points];
}
var fnId = makeId(); cuepoints[fnId] = [points, fn];
if (player.isLoaded()) { player._api().fp_addCuepoints(points, index, fnId); } 
return self; }, update: function(json) {
extend(self, json); if (player.isLoaded()) {
player._api().fp_updateClip(json, index);
} 

var conf = player.getConfig(); 
    var clip = (index == -1) ? conf.clip : conf.playlist[index]; extend(clip, json, true); 
}, _fireEvent: function(evt, arg1, arg2, target) {
if (evt == 'onLoad') {
    each(cuepoints, function(key, val) {
    if (val[0]) { player._api().fp_addCuepoints(val[0], index, key); } 
});
return false;
} target = target || self; if (evt == 'onCuepoint') {
var fn = cuepoints[arg1]; if (fn) { return fn[1].call(player, target, arg2); } 
}
if (evt == 'onStart' || evt == 'onUpdate') {
    extend(target, arg1);
    if (!target.duration) { target.duration = arg1.metaData.duration; }
    else { target.fullDuration = arg1.metaData.duration; } 
}
var ret = true; each(listeners[evt], function() { 
    ret = this.call(player, target, arg1, arg2); }); 
return ret; } }); if (json.onCuepoint) {
    var arg = json.onCuepoint; self.onCuepoint.apply(self, typeof arg == 'function' ? [arg] : arg);
    delete json.onCuepoint;
} 
each(json, function(key, val) { 
    if (typeof val == 'function') { bind(listeners, key, val); delete json[key]; } }); 
if (index == -1) { player.onCuepoint = this.onCuepoint; } }; 
var Plugin = function(name, json, player, fn) {
var listeners = {}; var self = this; var hasMethods = false; if (fn) {
    extend(listeners, fn);
}
each(json, function(key, val) {
    if (typeof val == 'function') {
        listeners[key] = val; delete json[key];
    } 
});
extend(this, { animate: function(props, speed, fn) {
    if (!props) {
        return self;
    } if (typeof speed == 'function') { fn = speed; speed = 500; }
    if (typeof props == 'string') { var key = props; props = {}; props[key] = speed; speed = 500; }
    if (fn) { var fnId = makeId(); listeners[fnId] = fn; }
    if (speed === undefined) { speed = 500; } json = player._api().fp_animate(name, props, speed, fnId);
    return self;
}, css: function(props, val) {
    if (val !== undefined) {
        var css = {}; css[props] = val; props = css;
    } json = player._api().fp_css(name, props); extend(self, json);
    return self;
}, show: function() {
    this.display = 'block'; player._api().fp_showPlugin(name);
    return self;
}, hide: function() {
    this.display = 'none'; player._api().fp_hidePlugin(name);
    return self;
}, toggle: function() {
this.display = player._api().fp_togglePlugin(name); return self;
}, fadeTo: function(o, speed, fn) {
if (typeof speed == 'function') { fn = speed; speed = 500; }
if (fn) { var fnId = makeId(); listeners[fnId] = fn; } this.display = player._api().fp_fadeTo(name, o, speed, fnId); this.opacity = o; return self;
}, fadeIn: function(speed, fn) { return self.fadeTo(1, speed, fn); }, fadeOut: function(speed, fn) { return self.fadeTo(0, speed, fn); }, getName: function() {
return name;
},
 _fireEvent: function(evt, arg) {
    if (evt == 'onUpdate') {
        var json = player._api().fp_getPlugin(name); if (!json) { return; } extend(self, json); delete self.methods; if (!hasMethods) {
            each(json.methods, function() {
                var method = "" + this; self[method] = function() {
                    var a = [].slice.call(arguments);
                    var ret = player._api().fp_invoke(name, method, a); return ret == 'undefined' ? self : ret;
                };
            }); hasMethods = true;
        } 
    } var fn = listeners[evt]; if (fn) {
        fn.call(self, arg); if (evt.substring(0, 1) == "_") { 
    delete listeners[evt]; } } } });
};

function Player(wrapper,params,conf){var
self = this, api = null, html, commonClip, playlist = [], plugins = {}, listeners = {}, playerId, apiId, playerIndex, activeIndex, swfHeight, wrapperHeight; extend(self, { 
id: function() {
return playerId;
}, isLoaded: function() { 
return (api !== null); }, getParent: function() {
return wrapper;
}, hide: function(all) {
if (all) { wrapper.style.height = "0px"; } 
    if (api) { api.style.height = "0px"; }
    return self;
}, show: function() {
    wrapper.style.height = wrapperHeight + "px";
    if (api) { api.style.height = swfHeight + "px"; }
    return self;
}, isHidden: function() {

return api && parseInt(api.style.height, 10) === 0;
}, load: function(fn) {
if (!api && self._fireEvent("onBeforeLoad") !== false) {
    each(players, function() { this.unload(); }
);
    html = wrapper.innerHTML; flashembed(wrapper, params, {
    config: conf
});
if (fn) {
    fn.cached = true; bind(listeners, "onLoad", fn);
}
}
return self;
}, unload: function() {
    try { if (api && api.fp_isFullscreen()) { } }
    catch (error) { return; }
    if (api && html.replace(/\s/g, '') !== '' && !api.fp_isFullscreen() && self._fireEvent("onBeforeUnload") !== false) {
        api.fp_close(); wrapper.innerHTML = html; self._fireEvent("onUnload"); api = null;
    }
    return self;
}, getClip: function(index) {
    if (index === undefined) { index = activeIndex; }
    return playlist[index];
}, getCommonClip: function() {
return commonClip;
}, getPlaylist: function() { 
return playlist; }, getPlugin: function(name) {
    var plugin = plugins[name];
    if (!plugin && self.isLoaded()) {
        var json = self._api().fp_getPlugin(name);
        if (json) {
            plugin = new Plugin(name, json, self);
            plugins[name] = plugin;
        }
    } 
    return plugin;
}, getScreen: function() { return self.getPlugin("screen"); }, getControls: function() { 
return self.getPlugin("controls"); }, getConfig: function(copy) {
return copy ? clone(conf) : conf;
}, getFlashParams: function() {
return params;
}, loadPlugin: function(name, url, props, fn) {
if (typeof props == 'function') {
    fn = props; props = {}; 
}
var fnId = fn ? makeId() : "_"; self._api().fp_loadPlugin(name, url, props, fnId);
var arg = {}; arg[fnId] = fn;
var p = new Plugin(name, null, self, arg); plugins[name] = p;
return p;
}, getState: function() {
return api ? api.fp_getState() : -1;
}, play: function(clip) {
    function play() {
        if (clip !== undefined) { self._api().fp_play(clip); }
        else { self._api().fp_play(); } 
    }
    if (api) { play(); }
    else { self.load(function() { play(); }); }
    return self;
}, getVersion: function() {
var js = "flowplayer.js 3.0.5"; if (api) {
var ver = api.fp_getVersion(); ver.push(js);
return ver;
} 
return js; }, _api: function() {
    if (!api) {
        throw "Flowplayer " + self.id() + " not loaded. Try moving your call to player's onLoad event";
    }
    return api;
}, _dump: function() { console.log(listeners); }, setClip: function(clip) { self.setPlaylist([clip]); }, getIndex: function() { return playerIndex; }
}); each(("Click*,Load*,Unload*,Keypress*,Volume*,Mute*,Unmute*,PlaylistReplace,Fullscreen*,FullscreenExit,Error").split(","), function() {
    var name = "on" + this; if (name.indexOf("*") != -1) {
        name = name.substring(0, name.length - 1);
        var name2 = "onBefore" + name.substring(2);
        self[name2] = function(fn) {
            bind(listeners, name2, fn);
            return self;
        };
    } self[name] = function(fn) {
        bind(listeners, name, fn);
        return self;
    };
});

each(("pause,resume,mute,unmute,stop,toggle,seek,getStatus,getVolume,setVolume,getTime,isPaused,isPlaying,startBuffering,stopBuffering,isFullscreen,reset,close,setPlaylist").split(","), function() {
var name = this; self[name] = function(arg) {
    if (!api) { return self; } var ret = (arg === undefined) ? api["fp_" + name]() : api["fp_" + name](arg); 
    return ret == 'undefined' ? self : ret; };
}); 
self._fireEvent = function(evt, arg0, arg1, arg2) {
if (conf.debug) { log(arguments); } if (!api && evt == 'onLoad' && arg0 == 'player') {
    api = api || el(apiId); swfHeight = api.clientHeight; each(playlist, function() {
    this._fireEvent("onLoad");
}); each(plugins, function(name, p) { p._fireEvent("onUpdate"); });
commonClip._fireEvent("onLoad");
} if (evt == 'onLoad' && arg0 != 'player') {
return;
}
if (evt == 'onError') {
    if (typeof arg0 == 'string' || (typeof arg0 == 'number' && typeof arg1 == 'number')) {
        arg0 = arg1; arg1 = arg2;
    } 
}
if (evt == 'onContextMenu') {
    each(conf.contextMenu[arg0], function(key, fn) { fn.call(self); });
    return;
} if (evt == 'onPluginEvent') {
    var name = arg0.name || arg0; var p = plugins[name];
    if (p) { p._fireEvent("onUpdate", arg0); p._fireEvent(arg1); } return;
}
if (evt == 'onPlaylistReplace') {
    playlist = [];
    var index = 0; each(arg0, function() { playlist.push(new Clip(this, index++, self)); });
}
var ret = true; if (typeof arg0 == 'number' && arg0 < playlist.length) {
    activeIndex = arg0;
    var clip = playlist[arg0]; if (clip) { ret = clip._fireEvent(evt, arg1, arg2); }
    if (!clip || ret !== false) { ret = commonClip._fireEvent(evt, arg1, arg2, clip); } 
} 
    var i = 0; each(listeners[evt], function() {
    ret = this.call(self, arg0, arg1); 
        if (this.cached) { listeners[evt].splice(i, 1); }
        if (ret === false) {
            return false;
        } i++;
    }); 
return ret; }; 
function init() {
    if ($f(wrapper)) { $f(wrapper).getParent().innerHTML = ""; playerIndex = $f(wrapper).getIndex(); players[playerIndex] = self; }
    else { players.push(self); playerIndex = players.length - 1; }
    wrapperHeight = parseInt(wrapper.style.height, 10) || wrapper.clientHeight;

    if (typeof params == 'string') {
        params = { src: params };
    }
    playerId = wrapper.id || "fp" + makeId();
    apiId = params.id || playerId + "_api"; 
    params.id = apiId; conf.playerId = playerId;

    if (typeof conf == 'string') {
        conf = { clip:
    {
        url:
    conf
    }
};
}
if (typeof conf.clip == 'string') {
    conf.clip = {
    url: conf.clip
};
} conf.clip = conf.clip || {}; if (wrapper.getAttribute("href", 2) && !conf.clip.url) {
conf.clip.url = wrapper.getAttribute("href", 2);
}
commonClip = new Clip(conf.clip, -1, self);
conf.playlist = conf.playlist || [conf.clip]; 
    var index = 0; each(conf.playlist, function() {
    var clip = this; if (typeof clip == 'object' && clip.length) { clip = "" + clip; }
    if (typeof clip == 'string') { clip = { url: clip }; } each(conf.clip, 
        function(key, val) {
    if (conf.clip[key] !== undefined && typeof val != 'function') { clip[key] = val; } 
}); conf.playlist[index] = clip; clip = new Clip(clip, index, self); playlist.push(clip); index++;
});
each(conf, function(key, val) {
if (typeof val == 'function') {
    bind(listeners, key, val);
    delete conf[key];
} 
}); each(conf.plugins, function(name, val) {
if (val) { plugins[name] = new Plugin(name, val, self); } 
});
if (!conf.plugins || conf.plugins.controls === undefined) {
    plugins.controls = new Plugin("controls", null, self);
} 
    params.bgcolor = params.bgcolor || "#000000"; params.version = params.version || [9, 0];
    params.expressInstall = 'http://www.flowplayer.org/swf/expressinstall.swf';
    function doClick(e) {
        if (!self.isLoaded() && self._fireEvent("onBeforeClick") !== false) {
            self.load();
        }
        return stopEvent(e);
    } html = wrapper.innerHTML; 
    if (html.replace(/\s/g, '') !== '') {
        if (wrapper.addEventListener) { wrapper.addEventListener("click", doClick, false); }
        else if (wrapper.attachEvent) { wrapper.attachEvent("onclick", doClick); } 
    } else {
        if (wrapper.addEventListener) {
            wrapper.addEventListener("click", stopEvent, false);
        } self.load();
    } 
} if (typeof wrapper == 'string') {
flashembed.domReady(function() {
var node = el(wrapper); if (!node) { throw "Flowplayer cannot access element: " + wrapper; } 
    else {
        wrapper = node; init();
    } 
});
} else { init(); } 
} var players = []; function Iterator(arr) {
    this.length = arr.length;
    this.each = function(fn) { each(arr, fn); }; this.size = function() {
    return arr.length;
};
} window.flowplayer = window.$f = function() {
    var instance = null; var arg = arguments[0];
    if (!arguments.length) {
        each(players, function() {
        if (this.isLoaded()) { instance = this; return false; } 
    });
    return instance || players[0];
} if (arguments.length == 1) {
if (typeof arg == 'number') { return players[arg]; }
else {
    if (arg == '*') { return new Iterator(players); } each(players, function() {
    if (this.id() == arg.id || this.id() == arg || this.getParent() == arg) { instance = this; return false; } 
});
return instance;
} 
} if (arguments.length > 1) {
var swf = arguments[1]; var conf = (arguments.length == 3) ? arguments[2] : {}; 
if (typeof arg == 'string') {
if (arg.indexOf(".") != -1) {
    var instances = []; each(select(arg), function() {
    instances.push(new Player(this, clone(swf), clone(conf)));
});
return new Iterator(instances);
}
else {
    var node = el(arg); 
return new Player(node !== null ? node : arg, swf, conf); }
} else if (arg) { 
return new Player(arg, swf, conf); } 
} return null;
}; extend(window.$f, { fireEvent: function(id, evt, a0, a1, a2) {
    var p = $f(id);
    return p ? p._fireEvent(evt, a0, a1, a2) : null;
}, addPlugin: function(name, fn) {
    Player.prototype[name] = fn;
    return $f;
}, each: each, extend: extend
}); if (document.all) {
window.onbeforeunload = function() {
    $f("*").each(function() {
    if (this.isLoaded()) { this.close(); } 
});
};
}
if (typeof jQuery == 'function') {
    jQuery.prototype.flowplayer = function(params, conf) {
    if (!arguments.length || typeof arguments[0] == 'number') {
        var arr = []; this.each(function() {
            var p = $f(this);
            if (p) { arr.push(p); } 
        }); return arguments.length ? arr[arguments[0]] : new Iterator(arr);
    }
    return this.each(function() {
    $f(this, clone(params), conf ? clone(conf) : {});
});
}; 
} 
})(); (function() {
var jQ = typeof jQuery == 'function'; function isDomReady() {
    if (domReady.done) {
        return false;
    } var d = document;
    if (d && d.getElementsByTagName && d.getElementById && d.body) {
        clearInterval(domReady.timer);
        domReady.timer = null; for (var i = 0; i < domReady.ready.length; i++) { domReady.ready[i].call(); }
        domReady.ready = null; domReady.done = true;
    }
} 

var domReady = jQ ? jQuery :
function(f) {
if (domReady.done) { 
return f(); } if (domReady.timer) { domReady.ready.push(f); } 
else { domReady.ready = [f]; domReady.timer = setInterval(isDomReady, 13); } };
function extend(to, from) {
    if (from) {
        for (key in from) {
            if (from.hasOwnProperty(key)) { to[key] = from[key]; } 
        } 
    }
    return to;
} 

function asString(obj) {
switch (typeOf(obj)) {
    case 'string': obj = obj.replace(new RegExp('(["\\\\])', 'g'), '\\$1'); obj = obj.replace(/^\s?(\d+)%/, "$1pct");
        return '"' + obj + '"';
    case 'array':
        return '[' + map(obj, function(el) { 
        return asString(el); }).join(',') + ']';
    case 'function': 
        return '"function()"';
    case 'object': var str = []; 
    for (var prop in obj) {
        if (obj.hasOwnProperty(prop)) { str.push('"' + prop + '":' + asString(obj[prop])); } 
    }
    return '{' + str.join(',') + '}';
}
return String(obj).replace(/\s/g, " ").replace(/\'/g, "\"");
} function typeOf(obj) {
    if (obj === null || obj === undefined) {
        return false;
    }
    var type = typeof obj;
    return (type == 'object' && obj.push) ? 'array' : type;
} 
if (window.attachEvent) {
    window.attachEvent("onbeforeunload", function() {
        __flash_unloadHandler = function() { };
        __flash_savedUnloadHandler = function() { };
    }); 
 }
 function map(arr, func) {
     var newArr = []; for (var i in arr) {
     if (arr.hasOwnProperty(i)) { newArr[i] = func(arr[i]); } 
 } return newArr;
}
function getHTML(p, c) {
    var ie = document.all;
    var html = '<object width="' + p.width + '" height="' + p.height + '"';
    if (ie && !p.id) { p.id = "_" + ("" + Math.random()).substring(9); }
    if (p.id) { html += ' id="' + p.id + '"'; }
    if (p.w3c || !ie) { html += ' data="' + p.src + '" type="application/x-shockwave-flash"'; }
    else { html += ' classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'; } html += '>';
    if (p.w3c || ie) { html += '<param name="movie" value="' + p.src + '" />'; }
    var e = extend({}, p); e.width = e.height = e.id = e.w3c = e.src = null;
    for (var k in e) {
        if (e[k] !== null) {
            html += '<param name="' + k + '" value="' + e[k] + '" />';
        } 
    }
    var vars = ""; if (c) {
    for (var key in c) {
        if (c[key] !== null) {
            vars += key + '=' + (typeof c[key] == 'object' ? asString(c[key]) : c[key]) + '&';
        }
    }
    vars = vars.substring(0, vars.length - 1); html += '<param name="flashvars" value=\'' + vars + '\' />';
}
html += "</object>";
return html;
}
function Flash(root, opts, flashvars) {
    var version = flashembed.getVersion();
    extend(this, { getContainer: function() {
    return root;
}, getConf: function() { 
    return conf; }, getVersion: function() {
    return version;
}, getFlashvars: function() { 
    return flashvars; }, getApi: function() {
    return root.firstChild;
}, getHTML: function() { 
        return getHTML(opts, flashvars); }
}); 

var required = opts.version; 
var express = opts.expressInstall;
var ok = !required || flashembed.isSupported(required);
if (ok) {
    opts.onFail = opts.version = opts.expressInstall = null; root.innerHTML = getHTML(opts, flashvars); 
}
else if (required && express && flashembed.isSupported([6, 65])) {
    extend(opts, { src: express });
    flashvars = { MMredirectURL: location.href, MMplayerType: 'PlugIn', MMdoctitle: document.title };
    root.innerHTML = getHTML(opts, flashvars);
}

else {
    if (root.innerHTML.replace(/\s/g, '') !== '') { }
    else {
        root.innerHTML = "<h2 style='color: black;' class='Notice'>Flash version 9.0.115 or greater is required to view this video</h2>"
    + "<h3>"
    + (version[0] > 0 ? "Your version is "
    + version : "You have no flash plugin installed")
    + "</h3>" 
    + "<p>Download latest version from <a href='http://www.adobe.com/go/getflashplayer'>here</a></p>"; } 
} if (!ok && opts.onFail) {
    var ret = opts.onFail.call(this);
    if (typeof ret == 'string') {
        root.innerHTML = ret;
    } 
}
} 

window.flashembed = function(root, conf, flashvars) {
if (typeof root == 'string') {
    var el = document.getElementById(root);
    if (el) { root = el; }
    else {
        domReady(function() {
        flashembed(root, conf, flashvars);
    });
    return;
} 
}
if (!root) {
    return;
} 
    var opts = { width: '100%', height: '100%', allowfullscreen: true, allowscriptaccess: 'always', quality: 'high', version: null, onFail: null, expressInstall: null, w3c: false };
    if (typeof conf == 'string') { conf = { src: conf }; } extend(opts, conf);
    return new Flash(root, opts, flashvars);
};
extend(window.flashembed, { 
getVersion: function() {
    var version = [0, 0];
    if (navigator.plugins && typeof navigator.plugins["Shockwave Flash"] == "object") {
        var _d = navigator.plugins["Shockwave Flash"].description;
        if (typeof _d != "undefined") {
            _d = _d.replace(/^.*\s+(\S+\s+\S+$)/, "$1");
            var _m = parseInt(_d.replace(/^(.*)\..*$/, "$1"), 10);
            var _r = /r/.test(_d) ? parseInt(_d.replace(/^.*r(.*)$/, "$1"), 10) : 0; version = [_m, _r];
        } 
    }
    else if (window.ActiveXObject) {
        try { var _a = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"); }
        catch (e) {
            try {
                _a = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
                version = [6, 0]; _a.AllowScriptAccess = "always";
            } catch (ee) {
                if (version[0] == 6) {
                    return;
                } 
            } try { _a = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"); } catch (eee) { } 
        }
        if (typeof _a == "object") {
            _d = _a.GetVariable("$version");
            if (typeof _d != "undefined") {
                _d = _d.replace(/^\S+\s+(.*)$/, "$1").split(","); version = [parseInt(_d[0], 10), parseInt(_d[2], 10)];
            } 
         } 
    }
    return version;
}, isSupported: function(version) {
    var now = flashembed.getVersion();
    var ret = (now[0] > version[0]) || (now[0] == version[0] && now[1] >= version[1]); 
    return ret; }, domReady: domReady, asString: asString, getHTML: getHTML }); if (jQ) {
        jQuery.prototype.flashembed = function(conf, flashvars) {
        return this.each(function() {
        flashembed(this, conf, flashvars);
    });
};
} 
})(
);