var activeSub=0;
var SubNum=0;
var gImages=new Array;
var gIndex=0;
var DCS=new Object();
var WT=new Object();
var DCSext=new Object();
var path = '/';


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;
}

var detect = navigator.userAgent.toLowerCase();
var OS,browser,version,total,thestring;
function checkIt(string)
{
	place = detect.indexOf(string) + 1;
	thestring = string;
	return place;
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0	
	s = new String(selObj.options[selObj.selectedIndex].value);
	if(checkIt('msie')) {s = s.replace("html/model_range/compare_models/","");}

  eval(targ+".location='"+s+"'");
  if (restore) selObj.selectedIndex=0;
}

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];}
}
		
MM_preloadImages(path + 'images/home/home_3.gif',path + 'images/home/model_3.gif',path + 'images/home/finance_3.gif',path + 'images/home/accessories_3.gif',path + 'images/home/approved_3.gif',path + 'images/home/about_3.gif',path + 'images/home/contact_3.gif');


function reDo(){ window.location.reload() }
   // window.onresize = reDo;


	    var timerID = null;
		var timerOn = false;
		var timecount = 700;
		var what = null;
		var newbrowser = true;
		var check = false;

    	function init(){
    		//setLyr(this,'footer');
          if (document.layers) {
                        layerRef="document.layers";
                        styleSwitch="";
                        visibleVar="show";
			screenSize = window.innerWidth;
			what ="ns4";


          }else if(document.all){
                      //  alert ("Running IE");
                        layerRef="document.all";
                        styleSwitch=".style";
                        visibleVar="visible";
			screenSize = document.body.clientWidth + 18;
			what ="ie";

		  }else if(document.getElementById){
                        layerRef="document.getElementByID";
                        styleSwitch=".style";
                        visibleVar="visible";
			what="moz";
		  
		  }else{
			what="none";
			newbrowser = false;
		  }
		  
		check = true;
  	 	}

	// Turns the layers on and off
        function showLayer(layerName){
        	if(check){
        		if (what =="none"){
        			return;
        			}
	        	else if (what == "moz"){
        			document.getElementById(layerName).style.visibility="visible";
        			}
        		else{
                  eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.visibility="visible"');
                  }
		 }
        	else {
        		return;}
		}

        function hideLayer(layerName){
        	if(check){
        		if (what =="none"){
        			return;
        			}
        		else if (what == "moz"){
        			document.getElementById(layerName).style.visibility="hidden";
        			}
        		else{
                  eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.visibility="hidden"');
				}
        
        	}
        	else {// alert ("Please wait for the page to finish loading.");
        		return;}
        }


		function hideAll(){
				// hideLayer('navDrop1');
				hideLayer('navDrop2');
				hideLayer('navDrop3');
				hideLayer('navDrop4');
				hideLayer('navDrop5');
				hideLayer('navDrop6');
				hideLayer('navDrop7');	
				hideLayer('navDrop8');
				}


		function startTime() {
	        if (timerOn == false) {
                timerID=setTimeout( "hideAll()" , timecount);
                timerOn = true;

	        }

		}


		function stopTime() {
	        if (timerOn) {
    	        clearTimeout(timerID);
                timerID = null;
                timerOn = false;
	        }
		}	
		

var NN4 = false;

var NN6 = false;

var IE = false;

var Win = false;

var Mac = false;



if ((navigator.appName == "Netscape") && parseInt(navigator.appVersion) < 5) {NN4 = true;}

if ((navigator.appName == "Netscape") && parseInt(navigator.appVersion) >= 5) {NN6 = true;}

if (navigator.userAgent) {

	if (navigator.userAgent.indexOf("MSIE") > -1) {IE = true;}

}

if (navigator.platform.indexOf("Win") > -1) {Win = true;}

if (navigator.platform.indexOf("Mac") > -1) {Mac = true;}



var NN = NN4 || NN6;

function popUp(url, width, height, scroll) {

	if (scroll == "yes") {

		width = String(width + 10);

	}
	if(width == 'max'){width = screen.width - 10;}
	if(height == 'max'){height = screen.height - 10;}

	var screenX=(765-width) / 2;

	var screenY=(452-height) / 2;

	if (screenX < 20) { screenX=20; };

 	if (screenY < 20) { screenY=20; };

 	if (NN) {

 		keywordOpenX = "screenX";

 		keywordOpenY = "screenY";

	} else {

 		keywordOpenX = "left";

 		keywordOpenY = "top";

	}

	if (url.indexOf("?") == -1) {

		url = url+"?random="+Math.random();

	} else {

		url = url+"&random="+Math.random();

	}

	if (navigator.appVersion.indexOf("Win") == -1) {

		popupwin = window.open(url, "", "width="+width+",height="+height+","+keywordOpenX+"="+screenX+","+keywordOpenY+"="+screenY+",toolbar=yes,scrollbars="+scroll+",resizable="+scroll);

		popupwin.focus();

	}

	else {

		popupwin = window.open(url, "_blank", "width="+width+",height="+height+","+keywordOpenX+"="+screenX+","+keywordOpenY+"="+screenY+",scrollbars="+scroll+",resizable="+scroll);

		popupwin.focus();

	}

}

function getObj(name)
{
 if (document.getElementById)
 {
	   this.obj = document.getElementById(name);
	   this.style = document.getElementById(name).style;
 }
 else if (document.all)
 {
	   this.obj = document.all[name];
	   this.style = document.all[name].style;
 }
 else if (document.layers)
 {
	   if (document.layers[name])
	   {
	   	this.obj = document.layers[name];
	   	this.style = document.layers[name];
	   }
	   else
	   {
	    this.obj = document.layers.testP.layers[name];
	    this.style = document.layers.testP.layers[name];
	   }
 }
}


function getSize() {
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else if( document.documentElement &&
      ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
  }
//  window.alert( 'Width = ' + myWidth );
//  window.alert( 'Height = ' + myHeight );
	return myHeight;
}

function setLyr(obj,lyr,fb)
{
	var newX;
	
	var scrollH;
	
	if(document.documentElement.scrollHeight < 1){
		scrollH = document.body.scrollHeight;
	}else{
		scrollH = document.documentElement.scrollHeight;
	}

	
	if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
		newX = (fb+=null)? scrollH - 45: scrollH - 20 ; 
	}else{
	//IE 6+ in 'standards compliant mode'
		newX = (fb!=null)? scrollH -25 : scrollH -7; 
	}

	if(scrollH > getSize()){
		if( typeof( window.innerWidth ) == 'number' ) {
	    //Non-IE
			newX = (fb!=null)? scrollH + 38: scrollH + 50;
		}else{
			newX = (fb!=null)? scrollH - 13: scrollH - 50;	
		}
	}
	
//alert("scrollH: " + scrollH + " getSize(): " + getSize() + "newX: " + newX);

	var x = new getObj(lyr);
	x.style.top = newX + 'px';
}


function setAgain() {
	var x = new getObj('footer');
	x.style.top = '10px';	
	
	var newX;
	
	var scrollH;
	
	if(document.documentElement.scrollHeight < 1){
		scrollH = document.body.scrollHeight;
	}else{
		scrollH = document.documentElement.scrollHeight;
	}

	
	if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
		newX = scrollH - 18;
	}else{
	//IE 6+ in 'standards compliant mode'
		newX = scrollH -2;
	}

	if(scrollH > getSize()){
		if( typeof( window.innerWidth ) == 'number' ) {
	    //Non-IE
			newX = scrollH + 20;
		}else{
			newX = scrollH - 13;			
		}
	}
	
//alert("scrollH: " + scrollH + " getSize(): " + getSize() + "newX: " + newX);

	x.style.top = newX + 'px';
}

























 //[http://www.pseliger.de/jsExtendedApi/jsApi.bundles.DOM.getters.js]

/*

	- due to dynapi namespace collidition bugs it is not able to implement a prototype method [Array.prototype.forEach]

	- therefore every possible usecase for "[array object].forEach" got changed to a static "Array.forEach([array object], ...)"

*/

Array.forEach = function (obj, fct) {if(typeof fct=="function"){var i,l=(((obj instanceof Array)||((typeof obj.length=="number")&&((typeof obj.item=="function")||(typeof obj.item=="object")||(typeof obj.item=="string")||(obj instanceof window.NodeList)||(obj instanceof window.HTMLCollection))))?(obj.length):(0));for(i=0;i<l;++i){fct.call(null,(obj[i]||obj.item(i)),i,obj);}}};



//[http://www.pseliger.de/jsExtendedApi/jsApi.EventDispatcher.packer.compressed.js] - see also: [http://www.pseliger.de/jsExtendedApi/jsApi.EventDispatcher.js] as well as [http://www.pseliger.de/jsExtendedApi/jsApi.EventDispatcher.dev.js] and [http://www.pseliger.de/jsExtendedApi/jsApi.EventDispatcher.hybrid.js]

var EventDispatcher = new(function(){this.constructor=Object;var Event=function(target,type){this.constructor=arguments.callee;this.initEvent=function(target,type){this.target=target;this.type=type;this.timeStamp=new Date()};this.initEvent.apply(this,arguments)};var EventListener=function(thisTarget,type,handler){this.constructor=arguments.callee;var defaultEvent=new Event(thisTarget,type);this.handleEvent=function(evt){if(typeof evt==="string"){evt={target:defaultEvent.target,type:defaultEvent.type,timeStamp:defaultEvent.timeStamp}}else{evt.target=((evt.target&&(typeof evt.target==="object")&&(evt.target instanceof EventTarget))?(evt.target):(defaultEvent.target));evt.type=((evt.type&&((typeof evt.type==="string")||(evt.type instanceof String)))?(evt.type):(defaultEvent.type));evt.timeStamp=defaultEvent.timeStamp}handler(evt)}};var EventTarget=function(){this.constructor=arguments.callee;var events={};this.addEventListener=function(type,handler){if(type&&handler&&((typeof type==="string")||(type instanceof String))&&(typeof handler==="function")){var listener=new EventListener(this,type,handler);if(events[type]){var handlers=events[type].handlers;var listeners=events[type].listeners;if(!handlers.contains(handler)){handlers.push(handler);listeners.push(listener)}}else{var event=events[type]={};event.handlers=[];event.listeners=[];event.handlers.push(handler);event.listeners.push(listener)}listener=null;delete listener}};this.removeEventListener=function(type,handler){if(type&&handler&&((typeof type==="string")||(type instanceof String))&&(typeof handler==="function")){if(events[type]){var handlers=events[type].handlers;var listeners=events[type].listeners;var idx=handlers.indexOf(handler);handlers.remove(handler);listeners.remove(listeners[idx])}}};this.dispatchEvent=function(evt){var successfully=false;var type;type=((evt)?((typeof evt==="object")?((typeof evt.type==="string")?(evt.type):(type)):((typeof evt==="string")?(evt):(type))):(type));if(type){Array.forEach(events[type].listeners, (function(elm){elm.handleEvent(evt)}));successfully=true}return successfully}};this.register=function(obj){EventTarget.call(obj)};this.unsubscribe=function(obj){if(typeof obj.addEventListener==="function"){delete obj.addEventListener}if(typeof obj.removeEventListener==="function"){delete obj.removeEventListener}if(typeof obj.dispatchEvent==="function"){delete obj.dispatchEvent}}})();







(function (isSelfIntroducing) { // [[MiniSilhouetteNavigation]] could also be achived as [[Singleton]] *constructor* pattern





	var regXRangeClass = (/^(mini\s+clubman|mini\s+cabrio|mini\s+convertible|mini\s+cabriolet|mini)(?:\s|\b)/);

	var regXWhiteSpace = (/\s+/);



	var images = {}; // to be assigned by an outside preloader object





	var Model = function (/*elm:[HTMLLIElement]*/) { // *private* constructor - [en] model / [de] Modell





		this.constructor = arguments.callee;

		var self = this;



		EventDispatcher.register(this); // DOM2AlikeEventDispatcher





		var node, nodeLeft, nodeWidth;



		var timeoutId, timeout = 20, inkrement = 15, stopAt;

		var sliding = function () {



			clearTimeout(timeoutId);



			if (nodeLeft >= stopAt) {

				node.getElementsByTagName("a")[0].style.visibility = "visible";

				node.style.background = "none";

				node.style.left = (stopAt + "px");

				nodeLeft = stopAt;

			} else {

				nodeLeft += inkrement;

				node.style.left = (nodeLeft + "px");



				timeoutId = setTimeout(sliding, timeout);

			}

		};





		this.slideIn = function () {



			clearTimeout(this.timeoutId);



			node.getElementsByTagName("a")[0].style.visibility = "hidden";

			node.style.background = ("transparent url(" + images.backgroundCopies[node.id].src + ") no-repeat scroll 0 3px");

			node.style.left = ("-" + nodeWidth + "px");

			node.style.visibility = "visible";



			nodeLeft = -nodeWidth;

			stopAt = 0;



			sliding();

		};

		this.slideOut = function () {



			node.getElementsByTagName("a")[0].style.visibility = "hidden";

			node.style.background = ("transparent url(" + images.backgroundCopies[node.id].src + ") no-repeat scroll 0 3px");



			nodeLeft = 0;

			stopAt = (nodeWidth + 300);



			sliding();

		};





		this.compile = function (elm/*:[HTMLLIElement]*/) {



			node = elm;



			node.style.position = "relative";

			node.style.left = "0px";

			node.style.top = "0px";



			nodeLeft = node.offsetLeft;

			nodeWidth = node.offsetWidth;



			node.style.visibility = "hidden"; // due to msie 6.x



			node.onmouseover = function () {

				self.onRollOver(this);

			};

			node.onmouseout = function () {

				self.onRollOut(this);

			};

		};



		this.compile.apply(this, arguments);

	};

	Model.prototype.onRollOver = function (elm) {



		this.dispatchEvent({type: "onModelRollOver", target: this, targetNode: elm/*, even more key:value pairs */}); // DOM2AlikeEventDispatcher

	};

	Model.prototype.onRollOut = function (elm) {



		this.dispatchEvent({type: "onModelRollOut", target: this, targetNode: elm/*, even more key:value pairs */}); // DOM2AlikeEventDispatcher

	};





	var ModelRange = function (/*elm:[HTMLLIElement]*/) { // *private* constructor - [en] model range / [de] Baureihe





		this.constructor = arguments.callee;

		var self = this;



		EventDispatcher.register(this); // DOM2AlikeEventDispatcher





		var imgLeft, imgTop, imgWidth, nodeWidth, forcedRefresh = false;





		var timeoutId, timeout = 20, inkrement = 13, stopAt;

		var acting = function () {



			clearTimeout(timeoutId);



			if (imgLeft >= stopAt) {

				self.node.style.backgroundPosition = (stopAt + "px " + imgTop + "px");

				imgLeft = stopAt;



				self.fadeOut(forcedRefresh);

			} else {

				imgLeft += inkrement;

				self.node.style.backgroundPosition = (imgLeft + "px " + imgTop + "px");



				timeoutId = setTimeout(acting, timeout);

			}

		};

		this.enterStage = function (doRefresh) {



			clearTimeout(this.timeoutId);



			forcedRefresh = !!doRefresh;



			this.node.style.backgroundImage = "url(" + images.blurs[this.rangeClass].src + ")";

			this.node.style.backgroundPosition = ("-" + imgWidth + "px " + imgTop + "px");

			this.node.style.visibility = "visible";

			imgLeft= -imgWidth;

			stopAt = 0;

			acting();

		};

		this.leaveStage = function () {



			clearTimeout(this.timeoutId);



			this.node.style.backgroundImage = "url(" + images.blurs[this.rangeClass].src + ")";

			imgLeft = 0;

			stopAt = (nodeWidth + 1);

			acting();

		};

		this.appearSuddenly = function () {



			this.node.style.backgroundImage = "url(" + images.strokes[this.rangeClass].src + ")";

			this.node.style.backgroundPosition = ("0px " + imgTop + "px");

			this.node.style.visibility = "visible";

		};





		this.compile = function (elm/*:[HTMLLIElement]*/) {



			this.node = elm;

			this.node.style.visibility = "hidden";



			this.node.onclick = function () {

				self.onRelease(this);

			};

			this.node.onmouseover = function () {

				self.onRollOver(this);

			};

			this.node.onmouseout = function () {

				self.onRollOut(this);

			};



			this.rolloverState = "left";



			this.models = [];



			this.rangeClass = this.getRangeClass();



			if (this.rangeClass !== "") { // completly compiles for a properly classified html/css based [ModelRange]-object pendant only



				var img = images.blurs[this.rangeClass];



			//imgLeft = 0; // unfortunaltely no browser but opera can calculate this information

			//imgTop = 3;  // unfortunaltely no browser but opera can calculate this information



			// the above 2 commented out values are likely to differ for each model range - 

			// therefore those data needs to be maintained within the local [images] *hashtable* object:

				var positions = images.CSSBackgroundPositions[this.rangeClass].split(/\s+/);

				imgLeft = Number(parseInt(positions[0], 10));

				imgTop = Number(parseInt(positions[1], 10));



				imgLeft = ((isNaN(imgLeft)) ? (0) : (imgLeft));

				imgTop = ((isNaN(imgTop)) ? (0) : (imgTop));

				imgWidth = img.width;

				nodeWidth = this.node.offsetWidth;



				this.node.style.background = ("transparent url(" + img.src + ") no-repeat scroll " + imgLeft + "px " + imgTop + "px");



				var navElm = elm.getElementsByTagName("ul")[0];

				if (navElm) {



					var obj; // model;



					Array.forEach(navElm.childNodes, (function (elm/*, idx, arr*/) {

						if (elm.nodeType && (elm.nodeType === 1) && elm.nodeName && (elm.nodeName.toLowerCase() === "li")) {



							obj = new Model(elm);



							obj.addEventListener("onModelRollOver", self.onModelRollOver); // DOM2AlikeEventDispatcher

							obj.addEventListener("onModelRollOut", self.onModelRollOut);   // DOM2AlikeEventDispatcher



							self.models.push(obj);

						}

					}));

				}

			}

		};



		this.compile.apply(this, arguments);



	};

	ModelRange.prototype.getRangeClass = function () {



		return (((regXRangeClass.test(this.node.className)) ? (regXRangeClass.exec(this.node.className)[1]) : ("")).replace(regXWhiteSpace, " "));

	};

	ModelRange.prototype.fadeIn = function (forceRefresh) {



		this.node.style.backgroundImage = "url(" + images.colours[this.rangeClass].src + ")";

	};

	ModelRange.prototype.fadeOut = function (forceRefresh) {/* no fadeout animation anymore:



		if (window.attachEvent && !window.addEventListener && (typeof XMLHttpRequest == "undefined")) {

			this.node.style.backgroundImage = "url(" + images.strokes[this.rangeClass].src + ")";

		} else { // not figured out yet, what msie 6.x prevents from properly behaving here - though it successfully runs within msie 7 - test of msie 7: ((typeof XMLHttpRequest == "object") && !!XMLHttpRequest)

			this.node.style.backgroundImage = "url(" + images.animations.fadeOuts[this.rangeClass].src + ((!!forceRefresh) ? ("?refresh" + (new Date().getTime())) : ("")) + ")";

		}*/

		this.node.style.backgroundImage = "url(" + images.strokes[this.rangeClass].src + ")";

	};

	ModelRange.prototype.introduceYourself = function () { // introduce yourself once in the beginning



		clearTimeout(this.timeoutId);

		if (this.rangeClass !== "") {



			this.enterStage();

		}

	};

	ModelRange.prototype.onRelease = function (elm) {



	//due to "click-strict"-behavior:

		this.dispatchEvent({type: "onModelRangeFocused", target: this, targetNode: elm/*, even more key:value pairs */}); // DOM2AlikeEventDispatcher



	//this.node.focus(); // commented out - did cause errors within a tested mozilla 1.7.6



		if (this.rolloverState === "entered") {



			var self = this;

			this.timeoutId = setTimeout((function () {self.leaveStage();}), 210);



		//this.models.forEach(function (model, idx/*, arr*/) { // due to dynapi namespace collidition bugs

			Array.forEach(this.models, (function (model, idx/*, arr*/) { // due to dynapi namespace collidition bugs



				model.timeoutId = setTimeout((function () {model.slideIn();}), ((idx+3) * 60));

			}));

		}

		this.rolloverState = "focused";

	};

	ModelRange.prototype.onRollOver = function (elm) {



	//due to "click-strict"-behavior:

		this.dispatchEvent({type: "onModelRangeRollover", target: this, targetNode: elm/*, even more key:value pairs */}); // DOM2AlikeEventDispatcher



		clearTimeout(this.timeoutIdState);



		if (this.rolloverState === "left") {



			this.rolloverState = "entered";

			this.fadeIn(true);

		}

	};

	ModelRange.prototype.onRollOut = function (elm) {



	//clearTimeout(this.timeoutIdState);

		var self = this;



		if (this.rolloverState === "entered") {



			this.timeoutIdState = setTimeout((function () {



				self.rolloverState = "left";

				self.fadeOut(true);

			}), 100); // 300



		}

	};

	ModelRange.prototype.onModelRollOver = function (evt) {



		clearTimeout(this.timeoutIdState);

		this.rolloverState = "focused";

	};

	ModelRange.prototype.onModelRollOut = function (evt) {



		var self = this;

		this.timeoutIdState = setTimeout((function () {self.rolloverState = "left";}), 100);

	};





	var modelRanges = [];



	var onModelRangeFocused = function () {



	//due to "click-strict"-behavior:

	//modelRanges.forEach(function (modelRange/*, idx, arr*/) { // due to dynapi namespace collidition bugs

		Array.forEach(modelRanges, (function (modelRange/*, idx, arr*/) { // due to dynapi namespace collidition bugs



			if (modelRange.rolloverState == "focused") {



				modelRange.timeoutIdState = setTimeout((function () {



					modelRange.timeoutId = setTimeout((function () {modelRange.enterStage(true);}), 280); // 210



				//modelRange.models.forEach(function (model, idx/*, arr*/) { // due to dynapi namespace collidition bugs

					Array.forEach(modelRange.models, (function (model, idx/*, arr*/) { // due to dynapi namespace collidition bugs



						model.timeoutId = setTimeout((function () {model.slideOut();}), ((idx+1) * 60));

					}));

					modelRange.rolloverState = "left";

				}), 500);

			}

		}));

	};



	var timoutIdRestore;



	var onModelRangeRollover = function () {



		clearTimeout(timoutIdRestore);

	};





	var initialized = false;



	var initialize = function () {



		if (!initialized) {



			initialized = true;

			modelRanges = [];



			var navElm = document.getElementsByTagName("ul")["miniSilhouetteNavigation"];

			if (navElm) {



				if (silhoutteNavigationImages && (typeof silhoutteNavigationImages == "object")) {



					images = silhoutteNavigationImages;



					silhoutteNavigationImages = null;

					delete silhoutteNavigationImages;

				}



				Array.forEach(navElm.childNodes, (function (elm/*, idx, arr*/) {

					if (elm.nodeType && (elm.nodeType === 1) && elm.nodeName && (elm.nodeName.toLowerCase() === "li")) {



						modelRanges.push(new ModelRange(elm));

					}

				}));



				navElm.onmouseout = function () {

					timoutIdRestore = setTimeout((function () {onModelRangeFocused();}), 500);

				};

			}





			if (!!isSelfIntroducing) {



				setTimeout((function () {

					//modelRanges.forEach(function (modelRange, idx/*, arr*/) { // introduce yourself once in the beginning

						Array.forEach(modelRanges, (function (modelRange, idx/*, arr*/) { // due to dynapi namespace collidition bugs



					//due to "click-strict"-behavior:

						modelRange.addEventListener("onModelRangeRollover", onModelRangeRollover); // DOM2AlikeEventDispatcher

						modelRange.addEventListener("onModelRangeFocused", onModelRangeFocused); // DOM2AlikeEventDispatcher



						modelRange.timeoutId = setTimeout((function () {modelRange.introduceYourself();}), ((idx+1) * 300));

					}));

				}), 300);



			} else {



			//modelRanges.forEach(function (modelRange, idx/*, arr*/) { // no introduction - be right in place from beginning

				Array.forEach(modelRanges, (function (modelRange, idx/*, arr*/) { // due to dynapi namespace collidition bugs



				//due to "click-strict"-behavior:

					modelRange.addEventListener("onModelRangeRollover", onModelRangeRollover); // DOM2AlikeEventDispatcher

					modelRange.addEventListener("onModelRangeFocused", onModelRangeFocused); // DOM2AlikeEventDispatcher

					modelRange.appearSuddenly();

				}));

			}



			regXRangeClass = null; regXWhiteSpace = null;

			delete regXRangeClass; delete regXWhiteSpace;



			delete arguments.callee; // method terminates itself after execution

		}

	};





	if (window.addEventListener) {

		window.addEventListener("load", initialize, false);

	} else if (window.attachEvent) {

		window.attachEvent("onload", initialize);

	}

})(); // apply parameter [true] for starting with method [introduceYourself] or leave it as is to work with [appearSuddenly]





//ECOM SCRIPTS
function Querystring(qs) { 
 this.params = new Object()
 this.get=Querystring_get
 
 if (qs == null)
  qs=location.search.substring(1,location.search.length)

 if (qs.length == 0) return

 qs = qs.replace(/\+/g, ' ')
 var args = qs.split('&') 
 for (var i=0;i<args.length;i++) {
  var value;
  var pair = args[i].split('=')
  var name = unescape(pair[0])

  if (pair.length == 2)
   value = unescape(pair[1])
  else
   value = name
  
  this.params[name] = value
 }
}

function Querystring_get(key, default_) {
 if (default_ == null) default_ = null;

 var value=this.params[key]
 if (value==null) value=default_; 
 return value
}

function getVar(v){
	var qs = new Querystring();
	var v1 = qs.get(v);	
	return v1;
}


function chFr(pURL, newLink){
	if(parent.getVar("vId")>0){
		pURL += '&vId=';
		pURL += parent.getVar("vId");
		parent.main_content.location = pURL;
	}else{
		var d = false; 
		if(parent.getVar("model").length > 0){
			newLink += '&model=';
			newLink += parent.getVar("model");
			d = true;
		}
		
		if(parent.getVar("features").length >0){
			newLink += '&features=';
			newLink += parent.getVar("features");
			d = true;
		}
		
		if (d == true){
			parent.main_content.location = newLink;			
		}
	}
}