/* 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"
		}
	]

}

function redirectMobile($siteURL){
    BrowserDetect.init();
    if (getBrowserWidth() < 500 || BrowserDetect.OS == 'iPhone/iPod'|| BrowserDetect.OS == 'an unknown OS'){
        window.location = $siteURL;	
    }  
}
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 h = etGt('header');
	var mc = etGt('content_ModelInfo');
	var mc2 = etGt('content_ModelInfo2');
	var f = etGt('footer');
	
	if(f){
		var liElems = etGBT(f,'li');
		liElems[2].style.display = 'none';
		liElems[4].style.display = 'none';
		liElems[5].style.display = 'none';
	}
	
	if(h){
		var cp = etGt('complete');
		var clo = etGt('cloudsOverviewBackground');
		var cov = etGt('completeOverview');
		if(cp){
			cp.style.marginTop = '-57px';
			try{etGt('logo').style.visibility = 'hidden';}catch(e){};
			try{etGt('pruebaDeManejo').style.display = 'none';}catch(e){};
			try{etGt("priceBottomBtns").style.display = 'none';}catch(e){};
		}if(clo)
			clo.style.top= '-95px';
		if(cov){
			cov.style.top= '-57px';
			etGt('logo').style.visibility = 'hidden';
			etGt('pruebaDeManejo').style.display = 'none';
		}
	}
	if(mc){
		mc.style.display = 'none';	
	}
	if(mc2){
		mc2.style.display = 'none';	
	}
}

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.VehiclesMenu = function($infoContainer,$menuInfo,$imagesPath){
	var _classScope = this;
	var _hideTimeOut;
	var _showTimeOut;
	var _panelHideTimeOut;
	var _panelShowTimeOut;
	var _topPart;
	var _optionsContainer;
	var _infoContainer = $infoContainer;
	var _menuOptions;
	var _panelHotSpot;
	var _currenOptionIndex;
	var _panelTitle = etGt("VMInfoPanelCarTitle");
	var _panelImage = etGt("vMInfoPanelCar");
	var _panelPrice = etGt("VMInfoPanelCarPrice");
	var _panelOverviewButton = etGt("VMModelOverviewBtn");
	var _panelOverviewButton2 = etGt("VMModelOverviewBtn2");
	var _panelRequestButton = etGt("VMRequestQuoteBtn");
	var _imagesPath = $imagesPath
	this.hideDelay = 300;
	this.showDelay = 200;
	
	function VehiclesMenu(){
		var loadedInIframe = window.parent!=window.self;
		if(loadedInIframe){
			BUICKMX.HideInterface();
		}
		
		var vehiclesMenu = etGt("vehicleHandler");
		_panelHotSpot = ETNIA.createDOMNode("div",{id:"VMHotspotPanel"});
		_topPart = etGt("subMenuTopPart");
		_infoContainer.style.visibility = "hidden";
		_optionsContainer = etGt("subMenuWrapper");
		_optionsContainer.style.visibility = "hidden";
		_menuOptions = etGBT(_optionsContainer,"li");
		attachEventListener(vehiclesMenu,"mouseover",ETNIA.eventHandler(showMenu,null,true));
		attachEventListener(vehiclesMenu,"mouseout",ETNIA.eventHandler(hideMenu,null,true));
		attachEventListener(_infoContainer,"mouseover",ETNIA.eventHandler(showPanel,null,true));
		for(var i = 0; i<_menuOptions.length; i++){
			_menuOptions[i].setAttribute("posInMenu",i);
			_menuOptions[i].setAttribute("model",$menuInfo[i].modelName);
			_menuOptions[i].setAttribute("modelImage",$menuInfo[i].img);
			_menuOptions[i].setAttribute("price",$menuInfo[i].price);
			_menuOptions[i].setAttribute("overviewLabel",$menuInfo[i].overviewLabel);
			attachEventListener(_menuOptions[i],"mouseover",ETNIA.eventHandler(showPanel,null,true));
			attachEventListener(_menuOptions[i],"mouseout",ETNIA.eventHandler(hidePanel,null,true));	
		} 
	}
	
	function showPanel($event){
		if(_panelHideTimeOut)
			clearTimeout(_panelHideTimeOut);
		var tgt = $event.currentTarget;
		_panelShowTimeOut = setTimeout(function(){optionOver(tgt);},250);
		if(tgt == _infoContainer){
			etGBT(_menuOptions[_currenOptionIndex],"a")[0].className = "selected";	
		}
	}
	function optionOver(tgt){
		_infoContainer.style.visibility = "visible";
		if(tgt != _infoContainer){
			resetLastOption();
			_currenOptionIndex = tgt.getAttribute("posInMenu");
			_panelTitle.innerHTML = tgt.getAttribute("model");
			_panelPrice.innerHTML = tgt.getAttribute("price");
			_panelImage.src = _imagesPath+tgt.getAttribute("modelImage");
			//_panelOverviewButton.innerHTML = tgt.getAttribute("overviewLabel");
			if(tgt.getAttribute("posInMenu") == 1){
				_panelRequestButton.style.display = "none"
				_panelOverviewButton.style.display = "none";
				_panelOverviewButton2.style.visibility = "visible";
			} else {
				_panelOverviewButton.style.display = "block";
				_panelRequestButton.style.display = "block";
				_panelOverviewButton2.style.visibility = "hidden";
			}
			Cufon.refresh("h2");
		} 
		
	}
	
	function hidePanel($event){
		if(_panelShowTimeOut)
			clearTimeout(_panelShowTimeOut);
		_panelHideTimeOut = setTimeout(function(){_infoContainer.style.visibility = "hidden";},200);
	}
	
	function showMenu($event){
		var eTarget = $event.currentTarget;
		clearTimeout(_hideTimeOut);
		_showTimeOut = setTimeout(showDisplay,_classScope.showDelay);
		function showDisplay(){
			_topPart.style.visibility = "visible";
			_optionsContainer.style.visibility = "visible";			
		}
	}
	function hideMenu($event){
		var eTarget = $event.currentTarget;
		clearTimeout(_showTimeOut);
		_hideTimeOut = setTimeout(hideDisplay,_classScope.hideDelay);
		function hideDisplay(){
			_topPart.style.visibility = "hidden";
			_optionsContainer.style.visibility = "hidden";
			_infoContainer.style.visibility = "hidden";
			_panelOverviewButton2.style.visibility = "hidden";
			resetLastOption();
		}
	}
	
	function resetLastOption(){
		for(var i = 0; i<_menuOptions.length; i++){
			etGBT(_menuOptions[i],"a")[0].className = "";
			Cufon.replace(etGBT(_menuOptions[i],"a")[0], {
				hover: true
			});	
		}
		/*if(_currenOptionIndex){
			etGBT(_menuOptions[_currenOptionIndex],"a")[0].className = "";
			Cufon.replace(_menuOptions[_currenOptionIndex], {
				hover: true
			});
		}*/
	}
	VehiclesMenu();
}


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;
	
	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";
	}
	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);	
	}
	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";
		Cufon.replace(document.getElementById("featuresButtonsContainer"), {
			hover: true
		});
		_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.FlashFormsManager = function($flashContainer,$flashObj,$dispatchersInfo,$swfPath){
	var _classScope = this;
	var _dipatchersInfo = $dispatchersInfo;
	var _buttons;
	var _flashContainer = $flashContainer;
	var _flashObj;
	var _flashObjHMargin =20;
	var _swfPath = $swfPath;
	var _deepLinkInterval;
	
	function FlashFormsManager(){
		_buttons = new Array();
		initButtons();
		openDeepLink();
	}
	function initButtons() {
		for(var i = 0; i<_dipatchersInfo.length; i++){
			var button = etGt(_dipatchersInfo[i].btnId);
			button.setAttribute("formURL",$dispatchersInfo[i].formURL);
			button.setAttribute("formWidth",$dispatchersInfo[i].width);
			button.setAttribute("formHeight",$dispatchersInfo[i].height);
			button.setAttribute("hPos",$dispatchersInfo[i].hPos);
			button.setAttribute("vPos",$dispatchersInfo[i].vPos);
			attachEventListener(button,"click",ETNIA.eventHandler(showForm,null,true),false);
			_buttons.push(button);
		}	
	}
	function showForm($event){
		
		var tgt = $event.currentTarget;
		var formH = tgt.getAttribute("formHeight");
		var formW = tgt.getAttribute("formWidth");
		var transformInfo = Position.get(tgt);
		_flashContainer.style.display = "block";
		_flashObj = swfobject.getObjectById( $flashObj);
		_flashObj.width = formW;
		_flashObj.height = formH;
		_flashContainer.style.width =formW + "px";
		_flashContainer.style.height =formH + "px";
		
		if(tgt.getAttribute("vPos") == "top"){
			var topDestiny = transformInfo.top - (Number(formH)+15);
			_flashContainer.style.top = topDestiny + "px";
		} else {
			var topDestiny = transformInfo.top + Number(transformInfo.height) +8;
			_flashContainer.style.top = topDestiny + "px";	
		}
		if(tgt.getAttribute("hPos") == "left"){
			_flashContainer.style.left = (transformInfo.left-_flashObjHMargin) + "px";
		} else if(tgt.getAttribute("hPos") == "right"){
			var lDestiny = ((transformInfo.left+transformInfo.width)-Number(formW))+15;
			_flashContainer.style.left = lDestiny + "px";
		} else {
			var leftDestiny = (transformInfo.left + (transformInfo.width/2))-(Number(formW)/2);
			_flashContainer.style.left = leftDestiny + "px";
		}
		setTimeout(function(){_flashObj.initLoad(_swfPath+tgt.getAttribute("formURL"));},300);
	}
	
	function openDeepLink(){
		_deepLinkInterval = setInterval(validateDeepLink,500);
	}
	
	function validateDeepLink(){
		if(swfobject.getObjectById( $flashObj)){
			var id = Number(swfobject.getQueryParamValue("formID"));
			if(id != "" && id!=null && id != undefined){
				if(id>=0 && id<=_dipatchersInfo.length-1){
					showForm({currentTarget:etGt(_dipatchersInfo[id].btnId)})
				}
			}
			clearInterval(_deepLinkInterval);
		}
	}
	
	
	this.hideFormPanel = function(){
		_flashContainer.style.left = "-100%"	
	}
	FlashFormsManager();
}

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);
		Cufon.replace(document.getElementById(_menuParent.id), {
			hover: true
		});
		
		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*/

var BUICK = BUICK || {};
BUICK.generalInit = function($secID){
	if($secID == 0){		
			var colorSection = new BUICK.ColorSection();

	}
}

BUICK.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($pageName,$section,$subsection,$subsectionPath,$linkName,$noDelay){
	s.pageName=$pageName;
    s.prop1=$section;
    s.prop2=$subsection;
    s.prop3=$subsectionPath;
	s.tl($noDelay,'o',$linkName);
}
redirectMobile('http://m.buick.com.mx');

/*----------------CARRUSEL HOME-------------------------*/
$(document).ready(function() {
	
			//Set Default State of each portfolio piece
	$(".paging").show();
	$(".paging a:first").addClass("active");
		

	//Get size of images, how many there are, then determin the size of the image reel.

	var imageWidth = $(".window").width();
	var imageSum = $(".image_reel img").size();
	var imageReelWidth = imageWidth * imageSum;
	

	//Adjust the image reel to its new size

	$(".image_reel").css({'width' : imageReelWidth});
	//Paging + Slider Function
	rotate = function(){	

		var triggerID = $active.attr("rel") - 1; //Get number of times to slide
		var image_reelPosition = triggerID * imageWidth; //Determines the distance the image reel needs to slide

		$(".paging a").removeClass('active'); //Remove all active class
		$active.addClass('active'); //Add active class (the $active is declared in the rotateSwitch function)

		//Slider Animation

		$(".image_reel").animate({ 
			left: -image_reelPosition
		}, 500 );
	}; 

	//Rotation + Timing Event

	rotateSwitch = function(){		
		play = setInterval(function(){ //Set timer - this will repeat itself every 3 seconds
			$active = $('.paging a.active').next();
			if ( $active.length === 0) { //If paging reaches the end...
				$active = $('.paging a:first'); //go back to first
			}
			rotate(); //Trigger the paging and slider function
		}, 7000); //Timer speed in milliseconds (3 seconds)
	};

	rotateSwitch(); //Run function on launch

	//On Hover
	$(".image_reel a").hover(function() {
		clearInterval(play); //Stop the rotation
	}, function() {
		rotateSwitch(); //Resume rotation
	});	


	//On Click

	$(".paging a").click(function() {	
		$active = $(this); //Activate the clicked paging
		//Reset Timer
		clearInterval(play); //Stop the rotation
		rotate(); //Trigger rotation immediately
		rotateSwitch(); // Resume rotation
		return false; //Prevent browser jump to link anchor

	});	

	

});

		
