function isBrowserGecko() {
    return (navigator.userAgent.indexOf("Gecko/") != -1);
}
function isBrowserIE() {
    return (navigator.appName == 'Microsoft Internet Explorer');
}
var isIE = isBrowserIE();
var isGecko = isBrowserGecko();

function writeWMP(DivID,mediaUrl) {
  var d = document.getElementById(DivID);
  d.innerHTML =
  '<object classid="clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab# Version=5,1,52,701" standby="Loading Microsoft Windows&reg; Media Player components..." type="application/x-oleobject" width="515" height="45">'+
  ((mediaUrl == null) ? '' : ('<param name="fileName" value="'+mediaUrl+'">'))+
  '<param name="animationatStart" value="1">'+
  '<param name="transparentatStart" value="1">'+
  '<param name="autoStart" value="1">'+
  '<param name="showControls" value="1">'+
  '<param name="Volume" value="-300">'+
  '<embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/" '+
  ((mediaUrl == null) ? '' : (' src="'+mediaUrl+'" '))+
  'width="515" height="45" autostart="1" showcontrols="1" volume="-300">'+
  '<\/embed>'+
  '<\/object>';
}

function mainImageChange(baseItemId,newHeroImage) {
  document.getElementById('mainImage_'+baseItemId).src = newHeroImage;
}

function enableColorsOverlay(baseItemId) {

  var itemCount = eval('itemIdArray_'+baseItemId+'.length');
  for (var i = 0; i < itemCount; i++) {
    var colorPosition = eval('colorPosition_'+baseItemId+'[colorsArray_'+baseItemId+'[i]]');
    var colorValue = eval('colorsArray_'+baseItemId+'[i]');
    var sizeValue = eval('sizesArray_'+baseItemId+'[i]');
    var inStockValue = eval('inStockArray_'+baseItemId+'[i]');
    var borderActiveId = 'borderActive_'+baseItemId+'_'+colorPosition;
    var colorImageId = 'colorImage_'+baseItemId+'_'+colorPosition;
    if (sizeValue == document.getElementById('sizeOptions_'+baseItemId).value) {
      if (inStockValue == 'Y') {
        document.getElementById(borderActiveId).style.borderStyle = 'solid';
        document.getElementById(colorImageId).style.cursor = 'pointer';
      }
      else {
        if (document.getElementById(borderActiveId).style.borderStyle.match('solid')) {
          if (document.getElementById('colorName_'+baseItemId).innerHTML == colorValue) {
            document.getElementById('colorName_'+baseItemId).innerHTML = '(none selected)';
          }
        }
        document.getElementById(borderActiveId).style.borderStyle = 'dotted';
        document.getElementById(colorImageId).style.cursor = 'not-allowed';
        document.getElementById('borderSelect_'+baseItemId+'_'+colorPosition).style.borderColor='#fff';
      }
    }
  }

}

function borderChangeOverlay(baseItemId,nameDisplay,colorSequence,maximumColors) {

  var itemCount = eval('itemIdArray_'+baseItemId+'.length');
  if (document.getElementById('borderActive_'+baseItemId+'_'+colorSequence).style.borderStyle.match('solid')) {
    document.getElementById('borderSelect_'+baseItemId+'_'+colorSequence).style.borderColor = '#000';
    //document.getElementById('colorName_'+baseItemId).innerHTML = nameDisplay;
    for (var i = 0; i < itemCount; i++) {
      var itemIdValue = eval('itemIdArray_'+baseItemId+'[i]');
      var colorValue = eval('colorsArray_'+baseItemId+'[i]');
      var sizeValue = eval('sizesArray_'+baseItemId+'[i]');
      if (document.getElementById('sizeOptions_'+baseItemId)) {
        if ((sizeValue == document.getElementById('sizeOptions_'+baseItemId).value) && (colorValue == nameDisplay)) {
          eval('selectedItemId_'+baseItemId+'=itemIdValue');
          eval('newHeroImage = heroImageArray_'+baseItemId+'[itemIdValue]');
          if (document.images && (newHeroImage != '')) {
            document.getElementById('mainImage_'+baseItemId).src = newHeroImage;
          }
        }
      }
      else {
        if (colorValue == nameDisplay) {
          eval('selectedItemId_'+baseItemId+'=itemIdValue');
        }
      }
    }
    for (i = 0; i <= maximumColors; i++) {
      if (i != colorSequence) {
        document.getElementById('borderSelect_'+baseItemId+'_'+i).style.borderColor='#fff';
      }
    }
  }

}

function popWindow(url, name, width, height) {
  var x = (screen.width - width)/2;
  var y = (screen.height - height)/2;
    var opts = 'height=' + height + ',width=' + width + ",screenX=" + x + ",left=" + x + ",screenY=" + y + ",top=" + y + ',location=no,scrollbars=yes,menubar=no,resizable=no,status=no,toolbar=no';

    var newWindow = window.open(url, name, opts);
    newWindow.focus();
}

function popWindowNoScroll(url, name, width, height) {
  var x = (screen.width - width)/2;
  var y = (screen.height - height)/2;
    var opts = 'height=' + height + ',width=' + width + ",screenX=" + x + ",left=" + x + ",screenY=" + y + ",top=" + y + ',location=no,scrollbars=no,menubar=no,resizable=no,status=no,toolbar=no';

    var newWindow = window.open(url, name, opts);
    newWindow.focus();
}

function popupHelp(url, name, w, h){
  var winl = (screen.width - w) / 5;
  var wint = (screen.height - h) / 5;
  winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars=yes,resizable=yes';
  win = window.open(url, name, winprops)
  if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}


function popupGAd(url) {
    var winX = (isIE)?window.screenLeft:window.screenX;
    var winY = (isIE)?window.screenTop:window.screenY;
    var winW = (isIE)?document.body.offsetWidth :window.innerWidth;
    var winH = (isIE)?document.body.offsetHeight: window.innerHeight;

    var extraOffset = (isGecko) ? 100 : 0;

    winX += 20;
    winY += (20 + extraOffset);
    var winprops = 'height=' + winH + ',width=' + winW +
               ',screenX=' + winX + ',left=' + winX +
               ',screenY=' + winY + ',top='+winY+
               ',resizable,toolbar=yes,location=yes,scrollbars=yes,menubar=yes';
    var win = window.open(url, '', winprops)
    if (parseInt(navigator.appVersion) >= 4) {
        win.window.focus();
    }
}


function calculateSelectedItems(all_selected){
  var selected = "";
  var counter = 0;

  array_all_selected = all_selected.split("|");
  //  get all the checkboxes with item name = compare_item
  //  1. if it's checked but not in the list, then add it to the selected_item string.
  //  2. if it's not checked and in the list, then remove from the list

  var elements = document.getElementsByName('compare_item');
  for (i=0; i < elements.length; i++){

    if (elements.item(i).checked == true
        && itemFound(array_all_selected,
                     elements.item(i).value) == -1){
      if (counter > 0) {
        selected += "|";
      }
      selected += elements.item(i).value;
      counter++;
    }
    else if (elements.item(i).checked == false
             && (found_index =
                 itemFound(array_all_selected,
                 elements.item(i).value)) != -1){
      array_all_selected[found_index] = "";
    }
  }
  //   Now let's build the query string and append at the end of the
  // destination url
  for (k=0; k < array_all_selected.length; k++){
    if (array_all_selected[k] != null && array_all_selected[k] != ""
        && array_all_selected[k] != "null" && array_all_selected[k] != "na"
        && array_all_selected[k] != " "){
      if (selected != ""){
        selected += "|";
      }
      selected += array_all_selected[k];
    }
  }
  return selected;
}

function setComparisonItem(desturl,all_selected,is_page_changed){
  var selected = calculateSelectedItems(all_selected);

    if(is_page_changed == true){
    if (selected != ""){
      desturl += "&selected_items=" + escape(selected);
    }
  }
  else{
    final_selected = selected.split('|');
    counter = final_selected.length;
    if ( counter < 2 ){
      setErrorMessage( 'Please select two or more items to compare');
      return false;
    }
    if (counter > 4 ){
      setErrorMessage( 'You may compare up to four items at a time');
      return false;
    }
    if (selected == ""){
      selected = "na";
    }
    desturl += "&selected_items=" + escape(selected);
  }
  document.location = desturl;
  return false;
}

function setErrorMessage(message){

  document.getElementById("ShelfErrorMessage").innerHTML = message;
  var shelfGeneralError = document.getElementById("ShelfErrorSwitch");

  if (shelfGeneralError.className == "NoShelfError"){
    shelfGeneralError.className = "ShelfError";
  }
  showOrHideError("show", 1, message);

  var globalGeneralError = document.getElementById("GlobalErrorSwitch");
  window.scroll(0, getPageOffsetTop(globalGeneralError));
}

function getPageOffsetTop(el){
  var ot = el.offsetTop;
  while ((el=el.offsetParent) != null) { ot += el.offsetTop; }
  return ot;
}

function itemFound(array_all_selected, selected_item_id){
  for (j=0; j < array_all_selected.length; j++){
    if (array_all_selected[j] == selected_item_id){
      return j;
    }
    else{
    }
  }
  return -1;
}

function ParentApparelInfo(getColor, getSize, getQuantity) {
	this.baseItemId;
    this.getColor = getColor;
    this.getSize = getSize;
    this.getQuantity = getQuantity;
    this.setBaseItemId = function(baseItemId) {
    	this.baseItemId = baseItemId;
    }
}

var parentApparelInfo;
function saveApparelInfo(getColor, getSize, getQuantity) {
    parentApparelInfo = new ParentApparelInfo(getColor, getSize, getQuantity);
}

function saveApparelInfoValues(selectedColor, selectedSize, selectedQuantity) {
    saveApparelInfo(
            function () {
                return selectedColor;
            },
            function () {
                return selectedSize;
            },
            function () {
                return selectedQuantity;
            });
}

function removeApparelInfo() {
    parentApparelInfo = null; 
}


function getCookie(cookieName) {
     var cookies = document.cookie;
     var prefix = cookieName + '=';
     var begin = cookies.indexOf('; ' + prefix);
     if (begin == -1) {
         begin = cookies.indexOf(prefix);
         if (begin != 0) {
             return null;
         }
     }
     else {
         begin += 2;
     }
     var end = document.cookie.indexOf(';', begin);
     if (end == -1) {
         end = cookies.length;
     }
     return unescape(cookies.substring(begin + prefix.length, end));
 }



function setCookie(name, value, expireDays, path, domain) {
  document.cookie = name + "=" + value +
  ((expireDays == undefined) ? "" : "; expires=" + (((new Date()).getDate() + expireDays).toGMTString())) +
  ((path == undefined) ? "" : "; path=" + path) +
  ((domain == undefined) ? "" : "; domain=" + domain);
}

var BrowserPreference = new function () {
    var SESSION_COOKIE = { name: 'prefses', path: '/', domain: '.walmart.com' };
    var PERSISTENT_COOKIE = { name: 'prefper', expireDays: 86400 * 365 * 10, path: '/', domain: '.walmart.com' };
    var COOKIES = [SESSION_COOKIE, PERSISTENT_COOKIE];

    var CookieValueEncoding = new function () {
        var SPECIAL_CHARACTER = '~';
        var ESCAPED_SPECIAL_CHARACTER = SPECIAL_CHARACTER + '0';
        var KEYVALUE_SEPARATOR = SPECIAL_CHARACTER + '1';
        var ENTRY_SEPARATOR = SPECIAL_CHARACTER + '2';

        this.decode = function (value, browserPreference) {
            if (null != value && 0 < value.length) {
                var entryTokens = value.split(ENTRY_SEPARATOR);
                for (var i = 0; i < entryTokens.length; i++) {
                    var token = entryTokens[i].split(KEYVALUE_SEPARATOR);
                    if (token.length == 2) {
                        browserPreference[token[0].replace(ESCAPED_SPECIAL_CHARACTER, SPECIAL_CHARACTER)]
                                = token[1].replace(ESCAPED_SPECIAL_CHARACTER, SPECIAL_CHARACTER);
                    }
                }
            }
            return browserPreference;
        }

        this.encode = function (browserPreference) {
            var encodedValue = '';
            for (var attName in browserPreference) {
                if (typeof browserPreference[attName] == 'string') {
                    var name = attName.replace(SPECIAL_CHARACTER, ESCAPED_SPECIAL_CHARACTER);
                    var value = browserPreference[attName].replace(SPECIAL_CHARACTER, ESCAPED_SPECIAL_CHARACTER);
                    encodedValue = encodedValue + name + KEYVALUE_SEPARATOR + value + ENTRY_SEPARATOR;
                }
            }
            return (encodedValue.length == 0)
                    ? encodedValue
                    : encodedValue.substring(0, encodedValue.length - ENTRY_SEPARATOR.length);
        }
    }

    var that = this;
    var shelfView;
    var shelfViewOnUpdate;

    function updatePreference(key, value, cookie) {
        var segmentedPreferences = CookieValueEncoding.decode(cookie.value, {});
        if (value != undefined) {
            segmentedPreferences[key] = value;
        }
        else {
            delete segmentedPreferences[key];
        }
        cookie.value = CookieValueEncoding.encode(segmentedPreferences);
        setCookie(cookie.name, cookie.value, cookie.expireDays, cookie.path, cookie.domain);
    }

    function initializePreferences() {
        for (var index in COOKIES) {
            COOKIES[index].value = getCookie(COOKIES[index].name);
            CookieValueEncoding.decode(COOKIES[index].value, that);
        }

        shelfView = that.SHELFVIEW;

        that.SHELFVIEW = {
            isGrid: function() {
                return shelfView == 'grid'
            },
            isList: function() {
                return shelfView != 'grid'
            },
            set: function(value) {
                if (value != 'grid') {
                    value = null;
                }
                if (shelfView != value) {
                    shelfView = value;
                    updatePreference('SHELFVIEW', value, SESSION_COOKIE);
                    if (that.shelfViewOnUpdate != undefined) {
                        that.shelfViewOnUpdate();
                    }
                }
            },
            setUpdate: function(onUpdate) {
                if (typeof onUpdate == 'function') {
                    that.shelfViewOnUpdate = onUpdate;
                    onUpdate();
                }
                else {
                    that.shelfViewOnUpdate = null;
                }
            }
        }
    }

    this.refresh = function () {
        for (var existingAttributeName in this) {
            var typeOfExistingAttribute = typeof this[existingAttributeName];
            if (typeOfExistingAttribute == 'string') {
                delete this[existingAttributeName];
            }
        }
        initializePreferences();
    }

    initializePreferences();
}

function formatCurrency(num) {
    num = num.toString().replace(/\$|\,/g,'');
    if(isNaN(num))
    num = "0";
    sign = (num == (num = Math.abs(num)));
    num = Math.floor(num*100+0.50000000001);
    cents = num%100;
    num = Math.floor(num/100).toString();
    if(cents<10)
    cents = "0" + cents;
    for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
    num = num.substring(0,num.length-(4*i+3))+','+
    num.substring(num.length-(4*i+3));
    return (((sign)?'':'-') + '$' + num + '.' + cents);
}

function getCustomerInfo(cookieName,path,domain,delimiter){
    var custCookieVal = getCookie(cookieName);
    if(custCookieVal && null != custCookieVal && 0<custCookieVal.length){
        var decodedCustCookieVal = unescape(custCookieVal);
        var rx = eval("/"+delimiter+"/");
        var custInfo = decodedCustCookieVal.split(rx);
        if(4<custInfo.length){
            return custInfo;
        }
        else{
            deleteCookie(cookieName,path,domain);
            return null;
        }
    }
    else{
        return null;
    }
}

var re = new RegExp( '.*walmart.com$', 'i' );
function getCustFirstName() {
    if (document.location.hostname.match(re)) {
        var custInfo = getCustomerInfo('com.wm.customer', '/', '.walmart.com', '~~');
        if(custInfo && null != custInfo && 4 < custInfo.length && null != custInfo[4] && "true" == custInfo[4]){
            var tempFirstName = custInfo[1];
            var firstRegExp = /\+/g; //search all +s in the string
            var decodedFirstName =  unescape(String(tempFirstName).replace(firstRegExp, " "));
        }
        else{
            return null;
        }
    }
    return decodedFirstName;
}



// functions from email_collect.js added to global.js to avoid extra js call. Ticket 161299
function submit_email(email, isPopUpWindow)
{

  var badChars = '$~\`\<\>+*#%\/\'\\ ";:?!()[]\{\}^|';
  var atSignLoc = email.value.indexOf('@',0);
  var zone_suffix = email.value.substring(email.value.lastIndexOf('.')+1);

  // Make sure there is an email address
  if (email.value == '' || email.value == null || email.value == "email address") {
     alert('An Email address must be entered for EmailMe sign-up.');
     email.focus();
     return false;
  }

  // --------------------
  // Look for the period-symbols to make sure the email address is properly formed
  // --------------------
  if (email.value.indexOf('@.',0) != -1) {
    alert('A period cannot immediately follow the @-symbol in email address '+email.value);
    email.focus();
    return false;
  }

  if (email.value.indexOf('.@',0) != -1){
    alert('A period cannot immediately precede the @-symbol in email address '+email.value);
    email.focus();
    return false;
  }

  if (email.value.indexOf('..',0) != -1) {
    alert('Two periods cannot be adjacent in email address '+email.value);
    email.focus();
    return false;
  }


  // -------------------
  // Validate where the @-sign is to make sure the address is well formed.
  // -------------------
  if (email.value.indexOf('@') != email.value.lastIndexOf('@')){
     alert("Please enter only one email address.");
     email.focus();
     return false;
  }

  if (atSignLoc == -1) {
    alert('Email address '+email.value+' must contain an @');
    email.focus();
    return false;
  }

  if (atSignLoc == 0) {
    alert('Email address '+email.value+' must not start with an @');
    email.focus();
    return false;
  }

  if (email.value.indexOf('.', atSignLoc) == -1) {
    alert('Email address '+email.value+' domain name and zone-suffix should be seperated by a period.');
    email.focus();
    return false;
  }

  // -------------------
  // Look for bad chacters in the email address.
  // -------------------
  for (idx=0; idx < badChars.length; idx++) {
    if (email.value.indexOf(badChars.charAt(idx),0) > -1) {
      alert('Email address '+email.value+', contains invalid characters.');
      email.focus();
      return false;
    }
  }

  // -------------------
  // Look for non-ASCII special chars.
  // -------------------
  for (i=0; i<email.value.length; i++) {
    if (email.value.charCodeAt(i)>127) {
      alert('Email address '+email.value+' contains non ascii characters.');
      email.focus();
      return false;
    }
  }

  if (isPopUpWindow)
  {
    window.open('', 'email_confirm', 'width=300,height=400,status=no,toolbar=no,resizable=no,menubar=no');
  }
  return true;
}

function buildEmailSubscribeURL(sIdParam,sId,spamTypeParamName,spamTypeValue,formName){
    var custEmail = document.forms[formName].email_email.value;
    return "/popup.gsp?"+spamTypeParamName+"="+spamTypeValue+"&"+"email_email="+custEmail+"&"+sIdParam+"="+sId+"&save.x=0&save.y=0";
}

function openThxPopup(sIdParam,sId,spamTypeParamName,spamTypeValue,formName){

         var url = buildEmailSubscribeURL(sIdParam,sId,spamTypeParamName,spamTypeValue,formName);
         var opts="menubar=no,resizable=no,status=no,scrollbar=no,toolbar=no,toolbar=no";
         window.open(url,'thankyou',opts);
         return true;
}

function openThxPopupExpiration(sIdParam,sId,spamTypeParamName,spamTypeValue,formName,monFormField,dayFormField,yearFormField){
         var mon = document.forms[formName].elements[monFormField].value;
         var day = document.forms[formName].elements[dayFormField].value;
         var year = document.forms[formName].elements[yearFormField].value;

         var url = buildEmailSubscribeURL(sIdParam,sId,spamTypeParamName,spamTypeValue,formName)+"&"+monFormField+"="+mon+"&"+dayFormField+"="+day+"&"+yearFormField+"="+year;

         var opts="menubar=no,resizable=no,status=no,scrollbar=no,toolbar=no,toolbar=no";
         window.open(url,'thankyou',opts);
         return true;
}
// functions from email_collect.js end.

// Functions from coppa_utils.js start
function shouldCOPPAPrevent(){
            var allcookies=document.cookie;
            var now=new Date();
            var pos=allcookies.indexOf("coppa_timeout");
            if(pos!=-1){
                var start=pos+14;
                var end=allcookies.indexOf(";",start);
                if(end == -1)
                  end=allcookies.length;
                  var value=parseInt(allcookies.substring(start,end));
                if(value-now.getTime()>0)
                    return true;
                }
            return false;
         }
function showCOPPAMsgPopup(){
              var opts="menubar=no,resizable=no,status=no,scrollbar=no,toolbar=no,toolbar=no";
              window.open("/cservice/coppa_message_popup.jsp",'thankyou',opts);
              return;
}

function setCOPPACookie(){
          document.cookie = "coppa_timeout="+escape(today.getTime()+300000)+
                "; path=/"+
                "; domain=walmart.com"
                + ";";
}
// Functions from coppa_utils.js end

//****************************************************************************************************
// js from swfobject.js (MRT 4931) - javascript added to global.js to avoid additional js call to swfObject.js
/**
 * 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 formerly 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;
//****************************************************************************************************
// Functions from flash_utils.js start
function s_clickmap_handler(id) {
    var func = id+"_DoFSCommand";
    var bkFunc = "s_"+func;
    html =  "<script language='javascript'>"
         +      "var "+bkFunc+"="+func+"; "
         +      "var "+func+" = function(cmd,args) {"
         +          "if (cmd=='s_clickmap') {"
         +              "s_eo={tagName:'FLASH',s_oidt:0,s_oid:'"+id+":'+args};"
         +              "s_gs(s_account);"
         +          "} else if ("+bkFunc+") {"
         +              bkFunc+"(cmd,args);"
         +          "}"
         +      "};"
         +  "</"+"script>"
         +  "<script language='vbscript'>\n"
         +      "Sub "+id+"_FSCommand(cmd, args)\n"
         +          "call "+id+"_DoFSCommand(cmd, args)\n"
         +      "End Sub\n"
         +  "</"+"script>"
    document.writeln(html);
}

function writeFlash(DivID,richMediaUrl,richMediaWidth,richMediaHeight,richMediaID) {
  var d = document.getElementById(DivID);
  d.innerHTML =
  '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="'+richMediaWidth+'" height="'+richMediaHeight+'" id="'+richMediaID+'">'+
  '<param name="movie" value="'+richMediaUrl+'">'+
  '<param name="quality" value="high">'+
  '<param name="menu" value="false">'+
  '<param name="wmode" value="transparent">'+
  '<param name="allowScriptAccess" value="always">'+
  '<embed src="'+richMediaUrl+'" quality="high" width="'+richMediaWidth+'" height="'+richMediaHeight+'" name="'+richMediaID+'" type="application/x-shockwave-flash" menu="false" wmode="transparent" allowScriptAccess="always">'+
  '<\/embed>'+
  '<\/object>';
}

// Flash Version Detector  v1.2.1
// documentation: http://www.dithered.com/javascript/flash_detect/index.html
// license: http://creativecommons.org/licenses/by/1.0/
// code by Chris Nott (chris[at]dithered[dot]com)
// with VBScript code from Alastair Hamilton (now somewhat modified)

function isDefined(property) {
  return (typeof property != 'undefined');
}

var flashVersion = 0;
function getFlashVersion() {
	var latestFlashVersion = 10;
   var agent = navigator.userAgent.toLowerCase();

   // NS3 needs flashVersion to be a local variable
   if (agent.indexOf("mozilla/3") != -1 && agent.indexOf("msie") == -1) {
      flashVersion = 0;
   }

	// NS3+, Opera3+, IE5+ Mac (support plugin array):  check for Flash plugin in plugin array
	if (navigator.plugins != null && navigator.plugins.length > 0) {
		var flashPlugin = navigator.plugins['Shockwave Flash'];
		if (typeof flashPlugin == 'object') {
			for (var i = latestFlashVersion; i >= MIN_SUPPORTED_FLASH_VERSION; i--) {
	            if (flashPlugin.description.indexOf(i + '.') != -1) {
	               flashVersion = i;
	               break;
	            }

         	}

		}
	}

	// IE4+ Win32:  attempt to create an ActiveX object using VBScript
	else if (agent.indexOf("msie") != -1 && parseInt(navigator.appVersion) >= 4 && agent.indexOf("win")!=-1 && agent.indexOf("16bit")==-1) {
	   var doc = '<scr' + 'ipt language="VBScript"\> \n';
      doc += 'On Error Resume Next \n';
      doc += 'Dim obFlash, i \n';
      doc += 'For i = ' + latestFlashVersion + ' To ' + MIN_SUPPORTED_FLASH_VERSION + ' Step -1 \n';
      doc += '   Set obFlash = CreateObject("ShockwaveFlash.ShockwaveFlash." & i) \n';
      doc += '   If IsObject(obFlash) Then \n';
      doc += '      flashVersion = i \n';
      doc += '      Exit For \n';
      doc += '   End If \n';
      doc += 'Next \n';
      doc += '</scr' + 'ipt\> \n';
      document.write(doc);
   }

	// WebTV 2.5 supports flash 3
	else if (agent.indexOf("webtv/2.5") != -1) flashVersion = 3;

	// older WebTV supports flash 2
	else if (agent.indexOf("webtv") != -1) flashVersion = 2;

	// Can't detect in all other cases
	else {
		flashVersion = flashVersion_DONTKNOW;
	}

	return flashVersion;
}

flashVersion_DONTKNOW = -1;
MIN_SUPPORTED_FLASH_VERSION = 3;
// Functions from flash_utils.js end
//****************************************************************************************************