/**********************************************************************/
/* GROUP OPTIONS                                                      */
/**********************************************************************/
function getGroupedOptionsString(dividedString, divider, selectedValue, LANG1, LANG2, div)
{ 
  function getSortedOptionsStringSortArray(a, b)
  {
    /* CRAZY SORT CASE */
    return (  ( (a[1]==LANG1) && (b[1]!=LANG1) )
           || ( (a[1]==LANG1) && (b[1]==LANG1) && (a[0]<b[0]) )
           || ( (a[1]==LANG2) && (b[1]!=LANG2) && (b[1]!=LANG1) )
           || ( (a[1]==LANG2) && (b[1]==LANG2) && (a[0]<b[0]) )
           || ( (a[1]!=LANG2) && (a[1]!=LANG1) && (b[1]!=LANG2) && (b[1]!=LANG1) && (a[0]<b[0]) )
           ) ? -1 : 1 ; //-1 forwards, 1 backwards
  }
  function getOptionsString(array)
  {
    /* BUILT OPTIONS */
    var output = '';
    for (i = 0; i < array2.length; i++)
    {
      output += '<option value="' + array2[i][2] + '"' + ((selectedValue == array2[i][2]) ? ' selected ' : '') + '>' + array2[i][0] + '</option>' 
      if ( (array2[i][1] == LANG1 && array2[i+1][1] != LANG1 ) || (array2[i][1] == LANG2 && array2[i+1][1] != LANG2 ) ) output += '<option value="">' + div + '</option>';
    }
    return output;
  }
  var i = 0;
  /* SETUP - built pretty 2 dimensional array of dividedString */ 
  if (dividedString.substr(dividedString.length-1,1) == divider) dividedString = dividedString.substr(0,dividedString.length-1);//crop last divider
  if (dividedString.substr(0,1) == divider) dividedString = dividedString.substr(1,dividedString.length-1);//crop first divider
  var array1 = dividedString.split(divider); //split by devider
  var array2 = new Array(); //sortable 2 dim array
  while (i < array1.length) array2.push(Array(array1[i++], array1[i++], array1[i++]) ); //built 2 dimensional array
  /* SORT */
  array2.sort(getSortedOptionsStringSortArray);
  /* OUTPUT */
  return getOptionsString(array2);
}

/**********************************************************************/
/* SORT OPTIONS                                                       */
/**********************************************************************/

function getSortedOptionsStringSortArray(a, b)
{
 return (a[0] > b[0]) ? 1 : -1 ;
}
function getSortedOptionsString(dividedString, divider, selectedValue)
{ 
 if (dividedString.substr(dividedString.length-1,1) == divider) dividedString = dividedString.substr(0,dividedString.length-1); //crop last divider
 if (dividedString.substr(0,1) == divider) dividedString = dividedString.substr(1,dividedString.length-1); //crop first divider
 var array1 = dividedString.split(divider);
 var array2 = new Array(); //sortable 2 dim array
 var output = '';
 var i = 0;
 while (i < array1.length) array2.push(Array(array1[i++], array1[i++]) );
 array2.sort(getSortedOptionsStringSortArray);
 for (i = 0; i < array2.length; i++) output += '<option value="' + array2[i][1] + '"' + ((selectedValue == array2[i][1]) ? ' selected ' : '') + '>' + array2[i][0] + '</option>' 
 return output;
}

/**********************************************************************/
/* OPENER                                                             */
/**********************************************************************/

function openSelectValueAsHref(selectItem)
{
 if (selectItem.options[selectItem.selectedIndex].value != '')
 {
  window.location = selectItem.options[selectItem.selectedIndex].value;
 }
}

/**********************************************************************/
/* FLASH                                                              */
/**********************************************************************/

/* check version */
var ShockMode = 0;
var plugin = (navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"]) ? navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin : 0;
if (plugin&& parseInt(plugin.description.substring(plugin.description.indexOf(".")-1)) >= 6)
{
 ShockMode = 1;
}
else if (navigator.userAgent && navigator.userAgent.indexOf("MSIE")>=0 && navigator.userAgent.indexOf("Windows")>=0)
{
 document.write('\<SCRIPT LANGUAGE=VBScript\>');
 document.write('on error resume next \n');
 document.write('ShockMode = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.6")))\n');
 document.write('\</SCRIPT\>');
}

function writePluginSWF(pluginString, alternativeString)
{
 if (ShockMode==1 && pluginString != '')
 {
  document.write(pluginString);
 }
 else
 {
  document.write(alternativeString);
 }
}

/**********************************************************************/
/* CSS helper                                                         */
/**********************************************************************/
function setStyleClassesOfChildNodes(rootNode, classNamesArray, keepLastClass)
{
 if (keepLastClass) lastNode = rootNode.childNodes[ rootNode.childNodes.length - ((typeof rootNode.lastChild.className == 'undefined')?2:1) ];
 
 var childNode = rootNode.firstChild;
 var i = 0;
 while (childNode != null) {
  if (typeof childNode.className != 'undefined')
  {
   childNode.className = classNamesArray[i];
   if (++i >= classNamesArray.length) i = 0;
  }
  childNode = childNode.nextSibling;
  if (keepLastClass && childNode == lastNode) break;
 }
}

function clearLastChildNode(rootNode)
{
 if (rootNode.hasChildNodes())
 {
  rootNode.lastChild.nodeValue = '';
 }
}

function clearLastChildNodeOfElement(rootNodeIdString)
{
 clearLastChildNode(document.getElementById(rootNodeIdString));
}

var dynamicElementCounter = 0;
function setStyleOfFirstElement(newStyle)
{
 var newId = 'dynID'+(dynamicElementCounter++);
 document.write('<div style="display:none;" id="'+newId+'"></div>');
 index = ((typeof document.getElementById(newId).parentNode.childNodes[0].className == 'undefined') ? 1 : 0);
 var i = 0;
 while (i < newStyle.length) 
 {
  eval('document.getElementById(newId).parentNode.childNodes[index].style.'+ newStyle[i++] + ';');
 }
}

function setStyleOfChildNodesByIdOrIndex(rootNode, childNodeTagName, childNodeId, childNodeIndex, styleClassName)
{
 i = 0;
 childNode = rootNode.firstChild;
 while (childNode != null)
 {
  if (typeof childNode.tagName != 'undefined' && childNode.tagName == childNodeTagName)
  {
   if (childNodeId != '' && childNode.id == childNodeId) childNode.className = styleClassName;
   if (childNodeId == '' && i == childNodeIndex) childNode.className = styleClassName;
   i++;
  }
  childNode = childNode.nextSibling;
 }
}

/**************************************************
Dynamisch aufklappbare Bereiche
**************************************************/
var motion = false;
var decrease = .9;

function slideInit (toggle, noBorder, hideLink, imageOpen, imageClose/*, exclusive*/){
    var nextSibl = toggle.parentNode.nextSibling;
    while (nextSibl.nodeType != 1) {
        nextSibl = nextSibl.nextSibling;
    }
	/* parameter exclusive needs to be added only if but one slider is supposed to be open at a time
	if( exclusive )
	{
		if( window['slideObj'] )
		{
			if( ( slideObj.direc < 0 ) && ( nextSibl != slideObj ) )
			{
				slideObj.toggle.className = 'closed';
				slideObj.style.height = slideObj.minHt + 'px';
				slideObj.direc *= -1;
			}
		}
	}
	*/

    if(!motion) {
        window['slideObj'] = nextSibl;
        slideObj.toggle = toggle;

        if(slideObj.className.indexOf('noCollapse')>-1) {
            if(!slideObj.style.height) {
				slideObj.minHt = slideObj.offsetHeight - 2;
                slideObj.style.height = slideObj.minHt + 'px';
            }
        } else {
            slideObj.minHt = 0;
            if (!slideObj.style.height) {
                slideObj.style.height = '0px';
            }
        }

        if(noBorder) slideObj.sideBorder = false;
        else slideObj.sideBorder = true;

        if(hideLink) toggle.style.visibility = 'hidden';
        else toggle.style.visibility = '';
		if(toggle.getElementsByTagName('IMG').length == 1 ) // add if-condition here for exclusive opening
		{
			slideObj.toggleImage = toggle.getElementsByTagName('IMG')[0];
			slideObj.imageOpen = new Image();
			slideObj.imageOpen.src = imageOpen;
			slideObj.imageClose = new Image();
			slideObj.imageClose.src = imageClose;
		}// add if-condition  for parameter exclusive opening
        if(!slideObj.direc) slideObj.direc = 1;
        slideObj.speed = parseInt(slideObj.getElementsByTagName('DIV')[0].offsetHeight/4);
        slide();
    }
    return false;
}

function slide () {
    window.clearTimeout(motion);

    slideObj.speed *= decrease;
    ht = parseInt(slideObj.style.height);
    if (slideObj.direc > 0) {
		if(slideObj.sideBorder ) slideObj.style.borderStyle = 'solid';
        if(ht < (slideObj.getElementsByTagName('DIV')[0].offsetHeight)) {
            slideObj.style.height = ht + Math.ceil(slideObj.speed) + 'px';						
            if(slideObj.sideBorder ) slideObj.style.borderStyle = 'solid';
        } else {
            slideObj.style.height = slideObj.getElementsByTagName('DIV')[0].offsetHeight + 'px';
            slideObj.toggle.className = 'open';

            if(slideObj.toggleImage && slideObj.imageClose) {
                slideObj.toggleImage.src = slideObj.imageClose.src;
            }

            slideObj.direc *= -1;
            motion = false;
            return;
        }
    } else {
        if(ht > slideObj.minHt) {
            var myHt = ht - Math.ceil(slideObj.speed);
            if(myHt < slideObj.minHt) myHt = slideObj.minHt;
            slideObj.style.height = myHt + 'px';
        } else {
            slideObj.style.height = slideObj.minHt + 'px';
            if(!slideObj.minHt) slideObj.style.borderStyle = 'none';
            slideObj.toggle.className = 'closed'; //needs to be corrected here, used to be empty string instead

            if(slideObj.toggleImage && slideObj.imageOpen) {
                slideObj.toggleImage.src = slideObj.imageOpen.src;
            }

            slideObj.direc *= -1;
            motion = false;
            return;
        }
    }
    motion = window.setTimeout('slide()', 83);
}

/**********************************************************************/
/* Navigation                                                         */
/**********************************************************************/
function initSubnav()
{
 subnav = document.getElementById("default_subnav_subnav"); 
 subnav_ac = String(subnav_ac).split('#');
 clearLastChildNode(subnav); 
 setStyleOfChildNodesByIdOrIndex(subnav, 'A', (typeof(subnav_ac[1]) != 'undefined') ? 'default_subnav_subnav_link_' + subnav_ac[1] : '', subnav_ac[0], 'active');
}
function initMetanav()
{
 metanav = document.getElementById("default_topnav_metanav"), 
 metanav_ac = String(metanav_ac).split('#');
 clearLastChildNode(metanav); 
 setStyleOfChildNodesByIdOrIndex(metanav, 'A', (typeof(metanav_ac[1]) != 'undefined') ? 'default_topnav_metanav_link_' + metanav_ac[1] : '', metanav_ac[0], 'active');
}
function initFooternav()
{
 footernav = document.getElementById("default_footer_links"), 
 footernav_ac = String(footernav_ac).split('#');
 clearLastChildNode(footernav); 
 setStyleOfChildNodesByIdOrIndex(footernav, 'A', (typeof(footernav_ac[1]) != 'undefined') ? 'default_footer_link_' + footernav_ac[1] : '', footernav_ac[0], 'active');
}

/* Sprachumschaltung im Header */
function switchLanguage(select)
{
  var url = select.options[select.options.selectedIndex].value;
  if (url != "") window.location.href = url;
}

/**********************************************************************/
/* image helper                                                       */
/**********************************************************************/

function newImage(arg) {
 if (document.images) {
  rslt = new Image();
  rslt.src = arg;
  return rslt;
 }
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

/**********************************************************************/
/* window opener                                                      */
/**********************************************************************/
function simplePopup(theURL,winName,features) { 
  window.open(theURL,winName,features);
}

function popupSized(theURL, wname, width, height){
    positionx=(screen.width/2)-(width/2)
    positiony=(screen.height/2)-(height/2)
 window.open(theURL, wname,"width="+ width +",height="+ height +",resizable=yes,status=no,scrollbars=yes,toolbar=no,menubar=no,left=" + positionx + ",top=" + positiony + ",screenX=" + positionx + ",screenY=" + positiony);
}

var valignButtonsInTeaser = {
    check: function (groupAlignButton) {
        var divs = groupAlignButton.getElementsByTagName('div');
        for(var i= 0; i < divs.length; i++) {
            if(divs[i].className.indexOf('link')>-1 ) {
                return true;
            }
        }       
        return false;
    },
    // Workaround
    setCSSPositionLink: function (groupAlignButton, cssPosition) {
        var divs = groupAlignButton.getElementsByTagName('div');
        for(var i= 0; i < divs.length; i++) {
            if(divs[i].className.indexOf('link')>-1 ) {
                divs[i].style.position = cssPosition;
            }
        }       
    },   
    set: function () {   
       
        myDivs = document.getElementsByTagName('div');
        myAlignGroups = new Array();
        for(var i=0; i < myDivs.length; i++) {
            if(myDivs[i].className.indexOf('alignButton')>-1 ) {
                if(this.check(myDivs[i])) {
                    this.setCSSPositionLink(myDivs[i], 'static');
                    x = myDivs[i].offsetHeight;
                    this.setCSSPositionLink(myDivs[i], 'absolute');
                    var myAlignButtons = myDivs[i].getElementsByTagName('DIV');
                    for(j=0; j<myAlignButtons.length; j++) {
                        myAlignButtons[j].parentNode.style.height = x + 15 + 'px';   
                    }
                }
            }
        }
    }
}

/********* Funktion fuer 2- oder 4- spaltige Teaserbox  struct_4_4_shadow_variable*******/
function alignBoxHights() {
    var myDivs = document.getElementsByTagName('DIV');
    var myAlignRows = new Array();
    for( j=0; j<myDivs.length; j++ ) {
        if( myDivs[j].className.indexOf('alignHeight') > 0 ) {
            myAlignRows.push( myDivs[j] );
        }
    }    
    for( j=0; j<myAlignRows.length; j++ ) {     
        var maxBoxHeight = 0;
        var myRowDivs = myAlignRows[j].getElementsByTagName('DIV');
        var myAlignBoxes = new Array();
        for( i=0; i<myRowDivs.length; i++ ) {
            if( myRowDivs[i].className.indexOf('alignBox') > 0 ) {
                myAlignBoxes.push( myRowDivs[i] );
            }
        }        
        for( i=0; i<myAlignBoxes.length; i++ ) {
            var myBox =  myAlignBoxes[i];
            //myBox.style.height = '';                                                                
            if( myBox.offsetHeight > maxBoxHeight ) {
                maxBoxHeight = myBox.offsetHeight;
            } 
        }
        for( i=0; i<myAlignBoxes.length; i++ ) {
            var myBox =  myAlignBoxes[i];    
            myBox.style.height = maxBoxHeight + 'px';        
        }                                                                             
    }
}

window.onload = function() {
    alignBoxHights();
}


/**
 * Teaser headline korrektur
 *
 */

//Event.observe(window, 'load', onPageLoad, false);
//function onPageLoad(){
//    var elmnts = [], c =['contentTeaserBgIcon','contentTeaserBgImageLarge','contentTeaserImage','teaserOnlyHeadline'], reposition = false;
//    for(var x = 0;x < c.length; ++x){
//        var temp = document.getElementsByClassName(c[x]);
//        if(temp != ''){
//            for(var y = 0; y < temp.length; ++y){
//                elmnts[elmnts.length] = temp[y];
//            }
//        }
//    }
//    if(elmnts.length > 0){
//        for(var j=0;j < elmnts.length; j++){
//            for(var i=0;i < elmnts[j].getElementsByTagName('h5').length; i++){
//                Element.setStyle(elmnts[j].getElementsByTagName('h5')[i],{display:'inline'});
//                if(Element.getHeight(elmnts[j].getElementsByTagName('h5')[i]) >= 58){
//                    reposition = true;
//                }
//                Element.setStyle(elmnts[j].getElementsByTagName('h5')[i],{display:'block'});
//            }
//        }
//    }
//    if(reposition === true){
//        for(var j=0;j < elmnts.length; j++){
//            for(var i=0;i < elmnts[j].getElementsByTagName('h5').length; i++){
//                Element.setStyle($(elmnts[j]).getElementsByTagName('div')[0], {marginTop: '18.2px'});
//            }
//        }
//    }
//}
 

// JS fuer Searchfeld
function checkFormInput(obj,text) {
    var temp = document.search.SearchQueryText.value;
    //alert(temp);
    if(temp == '')
       document.search.SearchQueryText.value = text;
    else if(temp == text)
        document.search.SearchQueryText.value = ''; 
}

/**
 * SWFObject v1.4: Flash Player detection and embed - http://blog.deconcept.com/swfobject/
 *
 * SWFObject is (c) 2006 Geoff Stearns and is released under the MIT License:
 * http://www.opensource.org/licenses/mit-license.php
 *
 * **SWFObject is the SWF embed script formarly known as FlashObject. The name was changed for
 *   legal reasons.
 */
if(typeof deconcept=="undefined"){var deconcept=new Object();}
if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}
if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}
deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a,_b){
if(!document.createElement||!document.getElementById){return;}
this.DETECT_KEY=_b?_b:"detectflash";
this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);
this.params=new Object();
this.variables=new Object();
this.attributes=new Array();
if(_1){this.setAttribute("swf",_1);}
if(id){this.setAttribute("id",id);}
if(w){this.setAttribute("width",w);}
if(h){this.setAttribute("height",h);}
if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}
this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion(this.getAttribute("version"),_7);
if(c){this.addParam("bgcolor",c);}
var q=_8?_8:"high";
this.addParam("quality",q);
this.setAttribute("useExpressInstall",_7);
this.setAttribute("doExpressInstall",false);
var _d=(_9)?_9:window.location;
this.setAttribute("xiRedirectUrl",_d);
this.setAttribute("redirectUrl","");
if(_a){this.setAttribute("redirectUrl",_a);}};
deconcept.SWFObject.prototype={setAttribute:function(_e,_f){
this.attributes[_e]=_f;
},getAttribute:function(_10){
return this.attributes[_10];
},addParam:function(_11,_12){
this.params[_11]=_12;
},getParams:function(){
return this.params;
},addVariable:function(_13,_14){
this.variables[_13]=_14;
},getVariable:function(_15){
return this.variables[_15];
},getVariables:function(){
return this.variables;
},getVariablePairs:function(){
var _16=new Array();
var key;
var _18=this.getVariables();
for(key in _18){
_16.push(key+"="+_18[key]);}
return _16;
},getSWFHTML:function(){
var _19="";
if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){
if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");}
_19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\"";
_19+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";
var _1a=this.getParams();
for(var key in _1a){_19+=[key]+"=\""+_1a[key]+"\" ";}
var _1c=this.getVariablePairs().join("&");
if(_1c.length>0){_19+="flashvars=\""+_1c+"\"";}
_19+="/>";
}else{
if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");}
_19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\">";
_19+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";
var _1d=this.getParams();
for(var key in _1d){_19+="<param name=\""+key+"\" value=\""+_1d[key]+"\" />";}
var _1f=this.getVariablePairs().join("&");
if(_1f.length>0){_19+="<param name=\"flashvars\" value=\""+_1f+"\" />";}
_19+="</object>";}
return _19;
},write:function(_20){
if(this.getAttribute("useExpressInstall")){
var _21=new deconcept.PlayerVersion([6,0,65]);
if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){
this.setAttribute("doExpressInstall",true);
this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));
document.title=document.title.slice(0,47)+" - Flash Player Installation";
this.addVariable("MMdoctitle",document.title);}}
if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){
var n=(typeof _20=="string")?document.getElementById(_20):_20;
n.innerHTML=this.getSWFHTML();
return true;
}else{
if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}
return false;}};
deconcept.SWFObjectUtil.getPlayerVersion=function(_23,_24){
var _25=new deconcept.PlayerVersion([0,0,0]);
if(navigator.plugins&&navigator.mimeTypes.length){
var x=navigator.plugins["Shockwave Flash"];
if(x&&x.description){_25=new deconcept.PlayerVersion(x.description.replace(/([a-z]|[A-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}
}else{try{
var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
for(var i=3;axo!=null;i++){
axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+i);
_25=new deconcept.PlayerVersion([i,0,0]);}}
catch(e){}
if(_23&&_25.major>_23.major){return _25;}
if(!_23||((_23.minor!=0||_23.rev!=0)&&_25.major==_23.major)||_25.major!=6||_24){
try{_25=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}
catch(e){}}}
return _25;};
deconcept.PlayerVersion=function(_29){
this.major=parseInt(_29[0])!=null?parseInt(_29[0]):0;
this.minor=parseInt(_29[1])||0;
this.rev=parseInt(_29[2])||0;};
deconcept.PlayerVersion.prototype.versionIsValid=function(fv){
if(this.major<fv.major){return false;}
if(this.major>fv.major){return true;}
if(this.minor<fv.minor){return false;}
if(this.minor>fv.minor){return true;}
if(this.rev<fv.rev){return false;}return true;};
deconcept.util={getRequestParameter:function(_2b){
var q=document.location.search||document.location.hash;
if(q){
var _2d=q.indexOf(_2b+"=");
var _2e=(q.indexOf("&",_2d)>-1)?q.indexOf("&",_2d):q.length;
if(q.length>1&&_2d>-1){
return q.substring(q.indexOf("=",_2d)+1,_2e);
}}return "";}};
if(Array.prototype.push==null){
Array.prototype.push=function(_2f){
this[this.length]=_2f;
return this.length;};}
var getQueryParamValue=deconcept.util.getRequestParameter;
var FlashObject=deconcept.SWFObject; // for backwards compatibility
var SWFObject=deconcept.SWFObject;
