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_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_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];}}//-----------------------------------------------------------////                                                           //// Version: 1.55, Author: Karol Kolodziej, Date: 15Nov, 2006 ////                                                           ////-----------------------------------------------------------////--------------------////                    //// FORM RELATED STUFF ////                    ////--------------------//function submitForm(formID, formAction){    var form = document.getElementById(formID);    if (typeof(formAction) != "undefined")      form.action = formAction;    form.submit();}function removeQueryString(formID, params){    var form = document.getElementById(formID);    var formAction = form.action;    var indx = formAction.indexOf("?");    if (indx == -1) return;        if (typeof(params) == 'undefined')    {      form.action = form.action.substr(0, indx); return;    }        var paramsOld  = formAction.substr(indx + 1);    var aParamsOld = convertParamsToSimpleArray(paramsOld, "&");    var aParamsNew = convertParamsToSimpleArray(params, "&");    var aParamsOut = new Array();         for (var incr = 0; incr <= aParamsOld.length - 1; incr++)    {      if (aParamsOld[incr][0] != "")        if (getSimpleArrayValue(aParamsNew, aParamsOld[incr][0]) == "")                aParamsOut.push(aParamsOld[incr]);    }        formAction = formAction.substr(0, indx);        formAction += "?" + (aParamsOut.join("&")).replace(/,/g,"=");    form.action = formAction;        return form.action;}function addQueryString(formID, params){    var form = document.getElementById(formID);     var formAction = form.action;    var paramsOld = "";    var indx = formAction.indexOf("?");    if (indx > -1)      paramsOld = formAction.substr(indx + 1);          var aParamsOut = addParams(paramsOld, params);        if (indx > -1)      formAction = formAction.substr(0, indx);        formAction += "?" + (aParamsOut.join("&")).replace(/,/g,"=");    form.action = formAction;        return form.action;}//-------------------////                   //// CSS MANIPULATION  ////                   ////-------------------//function clearCssProperties(strCss){   if(strCss == "") return "";      var aCssProperty = strCss.split(";");   var strCssOut = "";   var incr = 0;   for (incr = 0; incr < aCssProperty.length; ++incr)   {     var aStrCss = aCssProperty[incr].split(":");      strCssOut += aStrCss[0] + ":;"   }   strCssOut = strCssOut.substr(0, strCssOut.length - 1);   return strCssOut;}function toggleElementVisibility(id){   var style_display = document.getElementById(id).style.display.toLowerCase();   setElementCss(id, "display:" + (style_display == "block" ? "none" : "block"));}function setElementCss(id, strCss){   var elem = document.getElementById(id);   _setElementCss(elem, strCss)}function _setElementCss(elem, strCss){   if(typeof(elem) == 'undefined') return;   if(strCss == "") return;      var aCssProperty = allTrim(strCss).split(";");   var aCssPropertyNew = elem.style.cssText.split(";");   var incr = 0;   for (incr = 0; incr < aCssProperty.length; ++incr)   {     var aStrCss = allTrim(aCssProperty[incr].replace(/'/g,"")).split(":");           var boolFound = false;     for (incr2 = 0; incr2 < aCssPropertyNew.length; ++incr2)     {       var aStrCssNew = allTrim(aCssPropertyNew[incr2].replace(/'/g,"")).split(":");       if (aStrCss[0].toLowerCase() == aStrCssNew[0].toLowerCase())       {           aCssPropertyNew[incr2] = aStrCssNew[0] + ":" + aStrCss[1];         boolFound = true; break;       }     }     if (boolFound == false)        if ((aCssPropertyNew != null) && (allTrim(aCssPropertyNew[aCssPropertyNew.length - 1]) == ""))         aCssPropertyNew[aCssPropertyNew.length - 1] = aCssProperty[incr];       else         aCssPropertyNew.push(allTrim(aCssProperty[incr]));          if (aStrCss[0].toLowerCase() == "display")        eval("elem.style." + aStrCss[0] + "='" + aStrCss[1] + "'");   }   elem.style.cssText = aCssPropertyNew.join(";");}//-------------------////                   //// XPATH FUNCTIONS   ////                   ////-------------------//function getElementXPath(elem){  var xPath = "";  var elemSibling = elem;  var elemPrevSibling = elem;  var incr = 0;    while ((typeof(elemSibling) != "undefined") && (elemSibling != null))  {    var elemTmp = elemPrevSibling.previousSibling;    if (elemTmp != null)    {       elemPrevSibling = elemTmp;      if (elemPrevSibling.tagName == elemSibling.tagName)         incr++;    }    else    {        xPath = ("/" + elemSibling.tagName + "[" + incr + "]") + xPath;       if (elemSibling.tagName.toLowerCase() == "form")        break;      elemSibling = elemSibling.parentNode;        elemPrevSibling = elemSibling;      incr = 0;      }    }  return xPath;}function getElementContainer(elem, containerTagName){  var elemSibling = elem;  var elemPrevSibling = elem;  var incr = 0;    while ((typeof(elemSibling) != "undefined") && (elemSibling != null))  {    var elemTmp = elemPrevSibling.previousSibling;    if (elemTmp != null)    {       elemPrevSibling = elemTmp;      if (elemPrevSibling.tagName == elemSibling.tagName)         incr++;    }    else    {        if (typeof(elemSibling.tagName) == "undefined")        return null;      if (elemSibling.tagName.toLowerCase() == containerTagName)        return elemSibling;      elemSibling = elemSibling.parentNode;        elemPrevSibling = elemSibling;      incr = 0;      }    }  return null;}//-------------------////                   //// UTILITY FUNCTIONS ////                   ////-------------------//function addParams(paramsOld, params){    var aParamsOld = convertParamsToSimpleArray(paramsOld, "&");    var aParamsNew = convertParamsToSimpleArray(params, "&");    var aParamsOut = new Array();         for (var incr = 0; incr <= aParamsOld.length - 1; incr++)    {      if (aParamsOld[incr][0] != "")        if (getSimpleArrayValue(aParamsNew, aParamsOld[incr][0]) == "")                aParamsOut.push(aParamsOld[incr]);    }        for (var incr = 0; incr <= aParamsNew.length - 1; incr++)    {      aParamsOut.push(aParamsNew[incr]);    }    return aParamsOut;}function getSelectValue(sel){  return getSelectOption(sel).value;}function getSelectText(sel){  return getSelectOption(sel).text;}function getSelectOption(sel){  return sel.options[sel.selectedIndex];}function convertParamsToSimpleArray(params, delim){  var arr    = params.split(delim);  var arrOut = new Array(arr.length);  for (var incr = 0; incr <= arrOut.length - 1; incr++)  {    var paramName  = (arr[incr].split("="))[0];    var paramValue = (arr[incr].split("="))[1];    arrOut[incr] = new Array(2);    arrOut[incr][0] = paramName;    arrOut[incr][1] = paramValue;  }	  return arrOut;}function createMultiArray(rows, columns){  var arr = new Array(rows);  for (var incr = 0; incr <= rows - 1; incr++)  {    arr[incr] = new Array(columns);    for (incr2 = 0; incr2 <= columns - 1; incr2++)    {      arr[incr][incr2] = "";    }  }  return arr;}function getMultiArrayValue(array, searchArg, columnSearched, boolReturnLast){  if (array == null) return null;  var columns = 1;  var arrOut = null;  for (var incr = 0; incr < array.length; ++incr)  {          if (incr == 0) columns = array[incr].length;       if (searchArg == array[incr][columnSearched - 1])      {         arrOut = array[incr];          if ((typeof(boolReturnLast) == "undefined") || !boolReturnLast)           return arrOut;      }  }  return arrOut != null ? arrOut : createMultiArray(1, columns)[0];}function getSimpleArrayValue(array, searchArg){  var arr = getMultiArrayValue(array, searchArg, 1, true);   return arr == null ? "" : arr[1];}function countObjectProperties(obj){   var incr = 0;   for (var key in obj) incr++;   return incr;}function getFileNameFromPath(path){  var indx = path.lastIndexOf("/");  if (indx == -1)    indx = path.lastIndexOf("\\");  var fileName = path.substr(indx + 1);  return fileName;}function getFileExtension(fileName){  var indx = fileName.lastIndexOf(".");  var fileExt = fileName.substr(indx + 1);  return fileExt;}function getElementAttributeValue(elem, attribName){  attribName = attribName.toLowerCase();  for (var incr = 0; incr <= elem.attributes.length; incr++)  {    var attrib = elem.attributes[incr];    if (typeof(attrib) == 'undefined') continue;    if (attrib.name.toLowerCase() == attribName) return attrib.value;    }  return "";}function parseOutNumber(text){    var textOut = "";    var chr = "";    for (var incr = 0; incr <= text.length-1; incr++)    {      chr = text.substr(incr, 1);      if (!isNaN(chr)) textOut += chr;     }    return textOut;}function leftTrim(text){  var textOut = text;  var chr = "";  var incr = -1;  while (incr++ <= text.length - 1)  {    chr = text.substr(incr, 1);    if (chr == " ") textOut = textOut.substr(1);    else break;  }  return textOut;}function rightTrim(text){  var textOut = text;  var chr = "";  var incr = text.length;  while (incr-- >= 0)  {    chr = text.substr(incr, 1);    if (chr == " ") textOut = textOut.substr(0, textOut.length - 1);    else break;  }  return textOut;}function allTrim(text){  return rightTrim(leftTrim(text));}