/* SiteCatalyst code version: H.22.1.
Copyright 1996-2011 Adobe, Inc. All Rights Reserved
More info available at http://www.omniture.com */

var s_account="gmmexbuick,gmmex-mexicoglobal"
var s=s_gi(s_account)
/************************** CONFIG SECTION **************************/
/* You may add or alter any code config here. */
s.charSet="UTF-8"
s.cookieDomainPeriods=3
/* Conversion Config */
s.currencyCode="MXN"
/* Link Tracking Config */
s.trackDownloadLinks=true
s.trackExternalLinks=true
s.trackInlineStats=true
s.linkDownloadFileTypes="exe,zip,wav,mp3,mov,mpg,avi,wmv,doc,pdf,xls"
s.linkInternalFilters=""
s.linkLeaveQueryString=false
s.linkTrackVars="None" 
s.linkTrackEvents="None"

/* WARNING: Changing any of the below variables will cause drastic
changes to how your visitor data is collected.  Changes should only be
made when instructed to do so by your account manager.*/
s.visitorNamespace="gmmexico"
s.trackingServer="gmmexico.112.2o7.net"

/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
var s_code='',s_objectID;function s_gi(un,pg,ss){var c="s._c='s_c';s.wd=window;if(!s.wd.s_c_in){s.wd.s_c_il=new Array;s.wd.s_c_in=0;}s._il=s.wd.s_c_il;s._in=s.wd.s_c_in;s._il[s._in]=s;s.wd.s_c_in++;s"
+".an=s_an;s.cls=function(x,c){var i,y='';if(!c)c=this.an;for(i=0;i<x.length;i++){n=x.substring(i,i+1);if(c.indexOf(n)>=0)y+=n}return y};s.fl=function(x,l){return x?(''+x).substring(0,l):x};s.co=func"
+"tion(o){if(!o)return o;var n=new Object,x;for(x in o)if(x.indexOf('select')<0&&x.indexOf('filter')<0)n[x]=o[x];return n};s.num=function(x){x=''+x;for(var p=0;p<x.length;p++)if(('0123456789').indexO"
+"f(x.substring(p,p+1))<0)return 0;return 1};s.rep=s_rep;s.sp=s_sp;s.jn=s_jn;s.ape=function(x){var s=this,h='0123456789ABCDEF',i,c=s.charSet,n,l,e,y='';c=c?c.toUpperCase():'';if(x){x=''+x;if(s.em==3)"
+"return encodeURIComponent(x);else if(c=='AUTO'&&('').charCodeAt){for(i=0;i<x.length;i++){c=x.substring(i,i+1);n=x.charCodeAt(i);if(n>127){l=0;e='';while(n||l<4){e=h.substring(n%16,n%16+1)+e;n=(n-n%"
+"16)/16;l++}y+='%u'+e}else if(c=='+')y+='%2B';else y+=escape(c)}return y}else{x=s.rep(escape(''+x),'+','%2B');if(c&&s.em==1&&x.indexOf('%u')<0&&x.indexOf('%U')<0){i=x.indexOf('%');while(i>=0){i++;if"
+"(h.substring(8).indexOf(x.substring(i,i+1).toUpperCase())>=0)return x.substring(0,i)+'u00'+x.substring(i);i=x.indexOf('%',i)}}}}return x};s.epa=function(x){var s=this;if(x){x=''+x;return s.em==3?de"
+"codeURIComponent(x):unescape(s.rep(x,'+',' '))}return x};s.pt=function(x,d,f,a){var s=this,t=x,z=0,y,r;while(t){y=t.indexOf(d);y=y<0?t.length:y;t=t.substring(0,y);r=s[f](t,a);if(r)return r;z+=y+d.l"
+"ength;t=x.substring(z,x.length);t=z<x.length?t:''}return ''};s.isf=function(t,a){var c=a.indexOf(':');if(c>=0)a=a.substring(0,c);if(t.substring(0,2)=='s_')t=t.substring(2);return (t!=''&&t==a)};s.f"
+"sf=function(t,a){var s=this;if(s.pt(a,',','isf',t))s.fsg+=(s.fsg!=''?',':'')+t;return 0};s.fs=function(x,f){var s=this;s.fsg='';s.pt(x,',','fsf',f);return s.fsg};s.si=function(){var s=this,i,k,v,c="
+"s_gi+'var s=s_gi(\"'+s.oun+'\");s.sa(\"'+s.un+'\");';for(i=0;i<s.va_g.length;i++){k=s.va_g[i];v=s[k];if(v!=undefined){if(typeof(v)=='string')c+='s.'+k+'=\"'+s_fe(v)+'\";';else c+='s.'+k+'='+v+';'}}"
+"c+=\"s.lnk=s.eo=s.linkName=s.linkType=s.wd.s_objectID=s.ppu=s.pe=s.pev1=s.pev2=s.pev3='';\";return c};s.c_d='';s.c_gdf=function(t,a){var s=this;if(!s.num(t))return 1;return 0};s.c_gd=function(){var"
+" s=this,d=s.wd.location.hostname,n=s.fpCookieDomainPeriods,p;if(!n)n=s.cookieDomainPeriods;if(d&&!s.c_d){n=n?parseInt(n):2;n=n>2?n:2;p=d.lastIndexOf('.');if(p>=0){while(p>=0&&n>1){p=d.lastIndexOf('"
+".',p-1);n--}s.c_d=p>0&&s.pt(d,'.','c_gdf',0)?d.substring(p):d}}return s.c_d};s.c_r=function(k){var s=this;k=s.ape(k);var c=' '+s.d.cookie,i=c.indexOf(' '+k+'='),e=i<0?i:c.indexOf(';',i),v=i<0?'':s."
+"epa(c.substring(i+2+k.length,e<0?c.length:e));return v!='[[B]]'?v:''};s.c_w=function(k,v,e){var s=this,d=s.c_gd(),l=s.cookieLifetime,t;v=''+v;l=l?(''+l).toUpperCase():'';if(e&&l!='SESSION'&&l!='NON"
+"E'){t=(v!=''?parseInt(l?l:0):-60);if(t){e=new Date;e.setTime(e.getTime()+(t*1000))}}if(k&&l!='NONE'){s.d.cookie=k+'='+s.ape(v!=''?v:'[[B]]')+'; path=/;'+(e&&l!='SESSION'?' expires='+e.toGMTString()"
+"+';':'')+(d?' domain='+d+';':'');return s.c_r(k)==v}return 0};s.eh=function(o,e,r,f){var s=this,b='s_'+e+'_'+s._in,n=-1,l,i,x;if(!s.ehl)s.ehl=new Array;l=s.ehl;for(i=0;i<l.length&&n<0;i++){if(l[i]."
+"o==o&&l[i].e==e)n=i}if(n<0){n=i;l[n]=new Object}x=l[n];x.o=o;x.e=e;f=r?x.b:f;if(r||f){x.b=r?0:o[e];x.o[e]=f}if(x.b){x.o[b]=x.b;return b}return 0};s.cet=function(f,a,t,o,b){var s=this,r,tcf;if(s.apv"
+">=5&&(!s.isopera||s.apv>=7)){tcf=new Function('s','f','a','t','var e,r;try{r=s[f](a)}catch(e){r=s[t](e)}return r');r=tcf(s,f,a,t)}else{if(s.ismac&&s.u.indexOf('MSIE 4')>=0)r=s[b](a);else{s.eh(s.wd,"
+"'onerror',0,o);r=s[f](a);s.eh(s.wd,'onerror',1)}}return r};s.gtfset=function(e){var s=this;return s.tfs};s.gtfsoe=new Function('e','var s=s_c_il['+s._in+'],c;s.eh(window,\"onerror\",1);s.etfs=1;c=s"
+".t();if(c)s.d.write(c);s.etfs=0;return true');s.gtfsfb=function(a){return window};s.gtfsf=function(w){var s=this,p=w.parent,l=w.location;s.tfs=w;if(p&&p.location!=l&&p.location.host==l.host){s.tfs="
+"p;return s.gtfsf(s.tfs)}return s.tfs};s.gtfs=function(){var s=this;if(!s.tfs){s.tfs=s.wd;if(!s.etfs)s.tfs=s.cet('gtfsf',s.tfs,'gtfset',s.gtfsoe,'gtfsfb')}return s.tfs};s.mrq=function(u){var s=this,"
+"l=s.rl[u],n,r;s.rl[u]=0;if(l)for(n=0;n<l.length;n++){r=l[n];s.mr(0,0,r.r,0,r.t,r.u)}};s.br=function(id,rs){var s=this;if(s.disableBufferedRequests||!s.c_w('s_br',rs))s.brl=rs};s.flushBufferedReques"
+"ts=function(){this.fbr(0)};s.fbr=function(id){var s=this,br=s.c_r('s_br');if(!br)br=s.brl;if(br){if(!s.disableBufferedRequests)s.c_w('s_br','');s.mr(0,0,br)}s.brl=0};s.mr=function(sess,q,rs,id,ta,u"
+"){var s=this,dc=s.dc,t1=s.trackingServer,t2=s.trackingServerSecure,tb=s.trackingServerBase,p='.sc',ns=s.visitorNamespace,un=s.cls(u?u:(ns?ns:s.fun)),r=new Object,l,imn='s_i_'+(un),im,b,e;if(!rs){if"
+"(t1){if(t2&&s.ssl)t1=t2}else{if(!tb)tb='2o7.net';if(dc)dc=(''+dc).toLowerCase();else dc='d1';if(tb=='2o7.net'){if(dc=='d1')dc='112';else if(dc=='d2')dc='122';p=''}t1=un+'.'+dc+'.'+p+tb}rs='http'+(s"
+".ssl?'s':'')+'://'+t1+'/b/ss/'+s.un+'/'+(s.mobile?'5.1':'1')+'/H.22.1/'+sess+'?AQB=1&ndh=1'+(q?q:'')+'&AQE=1';if(s.isie&&!s.ismac)rs=s.fl(rs,2047);if(id){s.br(id,rs);return}}if(s.d.images&&s.apv>=3"
+"&&(!s.isopera||s.apv>=7)&&(s.ns6<0||s.apv>=6.1)){if(!s.rc)s.rc=new Object;if(!s.rc[un]){s.rc[un]=1;if(!s.rl)s.rl=new Object;s.rl[un]=new Array;setTimeout('if(window.s_c_il)window.s_c_il['+s._in+']."
+"mrq(\"'+un+'\")',750)}else{l=s.rl[un];if(l){r.t=ta;r.u=un;r.r=rs;l[l.length]=r;return ''}imn+='_'+s.rc[un];s.rc[un]++}im=s.wd[imn];if(!im)im=s.wd[imn]=new Image;im.s_l=0;im.onload=new Function('e',"
+"'this.s_l=1;var wd=window,s;if(wd.s_c_il){s=wd.s_c_il['+s._in+'];s.mrq(\"'+un+'\");s.nrs--;if(!s.nrs)s.m_m(\"rr\")}');if(!s.nrs){s.nrs=1;s.m_m('rs')}else s.nrs++;im.src=rs;if((!ta||ta=='_self'||ta="
+"='_top'||(s.wd.name&&ta==s.wd.name))&&rs.indexOf('&pe=')>=0){b=e=new Date;while(!im.s_l&&e.getTime()-b.getTime()<500)e=new Date}return ''}return '<im'+'g sr'+'c=\"'+rs+'\" width=1 height=1 border=0"
+" alt=\"\">'};s.gg=function(v){var s=this;if(!s.wd['s_'+v])s.wd['s_'+v]='';return s.wd['s_'+v]};s.glf=function(t,a){if(t.substring(0,2)=='s_')t=t.substring(2);var s=this,v=s.gg(t);if(v)s[t]=v};s.gl="
+"function(v){var s=this;if(s.pg)s.pt(v,',','glf',0)};s.rf=function(x){var s=this,y,i,j,h,l,a,b='',c='',t;if(x){y=''+x;i=y.indexOf('?');if(i>0){a=y.substring(i+1);y=y.substring(0,i);h=y.toLowerCase()"
+";i=0;if(h.substring(0,7)=='http://')i+=7;else if(h.substring(0,8)=='https://')i+=8;h=h.substring(i);i=h.indexOf(\"/\");if(i>0){h=h.substring(0,i);if(h.indexOf('google')>=0){a=s.sp(a,'&');if(a.lengt"
+"h>1){l=',q,ie,start,search_key,word,kw,cd,';for(j=0;j<a.length;j++){t=a[j];i=t.indexOf('=');if(i>0&&l.indexOf(','+t.substring(0,i)+',')>=0)b+=(b?'&':'')+t;else c+=(c?'&':'')+t}if(b&&c){y+='?'+b+'&'"
+"+c;if(''+x!=y)x=y}}}}}}return x};s.hav=function(){var s=this,qs='',fv=s.linkTrackVars,fe=s.linkTrackEvents,mn,i;if(s.pe){mn=s.pe.substring(0,1).toUpperCase()+s.pe.substring(1);if(s[mn]){fv=s[mn].tr"
+"ackVars;fe=s[mn].trackEvents}}fv=fv?fv+','+s.vl_l+','+s.vl_l2:'';for(i=0;i<s.va_t.length;i++){var k=s.va_t[i],v=s[k],b=k.substring(0,4),x=k.substring(4),n=parseInt(x),q=k;if(v&&k!='linkName'&&k!='l"
+"inkType'){if(s.pe||s.lnk||s.eo){if(fv&&(','+fv+',').indexOf(','+k+',')<0)v='';if(k=='events'&&fe)v=s.fs(v,fe)}if(v){if(k=='dynamicVariablePrefix')q='D';else if(k=='visitorID')q='vid';else if(k=='pa"
+"geURL'){q='g';v=s.fl(v,255)}else if(k=='referrer'){q='r';v=s.fl(s.rf(v),255)}else if(k=='vmk'||k=='visitorMigrationKey')q='vmt';else if(k=='visitorMigrationServer'){q='vmf';if(s.ssl&&s.visitorMigra"
+"tionServerSecure)v=''}else if(k=='visitorMigrationServerSecure'){q='vmf';if(!s.ssl&&s.visitorMigrationServer)v=''}else if(k=='charSet'){q='ce';if(v.toUpperCase()=='AUTO')v='ISO8859-1';else if(s.em="
+"=2||s.em==3)v='UTF-8'}else if(k=='visitorNamespace')q='ns';else if(k=='cookieDomainPeriods')q='cdp';else if(k=='cookieLifetime')q='cl';else if(k=='variableProvider')q='vvp';else if(k=='currencyCode"
+"')q='cc';else if(k=='channel')q='ch';else if(k=='transactionID')q='xact';else if(k=='campaign')q='v0';else if(k=='resolution')q='s';else if(k=='colorDepth')q='c';else if(k=='javascriptVersion')q='j"
+"';else if(k=='javaEnabled')q='v';else if(k=='cookiesEnabled')q='k';else if(k=='browserWidth')q='bw';else if(k=='browserHeight')q='bh';else if(k=='connectionType')q='ct';else if(k=='homepage')q='hp'"
+";else if(k=='plugins')q='p';else if(s.num(x)){if(b=='prop')q='c'+n;else if(b=='eVar')q='v'+n;else if(b=='list')q='l'+n;else if(b=='hier'){q='h'+n;v=s.fl(v,255)}}if(v)qs+='&'+q+'='+(k.substring(0,3)"
+"!='pev'?s.ape(v):v)}}}return qs};s.ltdf=function(t,h){t=t?t.toLowerCase():'';h=h?h.toLowerCase():'';var qi=h.indexOf('?');h=qi>=0?h.substring(0,qi):h;if(t&&h.substring(h.length-(t.length+1))=='.'+t"
+")return 1;return 0};s.ltef=function(t,h){t=t?t.toLowerCase():'';h=h?h.toLowerCase():'';if(t&&h.indexOf(t)>=0)return 1;return 0};s.lt=function(h){var s=this,lft=s.linkDownloadFileTypes,lef=s.linkExt"
+"ernalFilters,lif=s.linkInternalFilters;lif=lif?lif:s.wd.location.hostname;h=h.toLowerCase();if(s.trackDownloadLinks&&lft&&s.pt(lft,',','ltdf',h))return 'd';if(s.trackExternalLinks&&h.substring(0,1)"
+"!='#'&&(lef||lif)&&(!lef||s.pt(lef,',','ltef',h))&&(!lif||!s.pt(lif,',','ltef',h)))return 'e';return ''};s.lc=new Function('e','var s=s_c_il['+s._in+'],b=s.eh(this,\"onclick\");s.lnk=s.co(this);s.t"
+"();s.lnk=0;if(b)return this[b](e);return true');s.bc=new Function('e','var s=s_c_il['+s._in+'],f,tcf;if(s.d&&s.d.all&&s.d.all.cppXYctnr)return;s.eo=e.srcElement?e.srcElement:e.target;tcf=new Functi"
+"on(\"s\",\"var e;try{if(s.eo&&(s.eo.tagName||s.eo.parentElement||s.eo.parentNode))s.t()}catch(e){}\");tcf(s);s.eo=0');s.oh=function(o){var s=this,l=s.wd.location,h=o.href?o.href:'',i,j,k,p;i=h.inde"
+"xOf(':');j=h.indexOf('?');k=h.indexOf('/');if(h&&(i<0||(j>=0&&i>j)||(k>=0&&i>k))){p=o.protocol&&o.protocol.length>1?o.protocol:(l.protocol?l.protocol:'');i=l.pathname.lastIndexOf('/');h=(p?p+'//':'"
+"')+(o.host?o.host:(l.host?l.host:''))+(h.substring(0,1)!='/'?l.pathname.substring(0,i<0?0:i)+'/':'')+h}return h};s.ot=function(o){var t=o.tagName;t=t&&t.toUpperCase?t.toUpperCase():'';if(t=='SHAPE'"
+")t='';if(t){if((t=='INPUT'||t=='BUTTON')&&o.type&&o.type.toUpperCase)t=o.type.toUpperCase();else if(!t&&o.href)t='A';}return t};s.oid=function(o){var s=this,t=s.ot(o),p,c,n='',x=0;if(t&&!o.s_oid){p"
+"=o.protocol;c=o.onclick;if(o.href&&(t=='A'||t=='AREA')&&(!c||!p||p.toLowerCase().indexOf('javascript')<0))n=s.oh(o);else if(c){n=s.rep(s.rep(s.rep(s.rep(''+c,\"\\r\",''),\"\\n\",''),\"\\t\",''),' '"
+",'');x=2}else if(t=='INPUT'||t=='SUBMIT'){if(o.value)n=o.value;else if(o.innerText)n=o.innerText;else if(o.textContent)n=o.textContent;x=3}else if(o.src&&t=='IMAGE')n=o.src;if(n){o.s_oid=s.fl(n,100"
+");o.s_oidt=x}}return o.s_oid};s.rqf=function(t,un){var s=this,e=t.indexOf('='),u=e>=0?t.substring(0,e):'',q=e>=0?s.epa(t.substring(e+1)):'';if(u&&q&&(','+u+',').indexOf(','+un+',')>=0){if(u!=s.un&&"
+"s.un.indexOf(',')>=0)q='&u='+u+q+'&u=0';return q}return ''};s.rq=function(un){if(!un)un=this.un;var s=this,c=un.indexOf(','),v=s.c_r('s_sq'),q='';if(c<0)return s.pt(v,'&','rqf',un);return s.pt(un,'"
+",','rq',0)};s.sqp=function(t,a){var s=this,e=t.indexOf('='),q=e<0?'':s.epa(t.substring(e+1));s.sqq[q]='';if(e>=0)s.pt(t.substring(0,e),',','sqs',q);return 0};s.sqs=function(un,q){var s=this;s.squ[u"
+"n]=q;return 0};s.sq=function(q){var s=this,k='s_sq',v=s.c_r(k),x,c=0;s.sqq=new Object;s.squ=new Object;s.sqq[q]='';s.pt(v,'&','sqp',0);s.pt(s.un,',','sqs',q);v='';for(x in s.squ)if(x&&(!Object||!Ob"
+"ject.prototype||!Object.prototype[x]))s.sqq[s.squ[x]]+=(s.sqq[s.squ[x]]?',':'')+x;for(x in s.sqq)if(x&&(!Object||!Object.prototype||!Object.prototype[x])&&s.sqq[x]&&(x==q||c<2)){v+=(v?'&':'')+s.sqq"
+"[x]+'='+s.ape(x);c++}return s.c_w(k,v,0)};s.wdl=new Function('e','var s=s_c_il['+s._in+'],r=true,b=s.eh(s.wd,\"onload\"),i,o,oc;if(b)r=this[b](e);for(i=0;i<s.d.links.length;i++){o=s.d.links[i];oc=o"
+".onclick?\"\"+o.onclick:\"\";if((oc.indexOf(\"s_gs(\")<0||oc.indexOf(\".s_oc(\")>=0)&&oc.indexOf(\".tl(\")<0)s.eh(o,\"onclick\",0,s.lc);}return r');s.wds=function(){var s=this;if(s.apv>3&&(!s.isie|"
+"|!s.ismac||s.apv>=5)){if(s.b&&s.b.attachEvent)s.b.attachEvent('onclick',s.bc);else if(s.b&&s.b.addEventListener)s.b.addEventListener('click',s.bc,false);else s.eh(s.wd,'onload',0,s.wdl)}};s.vs=func"
+"tion(x){var s=this,v=s.visitorSampling,g=s.visitorSamplingGroup,k='s_vsn_'+s.un+(g?'_'+g:''),n=s.c_r(k),e=new Date,y=e.getYear();e.setYear(y+10+(y<1900?1900:0));if(v){v*=100;if(!n){if(!s.c_w(k,x,e)"
+")return 0;n=x}if(n%10000>v)return 0}return 1};s.dyasmf=function(t,m){if(t&&m&&m.indexOf(t)>=0)return 1;return 0};s.dyasf=function(t,m){var s=this,i=t?t.indexOf('='):-1,n,x;if(i>=0&&m){var n=t.subst"
+"ring(0,i),x=t.substring(i+1);if(s.pt(x,',','dyasmf',m))return n}return 0};s.uns=function(){var s=this,x=s.dynamicAccountSelection,l=s.dynamicAccountList,m=s.dynamicAccountMatch,n,i;s.un=s.un.toLowe"
+"rCase();if(x&&l){if(!m)m=s.wd.location.host;if(!m.toLowerCase)m=''+m;l=l.toLowerCase();m=m.toLowerCase();n=s.pt(l,';','dyasf',m);if(n)s.un=n}i=s.un.indexOf(',');s.fun=i<0?s.un:s.un.substring(0,i)};"
+"s.sa=function(un){var s=this;s.un=un;if(!s.oun)s.oun=un;else if((','+s.oun+',').indexOf(','+un+',')<0)s.oun+=','+un;s.uns()};s.m_i=function(n,a){var s=this,m,f=n.substring(0,1),r,l,i;if(!s.m_l)s.m_"
+"l=new Object;if(!s.m_nl)s.m_nl=new Array;m=s.m_l[n];if(!a&&m&&m._e&&!m._i)s.m_a(n);if(!m){m=new Object,m._c='s_m';m._in=s.wd.s_c_in;m._il=s._il;m._il[m._in]=m;s.wd.s_c_in++;m.s=s;m._n=n;m._l=new Ar"
+"ray('_c','_in','_il','_i','_e','_d','_dl','s','n','_r','_g','_g1','_t','_t1','_x','_x1','_rs','_rr','_l');s.m_l[n]=m;s.m_nl[s.m_nl.length]=n}else if(m._r&&!m._m){r=m._r;r._m=m;l=m._l;for(i=0;i<l.le"
+"ngth;i++)if(m[l[i]])r[l[i]]=m[l[i]];r._il[r._in]=r;m=s.m_l[n]=r}if(f==f.toUpperCase())s[n]=m;return m};s.m_a=new Function('n','g','e','if(!g)g=\"m_\"+n;var s=s_c_il['+s._in+'],c=s[g+\"_c\"],m,x,f=0"
+";if(!c)c=s.wd[\"s_\"+g+\"_c\"];if(c&&s_d)s[g]=new Function(\"s\",s_ft(s_d(c)));x=s[g];if(!x)x=s.wd[\\'s_\\'+g];if(!x)x=s.wd[g];m=s.m_i(n,1);if(x&&(!m._i||g!=\"m_\"+n)){m._i=f=1;if((\"\"+x).indexOf("
+"\"function\")>=0)x(s);else s.m_m(\"x\",n,x,e)}m=s.m_i(n,1);if(m._dl)m._dl=m._d=0;s.dlt();return f');s.m_m=function(t,n,d,e){t='_'+t;var s=this,i,x,m,f='_'+t,r=0,u;if(s.m_l&&s.m_nl)for(i=0;i<s.m_nl."
+"length;i++){x=s.m_nl[i];if(!n||x==n){m=s.m_i(x);u=m[t];if(u){if((''+u).indexOf('function')>=0){if(d&&e)u=m[t](d,e);else if(d)u=m[t](d);else u=m[t]()}}if(u)r=1;u=m[t+1];if(u&&!m[f]){if((''+u).indexO"
+"f('function')>=0){if(d&&e)u=m[t+1](d,e);else if(d)u=m[t+1](d);else u=m[t+1]()}}m[f]=1;if(u)r=1}}return r};s.m_ll=function(){var s=this,g=s.m_dl,i,o;if(g)for(i=0;i<g.length;i++){o=g[i];if(o)s.loadMo"
+"dule(o.n,o.u,o.d,o.l,o.e,1);g[i]=0}};s.loadModule=function(n,u,d,l,e,ln){var s=this,m=0,i,g,o=0,f1,f2,c=s.h?s.h:s.b,b,tcf;if(n){i=n.indexOf(':');if(i>=0){g=n.substring(i+1);n=n.substring(0,i)}else "
+"g=\"m_\"+n;m=s.m_i(n)}if((l||(n&&!s.m_a(n,g)))&&u&&s.d&&c&&s.d.createElement){if(d){m._d=1;m._dl=1}if(ln){if(s.ssl)u=s.rep(u,'http:','https:');i='s_s:'+s._in+':'+n+':'+g;b='var s=s_c_il['+s._in+'],"
+"o=s.d.getElementById(\"'+i+'\");if(s&&o){if(!o.l&&s.wd.'+g+'){o.l=1;if(o.i)clearTimeout(o.i);o.i=0;s.m_a(\"'+n+'\",\"'+g+'\"'+(e?',\"'+e+'\"':'')+')}';f2=b+'o.c++;if(!s.maxDelay)s.maxDelay=250;if(!"
+"o.l&&o.c<(s.maxDelay*2)/100)o.i=setTimeout(o.f2,100)}';f1=new Function('e',b+'}');tcf=new Function('s','c','i','u','f1','f2','var e,o=0;try{o=s.d.createElement(\"script\");if(o){o.type=\"text/javas"
+"cript\";'+(n?'o.id=i;o.defer=true;o.onload=o.onreadystatechange=f1;o.f2=f2;o.l=0;':'')+'o.src=u;c.appendChild(o);'+(n?'o.c=0;o.i=setTimeout(f2,100)':'')+'}}catch(e){o=0}return o');o=tcf(s,c,i,u,f1,"
+"f2)}else{o=new Object;o.n=n+':'+g;o.u=u;o.d=d;o.l=l;o.e=e;g=s.m_dl;if(!g)g=s.m_dl=new Array;i=0;while(i<g.length&&g[i])i++;g[i]=o}}else if(n){m=s.m_i(n);m._e=1}return m};s.vo1=function(t,a){if(a[t]"
+"||a['!'+t])this[t]=a[t]};s.vo2=function(t,a){if(!a[t]){a[t]=this[t];if(!a[t])a['!'+t]=1}};s.dlt=new Function('var s=s_c_il['+s._in+'],d=new Date,i,vo,f=0;if(s.dll)for(i=0;i<s.dll.length;i++){vo=s.d"
+"ll[i];if(vo){if(!s.m_m(\"d\")||d.getTime()-vo._t>=s.maxDelay){s.dll[i]=0;s.t(vo)}else f=1}}if(s.dli)clearTimeout(s.dli);s.dli=0;if(f){if(!s.dli)s.dli=setTimeout(s.dlt,s.maxDelay)}else s.dll=0');s.d"
+"l=function(vo){var s=this,d=new Date;if(!vo)vo=new Object;s.pt(s.vl_g,',','vo2',vo);vo._t=d.getTime();if(!s.dll)s.dll=new Array;s.dll[s.dll.length]=vo;if(!s.maxDelay)s.maxDelay=250;s.dlt()};s.t=fun"
+"ction(vo,id){var s=this,trk=1,tm=new Date,sed=Math&&Math.random?Math.floor(Math.random()*10000000000000):tm.getTime(),sess='s'+Math.floor(tm.getTime()/10800000)%10+sed,y=tm.getYear(),vt=tm.getDate("
+")+'/'+tm.getMonth()+'/'+(y<1900?y+1900:y)+' '+tm.getHours()+':'+tm.getMinutes()+':'+tm.getSeconds()+' '+tm.getDay()+' '+tm.getTimezoneOffset(),tcf,tfs=s.gtfs(),ta=-1,q='',qs='',code='',vb=new Objec"
+"t;s.gl(s.vl_g);s.uns();s.m_ll();if(!s.td){var tl=tfs.location,a,o,i,x='',c='',v='',p='',bw='',bh='',j='1.0',k=s.c_w('s_cc','true',0)?'Y':'N',hp='',ct='',pn=0,ps;if(String&&String.prototype){j='1.1'"
+";if(j.match){j='1.2';if(tm.setUTCDate){j='1.3';if(s.isie&&s.ismac&&s.apv>=5)j='1.4';if(pn.toPrecision){j='1.5';a=new Array;if(a.forEach){j='1.6';i=0;o=new Object;tcf=new Function('o','var e,i=0;try"
+"{i=new Iterator(o)}catch(e){}return i');i=tcf(o);if(i&&i.next)j='1.7'}}}}}if(s.apv>=4)x=screen.width+'x'+screen.height;if(s.isns||s.isopera){if(s.apv>=3){v=s.n.javaEnabled()?'Y':'N';if(s.apv>=4){c="
+"screen.pixelDepth;bw=s.wd.innerWidth;bh=s.wd.innerHeight}}s.pl=s.n.plugins}else if(s.isie){if(s.apv>=4){v=s.n.javaEnabled()?'Y':'N';c=screen.colorDepth;if(s.apv>=5){bw=s.d.documentElement.offsetWid"
+"th;bh=s.d.documentElement.offsetHeight;if(!s.ismac&&s.b){tcf=new Function('s','tl','var e,hp=0;try{s.b.addBehavior(\"#default#homePage\");hp=s.b.isHomePage(tl)?\"Y\":\"N\"}catch(e){}return hp');hp="
+"tcf(s,tl);tcf=new Function('s','var e,ct=0;try{s.b.addBehavior(\"#default#clientCaps\");ct=s.b.connectionType}catch(e){}return ct');ct=tcf(s)}}}else r=''}if(s.pl)while(pn<s.pl.length&&pn<30){ps=s.f"
+"l(s.pl[pn].name,100)+';';if(p.indexOf(ps)<0)p+=ps;pn++}s.resolution=x;s.colorDepth=c;s.javascriptVersion=j;s.javaEnabled=v;s.cookiesEnabled=k;s.browserWidth=bw;s.browserHeight=bh;s.connectionType=c"
+"t;s.homepage=hp;s.plugins=p;s.td=1}if(vo){s.pt(s.vl_g,',','vo2',vb);s.pt(s.vl_g,',','vo1',vo)}if((vo&&vo._t)||!s.m_m('d')){if(s.usePlugins)s.doPlugins(s);var l=s.wd.location,r=tfs.document.referrer"
+";if(!s.pageURL)s.pageURL=l.href?l.href:l;if(!s.referrer&&!s._1_referrer){s.referrer=r;s._1_referrer=1}s.m_m('g');if(s.lnk||s.eo){var o=s.eo?s.eo:s.lnk;if(!o)return '';var p=s.pageName,w=1,t=s.ot(o)"
+",n=s.oid(o),x=o.s_oidt,h,l,i,oc;if(s.eo&&o==s.eo){while(o&&!n&&t!='BODY'){o=o.parentElement?o.parentElement:o.parentNode;if(!o)return '';t=s.ot(o);n=s.oid(o);x=o.s_oidt}oc=o.onclick?''+o.onclick:''"
+";if((oc.indexOf(\"s_gs(\")>=0&&oc.indexOf(\".s_oc(\")<0)||oc.indexOf(\".tl(\")>=0)return ''}if(n)ta=o.target;h=s.oh(o);i=h.indexOf('?');h=s.linkLeaveQueryString||i<0?h:h.substring(0,i);l=s.linkName"
+";t=s.linkType?s.linkType.toLowerCase():s.lt(h);if(t&&(h||l))q+='&pe=lnk_'+(t=='d'||t=='e'?s.ape(t):'o')+(h?'&pev1='+s.ape(h):'')+(l?'&pev2='+s.ape(l):'');else trk=0;if(s.trackInlineStats){if(!p){p="
+"s.pageURL;w=0}t=s.ot(o);i=o.sourceIndex;if(s.gg('objectID')){n=s.gg('objectID');x=1;i=1}if(p&&n&&t)qs='&pid='+s.ape(s.fl(p,255))+(w?'&pidt='+w:'')+'&oid='+s.ape(s.fl(n,100))+(x?'&oidt='+x:'')+'&ot="
+"'+s.ape(t)+(i?'&oi='+i:'')}}if(!trk&&!qs)return '';s.sampled=s.vs(sed);if(trk){if(s.sampled)code=s.mr(sess,(vt?'&t='+s.ape(vt):'')+s.hav()+q+(qs?qs:s.rq()),0,id,ta);qs='';s.m_m('t');if(s.p_r)s.p_r("
+");s.referrer=''}s.sq(qs);}else{s.dl(vo);}if(vo)s.pt(s.vl_g,',','vo1',vb);s.lnk=s.eo=s.linkName=s.linkType=s.wd.s_objectID=s.ppu=s.pe=s.pev1=s.pev2=s.pev3='';if(s.pg)s.wd.s_lnk=s.wd.s_eo=s.wd.s_link"
+"Name=s.wd.s_linkType='';if(!id&&!s.tc){s.tc=1;s.flushBufferedRequests()}return code};s.tl=function(o,t,n,vo){var s=this;s.lnk=s.co(o);s.linkType=t;s.linkName=n;s.t(vo)};if(pg){s.wd.s_co=function(o)"
+"{var s=s_gi(\"_\",1,1);return s.co(o)};s.wd.s_gs=function(un){var s=s_gi(un,1,1);return s.t()};s.wd.s_dc=function(un){var s=s_gi(un,1);return s.t()}}s.ssl=(s.wd.location.protocol.toLowerCase().inde"
+"xOf('https')>=0);s.d=document;s.b=s.d.body;if(s.d.getElementsByTagName){s.h=s.d.getElementsByTagName('HEAD');if(s.h)s.h=s.h[0]}s.n=navigator;s.u=s.n.userAgent;s.ns6=s.u.indexOf('Netscape6/');var ap"
+"n=s.n.appName,v=s.n.appVersion,ie=v.indexOf('MSIE '),o=s.u.indexOf('Opera '),i;if(v.indexOf('Opera')>=0||o>0)apn='Opera';s.isie=(apn=='Microsoft Internet Explorer');s.isns=(apn=='Netscape');s.isope"
+"ra=(apn=='Opera');s.ismac=(s.u.indexOf('Mac')>=0);if(o>0)s.apv=parseFloat(s.u.substring(o+6));else if(ie>0){s.apv=parseInt(i=v.substring(ie+5));if(s.apv>3)s.apv=parseFloat(i)}else if(s.ns6>0)s.apv="
+"parseFloat(s.u.substring(s.ns6+10));else s.apv=parseFloat(v);s.em=0;if(s.em.toPrecision)s.em=3;else if(String.fromCharCode){i=escape(String.fromCharCode(256)).toUpperCase();s.em=(i=='%C4%80'?2:(i=="
+"'%U0100'?1:0))}s.sa(un);s.vl_l='dynamicVariablePrefix,visitorID,vmk,visitorMigrationKey,visitorMigrationServer,visitorMigrationServerSecure,ppu,charSet,visitorNamespace,cookieDomainPeriods,cookieLi"
+"fetime,pageName,pageURL,referrer,currencyCode';s.va_l=s.sp(s.vl_l,',');s.vl_t=s.vl_l+',variableProvider,channel,server,pageType,transactionID,purchaseID,campaign,state,zip,events,products,linkName,"
+"linkType';for(var n=1;n<76;n++)s.vl_t+=',prop'+n+',eVar'+n+',hier'+n+',list'+n;s.vl_l2=',tnt,pe,pev1,pev2,pev3,resolution,colorDepth,javascriptVersion,javaEnabled,cookiesEnabled,browserWidth,browse"
+"rHeight,connectionType,homepage,plugins';s.vl_t+=s.vl_l2;s.va_t=s.sp(s.vl_t,',');s.vl_g=s.vl_t+',trackingServer,trackingServerSecure,trackingServerBase,fpCookieDomainPeriods,disableBufferedRequests"
+",mobile,visitorSampling,visitorSamplingGroup,dynamicAccountSelection,dynamicAccountList,dynamicAccountMatch,trackDownloadLinks,trackExternalLinks,trackInlineStats,linkLeaveQueryString,linkDownloadF"
+"ileTypes,linkExternalFilters,linkInternalFilters,linkTrackVars,linkTrackEvents,linkNames,lnk,eo,_1_referrer';s.va_g=s.sp(s.vl_g,',');s.pg=pg;s.gl(s.vl_g);if(!ss)s.wds()",
w=window,l=w.s_c_il,n=navigator,u=n.userAgent,v=n.appVersion,e=v.indexOf('MSIE '),m=u.indexOf('Netscape6/'),a,i,s;if(un){un=un.toLowerCase();if(l)for(i=0;i<l.length;i++){s=l[i];if(!s._c||s._c=='s_c'){if(s.oun==un)return s;else if(s.fs&&s.sa&&s.fs(s.oun,un)){s.sa(un);return s}}}}w.s_an='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
w.s_sp=new Function("x","d","var a=new Array,i=0,j;if(x){if(x.split)a=x.split(d);else if(!d)for(i=0;i<x.length;i++)a[a.length]=x.substring(i,i+1);else while(i>=0){j=x.indexOf(d,i);a[a.length]=x.subst"
+"ring(i,j<0?x.length:j);i=j;if(i>=0)i+=d.length}}return a");
w.s_jn=new Function("a","d","var x='',i,j=a.length;if(a&&j>0){x=a[0];if(j>1){if(a.join)x=a.join(d);else for(i=1;i<j;i++)x+=d+a[i]}}return x");
w.s_rep=new Function("x","o","n","return s_jn(s_sp(x,o),n)");
w.s_d=new Function("x","var t='`^@$#',l=s_an,l2=new Object,x2,d,b=0,k,i=x.lastIndexOf('~~'),j,v,w;if(i>0){d=x.substring(0,i);x=x.substring(i+2);l=s_sp(l,'');for(i=0;i<62;i++)l2[l[i]]=i;t=s_sp(t,'');d"
+"=s_sp(d,'~');i=0;while(i<5){v=0;if(x.indexOf(t[i])>=0) {x2=s_sp(x,t[i]);for(j=1;j<x2.length;j++){k=x2[j].substring(0,1);w=t[i]+k;if(k!=' '){v=1;w=d[b+l2[k]]}x2[j]=w+x2[j].substring(1)}}if(v)x=s_jn("
+"x2,'');else{w=t[i]+' ';if(x.indexOf(w)>=0)x=s_rep(x,w,t[i]);i++;b+=62}}}return x");
w.s_fe=new Function("c","return s_rep(s_rep(s_rep(c,'\\\\','\\\\\\\\'),'\"','\\\\\"'),\"\\n\",\"\\\\n\")");
w.s_fa=new Function("f","var s=f.indexOf('(')+1,e=f.indexOf(')'),a='',c;while(s>=0&&s<e){c=f.substring(s,s+1);if(c==',')a+='\",\"';else if((\"\\n\\r\\t \").indexOf(c)<0)a+=c;s++}return a?'\"'+a+'\"':"
+"a");
w.s_ft=new Function("c","c+='';var s,e,o,a,d,q,f,h,x;s=c.indexOf('=function(');while(s>=0){s++;d=1;q='';x=0;f=c.substring(s);a=s_fa(f);e=o=c.indexOf('{',s);e++;while(d>0){h=c.substring(e,e+1);if(q){i"
+"f(h==q&&!x)q='';if(h=='\\\\')x=x?0:1;else x=0}else{if(h=='\"'||h==\"'\")q=h;if(h=='{')d++;if(h=='}')d--}if(d>0)e++}c=c.substring(0,s)+'new Function('+(a?a+',':'')+'\"'+s_fe(c.substring(o+1,e))+'\")"
+"'+c.substring(e+1);s=c.indexOf('=function(')}return c;");
c=s_d(c);if(e>0){a=parseInt(i=v.substring(e+5));if(a>3)a=parseFloat(i)}else if(m>0)a=parseFloat(u.substring(m+10));else a=parseFloat(v);if(a>=5&&v.indexOf('Opera')<0&&u.indexOf('Opera')<0){w.s_c=new Function("un","pg","ss","var s=this;"+c);return new s_c(un,pg,ss)}else s=new Function("un","pg","ss","var s=new Object;"+s_ft(c)+";return s");return s(un,pg,ss)}


/********************************************************************
 *
 * Main Plug-in code (should be in Plug-ins section)
 *
 *******************************************************************/
/*
 * Plugin: getQueryParam 2.3
 */
s.getQueryParam=new Function("p","d","u",""
+"var s=this,v='',i,t;d=d?d:'';u=u?u:(s.pageURL?s.pageURL:s.wd.locati"
+"on);if(u=='f')u=s.gtfs().location;while(p){i=p.indexOf(',');i=i<0?p"
+".length:i;t=s.p_gpv(p.substring(0,i),u+'');if(t){t=t.indexOf('#')>-"
+"1?t.substring(0,t.indexOf('#')):t;}if(t)v+=v?d+t:t;p=p.substring(i="
+"=p.length?i:i+1)}return v");
s.p_gpv=new Function("k","u",""
+"var s=this,v='',i=u.indexOf('?'),q;if(k&&i>-1){q=u.substring(i+1);v"
+"=s.pt(q,'&','p_gvf',k)}return v");
s.p_gvf=new Function("t","k",""
+"if(t){var s=this,i=t.indexOf('='),p=i<0?t:t.substring(0,i),v=i<0?'T"
+"rue':t.substring(i+1);if(p.toLowerCase()==k.toLowerCase())return s."
+"epa(v)}return ''");


/*--------------------------------------------*/
// JavaScript Document


//------------------------------------------------
// Mobile redirect
function getBrowserWidth(){
	if (window.innerWidth){
		return window.innerWidth;
	}
	else if (document.documentElement && document.documentElement.clientWidth != 0){
		return document.documentElement.clientWidth;
	}
	else if (document.body){
		return document.body.clientWidth;
	}
	return 0;
}

			
var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			   string: navigator.userAgent,
			   subString: "iPhone",
			   identity: "iPhone/iPod"
	    },
		{
			   string: navigator.userAgent,
			   subString: "iPad",
			   identity: "iPad"
	    },
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

}
 BrowserDetect.init();
 redirectMobile();

function redirectMobile($siteURL){
   
    if (getBrowserWidth() < 500 || BrowserDetect.OS == 'iPhone/iPod'|| BrowserDetect.OS == 'an unknown OS'){
       window.location = "http://m.buick.com.mx/"
			
    }  
	if (navigator.userAgent.indexOf('Blackberry') != -1) {
        document.location = "http://m.buick.com.mx/";
    }
	if (screen.width < 500) {
document.location = "http://m.buick.com.mx/";
}
	
}

/*-----------------------------------*/
function attachEventListener(target,eventType,functionRef,capture){
	if(typeof target.addEventListener!="undefined"){
		target.addEventListener(eventType,functionRef,capture);
	} else if(typeof target.attachEvent!="undefined"){
		target["on"+eventType] = functionRef;
	}else {
		return false;
	} 
	return true;
};
function detachEventListener(target,eventType,functionRef,capture){
	if(typeof target.addEventListener!="undefined"){
		target.removeEventListener(eventType,functionRef,capture);
	} else if(typeof target.attachEvent!="undefined"){
		target["on"+eventType] = null;
	}else {
		return false;
	} 
	return true;
};

/*Copyright (c)2005-2009 Matt Kruse (javascripttoolbox.com)*/
var Position = (function() {
  function resolveObject(s) {
    if (document.getElementById && document.getElementById(s)!=null) {
      return document.getElementById(s);
    }
    else if (document.all && document.all[s]!=null) {
      return document.all[s];
    }
    else if (document.anchors && document.anchors.length && document.anchors.length>0 && document.anchors[0].x) {
      for (var i=0; i<document.anchors.length; i++) {
        if (document.anchors[i].name==s) { 
          return document.anchors[i]
        }
      }
    }
  }
  var pos = {};
  pos.$VERSION = 1.0;

  pos.set = function(o,left,top) {
    if (typeof(o)=="string") {
      o = resolveObject(o);
    }
    if (o==null || !o.style) {
      return false;
    }
    if (typeof(left)=="object") {
      var pos = left;
      left = pos.left;
      top = pos.top;
    }
    
    o.style.left = left + "px";
    o.style.top = top + "px";
    return true;
  };
  pos.get = function(o) {
    var fixBrowserQuirks = true;
    if (typeof(o)=="string") {
      o = resolveObject(o);
    }
    if (o==null) {
      return null;
    }
    var left = 0;
    var top = 0;
    var width = 0;
    var height = 0;
    var parentNode = null;
    var offsetParent = null;
    offsetParent = o.offsetParent;
    var originalObject = o;
    var el = o;
    while (el.parentNode!=null) {
      el = el.parentNode;
      if (el.offsetParent==null) {
      }
      else {
        var considerScroll = true;
        if (fixBrowserQuirks && window.opera) {
          if (el==originalObject.parentNode || el.nodeName=="TR") {
            considerScroll = false;
          }
        }
        if (considerScroll) {
          if (el.scrollTop && el.scrollTop>0) {
            top -= el.scrollTop;
          }
          if (el.scrollLeft && el.scrollLeft>0) {
            left -= el.scrollLeft;
          }
        }
      }
      if (el == offsetParent) {
        left += o.offsetLeft;
        if (el.clientLeft && el.nodeName!="TABLE") { 
          left += el.clientLeft;
        }
        top += o.offsetTop;
        if (el.clientTop && el.nodeName!="TABLE") {
          top += el.clientTop;
        }
        o = el;
        if (o.offsetParent==null) {
          if (o.offsetLeft) {
            left += o.offsetLeft;
          }
          if (o.offsetTop) {
            top += o.offsetTop;
          }
        }
        offsetParent = o.offsetParent;
      }
    } 
    if (originalObject.offsetWidth) {
      width = originalObject.offsetWidth;
    }
    if (originalObject.offsetHeight) {
      height = originalObject.offsetHeight;
    }
    
    return {'left':left, 'top':top, 'width':width, 'height':height
        };
  };
  pos.getCenter = function(o) {
    var c = this.get(o);
    if (c==null) { return null; }
    c.left = c.left + (c.width/2);
    c.top = c.top + (c.height/2);
    return c;
  };
  
  return pos;
})();

var ETNIA = ETNIA || {};
var etGt = function($id){
	return document.getElementById($id);
}
var etGBT = function($tgt,$tag){
	return $tgt.getElementsByTagName($tag);
}
var etPF = function($functions,$params){
	var tempFunction;
	if($functions.constructor == Array){
		tempFunction = function(){
			for(var i = 0; i < $functions.length; i++){
				$functions[i]($params[i]);
			}
			
		}
	} else {
		tempFunction = function(){
			$functions($params);
		}
	}
	return tempFunction;
}
ETNIA.getObjById = function($elemsToSearch,$id){
	for(var i = 0; i<$elemsToSearch.length; i++){
		if($elemsToSearch[i].id == $id){
			return $elemsToSearch[i];
		}
	}
	return null;
}

ETNIA.windowRedirect = function($target,$url){
	target = eval($target);
	target.location = $url;
}
ETNIA.createGlobalVar = function($variable,$value){
	window[$variable] = $value;
}
ETNIA.createVarIn = function($target,$variable,$value){
	var target =eval($target);
	target[$variable] = $value;
}
ETNIA.readVarIn = function($target,$variable){
	var target = eval($target);
	var value = target[$variable];
	if(!value)
		value = null;
	return value;
}
ETNIA.getNumericValue=function($valueToConvert){
	var numericValue = '';
	var index = 0;
	while((!isNaN($valueToConvert.charAt(index)) || $valueToConvert.charAt(index) == '.' || $valueToConvert.charAt(index) == '-') && index < $valueToConvert.length){
		numericValue+=$valueToConvert.charAt(index);
		index++;
	}
	return Number(numericValue);
}
ETNIA.css=function($obj,$prop){
	var cssValue = null;
	if($obj.currentStyle){
		cssValue = $obj.currentStyle[$prop];
	} else if(window.getComputedStyle){
		cssValue = document.defaultView.getComputedStyle($obj,null).getPropertyValue($prop);
	}
	return cssValue;
}
ETNIA.createDOMNode=function($nodeTag,$nodeProps){
	var node = document.createElement($nodeTag);
	for(var prop in $nodeProps){
		node[prop] = $nodeProps[prop];
	}
	return node;
}

ETNIA.customEvent = function($event,$preventDefault,$currentTarget){
	var ie_var = "srcElement";
	var moz_var = "target";
	var eventInfo = {};
	eventInfo.event = $event;
	eventInfo.currentTarget = $currentTarget;
	if($preventDefault){
		if($event.preventDefault)$event.preventDefault();
		$event.returnValue = false;
	}
	return eventInfo;
}
ETNIA.eventHandler = function($dispatch,$args,$prevent){
	var handler;
	handler = function($event){
		if(!$event)$event=event;
		if($dispatch)
			$dispatch(ETNIA.customEvent($event,$prevent,this),$args);
		else
			ETNIA.customEvent($event,$prevent,this);
	}
	return handler;
}

ETNIA.extend =function(Child, Parent){
	var F = function(){};
	F.prototype = Parent.prototype;
	Child.prototype = new F();
	Child.prototype.constructor = Child;
	Child.uber = Parent.prototype;
}
ETNIA.SimpleMenu = function($elements,$selectedOption,$dispatchActions){
	var _classScope = this;
	var _elements = $elements;
	var _dispatchActions = $dispatchActions;
	var _selectedOption = $selectedOption;
	var _overStatus;
	var _onOptionClicked = function(){};
	var _onOptionOver = function(){};
	var _onOptionOut = function(){};
	var _onResetElements = function(){};
	var _lastElementSelected = $selectedOption || 0;
	var _currentElementSelected = $selectedOption || 0;
	var _onFocus = ETNIA.eventHandler(function($event){$event.currentTarget.blur();});
	
	this.onOptionClicked = function($handler){
		_onOptionClicked = $handler;
	}
	this.onOptionOver = function($handler){
		_onOptionOver = $handler;	
	}
	this.onOptionOut = function($handler){
		_onOptionOut = $handler;	
	}
	this.onResetElements = function($handler){
		_onResetElements = $handler;	
	}
	this.onFocus = function($hanlder){
		_onFocus = $hanlder;	
	}
	this.resetElems = resetElements;
	this.lastElementSelected = function($index){
		if($index!=undefined){
			_lastElementSelected = $index;	
		} else {
			return _lastElementSelected;
		}
	}
	this.currentElementSelected = function($index){
		if($index!=undefined){
			_currentElementSelected = $index;	
		} else {
			return _currentElementSelected;
		}
	}
	function SimpleMenu(){
		if(!_selectedOption)_selectedOption=0;
		for(var i= 0; i<_elements.length; i++){
			_elements[i].setAttribute("posInMenu",i);
			attachEventListener(_elements[i],"focus",_onFocus,false);
		}
	}
	this.setEvents = function($set,$exception){
		for(var i= 0; i<_elements.length; i++){
			if($set){
				if(i != $exception){
					_classScope.addEventsTo(_elements[i]);
				}
			}else{
				if(i != $exception){
					_classScope.removeEventsFrom(_elements[i]);
				}	
			}
		}	
	}
	this.removeEventsFrom = function($tgt){
		detachEventListener($tgt,"mouseover",_onOptionOver,false);
		detachEventListener($tgt,"mouseout",_onOptionOut,false);
		detachEventListener($tgt,"click",_onOptionClicked,false);
	}
	this.addEventsTo = function($tgt){
		attachEventListener($tgt,"mouseover",_onOptionOver,false);
		attachEventListener($tgt,"mouseout",_onOptionOut,false);
		attachEventListener($tgt,"click",_onOptionClicked,false);	
	}
	this.addEventsToIndex = function($index){
		_classScope.addEventsTo(_elements[$index]);	
	}
	this.removeEventsToIndex = function($index){
		_classScope.removeEventsFrom(_elements[$index]);	
	}
	this.getElementByIndex = function($index){
		return _elements[$index];
	}
	function resetElements(){
		for(var i= 0; i<_elements.length; i++){
			_onResetElements(_elements[i]);	
		}	
	}
	SimpleMenu();
}
ETNIA.EtniaEasing = function($easingTargets,$properties,$finalDestinies,$speeds,$dispatch,$timerSpeed,$startEasing){
	var _classScope = this;
	var _easingTargets = $easingTargets;
	var _timer;
	var _speeds = $speeds;
	var _finalDestinies = $finalDestinies;
	var _properties = $properties;
	var _timerSpeed = $timerSpeed;
	var _dispatch = $dispatch;
	var _easingComplete = false;
	var _dispatchFunctionExe = false;
	var _endTimeout;
	
	function EtniaEasing(){
		for(var s = 0; s < _easingTargets.length; s++){
			_easingTargets[s].originalWidth = ETNIA.getNumericValue(ETNIA.css(_easingTargets[s],"width"));
			_easingTargets[s].originalHeight = ETNIA.getNumericValue(ETNIA.css(_easingTargets[s],"height"));
			_easingTargets[s].easingComplete = false;
			setPropInitialValues(false,s);
		}
		if($startEasing)_classScope.initEasing();
	}
	function setPropInitialValues($readyValue,$targetIndex){
		for(var i = 0; i<_properties[$targetIndex].length; i++){
			_properties[$targetIndex][i].ready = $readyValue;
			var prop = _properties[$targetIndex][i].prop;
			if(prop != "scale")
				_properties[$targetIndex][i].originalValue = ETNIA.getNumericValue(ETNIA.css(_easingTargets[$targetIndex],_properties[$targetIndex][i].prop));
		}
	}
	function motion(){
		for (var i=0; i<_easingTargets.length; i++){
			for (var index = 0; index < _properties[i].length; index++) {
				singleElementMotion(_properties[i][index]["prop"],_finalDestinies[i][index],index,i);
			}
		}
	}
	function singleElementMotion($prop,$finalDestiny,$propIndex,$targetIndex){
		var currentValue;
		if($prop == "scaleX" || $prop == "scaleY" || $prop == 'scale'){
			if($prop == 'scale'){
				currentValue = getScale(_easingTargets[$targetIndex],'x');
				currentValue += ($finalDestiny - currentValue)/_speeds[$targetIndex][$propIndex];
				setProportionalScale(_easingTargets[$targetIndex],currentValue);
			}
		} else {
			currentValue = _properties[$targetIndex][$propIndex].originalValue += ($finalDestiny - _properties[$targetIndex][$propIndex].originalValue)/_speeds[$targetIndex][$propIndex];
			_easingTargets[$targetIndex].style[$prop] = String(currentValue+getSuffix($prop));
			if($prop == "opacity"){
				_easingTargets[$targetIndex].style.filter = 'alpha(opacity='+(currentValue*100)+')';	
			}
		}
		if (($prop == "filter" || $prop == "opacity" || $prop == "scaleX" || $prop == "scaleY" || $prop == 'scale')) {
			if($prop == "scaleX" || $prop == "scaleY" || $prop == 'scale'){
				if($prop == 'scale'){
					tempValue = (Math.abs($finalDestiny-getScale(_easingTargets[$targetIndex],'x'))*100);
				}
			} else {
				var dif = $finalDestiny-ETNIA.getNumericValue(ETNIA.css(_easingTargets[$targetIndex],$prop))
				tempValue = (Math.abs($finalDestiny-ETNIA.getNumericValue(ETNIA.css(_easingTargets[$targetIndex],$prop)))*100);
			}
			if (Math.floor(tempValue)<=2) {
				_properties[$targetIndex][$propIndex]["ready"] = true;
				if(!_easingTargets[$targetIndex].easingComplete){
					easingComplete($targetIndex);
				}
			}
		} else {
			tempValue = Math.floor(Math.abs($finalDestiny - ETNIA.getNumericValue(ETNIA.css(_easingTargets[$targetIndex],$prop))));
			if (tempValue<=2) {
				_properties[$targetIndex][$propIndex]["ready"] = true;
				if(!_easingTargets[$targetIndex].easingComplete){
					easingComplete($targetIndex);
				}
			}
		}
	}
	function checkEasingComplete($targetIndex) {
		var completeElements = 0;
		for (var j = 0; j < _properties[$targetIndex].length; j++) {	
			if (_properties[$targetIndex][j]["ready"] == true) {
				completeElements ++;
			} 
		}
		if(completeElements == _properties[$targetIndex].length){
			_easingTargets[$targetIndex].easingComplete = true;
			return true;
		}
		return false;
	}
	function checkAllAnimationsComplete(){
		var completeAnimations= 0;
		for(j = 0; j<_easingTargets.length; j++){
			if(_easingTargets[j].easingComplete)completeAnimations++;
			if(completeAnimations == _easingTargets.length)return true;
		}
		return false;
	}
	function easingComplete($targetIndex) {
		checkEasingComplete($targetIndex);
		if(checkAllAnimationsComplete()){
			stopMotion();
			function finishAllAnimations(){
				stopMotion();
				for(var index = 0; index < _properties[$targetIndex].length; index++){
					var prop = _properties[$targetIndex][index]["prop"];
					if(prop == "scaleX" || prop == "scaleY" || prop == 'scale'){
						if(prop == 'scale'){
							setProportionalScale(_easingTargets[$targetIndex],_finalDestinies[$targetIndex][index]);
						}
					} else {
						_easingTargets[$targetIndex].style[prop]=_finalDestinies[$targetIndex][index]+getSuffix(prop);
						if(prop=="opacity"){
							_easingTargets[$targetIndex].style.filter = 'alpha(opacity='+(_finalDestinies[$targetIndex][index]*100)+')';	
						}
					}
				}
				
				if(_dispatch != null && !_dispatchFunctionExe){
					_dispatchFunctionExe = true;
					_dispatch();
				}
			}
			_endTimeout = setTimeout(finishAllAnimations,100);
		}
	}
	function stopMotion() {
		clearInterval(_timer);
	}
	function getSuffix($prop){
		var suffix;
		if($prop == 'opacity' || $prop == 'filter'){
			suffix = '';
		}else{
			suffix = 'px';	
		}
		return suffix;
	}
	function getScale($element,$scaleType){
		var scale;
		switch($scaleType){
			case 'x':
				scale = ETNIA.getNumericValue($element.style.width)/$element.originalWidth;
				break;
			case 'y':
				scale = ETNIA.getNumericValue($element.style.height)/$element.originalHeight;
				break;
		}
		return scale;
	}
	function setProportionalScale($element,$scaleValue){
		$element.style.width = ($element.originalWidth * $scaleValue)+'px';
		$element.style.height = ($element.originalHeight * $scaleValue)+'px';
	}
	this.initEasing = function() {
		if (_timer != undefined) {
			stopMotion();
		}
		if(_endTimeout != undefined){
			clearTimeout(_endTimeout);	
		}
		_timer = setInterval(motion,_timerSpeed);
	}
	this.updateMotion = function($targets,$properties,$finalDestinies,$speeds,$dispatch,$timerSpeed) {
		if($dispatch!=undefined){
			_dispatch = $dispatch;
		}
		_easingTargets = $targets;
		_timerSpeed = $timerSpeed;
		_properties = $properties;
		_finalDestinies = $finalDestinies;
		_speeds = $speeds;
		_dispatchFunctionExe = false;
		for(var s = 0; s < _easingTargets.length; s++){
			_easingTargets[s].easingComplete = false;
			setPropInitialValues(false,s);
		}
		this.initEasing();
	}
	this.setSingleProperty=function($prop,$finalDestiny,$speed){
		var currentValue;
		if($prop == "scaleX" || $prop == "scaleY" || $prop == 'scale'){
			if($prop == 'scale'){
				currentValue = getScale(_easingTargets[0],'x');
				currentValue = $finalDestiny;
				for(var s = 0; s < _easingTargets.length; s++){
					setProportionalScale(_easingTargets[s],currentValue);
				}
			}
		} else {
			currentValue = ETNIA.getNumericValue(ETNIA.css(_easingTargets[0],$prop));
			currentValue = $finalDestiny;
			for(var d = 0; d<_easingTargets.length; d++){
				_easingTargets[d].style[$prop] = String(currentValue+getSuffix($prop));
				if($prop == "opacity"){
					_easingTargets[d].style.filter = 'alpha(opacity='+(currentValue*100)+')';	
				}
			}
		}	
	}
	this.stopEasing = stopMotion;
	EtniaEasing();
}
ETNIA.EtniaCarousel=function($parentContainer,$elementsURL,$numbOfElemsToMove,$speed,$styles,$elemsInfo,$carouselType, $elementTag){
	this._classScope = this;
	var _parentContainer = $parentContainer;
	var _elementsURL = $elementsURL;
	var _numbOfElementsToMove = $numbOfElemsToMove;
	var _speed = $speed;
	var _styles = $styles;
	var _mainContainer;
	var _elementsContainerBackground;
	var _elementsContainer;
	var _elementsWrapper;
	var _leftArrow;
	var _rightArrow;
	var _rightBlocker;
	var _leftBlocker;
	var _carouselElements = new Array();
	var _xSeparation = $elemsInfo.xSeparation;
	var _xPos = 0;
	var _yPos = 0;
	var _carouselInterval;
	var _singleElementWidth;
	var _borderSize = $elemsInfo.borderSize || 1;
	var _currentCountClicks = 1;
	var _direction;
	var _carouselType = $carouselType;
	this.carrouselElements = function(){
		return _carouselElements;
	}
	this.currentCountClicks = function($currentCount){
		_currentCountClicks = $currentCount;
		if(_currentCountClicks<=1){
			_leftArrow.style.visibility = "hidden";
			_rightArrow.style.visibility = "visible";
		} else if(_currentCountClicks>=_carouselElements.length/_numbOfElementsToMove){
			_leftArrow.style.visibility = "visible";
			_rightArrow.style.visibility = "hidden";
		} else {
			_leftArrow.style.visibility = "visible";
			_rightArrow.style.visibility = "visible";
		}
	}
	function EtniaCarousel(){
		_mainContainer = ETNIA.createDOMNode("div",{className:_styles.mainContainerStyle});
		_parentContainer.appendChild(_mainContainer);
		if(_styles.elementsContainerBackground){
			_elementsContainerBackground = 	ETNIA.createDOMNode("div",{className:_styles.elementsContainerBackground});
			_mainContainer.appendChild(_elementsContainerBackground);
		}
		_elementsContainer =  ETNIA.createDOMNode("div",{className:_styles.elementsContainer});
		_leftArrow =  ETNIA.createDOMNode("a",{className:_styles.leftArrowStyle});
		_leftArrow.href = "";
		_rightArrow =  ETNIA.createDOMNode("a",{className:_styles.rightArrowStyle});
		_rightArrow.href = "";
		_rightBlocker = ETNIA.createDOMNode("a",{className:_styles.rightBlocker});
		_rightBlocker.href = "";
		if(_styles.leftBlocker){
			_leftBlocker = ETNIA.createDOMNode("a",{className:_styles.leftBlocker});
			_leftBlocker.href = "";
			_mainContainer.appendChild(_leftBlocker);
		}
		_elementsWrapper= ETNIA.createDOMNode("div",{className:_styles.carouselElementWrapper});
		_mainContainer.appendChild(_leftArrow);
		_mainContainer.appendChild(_elementsContainer);
		_elementsContainer.appendChild(_elementsWrapper);
		_mainContainer.appendChild(_rightBlocker);
		_mainContainer.appendChild(_rightArrow);
		_elementsWrapper.left = "0px";
		_leftArrow.style.visibility = "hidden";
		createCarouselElements();
		setArrowsEvents();
	}
	function setArrowsEvents(){
		attachEventListener(_leftArrow,'click',ETNIA.eventHandler(arrowButtonsManager,"left",true));
		attachEventListener(_rightBlocker,'click',ETNIA.eventHandler(null,null,true));
		attachEventListener(_rightArrow,'click',ETNIA.eventHandler(arrowButtonsManager,"right",true));
		attachEventListener(_rightBlocker,'focus',ETNIA.eventHandler(clearFocus,null,true));
		if(_leftBlocker){
			attachEventListener(_leftBlocker,'click',ETNIA.eventHandler(null,null,true));
			attachEventListener(_leftBlocker,'focus',ETNIA.eventHandler(clearFocus,null,true));
		}
		attachEventListener(_rightArrow,'focus',ETNIA.eventHandler(clearFocus,null,true));
		attachEventListener(_leftArrow,'focus',ETNIA.eventHandler(clearFocus,null,true));
	}
	function clearFocus($event){
		$event.currentTarget.blur();	
	}
	function createCarouselElements(){
		for(var i = 0; i<_elementsURL.length; i++){
			var element; 
			if(!$elementTag){	
				element = document.createElement('img');
				element.src = _elementsURL[i]
			} else{
				element = document.createElement($elementTag);
			}
			element.className = $styles.carouselElement;
			_carouselElements.push(element);
			_elementsWrapper.appendChild(element);
			if(_carouselType == "horizontal"){
				element.style.left = _xPos+'px';
				_xPos+=$elemsInfo.imageWidth+_xSeparation;
			} else if(_carouselType == "vertical"){
				element.style.top = _yPos+'px';
				_yPos+=$elemsInfo.imageHeight+_ySeparation;
			} else {
				element.style.left = _xPos+'px';
				element.style.top = _yPos+'px';
			}
		}
		_singleElementWidth=($elemsInfo.imageWidth+_xSeparation)
	}
	function arrowButtonsManager($event,$direction){
		_direction = $direction;
		if(_direction=='left'){
			_rightArrow.style.visibility = "visible";
			arrowsClickActions(_direction)
			_currentCountClicks--;
			if(_currentCountClicks<=1){
				_leftArrow.style.visibility = "hidden";	
			}
		} else if(_direction=='right'){
			if(_currentCountClicks<(_carouselElements.length/_numbOfElementsToMove)){
				_leftArrow.style.visibility = "visible";
				arrowsClickActions(_direction)
				_currentCountClicks++;
				if(_currentCountClicks>=_carouselElements.length/_numbOfElementsToMove){
					_rightArrow.style.visibility = "hidden";
				}
			}
		}
	}
	function animateElementContainer($destiny){
		var currentPos = ETNIA.getNumericValue(_elementsWrapper.style.left);
		if(_carouselInterval!=undefined){
			clearInterval(_carouselInterval);	
		}
		_carouselInterval = setInterval(animate,33.33)
		function animate(){
			if(_direction=='left'){
				currentPos+=$speed;
				if(currentPos>$destiny){
					currentPos = $destiny;
					clearInterval(_carouselInterval)
				} 
			} else if(_direction=='right'){
				currentPos-=$speed;
				if(currentPos<$destiny){
					currentPos = $destiny;
					clearInterval(_carouselInterval)
				} 
			}
			_elementsWrapper.style.left = currentPos + "px";
		}
	}
	function arrowsClickActions($direction){
		if($direction == "left"){
			var currentPos = -((_singleElementWidth*_numbOfElementsToMove)*(_currentCountClicks-1));
			animateElementContainer(currentPos+(_singleElementWidth*_numbOfElementsToMove));
		} else if($direction == "right"){
			animateElementContainer(-((_singleElementWidth*_numbOfElementsToMove)*_currentCountClicks));	
		}
	}
	this.arrowsClickActions = function($clickAction){
		arrowsClickActions = $clickAction;	
	}
	this.setArrowsOverEvents = function($mouseOverEventHandler,$mouseOutEventHandler){
		attachEventListener(_leftArrow,'mouseover',$mouseOverEventHandler);
		attachEventListener(_leftArrow,'mouseout',$mouseOutEventHandler);	
	}
	EtniaCarousel();
}


var BUICKMX = BUICKMX || {};

BUICKMX.HideInterface = function(){
	var footerOps=$('#footer li');
	footerOps.eq(0).css('display','none');
	footerOps.eq(1).css('display','none');
	footerOps.eq(2).css('display','none');
	footerOps.eq(4).css('display','none');
	footerOps.eq(5).css('display','none');
	footerOps.eq(6).css('display','none');
	footerOps.eq(7).css('display','none');
	$('#submenu').css('display','none');
	$('.hideOpt').css('display','none');
}
BUICKMX.flashVersion = true;
BUICKMX.GalleryCarousel=function($parentContainer,$elementsURL,$numbOfElemsToMove,$speed,$styles,$elemsInfo,$carouselType){
	_classScope = this;
	var _carrouselElements;
	var _currentElementIndex = 0; 
	var _lastElementIndex = 0; 
	var _currentElement;
	var _lastElement;
	var _currentEasing;
	var _lastEasing;
	var _onCarouselChange = function(){};
	
	this.currentElementIndex = function(){
		return _currentElementIndex;	
	}
	this.onCarouselChange = function($handler){
		_onCarouselChange = $handler;	
	}
	
	function GalleryCarousel(){
		_classScope.constructor.uber.constructor($parentContainer,$elementsURL,$numbOfElemsToMove,$speed,$styles,$elemsInfo,$carouselType);
		_classScope.arrowsClickActions(arrowsClickActions);
		_carrouselElements = _classScope.carrouselElements();
		_currentElement = _carrouselElements[_currentElementIndex];
		_currentElement.style.opacity = "1";
		removeAlphaFilter();	
	}
	function arrowsClickActions ($direction){
		if($direction == "left"){
			_currentElementIndex--;
		} else if($direction == "right"){
			_currentElementIndex++;
		}
		_classScope.changeMediaInDisplay(_currentElementIndex);
	}
	
	this.changeMediaInDisplay = function($index){
		_currentElementIndex = $index;
		_lastElement = _currentElement;
		_currentElement = _carrouselElements[_currentElementIndex];
		fadeElements();
		_onCarouselChange();	
	}
	
	function removeAlphaFilter(){
		_currentElement.style.filter = "";
	}
	
	function fadeElements(){
		for(var i= 0; i<_carrouselElements.length; i++){
			if(_carrouselElements[i] != _lastElement && _carrouselElements[i] != _currentElement){
				_carrouselElements[i].style.opacity = "0"; 
				_carrouselElements[i].style.filter = "alpha(opacity=0)";
			}
		}
		
		if(!_lastEasing){
			_lastEasing = new ETNIA.EtniaEasing([_lastElement],[[{prop:"opacity"}]],[[0]],[[3]],null,33.33,true);
		} else {
			_lastEasing.updateMotion([_lastElement],[[{prop:"opacity"}]],[[0]],[[3]],null,33.33)
		}
		if(!_currentEasing){
			_currentEasing = new ETNIA.EtniaEasing([_currentElement],[[{prop:"opacity"}]],[[1]],[[3]],removeAlphaFilter,33.33,true);
		} else {
			_currentEasing.stopEasing();
			_currentEasing.updateMotion([_currentElement],[[{prop:"opacity"}]],[[1]],[[3]],removeAlphaFilter,33.33)
		}	
	}
	
	GalleryCarousel();
}
ETNIA.extend(BUICKMX.GalleryCarousel,ETNIA.EtniaCarousel);

BUICKMX.GalleryMenu = function($elements,$selectedOption,$dispatchActions){
	var _classScope = this;
	function GalleryMenu(){
		_classScope.constructor.uber.constructor($elements,$selectedOption,$dispatchActions);
		_classScope.onOptionOver(ETNIA.eventHandler(overStatus,"over",true));
		_classScope.onOptionOut(ETNIA.eventHandler(overStatus,"out",true));
		_classScope.setEvents(true,$selectedOption);
	}
	function overStatus($event,$status){
		var tgt = $event.currentTarget;
		var bullet = etGBT(tgt,"img")[0];
		if($status == "over"){
			bullet.src = "../../images/menuOverGray.gif";
		} else if($status == "out"){
			bullet.src = "../../images/menuArrowOverBlue.gif";	
		}
	}
	GalleryMenu();
}
ETNIA.extend(BUICKMX.GalleryMenu,ETNIA.SimpleMenu);
BUICKMX.ThumbsMenu = function($elements,$selectedOption,$dispatchActions){
	var _classScope = this;
	var _onElementChanged = function(){};
	
	this.onElementChanged = function($handler){
		_onElementChanged = $handler;	
	}
	
	function ThumbsMenu(){
		_classScope.constructor.uber.constructor($elements,$selectedOption,$dispatchActions);
		_classScope.onOptionClicked(ETNIA.eventHandler(thumbClicked,null,true));
		_classScope.onResetElements(resetAction);
		_classScope.setEvents(true,0);
	}
	function thumbClicked($event){
		var tgt = $event.currentTarget;
		_classScope.selectElement(tgt);
		_onElementChanged();
	}
	this.selectElement = function($target){
		_classScope.resetElems();
		_classScope.currentElementSelected($target.getAttribute("posInMenu"));
		_classScope.removeEventsFrom($target);
		$target.id = "selected";	
	}
	function resetAction($target){
		_classScope.addEventsToIndex(_classScope.currentElementSelected());
		$target.id = "";
	}
	ThumbsMenu();
}
ETNIA.extend(BUICKMX.ThumbsMenu,ETNIA.SimpleMenu);


BUICKMX.GalleryManager = function($carouselContainer,$carouselElementsURL,$carouselNumbOfElemsToMove,$carouselSpeed,$carouselStyles,$carouselElemsInfo,$carouselType,$menuElements,$menuDispatchActions,$menuSelectOption,$mediaDescriptionContainer,$mediaThumbsContainer){
	var _classScope = this;
	var _mediaCarousel;
	var _galleryMenu;
	var _mediaDescriptionContainer = $mediaDescriptionContainer;
	var _mediaThumbsContainer = $mediaThumbsContainer;
	var _thumbsMenu;
	
	function GalleryManager(){
		initGalleryCarousel();
		initMenu();
		initThumbnails();
		updateDescription(0);
	}
	function initGalleryCarousel(){
		_mediaCarousel = new BUICKMX.GalleryCarousel($carouselContainer,$carouselElementsURL,$carouselNumbOfElemsToMove,$carouselSpeed,$carouselStyles,$carouselElemsInfo,$carouselType);
		_mediaCarousel.onCarouselChange(updateThumbAndDescription);
	}
	function initMenu(){
		_galleryMenu = new BUICKMX.GalleryMenu($menuElements,$menuSelectOption,$menuDispatchActions);
	}
	function initThumbnails(){
		var thumbsButtons = etGBT(_mediaThumbsContainer,"a");
		_thumbsMenu = new BUICKMX.ThumbsMenu(thumbsButtons);
		_thumbsMenu.onElementChanged(updateMediaCarousel);
	}
	function updateThumbAndDescription(){
		_thumbsMenu.selectElement(_thumbsMenu.getElementByIndex(_mediaCarousel.currentElementIndex()));
		updateDescription(_mediaCarousel.currentElementIndex());
	}
	function updateMediaCarousel(){
		_mediaCarousel.currentCountClicks(Number(_thumbsMenu.currentElementSelected())+1);
		_mediaCarousel.changeMediaInDisplay(_thumbsMenu.currentElementSelected());	
	}
	function updateDescription($descIndex){
		var descriptions = etGBT(_mediaDescriptionContainer,"li");
		for(var i=0; i < descriptions.length; i++){
			descriptions[i].style.display = "none";	
		}
		descriptions[$descIndex].style.display = "block";	
	}
	
	GalleryManager();
}

BUICKMX.ColorSectionManager = function($menuElements,$menuDispatchActions,$menuSelectOption,$flashGalleryContainer){
	var _classScope = this;
	var _galleryMenu;
	var _flashGalleryContainer = $flashGalleryContainer;
	
	function ColorSectionManager(){
		initMenu();
	}
	function initMenu(){
		_galleryMenu = new BUICKMX.GalleryMenu($menuElements,$menuSelectOption,$menuDispatchActions);
		attachEventListener(_flashGalleryContainer,"focus",ETNIA.eventHandler(clearFocus,null,true));
	}
	function clearFocus($event){
		$event.currentTarget.blur();	
	} 
	ColorSectionManager();
}

BUICKMX.FeaturesPanel = function($optionsList, $panelMainContainer, $imagesPath, $imagesURL){
	var _classScope=this;
	var _panelImage;
	var _panelTitle;
	var _panelTextElements;
	//var _panelClose;
	//var _panelCollapse;
	var _panelFeaturesBtns = $optionsList.getElementsByTagName('a');
	var _panelMainContainer = $panelMainContainer;
	var _currentDisplayIndex = 0;
	var _imagesURL=$imagesURL;
	var _imagesPath  = $imagesPath;
	var _descriptionEasing;
	var _descriptionVisible;
	var _descriptionsContainer = etGBT(_panelMainContainer,"ul")[0];
	var _videoPlayerMovie = swfobject.getObjectById("videoPlayerFlash");
	var _videoPlayerInterval;
	var _trackName;
	var _modelFeature= etGt('featuresMaskContainer').getAttribute('modelFeature')
	
	
	function FeaturesPanel(){
		_descriptionVisible = true;
		_panelTextElements =_panelMainContainer.getElementsByTagName('li');
		//_panelTitle = _panelMainContainer.getElementsByTagName('h4');
		_panelImage = etGt('featureImage');
		//_panelClose = etGt('featureClose');
		//_panelCollapse = etGt('featureCollapse');
		_panelTextElements[_currentDisplayIndex].style.display="block";
		//_panelTitle[_currentDisplayIndex].style.display="block"
		setEvents();
		_panelMainContainer.style.display = "none";
		updatePanelInfo(0);	
		GM.callTracking(false,'GM Mexico | Buick | Home Features | '+_modelFeature + ' | Asistencia y estilo' ,'Home Features',_modelFeature, 'Asistencia y estilo');	
	}
	function setEvents(){
		
		for(var i=0; i<_panelFeaturesBtns.length; i++){
			_panelFeaturesBtns[i].btnPosition=i;
			attachEventListener(_panelFeaturesBtns[i], "click", ETNIA.eventHandler(onFeatureClicked,null,true), false);
		}
		//attachEventListener(_panelClose, "click",function($event){panelVisibilityControl("none")}, false);
		//attachEventListener(_panelCollapse, "click",ETNIA.eventHandler(hideDescription,null,true));
	}
	function onFeatureClicked($event){	
		var targetIndex = $event.currentTarget.btnPosition;
		updatePanelInfo(targetIndex);	
		_trackName = $event.currentTarget.text;
		GM.callTracking(false,'GM Mexico | Buick | Home Features | '+_modelFeature + ' | '+_trackName ,'Home Features',_modelFeature, _trackName);		
	}
	function panelVisibilityControl($display){
		if($display == "none"){resetElements()}
		_panelMainContainer.style.display = $display;
		
	}
	function hideDescription($event){
		var animDestiny;
		if(_descriptionVisible){
			animDestiny = 270;
			_descriptionVisible = false;
			//_panelCollapse.style.backgroundPosition = "0px -14px";
		} else {
			animDestiny = 0;
			_descriptionVisible = true;
			//_panelCollapse.style.backgroundPosition = "0px 0px";
		}
		if(!_descriptionEasing)
			_descriptionEasing = new ETNIA.EtniaEasing([_descriptionsContainer],[[{prop:"top"}]],[[animDestiny]],[[2]],null,33.33,true);
		else 
			_descriptionEasing.updateMotion([_descriptionsContainer],[[{prop:"top"}]],[[animDestiny]],[[2]],null,33.33)
	}
	function updatePanelInfo($elementIndex){
		if(!$elementIndex){
			$elementIndex = 0;
		}
		panelVisibilityControl("block")
		resetElements();
		_panelTextElements[$elementIndex].style.display = "block";
		//_panelTitle[$elementIndex].style.display = "block";
		_panelFeaturesBtns[$elementIndex].className = "formatList";
		
		_panelFeaturesBtns[$elementIndex].style.display = "block";
		
		if(_imagesURL[$elementIndex].indexOf(".flv")!=-1){
			//etGt("videoPlayer").style.display="block"
			hideDescription();
			//swfobject.registerObject("videoPlayerFlash");
			setTimeout(function(){loadVideo(_imagesURL[$elementIndex])}, 100);
			
			
		}else{
			if (_videoPlayerMovie){
				if(_videoPlayerMovie.externalClean){
			_videoPlayerMovie.externalClean();
				}
			}
			
			//setTimeout(function(){etGt("videoPlayer").style.display="none"}, 100);
			
		_panelImage.style.backgroundImage = "url("+_imagesPath+_imagesURL[$elementIndex]+")";	
		}
		
	}
	function videoPlayerReady(){
		_videoPlayerInterval = setInterval;
	}
	
	function loadVideo($url){
		_videoPlayerMovie = swfobject.getObjectById("videoPlayerFlash")
		if(_videoPlayerMovie.externalLoad){
		_videoPlayerMovie.externalLoad($url);
		} else{
			_videoPlayerInterval = setInterval(function(){if(_videoPlayerMovie.externalLoad){clearInterval(_videoPlayerInterval);loadVideo($url)}},500)
		}
	}
	
	
	
	function resetElements(){
		_descriptionsContainer.style.top = "0px";
		//_panelCollapse.style.backgroundPosition = "0px 0px";
		_descriptionVisible = true;
		for(var j=0; j<_panelTextElements.length;j++){
			_panelFeaturesBtns[j].className = "defaultFeature";
			_panelTextElements[j].style.display = "none";
			//_panelTitle[j].style.display = "none";
		}
	}
	FeaturesPanel();
}

BUICKMX.ScrollListCarousel = function($mainContainer){
	var _classScope = this;	
	var _mainContainer = $mainContainer;
	var _topArrow = etGt("featuresTopArrow");
	var _bottomArrow = etGt("featuresBottomArrow");
	var _topHotSpot = etGt("featuresTopHS");
	var _bottomHotSpot = etGt("featuresBottomHS");
	var _listContainer = etGt("featuresButtonsContainer");
	var _listDestiny = 0;
	var _speed = 5;
	var _maskHeight = 186-20;
	var _listInfo;
	var _continuousMotionInterval;
	var _continuousTimeout;
	var _direction;
	var _scrollDelay = 400;
	
	function ScrollListCarousel(){
		attachEventListener(_topArrow,"mousedown",ETNIA.eventHandler(startMotion,null,true));
		attachEventListener(_bottomArrow,"mousedown",ETNIA.eventHandler(startMotion,null,true));
		attachEventListener(_topArrow,"mouseup",ETNIA.eventHandler(stopMotion,null,true));
		attachEventListener(_bottomArrow,"mouseup",ETNIA.eventHandler(stopMotion,null,true));
		attachEventListener(_topArrow,"mouseout",ETNIA.eventHandler(stopMotion,null,true));
		attachEventListener(_bottomArrow,"mouseout",ETNIA.eventHandler(stopMotion,null,true));
		attachEventListener(_topHotSpot,"mouseover",ETNIA.eventHandler(startMotion,null,true));
		attachEventListener(_topHotSpot,"mouseout",ETNIA.eventHandler(stopMotion,null,true));
		attachEventListener(_bottomHotSpot,"mouseover",ETNIA.eventHandler(startMotion,null,true));
		attachEventListener(_bottomHotSpot,"mouseout",ETNIA.eventHandler(stopMotion,null,true));
		_listInfo = Position.get(_listContainer);
	}
	function startMotion($event){
		var tgt = $event.currentTarget;
		if(tgt == _topArrow || tgt == _topHotSpot){
			_direction = "bottom";
		} else {
			_direction = "top";
		}
		moveElements(_direction);
		if(tgt == _topHotSpot || tgt == _bottomHotSpot){
			_continuousTimeout = setTimeout(startContinousMotion,10);
		} else {
			_continuousTimeout = setTimeout(startContinousMotion,_scrollDelay);	
		}
		
	}
	function stopMotion($direction){
		if(_continuousTimeout)
			clearTimeout(_continuousTimeout);
		if(_continuousMotionInterval)
			clearInterval(_continuousMotionInterval);
	}
	function startContinousMotion(){
		_continuousMotionInterval = setInterval(moveElements,33.33);
	}
	function moveElements(){
		if(_direction == "top"){
			arrowEnabled(_topArrow,true);
			_listDestiny-=_speed;
			if(_listDestiny<-_listInfo.height+_maskHeight){
				_listDestiny = -_listInfo.height+_maskHeight;
				arrowEnabled(_bottomArrow,false);
			}
		} else {
			arrowEnabled(_bottomArrow,true);
			_listDestiny+=_speed;
			if(_listDestiny>0){
				_listDestiny = 0;
				arrowEnabled(_topArrow,false);
			}
		}
		_listContainer.style.top = _listDestiny+"px";
	}
	function arrowEnabled($arrow,$enabled){
		if(!$enabled){
			$arrow.style.opacity = ".4";
		} else {
			$arrow.style.opacity = "1";
		}
	}
	ScrollListCarousel();
}

BUICKMX.RollOverMenu = function($menuParent,$menuInfo,$styles){
	var _classScope = this;
	var _menuParent = $menuParent;
	var _menuInfo = $menuInfo;
	var _colorBackground;
	var _menuContainer;
	var _listContainer;
	var _hideTimeOut;
	var _showTimeOut;
	var _styles = $styles;
	this.hideDelay = 500;
	this.showDelay = 200;
	
	function RollOverMenu(){
		_menuContainer = ETNIA.createDOMNode("div",{id:_styles.menuContainer});
		_listContainer = ETNIA.createDOMNode("ul",{id:_styles.mainList});
		_colorBackground = ETNIA.createDOMNode("div",{className:_styles.background});
		for(var i=0; i<_menuInfo.length; i++){
			_listContainer.appendChild(menuOption(_menuInfo[i].id,_menuInfo[i].url,_menuInfo[i].label));	
		}
		_menuContainer.appendChild(_listContainer);
		_menuParent.appendChild(_colorBackground);
		_menuParent.appendChild(_menuContainer);
		
		
		attachEventListener(etGBT(_menuParent,"a")[0],"click",ETNIA.eventHandler(function(){},null,true));
		attachEventListener(_menuParent,"mouseover",ETNIA.eventHandler(showMenu,null,false));
		attachEventListener(_menuParent,"mouseout",ETNIA.eventHandler(hideMenu,null,false));
	}
	function showMenu(){
		if(_hideTimeOut)
			clearInterval(_hideTimeOut);	
		_showTimeOut = setTimeout(function(){_menuContainer.style.display = "block";_colorBackground.style.display = "block"},_classScope.showDelay);
	}
	function hideMenu(){
		if(_showTimeOut)
			clearInterval(_showTimeOut);
		_hideTimeOut = setTimeout(function(){_menuContainer.style.display = "none";_colorBackground.style.display = "none"},_classScope.hideDelay);	
	}
	
	function menuOption($id,$url,$label){
		var menuLi = ETNIA.createDOMNode("li",{});
		var liAnchor = ETNIA.createDOMNode("a",{id:$id});
		var textLabel = document.createTextNode($label);
		liAnchor.appendChild(textLabel);
		liAnchor.href = $url;
		liAnchor.target = "_blank";
		menuLi.appendChild(liAnchor)
		return menuLi;
	}
	RollOverMenu();
}

function hidePrices(){
	document.getElementById('price2010').style.display="none";
	document.getElementById('price2011').style.display="none";
	document.getElementById('tab2010').className = "tab"
	document.getElementById('tab2011').className = "tab"
}
function changePrices($id, $tabId){
	hidePrices();
	document.getElementById($id).style.display="block";
	document.getElementById($tabId).className = "active"
}

BUICKMX.closeAnimation = function(){
	document.getElementById("mainMovieContainer").style.display="none";
	//alert("si entre")
}
//-------------------------------------------------------
//-------------------------------------------------------
/*BUICK Clases de colores*/


BUICKMX.ColorSection = function(){
	var _thumbnails = jQuery('#color360Thumbnails li');
	var _nameField = jQuery('#color360Title');
	var _clouds = jQuery('#cloudsOverviewBackground')
	var _colorContainer = jQuery('#colors360');
	var _imgBackLoader = jQuery(document.createElement('img'));
	var _nextFrame = jQuery('#arrowsDiv .colorRightArrow')
	var _prevFrame = jQuery('#arrowsDiv .colorLeftArrow')
	var _framesToLoad = 13;
	var _framesLoaded = 0;
	var _currentFrame = 0;
	var _colorFile;
	var _colorPreloader= jQuery('#preloader');
	var _model;
	_colorPreloader.css('display','none');
	function ColorSection(){
		setThumbsEvents();
		setImgLoaderEvents();
		setArrowsEvents();
		_thumbnails.eq(0).click();
	}
	function setImgLoaderEvents(){
		
		_imgBackLoader.load(function (){
			 _colorContainer.append(create360Elements('../../images/colores/'+_model+'/'+_colorFile+'/'+_colorFile+'_'+(_framesLoaded+1)+'.jpg').css("display","none"));
			_framesLoaded++;
			
			if(_framesLoaded<_framesToLoad){
				_imgBackLoader.attr('src','../../images/colores/'+_model+'/'+_colorFile+'/'+_colorFile+'_'+(_framesLoaded+1)+'.jpg');
			} else{
				_colorContainer.find('li:eq(0)').css("display","none");			
				colorReady();
			}			
		});		
	}
	
	function setArrowsEvents(){
		_prevFrame.click(function($event){
			var colorFrames = _colorContainer.find('li');
			colorFrames.css('display','none');
			_currentFrame++;
			if(_currentFrame==colorFrames.length)_currentFrame=0;
			colorFrames.eq(_currentFrame).css("display","block");
		});
		_nextFrame.click(function($event){
			var colorFrames = _colorContainer.find('li');
		 	colorFrames.css('display','none');
		 	_currentFrame--;
			if(_currentFrame<0)_currentFrame=colorFrames.length-1;
			colorFrames.eq(_currentFrame).css("display","block");
		});	
	}
	function setThumbsEvents(){
		for(var i=0; i<_thumbnails.length; i++){
			var cThumb = _thumbnails.eq(i);
			cThumb.click(updateColor);
		}	
	}
	function updateColor($event){
		_framesLoaded = 0;
		var tgt=jQuery(this);
		_model=tgt.attr("model")
		_colorFile=tgt.attr("colorfile")
		_nameField.text(tgt.attr("colorname"));
				_colorPreloader.css('display','block');
		loadColor()
	}
	function loadColor(){
		_colorContainer.find('li').remove();
		_imgBackLoader.attr('src','../../images/colores/'+_model+'/'+_colorFile+'/'+_colorFile+'_'+(_framesLoaded+1)+'.jpg');
	}
	
	function colorReady(){
		var colorFrames = _colorContainer.find('li');
		_currentFrame = 0;
		colorFrames.eq(0).css("display","block");

	}
	
	function create360Elements($url){
		var colorLi = jQuery(document.createElement('li'));
		var colorImg = jQuery(document.createElement('img'));
		colorImg.attr('src', $url);
		colorLi.append(colorImg);
		return colorLi;
	}
	ColorSection();
	
}

//----------------------------------------------------
//GM Clases y helpers generales
var GM = GM || {};
GM.callTracking = function($auto,$pageName,$section,$subsection,$subsectionPath,$linkName,$noDelay){
	if(!$auto){
		s.pageName=$pageName;
		s.prop1=$section;
		s.prop2=$subsection;
		s.prop3=$subsectionPath;
		//s.campaign=s.getQueryParam('cmp');
		s.tl($noDelay,'o',$linkName);	
	}else{
		var pN = document.title;
		s.pageName=pN;
		s.prop6="MX";
		s.prop7="ES";
		/* E-commerce Variables */ 
        s.events="" 
      	//s.campaign=s.getQueryParam('cmp');
        s.eVar3="" // Internal Search Terms 
        s.eVar4="" // Application Name 
		s.tl(false,'o',pN);
	}
}


//---------------------------------------------------
// JQETNIA - Clases con dependecia de jQuery
var JQETNIA = JQETNIA || {};
JQETNIA.RollOverMenu = function($menuParent,$menuElements,$options){
	var _OS = this;
	var _JS = jQuery(_OS);
	var _menuElements = $menuElements;
	var _menuParent = $menuParent;
	var _showTimeout;
	var _hideTimeout;
	var _settings = {
		showTimeout:150,
		hideTimeout:250,
		opsContCssClass:'etniaRollOverMenu'
	}
	this.menuParent = _menuParent;
	this.menuElements = _menuElements;
	jQuery.extend(_settings,$options);
	function showMenu($event){
		clearTimeouts();
		_showTimeout = setTimeout(appendOps,_settings.showTimeout);
	}
	function hideMenu($event){
		clearTimeouts();
		_hideTimeout = setTimeout(removeOps,_settings.hideTimeout);
	}
	function appendOps(){
		if (!jQuery.contains(_menuParent.get(0), _menuElements.get(0))) {
			_menuParent.append(_menuElements);
			_JS.trigger('showMenu');
			var menuLiOps = _menuElements.find('li');
			menuLiOps.each(function(){
				var jqTgt = jQuery(this);
				jqTgt.mouseover(function(){
					_JS.trigger('optionover',[jqTgt]);
				})
				jqTgt.mouseout(function(){
					_JS.trigger('optionout',[jqTgt]);
				})
			})
		}
	}
	function removeOps(){
		_menuElements.remove();
		_JS.trigger('hideMenu');
	}
	function clearTimeouts(){
		if(_showTimeout){
			clearTimeout(_showTimeout);
		}
		if(_hideTimeout){
			clearTimeout(_hideTimeout);
		}
	}
	this.init = function(){
		_menuElements.addClass(_settings.opsContCssClass);
		_menuParent.mouseover(showMenu);
		_menuParent.mouseout(hideMenu);
	};
}
JQETNIA.XMLRolloverMenu = function($xmlURL,$options){
	var _OS = this;
	var _JS = jQuery(_OS);
	var _menuData;
	var _menuElemsInfo;
	var _settings = {
		xmlOpTag:'opcion0',
		opURLTag:'url',
		opLabelTag:'etiqueta',
		parentContainerTag:'parentContainerId',
		linksPath:''	
	}
	jQuery.extend(_settings,$options);
	this.rollOverMenu;
	this.mnParentCont;
	this.menuDomList;
	function xmlReady($data){
		_menuData = jQuery($data);
		_menuElemsInfo = _menuData.find(_settings.xmlOpTag);
		createMenuElements();
	}
	function createMenuElements(){
		_OS.menuDomList = jQuery(document.createElement('ul'));
		for(var i=0; i<_menuElemsInfo.length; i++){
			var cInfo=_menuElemsInfo.eq(i);
			var opAnchor = jQuery(document.createElement('a'));
		
			
			var lTarget = cInfo.attr('target') || '_self';
			var lPath = lTarget =='_blank'?'':_settings.linksPath;
			opAnchor.attr('href',lPath+cInfo.find(_settings.opURLTag+':eq(0)').text());
			opAnchor.attr('target',lTarget)
			opAnchor.text(cInfo.find(_settings.opLabelTag+':eq(0)').text());
			var opLi = jQuery(document.createElement('li'));
			opLi.get(0).opInfo = cInfo;
			opLi.get(0).opPos = i;
			var extraCSS = cInfo.attr('cssclass');
			if(extraCSS){
				opLi.addClass(cInfo.attr('cssclass'));
			}
			opLi.append(opAnchor);
			_OS.menuDomList.append(opLi);
		}
		_OS.mnParentCont = jQuery('#'+_menuData.find(_settings.parentContainerTag).text());
		_OS.initRollOverMenu();
	}
	this.initRollOverMenu = function(){
		jQuery.rollOverMenu = new JQETNIA.RollOverMenu(_OS.mnParentCont,_OS.menuDomList);
	}
	this.init = function(){
		jQuery.get($xmlURL,xmlReady);
	}
}

//--------------------------------------------------
// JQBUICKMX - Clases sitio GMC con dependecia de jQuery
var JQBUICKMX = JQBUICKMX || {};
JQBUICKMX.RollOverMenu = function($menuParent, $menuElements, $options){
	var _OS = this;
	var _darkBackground;
	function RollOverMenu(){
		JQETNIA.RollOverMenu.call(_OS,$menuParent, $menuElements, $options);
		_OS.init();
		_darkBackground = jQuery(ETNIA.createDOMNode('div',{id:'menuDarkBackground'}));
		jQuery(_OS).bind('showMenu',function(){
	
			_OS.menuParent.find('a:eq(0)').addClass('selected');
			_darkBackground.insertBefore('#content');
			if(ETNIA.ie6){_darkBackground.css({'position':'absolute','top':'0px','left':'0px','width':jQuery(document.body).width()+'px','height':jQuery(document.body).height()+'px'});}
		});
		jQuery(_OS).bind('hideMenu',function(){_darkBackground.remove(); _OS.menuParent.find('a:eq(0)').removeClass('selected');});
	}
	RollOverMenu();
}
JQBUICKMX.XMLRolloverMenu = function($xmlURL, $options){
	var _OS = this;
	function XMLRollOverMenu(){
		JQETNIA.XMLRolloverMenu.call(_OS,$xmlURL,$options);
		_OS.initRollOverMenu = function(){
			_OS.rollOverMenu =  new JQBUICKMX.RollOverMenu(this.mnParentCont,this.menuDomList);
			jQuery(_OS).trigger('rolloverMenuReady');
			
		}
	}
	XMLRollOverMenu();
}
JQBUICKMX.VehiclesMenu = function($xmlURL,$imgPath, $options){
	var _OS = this;
	var _vehiclePanel;
	
	function VehiclesMenu(){
		JQBUICKMX.XMLRolloverMenu.call(_OS,$xmlURL,$options);
		_vehiclePanel = new JQBUICKMX.VehiclesPanel($imgPath,$options.linksPath);
		jQuery(_OS).bind('rolloverMenuReady',setEvents);
	}
	function setEvents(){
		jQuery(_OS.rollOverMenu).bind('optionover',showPanel);
		jQuery(_OS.rollOverMenu).bind('hideMenu',function(){_vehiclePanel.container.remove();resetOps();});
	}
	function showPanel($event,$option){
		var tgt = $option.get(0);
		var cInfo =tgt.opInfo.find('panelInfo');
		var cPos = tgt.opPos;
		if(cInfo.length>0){
			if (!jQuery.contains($option.get(0), _vehiclePanel.container.get(0))) {
				resetOps();
				$option.find('a:eq(0)').addClass('selected');
				$option.append(_vehiclePanel.container);
				_vehiclePanel.container.css('top',-30*cPos+'px');
				_vehiclePanel.updateInfo(cInfo);
			}
		} else {
			resetOps();
			_vehiclePanel.container.remove();
		}
	}
	function resetOps(){
		_OS.rollOverMenu.menuElements.find('a').removeClass('selected');
	}
	VehiclesMenu();
}
JQBUICKMX.VehiclesPanel = function($imgPath,$linksPath){
	var _OS = this;
	var _mainContainer;
	var _vehicleImg;
	var _infoCont;
	var _priceContainer;
	var _linksContainer;
	var _mainLink;
	var _panelWrapper;
	var _priceInnerContainer;
	var _priceField;
	var _pricesIframe;
	var _vehicleName;
	
	this.container;
	function VehiclesPanel(){
		_mainContainer = jQuery(ETNIA.createDOMNode('div',{id:"vehicleMenuPanel"}));
		_vehicleImg = jQuery(ETNIA.createDOMNode('img',{id:"mVehiclePanelImg"}));
		_mainContainer.append(_vehicleImg);
		_panelWrapper = jQuery(ETNIA.createDOMNode('div',{id:"mVehiclePanelWrapper"}));
		_infoCont = jQuery(ETNIA.createDOMNode('div',{id:'mVehiclePanelInfoCont'}));
		_vehicleName= jQuery(ETNIA.createDOMNode('span'));
		_vehicleName.addClass('mVehiclePanelName')
		_panelWrapper.append(_vehicleName);
		_panelWrapper.append(_infoCont);
		_mainContainer.append(_panelWrapper);
		initPriceContainers();
		initLinksContainers();
		_vehicleImg.attr('src','');
		_vehicleName.text('');
		_OS.container = _mainContainer;
	}
	function initPriceContainers(){
		_priceContainer = jQuery(ETNIA.createDOMNode('div',{id:'mVPPriceContainer'}));
		_priceInnerContainer = jQuery(ETNIA.createDOMNode('p'));
		_priceInnerContainer.append('desde');
		var cash = jQuery(ETNIA.createDOMNode('span'));
		cash.addClass('cashSymbol');
		cash.text('$');
		_priceInnerContainer.append(cash);
		_priceField = jQuery(ETNIA.createDOMNode('span'));
		_priceField.addClass('price');
		_priceInnerContainer.append(_priceField);
		_priceContainer.append(_priceInnerContainer);
		_infoCont.append(_priceContainer);
	}
	function initPricesIframe(){
		_pricesIframe = jQuery(ETNIA.createDOMNode('iframe',{id:"menuPricesIframe"}));
		_pricesIframe.attr('frameborder','0');
		_pricesIframe.attr('scrolling','no');
		_pricesIframe.attr('allowtransparency','allowtransparency');
		_infoCont.append(_pricesIframe);
		
		_pricesIframe = ETNIA.createDOMNode('iframe',{id:"menuPricesIframe"});
		_pricesIframe.frameBorder = '0';
		_pricesIframe.scrolling = 'no';
		_pricesIframe.allowTransparency = 'true';
		_infoCont.get(0).appendChild(_pricesIframe);
	}
	
	function initLinksContainers(){
		_linksContainer = jQuery(ETNIA.createDOMNode('ul',{id:'mVPLinksContainer'}));
		_infoCont.append(_linksContainer);
		for(var i=0; i<3;i++){
			_linksContainer.append((function(){
				var tempLi=jQuery(ETNIA.createDOMNode('li'));
				var tempA=jQuery(ETNIA.createDOMNode('a'));
				if(i==0){
					tempLi.addClass('jsVPMainLnk');
					tempA.addClass('jsPanelsMainLink');
				}
				tempLi.append(tempA);
				return tempLi;
			})());
		}
	}
	this.updateInfo = function($info){
	
		if ($info.find('priceurl').text()) {
			_priceInnerContainer.text('');
			if(!_pricesIframe){
				initPricesIframe();
			}
			_pricesIframe.src = $info.find('priceurl').text();
		}
		else {
			_priceField.text($info.find('price').text());
		}
		
		
		var linksAnchors = _linksContainer.find('a');
		linksInfo = $info.find("liga");
		for(var i=0; i<linksAnchors.length; i++){
			var cAnchor= linksAnchors.eq(i);
			var cInfo = linksInfo.eq(i);
			var tgt = cInfo.find('target').text()||'_self';
			var lPath = tgt=='_blank'?'':$linksPath;
			
			cAnchor.text(cInfo.find('etiqueta').text());
			cAnchor.attr('target',tgt)
			cAnchor.attr('href',lPath+cInfo.find('url').text());
		}
		_vehicleImg.css('display','none');
		_vehicleImg.load(function(){
		_vehicleImg.css('display','block');
		})
		_vehicleImg.attr('src',$imgPath+$info.find("imagen").text());
		
		_vehicleName.text($info.find('modelo').text());
	}
	VehiclesPanel();
}




BUICKMX.RollOverMenu = function($menuParent,$menuInfo,$styles){
	var _classScope = this;
	var _menuParent = $menuParent;
	var _menuInfo = $menuInfo;
	var _colorBackground;
	var _menuContainer;
	var _listContainer;
	var _hideTimeOut;
	var _showTimeOut;
	var _styles = $styles;
	this.hideDelay = 500;
	this.showDelay = 200;

	function RollOverMenu(){
		
		_menuContainer = ETNIA.createDOMNode("div",{id:_styles.menuContainer});
		_listContainer = ETNIA.createDOMNode("ul",{id:_styles.mainList});
		_colorBackground = ETNIA.createDOMNode("div",{className:_styles.background});
		for(var i=0; i<_menuInfo.length; i++){
			_listContainer.appendChild(menuOption(_menuInfo[i].id,_menuInfo[i].url,_menuInfo[i].label));
				
		}
		_menuContainer.appendChild(_listContainer);
		_menuParent.appendChild(_colorBackground);
		_menuParent.appendChild(_menuContainer);
		
		attachEventListener(etGBT(_menuParent,"a")[0],"click",ETNIA.eventHandler(function(){},null,true));
		attachEventListener(_menuParent,"mouseover",ETNIA.eventHandler(showMenu,null,false));
		attachEventListener(_menuParent,"mouseout",ETNIA.eventHandler(hideMenu,null,false));
	}
	function showMenu(){

		if(_hideTimeOut)
			clearInterval(_hideTimeOut);	
		_showTimeOut = setTimeout(function(){_menuContainer.style.display = "block";_colorBackground.style.display = "block"},_classScope.showDelay);

	}
	function hideMenu(){
		if(_showTimeOut)
			clearInterval(_showTimeOut);
		_hideTimeOut = setTimeout(function(){_menuContainer.style.display = "none";_colorBackground.style.display = "none"},_classScope.hideDelay);	
	}
	
	function menuOption($id,$url,$label){
		var menuLi = ETNIA.createDOMNode("li",{});
		var liAnchor = ETNIA.createDOMNode("a",{id:$id});
		var textLabel = document.createTextNode($label);
		liAnchor.appendChild(textLabel);
		liAnchor.href = $url;
		liAnchor.target = "_blank";
		menuLi.appendChild(liAnchor);
		return menuLi;
	}
	RollOverMenu();
}

BUICKMX.TopMenu = function($xmlPath,$imgPath){
	var globalBase;
	var vehiclesMenu;
	var pricesMenu;
	var experienceMenu;
	var ownersMenu;
	
	function TopMenu(){
		initMenuOptions();
	}
	function initMenuOptions(){
		GM.callTracking(true);

		var loadedInIframe = window.parent!=window.self;
		var ownersXMLUrl= 'propietarios.xml';
		var experienceXMLUrl = 'experiencia.xml';
		var vehiclesXMLUrl = 'vehiculos.xml';
		if(loadedInIframe){
			BUICKMX.HideInterface();
			experienceXMLUrl = 'experienciaCobalt.xml';
			vehiclesXMLUrl = 'vehiculosCobalt.xml'
		}
		var lnkPath = '';
		var cURL = document.location.toString();
		if(cURL.indexOf("stg.interalia.net") != -1){
			lnkPath= "http://stg.interalia.net/gm/buickBrandsite/";
		} /*else if(cURL.indexOf("origin.fusion.pprod.e-gm.net") != -1){
			lnkPath = "http://origin.fusion.pprod.e-gm.net/content_data/LAAM/MX/es/GMMGM/showroom/GMC/";
		} */else{
			lnkPath = "http://www.buick.com.mx/";
		}
		vehiclesMenu = new JQBUICKMX.VehiclesMenu($xmlPath+vehiclesXMLUrl,$imgPath,{linksPath:lnkPath});
		vehiclesMenu.init();
		ownersMenu = new JQBUICKMX.XMLRolloverMenu($xmlPath+ownersXMLUrl,{linksPath:lnkPath});
		ownersMenu.init();
		experienceMenu = new JQBUICKMX.XMLRolloverMenu($xmlPath+experienceXMLUrl,{linksPath:lnkPath});
		experienceMenu.init();
		priceMenu = new JQBUICKMX.XMLRolloverMenu($xmlPath+'precios.xml',{linksPath:lnkPath});
		priceMenu.init();
	}
	TopMenu();
}

BUICKMX.generalInit = function($secID,$xmlPath,$imgPath){
	var loadedInIframe = window.parent!=window.self;
	
	BUICKMX.loadedInIframe = function(){
		return loadedInIframe;
	}
	
	if(loadedInIframe){	
		BUICKMX.HideInterface();
	}
	if(!jQuery("body").css('maxHeight')){
			ETNIA.ie6 = true;
	}
	if($secID == 3){		
			var colorSection = new BUICKMX.ColorSection();

	}
	if($secID == 4){	
	var homeSlideShow = new JQETNIA.SlideShow(jQuery('#homeMainSlideShowWrapper'),{buttonInTitleContainer:true,wTitles:true,label:'Ver modelo'})
		homeSlideShow.init();
	}
	var gmSitesMenu = new BUICKMX.RollOverMenu(etGt("gmSites"),[{id:"siteMenuOp",url:"http://www.chevrolet.com.mx/content_data/LAAM/MX/es/GMMGM/showroom/chevrolet/index.html",label:"Chevrolet"},{id:"siteMenuOp",url:"http://www.buick.com.mx/",label:"Buick"},{id:"siteMenuOp",url:"http://www.pontiac.com.mx/content_data/LAAM/MX/es/GMMGM/showroom/pontiac/index.html?referrer=&pdcmp=",label:"Pontiac"},{id:"siteMenuOp",url:"http://www.matiz.com.mx/",label:"Matiz"},{id:"siteMenuOp",url:"http://www.gmc.com.mx/content_data/LAAM/MX/es/GMMGM/showroom/gmc/index.html?referrer=&pdcmp=",label:"GMC"},{id:"siteMenuOp",url:"http://www.hummer.com.mx/content_data/LAAM/MX/es/GMMGM/showroom/hummer/index.html?referrer=&pdcmp=",label:"Hummer"},{id:"siteMenuOp",url:"http://www.gm.com.mx/content_data/LAAM/MX/es/GMMGM/flash/corporate/index.html",label:"GM"},{id:"siteMenuOp",url:"http://www.gmflotillas.com.mx",label:"GM Fleets"},{id:"siteMenuOp",url:"http://gmparts.com.mx",label:"GM Parts"},{id:"siteMenuOp",url:"http://www.acdelco.mx/",label:"AC Delco"},{id:"siteMenuOp",url:"http://ally.com.mx",label:"Ally"},{id:"siteMenuOp",url:"http://www.suauto.com.mx/",label:"Suauto"},{id:"siteMenuOp",url:"http://www.abaseguros.com",label:"ABA Seguros"},{id:"siteMenuOp",url:"http://www.gmleasing.com.mx/",label:"GM Leasing"}],{background:"gmSitesBackground",mainList:"gmSitesList",menuContainer:"gmSitesMenuContainer"});
	
	if(swfobject.getFlashPlayerVersion().major == 0){
		BUICKMX.flashVersion = false;
	}
	var topMenu = new BUICKMX.TopMenu($xmlPath,$imgPath);
	
	
}
	
function showSpecsGroup(specGroup) {
	currentTabId=specGroup;
	var listWrapper = document.getElementById($string);
	var liArr = listWrapper.getElementsByTagName('li');
	var model;
	var titleTxt  = jQuery('.sectionTitle').text();
	if(titleTxt.indexOf('LaCrosse') != -1){
		model = 'LaCrosse';
	} else if(titleTxt.indexOf('Enclave') != -1){
		model = 'Enclave';
	} 
	var liArr = listWrapper.getElementsByTagName('li');
	for (var i = 0; i < liArr.length; i++) {
		liArr[i].className="tab";
		if(i<(liArr.length-1)){
			if(currentTabId=="tabAll"){
				document.getElementById('specGroup' + i).className = "pSpecGroup.active";
				
				if(i == liArr.length-2){
					GM.callTracking(false,"GM Mexico | Buick | "+model+" | Specs | All",model+" | Specs","All",model+" | Specs | All","Todos");
				}
			}else if(liArr[i].id == currentTabId ){
				document.getElementById('specGroup' + i).className = "pSpecGroup.active";
				switch(currentTabId){
					case "tabPowertrain":
						GM.callTracking(false,"GM Mexico | Buick | "+model+" | Specs | Powertrain",model+" | Specs","Motor",model+" | Specs | Motor","Motor");
						break;
					case "tabDimensions":
						GM.callTracking(false,"GM Mexico | Buick | "+model+" | Specs | Dimensiones",model+" | Specs","Dimensiones",model+" | Specs | Dimensiones","Dimensiones");
						break;
					case "tabExterior":
						GM.callTracking(false,"GM Mexico | Buick | "+model+" | Specs | Exterior",model+" | Specs","Exterior",model+" | Specs | Exterior","Diseño exterior");
						break;
					case "tabInterior":
						GM.callTracking(false,"GM Mexico | Buick | "+model+" | Specs | Interior",model+" | Specs","Interior",model+" | Specs | Interior","Diseño interior");
						break;
					case "tabSafety":
						GM.callTracking(false,"GM Mexico | Buick | "+model+" | Specs | Seguridad",model+" | Specs","Seguridad",model+" | Specs | Seguridad","Seguridad");
						break;
					
					case "tabKm":
						GM.callTracking(false,"GM Mexico | Buick | Propietarios | Buick Benefits | Kilómetros","Kilómetros | Buick Benefits","Kilómetros","Propietarios | Buick Benefits | Kilómetros","Kilómetros");
						break;
						
					case "tabBono":
						GM.callTracking(false,"GM Mexico | Buick | Propietarios | Buick Benefits | Bonos","Kilómetros | Buick Benefits","Bonos","Propietarios | Buick Benefits | Bonos","Bonos");
						break;
					case "tabCanje":
						GM.callTracking(false,"GM Mexico | Buick | Propietarios | Buick Benefits | Canje","Canje | Buick Benefits","Canje","Propietarios"+" | Buick Benefits | Canje","Canje");
						break;
					case "tabReward":
						GM.callTracking(false,"GM Mexico | Buick | Propietarios | Buick Benefits | Recompensas","Recompensas | Buick Benefits","Recompensas","Propietarios | Buick Benefits | Recompensas","Recompensas");
						break;
					case "tabCuenta":
						GM.callTracking(false,"GM Mexico | Buick | Propietarios | Buick Benefits | Manejo de cuenta","Manejo de cuenta | Buick Benefits","Manejo de cuenta","Propietarios | Buick Benefits | Manejo de cuenta","Manejo de cuenta");
						break;
					case "tabDealers":
						GM.callTracking(false,"GM Mexico | Buick | Propietarios | Buick Benefits | Distribuidores participantes","Distribuidores participantes | Buick Benefits","Distribuidores participantes","Propietarios | Buick Benefits | Distribuidores participantes","Distribuidores participantes");
						break;
				}
				
			}else{
				document.getElementById('specGroup' + i).className = "pSpecGroup";
			 }
		}
	}
	document.getElementById(specGroup).className="activeTab";
}
function showTrack($id){
	var model;
	var titleTxt  = jQuery('.sectionTitle').text();
	if(titleTxt.indexOf('LACROSSE') != -1){
		model = 'lacrosse';
	} else if(titleTxt.indexOf('ENCLAVE') != -1){
		model = 'enclave';
	} 
	switch($id){
		case "tabCatalog":
						GM.callTracking(false,"GM Mexico | Buick | "+model+" | Specs | Catálogo",model+" | Specs","Catálogo",model+" | Specs | Catálogo","Catálogo");
						window.open('../../pdf/Descargar-catalogo-'+model+'2011.pdf','_blank');

						break;
					case "tabAccesorie":
						GM.callTracking(false,"GM Mexico | Buick | "+model+" | Specs | Accesorios",model+" | Specs","Accesorios",model+" | Specs | Accesorios","Accesorios");
						window.open('../../pdf/Descargar-accesorios-'+model+'2012.pdf','_blank');
						break;
					case "tabSpecs":
						GM.callTracking(false,"GM Mexico | Buick | "+model+" | Specs | Hoja de especificaciones",model+" | Specs","Hoja de especificaciones",model+" | Specs | Hoja de especificaciones","Hoja de especificaciones");
						window.open('../../pdf/Descargar-ficha-tecnica-'+model+'2012.pdf','_blank');
						break;
	}
}
/*---------------------GALERIA CARRUSEL HOME-------------------------------*/

JQETNIA.SlideShow = function($slideMainContainer,$options){
	var _OS=this;
	var _mainContainer = $slideMainContainer;
	var _elements = _mainContainer.find('li');
	var _slideInterval;
	var _cElemIndex = 0;
	var _cStaticElemIndex = 0;
	var _lastElemIndex = -1;
	var _elementInFront;
	var _elementInBack;
	var _totalElements;
	var _origHeight;
	var _origWidth;
	var _animType=['lf'];
	/*'tp','rt','bt',*/
	var _typeIndex=-1;
	var _titleContainer;
	var _slideMainBtn;
	var _titleText;
	var _slideControls;
	var _cElementField;
	var _leftArrow;
	var _rightArrow;
	var _slideStarted = false;
	var _settings = {
		buttonInTitleContainer:false,
		speed:9000,
		wTitles:false,
		wDesc:false,
		label:'',
		jointText:'de'
	}
	jQuery.extend(_settings,$options);
	
	function initTitleContainer(){
		_titleContainer = jQuery(ETNIA.createDOMNode('div',{id:'slideShowTitleContainer'}));
		_titleText = jQuery(ETNIA.createDOMNode('span'));
		_titleContainer.append(_titleText);
		_mainContainer.prepend(_titleContainer);
	}
	function initSlideMainBtn(){
		_slideMainBtn = jQuery(ETNIA.createDOMNode('a'));
		_slideMainBtn.addClass('jsPanelsMainLink');
		_slideMainBtn.html(_settings.label);
		if(_settings.buttonInTitleContainer){
			_titleContainer.append(_slideMainBtn);
		} else {
			_mainContainer.append(_slideMainBtn);
		}
	}
	function initSlidesControls(){
		_slideControls = jQuery(ETNIA.createDOMNode('ul',{id:'slideShowControls'}));
		_mainContainer.append(_slideControls);
		var liIDs = ['sldLeftArrow','centerElem','sldRightArrow'];
		for(var i=0; i<3;i++){
			var tempLi = jQuery(ETNIA.createDOMNode('li',{id:liIDs[i]}));
			if (i != 1) {
				if(i==0){
					_leftArrow = jQuery(ETNIA.createDOMNode('a'));
					_leftArrow.click(function(){userSlideChange('left')});
					tempLi.append(_leftArrow);
				}
				else{ 
					_rightArrow = jQuery(ETNIA.createDOMNode('a'));
					_rightArrow.click(function(){userSlideChange('right')});
					tempLi.append(_rightArrow);
				}
			} else {
				_cElementField = jQuery(ETNIA.createDOMNode('span'));
				updateCElemNum();
				tempLi.append(_cElementField);
				tempLi.append(' ' + _settings.jointText + ' ' + _totalElements);
			}
			_slideControls.append(tempLi);
		}
	}
	function userSlideChange($direction){
		if($direction == 'right'){
			clearInterval(_slideInterval);
			animateToNextSlide();
			clearInterval(rotateSwitch);
		}else{
			clearInterval(_slideInterval);
			animateToNextSlide('left');
			clearInterval(rotateSwitch);
		}
	}
	
	rotateSwitch = function(){		
		play = setInterval(function(){ //Set timer - this will repeat itself every 3 seconds
			
			animateToNextSlide(); //Trigger the paging and slider function
		}, 7000); //Timer speed in milliseconds (3 seconds)
	};
	function updateCElemNum(){
		_cElementField.text(_cStaticElemIndex+1);
	}
	function animateToNextSlide($direction){
		if (_settings.wDesc) {
			_elements.find('p').css({'display':'none','margin-top':'0px'});
		}
		var animProps;
		var currentElem;
		var currentStaticElem;
		_lastElemIndex  = _cElemIndex;
		
		_typeIndex++;
		if(_typeIndex==_animType.length){
			_typeIndex=0;
		}
		if($direction=='left'){
			_cElemIndex = _cStaticElemIndex;
			if(_cElemIndex <0){
				_cElemIndex = _totalElements-1;
			}
			_cStaticElemIndex = _cElemIndex-1;
			if(_cStaticElemIndex <0){
				_cStaticElemIndex = _totalElements-1;
			}
			_cElementField.text(_cStaticElemIndex+1);
			currentElem = _elements.eq(_cElemIndex);
			currentStaticElem = _elements.eq(_cStaticElemIndex);
			if(!currentStaticElem.get(0)){
				currentStaticElem = _elements.eq(0);
			}
			for(var i =0; i<_elements.length; i++){
				if(i != _cElemIndex && i != _cElemIndex-1){
					var tempElem = _elements.eq(i);
					if (tempElem.css('z-index')>currentStaticElem.css('z-index')&&tempElem.css('z-index')<currentElem.css('z-index')) {
						var fZ=tempElem.css('z-index');
						var bZ=currentStaticElem.css('z-index');
						tempElem.css('z-index',bZ);
						currentStaticElem.css('z-index',fZ);	
					}
				}
			}
			currentStaticElem.stop();
			currentStaticElem.css('height',_origHeight);
			currentStaticElem.css('width',_origWidth);
			
		} else {
			
			
			if (_cElemIndex > _cStaticElemIndex) {
				_cElemIndex = _cStaticElemIndex;
			}
			else {
				if (_slideStarted) {
					_cElemIndex++;
				}
			}
			if(_cElemIndex==_totalElements-1){
				_cElemIndex=-1;
			}
			currentElem = _elements.eq(_cElemIndex);
			
			_cStaticElemIndex = _cElemIndex+1;
			if(_cStaticElemIndex >_totalElements-1){
				_cStaticElemIndex = 0;
			}
			updateCElemNum();
			currentStaticElem = _elements.eq(_cStaticElemIndex);
			if(!currentStaticElem.get(0)){
				currentStaticElem = _elements.eq(0);
			}
			currentStaticElem.stop();
			currentStaticElem.css('height',_origHeight);
			currentStaticElem.css('width',_origWidth);
			
			for(var i =0; i<_elements.length; i++){
				if(i != _cElemIndex && i != _cElemIndex+1){
					var tempElem = _elements.eq(i);
					if (tempElem.css('z-index')>currentStaticElem.css('z-index')&&tempElem.css('z-index')<currentElem.css('z-index')) {
						var fZ=tempElem.css('z-index');
						var bZ=currentStaticElem.css('z-index');
						tempElem.css('z-index',bZ);
						currentStaticElem.css('z-index',fZ);	
					}
				}
			}
			currentElem.stop();
			currentElem.css('height',_origHeight);
			currentElem.css('width',_origWidth);		
		}
		
		function swapElemsDepth($forceSwap){
			if (currentElem.css('z-index') < currentStaticElem.css('z-index') || $forceSwap) {
				var cElemZ = currentElem.css('z-index');
				var sElemZ = currentStaticElem.css('z-index');
				currentElem.css('z-index', sElemZ);
				currentStaticElem.css('z-index', cElemZ);
			}
		}
		swapElemsDepth();
		
		
		
		switch(_animType[_typeIndex]){
			case 'tp':
				animProps = {'height':0};
				break;
			case 'rt':
				swapElemsDepth(true);
				currentElem = currentStaticElem;
				currentElem.css('width','0px');
				animProps = {'width':_origWidth};
				break;
			case 'bt':
				swapElemsDepth(true);
				currentElem = currentStaticElem;
				currentElem.css('height','0px');
				animProps={'height':_origHeight};
				break;
			case 'lf':
				animProps = {'width':0};
				break;
		}
		if (_settings.wDesc) {
			
		}
		if (_settings.wTitles) {
			_titleContainer.hide();
		}
		currentElem.animate(animProps,'slow',transitionComplete);
		_slideStarted = true;
	}
	function updateSlideshowInfo(){
		if (_settings.wDesc) {
			_elements.eq(_cElemIndex).find('p').css('display','block');
		}
		if (_settings.wTitles) {
			_titleContainer.fadeIn('fast');
			updateTitle();
		}
		updateMainBtn();
	}
	function transitionComplete(){
		updateSlideshowInfo();
		if (_settings.wDesc) {
			_elements.find('p').css({'display':'block'});
		}
	}
	function setTitlePosition($pos){
		var posObj;
		if($pos=='left')
			posObj={'margin-left':'0px','left':'0px','width':'auto','position':'absolute','float':'none'};
		else
			posObj={'width':_titleContainer.width()+'px','position':'relative','float':'right'};
		_titleContainer.css(posObj);
	}
	function updateTitle(){
		_titleText.text(_elements.eq(_cStaticElemIndex).attr('slideTitle') || '');
		setTitlePosition(_elements.eq(_cStaticElemIndex).attr('titlePos'));
	}
	function updateMainBtn(){
		if(!_elements.eq(_cStaticElemIndex).attr('url')){
			_slideMainBtn.css('display','none');
		} else {
			_slideMainBtn.css('display','block');	
		}
		_slideMainBtn.attr('href',_elements.eq(_cStaticElemIndex).attr('url'));
		_elements.eq(_cStaticElemIndex).trigger('slideChanged');
	}
	function setOverEvents(){
		_elements.each(function(){
			jQuery(this).mouseover(function(){
				var tgt = jQuery(this);
				if (_settings.wDesc) {
					if(tgt.get(0).descTimeout){
						clearTimeout(tgt.get(0).descTimeout);
					}
					if(tgt.get(0).hideTimeout){
						clearTimeout(tgt.get(0).hideTimeout);
					}
					tgt.get(0).descTimeout = setTimeout(function(){
						descriptionAnimation(tgt.find('p:eq(0)'),'over');
					},100);
				}
				clearInterval(_slideInterval);
			})
			jQuery(this).mouseout(function(){
				var tgt = jQuery(this);
				if (_settings.wDesc) {
					if(tgt.get(0).descTimeout){
						clearTimeout(tgt.get(0).descTimeout);
					}
					if(tgt.get(0).hideTimeout){
						clearTimeout(tgt.get(0).hideTimeout);
					}
					tgt.get(0).hideTimeout = setTimeout(function(){
						descriptionAnimation(tgt.find('p:eq(0)'),'out');
					},100);
				}
				/*_slideInterval = setInterval(animateToNextSlide,_settings.speed);*/
			})
		})
	}
	function descriptionAnimation($descCont,$type){
		var destiny;
		if ($type=='over') {
			if (!$descCont.get(0).active) {
				$descCont.get(0).active = true;
				destiny = -$descCont.outerHeight();
				$descCont.stop(true);
				$descCont.animate({'margin-top': destiny},300);
			}
		} else {
			destiny = 0;
			$descCont.get(0).active = false;
			$descCont.animate({'margin-top': destiny},300, function(){$descCont.get(0).active = false;});
		}
		
	}
	function initDepths(){
		for(var i=0; i<_totalElements; i++){
			_elements.eq(i).css('z-index',(_totalElements-1)-i)
		}
	}
	this.init = function(){
		_totalElements = _elements.length;
		initTitleContainer();
		initSlideMainBtn();
		initSlidesControls();
		initDepths();
		_elementInFront = _elements.eq(0);
		if (_settings.wTitles) {
			updateTitle();
		}
		if (_settings.wDesc) {
			_elementInFront.find('p').css('display','block');
		}
		updateMainBtn();
		setOverEvents();
		_origHeight = _elementInFront.height();
		_origWidth = _elementInFront.width();
		rotateSwitch();
		//_slideInterval = setInterval(animateToNextSlide,_settings.speed);
	}
	
	this.slideControls = function(){
		return _slideControls;	
	}
}


