PageSourceSearch

https://www.infiniti.ca/etc/designs/pace-forms/infiniti_nna_v2/26.…/scripts/compiled/main-forms-nna.min.js

js infiniti.ca collected 2026-09-24 11:13:11 UTC 1,703,243 bytes, 54 lines download raw bytes

1Array.prototype.indexOf||(Array.prototype.indexOf=function(a,b){for(var c=b||0,d=this.length;c<d;c++)if(this[c]===a)return c;return-1}),window.HELIOS=window.HELIOS||{},HELIOS.config=HELIOS.config||{},HELIOS.config.common=HELIOS.config.common||{},HELIOS.config.common.logging={level:"silent"},HELIOS.config.common.countryCode=function(){var a=document.querySelector("meta[name='geo.country']");return a?a.content:""}(),HELIOS.config.common.api=HELIOS.config.common.api||{},HELIOS.config.common.api.scripts={facebook:{url:"//connect.facebook.net/en_US/all.js",root:"fb-root",parameters:["appId"]},google:{url:"//apis.google.com/js/platform.js"},twitter:{url:"//platform.twitter.com/widgets.js"},youtube:{url:"//www.youtube.com/iframe_api"},gigya:{url:"",parameters:["apiKey"],scriptText:null},youku:{url:"//player.youku.com/jsapi"},iqiyi:{url:"https://openapi.iqiyi.com/api/iqiyi/authorize"}},function(a,b,c){HELIOS.config.common.mediaQuery=HELIOS.config.common.mediaQuery||{},HELIOS.config.common.mediaQuery.raw={small:a-c,mediumMin:a,mediumMax:b-c,large:b,smallOrMediumMax:b-c,mediumOrLargeMin:a}}(36.3125,60,1e-4),function(a){HELIOS.config.common.mediaQuery=HELIOS.config.common.mediaQuery||{},HELIOS.config.common.mediaQuery.is={small:"(max-width:"+a.small+"em)",medium:"(min-width: "+a.mediumMin+"em) and (max-width: "+a.mediumMax+"em)",large:"(min-width: "+a.large+"em)",smallOrMedium:"(max-width: "+a.smallOrMediumMax+"em)",mediumOrLarge:"(min-width: "+a.mediumOrLargeMin+"em)"}}(HELIOS.config.common.mediaQuery.raw),function(a){var b,c,d=[];for(b in a)c=a[b]+"em",-1===d.indexOf(c)&&d.push(c);HELIOS.config.common.mediaQuery.breakpoints=d}(HELIOS.config.common.mediaQuery.raw),function(a,b,c){HELIOS.config.common.mediaQuery=HELIOS.config.common.mediaQuery||{},HELIOS.config.common.mediaQuery.breakpointsPx={small:a-c,mediumMin:a,mediumMax:b-c,large:b,smallOrMediumMax:b-c,mediumOrLargeMin:a}}(581,960,1),HELIOS.config.common.api.gigya&&HELIOS.config.common.api.gigya.url&&(HELIOS.config.common.api.scripts.gigya.url=HELIOS.config.common.api.gigya.url),function(){function _0x3b37(){var a=["isNewJersey","NEW JERSEY","service","39256HikVjQ","80896eNprFU","initAutocompleteService","indexOf","36810QvJQuc","processSuggestions","length","txList","3840660rlnpiV","reference","4169LMOGPu","Turnersville, NJ, USA","TURNERSVILLE","180810JAjfId","secondary_text","trim","isTurnersvilleNewJersey","Turnersville, TX, USA","place_id","njList","getPlacePredictions","onlyNJ","3534QdmyeM","343052dZXDWR","parse","input","options","stringify","replace","TEXAS","structured_formatting","minimumLetters","description","10fNXzNW","push","navagis","5747qITEHs","turnersville","NJ, USA","ChIJ6ws6DmDRxokRV6XeOsTVbJg","toUpperCase","callback","isTexas","1827KRngFu","specificTX","isTurnersville"];return(_0x3b37=function(){return a})()}function NavagisAutocompleteService(){var a=_0x2b54;this[a(306)]=null,this[a(350)]=![],this[a(324)]=![],this.callback=null,this[a(328)]=null,this[a(336)]=["TX",a(309)],this[a(348)]=["NJ",a(327)],this[a(317)]=a(341),this[a(311)]=6,this[a(331)]=function(a){this.service=a},this[a(334)]=function(b,c){var d=a;if("OK"===c&&b)for(var e=0;e<b[d(335)];e++){var f=b[e];if(f.description===d(346)){!window[d(315)][d(350)]&&(f=JSON[d(304)](JSON[d(307)](b[e]))),f[d(312)]=d(340),f[d(347)]=d(319),f[d(338)]=d(319),f[d(310)][d(343)]=d(318),!window[d(315)][d(350)]&&b[d(335)]>1&&!window[d(315)].specificTX&&b[d(314)](f);break}}window[d(315)][d(321)](b,c)},this.getPlacePredictions=function(b,c){var d=a;this[d(306)]=b,this[d(321)]=c,this.onlyNJ=this[d(345)](b[d(305)].toUpperCase()),this.specificTX=this.isTexas(b[d(305)][d(320)]()),this.service[d(349)](b,this[d(334)])},this[a(322)]=function(b){for(var c=a,d=0;d<this[c(336)].length;d++)if(-1!==b[c(332)](this[c(336)][d]))return!![];return![]},this[a(326)]=function(b){for(var c=a,d=0;d<this[c(348)].length;d++)if(-1!==b[c(332)](this[c(348)][d]))return!![];return![]},this.isTurnersville=function(b){var c=a,d=b[c(308)](/,/g," ")[c(344)]();d=d.split(" ");for(var e=0;e<d[c(335)];e++){var f=d[e][c(344)]();if(""!==f&&f[c(335)]>=this.minimumLetters&&-1!==this.turnersville[c(332)](f))return!![]}return![]},this[a(345)]=function(b){var c=a;return this[c(326)](b)&&this[c(325)](b)?(this.options[c(305)]=c(346),!![]):![]}}function _0x2b54(a,b){var c=_0x3b37();return(_0x2b54=function(a,b){return a-=303,c[a]})(a,b)}var requirejs,require,define;!function(global){function isFunction(a){return"[object Function]"===ostring.call(a)}function isArray(a){return"[object Array]"===ostring.call(a)}function each(a,b){if(a){var c;for(c=0;c<a.length&&(!a[c]||!b(a[c],c,a));c+=1);}}function eachReverse(a,b){if(a){var c;for(c=a.length-1;c>-1&&(!a[c]||!b(a[c],c,a));c-=1);}}function hasProp(a,b){return hasOwn.call(a,b)}function getOwn(a,b){return hasProp(a,b)&&a[b]}function eachProp(a,b){var c;
1for(c in a)if(hasProp(a,c)&&b(a[c],c))break}function mixin(a,b,c,d){return b&&eachProp(b,function(b,e){!c&&hasProp(a,e)||(!d||"object"!=typeof b||!b||isArray(b)||isFunction(b)||b instanceof RegExp?a[e]=b:(a[e]||(a[e]={}),mixin(a[e],b,c,d)))}),a}function bind(a,b){return function(){return b.apply(a,arguments)}}function scripts(){return document.getElementsByTagName("script")}function defaultOnError(a){throw a}function getGlobal(a){if(!a)return a;var b=global;return each(a.split("."),function(a){b=b[a]}),b}function makeError(a,b,c,d){var e=new Error(b+"\nhttp://requirejs.org/docs/errors.html#"+a);return e.requireType=a,e.requireModules=d,c&&(e.originalError=c),e}function newContext(a){function b(a){var b,c;for(b=0;b<a.length;b++)if("."===(c=a[b]))a.splice(b,1),b-=1;else if(".."===c){if(0===b||1===b&&".."===a[2]||".."===a[b-1])continue;b>0&&(a.splice(b-1,2),b-=2)}}function c(a,c,d){var e,f,g,h,i,j,k,l,m,n,o,p=c&&c.split("/"),q=x.map,r=q&&q["*"];if(a&&(a=a.split("/"),j=a.length-1,x.nodeIdCompat&&jsSuffixRegExp.test(a[j])&&(a[j]=a[j].replace(jsSuffixRegExp,"")),"."===a[0].charAt(0)&&p&&(o=p.slice(0,p.length-1),a=o.concat(a)),b(a),a=a.join("/")),d&&q&&(p||r)){f=a.split("/");a:for(g=f.length;g>0;g-=1){if(i=f.slice(0,g).join("/"),p)for(h=p.length;h>0;h-=1)if((e=getOwn(q,p.slice(0,h).join("/")))&&(e=getOwn(e,i))){k=e,l=g;break a}!m&&r&&getOwn(r,i)&&(m=getOwn(r,i),n=g)}!k&&m&&(k=m,l=n),k&&(f.splice(0,l,k),a=f.join("/"))}return getOwn(x.pkgs,a)||a}function d(a){isBrowser&&each(scripts(),function(b){if(b.getAttribute("data-requiremodule")===a&&b.getAttribute("data-requirecontext")===u.contextName)return b.parentNode.removeChild(b),!0})}function e(a){var b=getOwn(x.paths,a);if(b&&isArray(b)&&b.length>1)return b.shift(),u.require.undef(a),u.makeRequire(null,{skipMap:!0})([a]),!0}function f(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function g(a,b,d,e){var g,h,i,j,k=null,l=b?b.name:null,m=a,n=!0,o="";return a||(n=!1,a="_@r"+(F+=1)),j=f(a),k=j[0],a=j[1],k&&(k=c(k,l,e),h=getOwn(C,k)),a&&(k?o=h&&h.normalize?h.normalize(a,function(a){return c(a,l,e)}):-1===a.indexOf("!")?c(a,l,e):a:(o=c(a,l,e),j=f(o),k=j[0],o=j[1],d=!0,g=u.nameToUrl(o))),i=!k||h||d?"":"_unnormalized"+(G+=1),{prefix:k,name:o,parentMap:b,unnormalized:!!i,url:g,originalName:m,isDefine:n,id:(k?k+"!"+o:o)+i}}function h(a){var b=a.id,c=getOwn(y,b);return c||(c=y[b]=new u.Module(a)),c}function i(a,b,c){var d=a.id,e=getOwn(y,d);!hasProp(C,d)||e&&!e.defineEmitComplete?(e=h(a),e.error&&"error"===b?c(e.error):e.on(b,c)):"defined"===b&&c(C[d])}function j(a,b){var c=a.requireModules,d=!1;b?b(a):(each(c,function(b){var c=getOwn(y,b);c&&(c.error=a,c.events.error&&(d=!0,c.emit("error",a)))}),d||req.onError(a))}function k(){globalDefQueue.length&&(apsp.apply(B,[B.length,0].concat(globalDefQueue)),globalDefQueue=[])}function l(a){delete y[a],delete z[a]}function m(a,b,c){var d=a.map.id;a.error?a.emit("error",a.error):(b[d]=!0,each(a.depMaps,function(d,e){var f=d.id,g=getOwn(y,f);!g||a.depMatched[e]||c[f]||(getOwn(b,f)?(a.defineDep(e,C[f]),a.check()):m(g,b,c))}),c[d]=!0)}function n(){var a,b,c=1e3*x.waitSeconds,f=c&&u.startTime+c<(new Date).getTime(),g=[],h=[],i=!1,k=!0;if(!s){if(s=!0,eachProp(z,function(a){var c=a.map,j=c.id;if(a.enabled&&(c.isDefine||h.push(a),!a.error))if(!a.inited&&f)e(j)?(b=!0,i=!0):(g.push(j),d(j));else if(!a.inited&&a.fetched&&c.isDefine&&(i=!0,!c.prefix))return k=!1}),f&&g.length)return a=makeError("timeout","Load timeout for modules: "+g,null,g),a.contextName=u.contextName,j(a);k&&each(h,function(a){m(a,{},{})}),f&&!b||!i||!isBrowser&&!isWebWorker||w||(w=setTimeout(function(){w=0,n()},50)),s=!1}}function o(a){hasProp(C,a[0])||h(g(a[0],null,!0)).init(a[1],a[2])}function p(a,b,c,d){a.detachEvent&&!isOpera?d&&a.detachEvent(d,b):a.removeEventListener(c,b,!1)}function q(a){var b=a.currentTarget||a.srcElement;return p(b,u.onScriptLoad,"load","onreadystatechange"),p(b,u.onScriptError,"error"),{node:b,id:b&&b.getAttribute("data-requiremodule")}}function r(){var a;for(k();B.length;){if(a=B.shift(),null===a[0])return j(makeError("mismatch","Mismatched anonymous define() module: "+a[a.length-1]));o(a)}}
vendor: 4,156 bytes, line 1
1var s,t,u,v,w,x={waitSeconds:7,baseUrl:"./",paths:{},bundles:{},pkgs:{},shim:{},config:{}},y={},z={},A={},B=[],C={},D={},E={},F=1,G=1;return v={require:function(a){return a.require?a.require:a.require=u.makeRequire(a.map)},exports:function(a){if(a.usingExports=!0,a.map.isDefine)return a.exports?C[a.map.id]=a.exports:a.exports=C[a.map.id]={}},module:function(a){return a.module?a.module:a.module={id:a.map.id,uri:a.map.url,config:function(){return getOwn(x.config,a.map.id)||{}},exports:a.exports||(a.exports={})}}},t=function(a){this.events=getOwn(A,a.id)||{},this.map=a,this.shim=getOwn(x.shim,a.id),this.depExports=[],this.depMaps=[],this.depMatched=[],this.pluginMaps={},this.depCount=0},t.prototype={init:function(a,b,c,d){d=d||{},this.inited||(this.factory=b,c?this.on("error",c):this.events.error&&(c=bind(this,function(a){this.emit("error",a)})),this.depMaps=a&&a.slice(0),this.errback=c,this.inited=!0,this.ignore=d.ignore,d.enabled||this.enabled?this.enable():this.check())},defineDep:function(a,b){this.depMatched[a]||(this.depMatched[a]=!0,this.depCount-=1,this.depExports[a]=b)},fetch:function(){if(!this.fetched){this.fetched=!0,u.startTime=(new Date).getTime();var a=this.map;if(!this.shim)return a.prefix?this.callPlugin():this.load();u.makeRequire(this.map,{enableBuildCallback:!0})(this.shim.deps||[],bind(this,function(){return a.prefix?this.callPlugin():this.load()}))}},load:function(){var a=this.map.url;D[a]||(D[a]=!0,u.load(this.map.id,a))},check:function(){if(this.enabled&&!this.enabling){var a,b,c=this.map.id,d=this.depExports,e=this.exports,f=this.factory;if(this.inited){if(this.error)this.emit("error",this.error);else if(!this.defining){if(this.defining=!0,this.depCount<1&&!this.defined){if(isFunction(f)){if(this.events.error&&this.map.isDefine||req.onError!==defaultOnError)try{e=u.execCb(c,f,d,e)}catch(g){a=g}else e=u.execCb(c,f,d,e);if(this.map.isDefine&&void 0===e&&(b=this.module,b?e=b.exports:this.usingExports&&(e=this.exports)),a)return a.requireMap=this.map,a.requireModules=this.map.isDefine?[this.map.id]:null,a.requireType=this.map.isDefine?"define":"require",j(this.error=a)}else e=f;this.exports=e,this.map.isDefine&&!this.ignore&&(C[c]=e,req.onResourceLoad&&req.onResourceLoad(u,this.map,this.depMaps)),l(c),this.defined=!0}this.defining=!1,this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}}else this.fetch()}},callPlugin:function(){var a=this.map,b=a.id,d=g(a.prefix);this.depMaps.push(d),i(d,"defined",bind(this,function(d){var e,f,k,m=getOwn(E,this.map.id),n=this.map.name,o=this.map.parentMap?this.map.parentMap.name:null,p=u.makeRequire(a.parentMap,{enableBuildCallback:!0});return this.map.unnormalized?(d.normalize&&(n=d.normalize(n,function(a){return c(a,o,!0)})||""),f=g(a.prefix+"!"+n,this.map.parentMap),i(f,"defined",bind(this,function(a){this.init([],function(){return a},null,{enabled:!0,ignore:!0})})),void((k=getOwn(y,f.id))&&(this.depMaps.push(f),this.events.error&&k.on("error",bind(this,function(a){this.emit("error",a)})),k.enable()))):m?(this.map.url=u.nameToUrl(m),void this.load()):(e=bind(this,function(a){this.init([],function(){return a},null,{enabled:!0})}),e.error=bind(this,function(a){this.inited=!0,this.error=a,a.requireModules=[b],eachProp(y,function(a){0===a.map.id.indexOf(b+"_unnormalized")&&l(a.map.id)}),j(a)}),e.fromText=bind(this,function(c,d){var f=a.name,i=g(f),k=useInteractive;d&&(c=d),k&&(useInteractive=!1),h(i),hasProp(x.config,b)&&(x.config[f]=x.config[b]);try{req.exec(c)}catch(l){return j(makeError("fromtexteval","fromText eval for "+b+" failed: "+l,l,[b]))}k&&(useInteractive=!0),this.depMaps.push(i),u.completeLoad(f),p([f],e)}),void d.load(a.name,p,e,x))})),u.enable(d,this),this.pluginMaps[d.id]=d},enable:function(){z[this.map.id]=this,this.enabled=!0,this.enabling=!0,each(this.depMaps,bind(this,function(a,b){var c,d,e;if("string"==typeof a){if(a=g(a,this.map.isDefine?this.map:this.map.parentMap,!1,!this.skipMap),this.depMaps[b]=a,e=getOwn(v,a.id))return void(this.depExports[b]=e(this));this.depCount+=1,i(a,"defined",bind(this,function(a){this.defineDep(b,a),this.check()}
1)),this.errback?i(a,"error",bind(this,this.errback)):this.events.error&&i(a,"error",bind(this,function(a){this.emit("error",a)}))}c=a.id,d=y[c],hasProp(v,c)||!d||d.enabled||u.enable(a,this)})),eachProp(this.pluginMaps,bind(this,function(a){var b=getOwn(y,a.id);b&&!b.enabled&&u.enable(a,this)})),this.enabling=!1,this.check()},on:function(a,b){var c=this.events[a];c||(c=this.events[a]=[]),c.push(b)},emit:function(a,b){each(this.events[a],function(a){a(b)}),"error"===a&&delete this.events[a]}},u={config:x,contextName:a,registry:y,defined:C,urlFetched:D,defQueue:B,Module:t,makeModuleMap:g,nextTick:req.nextTick,onError:j,configure:function(a){a.baseUrl&&"/"!==a.baseUrl.charAt(a.baseUrl.length-1)&&(a.baseUrl+="/");var b=x.shim,c={paths:!0,bundles:!0,config:!0,map:!0};eachProp(a,function(a,b){c[b]?(x[b]||(x[b]={}),mixin(x[b],a,!0,!0)):x[b]=a}),a.bundles&&eachProp(a.bundles,function(a,b){each(a,function(a){a!==b&&(E[a]=b)})}),a.shim&&(eachProp(a.shim,function(a,c){isArray(a)&&(a={deps:a}),!a.exports&&!a.init||a.exportsFn||(a.exportsFn=u.makeShimExports(a)),b[c]=a}),x.shim=b),a.packages&&each(a.packages,function(a){var b,c;a="string"==typeof a?{name:a}:a,c=a.name,b=a.location,b&&(x.paths[c]=a.location),x.pkgs[c]=a.name+"/"+(a.main||"main").replace(currDirRegExp,"").replace(jsSuffixRegExp,"")}),eachProp(y,function(a,b){a.inited||a.map.unnormalized||(a.map=g(b))}),(a.deps||a.callback)&&u.require(a.deps||[],a.callback)},makeShimExports:function(a){function b(){var b;return a.init&&(b=a.init.apply(global,arguments)),b||a.exports&&getGlobal(a.exports)}return b},makeRequire:function(b,e){function f(c,d,i){var k,l,m;return e.enableBuildCallback&&d&&isFunction(d)&&(d.__requireJsBuild=!0),"string"==typeof c?isFunction(d)?j(makeError("requireargs","Invalid require call"),i):b&&hasProp(v,c)?v[c](y[b.id]):req.get?req.get(u,c,b,f):(l=g(c,b,!1,!0),k=l.id,hasProp(C,k)?C[k]:j(makeError("notloaded",'Module name "'+k+'" has not been loaded yet for context: '+a+(b?"":". Use require([])")))):(r(),u.nextTick(function(){r(),m=h(g(null,b)),m.skipMap=e.skipMap,m.init(c,d,i,{enabled:!0}),n()}),f)}return e=e||{},mixin(f,{isBrowser:isBrowser,toUrl:function(a){var d,e=a.lastIndexOf("."),f=a.split("/")[0],g="."
1===f||".."===f;return-1!==e&&(!g||e>1)&&(d=a.substring(e,a.length),a=a.substring(0,e)),u.nameToUrl(c(a,b&&b.id,!0),d,!0)},defined:function(a){return hasProp(C,g(a,b,!1,!0).id)},specified:function(a){return a=g(a,b,!1,!0).id,hasProp(C,a)||hasProp(y,a)}}),b||(f.undef=function(a){k();var c=g(a,b,!0),e=getOwn(y,a);d(a),delete C[a],delete D[c.url],delete A[a],eachReverse(B,function(b,c){b[0]===a&&B.splice(c,1)}),e&&(e.events.defined&&(A[a]=e.events),l(a))}),f},enable:function(a){getOwn(y,a.id)&&h(a).enable()},completeLoad:function(a){var b,c,d,f=getOwn(x.shim,a)||{},g=f.exports;for(k();B.length;){if(c=B.shift(),null===c[0]){if(c[0]=a,b)break;b=!0}else c[0]===a&&(b=!0);o(c)}if(d=getOwn(y,a),!b&&!hasProp(C,a)&&d&&!d.inited){if(!(!x.enforceDefine||g&&getGlobal(g)))return e(a)?void 0:j(makeError("nodefine","No define call for "+a,null,[a]));o([a,f.deps||[],f.exportsFn])}n()},nameToUrl:function(a,b,c){var d,e,f,g,h,i,j,k=getOwn(x.pkgs,a);if(k&&(a=k),j=getOwn(E,a))return u.nameToUrl(j,b,c);if(req.jsExtRegExp.test(a))h=a+(b||"");else{for(d=x.paths,e=a.split("/"),f=e.length;f>0;f-=1)if(g=e.slice(0,f).join("/"),i=getOwn(d,g)){isArray(i)&&(i=i[0]),e.splice(0,f,i);break}h=e.join("/"),h+=b||(/^data\:|\?/.test(h)||c?"":".js"),h=("/"===h.charAt(0)||h.match(/^[\w\+\.\-]+:/)?"":x.baseUrl)+h}return x.urlArgs?h+(-1===h.indexOf("?")?"?":"&")+x.urlArgs:h},load:function(a,b){req.load(u,a,b)},execCb:function(a,b,c,d){return b.apply(d,c)},onScriptLoad:function(a){if("load"===a.type||readyRegExp.test((a.currentTarget||a.srcElement).readyState)){interactiveScript=null;var b=q(a);u.completeLoad(b.id)}},onScriptError:function(a){var b=q(a);if(!e(b.id))return j(makeError("scripterror","Script error for: "+b.id,a,[b.id]))}},u.require=u.makeRequire(),u}function getInteractiveScript(){return interactiveScript&&"interactive"===interactiveScript.readyState?interactiveScript:(eachReverse(scripts(),function(a){if("interactive"===a.readyState)return interactiveScript=a}),interactiveScript)}var req,s,head,baseElement,dataMain,src,interactiveScript,currentlyAddingScript,mainScript,subPath,version="2.1.17",commentRegExp=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm,cjsRequireRegExp=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,jsSuffixRegExp=/\.js$/,currDirRegExp=/^\.\//,op=Object.prototype,ostring=op.toString,hasOwn=op.hasOwnProperty,ap=Array.prototype,apsp=ap.splice,isBrowser=!("undefined"==typeof window||"undefined"==typeof navigator||!window.document),isWebWorker=!isBrowser&&"undefined"!=typeof importScripts,readyRegExp=isBrowser&&"PLAYSTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/,defContextName="_",isOpera="undefined"!=typeof opera&&"[object Opera]"===opera.toString(),contexts={},cfg={},globalDefQueue=[],useInteractive=!1;if(void 0===define){if(void 0!==requirejs){if(isFunction(requirejs))return;cfg=requirejs,requirejs=void 0}void 0===require||isFunction(require)||(cfg=require,require=void 0),req=requirejs=function(a,b,c,d){var e,f,g=defContextName;return isArray(a)||"string"==typeof a||(f=a,isArray(b)?(a=b,b=c,c=d):a=[]),f&&f.context&&(g=f.context),e=getOwn(contexts,g),e||(e=contexts[g]=req.s.newContext(g)),f&&e.configure(f),e.require(a,b,c)},req.config=function(a){return req(a)},req.nextTick="undefined"!=typeof setTimeout?function(a){setTimeout(a,4)}:function(a){a()},require||(require=req),req.version=version,req.jsExtRegExp=/^\/|:|\?|\.js$/,req.isBrowser=isBrowser,s=req.s={contexts:contexts,newContext:newContext},req({}),each(["toUrl","undef","defined","specified"],function(a){req[a]=function(){var b=contexts[defContextName];return b.require[a].apply(b,arguments)}}),isBrowser&&(head=s.head=document.getElementsByTagName("head")[0],(baseElement=document.getElementsByTagName("base")[0])&&(head=s.head=baseElement.parentNode)),req.onError=defaultOnError,req.createNode=function(a,b,c){var d=a.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script");return d.type=a.scriptType||"text/javascript",d.charset="utf-8",d.async=!0,d},req.load=function(a,b,c){var d,e=a&&a.config||{};if(isBrowser)return d=req.createNode(e,b,c),d.setAttribute("data-requirecontext",a.
1contextName),d.setAttribute("data-requiremodule",b),!d.attachEvent||d.attachEvent.toString&&d.attachEvent.toString().indexOf("[native code")<0||isOpera?(d.addEventListener("load",a.onScriptLoad,!1),d.addEventListener("error",a.onScriptError,!1)):(useInteractive=!0,d.attachEvent("onreadystatechange",a.onScriptLoad)),d.src=c,currentlyAddingScript=d,baseElement?head.insertBefore(d,baseElement):head.appendChild(d),currentlyAddingScript=null,d;if(isWebWorker)try{importScripts(c),a.completeLoad(b)}catch(f){a.onError(makeError("importscripts","importScripts failed for "+b+" at "+c,f,[b]))}},isBrowser&&!cfg.skipDataMain&&eachReverse(scripts(),function(a){if(head||(head=a.parentNode),dataMain=a.getAttribute("data-main"))return mainScript=dataMain,cfg.baseUrl||(src=mainScript.split("/"),mainScript=src.pop(),subPath=src.length?src.join("/")+"/":"./",cfg.baseUrl=subPath),mainScript=mainScript.replace(jsSuffixRegExp,""),req.jsExtRegExp.test(mainScript)&&(mainScript=dataMain),cfg.deps=cfg.deps?cfg.deps.concat(mainScript):[mainScript],!0}),define=function(a,b,c){var d,e;"string"!=typeof a&&(c=b,b=a,a=null),isArray(b)||(c=b,b=null),!b&&isFunction(c)&&(b=[],c.length&&(c.toString().replace(commentRegExp,"").replace(cjsRequireRegExp,function(a,c){b.push(c)}),b=(1===c.length?["require"]:["require","exports","module"]).concat(b))),useInteractive&&(d=currentlyAddingScript||getInteractiveScript())&&(a||(a=d.getAttribute("data-requiremodule")),e=contexts[d.getAttribute("data-requirecontext")]),(e?e.defQueue:globalDefQueue).push([a,b,c])},define.amd={jQuery:!0},req.exec=function(text){return eval(text)},req(cfg)}}(this),define("vendor/requirejs/require",function(){}),define("jquery",[],function(){return jQuery}),function(a,b){"object"==typeof exports&&"undefined"!=typeof module?module.exports=b():"function"==typeof define&&define.amd?define("underscore",b):(a="undefined"!=typeof globalThis?globalThis:a||self,function(){var c=a._,d=a._=b();d.noConflict=function(){return a._=c,d}}())}(this,function(){function a(a,b){return b=null==b?a.length-1:+b,function(){for(var c=Math.max(arguments.length-b,0),d=Array(c),e=0;e<c;e++)d[e]=arguments[e+b];switch(b){case 0:return a.call(this,d);case 1:return a.call(this,arguments[0],d);case 2:return a.call(this,arguments[0],arguments[1],d)}var f=Array(b+1);for(e=0;e<b;e++)f[e]=arguments[e];return f[b]=d,a.apply(this,f)}}function b(a){var b=typeof a;return"function"===b||"object"===b&&!!a}function c(a){return null===a}function d(a){return void 0===a}function e(a){return!0===a||!1===a||"[object Boolean]"===ib.call(a)}function f(a){return!(!a||1!==a.nodeType)}function g(a){var b="[object "+a+"]";return function(a){return ib.call(a)===b}}function h(a){return null!=a&&Eb(a.getInt8)&&Bb(a.buffer)}function i(a,b){return null!=a&&jb.call(a,b)}function j(a){return!Ab(a)&&rb(a)&&!isNaN(parseFloat(a))}function k(a){return wb(a)&&qb(a)}function l(a){return function(){return a}}function m(a){return function(b){var c=a(b);return"number"==typeof c&&c>=0&&c<=ub}}function n(a){return function(b){return null==b?void 0:b[a]}}function o(a){return pb?pb(a)&&!Jb(a):Ob(a)&&Pb.test(ib.call(a))}function p(a){for(var b={},c=a.length,d=0;d<c;++d)b[a[d]]=!0;return{contains:function(a){return!0===b[a]},push:function(c){return b[c]=!0,a.push(c)}}}function q(a,b){b=p(b);var c=tb.length,d=a.constructor,e=Eb(d)&&d.prototype||eb,f="constructor";for(i(a,f)&&!b.contains(f)&&b.push(f);c--;)(f=tb[c])in a&&a[f]!==e[f]&&!b.contains(f)&&b.push(f)}function r(a){if(!b(a))return[];if(nb)return nb(a);var c=[];for(var d in a)i(a,d)&&c.push(d);return sb&&q(a,c),c}function s(a){if(null==a)return!0;var b=Rb(a);return"number"==typeof b&&(Kb(a)||vb(a)||Mb(a))?0===b:0===Rb(r(a))}function t(a,b){var c=r(b),d=c.length;if(null==a)return!d;for(var e=Object(a),f=0;f<d;f++){var g=c[f];if(b[g]!==e[g]||!(g in e))return!1}return!0}function u(a){return a instanceof u?a:this instanceof u?void(this._wrapped=a):new u(a)}function v(a){return new Uint8Array(a.buffer||a,a.byteOffset||0,Nb(a))}function w(a,b,c,d){if(a===b)return 0!==a||1/a==1/b;if(null==a||null==b)return!1;if(a!==a)return b!==b;var e=typeof a;return("function"===e||"object"===e||"object"==typeof b)&&x(a,b,c,d)}function x(a,b,c,d){a instanceof u&&(a=a._wrapped),b instanceof u&&(b=b._wrapped);var e=ib.call(a);if(e!==ib.call(b))return!1;if(Gb&&"[object Object]"==e&&Jb(a)){if(!Jb(b))return!1;e=Sb}switch(e){case"[object RegExp]":case"[object String]":return""+a==""+b;case"[object Number]":return+a!=+a?+b!=+b:0==+a?1/+a==1/b:+a==+b;case"[object Date]":case"[object Boolean]":return+a==+b;case"[object Symbol]":return fb.valueOf.call(a)===fb.valueOf.call(b);case"[object ArrayBuffer]":case Sb:return x(v(a),v(b),c,d)}var f="[object Array]"===e;if(!f&&Qb(a)){if(Nb(a)!==Nb(b))return!1;if(a.buffer===b.buffer&&a.byteOffset===b.byteOffset)return!0;f=!0}if(!f){if("object"!=typeof a||"object"!=typeof b)return!1;var g=a.constructor,h=b.constructor;if(g!==h&&!(Eb(g)&&g instanceof g&&Eb(h)&&h instanceof h)&&"constructor"in a&&"constructor"in b)return!1}c=c||[],d=d||[];for(var j=c.length;j--;)if(c[j]===a)return d[j]===b;if(c.push(a),d.push(b),f){if((j=a.length)!==b.length)return!1;for(;j--;)if(!w(a[j],b[j],c,d))return!1}else{var k,l=r(a);if(j=l.length,r(b).length!==j)return!1;for(;j--;)if(k=l[j],!i(b,k)||!w(a[k],b[k],c,d))return!1}return c.pop(),d.pop(),!0}function y(a,b){return w(a,b)}function z(a){if(!b(a))return[];var c=[];for(var d in a)c.push(d);return sb&&q(a,c),c}function A(a){var b=Rb(a);return function(c){if(null==c)return!1;var d=z(c);if(Rb(d))return!1;for(var e=0;e<b;e++)if(!Eb(c[a[e]]))return!1;return a!==Yb||!Eb(c[Tb])}}function B(a){for(var b=r(a),c=b.length,d=Array(c),e=0;e<c;e++)d[e]=a[b[e]];return d}function C(a){for(var b=r(a),c=b.length,d=Array(c),e=0;e<c;e++)d[e]=[b[e],a[b[e]]];return d}function D(a){for(var b={},c=r(a),d=0,e=c.length;d<e;d++)b[a[c[d]]]=c[d];return b}function E(a){var b=[];for(var c in a)Eb(a[c])&&b.push(c);return b.sort()}function F(a,b){return function(c){var d=arguments.length;if(b&&(c=Object(c)),d<2||null==c)return c;for(var e=1;e<d;e++)for(var f=arguments[e],g=a(f),h=g.length,i=0;i<h;i++){var j=g[i];b&&void 0!==c[j]||(c[j]=f[j])}return c}}function G(){return function(){}}
vendor: 3,274 bytes, line 1
1function H(a){if(!b(a))return{};if(ob)return ob(a);var c=G();c.prototype=a;var d=new c;return c.prototype=null,d}function I(a,b){var c=H(a);return b&&dc(c,b),c}function J(a){return b(a)?Kb(a)?a.slice():cc({},a):a}function K(a,b){return b(a),a}function L(a){return Kb(a)?a:[a]}function M(a){return u.toPath(a)}function N(a,b){for(var c=b.length,d=0;d<c;d++){if(null==a)return;a=a[b[d]]}return c?a:void 0}function O(a,b,c){var e=N(a,M(b));return d(e)?c:e}function P(a,b){b=M(b);for(var c=b.length,d=0;d<c;d++){var e=b[d];if(!i(a,e))return!1;a=a[e]}return!!c}function Q(a){return a}function R(a){return a=dc({},a),function(b){return t(b,a)}}function S(a){return a=M(a),function(b){return N(b,a)}}function T(a,b,c){if(void 0===b)return a;switch(null==c?3:c){case 1:return function(c){return a.call(b,c)};case 3:return function(c,d,e){return a.call(b,c,d,e)};case 4:return function(c,d,e,f){return a.call(b,c,d,e,f)}}return function(){return a.apply(b,arguments)}}function U(a,c,d){return null==a?Q:Eb(a)?T(a,c,d):b(a)&&!Kb(a)?R(a):S(a)}function V(a,b){return U(a,b,1/0)}function W(a,b,c){return u.iteratee!==V?u.iteratee(a,b):U(a,b,c)}function X(a,b,c){b=W(b,c);for(var d=r(a),e=d.length,f={},g=0;g<e;g++){var h=d[g];f[h]=b(a[h],h,a)}return f}function Y(){}function Z(a){return null==a?Y:function(b){return O(a,b)}}function $(a,b,c){var d=Array(Math.max(0,a));b=T(b,c,1);for(var e=0;e<a;e++)d[e]=b(e);return d}function _(a,b){return null==b&&(b=a,a=0),a+Math.floor(Math.random()*(b-a+1))}function aa(a){var b=function(b){return a[b]},c="(?:"+r(a).join("|")+")",d=RegExp(c),e=RegExp(c,"g");return function(a){return a=null==a?"":""+a,d.test(a)?a.replace(e,b):a}}function ba(a){return"\\"+mc[a]}function ca(a,b,c){!b&&c&&(b=c),b=ec({},b,u.templateSettings);var d=RegExp([(b.escape||lc).source,(b.interpolate||lc).source,(b.evaluate||lc).source].join("|")+"|$","g"),e=0,f="__p+='";a.replace(d,function(b,c,d,g,h){return f+=a.slice(e,h).replace(nc,ba),e=h+b.length,c?f+="'+\n((__t=("+c+"))==null?'':_.escape(__t))+\n'":d?f+="'+\n((__t=("+d+"))==null?'':__t)+\n'":g&&(f+="';\n"+g+"\n__p+='"),b}),f+="';\n";var g=b.variable;if(g){if(!oc.test(g))throw new Error("variable is not a bare identifier: "+g)}else f="with(obj||{}){\n"+f+"}\n",g="obj";f="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+f+"return __p;\n";var h;try{h=new Function(g,"_",f)}catch(j){throw j.source=f,j}var i=function(a){return h.call(this,a,u)};return i.source="function("+g+"){\n"+f+"}",i}function da(a,b,c){b=M(b);var d=b.length;if(!d)return Eb(c)?c.call(a):c;for(var e=0;e<d;e++){var f=null==a?void 0:a[b[e]];void 0===f&&(f=c,e=d),a=Eb(f)?f.call(a):f}return a}function ea(a){var b=++pc+"";return a?a+b:b}function fa(a){var b=u(a);return b._chain=!0,b}function ga(a,c,d,e,f){if(!(e instanceof c))return a.apply(d,f);var g=H(a.prototype),h=a.apply(g,f);return b(h)?h:g}function ha(a,b,c,d){if(d=d||[],b||0===b){if(b<=0)return d.concat(a)}else b=1/0;for(var e=d.length,f=0,g=Rb(a);f<g;f++){var h=a[f];if(sc(h)&&(Kb(h)||Mb(h)))if(b>1)ha(h,b-1,c,d),e=d.length;else for(var i=0,j=h.length;i<j;)d[e++]=h[i++];else c||(d[e++]=h)}return d}function ia(a,b){var c=function(d){var e=c.cache,f=""+(b?b.apply(this,arguments):d);return i(e,f)||(e[f]=a.apply(this,arguments)),e[f]}
1;return c.cache={},c}function ja(a,b,c){var d,e,f,g,h=0;c||(c={});var i=function(){h=!1===c.leading?0:fc(),d=null,g=a.apply(e,f),d||(e=f=null)},j=function(){var j=fc();h||!1!==c.leading||(h=j);var k=b-(j-h);return e=this,f=arguments,k<=0||k>b?(d&&(clearTimeout(d),d=null),h=j,g=a.apply(e,f),d||(e=f=null)):d||!1===c.trailing||(d=setTimeout(i,k)),g};return j.cancel=function(){clearTimeout(d),h=0,d=e=f=null},j}function ka(b,c,d){var e,f,g,h,i,j=function(){var a=fc()-f;c>a?e=setTimeout(j,c-a):(e=null,d||(h=b.apply(i,g)),e||(g=i=null))},k=a(function(a){return i=this,g=a,f=fc(),e||(e=setTimeout(j,c),d&&(h=b.apply(i,g))),h});return k.cancel=function(){clearTimeout(e),e=g=i=null},k}function la(a,b){return qc(b,a)}function ma(a){return function(){return!a.apply(this,arguments)}}function na(){var a=arguments,b=a.length-1;return function(){for(var c=b,d=a[b].apply(this,arguments);c--;)d=a[c].call(this,d);return d}}function oa(a,b){return function(){if(--a<1)return b.apply(this,arguments)}}function pa(a,b){var c;return function(){return--a>0&&(c=b.apply(this,arguments)),a<=1&&(b=null),c}}function qa(a,b,c){b=W(b,c);for(var d,e=r(a),f=0,g=e.length;f<g;f++)if(d=e[f],b(a[d],d,a))return d}function ra(a){return function(b,c,d){c=W(c,d);for(var e=Rb(b),f=a>0?0:e-1;f>=0&&f<e;f+=a)if(c(b[f],f,b))return f;return-1}}function sa(a,b,c,d){c=W(c,d,1);for(var e=c(b),f=0,g=Rb(a);f<g;){var h=Math.floor((f+g)/2);c(a[h])<e?f=h+1:g=h}return f}function ta(a,b,c){return function(d,e,f){var g=0,h=Rb(d);if("number"==typeof f)a>0?g=f>=0?f:Math.max(f+h,g):h=f>=0?Math.min(f+1,h):f+h+1;else if(c&&f&&h)return f=c(d,e),d[f]===e?f:-1;if(e!==e)return f=b(hb.call(d,g,h),k),f>=0?f+g:-1;for(f=a>0?g:h-1;f>=0&&f<h;f+=a)if(d[f]===e)return f;return-1}}function ua(a,b,c){var d=sc(a)?xc:qa,e=d(a,b,c);if(void 0!==e&&-1!==e)return a[e]}function va(a,b){return ua(a,R(b))}function wa(a,b,c){b=T(b,c);var d,e;if(sc(a))for(d=0,e=a.length;d<e;d++)b(a[d],d,a);else{var f=r(a);for(d=0,e=f.length;d<e;d++)b(a[f[d]],f[d],a)}return a}function xa(a,b,c){b=W(b,c);for(var d=!sc(a)&&r(a),e=(d||a).length,f=Array(e),g=0;g<e;g++){var h=d?d[g]:g;f[g]=b(a[h],h,a)}return f}function ya(a){var b=function(b,c,d,e){var f=!sc(b)&&r(b),g=(f||b).length,h=a>0?0:g-1;for(e||(d=b[f?f[h]:h],h+=a);h>=0&&h<g;h+=a){var i=f?f[h]:h;d=c(d,b[i],i,b)}return d};return function(a,c,d,e){var f=arguments.length>=3;return b(a,T(c,e,4),d,f)}}function za(a,b,c){var d=[];return b=W(b,c),wa(a,function(a,c,e){b(a,c,e)&&d.push(a)}),d}function Aa(a,b,c){return za(a,ma(W(b)),c)}function Ba(a,b,c){b=W(b,c);for(var d=!sc(a)&&r(a),e=(d||a).length,f=0;f<e;f++){var g=d?d[f]:f;if(!b(a[g],g,a))return!1}return!0}function Ca(a,b,c){b=W(b,c);for(var d=!sc(a)&&r(a),e=(d||a).length,f=0;f<e;f++){var g=d?d[f]:f;if(b(a[g],g,a))return!0}return!1}function Da(a,b,c,d){return sc(a)||(a=B(a)),("number"!=typeof c||d)&&(c=0),zc(a,b,c)>=0}function Ea(a,b){return xa(a,S(b))}function Fa(a,b){return za(a,R(b))}function Ga(a,b,c){
2var d,e,f=-1/0,g=-1/0;if(null==b||"number"==typeof b&&"object"!=typeof a[0]&&null!=a){a=sc(a)?a:B(a);for(var h=0,i=a.length;h<i;h++)null!=(d=a[h])&&d>f&&(f=d)}else b=W(b,c),wa(a,function(a,c,d){((e=b(a,c,d))>g||e===-1/0&&f===-1/0)&&(f=a,g=e)});return f}function Ha(a,b,c){var d,e,f=1/0,g=1/0;if(null==b||"number"==typeof b&&"object"!=typeof a[0]&&null!=a){a=sc(a)?a:B(a);for(var h=0,i=a.length;h<i;h++)null!=(d=a[h])&&d<f&&(f=d)}else b=W(b,c),wa(a,function(a,c,d){((e=b(a,c,d))<g||e===1/0&&f===1/0)&&(f=a,g=e)});return f}function Ia(a){return a?Kb(a)?hb.call(a):vb(a)?a.match(Ec):sc(a)?xa(a,Q):B(a):[]}function Ja(a,b,c){if(null==b||c)return sc(a)||(a=B(a)),a[_(a.length-1)];var d=Ia(a),e=Rb(d);b=Math.max(Math.min(b,e),0);for(var f=e-1,g=0;g<b;g++){var h=_(g,f),i=d[g];d[g]=d[h],d[h]=i}return d.slice(0,b)}function Ka(a){return Ja(a,1/0)}function La(a,b,c){var d=0;return b=W(b,c),Ea(xa(a,function(a,c,e){return{value:a,index:d++,criteria:b(a,c,e)}}).sort(function(a,b){var c=a.criteria,d=b.criteria;if(c!==d){if(c>d||void 0===c)return 1;if(c<d||void 0===d)return-1}return a.index-b.index}),"value")}function Ma(a,b){return function(c,d,e){var f=b?[[],[]]:{};return d=W(d,e),wa(c,function(b,e){var g=d(b,e,c);a(f,b,g)}),f}}function Na(a){return null==a?0:sc(a)?a.length:r(a).length}function Oa(a,b,c){return b in c}function Pa(a,b,c){return hb.call(a,0,Math.max(0,a.length-(null==b||c?1:b)))}function Qa(a,b,c){return null==a||a.length<1?null==b||c?void 0:[]:null==b||c?a[0]:Pa(a,a.length-b)}function Ra(a,b,c){return hb.call(a,null==b||c?1:b)}function Sa(a,b,c){return null==a||a.length<1?null==b||c?void 0:[]:null==b||c?a[a.length-1]:Ra(a,Math.max(0,a.length-b))}function Ta(a){return za(a,Boolean)}function Ua(a,b){return ha(a,b,!1)}
2function Va(a,b,c,d){e(b)||(d=c,c=b,b=!1),null!=c&&(c=W(c,d));for(var f=[],g=[],h=0,i=Rb(a);h<i;h++){var j=a[h],k=c?c(j,h,a):j;b&&!c?(h&&g===k||f.push(j),g=k):c?Da(g,k)||(g.push(k),f.push(j)):Da(f,j)||f.push(j)}return f}function Wa(a){for(var b=[],c=arguments.length,d=0,e=Rb(a);d<e;d++){var f=a[d];if(!Da(b,f)){var g;for(g=1;g<c&&Da(arguments[g],f);g++);g===c&&b.push(f)}}return b}function Xa(a){for(var b=a&&Ga(a,Rb).length||0,c=Array(b),d=0;d<b;d++)c[d]=Ea(a,d);return c}function Ya(a,b){for(var c={},d=0,e=Rb(a);d<e;d++)b?c[a[d]]=b[d]:c[a[d][0]]=a[d][1];return c}function Za(a,b,c){null==b&&(b=a||0,a=0),c||(c=b<a?-1:1);for(var d=Math.max(Math.ceil((b-a)/c),0),e=Array(d),f=0;f<d;f++,a+=c)e[f]=a;return e}function $a(a,b){if(null==b||b<1)return[];for(var c=[],d=0,e=a.length;d<e;)c.push(hb.call(a,d,d+=b));return c}function _a(a,b){return a._chain?u(b).chain():b}function ab(a){return wa(E(a),function(b){var c=u[b]=a[b];u.prototype[b]=function(){var a=[this._wrapped];return gb.apply(a,arguments),_a(this,c.apply(u,a))}}),u}var bb="1.13.6",cb="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global||Function("return this")()||{},db=Array.prototype,eb=Object.prototype,fb="undefined"!=typeof Symbol?Symbol.prototype:null,gb=db.push,hb=db.slice,ib=eb.toString,jb=eb.hasOwnProperty,kb="undefined"!=typeof ArrayBuffer,lb="undefined"!=typeof DataView,mb=Array.isArray,nb=Object.keys,ob=Object.create,pb=kb&&ArrayBuffer.isView,qb=isNaN,rb=isFinite,sb=!{toString:null}.propertyIsEnumerable("toString"),tb=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],ub=Math.pow(2,53)-1,vb=g("String"),wb=g("Number"),xb=g("Date"),yb=g("RegExp"),zb=g("Error"),Ab=g("Symbol"),Bb=g("ArrayBuffer"),Cb=g("Function"),Db=cb.document&&cb.document.childNodes;"function"!=typeof/./&&"object"!=typeof Int8Array&&"function"!=typeof Db&&(Cb=function(a){return"function"==typeof a||!1});var Eb=Cb,Fb=g("Object"),Gb=lb&&Fb(new DataView(new ArrayBuffer(8))),Hb="undefined"!=typeof Map&&Fb(new Map),Ib=g("DataView"),Jb=Gb?h:Ib,Kb=mb||g("Array"),Lb=g("Arguments");!function(){Lb(arguments)||(Lb=function(a){return i(a,"callee")})}();var Mb=Lb,Nb=n("byteLength"),Ob=m(Nb),Pb=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/,Qb=kb?o:l(!1),Rb=n("length");u.VERSION=bb,u.prototype.value=function(){return this._wrapped},u.prototype.valueOf=u.prototype.toJSON=u.prototype.value,u.prototype.toString=function(){return String(this._wrapped)};var Sb="[object DataView]",Tb="forEach",Ub="has",Vb=["clear","delete"],Wb=["get",Ub,"set"],Xb=Vb.concat(Tb,Wb),Yb=Vb.concat(Wb),Zb=["add"].concat(Vb,Tb,Ub),$b=Hb?A(Xb):g("Map"),_b=Hb?A(Yb):g("WeakMap"),ac=Hb?A(Zb):g("Set"),bc=g("WeakSet"),cc=F(z),dc=F(r),ec=F(z,!0);u.toPath=L,u.iteratee=V;var fc=Date.now||function(){return(new Date).getTime()},gc={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},hc=aa(gc),ic=D(gc),jc=aa(ic),kc=u.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},lc=/(.)^/,mc={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},nc=/\\|'|\r|\n|\u2028|\u2029/g,oc=/^\s*(\w|\$)+\s*$/,pc=0,qc=a(function(a,b){var c=qc.placeholder,d=function(){for(var e=0,f=b.length,g=Array(f),h=0;h<f;h++)g[h]=b[h]===c?arguments[e++]:b[h];for(;e<arguments.length;)g.push(arguments[e++]);return ga(a,d,this,this,g)};return d});qc.placeholder=u;var rc=a(function(b,c,d){if(!Eb(b))throw new TypeError("Bind must be called on a function");var e=a(function(a){return ga(b,e,c,this,d.concat(a))});return e}),sc=m(Rb),tc=a(function(a,b){b=ha(b,!1,!1);var c=b.length;if(c<1)throw new Error("bindAll must be passed function names");for(;c--;){var d=b[c];a[d]=rc(a[d],a)}return a}),uc=a(function(a,b,c){return setTimeout(function(){return a.apply(null,c)},b)}),vc=qc(uc,u,1),wc=qc(pa,2),xc=ra(1),yc=ra(-1),zc=ta(1,xc,sa),Ac=ta(-1,yc),Bc=ya(1),Cc=ya(-1),Dc=a(function(a,b,c){var d,e;return Eb(b)?e=b:(b=M(b),d=b.slice(0,-1),b=b[b.length-1]),xa(a,function(a){var f=e;if(!f){if(d&&d.length&&(a=N(a,d)),null==a)return;f=a[b]}return null==f?f:f.apply(a,c)})}),Ec=/[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g,Fc=Ma(function(a,b,c){i(a,c)?a[c].push(b):a[c]=[b]}),Gc=Ma(function(a,b,c){a[c]=b}),Hc=Ma(function(a,b,c){i(a,c)?a[c]++:a[c]=1}),Ic=Ma(function(a,b,c){a[c?0:1].push(b)},!0),Jc=a(function(a,b){var c={},d=b[0];if(null==a)return c;Eb(d)?(b.length>1&&(d=T(d,b[1])),b=z(a)):(d=Oa,b=ha(b,!1,!1),a=Object(a));for(var e=0,f=b.length;e<f;e++){var g=b[e],h=a[g];d(h,g,a)&&(c[g]=h)}return c}),Kc=a(function(a,b){var c,d=b[0];return Eb(d)?(d=ma(d),b.length>1&&(c=b[1])):(b=xa(ha(b,!1,!1),String),d=function(a,c){return!Da(b,c)}),Jc(a,d,c)}),Lc=a(function(a,b){return b=ha(b,!0,!0),za(a,function(a){return!Da(b,a)})}),Mc=a(function(a,b){return Lc(a,b)}),Nc=a(function(a){return Va(ha(a,!0,!0))}),Oc=a(Xa);wa(["pop","push","reverse","shift","sort","splice","unshift"],function(a){var b=db[a];u.prototype[a]=function(){var c=this._wrapped;return null!=c&&(b.apply(c,arguments),"shift"!==a&&"splice"!==a||0!==c.length||delete c[0]),_a(this,c)}}),wa(["concat","join","slice"],function(a){var b=db[a];u.prototype[a]=function(){var a=this._wrapped;return null!=a&&(a=b.apply(a,arguments)),_a(this,a)}});var Pc={__proto__:null,VERSION:bb,restArguments:a,isObject:b,isNull:c,isUndefined:d,isBoolean:e,isElement:f,isString:vb,isNumber:wb,isDate:xb,isRegExp:yb,isError:zb,isSymbol:Ab,isArrayBuffer:Bb,isDataView:Jb,isArray:Kb,isFunction:Eb,isArguments:Mb,isFinite:j,isNaN:k,isTypedArray:Qb,isEmpty:s,isMatch:t,isEqual:y,isMap:$b,isWeakMap:_b,isSet:ac,isWeakSet:bc,keys:r,allKeys:z,values:B,pairs:C,invert:D,functions:E,methods:E,extend:cc,extendOwn:dc,assign:dc,defaults:ec,create:I,clone:J,tap:K,get:O,has:P,mapObject:X,identity:Q,constant:l,noop:Y,toPath:L,property:S,propertyOf:Z,matcher:R,matches:R,times:$,random:_,now:fc,escape:hc,unescape:jc,templateSettings:kc,template:ca,result:da,uniqueId:ea,chain:fa,iteratee:V,partial:qc,bind:rc,bindAll:tc,memoize:ia,delay:uc,defer:vc,throttle:ja,debounce:ka,wrap:la,negate:ma,compose:na,after:oa,before:pa,once:wc,findKey:qa,findIndex:xc,findLastIndex:yc,sortedIndex:sa,indexOf:zc,lastIndexOf:Ac,find:ua,detect:ua,findWhere:va,each:wa,forEac
2h:wa,map:xa,collect:xa,reduce:Bc,foldl:Bc,inject:Bc,reduceRight:Cc,foldr:Cc,filter:za,select:za,reject:Aa,every:Ba,all:Ba,some:Ca,any:Ca,contains:Da,includes:Da,include:Da,invoke:Dc,pluck:Ea,where:Fa,max:Ga,min:Ha,shuffle:Ka,sample:Ja,sortBy:La,groupBy:Fc,indexBy:Gc,countBy:Hc,partition:Ic,toArray:Ia,size:Na,pick:Jc,omit:Kc,first:Qa,head:Qa,take:Qa,initial:Pa,last:Sa,rest:Ra,tail:Ra,drop:Ra,compact:Ta,flatten:Ua,without:Mc,uniq:Va,unique:Va,union:Nc,intersection:Wa,difference:Lc,unzip:Xa,transpose:Xa,zip:Oc,object:Ya,range:Za,chunk:$a,mixin:ab,default:u},Qc=ab(Pc);return Qc._=Qc,Qc}),function(a,b){if("function"==typeof define&&define.amd)define("backbone",["underscore","jquery","exports"],function(c,d,e){a.Backbone=b(a,e,c,d)});else if("undefined"!=typeof exports){var c=require("underscore");b(a,exports,c)}else a.Backbone=b(a,{},a._,a.jQuery||a.Zepto||a.ender||a.$)}(this,function(a,b,c,d){var e=a.Backbone,f=[],g=(f.push,f.slice);f.splice;b.VERSION="1.1.2",b.$=d,b.noConflict=function(){return a.Backbone=e,this},b.emulateHTTP=!1,b.emulateJSON=!1;var h=b.Events={on:function(a,b,c){return j(this,"on",a,[b,c])&&b?(this._events||(this._events={}),(this._events[a]||(this._events[a]=[])).push({callback:b,context:c,ctx:c||this}),this):this},once:function(a,b,d){if(!j(this,"once",a,[b,d])||!b)return this;var e=this,f=c.once(function(){e.off(a,f),b.apply(this,arguments)});return f._callback=b,this.on(a,f,d)},off:function(a,b,d){var e,f,g,h,i,k,l,m;if(!this._events||!j(this,"off",a,[b,d]))return this;if(!a&&!b&&!d)return this._events=void 0,this;for(h=a?[a]:c.keys(this._events),i=0,k=h.length;i<k;i++)if(a=h[i],g=this._events[a]){if(this._events[a]=e=[],b||d)for(l=0,m=g.length;l<m;l++)f=g[l],(b&&b!==f.callback&&b!==f.callback._callback||d&&d!==f.context)&&e.push(f);e.length||delete this._events[a]}return this},trigger:function(a){if(!this._events)return this;var b=g.call(arguments,1);if(!j(this,"trigger",a,b))return this;var c=this._events[a],d=this._events.all;return c&&k(c,b),d&&k(d,arguments),this},stopListening:function(a,b,d){var e=this._listeningTo;if(!e)return this;var f=!b&&!d;d||"object"!=typeof b||(d=this),a&&((e={})[a._listenId]=a);for(var g in e)a=e[g],a.off(b,d,this),(f||c.isEmpty(a._events))&&delete this._listeningTo[g];return this}},i=/\s+/,j=function(a,b,c,d){if(!c)return!0;if("object"==typeof c){for(var e in c)a[b].apply(a,[e,c[e]].concat(d));return!1}if(i.test(c)){for(var f=c.split(i),g=0,h=f.length;g<h;g++)a[b].apply(a,[f[g]].concat(d));return!1}return!0},k=function(a,b){var c,d=-1,e=a.length,f=b[0],g=b[1],h=b[2];switch(b.length){case 0:for(;++d<e;)(c=a[d]).callback.call(c.ctx);return;case 1:for(;++d<e;)(c=a[d]).callback.call(c.ctx,f);return;case 2:for(;++d<e;)(c=a[d]).callback.call(c.ctx,f,g);return;case 3:for(;++d<e;)(c=a[d]).callback.call(c.ctx,f,g,h);return;default:for(;++d<e;)(c=a[d]).callback.apply(c.ctx,b);return}},l={listenTo:"on",listenToOnce:"once"};c.each(l,function(a,b){h[b]=function(b,d,e){return(this._listeningTo||(this._listeningTo={}))[b._listenId||(b._listenId=c.uniqueId("l"))]=b,e||"object"!=typeof d||(e=this),b[a](d,e,this),this}}),h.bind=h.on,h.unbind=h.off,c.extend(b,h);var m=b.Model=function(a,b){var d=a||{};b||(b={}),this.cid=c.uniqueId("c"),this.attributes={},b.collection&&(this.collection=b.collection),b.parse&&(d=this.parse(d,b)||{}),d=c.defaults({},d,c.result(this,"defaults")),this.set(d,b),this.changed={},this.initialize.apply(this,arguments)};c.extend(m.prototype,h,{changed:null,validationError:null,idAttribute:"id",initialize:function(){},toJSON:function(a){return c.clone(this.attributes)},sync:function(){return b.sync.apply(this,arguments)},get:function(a){return this.attributes[a]},escape:function(a){return c.escape(this.get(a))},has:function(a){return null!=this.get(a)},set:function(a,b,d){var e,f,g,h,i,j,k,l;if(null==a)return this;if("object"==typeof a?(f=a,d=b):(f={})[a]=b,d||(d={}),!this._validate(f,d))return!1;g=d.unset,i=d.silent,h=[],j=this._changing,this._changing=!0,j||(this._previousAttributes=c.clone(this.attributes),this.changed={}),l=this.attributes,k=this._previousAttributes,this.idAttribute in f&&(this.id=f[this.idAttribute]);for(e in f)b=f[e],c.isEqual(l[e],b)||h.push(e),c.isEqual(k[e],b)?delete this.changed[e]:this.changed[e]=b,g?delete l[e]:l[e]=b;
2if(!i){h.length&&(this._pending=d);for(var m=0,n=h.length;m<n;m++)this.trigger("change:"+h[m],this,l[h[m]],d)}if(j)return this;if(!i)for(;this._pending;)d=this._pending,this._pending=!1,this.trigger("change",this,d);return this._pending=!1,this._changing=!1,this},unset:function(a,b){return this.set(a,void 0,c.extend({},b,{unset:!0}))},clear:function(a){var b={};for(var d in this.attributes)b[d]=void 0;return this.set(b,c.extend({},a,{unset:!0}))},hasChanged:function(a){return null==a?!c.isEmpty(this.changed):c.has(this.changed,a)},changedAttributes:function(a){if(!a)return!!this.hasChanged()&&c.clone(this.changed);var b,d=!1,e=this._changing?this._previousAttributes:this.attributes;for(var f in a)c.isEqual(e[f],b=a[f])||((d||(d={}))[f]=b);return d},previous:function(a){return null!=a&&this._previousAttributes?this._previousAttributes[a]:null},previousAttributes:function(){return c.clone(this._previousAttributes)},fetch:function(a){a=a?c.clone(a):{},void 0===a.parse&&(a.parse=!0);var b=this,d=a.success;return a.success=function(c){if(!b.set(b.parse(c,a),a))return!1;d&&d(b,c,a),b.trigger("sync",b,c,a)},L(this,a),this.sync("read",this,a)},save:function(a,b,d){var e,f,g,h=this.attributes;if(null==a||"object"==typeof a?(e=a,d=b):(e={})[a]=b,d=c.extend({validate:!0},d),e&&!d.wait){if(!this.set(e,d))return!1}else if(!this._validate(e,d))return!1;e&&d.wait&&(this.attributes=c.extend({},h,e)),void 0===d.parse&&(d.parse=!0);var i=this,j=d.success;return d.success=function(a){i.attributes=h;var b=i.parse(a,d);if(d.wait&&(b=c.extend(e||{},b)),c.isObject(b)&&!i.set(b,d))return!1;j&&j(i,a,d),i.trigger("sync",i,a,d)},L(this,d),f=this.isNew()?"create":d.patch?"patch":"update","patch"===f&&(d.attrs=e),g=this.sync(f,this,d),e&&d.wait&&(this.attributes=h),g},destroy:function(a){a=a?c.clone(a):{};var b=this,d=a.success,e=function(){b.trigger("destroy",b,b.collection,a)};if(a.success=function(c){(a.wait||b.isNew())&&e(),d&&d(b,c,a),b.isNew()||b.trigger("sync",b,c,a)},this.isNew())return a.success(),!1;L(this,a);var f=this.sync("delete",this,a);return a.wait||e(),f},url:function(){var a=c.result(this,"urlRoot")||c.result(this.collection,"url")||K();return this.isNew()?a:a.replace(/([^\/])$/,"$1/")+encodeURIComponent(this.id)},parse:function(a,b){return a},clone:function(){return new this.constructor(this.attributes)},isNew:function(){return!this.has(this.idAttribute)},isValid:function(a){return this._validate({},c.extend(a||{},{validate:!0}))},_validate:function(a,b){if(!b.validate||!this.validate)return!0;a=c.extend({},this.attributes,a);var d=this.validationError=this.validate(a,b)||null;return!d||(this.trigger("invalid",this,d,c.extend(b,{validationError:d})),!1)}});var n=["keys","values","pairs","invert","pick","omit"];c.each(n,function(a){m.prototype[a]=function(){var b=g.call(arguments);return b.unshift(this.attributes),c[a].apply(c,b)}});var o=b.Collection=function(a,b){b||(b={}),b.model&&(this.model=b.model),void 0!==b.comparator&&(this.comparator=b.comparator),this._reset(),this.initialize.apply(this,arguments),a&&this.reset(a,c.extend({silent:!0},b))},p={add:!0,remove:!0,merge:!0},q={add:!0,remove:!1};c.extend(o.prototype,h,{model:m,initialize:function(){},toJSON:function(a){return this.map(function(b){return b.toJSON(a)})},sync:function(){return b.sync.apply(this,arguments)},add:function(a,b){return this.set(a,c.extend({merge:!1},b,q))},remove:function(a,b){var d=!c.isArray(a);a=d?[a]:c.clone(a),b||(b={});var e,f,g,h;for(e=0,f=a.length;e<f;e++)(h=a[e]=this.get(a[e]))&&(delete this._byId[h.id],delete this._byId[h.cid],g=this.indexOf(h),this.models.splice(g,1),this.length--,b.silent||(b.index=g,h.trigger("remove",h,this,b)),this._removeReference(h,b));return d?a[0]:a},set:function(a,b){b=c.defaults({},b,p),b.parse&&(a=this.parse(a,b));var d=!c.isArray(a);a=d?a?[a]:[]:c.clone(a);var e,f,g,h,i,j,k,l=b.at,n=this.model,o=this.comparator&&null==l&&!1!==b.sort,q=c.isString(this.comparator)?this.comparator:null,r=[],s=[],t={},u=b.add,v=b.merge,w=b.remove,x=!(o||!u||!w)&&[];for(e=0,f=a.length;e<f;e++){if(i=a[e]||{},g=i instanceof m?h=i:i[n.prototype.idAttribute||"id"],j=this.get(g))w&&(t[j.cid]=!0),v&&(i=i===h?h.attributes:i,b.parse&&(i=j.parse(i,b)),j.set(i,b),o&&!k&&j.hasChanged(q)&&(k=!0)),a[e]=j;else if(u){if(!(h=a[e]=this._prepareModel(i,b)))continue;r.push(h),this._addReference(h,b)}h=j||h,!x||!h.isNew()&&t[h.id]||x.push(h),t[h.id]=!0}if(w){for(e=0,f=this.length;e<f;++e)t[(h=this.models[e]).cid]||s.push(h);s.length&&this.remove(s,b)}if(r.length||x&&x.length)if(o&&(k=!0),this.length+=r.length,null!=l)for(e=0,f=r.length;e<f;e++)this.models.splice(l+e,0,r[e]);else{x&&(this.models.length=0);var y=x||r;for(e=0,f=y.length;e<f;e++)this.models.push(y[e])}if(k&&this.sort({silent:!0}),!b.silent){for(e=0,f=r.length;e<f;e++)(h=r[e]).trigger("add",h,this,b);(k||x&&x.length)&&this.trigger("sort",this,b)}return d?a[0]:a},reset:function(a,b){b||(b={});for(var d=0,e=this.models.length;d<e;d++)this._removeReference(this.models[d],b);return b.previousModels=this.models,this._reset(),a=this.add(a,c.extend({silent:!0},b)),b.silent||this.trigger("reset",this,b),a},push:function(a,b){return this.add(a,c.extend({at:this.length},b))},pop:function(a){var b=this.at(this.length-1);return this.remove(b,a),b},unshift:function(a,b){return this.add(a,c.extend({at:0},b))},shift:function(a){var b=this.at(0);return this.remove(b,a),b},slice:function(){return g.apply(this.models,arguments)}
2,get:function(a){if(null!=a)return this._byId[a]||this._byId[a.id]||this._byId[a.cid]},at:function(a){return this.models[a]},where:function(a,b){return c.isEmpty(a)?b?void 0:[]:this[b?"find":"filter"](function(b){for(var c in a)if(a[c]!==b.get(c))return!1;return!0})},findWhere:function(a){return this.where(a,!0)},sort:function(a){if(!this.comparator)throw new Error("Cannot sort a set without a comparator");return a||(a={}),c.isString(this.comparator)||1===this.comparator.length?this.models=this.sortBy(this.comparator,this):this.models.sort(c.bind(this.comparator,this)),a.silent||this.trigger("sort",this,a),this},pluck:function(a){return c.invoke(this.models,"get",a)},fetch:function(a){a=a?c.clone(a):{},void 0===a.parse&&(a.parse=!0);var b=a.success,d=this;return a.success=function(c){var e=a.reset?"reset":"set";d[e](c,a),b&&b(d,c,a),d.trigger("sync",d,c,a)},L(this,a),this.sync("read",this,a)},create:function(a,b){if(b=b?c.clone(b):{},!(a=this._prepareModel(a,b)))return!1;b.wait||this.add(a,b);var d=this,e=b.success;return b.success=function(a,c){b.wait&&d.add(a,b),e&&e(a,c,b)},a.save(null,b),a},parse:function(a,b){return a},clone:function(){return new this.constructor(this.models)},_reset:function(){this.length=0,this.models=[],this._byId={}},_prepareModel:function(a,b){if(a instanceof m)return a;b=b?c.clone(b):{},b.collection=this;var d=new this.model(a,b);return d.validationError?(this.trigger("invalid",this,d.validationError,b),!1):d},_addReference:function(a,b){this._byId[a.cid]=a,null!=a.id&&(this._byId[a.id]=a),a.collection||(a.collection=this),a.on("all",this._onModelEvent,this)},_removeReference:function(a,b){this===a.collection&&delete a.collection,a.off("all",this._onModelEvent,this)},_onModelEvent:function(a,b,c,d){("add"!==a&&"remove"!==a||c===this)&&("destroy"===a&&this.remove(b,d),b&&a==="change:"+b.idAttribute&&(delete this._byId[b.previous(b.idAttribute)],null!=b.id&&(this._byId[b.id]=b)),this.trigger.apply(this,arguments))}});var r=["forEach","each","map","collect","reduce","foldl","inject","reduceRight","foldr","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","max","min","toArray","size","first","head","take","initial","rest","tail","drop","last","without","difference","indexOf","shuffle","lastIndexOf","isEmpty","chain","sample"];c.each(r,function(a){o.prototype[a]=function(){var b=g.call(arguments);return b.unshift(this.models),c[a].apply(c,b)}});var s=["groupBy","countBy","sortBy","indexBy"];c.each(s,function(a){o.prototype[a]=function(b,d){var e=c.isFunction(b)?b:function(a){return a.get(b)};return c[a](this.models,e,d)}});
2var t=b.View=function(a){this.cid=c.uniqueId("view"),a||(a={}),c.extend(this,c.pick(a,v)),this._ensureElement(),this.initialize.apply(this,arguments),this.delegateEvents()},u=/^(\S+)\s*(.*)$/,v=["model","collection","el","id","attributes","className","tagName","events"];c.extend(t.prototype,h,{tagName:"div",$:function(a){return this.$el.find(a)},initialize:function(){},render:function(){return this},remove:function(){return this.$el.remove(),this.stopListening(),this},setElement:function(a,c){return this.$el&&this.undelegateEvents(),this.$el=a instanceof b.$?a:b.$(a),this.el=this.$el[0],!1!==c&&this.delegateEvents(),this},delegateEvents:function(a){if(!a&&!(a=c.result(this,"events")))return this;this.undelegateEvents();for(var b in a){var d=a[b];if(c.isFunction(d)||(d=this[a[b]]),d){var e=b.match(u),f=e[1],g=e[2];d=c.bind(d,this),f+=".delegateEvents"+this.cid,""===g?this.$el.on(f,d):this.$el.on(f,g,d)}}return this},undelegateEvents:function(){return this.$el.off(".delegateEvents"+this.cid),this},_ensureElement:function(){if(this.el)this.setElement(c.result(this,"el"),!1);else{var a=c.extend({},c.result(this,"attributes"));this.id&&(a.id=c.result(this,"id")),this.className&&(a.class=c.result(this,"className"));var d=b.$("<"+c.result(this,"tagName")+">").attr(a);this.setElement(d,!1)}}}),b.sync=function(a,d,e){var f=x[a];c.defaults(e||(e={}),{emulateHTTP:b.emulateHTTP,emulateJSON:b.emulateJSON});var g={type:f,dataType:"json"};if(e.url||(g.url=c.result(d,"url")||K()),null!=e.data||!d||"create"!==a&&"update"!==a&&"patch"!==a||(g.contentType="application/json",g.data=JSON.stringify(e.attrs||d.toJSON(e))),e.emulateJSON&&(g.contentType="application/x-www-form-urlencoded",g.data=g.data?{model:g.data}:{}),e.emulateHTTP&&("PUT"===f||"DELETE"===f||"PATCH"===f)){g.type="POST",e.emulateJSON&&(g.data._method=f);var h=e.beforeSend;e.beforeSend=function(a){if(a.setRequestHeader("X-HTTP-Method-Override",f),h)return h.apply(this,arguments)}}"GET"===g.type||e.emulateJSON||(g.processData=!1),"PATCH"===g.type&&w&&(g.xhr=function(){return new ActiveXObject("Microsoft.XMLHTTP")});var i=e.xhr=b.ajax(c.extend(g,e));return d.trigger("request",d,i,e),i};var w=!("undefined"==typeof window||!window.ActiveXObject||window.XMLHttpRequest&&(new XMLHttpRequest).dispatchEvent),x={create:"POST",update:"PUT",patch:"PATCH",delete:"DELETE",read:"GET"};b.ajax=function(){return b.$.ajax.apply(b.$,arguments)};var y=b.Router=function(a){a||(a={}),a.routes&&(this.routes=a.routes),this._bindRoutes(),this.initialize.apply(this,arguments)},z=/\((.*?)\)/g,A=/(\(\?)?:\w+/g,B=/\*\w+/g,C=/[\-{}\[\]+?.,\\\^$|#\s]/g;c.extend(y.prototype,h,{initialize:function(){},route:function(a,d,e){c.isRegExp(a)||(a=this._routeToRegExp(a)),c.isFunction(d)&&(e=d,d=""),e||(e=this[d]);var f=this;return b.history.route(a,function(c){var g=f._extractParameters(a,c);f.execute(e,g),f.trigger.apply(f,["route:"+d].concat(g)),f.trigger("route",d,g),b.history.trigger("route",f,d,g)}),this},execute:function(a,b){a&&a.apply(this,b)},navigate:function(a,c){return b.history.navigate(a,c),this},_bindRoutes:function(){if(this.routes){this.routes=c.result(this,"routes");for(var a,b=c.keys(this.routes);null!=(a=b.pop());)this.route(a,this.routes[a])}},_routeToRegExp:function(a){return a=a.replace(C,"\\$&").replace(z,"(?:$1)?").replace(A,function(a,b){return b?a:"([^/?]+)"}).replace(B,"([^?]*?)"),new RegExp("^"+a+"(?:\\?([\\s\\S]*))?$")},_extractParameters:function(a,b){var d=a.exec(b).slice(1);return c.map(d,function(a,b){return b===d.length-1?a||null:a?decodeURIComponent(a):null})}});var D=b.History=function(){this.handlers=[],c.bindAll(this,"checkUrl"),"undefined"!=typeof window&&(this.location=window.location,this.history=window.history)},E=/^[#\/]|\s+$/g,F=/^\/+|\/+$/g,G=/msie [\w.]+/,H=/\/$/,I=/#.*$/;D.started=!1,c.extend(D.prototype,h,{interval:50,atRoot:function(){return this.location.pathname.replace(/[^\/]$/,"$&/")===this.root},getHash:function(a){var b=(a||this).location.href.match(/#(.*)$/);return b?b[1]:""},getFragment:function(a,b){if(null==a)if(this._hasPushState||!this._wantsHashChange||b){a=decodeURI(this.location.pathname+this.location.search);var c=this.root.replace(H,"");a.indexOf(c)||(a=a.slice(c.length))}else a=this.getHash();return a.replace(E,"")}
2,start:function(a){if(D.started)throw new Error("Backbone.history has already been started");D.started=!0,this.options=c.extend({root:"/"},this.options,a),this.root=this.options.root,this._wantsHashChange=!1!==this.options.hashChange,this._wantsPushState=!!this.options.pushState,this._hasPushState=!!(this.options.pushState&&this.history&&this.history.pushState);var d=this.getFragment(),e=document.documentMode,f=G.exec(navigator.userAgent.toLowerCase())&&(!e||e<=7);if(this.root=("/"+this.root+"/").replace(F,"/"),f&&this._wantsHashChange){var g=b.$('<iframe src="javascript:0" tabindex="-1">');this.iframe=g.hide().appendTo("body")[0].contentWindow,this.navigate(d)}this._hasPushState?b.$(window).on("popstate",this.checkUrl):this._wantsHashChange&&"onhashchange"in window&&!f?b.$(window).on("hashchange",this.checkUrl):this._wantsHashChange&&(this._checkUrlInterval=setInterval(this.checkUrl,this.interval)),this.fragment=d;var h=this.location;if(this._wantsHashChange&&this._wantsPushState){if(!this._hasPushState&&!this.atRoot())return this.fragment=this.getFragment(null,!0),this.location.replace(this.root+"#"+this.fragment),!0;this._hasPushState&&this.atRoot()&&h.hash&&(this.fragment=this.getHash().replace(E,""),this.history.replaceState({},document.title,this.root+this.fragment))}if(!this.options.silent)return this.loadUrl()},stop:function(){b.$(window).off("popstate",this.checkUrl).off("hashchange",this.checkUrl),this._checkUrlInterval&&clearInterval(this._checkUrlInterval),D.started=!1},route:function(a,b){this.handlers.unshift({route:a,callback:b})},checkUrl:function(a){var b=this.getFragment();if(b===this.fragment&&this.iframe&&(b=this.getFragment(this.getHash(this.iframe))),b===this.fragment)return!1;this.iframe&&this.navigate(b),this.loadUrl()},loadUrl:function(a){return a=this.fragment=this.getFragment(a),c.any(this.handlers,function(b){if(b.route.test(a))return b.callback(a),!0})},navigate:function(a,b){if(!D.started)return!1;b&&!0!==b||(b={trigger:!!b});var c=this.root+(a=this.getFragment(a||""));if(a=a.replace(I,""),this.fragment!==a){if(this.fragment=a,""===a&&"/"!==c&&(c=c.slice(0,-1)),this._hasPushState)this.history[b.replace?"replaceState":"pushState"]({},document.title,c);else{if(!this._wantsHashChange)return this.location.assign(c);this._updateHash(this.location,a,b.replace),this.iframe&&a!==this.getFragment(this.getHash(this.iframe))&&(b.replace||this.iframe.document.open().close(),this._updateHash(this.iframe.location,a,b.replace))}return b.trigger?this.loadUrl(a):void 0}},_updateHash:function(a,b,c){if(c){var d=a.href.replace(/(javascript:|#).*$/,"");a.replace(d+"#"+b)}else a.hash="#"+b}}),b.history=new D;var J=function(a,b){var d,e=this;d=a&&c.has(a,"constructor")?a.constructor:function(){return e.apply(this,arguments)},c.extend(d,e,b);var f=function(){this.constructor=d};return f.prototype=e.prototype,d.prototype=new f,a&&c.extend(d.prototype,a),d.__super__=e.prototype,d};m.extend=o.extend=y.extend=t.extend=D.extend=J;var K=function(){throw new Error('A "url" property or function must be specified')},L=function(a,b){var c=b.error;b.error=function(d){c&&c(a,d,b),a.trigger("error",a,d,b)}};return b}),define("underscoreContrib",["underscore"],function(a){(function(){function b(a){for(var b,c=/\[("|')(.+)\1\]|([^.\[\]]+)/g,d=[];null!==(b=c.exec(a));)d.push(b[2]||b[3]);return d}"object"==typeof exports&&(a=module.exports=require("underscore"));var c=Array.prototype.concat,d=Array.prototype;d.slice;a.mixin({accessor:function(a){return function(b){return b&&b[a]}},dictionary:function(a){return function(b){return a&&b&&a[b]}},selectKeys:function(b,d){return a.pick.apply(null,c.call([b],d))},kv:function(b,c){if(a.has(b,c))return[c,b[c]]},getPath:function(a,c){c="string"==typeof c?b(c):c;for(var d=-1,e=c.length;++d<e&&null!=a;)a=a[c[d]];return d===e?a:void 0},hasPath:function(c,d){d="string"==typeof d?b(d):d;for(var e=-1,f=d.length;++e<f&&a.isObject(c);){if(!(d[e]in c))return!1;c=c[d[e]]}return e===f},keysFromPath:b,pickWhen:function(b,c){var d={};return a.each(b,function(a,e){c(b[e])&&(d[e]=b[e])}),d}
2,omitWhen:function(b,c){return a.pickWhen(b,function(a){return!c(a)})}})}).call(this)}),define("objectFactory",["underscore"],function(a){"use strict";return{getObject:function(b){function c(a){return b.apply(this,a)}if(void 0!==b)return c.prototype=b.prototype,new c(a.rest(arguments))}}}),define("pricingConstants",[],function(){"use strict";return{FINANCE_PROVIDERS:{NONE:"None",OTHER:"Other",RCI:"RCI",LINKOUT:"Linkout"},REPRESENTED_AS:{BEST_MONTHLY:"bestMonthly",FINANCE:"finance",FULL_PRICE:"fullPrice",LEASE:"lease"},PRICE_ITEM_ROLES:{PRIMARY:"primary",SECONDARY:"secondary"}}}),define("priceItem",["underscore","pricingConstants"],function(a,b){"use strict";var c=function(b){this.properties=a.pick(b,"priceCode","representedAs","showCalculatorLink")};return c.prototype.getPriceCode=function(){return this.properties.priceCode},c.prototype.getRepresentedAs=function(){return this.properties.representedAs},c.prototype.getShowCalculatorLink=function(){return this.properties.showCalculatorLink},c.prototype.isBestMonthlyPrice=function(){return this.getRepresentedAs()===b.REPRESENTED_AS.BEST_MONTHLY},c.prototype.isFinancePrice=function(){return this.getRepresentedAs()===b.REPRESENTED_AS.FINANCE},c.prototype.isFullPrice=function(){return this.getRepresentedAs()===b.REPRESENTED_AS.FULL_PRICE},c.prototype.isLeasePrice=function(){return this.getRepresentedAs()===b.REPRESENTED_AS.LEASE},c.prototype.toJSON=function(){return a.mapObject(this.properties,function(b){return a.isFunction(b&&b.toJSON)?b.toJSON():b})},c}),define("priceGroup",["underscore","objectFactory","priceItem"],function(a,b,c){"use strict";var d=function(d){this.properties=a.pick(d,"description","id","name"),d&&d.primaryPrice&&(this.properties.primaryPrice=b.getObject(c,d.primaryPrice)),d&&d.secondaryPrice&&d.secondaryPriceEnabled&&(this.properties.secondaryPrice=b.getObject(c,d.secondaryPrice)),d&&d.secondaryPriceEnabled&&(this.properties.secondaryPriceEnabled=d.secondaryPriceEnabled||!1)};return d.prototype.getDescription=function(){return this.properties.description},d.prototype.getId=function(){return this.properties.id},d.prototype.getName=function(){return this.properties.name},d.prototype.getPrimaryPriceItem=function(){return this.properties.primaryPrice},d.prototype.isSecondaryPriceItemEnabled=function(){return this.properties.secondaryPriceEnabled},d.prototype.getSecondaryPriceItem=function(){return this.isSecondaryPriceItemEnabled&&this.properties.secondaryPrice||{}},d.prototype.toJSON=function(){return a.mapObject(this.properties,function(b){return a.isFunction(b&&b.toJSON)?b.toJSON():b})},d}),define("priceGroups",["objectFactory","underscore","priceGroup"],function(a,b,c){"use strict";var d=function(d){this.items=b.map(d,function(d,e){var f=a.getObject(c,d);return b.has(f.properties,"id")||(f.properties.id=e),f})};return d.prototype.count=function(){return this.items.length},d.prototype.getById=function(a){return b.find(this.items,function(b){return b.getId()===a})},d.prototype.getByName=function(a){return b.find(this.items,function(b){return b.getName()===a})},d.prototype.toJSON=function(){return b.map(this.items,function(a){return a.toJSON()})},d}),define("storageManagerKeys",[],function(){"use strict";return{
3preferredDealerCity:{itemKey:"PreferredDealerCity"},preferredDealerState:{itemKey:"PreferredDealerState"},offerData:{itemKey:"offerData",dataKeys:{offerApplicability:"offerApplicability",offerCaveat:"offerCaveat",offerDetails:"offerDetails",offerHeadline:"offerHeadline",offerHighlight:"offerHighlight",offerHighlightedLegalNotice:"offerHighlightedLegalNotice",offerId:"offerId",offerLegalDetails:"offerLegalDetails",offerLegalDetailsHeadline:"offerLegalDetailsHeadline",offerModelName:"offerModelName",offerRegion:"offerRegion",offerStatus:"offerStatus",offerStrapline:"offerStrapline",offerTypeTitle:"offerTypeTitle",offerUrl:"offerUrl",offerValidity:"offerValidity"}},priceGroup:{itemKey:"priceGroup"},priceItem:{profileDataSession:"ProfileDataSession"},selectedBatteryLeaseOption:"SelectedBatteryLeaseOption",stickyFooterOpen:"StickyFooterOpen",loginWidgetData:{currentUrl:"currentUrl",loginSuccess:"loginSuccess",profileDataSession:"ProfileDataSession"},priceManager:{priceWarningReadStatus:"c_180-priceWarningRead"},vehicleDetails:{data:"c_160-localVehicleData"},dwsPreselectedDealer:{itemKey:"dwsPreselectedDealer",dataKeys:{dealerId:"dealerId",dealerUrl:"dealerUrl"}},multipleBrochures:{itemKey:"c_130"},vehicleDetailInformation:{itemKey:"c_141"},c_081_3:{statusKey:"c_081-3_Status"},inlineForm:{itemKey:"formSubmission",brochuresData:"brochuresData"},c_cfg:{itemKey:"c_cfg",profileDataSession:"ProfileDataSession",sessionStorage:"sessionStorage",localStorage:"localStorage"},c_307:{catAct:"cat_act",cfgBuilds:"c_cfg_builds",catGuest:"cat_guest",catConvert:"cat_convert",catActBack:"cat_act_back"},finance:{rciCustomProxyParams:"rciCustomProxyParams"},c_303:{configurationUrl:"configurationUrl",modelName:"modelName",modelCode:"modelCode",gradeName:"gradeName",engineName:"engineName",versionName:"versionName",driveTrain:"driveTrain",fuelType:"fuelType",transmission:"transmission",wheels:"wheels",colour:"colour",eimCode:"eimCode",showroomID:"showroomID",lastVisitedVehicle:"lastVisitedVehicle",showroomVehicleDetails:"showroomVehicleDetails",personalShowroomDetailUrl:"personal_showroom_detail_url"},dealerLocator:{localProfileDataSession:"localProfileDataSession",profileDataSession:"ProfileDataSession"}}}),define("storageManager",["underscore"],function(a){"use strict";function b(a){y=$.extend({},x,a),y.localStorageAvailable=v(),y.sessionStorageAvailable=w()}function c(a,b,c){var c=c||{},d="",e="",f=c.customExpiryDate,j=c.mode,k={status:z.fail};switch(d=t(f),"sessionStorage"===j&&(d=null),j=r(j)){case"localStorage":e=s(b,d),k.status=g(a,e);break;case"sessionStorage":e=s(b),k.status=h(a,e);break;case"cookie":e=s(b),k.status=i(a,e,d)}return k}function d(b,c){var c=c||{},d=c.mode;if(u(b),a.isUndefined(d)||a.isNull(d))return e(b);switch(d){case"localStorage":return j(b);case"sessionStorage":return k(b);case"cookie":return l(b);default:return null}}function e(a){var b=j(a);return b||(b=k(a))||(b=l(a)),b}function f(a,b){var b=b||{};switch(r(b.mode)){case"localStorage":n(a);break;case"sessionStorage":o(a);break;case"cookie":p(a);break;default:return null}}function g(a,b){try{return localStorage.setItem(a,b),window.dispatchEvent(new Event("storage")),z.success}catch(c){return z.fail}}function h(a,b){try{return sessionStorage.setItem(a,b),z.success}catch(c){return z.fail}}function i(b,c,d){var e,f="";a.isNull(d)||(e=new Date,e.setTime(d),f=e.toUTCString());try{return document.cookie=encodeURI(b)+"="+c+"; expires="+f+"; path=/",z.success}catch(g){return z.fail}}function j(b){var c=localStorage.getItem(b),d=null;if(a.isNull(c))return null;try{d=JSON.parse(c)}catch(e){return null}return d.value}function k(b){var c=sessionStorage.getItem(b),d=null;if(a.isNull(c))return null;try{d=JSON.parse(c)}catch(e){return null}return d.value}function l(b){var c,d={};if(!b||!q(b))return null;c=decodeURI(document.cookie.replace(new RegExp("(?:^|.*;\\s*)"+encodeURI(b).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*((?:[^;](?!;))*[^;]?).*"),"$1"));try{d=JSON.parse(c),a.isString(d)&&(d=m(d)?JSON.parse(d):{value:d})}catch(e){return null}return d.value}function m(a){try{JSON.parse(a)}catch(b){return!1}return!0}function n(a){localStorage.removeItem(a),window.dispatchEvent(new Event("storage"))}function o(a){sessionStorage.removeItem(a)}function p(a){var b=new Date(0);if(!a||!q(a))return null;document.cookie=encodeURI(a)+"=; expires="+b.toUTCString()+"; path=/"}function q(a){return new RegExp("(?:^|;\\s*)"+encodeURI(a).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=").test(document.cookie)}function r(b){return(a.isUndefined(b)||a.isNull(b))&&(b="localStorage"),"localStorage"!==b||y.localStorageAvailable?"sessionStorage"!==b||y.sessionStorageAvailable||(b="cookie"):b="cookie",b}function s(b,c){var d={};return d.value=b,a.isUndefined(c)||(d.expiryDate=c),JSON.stringify(d)}function t(b){var c=new Date,d=new Date;return b instanceof Date?b.getTime():a.isNull(b)?null:d.setDate(c.getDate()+y.defaultLifetime)}function u(b){var c=(new Date).getTime(),d={};if(!y.localStorageAvailable)return null;if(d=localStorage[b]){try{d=JSON.parse(d)}catch(e){return null}!a.isUndefined(d.expiryDate)&&d.expiryDate<c&&n(b)}}function v(){try{if(!("localStorage"in window&&window.localStorage))return!1;var a="storage_ls_test";return window.localStorage.setItem(a,"1"),window.localStorage.removeItem(a),!0}catch(b){return!1}}function w(){try{if(!("sessionStorage"in window&&window.sessionStorage))return!1;var a="storage_ss_test";return window.sessionStorage.setItem(a,"1"),window.sessionStorage.removeItem(a),!0}catch(b){return!1}}var x={localStorageAvailable:null,sessionStorageAvailable:null,defaultLifetime:14},y=null,z={success:"success",fail:"fail"};return{init:b,saveItem:c,loadItem:d,deleteItem:f}}),define("heliosAppContext",["objectFactory","priceGroups","storageManagerKeys","
3storageManager","pricingConstants"],function(a,b,c,d,e){"use strict";var f=function(a){if(!a)throw"Argument null exception: you must define `options` for `HeliosAppContext`";if(!a.HELIOS)throw"Invalid argument exception: you must define `options.HELIOS` for `HeliosAppContext`";this.options=a};return f.prototype.getBrand=function(){return this.options.HELIOS.config&&this.options.HELIOS.config.brand},f.prototype.getCountryCode=function(){return this.options.HELIOS.config&&this.options.HELIOS.config.common&&this.options.HELIOS.config.common.countryCode},f.prototype.isNissanUS=function(){return"Nissan"===this.getBrand()&&"US"===this.getCountryCode()},f.prototype.isInfinitiUS=function(){return"Infiniti"===this.getBrand()&&"US"===this.getCountryCode()},f.prototype.getPriceGroups=function(){var c;return this._priceGroups||(c=this.options.HELIOS.config&&this.options.HELIOS.config.common&&this.options.HELIOS.config.common.pricing&&this.options.HELIOS.config.common.pricing.priceGroups,this._priceGroups=a.getObject(b,c)),this._priceGroups},f.prototype.getPriceLabel=function(){var a;return this.options.HELIOS.config&&this.options.HELIOS.config.common&&this.options.HELIOS.config.common.pricing&&this.options.HELIOS.config.common.pricing.strings&&(a=this.options.HELIOS.config.common.pricing.strings.priceLabel),a},f.prototype.getUserSelectedPriceGroup=function(){var a,b,e;return this.isPriceGroupSwitchingEnabled()&&(e=d.loadItem(c.priceGroup.itemKey)),e&&(a=this.getPriceGroups()),a&&(b=a.getByName(e)),b},f.prototype.isPriceGroupSwitchingEnabled=function(){return!!(this.options.HELIOS.config&&this.options.HELIOS.config.common&&this.options.HELIOS.config.common.pricing&&this.options.HELIOS.config.common.pricing.isPriceGroupSwitchingEnabled)},f.prototype.getFinanceProvider=function(){if(this.options.HELIOS.config&&this.options.HELIOS.config.common&&this.options.HELIOS.config.common.pricing&&this.options.HELIOS.config.common.pricing.financeProvider)return this.options.HELIOS.config.common.pricing.financeProvider},f.prototype.isFinanceProviderRci=function(){return this.getFinanceProvider()===e.FINANCE_PROVIDERS.RCI},f.prototype.isFinanceProviderOther=function(){return this.getFinanceProvider()===e.FINANCE_PROVIDERS.OTHER},f.prototype.isFinanceProviderNone=function(){return this.getFinanceProvider()===e.FINANCE_PROVIDERS.NONE},f.prototype.isFinanceProviderLinkout=function(){return this.getFinanceProvider()===e.FINANCE_PROVIDERS.LINKOUT},f.prototype.getLinkoutFinancePath=function(){if(this.options.HELIOS.config&&this.options.HELIOS.config.common&&this.options.HELIOS.config.common.pricing&&this.options.HELIOS.config.common.pricing.financeCalculatorLinkoutUrl)return this.options.HELIOS.config.common.pricing.financeCalculatorLinkoutUrl},f.prototype.getExternalCalculatorErrorMessage=function(){if(this.options.HELIOS&&this.options.HELIOS.config&&this.options.HELIOS.config.common&&this.options.HELIOS.config.common.pricing&&this.options.HELIOS.config.common.pricing.strings&&this.options.HELIOS.config.common.pricing.strings.externalCalculatorErrorTitle&&this.options.HELIOS.config.common.pricing.strings.externalCalculatorErrorContent)return"<h2>"+this.options.HELIOS.config.common.pricing.strings.externalCalculatorErrorTitle+"</h2><h3>"+this.options.HELIOS.config.common.pricing.strings.externalCalculatorErrorContent+"</h3>"},f.prototype.getCurrencyCode=function(){if(this.options.HELIOS.config&&this.options.HELIOS.config.common&&this.options.HELIOS.config.common.currencyCode)return this.options.HELIOS.config.common.currencyCode},f.prototype.getAemAdminResourcePath=function(){if(this.options.HELIOS.config&&this.options.HELIOS.config.common&&this.options.HELIOS.config.common.api&&this.options.HELIOS.config.common.api.aem&&this.options.HELIOS.config.common.api.aem.secureResourcePath)return this.options.HELIOS.config.common.api.aem.secureResourcePath},f}),define("keyCodeConstants",[],function(){"use strict";return{ALT:18,ARROW_DOWN:40,ARROW_LEFT:37,ARROW_RIGHT:39,ARROW_UP:38,BACKSPACE:8,CAPS_LOCK:20,CTRL:17,DELETE:46,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,PAGE_DOWN:34,PAGE_UP:33,PAUSE_BREAK:19,SHIFT:16,SPACE:32,TAB:9,COMMAND:91}}
3),define("customSelect",["jquery","keyCodeConstants"],function(a,b){function c(b){b.on("change",d).on("focus",e).on("blur",f).on("keyup",j),b.parent().hasClass("custom-select-image")&&(b.parent().on("click",k),b.parent().find(p.ddOption).on("click",l)),a("body").click(function(b){!a(b.target).parent().is(m)&&a(p.ddList).is(":visible")&&h(a(m))})}function d(){var b,c,d=a(this);b=d.find("option:selected"),c=b.html()||d.attr("data-defaulttext")||"&nbsp;",d.siblings(n).html(c)}function e(){a(this).parent().addClass(o)}function f(){a(this).parent().removeClass(o)}function g(a){a.toggleClass("open")}function h(a){a.removeClass("open")}function i(b){var e=a(m,b).find("select");c(e),e.each(d)}function j(a){a.which!==b.ARROW_DOWN&&a.which!==b.ARROW_UP||d.call(this)}function k(){(a(this).hasClass("custom-select-image")||a(this).parent().hasClass("custom-select-image"))&&(g(a(this)),a(this).find(p.ddList).removeClass("hidden"))}function l(b){var c=a(this).find("span").text(),d=a(this).data("value"),e=a(this).parent(),f=e.siblings("select");e.siblings(n).html(c),f.children().removeAttr("selected"),f.val(d),f.trigger("change"),h(a(this).closest(m))}var m=".custom-selectbox",n=".selectedValue",o="has-focus",p={ddList:".dd-list",ddOption:".dd-list > li"};return{init:i}}),define("customTooltip",["underscore","jquery"],function(a,b){"use strict";function c(a){var c={};h=b.extend({},f,a),c={tooltipButtonText:h.tooltipButton.replace(".",""),tooltipContentText:h.tooltipContent.replace(".","")},b.extend(h,c),b(h.tooltip).each(function(){new e(b.extend({$tooltip:b(this)},h))}),"ontouchstart"in document.documentElement&&(g="touchstart"),b("body").on("click touchstart",function(a){!b(a.target).hasClass(h.tooltipButtonText)&&b(h.tooltip).hasClass("active")&&(b(a.target).parent().hasClass(h.tooltipContentText)||b(a.target).hasClass(h.tooltipContentText)||d(h))})}function d(a){b(a.tooltipButton).removeClass("active"),b(a.tooltip).removeClass("active"),b(a.tooltipContent).attr("data-open",!1)}var e,f={tooltip:".c_042B , .helios-tooltip",tooltipButton:".tooltip-button",tooltipContent:".tooltip-content"},g="click",h=null;return e=function(c){if(!(this instanceof e))return new e(c);this.options=c,this.options.$tooltip.find(this.options.tooltipButton).each(a.bind(function(c,d){b(d).on(g,a.bind(this.onClickTooltipHandler,this))},this))},e.prototype.onClickTooltipHandler=function(a){if(b(a.target).hasClass("active"))return a.preventDefault(),d(this.options),!1;d(this.options),this.options.$tooltip.find(this.options.tooltipButton).addClass("active"),this.options.$tooltip.addClass("active"),this.options.$tooltip.find(this.options.tooltipContent).each(function(a,c){var d="true"===b(c).attr("data-open");b(c).attr("data-open",!d)})},e.prototype.onMouseoutTooltipHandler=function(a){this.options.$tooltip.find(this.options.tooltipButton).removeClass("active"),this.options.$tooltip.removeClass("active"),this.options.$tooltip.find(this.options.tooltipContent).each(function(a,c){b(c).attr("data-open",!1)})},{init:c}}),define("priceCode",["underscore"],function(a){"use strict";var b=function(b){this.properties=a.pick(b,"currency","description","disclaimer","id","includesTax","label")};return b.prototype.getCurrency=function(){return this.properties.currency},b.prototype.getDescription=function(){return this.properties.description},b.prototype.getDisclaimer=function(){return this.properties.disclaimer},b.prototype.getId=function(){return this.properties.id},b.prototype.getIncludesTax=function(){return this.properties.includesTax},b.prototype.getLabel=function(){return this.properties.label},b}),define("priceCodes",["underscore","objectFactory","priceCode"],function(a,b,c){"use strict";var d=function(d){this.items=a.map(d,function(d,e){var f=b.getObject(c,d);return a.has(f.properties,"id")||(f.properties.id=e),f})};return d.prototype.getById=function(b){return a.find(this.items,function(a){return a.getId()===b})},d}),function(a,b){"object"==typeof module&&module.exports&&"function"==typeof require?module.exports=b():"function"==typeof define&&"object"==typeof define.amd?define("loglevel",b):a.log=b()}(this,function(){function a(a){return typeof console!==i&&(void 0!==console[a]?b(console,a):void 0!==console.log?b(console,"log"):h)}function b(a,b){var c=a[b];if("function"==typeof c.bind)return c.bind(a);try{return Function.prototype.bind.call(c,a)}catch(d){return function(){return Function.prototype.apply.apply(c,[a,arguments])}}}function c(a,b){return function(){typeof console!==i&&(d(b),g[a].apply(g,arguments))}}function d(a){for(var b=0;b<j.length;b++){var c=j[b];g[c]=b<a?h:g.methodFactory(c,a)}}function e(a){var b=(j[a]||"silent").toUpperCase();try{return void(window.localStorage.loglevel=b)}catch(c){}try{window.document.cookie="loglevel="+b+";"}catch(c){}}function f(){var a;try{a=window.localStorage.loglevel}catch(b){}if(typeof a===i)try{a=/loglevel=([^;]+)/.exec(window.document.cookie)[1]}catch(b){}void 0===g.levels[a]&&(a="SILENT"),g.setLevel(g.levels[a])}var g={},h=function(){},i="undefined",j=["table","trace","debug","info","warn","error"];g.levels={TABLE:0,TRACE:1,DEBUG:2,INFO:3,WARN:4,ERROR:5,SILENT:6},g.methodFactory=function(b,d){return a(b)||c(b,d)}
3,g.setLevel=function(a){if("string"==typeof a&&void 0!==g.levels[a.toUpperCase()]&&(a=g.levels[a.toUpperCase()]),!("number"==typeof a&&a>=0&&a<=g.levels.SILENT))throw"log.setLevel() called with invalid level: "+a;if(e(a),d(a),typeof console===i&&a<g.levels.SILENT)return"No console available for logging"},g.enableAll=function(){g.setLevel(g.levels.TRACE)},g.disableAll=function(){g.setLevel(g.levels.SILENT)};var k=typeof window!==i?window.log:void 0;return g.noConflict=function(){return typeof window!==i&&window.log===g&&(window.log=k),g},f(),g}),define("heliosObject",[],function(){"use strict";return window&&window.HELIOS}),define("logger",["loglevel","heliosObject"],function(a,b){"use strict";function c(a){if(!(this instanceof c))return new c(a);this.defaults={level:b.config.common.logging.level,prefix:"HELIOS Log",separator:" "},this.options=a||{},this.settings=$.extend(!0,{},this.defaults,this.options),this.init()}return c.prototype.init=function(){},c.prototype._prefixAndLogMessage=function(b,c){var d="["+this.settings.prefix+"]";"object"!=typeof b?c(d+this.settings.separator+b):(a.table===c?a.debug(d):c(d),c(b))},c.prototype.trace=function(b){return this._prefixAndLogMessage(b,a.trace),this},c.prototype.info=function(b){return this._prefixAndLogMessage(b,a.info),this},c.prototype.table=function(b){return this._prefixAndLogMessage(b,a.table),this},c.prototype.debug=function(b){return this._prefixAndLogMessage(b,a.debug),this},c.prototype.warn=function(b){return this._prefixAndLogMessage(b,a.warn),this},c.prototype.error=function(b){return this._prefixAndLogMessage(b,a.error),this},c}),define("profileManager",["jquery","underscore","storageManager","logger"],function(a,b,c,d){"use strict";function e(b){z=a.extend({},y,b),x=z.HELIOS.config.common.api.storageSettings||{},c.init(),w=new d({prefix:"ProfileManager"})}function f(a){return n("storageData",x,a)}function g(a,b){return a.dealerLocation||a.location||a.postalCode?o("storageData",x,a,b,z.events.locationChange):o("storageData",x,a,b)}function h(a,b,c){var d=new Date;d.setTime(d.getTime()+24*c*60*60*1e3);var e="expires="+d.toUTCString();document.cookie=a+"="+b+";"+e+";path=/"}function i(a){h(z.storageKeyCookie,JSON.stringify(a),14)}function j(d){var e;d?(b.isArray(d)||(d=[d]),a.each(d,function(a,d){if(x.hasOwnProperty(d))switch(x[d]){case"LOCAL_STORAGE":e=c.loadItem(z.storageKeyLocal,{mode:"localStorage"}),b.isNull(e)||(e.hasOwnProperty("storageData")&&delete e.storageData[d],v(e));break;case"SESSION_STORAGE":e=c.loadItem(z.storageKeySession,{mode:"sessionStorage"}),b.isNull(e)||(e.hasOwnProperty("storageData")&&delete e.storageData[d],t(e))}})):(v(),t())}function k(){c.deleteItem(z.storageKeyLocal,{mode:"localStorage"}),c.deleteItem(z.storageKeySession,{mode:"sessionStorage"})}function l(a,b){return n("storageData",b,a)}function m(a){p(a,z.events.locationChange)}function n(b,d,e){var f,g=a.Deferred(),h=[],i=c.loadItem(z&&z.storageKeySession,{mode:"sessionStorage"})||{},j=c.loadItem(z&&z.storageKeyLocal,{mode:"localStorage"})||{},k=c.loadItem(z&&z.storageKeySession,{mode:"cookie"})||{},l=c.loadItem(z&&z.storageKeyLocal,{mode:"cookie"})||{},i=i[b]||{},j=j[b]||{},k=k[b]||{},l=l[b]||{},m=a.extend(!0,{},k,l),n={};for(f in d)if(d.hasOwnProperty(f))switch(d[f]){case"SESSION_STORAGE":i.hasOwnProperty(f)?n[f]=i[f]:m.hasOwnProperty(f)&&(n[f]=m[f]);break;case"LOCAL_STORAGE":j.hasOwnProperty(f)?n[f]=j[f]:m.hasOwnProperty(f)&&(n[f]=m[f]);break;case"SERVER_STORAGE":h.push(f)}return e&&h.length?q(e,h).done(function(b){n=a.extend({},n,b),g.resolve(n)}):g.resolve(n),!e&&h.length&&w.warn("URL required to get data from SERVER_STORAGE but was not passed"),g.promise()}function o(c,d,e,f,g){function h(){n.resolve(j[c]),a(HELIOS).trigger(g,[j[c],c])}var i,j,k={},l={},m={},g=g||z.events.dataChange,n=a.Deferred();k[c]={},l[c]={},m[c]={};for(i in e)if(e.hasOwnProperty(i)&&d.hasOwnProperty(i))switch(d[i]){case"SESSION_STORAGE":k[c][i]=e[i];break;case"LOCAL_STORAGE":l[c][i]=e[i];break;case"SERVER_STORAGE":m[c][i]=e[i]}return b.isEmpty(k[c])||s(k),b.isEmpty(l[c])||u(l),j=a.extend(!0,{},k,l),!f||b.isEmpty(m[c])?h():r(f,m[c]).done(function(b){j=a.extend(!0,{},j,b),h()}),f||b.isEmpty(m[c])||w.warn("URL required to save data to SERVER_STORAGE but was not passed"),n.promise()}function p(b,c){c=c||z.events.dataChange,a(HELIOS).on(c,b)}function q(b,c){var d,e="";return a.each(c,function(a,b){e+="_hls_key="+encodeURIComponent(b)+"&"}),/[?]/.test(b)?b+="&"+e:b+="?"+e,d=b.substr(b.length-1),"&"===d&&(b=b.substr(0,b.length-1)),a.get(b)}function r(b,c){return a.ajax({url:b,type:"post",data:c,dataType:"json"})}function s(b){var d=c.loadItem(z.storageKeySession,{mode:"sessionStorage"});return b=a.extend(!0,{},d,b),t(b)}function t(a){return c.saveItem(z.storageKeySession,a,{mode:"sessionStorage"})}function u(b){var d=c.loadItem(z.storageKeyLocal,{mode:"localStorage"});return b=a.extend(!0,{},d,b),v(b)}function v(a){return c.saveItem(z.storageKeyLocal,a,{mode:"localStorage"})}var w,x,y={HELIOS:HELIOS,storageKeyLocal:"ProfileDataLocal",storageKeySession:"ProfileDataSession",storageKeyCookie:"postalCode",events:{locationChange:"profileManager.locationChange",dataChange:"profileManager.dataChange"}},z=null;return{init:e,getData:n,setData:o,onChange:p,onLocationChange:m,getSavedData:f,getDataFallback:l,saveData:g,deleteData:j,deleteProfile:k,saveCookie:i}}),define("placeholderShim",["jquery"],function(a){function b(){return"placeholder"in document.createElement("input")}function c(a,b){var c=a;b?(a.on("focus",b,d).on("blur",b,e),c=a.find(b)):a.on("focus",d).on("blur",e),c.each(function(a,b){e.call(b)})}function d(b){var c=a(this),d=c.attr("placeholder");c.val()===d&&c.val("").removeClass(h)}function e(b){var c=a(this),d=c.attr("placeholder");""===c.val()&&c.val(d).addClass(h)}function f(a,d){return void 0===g&&(g=b()),!1===g&&c(a,d),g}var g,h="showing-placeholder";return{init:f}}),function(a,b){var c=b(a,a.document);a.lazySizes=c,"object"==typeof module&&module.exports?module.exports=c:"function"==typeof define&&define.amd&&define("lazysizes",c)}(window,function(a,b){"use strict";if(b.getElementsByClassName){var c,d=b.documentElement,e=a.Date,f=(a.HTMLPictureElement,"addEventListener"),g="getAttribute",h=a[f],i=a.setTimeout,j=a.requestAnimationFrame||i,k=a.requestIdleCallback,l=/^picture$/i,m=["load","error","lazyincluded","_lazyloaded"],n={},o=Array.prototype.forEach,p=function(a,b){return n[b]||(n[b]=new RegExp("(\\s|^)"+b+"(\\s|$)")),n[b].test(a[g]("class")||"")&&n[b]},q=function(a,b){p(a,b)||a.setAttribute("class",(a[g]("class")||"").trim()+" "+b)},r=function(a,b){var c;(c=p(a,b))&&a.setAttribute("class",(a[g]("class")||"").replace(c," "))},s=function(a,b,c){var d=c?f:"removeEventListener";c&&s(a,b),m.forEach(function(c){a[d](c,b)}
3)},t=function(a,c,d,e,f){var g=b.createEvent("CustomEvent");return g.initCustomEvent(c,!e,!f,d||{}),a.dispatchEvent(g),g},u=function(a,b){b&&b.src&&(a.src=b.src)},v=function(a,b){return(getComputedStyle(a,null)||{})[b]},w=function(a,b,d){for(d=d||a.offsetWidth;d<c.minSize&&b&&!a._lazysizesWidth;)d=b.offsetWidth,b=b.parentNode;return d},x=function(){var a,c,d=[],e=[],f=d,g=function(){var b=f;for(f=d.length?e:d,a=!0,c=!1;b.length;)b.shift()();a=!1},h=function(d,e){a&&!e?d.apply(this,arguments):(f.push(d),c||(c=!0,(b.hidden?i:j)(g)))};return h._lsFlush=g,h}(),y=function(a,b){return b?function(){x(a)}:function(){var b=this,c=arguments;x(function(){a.apply(b,c)})}},z=function(a){var b,c=0,d=666,f=d,g=function(){b=!1,c=e.now(),a()},h=k?function(){k(g,{timeout:f}),f!==d&&(f=d)}:y(function(){i(g)},!0);return function(a){var d;(a=!0===a)&&(f=44),b||(b=!0,d=125-(e.now()-c),d<0&&(d=0),a||d<9&&k?h():i(h,d))}},A=function(a){var b,c,d=99,f=function(){b=null,a()},g=function(){var a=e.now()-c;a<d?i(g,d-a):(k||f)(f)};return function(){c=e.now(),b||(b=i(g,d))}},B=function(){var j,k,m,n,w,B,D,E,F,G,H,I,J,K,L,M=/^img$/i,N=/^iframe$/i,O="onscroll"in a&&!/glebot/.test(navigator.userAgent),P=0,Q=0,R=0,S=-1,T=function(a){R--,a&&a.target&&s(a.target,T),(!a||R<0||!a.target)&&(R=0)},U=function(a,c){var e,f=a,g="hidden"==v(b.body,"visibility")||"hidden"!=v(a,"visibility");for(F-=c,I+=c,G-=c,H+=c;g&&(f=f.offsetParent)&&f!=b.body&&f!=d;)(g=(v(f,"opacity")||1)>0)&&"visible"!=v(f,"overflow")&&(e=f.getBoundingClientRect(),g=H>e.left&&G<e.right&&I>e.top-1&&F<e.bottom+1);return g},V=function(){var a,e,f,h,i,l,n,o,p;if((w=c.loadMode)&&R<8&&(a=j.length)){e=0,S++,null==K&&("expand"in c||(c.expand=d.clientHeight>500&&d.clientWidth>500?500:370),J=c.expand,K=J*c.expFactor),Q<K&&R<1&&S>2&&w>2&&!b.hidden?(Q=K,S=0):Q=w>1&&S>1&&R<6?J:P;for(;e<a;e++)if(j[e]&&!j[e]._lazyRace)if(O)if((o=j[e][g]("data-expand"))&&(l=1*o)||(l=Q),p!==l&&(D=innerWidth+l*L,E=innerHeight+l,n=-1*l,p=l),f=j[e].getBoundingClientRect(),(I=f.bottom)>=n&&(F=f.top)<=E&&(H=f.right)>=n*L&&(G=f.left)<=D&&(I||H||G||F)&&(m&&R<3&&!o&&(w<3||S<4)||U(j[e],l))){if(ba(j[e]),i=!0,R>9)break}else!i&&m&&!h&&R<4&&S<4&&w>2&&(k[0]||c.preloadAfterLoad)&&(k[0]||!o&&(I||H||G||F||"auto"!=j[e][g](c.sizesAttr)))&&(h=k[0]||j[e]);else ba(j[e]);h&&!i&&ba(h)}},W=z(V),X=function(a){q(a.target,c.loadedClass),r(a.target,c.loadingClass),s(a.target,Z)},Y=y(X),Z=function(a){Y({target:a.target})},$=function(a,b){try{a.contentWindow.location.replace(b)}catch(c){a.src=b}},_=function(a){var b,d,e=a[g](c.srcsetAttr);(b=c.customMedia[a[g]("data-media")||a[g]("media")])&&a.setAttribute("media",b),e&&a.setAttribute("srcset",e),b&&(d=a.parentNode,d.insertBefore(a.cloneNode(),a),d.removeChild(a))},aa=y(function(a,b,d,e,f){var h,j,k,m,p,v;(p=t(a,"lazybeforeunveil",b)).defaultPrevented||(e&&(d?q(a,c.autosizesClass):a.setAttribute("sizes",e)),j=a[g](c.srcsetAttr),h=a[g](c.srcAttr),f&&(k=a.parentNode,m=k&&l.test(k.nodeName||"")),v=b.firesLoad||"src"in a&&(j||h||m),p={target:a},v&&(s(a,T,!0),clearTimeout(n),n=i(T,2500),q(a,c.loadingClass),s(a,Z,!0)),m&&o.call(k.getElementsByTagName("source"),_),j?a.setAttribute("srcset",j):h&&!m&&(N.test(a.nodeName)?$(a,h):a.src=h),(j||m)&&u(a,{src:h})),a._lazyRace&&delete a._lazyRace,r(a,c.lazyClass),x(function(){(!v||a.complete&&a.naturalWidth>1)&&(v?T(p):R--,X(p))},!0)}),ba=function(a){var b,d=M.test(a.nodeName),e=d&&(a[g](c.sizesAttr)||a[g]("sizes")),f="auto"==e;(!f&&m||!d||!a.src&&!a.srcset||a.complete||p(a,c.errorClass))&&(b=t(a,"lazyunveilread").detail,f&&C.updateElem(a,!0,a.offsetWidth),a._lazyRace=!0,R++,aa(a,b,f,e,d))},ca=function(){if(!m){if(e.now()-B<999)return void i(ca,999);var a=A(function(){c.loadMode=3,W()});m=!0,c.loadMode=3,W(),h("scroll",function(){3==c.loadMode&&(c.loadMode=2),a()},!0)}};return{_:function(){B=e.now(),j=b.getElementsByClassName(c.lazyClass),k=b.getElementsByClassName(c.lazyClass+" "+c.preloadClass),L=c.hFac,h("scroll",W,!0),h("resize",W,!0),a.MutationObserver?new MutationObserver(W).observe(d,{childList:!0,subtree:!0,attributes:!0}):(d[f]("DOMNodeInserted",W,!0),d[f]("DOMAttrModified",W,!0),setInterval(W,999)),h("hashchange",W,!0),["focus","mouseover","click","load","transitionend","animationend","webkitAnimationEnd"].forEach(function(a){b[f](a,W,!0)}),/d$|^c/.test(b.readyState)?ca():(h("load",ca),b[f]("DOMContentLoaded",W),i(ca,2e4)),j.length?(V(),x._lsFlush()):W()},checkElems:W,unveil:ba}}(),C=function(){var a,d=y(function(a,b,c,d){var e,f,g;if(a._lazysizesWidth=d,d+="px",a.setAttribute("sizes",d),l.test(b.nodeName||""))for(e=b.getElementsByTagName("source"),f=0,g=e.length;f<g;f++)e[f].setAttribute("sizes",d);c.detail.dataAttr||u(a,c.detail)}),e=function(a,b,c){var e,f=a.parentNode;
3f&&(c=w(a,f,c),e=t(a,"lazybeforesizes",{width:c,dataAttr:!!b}),e.defaultPrevented||(c=e.detail.width)&&c!==a._lazysizesWidth&&d(a,f,e,c))},f=function(){var b,c=a.length;if(c)for(b=0;b<c;b++)e(a[b])},g=A(f);return{_:function(){a=b.getElementsByClassName(c.autosizesClass),h("resize",g)},checkElems:g,updateElem:e}}(),D=function(){D.i||(D.i=!0,C._(),B._())};return function(){var b,d={lazyClass:"lazyload",loadedClass:"lazyloaded",loadingClass:"lazyloading",preloadClass:"lazypreload",errorClass:"lazyerror",autosizesClass:"lazyautosizes",srcAttr:"data-src",srcsetAttr:"data-srcset",sizesAttr:"data-sizes",minSize:40,customMedia:{},init:!0,expFactor:1.5,hFac:.8,loadMode:2};c=a.lazySizesConfig||a.lazysizesConfig||{};for(b in d)b in c||(c[b]=d[b]);a.lazySizesConfig=c,i(function(){c.init&&D()})}(),{cfg:c,autoSizer:C,loader:B,init:D,uP:u,aC:q,rC:r,hC:p,fire:t,gW:w,rAF:x}}}),define("objCreateShim",[],function(){"function"!=typeof Object.create&&(Object.create=function(a){function b(){}return b.prototype=a,new b})}),define("touchFixedPositionShim",["jquery"],function(a){"use strict";function b(){c()&&(i=a("body"),d())}function c(){return"ontouchstart"in window||navigator.maxTouchPoints&&navigator.maxTouchPoints>0||navigator.msMaxTouchPoints&&navigator.msMaxTouchPoints>0}function d(){i.on("focus."+j,":input",f),i.on("blur."+j,":input",g)}function e(){i&&(i.off("focus."+j,":input"),i.off("blur."+j,":input"))}function f(){i.trigger(h().inputFocus)}function g(){i.trigger(h().inputBlur)}function h(){var a,b={};for(a in k)b[a]=k[a]+"."+j;return b}var i,j="touch-fixed-position-shim",k={inputFocus:"input-focus",inputBlur:"input-blur"};return{init:b,getEventNames:h,unbindEvents:e}}),define("locationOriginShim",[],function(){window.location.origin||(window.location.origin=window.location.protocol+"//"+window.location.hostname+(window.location.port?":"+window.location.port:""))}),define("shimLoader",["jquery","placeholderShim","lazysizes","objCreateShim","touchFixedPositionShim","locationOriginShim"],function(a,b,c,d,e,f){return{init:function(){b.init(a("input:text")),e.init()}}}),define("storeLastInteraction",["jquery","storageManager"],function(a,b){"use strict";function c(c){var e,f,g=a.extend(!0,{},d,c);try{e=a("["+g.attributes.vehicleId+"]").not(".c_310-1").not(".c_130"),f=e.first().attr(g.attributes.vehicleId)||HELIOS.adobe.tagging.vehicleId}catch(h){f=null}f&&(b.init(),b.saveItem(g.session.vehicleVisited,f))}var d={attributes:{vehicleId:"data-vehicle-id"},session:{vehicleVisited:"lastVisitedVehicle"}};return{init:c}}),define("storeDealerReferrer",["jquery","storageManager","storageManagerKeys"],function(a,b,c){"use strict";function d(d){var e=d.HELIOS;e&&e.dws&&e.dws.dealerId?b.saveItem(c.dwsPreselectedDealer.itemKey,{dealerId:e.dws.dealerId,dealerUrl:d.window.location.href},{mode:"sessionStorage"}):a(".c_019, .c_056").length||b.deleteItem(c.dwsPreselectedDealer.itemKey)}return{init:d}}),function(a,b){"object"==typeof exports&&"object"==typeof module?module.exports=b():"function"==typeof define&&define.amd?define("handlebars",[],b):"object"==typeof exports?exports.Handlebars=b():a.Handlebars=b()}(this,function(){return function(a){function b(d){if(c[d])return c[d].exports;var e=c[d]={exports:{},id:d,loaded:!1};return a[d].call(e.exports,e,e.exports,b),e.loaded=!0,e.exports}var c={};return b.m=a,b.c=c,b.p="",b(0)}([function(a,b,c){"use strict";function d(){var a=r();return a.compile=function(b,c){return k.compile(b,c,a)},a.precompile=function(b,c){return k.precompile(b,c,a)},a.AST=i.default,a.Compiler=k.Compiler,a.JavaScriptCompiler=m.default,a.Parser=j.parser,a.parse=j.parse,a.parseWithoutProcessing=j.parseWithoutProcessing,a}var e=c(1).default;b.__esModule=!0;var f=c(2),g=e(f),h=c(45),i=e(h),j=c(46),k=c(51),l=c(52),m=e(l),n=c(49),o=e(n),p=c(44),q=e(p),r=g.default.create,s=d();s.create=d,q.default(s),s.Visitor=o.default,s.default=s,b.default=s,a.exports=b.default},function(a,b){"use strict";b.default=function(a){return a&&a.__esModule?a:{default:a}},b.__esModule=!0},function(a,b,c){"use strict";function d(){var a=new h.HandlebarsEnvironment;return n.extend(a,h),a.SafeString=j.default,a.Exception=l.default,a.Utils=n,a.escapeExpression=n.escapeExpression,a.VM=p,a.template=function(b){return p.template(b,a)},a}var e=c(3).default,f=c(1).default;b.__esModule=!0;var g=c(4),h=e(g),i=c(37),j=f(i),k=c(6),l=f(k),m=c(5),n=e(m),o=c(38),p=e(o),q=c(44),r=f
vendor: 5,636 bytes, lines 3-4
3(q),s=d();s.create=d,r.default(s),s.default=s,b.default=s,a.exports=b.default},function(a,b){"use strict";b.default=function(a){if(a&&a.__esModule)return a;var b={};if(null!=a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[c]=a[c]);return b.default=a,b},b.__esModule=!0},function(a,b,c){"use strict";function d(a,b,c){this.helpers=a||{},this.partials=b||{},this.decorators=c||{},i.registerDefaultHelpers(this),j.registerDefaultDecorators(this)}var e=c(1).default;b.__esModule=!0,b.HandlebarsEnvironment=d;var f=c(5),g=c(6),h=e(g),i=c(10),j=c(30),k=c(32),l=e(k),m=c(33);b.VERSION="4.7.7",b.COMPILER_REVISION=8,b.LAST_COMPATIBLE_COMPILER_REVISION=7;var n={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};b.REVISION_CHANGES=n;var o="[object Object]";d.prototype={constructor:d,logger:l.default,log:l.default.log,
4registerHelper:function(a,b){if(f.toString.call(a)===o){if(b)throw new h.default("Arg not supported with multiple helpers");f.extend(this.helpers,a)}else this.helpers[a]=b},unregisterHelper:function(a){delete this.helpers[a]},registerPartial:function(a,b){if(f.toString.call(a)===o)f.extend(this.partials,a);else{if(void 0===b)throw new h.default('Attempting to register a partial called "'+a+'" as undefined');this.partials[a]=b}},unregisterPartial:function(a){delete this.partials[a]},registerDecorator:function(a,b){if(f.toString.call(a)===o){if(b)throw new h.default("Arg not supported with multiple decorators");f.extend(this.decorators,a)}else this.decorators[a]=b},unregisterDecorator:function(a){delete this.decorators[a]},resetLoggedPropertyAccesses:function(){m.resetLoggedProperties()}};var p=l.default.log;b.log=p,b.createFrame=f.createFrame,b.logger=l.default},function(a,b){"use strict";function c(a){return k[a]}function d(a){for(var b=1;b<arguments.length;b++)for(var c in arguments[b])Object.prototype.hasOwnProperty.call(arguments[b],c)&&(a[c]=arguments[b][c]);return a}function e(a,b){for(var c=0,d=a.length;c<d;c++)if(a[c]===b)return c;return-1}function f(a){if("string"!=typeof a){if(a&&a.toHTML)return a.toHTML();if(null==a)return"";if(!a)return a+"";a=""+a}return m.test(a)?a.replace(l,c):a}function g(a){return!a&&0!==a||!(!p(a)||0!==a.length)}function h(a){var b=d({},a);return b._parent=a,b}function i(a,b){return a.path=b,a}function j(a,b){return(a?a+".":"")+b}b.__esModule=!0,b.extend=d,b.indexOf=e,b.escapeExpression=f,b.isEmpty=g,b.createFrame=h,b.blockParams=i,b.appendContextPath=j;var k={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;","=":"&#x3D;"},l=/[&<>"'`=]/g,m=/[&<>"'`=]/,n=Object.prototype.toString;b.toString=n;var o=function(a){return"function"==typeof a};o(/x/)&&(b.isFunction=o=function(a){return"function"==typeof a&&"[object Function]"===n.call(a)}),b.isFunction=o;var p=Array.isArray||function(a){return!(!a||"object"!=typeof a)&&"[object Array]"===n.call(a)};b.isArray=p},function(a,b,c){"use strict";function d(a,b){var c=b&&b.loc,g=void 0,h=void 0,i=void 0,j=void 0;c&&(g=c.start.line,h=c.end.line,i=c.start.column,j=c.end.column,a+=" - "+g+":"+i);for(var k=Error.prototype.constructor.call(this,a),l=0;l<f.length;l++)this[f[l]]=k[f[l]];Error.captureStackTrace&&Error.captureStackTrace(this,d);try{c&&(this.lineNumber=g,this.endLineNumber=h,e?(Object.defineProperty(this,"column",{value:i,enumerable:!0}),Object.defineProperty(this,"endColumn",{value:j,enumerable:!0})):(this.column=i,this.endColumn=j))}catch(m){}}var e=c(7).default;b.__esModule=!0;var f=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];d.prototype=new Error,b.default=d,a.exports=b.default},function(a,b,c){a.exports={default:c(8),__esModule:!0}},function(a,b,c){var d=c(9);a.exports=function(a,b,c){return d.setDesc(a,b,c)}},function(a,b){var c=Object;a.exports={create:c.create,getProto:c.getPrototypeOf,isEnum:{}.propertyIsEnumerable,getDesc:c.getOwnPropertyDescriptor,setDesc:c.defineProperty,setDescs:c.defineProperties,getKeys:c.keys,getNames:c.getOwnPropertyNames,getSymbols:c.getOwnPropertySymbols,each:[].forEach}},function(a,b,c){"use strict";function d(a){h.default(a),j.default(a),l.default(a),n.default(a),p.default(a),r.default(a),t.default(a)}function e(a,b,c){a.helpers[b]&&(a.hooks[b]=a.helpers[b],c||delete a.helpers[b])}var f=c(1).default;b.__esModule=!0,b.registerDefaultHelpers=d,b.moveHelperToHooks=e;var g=c(11),h=f(g),i=c(12),j=f(i),k=c(25),l=f(k),m=c(26),n=f(m),o=c(27),p=f(o),q=c(28),r=f(q),s=c(29),t=f(s)},function(a,b,c){"use strict";b.__esModule=!0;var d=c(5);b.default=function(a){a.registerHelper("blockHelperMissing",function(b,c){var e=c.inverse,f=c.fn;if(!0===b)return f(this);if(!1===b||null==b)return e(this);if(d.isArray(b))return b.length>0?(c.ids&&(c.ids=[c.name]),a.helpers.each(b,c)):e(this);if(c.data&&c.ids){var g=d.createFrame(c.data);g.contextPath=d.appendContextPath(c.data.contextPath,c.name),c={data:g}}return f(b,c)})},a.exports=b.default},function(a,b,c){(function(d){"use strict";var e=c(13).default,f=c(1).default;b.__esModule=!0;var g=c(5),h=c(6),i=f(h);b.default=function(a){a.registerHelper("each",function(a,b){function c(b,c,d){l&&(l.key=b,l.index=c,l.first=0===c,l.last=!!d,m&&(l.contextPath=m+b)),k+=f(a[b],{data:l,blockParams:g.blockParams([a[b],b],[m+b,null])})}if(!b)throw new i.default("Must pass iterator to #each");var f=b.fn,h=b.inverse,j=0,k="",l=void 0,m=void 0;if(b.data&&b.ids&&(m=g.appendContextPath(b.data.contextPath,b.ids[0])+"."),g.isFunction(a)&&(a=a.call(this)),b.data&&(l=g.createFrame(b.data)),a&&"object"==typeof a)if(g.isArray(a))for(var n=a.length;j<n;
vendor: 18,853 bytes, line 4
4j++)j in a&&c(j,j,j===a.length-1);else if(d.Symbol&&a[d.Symbol.iterator]){for(var o=[],p=a[d.Symbol.iterator](),q=p.next();!q.done;q=p.next())o.push(q.value);a=o;for(var n=a.length;j<n;j++)c(j,j,j===a.length-1)}else!function(){var b=void 0;e(a).forEach(function(a){void 0!==b&&c(b,j-1),b=a,j++}),void 0!==b&&c(b,j-1,!0)}();return 0===j&&(k=h(this)),k})},a.exports=b.default}).call(b,function(){return this}())},function(a,b,c){a.exports={default:c(14),__esModule:!0}},function(a,b,c){c(15),a.exports=c(21).Object.keys},function(a,b,c){var d=c(16);c(18)("keys",function(a){return function(b){return a(d(b))}})},function(a,b,c){var d=c(17);a.exports=function(a){return Object(d(a))}},function(a,b){a.exports=function(a){if(void 0==a)throw TypeError("Can't call method on  "+a);return a}},function(a,b,c){var d=c(19),e=c(21),f=c(24);a.exports=function(a,b){var c=(e.Object||{})[a]||Object[a],g={};g[a]=b(c),d(d.S+d.F*f(function(){c(1)}),"Object",g)}},function(a,b,c){var d=c(20),e=c(21),f=c(22),g="prototype",h=function(a,b,c){var i,j,k,l=a&h.F,m=a&h.G,n=a&h.S,o=a&h.P,p=a&h.B,q=a&h.W,r=m?e:e[b]||(e[b]={}),s=m?d:n?d[b]:(d[b]||{})[g];m&&(c=b);for(i in c)(j=!l&&s&&i in s)&&i in r||(k=j?s[i]:c[i],r[i]=m&&"function"!=typeof s[i]?c[i]:p&&j?f(k,d):q&&s[i]==k?function(a){var b=function(b){return this instanceof a?new a(b):a(b)};return b[g]=a[g],b}(k):o&&"function"==typeof k?f(Function.call,k):k,o&&((r[g]||(r[g]={}))[i]=k))};h.F=1,h.G=2,h.S=4,h.P=8,h.B=16,h.W=32,a.exports=h},function(a,b){var c=a.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=c)},function(a,b){var c=a.exports={version:"1.2.6"};"number"==typeof __e&&(__e=c)},function(a,b,c){var d=c(23);a.exports=function(a,b,c){if(d(a),void 0===b)return a;switch(c){case 1:return function(c){return a.call(b,c)};case 2:return function(c,d){return a.call(b,c,d)};case 3:return function(c,d,e){return a.call(b,c,d,e)}}return function(){return a.apply(b,arguments)}}},function(a,b){a.exports=function(a){if("function"!=typeof a)throw TypeError(a+" is not a function!");return a}},function(a,b){a.exports=function(a){try{return!!a()}catch(b){return!0}}},function(a,b,c){"use strict";var d=c(1).default;b.__esModule=!0;var e=c(6),f=d(e);b.default=function(a){a.registerHelper("helperMissing",function(){if(1!==arguments.length)throw new f.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})},a.exports=b.default},function(a,b,c){"use strict";var d=c(1).default;b.__esModule=!0;var e=c(5),f=c(6),g=d(f);b.default=function(a){a.registerHelper("if",function(a,b){if(2!=arguments.length)throw new g.default("#if requires exactly one argument");return e.isFunction(a)&&(a=a.call(this)),!b.hash.includeZero&&!a||e.isEmpty(a)?b.inverse(this):b.fn(this)}),a.registerHelper("unless",function(b,c){if(2!=arguments.length)throw new g.default("#unless requires exactly one argument");return a.helpers.if.call(this,b,{fn:c.inverse,inverse:c.fn,hash:c.hash})})},a.exports=b.default},function(a,b){"use strict";b.__esModule=!0,b.default=function(a){a.registerHelper("log",function(){for(var b=[void 0],c=arguments[arguments.length-1],d=0;d<arguments.length-1;d++)b.push(arguments[d]);var e=1;null!=c.hash.level?e=c.hash.level:c.data&&null!=c.data.level&&(e=c.data.level),b[0]=e,a.log.apply(a,b)})},a.exports=b.default},function(a,b){"use strict";b.__esModule=!0,b.default=function(a){a.registerHelper("lookup",function(a,b,c){return a?c.lookupProperty(a,b):a})},a.exports=b.default},function(a,b,c){"use strict";var d=c(1).default;b.__esModule=!0;var e=c(5),f=c(6),g=d(f);b.default=function(a){a.registerHelper("with",function(a,b){if(2!=arguments.length)throw new g.default("#with requires exactly one argument");e.isFunction(a)&&(a=a.call(this));var c=b.fn;if(e.isEmpty(a))return b.inverse(this);var d=b.data;return b.data&&b.ids&&(d=e.createFrame(b.data),d.contextPath=e.appendContextPath(b.data.contextPath,b.ids[0])),c(a,{data:d,blockParams:e.blockParams([a],[d&&d.contextPath])})})},a.exports=b.default},function(a,b,c){"use strict";function d(a){g.default(a)}var e=c(1).default;b.__esModule=!0,b.registerDefaultDecorators=d;var f=c(31),g=e(f)},function(a,b,c){"use strict";b.__esModule=!0;var d=c(5);b.default=function(a){a.registerDecorator("inline",function(a,b,c,e){var f=a;return b.partials||(b.partials={},f=function(e,f){var g=c.partials;c.partials=d.extend({},g,b.partials);var h=a(e,f);return c.partials=g,h}),b.partials[e.args[0]]=e.fn,f})},a.exports=b.default},function(a,b,c){"use strict";b.__esModule=!0;var d=c(5),e={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(a){if("string"==typeof a){var b=d.indexOf(e.methodMap,a.toLowerCase());a=b>=0?b:parseInt(a,10)}return a},log:function(a){if(a=e.lookupLevel(a),"undefined"!=typeof console&&e.lookupLevel(e.level)<=a){var b=e.methodMap[a];console[b]||(b="log");for(var c=arguments.length,d=Array(c>1?c-1:0),f=1;f<c;f++)d[f-1]=arguments[f]}}};b.default=e,a.exports=b.default},function(a,b,c){"use strict";function d(a){var b=i(null);b.constructor=!1,b.__defineGetter__=!1,b.__defineSetter__=!1,b.__lookupGetter__=!1;var c=i(null);return c.__proto__=!1,{properties:{whitelist:l.createNewLookupObject(c,a.allowedProtoProperties),defaultValue:a.allowProtoPropertiesByDefault},methods:{whitelist:l.createNewLookupObject(b,a.allowedProtoMethods),defaultValue:a.allowProtoMethodsByDefault}}}function e(a,b,c){return"function"==typeof a?f(b.methods,c):f(b.properties,c)}function f(a,b){return void 0!==a.whitelist[b]?!0===a.whitelist[b]:void 0!==a.defaultValue?a.defaultValue:(g(b),!1)}function g(a){!0!==o[a]&&(o[a]=!0,n.log("error",'Handlebars: Access has been denied to resolve the property "'+a+'" because it is not an "own property" of its parent.\nYou can add a runtime option to disable the check or this warning:\nSee https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details'))}function h(){j(o).forEach(function(a){delete o[a]})}var i=c(34).default,j=c(13).default,k=c(3).default;b.__esModule=!0,b.createProtoAccessControl=d,b.resultIsAllowed=e,b.resetLoggedProperties=h;var l=c(36),m=c(32),n=k(m),o=i(null)},function(a,b,c){a.exports={default:c(35),__esModule:!0}},function(a,b,c){var d=c(9);a.exports=function(a,b){return d.create(a,b)}},function(a,b,c){"use strict";function d(){for(var a=arguments.length,b=Array(a),c=0;c<a;c++)b[c]=arguments[c];return f.extend.apply(void 0,[e(null)].concat(b))}var e=c(34).default;b.__esModule=!0,b.createNewLookupObject=d;var f=c(5)},function(a,b){"use strict";function c(a){this.string=a}b.__esModule=!0,c.prototype.toString=c.prototype.toHTML=function(){return""+this.string},b.default=c,a.exports=b.default},function(a,b,c){"use strict";function d(a){var b=a&&a[0]||1,c=v.COMPILER_REVISION;if(!(b>=v.LAST_COMPATIBLE_COMPILER_REVISION&&b<=v.COMPILER_REVISION)){if(b<v.LAST_COMPATIBLE_COMPILER_REVISION){var d=v.REVISION_CHANGES[c],e=v.REVISION_CHANGES[b];throw new u.default("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+d+") or downgrade your runtime to an older version ("+e+").")}throw new u.default("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+a[1]+").")}}function e(a,b){function c(c,d,e){e.hash&&(d=s.extend({},d,e.hash),e.ids&&(e.ids[0]=!0)),c=b.VM.resolvePartial.call(this,c,d,e);var f=s.extend({},e,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),g=b.VM.invokePartial.call(this,c,d,f);if(null==g&&b.compile&&(e.partials[e.name]=b.compile(c,a.compilerOptions,b),g=e.partials[e.name](d,f)),null!=g){if(e.indent){for(var h=g.split("\n"),i=0,j=h.length;i<j&&(h[i]||i+1!==j);i++)h[i]=e.indent+h[i];g=h.join("\n")}return g}throw new u.default("The partial "+e.name+" could not be compiled when running in runtime-only mode")}function d(b){function c(b){return""+a.main(g,b,g.helpers,g.partials,f,i,h)}var e=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],f=e.data;d._setup(e),!e.partial&&a.useData&&(f=j(b,f));var h=void 0,i=a.useBlockParams?[]:void 0;return a.useDepths&&(h=e.depths?b!=e.depths[0]?[b].concat(e.depths):e.depths:[b]),(c=k(a.main,c,g,e.depths||[],f,i))(b,e)}if(!b)throw new u.default("No environment passed to template");if(!a||!a.main)throw new u.default("Unknown template object: "+typeof a);a.main.decorator=a.main_d,b.VM.checkRevision(a.compiler);var e=a.compiler&&7===a.compiler[0],g={strict:function(a,b,c){if(!(a&&b in a))throw new u.default('"'+b+'" not defined in '+a,{loc:c});return g.lookupProperty(a,b)},lookupProperty:function(a,b){var c=a[b];return null==c?c:Object.prototype.hasOwnProperty.call(a,b)?c:y.resultIsAllowed(c,g.protoAccessControl,b)?c:void 0},lookup:function(a,b){for(var c=a.length,d=0;d<c;d++){if(null!=(a[d]&&g.lookupProperty(a[d],b)))return a[d][b]}},lambda:function(a,b){return"function"==typeof a?a.call(b):a},escapeExpression:s.escapeExpression,invokePartial:c,fn:function(b){var c=a[b];return c.decorator=a[b+"_d"],c},programs:[],program:function(a,b,c,d,e){var g=this.programs[a],h=this.fn(a);return b||e||d||c?g=f(this,a,h,b,c,d,e):g||(g=this.programs[a]=f(this,a,h)),g},data:function(a,b){for(;a&&b--;)a=a._parent;return a},mergeIfNeeded:function(a,b){var c=a||b;return a&&b&&a!==b&&(c=s.extend({},b,a)),c},nullContext:n({}),noop:b.VM.noop,compilerInfo:a.compiler};return d.isTop=!0,d._setup=function(c){if(c.partial)g.protoAccessControl=c.protoAccessControl,g.helpers=c.helpers,g.partials=c.partials,g.decorators=c.decorators,g.hooks=c.hooks;else{var d=s.extend({},b.helpers,c.helpers);l(d,g),g.helpers=d,a.usePartial&&(g.partials=g.mergeIfNeeded(c.partials,b.partials)),(a.usePartial||a.useDecorators)&&(g.decorators=s.extend({},b.decorators,c.decorators)),g.hooks={},g.protoAccessControl=y.createProtoAccessControl(c);var f=c.allowCallsToHelperMissing||e;w.moveHelperToHooks(g,"helperMissing",f),w.moveHelperToHooks(g,"blockHelperMissing",f)}},d._child=function(b,c,d,e){if(a.useBlockParams&&!d)throw new u.default("must pass block params");if(a.useDepths&&!e)throw new u.default("must pass parent depths");return f(g,b,a[b],c,0,d,e)},d}function f(a,b,c,d,e,f,g){function h(b){var e=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],h=g;return!g||b==g[0]||b===a.nullContext&&null===g[0]||(h=[b].concat(g)),c(a,b,a.helpers,a.partials,e.data||d,f&&[e.blockParams].concat(f),h)}return h=k(c,h,a,g,d,f),h.program=b,h.depth=g?g.length:0,h.blockParams=e||0,h}function g(a,b,c){return a?a.call||c.name||(c.name=a,a=c.partials[a]):a="@partial-block"===c.name?c.data["partial-block"]:c.partials[c.name],a}function h(a,b,c){var d=c.data&&c.data["partial-block"];c.partial=!0,c.ids&&(c.data.contextPath=c.ids[0]||c.data.contextPath);var e=void 0;if(c.fn&&c.fn!==i&&function(){c.data=v.createFrame(c.data);var a=c.fn;e=c.data["partial-block"]=function(b){var c=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];return c.data=v.createFrame(c.data),c.data["partial-block"]=d,a(b,c)},a.partials&&(c.partials=s.extend({},c.partials,a.partials))}(),void 0===a&&e&&(a=e),void 0===a)throw new u.default("The partial "+c.name+" could not be found");if(a instanceof Function)return a(b,c)}function i(){return""}function j(a,b){return b&&"root"in b||(b=b?v.createFrame(b):{},b.root=a),b}function k(a,b,c,d,e,f){if(a.decorator){var g={};b=a.decorator(b,g,c,d&&d[0],e,f,d),s.extend(b,g)}return b}function l(a,b){o(a).forEach(function(c){var d=a[c];a[c]=m(d,b)})}function m(a,b){var c=b.lookupProperty;return x.wrapHelper(a,function(a){return s.extend({lookupProperty:c},a)})}var n=c(39).default,o=c(13).default,p=c(3).default,q=c(1).default;b.__esModule=!0,b.checkRevision=d,b.template=e,b.wrapProgram=f,b.resolvePartial=g,b.invokePartial=h,b.noop=i;var r=c(5),s=p(r),t=c(6),u=q(t),v=c(4),w=c(10),x=c(43),y=c(33)},function(a,b,c){a.exports={default:c(40),__esModule:!0}},function(a,b,c){c(41),a.exports=c(21).Object.seal},function(a,b,c){var d=c(42);c(18)("seal",function(a){return function(b){return a&&d(b)?a(b):b}})},function(a,b){a.exports=function(a){return"object"==typeof a?null!==a:"function"==typeof a}},function(a,b){"use strict";function c(a,b){return"function"!=typeof a?a:function(){var c=arguments[arguments.length-1];return arguments[arguments.length-1]=b(c),a.apply(this,arguments)}}b.__esModule=!0,b.wrapHelper=c},function(a,b){(function(c){"use strict";b.__esModule=!0,b.default=function(a){var b=void 0!==c?c:window,d=b.Handlebars;a.noConflict=function(){return b.Handlebars===a&&(b.Handlebars=d),a}},a.exports=b.default}).call(b,function(){return this}())},function(a,b){"use strict";b.__esModule=!0;var c={helpers:{helperExpression:function(a){return"SubExpression"===a.type||("MustacheStatement"===a.type||"BlockStatement"===a.type)&&!!(a.params&&a.params.length||a.hash)},scopedId:function(a){return/^\.|this\b/.test(a.original)},simpleId:function(a){return 1===a.parts.length&&!c.helpers.scopedId(a)&&!a.depth}}};b.default=c,a.exports=b.default},function(a,b,c){"use strict";function d(a,b){return"Program"===a.type?a:(i.default.yy=o,o.locInfo=function(a){return new o.SourceLocation(b&&b.srcName,a)},i.default.parse(a))}function e(a,b){var c=d(a,b);return new k.default(b).accept(c)}var f=c(1).default,g=c(3).default;b.__esModule=!0,b.parseWithoutProcessing=d,b.parse=e;var h=c(47),i=f(h),j=c(48),k=f(j),l=c(50),m=g(l),n=c(5);b.parser=i.default;var o={};n.extend(o,m)},function(a,b){"use strict";b.__esModule=!0;var c=function(){function a(){this.yy={}}var b={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(a,b,c,d,e,f,g){var h=f.length-1;switch(e){case 1:return f[h-1];case 2:this.$=d.prepareProgram(f[h]);break;case 3:case 4:case 5:case 6:case 7:case 8:this.$=f[h];break;case 9:this.$={type:"CommentStatement",value:d.stripComment(f[h]),strip:d.stripFlags(f[h],f[h]),loc:d.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:f[h],value:f[h],loc:d.locInfo(this._$)};break;case 11:this.$=d.prepareRawBlock(f[h-2],f[h-1],f[h],this._$);break;case 12:this.$={path:f[h-3],params:f[h-2],hash:f[h-1]};break;case 13:this.$=d.prepareBlock(f[h-3],f[h-2],f[h-1],f[h],!1,this._$);break;case 14:this.$=d.prepareBlock(f[h-3],f[h-2],f[h-1],f[h],!0,this._$);break;case 15:this.$={open:f[h-5],path:f[h-4],params:f[h-3],hash:f[h-2],blockParams:f[h-1],strip:d.stripFlags(f[h-5],f[h])};break;case 16:case 17:this.$={path:f[h-4],params:f[h-3],hash:f[h-2],blockParams:f[h-1],strip:d.stripFlags(f[h-5],f[h])};break;case 18:this.$={strip:d.stripFlags(f[h-1],f[h-1]),program:f[h]};break;case 19:var i=d.prepareBlock(f[h-2],f[h-1],f[h],f[h],!1,this._$),j=d.prepareProgram([i],f[h-1].loc);j.chained=!0,this.$={strip:f[h-2].strip,program:j,chain:!0};break;case 20:this.$=f[h];break;case 21:this.$={path:f[h-1],strip:d.stripFlags(f[h-2],f[h])};break;case 22:case 23:this.$=d.prepareMustache(f[h-3],f[h-2],f[h-1],f[h-4],d.stripFlags(f[h-4],f[h]),this._$);break;case 24:this.$={type:"PartialStatement",name:f[h-3],params:f[h-2],hash:f[h-1],indent:"",strip:d.stripFlags(f[h-4],f[h]),loc:d.locInfo(this._$)};break;case 25:this.$=d.preparePartialBlock(f[h-2],f[h-1],f[h],this._$);break;case 26:this.$={path:f[h-3],params:f[h-2],hash:f[h-1],strip:d.stripFlags(f[h-4],f[h])};break;case 27:case 28:this.$=f[h];break;case 29:this.$={type:"SubExpression",path:f[h-3],params:f[h-2],hash:f[h-1],loc:d.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:f[h],loc:d.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:d.id(f[h-2]),value:f[h],loc:d.locInfo(this._$)};break;case 32:this.$=d.id(f[h-1]);break;case 33:case 34:this.$=f[h];break;case 35:this.$={type:"StringLiteral",value:f[h],original:f[h],loc:d.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(f[h]),original:Number(f[h]),loc:d.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:"true"===f[h],original:"true"===f[h],loc:d.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:d.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:d.locInfo(this._$)};break;case 40:
vendor: 8,418 bytes, line 4
4case 41:this.$=f[h];break;case 42:this.$=d.preparePath(!0,f[h],this._$);break;case 43:this.$=d.preparePath(!1,f[h],this._$);break;case 44:f[h-2].push({part:d.id(f[h]),original:f[h],separator:f[h-1]}),this.$=f[h-2];break;case 45:this.$=[{part:d.id(f[h]),original:f[h]}];break;case 46:this.$=[];break;case 47:f[h-1].push(f[h]);break;case 48:this.$=[];break;case 49:f[h-1].push(f[h]);break;case 50:this.$=[];break;case 51:f[h-1].push(f[h]);break;case 58:this.$=[];break;case 59:f[h-1].push(f[h]);break;case 64:this.$=[];break;case 65:f[h-1].push(f[h]);break;case 70:this.$=[];break;case 71:f[h-1].push(f[h]);break;case 78:this.$=[];break;case 79:f[h-1].push(f[h]);break;case 82:this.$=[];break;case 83:f[h-1].push(f[h]);break;case 86:this.$=[];break;case 87:f[h-1].push(f[h]);break;case 90:this.$=[];break;case 91:f[h-1].push(f[h]);break;case 94:this.$=[];break;case 95:f[h-1].push(f[h]);break;case 98:this.$=[f[h]];break;case 99:f[h-1].push(f[h]);break;case 100:this.$=[f[h]];break;case 101:f[h-1].push(f[h])}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],
vendor: 14,729 bytes, lines 4-5
4
533:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(a,b){throw new Error(a)},parse:function(a){function b(){var a;return a=c.lexer.lex()||1,"number"!=typeof a&&(a=c.symbols_[a]||a),a}var c=this,d=[0],e=[null],f=[],g=this.table,h="",i=0,j=0,k=0;this.lexer.setInput(a),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,void 0===this.lexer.yylloc&&(this.lexer.yylloc={});var l=this.lexer.yylloc;f.push(l);var m=this.lexer.options&&this.lexer.options.ranges;"function"==typeof this.yy.parseError&&(this.parseError=this.yy.parseError);for(var n,o,p,q,r,s,t,u,v,w={};;){if(p=d[d.length-1],this.defaultActions[p]?q=this.defaultActions[p]:(null!==n&&void 0!==n||(n=b()),q=g[p]&&g[p][n]),void 0===q||!q.length||!q[0]){var x="";if(!k){v=[];for(s in g[p])this.terminals_[s]&&s>2&&v.push("'"+this.terminals_[s]+"'");x=this.lexer.showPosition?"Parse error on line "+(i+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+v.join(", ")+", got '"+(this.terminals_[n]||n)+"'":"Parse error on line "+(i+1)+": Unexpected "+(1==n?"end of input":"'"+(this.terminals_[n]||n)+"'"),this.parseError(x,{text:this.lexer.match,token:this.terminals_[n]||n,line:this.lexer.yylineno,loc:l,expected:v})}}if(q[0]instanceof Array&&q.length>1)throw new Error("Parse Error: multiple actions possible at state: "+p+", token: "+n);switch(q[0]){case 1:d.push(n),e.push(this.lexer.yytext),f.push(this.lexer.yylloc),d.push(q[1]),n=null,o?(n=o,o=null):(j=this.lexer.yyleng,h=this.lexer.yytext,i=this.lexer.yylineno,l=this.lexer.yylloc,k>0&&k--);break;case 2:if(t=this.productions_[q[1]][1],w.$=e[e.length-t],w._$={first_line:f[f.length-(t||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(t||1)].first_column,last_column:f[f.length-1].last_column},m&&(w._$.range=[f[f.length-(t||1)].range[0],f[f.length-1].range[1]]),void 0!==(r=this.performAction.call(w,h,j,i,this.yy,q[1],e,f)))return r;t&&(d=d.slice(0,-1*t*2),e=e.slice(0,-1*t),f=f.slice(0,-1*t)),d.push(this.productions_[q[1]][0]),e.push(w.$),f.push(w._$),u=g[d[d.length-2]][d[d.length-1]],d.push(u);break;case 3:return!0}}return!0}},c=function(){var a={EOF:1,parseError:function(a,b){if(!this.yy.parser)throw new Error(a);this.yy.parser.parseError(a,b)},setInput:function(a){return this._input=a,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},unput:function(a){var b=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b-1),this.offset-=b;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var e=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-b]),this},more:function(){return this._more=!0,this},less:function(a){this.unput(this.match.slice(a))},pastInput:function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var a=this.pastInput(),b=new Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var a,b,c,d,e;this._more||(this.yytext="",this.match="");for(var f=this._currentRules(),g=0;g<f.length&&(!(c=this._input.match(this.rules[f[g]]))||b&&!(c[0].length>b[0].length)||(b=c,d=g,this.options.flex));g++);return b?(e=b[0].match(/(?:\r\n?|\n).*/g),e&&(this.yylineno+=e.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:e?e[e.length-1].length-e[e.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(b[0].length),this.matched+=b[0],a=this.performAction.call(this,this.yy,this,f[d],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),a||void 0):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var a=this.next();return void 0!==a?a:this.lex()},begin:function(a){this.conditionStack.push(a)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(a){this.begin(a)}};return a.options={},a.performAction=function(a,b,c,d){function e(a,c){return b.yytext=b.yytext.substring(a,b.yyleng-c+a)}switch(c){case 0:if("\\\\"===b.yytext.slice(-2)?(e(0,1),this.begin("mu")):"\\"===b.yytext.slice(-1)?(e(0,1),this.begin("emu")):this.begin("mu"),b.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;case 3:return this.begin("raw"),15;case 4:return this.popState(),"raw"===this.conditionStack[this.conditionStack.length-1]?15:(e(5,9),"END_RAW_BLOCK");case 5:return 15;case 6:return this.popState(),14;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:case 16:return this.popState(),44;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(b.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;case 23:return 48;case 24:return 73;case 25:case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;case 30:return this.popState(),33;case 31:return b.yytext=e(1,2).replace(/\\"/g,'"'),80;case 32:return b.yytext=e(1,2).replace(/\\'/g,"'"),80;case 33:return 85;case 34:case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return b.yytext=b.yytext.replace(/\\([\\\]])/g,"$1"),72;case 43:return"INVALID";case 44:return 5}},a.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^\/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],a.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},a}();return b.lexer=c,a.prototype=b,b.Parser=a,new a}();b.default=c,a.exports=b.default},function(a,b,c){"use strict";function d(){var a=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];this.options=a}function e(a,b,c){void 0===b&&(b=a.length);var d=a[b-1],e=a[b-2];return d?"ContentStatement"===d.type?(e||!c?/\r?\n\s*?$/:/(^|\r?\n)\s*?$/).test(d.original):void 0:c}function f(a,b,c){void 0===b&&(b=-1);var d=a[b+1],e=a[b+2];return d?"ContentStatement"===d.type?(e||!c?/^\s*?\r?\n/:/^\s*?(\r?\n|$)/).test(d.original):void 0:c}function g(a,b,c){var d=a[null==b?0:b+1];if(d&&"ContentStatement"===d.type&&(c||!d.rightStripped)){var e=d.value;d.value=d.value.replace(c?/^\s+/:/^[ \t]*\r?\n?/,""),d.rightStripped=d.value!==e}}function h(a,b,c){var d=a[null==b?a.length-1:b-1];if(d&&"ContentStatement"===d.type&&(c||!d.leftStripped)){var e=d.value;return d.value=d.value.replace(c?/\s+$/:/[ \t]+$/,""),d.leftStripped=d.value!==e,d.leftStripped}}var i=c(1).default;b.__esModule=!0;var j=c(49),k=i(j);d.prototype=new k.default,d.prototype.Program=function(a){var b=!this.options.ignoreStandalone,c=!this.isRootSeen;this.isRootSeen=!0;for(var d=a.body,i=0,j=d.length;i<j;i++){var k=d[i],l=this.accept(k);if(l){var m=e(d,i,c),n=f(d,i,c),o=l.openStandalone&&m,p=l.closeStandalone&&n,q=l.inlineStandalone&&m&&n;l.close&&g(d,i,!0),l.open&&h(d,i,!0),b&&q&&(g(d,i),h(d,i)&&"PartialStatement"===k.type&&(k.indent=/([ \t]+$)/.exec(d[i-1].original)[1])),b&&o&&(g((k.program||k.inverse).body),h(d,i)),b&&p&&(g(d,i),h((k.inverse||k.program).body))}}return a},d.prototype.BlockStatement=d.prototype.DecoratorBlock=d.prototype.PartialBlockStatement=function(a){this.accept(a.program),this.accept(a.inverse);var b=a.program||a.inverse,c=a.program&&a.inverse,d=c,i=c;if(c&&c.chained)for(d=c.body[0].program;i.chained;)i=i.body[i.body.length-1].program;var j={open:a.openStrip.open,close:a.closeStrip.close,openStandalone:f(b.body),closeStandalone:e((d||b).body)};if(a.openStrip.close&&g(b.body,null,!0),c){var k=a.inverseStrip;k.open&&h(b.body,null,!0),k.close&&g(d.body,null,!0),a.closeStrip.open&&h(i.body,null,!0),!this.options.ignoreStandalone&&e(b.body)&&f(d.body)&&(h(b.body),g(d.body))}else a.closeStrip.open&&h(b.body,null,!0);return j},d.prototype.Decorator=d.prototype.MustacheStatement=function(a){return a.strip},d.prototype.PartialStatement=d.prototype.CommentStatement=function(a){var b=a.str
vendor: 4,123 bytes, line 5
5ip||{};return{inlineStandalone:!0,open:b.open,close:b.close}},b.default=d,a.exports=b.default},function(a,b,c){"use strict";function d(){this.parents=[]}function e(a){this.acceptRequired(a,"path"),this.acceptArray(a.params),this.acceptKey(a,"hash")}function f(a){e.call(this,a),this.acceptKey(a,"program"),this.acceptKey(a,"inverse")}function g(a){this.acceptRequired(a,"name"),this.acceptArray(a.params),this.acceptKey(a,"hash")}var h=c(1).default;b.__esModule=!0;var i=c(6),j=h(i);d.prototype={constructor:d,mutating:!1,acceptKey:function(a,b){var c=this.accept(a[b]);if(this.mutating){if(c&&!d.prototype[c.type])throw new j.default('Unexpected node type "'+c.type+'" found when accepting '+b+" on "+a.type);a[b]=c}},acceptRequired:function(a,b){if(this.acceptKey(a,b),!a[b])throw new j.default(a.type+" requires "+b)},acceptArray:function(a){for(var b=0,c=a.length;b<c;b++)this.acceptKey(a,b),a[b]||(a.splice(b,1),b--,c--)},accept:function(a){if(a){if(!this[a.type])throw new j.default("Unknown type: "+a.type,a);this.current&&this.parents.unshift(this.current),this.current=a;var b=this[a.type](a);return this.current=this.parents.shift(),!this.mutating||b?b:!1!==b?a:void 0}},Program:function(a){this.acceptArray(a.body)},MustacheStatement:e,Decorator:e,BlockStatement:f,DecoratorBlock:f,PartialStatement:g,PartialBlockStatement:function(a){g.call(this,a),this.acceptKey(a,"program")},ContentStatement:function(){},CommentStatement:function(){},SubExpression:e,PathExpression:function(){},StringLiteral:function(){},NumberLiteral:function(){},BooleanLiteral:function(){},UndefinedLiteral:function(){},NullLiteral:function(){},Hash:function(a){this.acceptArray(a.pairs)},HashPair:function(a){this.acceptRequired(a,"value")}},b.default=d,a.exports=b.default},function(a,b,c){"use strict";function d(a,b){if(b=b.path?b.path.original:b,a.path.original!==b){var c={loc:a.path.loc};throw new q.default(a.path.original+" doesn't match "+b,c)}}function e(a,b){this.source=a,this.start={line:b.first_line,column:b.first_column},this.end={line:b.last_line,column:b.last_column}}function f(a){return/^\[.*\]$/.test(a)?a.substring(1,a.length-1):a}function g(a,b){return{open:"~"===a.charAt(2),close:"~"===b.charAt(b.length-3)}}function h(a){return a.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function i(a,b,c){c=this.locInfo(c);for(var d=a?"@":"",e=[],f=0,g=0,h=b.length;g<h;g++){var i=b[g].part,j=b[g].original!==i;if(d+=(b[g].separator||"")+i,j||".."!==i&&"."!==i&&"this"!==i)e.push(i);else{if(e.length>0)throw new q.default("Invalid path: "+d,{loc:c});".."===i&&f++}}return{type:"PathExpression",data:a,depth:f,parts:e,original:d,loc:c}}function j(a,b,c,d,e,f){var g=d.charAt(3)||d.charAt(2),h="{"!==g&&"&"!==g;return{type:/\*/.test(d)?"Decorator":"MustacheStatement",path:a,params:b,hash:c,escaped:h,strip:e,loc:this.locInfo(f)}}function k(a,b,c,e){d(a,c),e=this.locInfo(e);var f={type:"Program",body:b,strip:{},loc:e};return{type:"BlockStatement",path:a.path,params:a.params,hash:a.hash,program:f,openStrip:{},inverseStrip:{},closeStrip:{},loc:e}}function l(a,b,c,e,f,g){e&&e.path&&d(a,e);var h=/\*/.test(a.open);b.blockParams=a.blockParams;var i=void 0,j=void 0;if(c){if(h)throw new q.default("Unexpected inverse block on decorator",c);c.chain&&(c.program.body[0].closeStrip=e.strip),j=c.strip,i=c.program}return f&&(f=i,i=b,b=f),{type:h?"DecoratorBlock":"BlockStatement",path:a.path,params:a.params,hash:a.hash,program:b,inverse:i,openStrip:a.strip,inverseStrip:j,closeStrip:e&&e.strip,loc:this.locInfo(g)}}function m(a,b){if(!b&&a.length){var c=a[0].loc,d=a[a.length-1].loc;c&&d&&(b={source:c.source,start:{line:c.start.line,column:c.start.column},end:{line:d.end.line,column:d.end.column}})}return{type:"Program",body:a,strip:{},loc:b}}function n(a,b,c,e){return d(a,c),{type:"PartialBlockStatement",name:a.path,params:a.params,hash:a.hash,program:b,openStrip:a.strip,closeStrip:c&&c.strip,loc:this.locInfo(e)}}var o=c(1).default;b.__esModule=!0,b.SourceLocation=e,b.id=f,b.stripFlags=g,b.stripComment=h,b.preparePath=i,b.prepareMustache=j,b.prepareRawBlock=k,b.prepareBlock=l,b.prepareProgram=m,b.prepareParti
vendor: 4,442 bytes, line 5
5alBlock=n;var p=c(6),q=o(p)},function(a,b,c){"use strict";function d(){}function e(a,b,c){if(null==a||"string"!=typeof a&&"Program"!==a.type)throw new l.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+a);b=b||{},"data"in b||(b.data=!0),b.compat&&(b.useDepths=!0);var d=c.parse(a,b),e=(new c.Compiler).compile(d,b);return(new c.JavaScriptCompiler).compile(e,b)}function f(a,b,c){function d(){var d=c.parse(a,b),e=(new c.Compiler).compile(d,b),f=(new c.JavaScriptCompiler).compile(e,b,void 0,!0);return c.template(f)}function e(a,b){return f||(f=d()),f.call(this,a,b)}if(void 0===b&&(b={}),null==a||"string"!=typeof a&&"Program"!==a.type)throw new l.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+a);b=m.extend({},b),"data"in b||(b.data=!0),b.compat&&(b.useDepths=!0);var f=void 0;return e._setup=function(a){return f||(f=d()),f._setup(a)},e._child=function(a,b,c,e){return f||(f=d()),f._child(a,b,c,e)},e}function g(a,b){if(a===b)return!0;if(m.isArray(a)&&m.isArray(b)&&a.length===b.length){for(var c=0;c<a.length;c++)if(!g(a[c],b[c]))return!1;return!0}}function h(a){if(!a.path.parts){var b=a.path;a.path={type:"PathExpression",data:!1,depth:0,parts:[b.original+""],original:b.original+"",loc:b.loc}}}var i=c(34).default,j=c(1).default;b.__esModule=!0,b.Compiler=d,b.precompile=e,b.compile=f;var k=c(6),l=j(k),m=c(5),n=c(45),o=j(n),p=[].slice;d.prototype={compiler:d,equals:function(a){var b=this.opcodes.length;if(a.opcodes.length!==b)return!1;for(var c=0;c<b;c++){var d=this.opcodes[c],e=a.opcodes[c];if(d.opcode!==e.opcode||!g(d.args,e.args))return!1}b=this.children.length;for(var c=0;c<b;c++)if(!this.children[c].equals(a.children[c]))return!1;return!0},guid:0,compile:function(a,b){return this.sourceNode=[],this.opcodes=[],this.children=[],this.options=b,this.stringParams=b.stringParams,this.trackIds=b.trackIds,b.blockParams=b.blockParams||[],b.knownHelpers=m.extend(i(null),{helperMissing:!0,blockHelperMissing:!0,each:!0,if:!0,unless:!0,with:!0,log:!0,lookup:!0},b.knownHelpers),this.accept(a)},compileProgram:function(a){var b=new this.compiler,c=b.compile(a,this.options),d=this.guid++;return this.usePartial=this.usePartial||c.usePartial,this.children[d]=c,this.useDepths=this.useDepths||c.useDepths,d},accept:function(a){if(!this[a.type])throw new l.default("Unknown type: "+a.type,a);this.sourceNode.unshift(a);var b=this[a.type](a);return this.sourceNode.shift(),b},Program:function(a){this.options.blockParams.unshift(a.blockParams);for(var b=a.body,c=b.length,d=0;d<c;d++)this.accept(b[d]);return this.options.blockParams.shift(),this.isSimple=1===c,this.blockParams=a.blockParams?a.blockParams.length:0,this},BlockStatement:function(a){h(a);var b=a.program,c=a.inverse;b=b&&this.compileProgram(b),c=c&&this.compileProgram(c);var d=this.classifySexpr(a);"helper"===d?this.helperSexpr(a,b,c):"simple"===d?(this.simpleSexpr(a),this.opcode("pushProgram",b),this.opcode("pushProgram",c),this.opcode("emptyHash"),this.opcode("blockValue",a.path.original)):(this.ambiguousSexpr(a,b,c),this.opcode("pushProgram",b),this.opcode("pushProgram",c),this.opcode("emptyHash"),this.opcode("ambiguousBlockValue")),this.opcode("append")},DecoratorBlock:function(a){var b=a.program&&this.compileProgram(a.program),c=this.setupFullMustacheParams(a,b,void 0),d=a.path;this.useDecorators=!0,this.opcode("registerDecorator",c.length,d.original)},PartialStatement:function(a){this.usePartial=!0;var b=a.program;b&&(b=this.compileProgram(a.program));var c=a.params;if(c.length>1)throw new l.default("Unsupported number of partial arguments: "+c.length,a);c.length||(this.options.explicitPartialContext?this.opcode("pushLiteral","undefined"):c.push({type:"PathExpression",parts:[],depth:0}));var d=a.name.original,e="SubExpression"===a.name.type;e&&this.accept(a.name),this.setupFullMustacheParams(a,b,void 0,!0);var f=a.indent||"";this.options.preventIndent&&f&&(this.opcode("appendContent",f),f=""),this.opcode("invokePartial",e,d,f),this.opcode("append")},PartialBlockStatement:function(a){this.PartialStatement(a)},MustacheStatement:function(a){this.SubExpression(a),a.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},Decorator:function(a){this.DecoratorBlock(a)},ContentStatement:function(a){a.value&&this.opcode("appendContent",a.value)},CommentStatement:function(){},SubExpression:function(a){h(a);var b=this.classifySexpr(a);
vendor: 4,456 bytes, line 5
5"simple"===b?this.simpleSexpr(a):"helper"===b?this.helperSexpr(a):this.ambiguousSexpr(a)},ambiguousSexpr:function(a,b,c){var d=a.path,e=d.parts[0],f=null!=b||null!=c;this.opcode("getContext",d.depth),this.opcode("pushProgram",b),this.opcode("pushProgram",c),d.strict=!0,this.accept(d),this.opcode("invokeAmbiguous",e,f)},simpleSexpr:function(a){var b=a.path;b.strict=!0,this.accept(b),this.opcode("resolvePossibleLambda")},helperSexpr:function(a,b,c){var d=this.setupFullMustacheParams(a,b,c),e=a.path,f=e.parts[0];if(this.options.knownHelpers[f])this.opcode("invokeKnownHelper",d.length,f);else{if(this.options.knownHelpersOnly)throw new l.default("You specified knownHelpersOnly, but used the unknown helper "+f,a);e.strict=!0,e.falsy=!0,this.accept(e),this.opcode("invokeHelper",d.length,e.original,o.default.helpers.simpleId(e))}},PathExpression:function(a){this.addDepth(a.depth),this.opcode("getContext",a.depth);var b=a.parts[0],c=o.default.helpers.scopedId(a),d=!a.depth&&!c&&this.blockParamIndex(b);d?this.opcode("lookupBlockParam",d,a.parts):b?a.data?(this.options.data=!0,this.opcode("lookupData",a.depth,a.parts,a.strict)):this.opcode("lookupOnContext",a.parts,a.falsy,a.strict,c):this.opcode("pushContext")},StringLiteral:function(a){this.opcode("pushString",a.value)},NumberLiteral:function(a){this.opcode("pushLiteral",a.value)},BooleanLiteral:function(a){this.opcode("pushLiteral",a.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(a){var b=a.pairs,c=0,d=b.length;for(this.opcode("pushHash");c<d;c++)this.pushParam(b[c].value);for(;c--;)this.opcode("assignToHash",b[c].key);this.opcode("popHash")},opcode:function(a){this.opcodes.push({opcode:a,args:p.call(arguments,1),loc:this.sourceNode[0].loc})},addDepth:function(a){a&&(this.useDepths=!0)},classifySexpr:function(a){var b=o.default.helpers.simpleId(a.path),c=b&&!!this.blockParamIndex(a.path.parts[0]),d=!c&&o.default.helpers.helperExpression(a),e=!c&&(d||b);if(e&&!d){var f=a.path.parts[0],g=this.options;g.knownHelpers[f]?d=!0:g.knownHelpersOnly&&(e=!1)}return d?"helper":e?"ambiguous":"simple"},pushParams:function(a){for(var b=0,c=a.length;b<c;b++)this.pushParam(a[b])},pushParam:function(a){var b=null!=a.value?a.value:a.original||"";if(this.stringParams)b.replace&&(b=b.replace(/^(\.?\.\/)*/g,"").replace(/\//g,".")),a.depth&&this.addDepth(a.depth),this.opcode("getContext",a.depth||0),this.opcode("pushStringParam",b,a.type),"SubExpression"===a.type&&this.accept(a);else{if(this.trackIds){var c=void 0;if(!a.parts||o.default.helpers.scopedId(a)||a.depth||(c=this.blockParamIndex(a.parts[0])),c){var d=a.parts.slice(1).join(".");this.opcode("pushId","BlockParam",c,d)}else b=a.original||b,b.replace&&(b=b.replace(/^this(?:\.|$)/,"").replace(/^\.\//,"").replace(/^\.$/,"")),this.opcode("pushId",a.type,b)}this.accept(a)}},setupFullMustacheParams:function(a,b,c,d){var e=a.params;return this.pushParams(e),this.opcode("pushProgram",b),this.opcode("pushProgram",c),a.hash?this.accept(a.hash):this.opcode("emptyHash",d),e},blockParamIndex:function(a){for(var b=0,c=this.options.blockParams.length;b<c;b++){var d=this.options.blockParams[b],e=d&&m.indexOf(d,a);if(d&&e>=0)return[b,e]}}}},function(a,b,c){"use strict";function d(a){this.value=a}function e(){}function f(a,b,c,d){var e=b.popStack(),f=0,g=c.length;for(a&&g--;f<g;f++)e=b.nameLookup(e,c[f],d);return a?[b.aliasable("container.strict"),"(",e,", ",b.quotedString(c[f]),", ",JSON.stringify(b.source.currentLocation)," )"]:e}var g=c(13).default,h=c(1).default;b.__esModule=!0;var i=c(4),j=c(6),k=h(j),l=c(5),m=c(53),n=h(m);e.prototype={nameLookup:function(a,b){return this.internalNameLookup(a,b)},depthedLookup:function(a){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(a),")"]},compilerInfo:function(){var a=i.COMPILER_REVISION;return[a,i.REVISION_CHANGES[a]]},appendToBuffer:function(a,b,c){return l.isArray(a)||(a=[a]),a=this.source.wrap(a,b),this.environment.isSimple?["return ",a,";"]:c?["buffer += ",a,";"]:(a.appendToBuffer=!0,a)},initializeBuffer:function(){return this.quotedString("")},internalNameLookup:function(a,b){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",a,",",JSON.stringify(b),")"]},lookupPropertyFunctionIsUsed:!1,compile:function(a,b,c,d){this.environment=a,this.options=b,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.prec
vendor: 6,984 bytes, lines 5-6
5ompile=!d,this.name=this.environment.name,this.isChild=!!c,this.context=c||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(a,b),this.useDepths=this.useDepths||a.useDepths||a.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||a.useBlockParams;var e=a.opcodes,f=void 0,g=void 0,h=void 0,i=void 0;for(h=0,i=e.length;h<i;h++)f=e[h],this.source.currentLocation=f.loc,g=g||f.loc,this[f.opcode].apply(this,f.args);if(this.source.currentLocation=g,this.pushSource(""),this.stackSlot||this.inlineStack.length||this.compileStack.length)throw new k.default("Compile completed with content left on stack");this.decorators.isEmpty()?this.decorators=void 0:(this.useDecorators=!0,this.decorators.prepend(["var decorators = container.decorators, ",this.lookupPropertyFunctionVarDeclaration(),";\n"]),this.decorators.push("return fn;"),d?this.decorators=Function.apply(this,["fn","props","container","depth0","data","blockParams","depths",this.decorators.merge()]):(this.decorators.prepend("function(fn, props, container, depth0, data, blockParams, depths) {\n"),this.decorators.push("}\n"),this.decorators=this.decorators.merge()));var j=this.createFunctionContext(d);if(this.isChild)return j;var l={compiler:this.compilerInfo(),main:j};this.decorators&&(l.main_d=this.decorators,l.useDecorators=!0);var m=this.context,n=m.programs,o=m.decorators;for(h=0,i=n.length;h<i;h++)n[h]&&(l[h]=n[h],o[h]&&(l[h+"_d"]=o[h],l.useDecorators=!0));return this.environment.usePartial&&(l.usePartial=!0),this.options.data&&(l.useData=!0),this.useDepths&&(l.useDepths=!0),this.useBlockParams&&(l.useBlockParams=!0),this.options.compat&&(l.compat=!0),d?l.compilerOptions=this.options:(l.compiler=JSON.stringify(l.compiler),this.source.currentLocation={start:{line:1,column:0}},l=this.objectLiteral(l),b.srcName?(l=l.toStringWithSourceMap({file:b.destName}),l.map=l.map&&l.map.toString()):l=l.toString()),l},preamble:function(){this.lastContext=0,this.source=new n.default(this.options.srcName),this.decorators=new n.default(this.options.srcName)},createFunctionContext:function(a){var b=this,c="",d=this.stackVars.concat(this.registers.list);d.length>0&&(c+=", "+d.join(", "));var e=0;g(this.aliases).forEach(function(a){var d=b.aliases[a];d.children&&d.referenceCount>1&&(c+=", alias"+ ++e+"="+a,d.children[0]="alias"+e)}),this.lookupPropertyFunctionIsUsed&&(c+=", "+this.lookupPropertyFunctionVarDeclaration());var f=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&f.push("blockParams"),this.useDepths&&f.push("depths");var h=this.mergeSource(c);return a?(f.push(h),Function.apply(this,f)):this.source.wrap(["function(",f.join(","),") {\n  ",h,"}"])},mergeSource:function(a){var b=this.environment.isSimple,c=!this.forceBuffer,d=void 0,e=void 0,f=void 0,g=void 0;return this.source.each(function(a){a.appendToBuffer?(f?a.prepend("  + "):f=a,g=a):(f&&(e?f.prepend("buffer += "):d=!0,g.add(";"),f=g=void 0),e=!0,b||(c=!1))}),c?f?(f.prepend("return "),g.add(";")):e||this.source.push('return "";'):(a+=", buffer = "+(d?"":this.initializeBuffer()),f?(f.prepend("return buffer + "),g.add(";")):this.source.push("return buffer;")),a&&this.source.prepend("var "+a.substring(2)+(d?"":";\n")),this.source.merge()},lookupPropertyFunctionVarDeclaration:function(){return"\n      lookupProperty = container.lookupProperty || function(parent, propertyName) {\n        if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n          return parent[propertyName];\n        }\n        return undefined\n    }\n    ".trim()},blockValue:function(a){var b=this.aliasable("container.hooks.blockHelperMissing"),c=[this.contextName(0)];this.setupHelperArgs(a,0,c);var d=this.popStack();c.splice(1,0,d),this.push(this.source.functionCall(b,"call",c))},ambiguousBlockValue:function(){var a=this.aliasable("container.hooks.blockHelperMissing"),b=[this.contextName(0)];this.setupHelperArgs("",0,b,!0),this.flushInline();var c=this.topStack();b.splice(1,0,c),
6this.pushSource(["if (!",this.lastHelper,") { ",c," = ",this.source.functionCall(a,"call",b),"}"])},appendContent:function(a){this.pendingContent?a=this.pendingContent+a:this.pendingLocation=this.source.currentLocation,this.pendingContent=a},append:function(){if(this.isInline())this.replaceStack(function(a){return[" != null ? ",a,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var a=this.popStack();this.pushSource(["if (",a," != null) { ",this.appendToBuffer(a,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(a){this.lastContext=a},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(a,b,c,d){var e=0;d||!this.options.compat||this.lastContext?this.pushContext():this.push(this.depthedLookup(a[e++])),this.resolvePath("context",a,e,b,c)},lookupBlockParam:function(a,b){this.useBlockParams=!0,this.push(["blockParams[",a[0],"][",a[1],"]"]),this.resolvePath("context",b,1)},lookupData:function(a,b,c){a?this.pushStackLiteral("container.data(data, "+a+")"):this.pushStackLiteral("data"),this.resolvePath("data",b,0,!0,c)},resolvePath:function(a,b,c,d,e){var g=this;if(this.options.strict||this.options.assumeObjects)return void this.push(f(this.options.strict&&e,this,b,a));for(var h=b.length;c<h;c++)this.replaceStack(function(e){var f=g.nameLookup(e,b[c],a);return d?[" && ",f]:[" != null ? ",f," : ",e]})},resolvePossibleLambda:function(){this.push([this.aliasable("container.lambda"),"(",this.popStack(),", ",this.contextName(0),")"])},pushStringParam:function(a,b){this.pushContext(),this.pushString(b),"SubExpression"!==b&&("string"==typeof a?this.pushString(a):this.pushStackLiteral(a))},emptyHash:function(a){this.trackIds&&this.push("{}"),this.stringParams&&(this.push("{}"),this.push("{}")),this.pushStackLiteral(a?"undefined":"{}")},pushHash:function(){this.hash&&this.hashes.push(this.hash),this.hash={values:{},types:[],contexts:[],ids:[]}},popHash:function(){var a=this.hash;this.hash=this.hashes.pop(),this.trackIds&&this.push(this.objectLiteral(a.ids)),this.stringParams&&(this.push(this.objectLiteral(a.contexts)),this.push(this.objectLiteral(a.types))),this.push(this.objectLiteral(a.values))},pushString:function(a){this.pushStackLiteral(this.quotedString(a))},pushLiteral:function(a){this.pushStackLiteral(a)},pushProgram:function(a){null!=a?this.pushStackLiteral(this.programExpression(a)):this.pushStackLiteral(null)},registerDecorator:function(a,b){var c=this.nameLookup("decorators",b,"decorator"),d=this.setupHelperArgs(b,a);this.decorators.push(["fn = ",this.decorators.functionCall(c,"",["f
6n","props","container",d])," || fn;"])},invokeHelper:function(a,b,c){var d=this.popStack(),e=this.setupHelper(a,b),f=[];c&&f.push(e.name),f.push(d),this.options.strict||f.push(this.aliasable("container.hooks.helperMissing"));var g=["(",this.itemsSeparatedBy(f,"||"),")"],h=this.source.functionCall(g,"call",e.callParams);this.push(h)},itemsSeparatedBy:function(a,b){var c=[];c.push(a[0]);for(var d=1;d<a.length;d++)c.push(b,a[d]);return c},invokeKnownHelper:function(a,b){var c=this.setupHelper(a,b);this.push(this.source.functionCall(c.name,"call",c.callParams))},invokeAmbiguous:function(a,b){this.useRegister("helper");var c=this.popStack();this.emptyHash();var d=this.setupHelper(0,a,b),e=this.lastHelper=this.nameLookup("helpers",a,"helper"),f=["(","(helper = ",e," || ",c,")"];this.options.strict||(f[0]="(helper = ",f.push(" != null ? helper : ",this.aliasable("container.hooks.helperMissing"))),this.push(["(",f,d.paramsInit?["),(",d.paramsInit]:[],"),","(typeof helper === ",this.aliasable('"function"')," ? ",this.source.functionCall("helper","call",d.callParams)," : helper))"])},invokePartial:function(a,b,c){var d=[],e=this.setupParams(b,1,d);a&&(b=this.popStack(),delete e.name),c&&(e.indent=JSON.stringify(c)),e.helpers="helpers",e.partials="partials",e.decorators="container.decorators",a?d.unshift(b):d.unshift(this.nameLookup("partials",b,"partial")),this.options.compat&&(e.depths="depths"),e=this.objectLiteral(e),d.push(e),this.push(this.source.functionCall("container.invokePartial","",d))},assignToHash:function(a){var b=this.popStack(),c=void 0,d=void 0,e=void 0;this.trackIds&&(e=this.popStack()),this.stringParams&&(d=this.popStack(),c=this.popStack());var f=this.hash;c&&(f.contexts[a]=c),d&&(f.types[a]=d),e&&(f.ids[a]=e),f.values[a]=b},pushId:function(a,b,c){"BlockParam"===a?this.pushStackLiteral("blockParams["+b[0]+"].path["+b[1]+"]"+(c?" + "+JSON.stringify("."+c):"")):"PathExpression"===a?this.pushString(b):"SubExpression"===a?this.pushStackLiteral("true"):this.pushStackLiteral("null")},compiler:e,compileChildren:function(a,b){for(var c=a.children,d=void 0,e=void 0,f=0,g=c.length;f<g;f++){d=c[f],e=new this.compiler;var h=this.matchExistingProgram(d);if(null==h){this.context.programs.push("");var i=this.context.programs.length;d.index=i,d.name="program"+i,this.context.programs[i]=e.compile(d,b,this.context,!this.precompile),this.context.decorators[i]=e.decorators,this.context.environments[i]=d,this.useDepths=this.useDepths||e.useDepths,this.useBlockParams=this.useBlockParams||e.useBlockParams,d.useDepths=this.useDepths,d.useBlockParams=this.useBlockParams}else d.index=h.index,d.name="program"+h.index,this.useDepths=this.useDepths||h.useDepths,this.useBlockParams=this.useBlockParams||h.useBlockParams}},matchExistingProgram:function(a){for(var b=0,c=this.context.environments.length;b<c;b++){var d=this.context.environments[b];if(d&&d.equals(a))return d}},programExpression:function(a){var b=this.environment.children[a],c=[b.index,"data",b.blockParams];return(this.useBlockParams||this.useDepths)&&c.push("blockParams"),this.useDepths&&c.push("depths"),"container.program("+c.join(", ")+")"},useRegister:function(a){this.registers[a]||(this.registers[a]=!0,this.registers.list.push(a))},push:function(a){return a instanceof d||(a=this.source.wrap(a)),this.inlineStack.push(a),a},pushStackLiteral:function(a){this.push(new d(a))},pushSource:function(a){this.pendingContent&&(this.source.push(this.appendToBuffer(this.source.quotedString(this.pendingContent),this.pendingLocation)),this.pendingContent=void 0),a&&this.source.push(a)},replaceStack:function(a){var b=["("],c=void 0,e=void 0,f=void 0;if(!this.isInline())throw new k.default("replaceStack on non-inline");var g=this.popStack(!0);if(g instanceof d)c=[g.value],b=["(",c],f=!0;else{e=!0;var h=this.incrStack();b=["((",this.push(h)," = ",g,")"],c=this.topStack()}var i=a.call(this,c);f||this.popStack(),e&&this.stackSlot--,this.push(b.concat(i,")"))},incrStack:function(){return this.stackSlot++,this.stackSlot>this.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot}
vendor: 4,455 bytes, line 6
6,flushInline:function(){var a=this.inlineStack;this.inlineStack=[];for(var b=0,c=a.length;b<c;b++){var e=a[b];if(e instanceof d)this.compileStack.push(e);else{var f=this.incrStack();this.pushSource([f," = ",e,";"]),this.compileStack.push(f)}}},isInline:function(){return this.inlineStack.length},popStack:function(a){var b=this.isInline(),c=(b?this.inlineStack:this.compileStack).pop();if(!a&&c instanceof d)return c.value;if(!b){if(!this.stackSlot)throw new k.default("Invalid stack pop");this.stackSlot--}return c},topStack:function(){var a=this.isInline()?this.inlineStack:this.compileStack,b=a[a.length-1];return b instanceof d?b.value:b},contextName:function(a){return this.useDepths&&a?"depths["+a+"]":"depth"+a},quotedString:function(a){return this.source.quotedString(a)},objectLiteral:function(a){return this.source.objectLiteral(a)},aliasable:function(a){var b=this.aliases[a];return b?(b.referenceCount++,b):(b=this.aliases[a]=this.source.wrap(a),b.aliasable=!0,b.referenceCount=1,b)},setupHelper:function(a,b,c){var d=[];return{params:d,paramsInit:this.setupHelperArgs(b,a,d,c),name:this.nameLookup("helpers",b,"helper"),callParams:[this.aliasable(this.contextName(0)+" != null ? "+this.contextName(0)+" : (container.nullContext || {})")].concat(d)}},setupParams:function(a,b,c){var d={},e=[],f=[],g=[],h=!c,i=void 0;h&&(c=[]),d.name=this.quotedString(a),d.hash=this.popStack(),this.trackIds&&(d.hashIds=this.popStack()),this.stringParams&&(d.hashTypes=this.popStack(),d.hashContexts=this.popStack());var j=this.popStack(),k=this.popStack();(k||j)&&(d.fn=k||"container.noop",d.inverse=j||"container.noop");for(var l=b;l--;)i=this.popStack(),c[l]=i,this.trackIds&&(g[l]=this.popStack()),this.stringParams&&(f[l]=this.popStack(),e[l]=this.popStack());return h&&(d.args=this.source.generateArray(c)),this.trackIds&&(d.ids=this.source.generateArray(g)),this.stringParams&&(d.types=this.source.generateArray(f),d.contexts=this.source.generateArray(e)),this.options.data&&(d.data="data"),this.useBlockParams&&(d.blockParams="blockParams"),d},setupHelperArgs:function(a,b,c,d){var e=this.setupParams(a,b,c);return e.loc=JSON.stringify(this.source.currentLocation),e=this.objectLiteral(e),d?(this.useRegister("options"),c.push("options"),["options=",e]):c?(c.push(e),""):e}},function(){for(var a="break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield await null true false".split(" "),b=e.RESERVED_WORDS={},c=0,d=a.length;c<d;c++)b[a[c]]=!0}(),e.isValidJavaScriptVariableName=function(a){return!e.RESERVED_WORDS[a]&&/^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(a)},b.default=e,a.exports=b.default},function(a,b,c){"use strict";function d(a,b,c){if(g.isArray(a)){for(var d=[],e=0,f=a.length;e<f;e++)d.push(b.wrap(a[e],c));return d}return"boolean"==typeof a||"number"==typeof a?a+"":a}function e(a){this.srcFile=a,this.source=[]}var f=c(13).default;b.__esModule=!0;var g=c(5),h=void 0;try{}catch(i){}h||(h=function(a,b,c,d){this.src="",d&&this.add(d)},h.prototype={add:function(a){g.isArray(a)&&(a=a.join("")),this.src+=a},prepend:function(a){g.isArray(a)&&(a=a.join("")),this.src=a+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}}),e.prototype={isEmpty:function(){return!this.source.length},prepend:function(a,b){this.source.unshift(this.wrap(a,b))},push:function(a,b){this.source.push(this.wrap(a,b))},merge:function(){var a=this.empty();return this.each(function(b){a.add(["  ",b,"\n"])}),a},each:function(a){for(var b=0,c=this.source.length;b<c;b++)a(this.source[b])},empty:function(){var a=this.currentLocation||{start:{}};return new h(a.start.line,a.start.column,this.srcFile)},wrap:function(a){var b=arguments.length<=1||void 0===arguments[1]?this.currentLocation||{start:{}}:arguments[1];return a instanceof h?a:(a=d(a,this,b),new h(b.start.line,b.start.column,this.srcFile,a))},functionCall:function(a,b,c){return c=this.generateList(c),this.wrap([a,b?"."+b+"(":"(",c,")"])},quotedString:function(a){return'"'+(a+"").replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")+'"'}
6,objectLiteral:function(a){var b=this,c=[];f(a).forEach(function(e){var f=d(a[e],b);"undefined"!==f&&c.push([b.quotedString(e),":",f])});var e=this.generateList(c);return e.prepend("{"),e.add("}"),e},generateList:function(a){for(var b=this.empty(),c=0,e=a.length;c<e;c++)c&&b.add(","),b.add(d(a[c],this));return b},generateArray:function(a){var b=this.generateList(a);return b.prepend("["),b.add("]"),b}},b.default=e,a.exports=b.default}])}),function(a,b,c){!function(a){"use strict";"function"==typeof define&&define.amd?define("qTip",["jquery"],a):jQuery&&!jQuery.fn.qtip&&a(jQuery)}(function(d){"use strict";function e(a,b,c,e){this.id=c,this.target=a,this.tooltip=D,this.elements={target:a},this._id=Q+"-"+c,this.timers={img:{}},this.options=b,this.plugins={},this.cache={event:{},target:d(),disabled:C,attr:e,onTooltip:C,lastClass:""},this.rendered=this.destroyed=this.disabled=this.waiting=this.hiddenDuringWait=this.positioning=this.triggering=C}function f(a){return a===D||"object"!==d.type(a)}function g(a){return!(d.isFunction(a)||a&&a.attr||a.length||"object"===d.type(a)&&(a.jquery||a.then))}function h(a){var b,c,e,h;return f(a)?C:(f(a.metadata)&&(a.metadata={type:a.metadata}),"content"in a&&(b=a.content,f(b)||b.jquery||b.done?b=a.content={text:c=g(b)?C:b}:c=b.text,"ajax"in b&&(e=b.ajax,h=e&&e.once!==C,delete b.ajax,b.text=function(a,b){var f=c||d(this).attr(b.options.content.attr)||"Loading...",g=d.ajax(d.extend({},e,{context:b})).then(e.success,D,e.error).then(function(a){return a&&h&&b.set("content.text",a),a},function(a,c,d){b.destroyed||0===a.status||b.set("content.text",c+": "+d)});return h?f:(b.set("content.text",f),g)}),"title"in b&&(d.isPlainObject(b.title)&&(b.button=b.title.button,b.title=b.title.text),g(b.title||C)&&(b.title=C))),"position"in a&&f(a.position)&&(a.position={my:a.position,at:a.position}),"show"in a&&f(a.show)&&(a.show=a.show.jquery?{target:a.show}:a.show===B?{ready:B}:{event:a.show}),"hide"in a&&f(a.hide)&&(a.hide=a.hide.jquery?{target:a.hide}:{event:a.hide}),"style"in a&&f(a.style)&&(a.style={classes:a.style}),d.each(P,function(){this.sanitize&&this.sanitize(a)}),a)}function i(a,b){for(var c,d=0,e=a,f=b.split(".");e=e[f[d++]];)d<f.length&&(c=e);return[c||a,f.pop()]}function j(a,b){var c,d,e;for(c in this.checks)for(d in this.checks[c])(e=new RegExp(d,"i").exec(a))&&(b.push(e),("builtin"===c||this.plugins[c])&&this.checks[c][d].apply(this.plugins[c]||this,b))}function k(a){return T.concat("").join(a?"-"+a+" ":" ")}function l(a,b){if(b>0)return setTimeout(d.proxy(a,this),b);a.call(this)}function m(a){this.tooltip.hasClass($)||(clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this.timers.show=l.call(this,function(){this.toggle(B,a)},this.options.show.delay))}function n(a){if(!this.tooltip.hasClass($)&&!this.destroyed){var b=d(a.relatedTarget),c=b.closest(U)[0]===this.tooltip[0],e=b[0]===this.options.show.target[0];if(clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this!==b[0]&&"mouse"===this.options.position.target&&c||this.options.hide.fixed&&/mouse(out|leave|move)/.test(a.type)&&(c||e))try{a.preventDefault(),a.stopImmediatePropagation()}catch(f){}else this.timers.hide=l.call(this,function(){this.toggle(C,a)},this.options.hide.delay,this)}}function o(a){!this.tooltip.hasClass($)&&this.options.hide.inactive&&(clearTimeout(this.timers.inactive),this.timers.inactive=l.call(this,function(){this.hide(a)},this.options.hide.inactive))}function p(a){this.rendered&&this.tooltip[0].offsetWidth>0&&this.reposition(a)}function q(a,c,e){d(b.body).delegate(a,(c.split?c:c.join("."+Q+" "))+"."+Q,function(){var a=w.api[d.attr(this,S)];a&&!a.disabled&&e.apply(a,arguments)})}function r(a,c,f){var g,i,j,k,l,m=d(b.body),n=a[0]===b?m:a,o=a.metadata?a.metadata(f.metadata):D,p="html5"===f.metadata.type&&o?o[f.metadata.name]:D,q=a.data(f.metadata.name||"qtipopts");try{q="string"==typeof q?d.parseJSON(q):q}catch(r){}if(k=d.extend(B,{},w.defaults,f,"object"==typeof q?h(q):D,h(p||o)),i=k.position,k.id=c,"boolean"==typeof k.content.text){if(j=a.attr(k.content.attr),k.content.attr===C||!j)return C;k.content.text=j}if(i.container.length||(i.container=m),i.target===C&&(i.target=n),k.show.target===C&&(k.show.target=n),k.show.solo===B&&(k.show.solo=i.container.closest("body")),k.hide.target===C&&(k.hide.target=n),k.position.viewport===B&&(k.position.viewport=i.container),i.c
vendor: 4,189 bytes, line 6
6ontainer=i.container.eq(0),i.at=new y(i.at,B),i.my=new y(i.my),a.data(Q))if(k.overwrite)a.qtip("destroy",!0);else if(k.overwrite===C)return C;return a.attr(R,c),k.suppress&&(l=a.attr("title"))&&a.removeAttr("title").attr(aa,l).attr("title",""),g=new e(a,k,c,!!j),a.data(Q,g),g}function s(a){return a.charAt(0).toUpperCase()+a.slice(1)}function t(a,b){var d,e,f=b.charAt(0).toUpperCase()+b.slice(1),g=(b+" "+pa.join(f+" ")+f).split(" "),h=0;if(oa[b])return a.css(oa[b]);for(;d=g[h++];)if((e=a.css(d))!==c)return oa[b]=d,e}function u(a,b){return Math.ceil(parseFloat(t(a,b)))}function v(a,b){this._ns="tip",this.options=b,this.offset=b.offset,this.size=[b.width,b.height],this.init(this.qtip=a)}var w,x,y,z,A,B=!0,C=!1,D=null,E="x",F="y",G="width",H="height",I="top",J="left",K="bottom",L="right",M="center",N="flipinvert",O="shift",P={},Q="qtip",R="data-hasqtip",S="data-qtip-id",T=["ui-widget","ui-tooltip"],U="."+Q,V="click dblclick mousedown mouseup mousemove mouseleave mouseenter".split(" "),W=Q+"-fixed",X=Q+"-default",Y=Q+"-focus",Z=Q+"-hover",$=Q+"-disabled",_="_replacedByqTip",aa="oldtitle",ba={ie:function(){for(var a=4,c=b.createElement("div");(c.innerHTML="\x3c!--[if gt IE "+a+"]><i></i><![endif]--\x3e")&&c.getElementsByTagName("i")[0];a+=1);return a>4?a:NaN}(),iOS:parseFloat((""+(/CPU.*OS ([0-9_]{1,5})|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))||C};x=e.prototype,x._when=function(a){return d.when.apply(d,a)},x.render=function(a){if(this.rendered||this.destroyed)return this;var b=this,c=this.options,e=this.cache,f=this.elements,g=c.content.text,h=c.content.title,i=c.content.button,j=c.position,k=(this._id,[]);return d.attr(this.target[0],"aria-describedby",this._id),e.posClass=this._createPosClass((this.position={my:j.my,at:j.at}).my),this.tooltip=f.tooltip=d("<div/>",{id:this._id,class:[Q,X,c.style.classes,e.posClass].join(" "),width:c.style.width||"",height:c.style.height||"",tracking:"mouse"===j.target&&j.adjust.mouse,role:"alert","aria-live":"polite","aria-atomic":C,"aria-describedby":this._id+"-content","aria-hidden":B}).toggleClass($,this.disabled).attr(S,this.id).data(Q,this).appendTo(j.container).append(f.content=d("<div />",{class:Q+"-content",id:this._id+"-content","aria-atomic":B})),this.rendered=-1,this.positioning=B,h&&(this._createTitle(),d.isFunction(h)||k.push(this._updateTitle(h,C))),i&&this._createButton(),d.isFunction(g)||k.push(this._updateContent(g,C)),this.rendered=B,this._setWidget(),d.each(P,function(a){var c;"render"===this.initialize&&(c=this(b))&&(b.plugins[a]=c)}),this._unassignEvents(),this._assignEvents(),this._when(k).then(function(){b._trigger("render"),b.positioning=C,b.hiddenDuringWait||!c.show.ready&&!a||b.toggle(B,e.event,C),b.hiddenDuringWait=C}),w.api[this.id]=this,this},x.destroy=function(a){function b(){if(!this.destroyed){this.destroyed=B;var a,b=this.target,c=b.attr(aa);this.rendered&&this.tooltip.stop(1,0).find("*").remove().end().remove(),d.each(this.plugins,function(a){this.destroy&&this.destroy()});for(a in this.timers)clearTimeout(this.timers[a]);b.removeData(Q).removeAttr(S).removeAttr(R).removeAttr("aria-describedby"),this.options.suppress&&c&&b.attr("title",c).removeAttr(aa),this._unassignEvents(),this.options=this.elements=this.cache=this.timers=this.plugins=this.mouse=D,delete w.api[this.id]}}return this.destroyed?this.target:(a===B&&"hide"!==this.triggering||!this.rendered?b.call(this):(this.tooltip.one("tooltiphidden",d.proxy(b,this)),!this.triggering&&this.hide()),this.target)},z=x.checks={builtin:{"^id$":function(a,b,c,e){var f=c===B?w.nextid:c,g=Q+"-"+f;f!==C&&f.length>0&&!d("#"+g).length?(this._id=g,this.rendered&&(this.tooltip[0].id=this._id,this.elements.content[0].id=this._id+"-content",this.elements.title[0].id=this._id+"-title")):a[b]=e},"^prerender":function(a,b,c){c&&!this.rendered&&this.render(this.options.show.ready)},"^content.text$":function(a,b,c){this._updateContent(c)},"^content.attr$":function(a,b,c,d){this.options.content.text===this.target.attr(d)&&this._updateContent(this.target.attr(c))},"^content.title$":function(a,b,c){if(!c)return this._removeTitle();
vendor: 15,621 bytes, lines 6-7
6c&&!this.elements.title&&this._createTitle(),this._updateTitle(c)},"^content.button$":function(a,b,c){this._updateButton(c)},"^content.title.(text|button)$":function(a,b,c){this.set("content."+b,c)},"^position.(my|at)$":function(a,b,c){"string"==typeof c&&(this.position[b]=a[b]=new y(c,"at"===b))},"^position.container$":function(a,b,c){this.rendered&&this.tooltip.appendTo(c)},"^show.ready$":function(a,b,c){c&&(!this.rendered&&this.render(B)||this.toggle(B))},"^style.classes$":function(a,b,c,d){this.rendered&&this.tooltip.removeClass(d).addClass(c)},"^style.(width|height)":function(a,b,c){this.rendered&&this.tooltip.css(b,c)},"^style.widget|content.title":function(){this.rendered&&this._setWidget()},"^style.def":function(a,b,c){this.rendered&&this.tooltip.toggleClass(X,!!c)},"^events.(render|show|move|hide|focus|blur)$":function(a,b,c){this.rendered&&this.tooltip[(d.isFunction(c)?"":"un")+"bind"]("tooltip"+b,c)},"^(show|hide|position).(event|target|fixed|inactive|leave|distance|viewport|adjust)":function(){if(this.rendered){var a=this.options.position;this.tooltip.attr("tracking","mouse"===a.target&&a.adjust.mouse),this._unassignEvents(),this._assignEvents()}}}},x.get=function(a){if(this.destroyed)return this;var b=i(this.options,a.toLowerCase()),c=b[0][b[1]];return c.precedance?c.string():c};var ca=/^position\.(my|at|adjust|target|container|viewport)|style|content|show\.ready/i,da=/^prerender|show\.ready/i;x.set=function(a,b){if(this.destroyed)return this;var c,e=this.rendered,f=C,g=this.options;this.checks;return"string"==typeof a?(c=a,a={},a[c]=b):a=d.extend({},a),d.each(a,function(b,c){if(e&&da.test(b))return void delete a[b];var h,j=i(g,b.toLowerCase());h=j[0][j[1]],j[0][j[1]]=c&&c.nodeType?d(c):c,f=ca.test(b)||f,a[b]=[j[0],j[1],c,h]}),h(g),this.positioning=B,d.each(a,d.proxy(j,this)),this.positioning=C,this.rendered&&this.tooltip[0].offsetWidth>0&&f&&this.reposition("mouse"===g.position.target?D:this.cache.event),this},x._update=function(a,b,c){var e=this,f=this.cache;return this.rendered&&a?(d.isFunction(a)&&(a=a.call(this.elements.target,f.event,this)||""),d.isFunction(a.then)?(f.waiting=B,a.then(function(a){return f.waiting=C,e._update(a,b)},D,function(a){return e._update(a,b)})):a===C||!a&&""!==a?C:(a.jquery&&a.length>0?b.empty().append(a.css({display:"block",visibility:"visible"})):b.html(a),this._waitForContent(b).then(function(a){e.rendered&&e.tooltip[0].offsetWidth>0&&e.reposition(f.event,!a.length)}))):C},x._waitForContent=function(a){var b=this.cache;return b.waiting=B,(d.fn.imagesLoaded?a.imagesLoaded():d.Deferred().resolve([])).done(function(){b.waiting=C}).promise()},x._updateContent=function(a,b){this._update(a,this.elements.content,b)},x._updateTitle=function(a,b){this._update(a,this.elements.title,b)===C&&this._removeTitle(C)},x._createTitle=function(){var a=this.elements,b=this._id+"-title";a.titlebar&&this._removeTitle(),a.titlebar=d("<div />",{class:Q+"-titlebar "+(this.options.style.widget?k("header"):"")}).append(a.title=d("<div />",{id:b,class:Q+"-title","aria-atomic":B})).insertBefore(a.content).delegate(".qtip-close","mousedown keydown mouseup keyup mouseout",function(a){d(this).toggleClass("ui-state-active ui-state-focus","down"===a.type.substr(-4))}).delegate(".qtip-close","mouseover mouseout",function(a){d(this).toggleClass("ui-state-hover","mouseover"===a.type)}),this.options.content.button&&this._createButton()},x._removeTitle=function(a){var b=this.elements;b.title&&(b.titlebar.remove(),b.titlebar=b.title=b.button=D,a!==C&&this.reposition())},x._createPosClass=function(a){return Q+"-pos-"+(a||this.options.position.my).abbrev()},x.reposition=function(c,e){if(!this.rendered||this.positioning||this.destroyed)return this;this.positioning=B;var f,g,h,i,j=this.cache,k=this.tooltip,l=this.options.position,m=l.target,n=l.my,o=l.at,p=l.viewport,q=l.container,r=l.adjust,s=r.method.split(" "),t=k.outerWidth(C),u=k.outerHeight(C),v=0,w=0,x=k.css("position"),y={left:0,top:0},z=k[0].offsetWidth>0,A=c&&"scroll"===c.type,D=d(a),E=q[0].ownerDocument,F=this.mouse;if(d.isArray(m)&&2===m.length)o={x:J,y:I},y={left:m[0],top:m[1]};else if("mouse"===m)o={x:J,y:I},(!r.mouse||this.options.hide.distance)&&j.origin&&j.origin.pageX?c=j.origin:!c||c&&("resize"===c.type||"scroll"===c.type)?c=j.event:F&&F.pageX&&(c=F),"static"!==x&&(y=q.offset()),E.body.offsetWidth!==(a.innerWidth||E.documentElement.clientWidth)&&(g=d(b.body).offset()),y={left:c.pageX-y.left+(g&&g.left||0),top:c.pageY-y.top+(g&&g.top||0)},r.mouse&&A&&F&&(y.left-=(F.scrollX||0)-D.scrollLeft(),y.top-=(F.scrollY||0)-D.scrollTop());else{if("event"===m?c&&c.target&&"scroll"!==c.type&&"resize"!==c.type?j.target=d(c.target):c.target||(j.target=this.elements.target):"event"!==m&&(j.target=d(m.jquery?m:this.elements.target)),m=j.target,m=d(m).eq(0),0===m.length)return this;m[0]===b||m[0]===a?(v=ba.iOS?a.innerWidth:m.width(),w=ba.iOS?a.innerHeight:m.height(),m[0]===a&&(y={top:(p||m).scrollTop(),left:(p||m).scrollLeft()})):P.imagemap&&m.is("area")?f=P.imagemap(this,m,o,P.viewport?s:C):P.svg&&m&&m[0].ownerSVGElement?f=P.svg(this,m,o,P.viewport?s:C):(v=m.outerWidth(C),w=m.outerHeight(C),y=m.offset()),f&&(v=f.width,w=f.height,g=f.offset,y=f.position),y=this.reposition.offset(m,y,q),(ba.iOS>3.1&&ba.iOS<4.1||ba.iOS>=4.3&&ba.iOS<4.33||!ba.iOS&&"fixed"===x)&&(y.left-=D.scrollLeft(),y.top-=D.scrollTop()),(!f||f&&f.adjustable!==C)&&(y.left+=o.x===L?v:o.x===M?v/2:0,y.top+=o.y===K?w:o.y===M?w/2:0)}return y.left+=r.x+(n.x===L?-t:n.x===M?-t/2:0),y.top+=r.y+(n.y===K?-u:n.y===M?-u/2:0),P.viewport?(h=y.adjusted=P.viewport(this,y,l,v,w,t,u),g&&h.left&&(y.left+=g.left),g&&h.top&&(y.top+=g.top),h.my&&(this.position.my=h.my)):y.adjusted={left:0,top:0},j.posClass!==(i=this._createPosClass(this.position.my))&&k.removeClass(j.posClass).addClass(j.posClass=i),this._trigger("move",[y,p.elem||p],c)?(delete y.adjusted,e===C||!z||isNaN(y.left)||isNaN(y.top)||"mouse"===m||!d.isFunction(l.effect)?k.css(y):d.isFunction(l.effect)&&(l.effect.call(k,this,d.extend({},y)),k.queue(function(a){d(this).css({opacity:"",height:""}),ba.ie&&this.style.removeAttribute("filter"),a()})),this.positioning=C,this):this},x.reposition.offset=function(a,c,e){function f(a,b){c.left+=b*a.scrollLeft(),c.top+=b*a.scrollTop()}if(!e[0])return c;var g,h,i,j,k=d(a[0].ownerDocument),l=!!ba.ie&&"CSS1Compat"!==b.compatMode,m=e[0];do{"static"!==(h=d.css(m,"position"))&&("fixed"===h?(i=m.getBoundingClientRect(),f(k,-1)):(i=d(m).position(),i.left+=parseFloat(d.css(m,"borderLeftWidth"))||0,i.top+=parseFloat(d.css(m,"borderTopWidth"))||0),c.left-=i.left+(parseFloat(d.css(m,"marginLeft"))||0),c.top-=i.top+(parseFloat(d.css(m,"marginTop"))||0),g||"hidden"===(j=d.css(m,"overflow"))||"visible"===j||(g=d(m)))}while(m=m.offsetParent);return g&&(g[0]!==k[0]||l)&&f(g,1),c};var ea=(y=x.reposition.Corner=function(a,b){a=(""+a).replace(/([A-Z])/," $1").replace(/middle/gi,M).toLowerCase(),this.x=(a.match(/left|right/i)||a.match(/center/)||["inherit"])[0].toLowerCase(),this.y=(a.match(/top|bottom|center/i)||["inherit"])[0].toLowerCase(),this.forceY=!!b;var c=a.charAt(0);this.precedance="t"===c||"b"===c?F:E}).prototype;ea.invert=function(a,b){this[a]=this[a]===J?L:this[a]===L?J:b||this[a]},ea.string=function(a){var b=this.x,c=this.y,d=b!==c?"center"===b||"center"!==c&&(this.precedance===F||this.forceY)?[c,b]:[b,c]:[b];return!1!==a?d.join(" "):d},ea.abbrev=function(){var a=this.string(!1);return a[0].charAt(0)+(a[1]&&a[1].charAt(0)||"")},ea.clone=function(){return new y(this.string(),this.forceY)},x.toggle=function(a,c){var e=this.cache,f=this.options,g=this.tooltip;if(c){if(/over|enter/.test(c.type)&&e.event&&/out|leave/.test(e.event.type)&&f.show.target.add(c.target).length===f.show.target.length&&g.has(c.relatedTarget).length)return this;e.event=d.event.fix(c)}if(this.waiting&&!a&&(this.hiddenDuringWait=B),!this.rendered)return a?this.render(1):this;if(this.destroyed||this.disabled)return this;var h,i,j,k=a?"show":"hide",l=this.options[k],m=(this.options[a?"hide":"show"],this.options.position),n=this.options.content,o=this.tooltip.css("width"),p=this.tooltip.is(":visible"),q=a||1===l.target.length,r=!c||l.target.length<2||e.target[0]===c.target;return(typeof a).search("boolean|number")&&(a=!p),h=!g.is(":animated")&&p===a&&r,i=h?D:!!this._trigger(k,[90]),this.destroyed?this:(i!==C&&a&&this.focus(c),!i||h?this:(d.attr(g[0],"aria-hidden",!a),a?(this.mouse&&(e.origin=d.event.fix(this.mouse)),d.isFunction(n.text)&&this._updateContent(n.text,C),d.isFunction(n.title)&&this._updateTitle(n.title,C),!A&&"mouse"===m.target&&m.adjust.mouse&&(d(b).bind("mousemove."+Q,this._storeMouse),A=B),o||g.css("width",g.outerWidth(C)),this.reposition(c,arguments[2]),o||g.css("width",""),l.solo&&("string"==typeof l.solo?d(l.solo):d(U,l.solo)).not(g).not(l.target).qtip("hide",d.Event("tooltipsolo"))):(clearTimeout(this.timers.show),delete e.origin,A&&!d(U+'[tracking="true"]:visible',l.solo).not(g).length&&(d(b).unbind("mousemove."+Q),A=C),this.blur(c)),j=d.proxy(function(){a?(ba.ie&&g[0].style.removeAttribute("filter"),g.css("overflow",""),"string"==typeof l.autofocus&&d(this.options.show.autofocus,g).focus(),this.options.show.target.trigger("qtip-"+this.id+"-inactive")):g.css({display:"",visibility:"",opacity:"",left:"",top:""}),this._trigger(a?"visible":"hidden")},this),l.effect===C||q===C?(g[k](),j()):d.isFunction(l.effect)?(g.stop(1,1),l.effect.call(g,this),g.queue("fx",function(a){j(),a()})):g.fadeTo(90,a?1:0,j),a&&l.target.trigger("qtip-"+this.id+"-inactive"),this))},x.show=function(a){return this.toggle(B,a)},x.hide=function(a){return this.toggle(C,a)},x.focus=function(a){if(!this.rendered||this.destroyed)return this;var b=d(U),c=this.tooltip,e=parseInt(c[0].style.zIndex,10),f=w.zindex;return c.hasClass(Y)||this._trigger("focus",[f],a)&&(e!==f&&(b.each(function(){this.style.zIndex>e&&(this.style.zIndex=this.style.zIndex-1)}),b.filter("."+Y).qtip("blur",a)),c.addClass(Y)[0].style.zIndex=f),this},x.blur=function(a){return!this.rendered||this.destroyed?this:(this.tooltip.removeClass(Y),this._trigger("blur",[this.tooltip.css("zIndex")],a),this)},x.disable=function(a){return this.destroyed?this:("toggle"===a?a=!(this.rendered?this.tooltip.hasClass($):this.disabled):"boolean"!=typeof a&&(a=B),this.rendered&&this.tooltip.toggleClass($,a).attr("aria-disabled",a),this.disabled=!!a,this)},x.enable=function(){return this.disable(C)},x._createButton=function(){var a=this,b=this.elements,c=b.tooltip,e=this.options.content.button,f="string"==typeof e,g=f?e:"Close tooltip";b.button&&b.button.remove(),e.jquery?b.button=e:b.button=d("<a />",{class:"qtip-close "+(this.options.style.widget?"":Q+"-icon"),title:g,"aria-label":g}).prepend(d("<span />",{class:"ui-icon ui-icon-close",html:"&times;"})),b.button.appendTo(b.titlebar||c).attr("role","button").click(function(b){return c.hasClass($)||a.hide(b),C}),d("body").keyup(function(b){if("Escape"===b.key||27===b.key)return c.hasClass($)||a.hide(event),C})},x._updateButton=function(a){if(!this.rendered)return C;var b=this.elements.button;a?this._createButton():b.remove()},x._setWidget=function(){var a=this.options.style.widget,b=this.elements,c=b.tooltip,d=c.hasClass($);c.removeClass($),$=a?"ui-state-disabled":"qtip-disabled",c.toggleClass($,d),c.toggleClass("ui-helper-reset "+k(),a).toggleClass(X,this.options.style.def&&!a),b.content&&b.content.toggleClass(k("content"),a),b.titlebar&&b.titlebar.toggleClass(k("header"),a),b.button&&b.button.toggleClass(Q+"-icon",!a)},x._storeMouse=function(a){return(this.mouse=d.event.fix(a)).type="mousemove",this},x._bind=function(a,b,c,e,f){if(a&&c&&b.length){var g="."+this._id+(e?"-"+e:"");return d(a).bind((b.split?b:b.join(g+" "))+g,d.proxy(c,f||this)),this}},x._unbind=function(a,b){return a&&d(a).unbind("."+this._id+(b?"-"+b:"")),this},x._trigger=function(a,b,c){var e=d.Event("tooltip"+a);return e.originalEvent=c&&d.extend({},c)||this.cache.event||D,this.triggering=a,this.tooltip.trigger(e,[this].concat(b||[])),this.triggering=C,!e.isDefaultPrevented()},
7x._bindEvents=function(a,b,c,e,f,g){var h=c.filter(e).add(e.filter(c)),i=[];h.length&&(d.each(b,function(b,c){var e=d.inArray(c,a);e>-1&&i.push(a.splice(e,1)[0])}),i.length&&(this._bind(h,i,function(a){(!!this.rendered&&this.tooltip[0].offsetWidth>0?g:f).call(this,a)}),c=c.not(h),e=e.not(h))),this._bind(c,a,f),this._bind(e,b,g)},x._assignInitialEvents=function(a){function b(a){if(this.disabled||this.destroyed)return C;this.cache.event=a&&d.event.fix(a),this.cache.target=a&&d(a.target),clearTimeout(this.timers.show),this.timers.show=l.call(this,function(){this.render("object"==typeof a||c.show.ready)},c.prerender?0:c.show.delay)}var c=this.options,e=c.show.target,f=c.hide.target,g=c.show.event?d.trim(""+c.show.event).split(" "):[],h=c.hide.event?d.trim(""+c.hide.event).split(" "):[];this._bind(this.elements.target,["remove","removeqtip"],function(a){this.destroy(!0)},"destroy"),/mouse(over|enter)/i.test(c.show.event)&&!/mouse(out|leave)/i.test(c.hide.event)&&h.push("mouseleave"),this._bind(e,"mousemove",function(a){this._storeMouse(a),this.cache.onTarget=B}),this._bindEvents(g,h,e,f,b,function(){if(!this.timers)return C;clearTimeout(this.timers.show)}),(c.show.ready||c.prerender)&&b.call(this,a)},x._assignEvents=function(){var c=this,e=this.options,f=e.position,g=this.tooltip,h=e.show.target,i=e.hide.target,j=f.container,k=f.viewport,l=d(b),q=(d(b.body),d(a)),r=e.show.event?d.trim(""+e.show.event).split(" "):[],s=e.hide.event?d.trim(""+e.hide.event).split(" "):[];d.each(e.events,function(a,b){c._bind(g,"toggle"===a?["tooltipshow","tooltiphide"]:["tooltip"+a],b,null,g)}),/mouse(out|leave)/i.test(e.hide.event)&&"window"===e.hide.leave&&this._bind(l,["mouseout","blur"],function(a){/select|option/.test(a.target.nodeName)||a.relatedTarget||this.hide(a)}),e.hide.fixed?i=i.add(g.addClass(W)):/mouse(over|enter)/i.test(e.show.event)&&this._bind(i,"mouseleave",function(){clearTimeout(this.timers.show)}),(""+e.hide.event).indexOf("unfocus")>-1&&this._bind(j.closest("html"),["mousedown"],function(a){var b=d(a.target),c=this.rendered&&!this.tooltip.hasClass($)&&this.tooltip[0].offsetWidth>0,e=b.parents(U).filter(this.tooltip[0]).length>0;b[0]===this.target[0]||b[0]===this.tooltip[0]||e||this.target.has(b[0]).length||!c||this.hide(a)}),"number"==typeof e.hide.inactive&&(this._bind(h,"qtip-"+this.id+"-inactive",o,"inactive"),this._bind(i.add(g),w.inactiveEvents,o)),this._bindEvents(r,s,h,i,m,n),this._bind(h.add(g),"mousemove",function(a){if("number"==typeof e.hide.distance){var b=this.cache.origin||{},c=this.options.hide.distance,d=Math.abs;(d(a.pageX-b.pageX)>=c||d(a.pageY-b.pageY)>=c)&&this.hide(a)}this._storeMouse(a)}),"mouse"===f.target&&f.adjust.mouse&&(e.hide.event&&this._bind(h,["mouseenter","mouseleave"],function(a){if(!this.cache)return C;this.cache.onTarget="mouseenter"===a.type}),this._bind(l,"mousemove",function(a){this.rendered&&this.cache.onTarget&&!this.tooltip.hasClass($)&&this.tooltip[0].offsetWidth>0&&this.reposition(a)})),(f.adjust.resize||k.length)&&this._bind(d.event.special.resize?k:q,"resize",p),f.adjust.scroll&&this._bind(q.add(f.container),"scroll",p)},x._unassignEvents=function(){var c=this.options,e=c.show.target,f=c.hide.target,g=d.grep([this.elements.target[0],this.rendered&&this.tooltip[0],c.position.container[0],c.position.viewport[0],c.position.container.closest("html")[0],a,b],function(a){return"object"==typeof a});e&&e.toArray&&(g=g.concat(e.toArray())),f&&f.toArray&&(g=g.concat(f.toArray())),this._unbind(g)._unbind(g,"destroy")._unbind(g,"inactive")},d(function(){q(U,["mouseenter","mouseleave"],function(a){var b="mouseenter"
vendor: 11,187 bytes, line 7
7===a.type,c=d(a.currentTarget),e=d(a.relatedTarget||a.target),f=this.options;b?(this.focus(a),c.hasClass(W)&&!c.hasClass($)&&clearTimeout(this.timers.hide)):"mouse"===f.position.target&&f.position.adjust.mouse&&f.hide.event&&f.show.target&&!e.closest(f.show.target[0]).length&&this.hide(a),c.toggleClass(Z,b)}),q("["+S+"]",V,o)}),w=d.fn.qtip=function(a,b,e){var f=(""+a).toLowerCase(),g=D,i=d.makeArray(arguments).slice(1),j=i[i.length-1],k=this[0]?d.data(this[0],Q):D;return!arguments.length&&k||"api"===f?k:"string"==typeof a?(this.each(function(){var a=d.data(this,Q);if(!a)return B;if(j&&j.timeStamp&&(a.cache.event=j),!b||"option"!==f&&"options"!==f)a[f]&&a[f].apply(a,i);else{if(e===c&&!d.isPlainObject(b))return g=a.get(b),C;a.set(b,e)}}),g!==D?g:this):"object"!=typeof a&&arguments.length?void 0:(k=h(d.extend(B,{},a)),this.each(function(a){var b,c;if(c=d.isArray(k.id)?k.id[a]:k.id,c=!c||c===C||c.length<1||w.api[c]?w.nextid++:c,(b=r(d(this),c,k))===C)return B;w.api[c]=b,d.each(P,function(){"initialize"===this.initialize&&this(b)}),b._assignInitialEvents(j)}))},d.qtip=e,w.api={},d.each({attr:function(a,b){if(this.length){var c=this[0],e="title",f=d.data(c,"qtip");if(a===e&&f&&"object"==typeof f&&f.options&&f.options.suppress)return arguments.length<2?d.attr(c,aa):(f&&f.options.content.attr===e&&f.cache.attr&&f.set("content.text",b),this.attr(aa,b))}return d.fn["attr"+_].apply(this,arguments)},clone:function(a){var b=(d([]),d.fn["clone"+_].apply(this,arguments));return a||b.filter("["+aa+"]").attr("title",function(){return d.attr(this,aa)}).removeAttr(aa),b}},function(a,b){if(!b||d.fn[a+_])return B;var c=d.fn[a+_]=d.fn[a];d.fn[a]=function(){return b.apply(this,arguments)||c.apply(this,arguments)}}),d.ui||(d["cleanData"+_]=d.cleanData,d.cleanData=function(a){for(var b,c=0;(b=d(a[c])).length;c++)if(b.attr(R))try{b.triggerHandler("removeqtip")}catch(e){}d["cleanData"+_].apply(this,arguments)}),w.version="2.2.1",w.nextid=0,w.inactiveEvents=V,w.defaults={prerender:C,id:C,overwrite:B,suppress:B,content:{text:B,attr:"title",title:C,button:C},position:{my:"top left",at:"bottom right",target:C,container:C,viewport:C,adjust:{x:0,y:0,mouse:B,scroll:B,resize:B,method:"flipinvert flipinvert"},effect:function(a,b,c){d(this).animate(b,{duration:200,queue:C})}},show:{target:C,event:"mouseenter",effect:B,delay:90,solo:C,ready:C,autofocus:C},hide:{target:C,event:"mouseleave",effect:B,delay:0,fixed:C,inactive:C,leave:"window",distance:C},style:{classes:"",widget:C,width:C,height:C,def:B},events:{render:D,move:D,show:D,hide:D,toggle:D,visible:D,hidden:D,focus:D,blur:D}};var fa,ga="margin",ha="border",ia="color",ja="background-color",ka="transparent",la=" !important",ma=!!b.createElement("canvas").getContext,na=/rgba?\(0, 0, 0(, 0)?\)|transparent|#123456/i,oa={},pa=["Webkit","O","Moz","ms"];if(ma)var qa=a.devicePixelRatio||1,ra=function(){var a=b.createElement("canvas").getContext("2d");return a.backingStorePixelRatio||a.webkitBackingStorePixelRatio||a.mozBackingStorePixelRatio||a.msBackingStorePixelRatio||a.oBackingStorePixelRatio||1}(),sa=qa/ra;else var ta=function(a,b,c){return"<qtipvml:"+a+' xmlns="urn:schemas-microsoft.com:vml" class="qtip-vml" '+(b||"")+' style="behavior: url(#default#VML); '+(c||"")+'" />'};d.extend(v.prototype,{init:function(a){var b,c;c=this.element=a.elements.tip=d("<div />",{class:Q+"-tip"}).prependTo(a.tooltip),ma?(b=d("<canvas />").appendTo(this.element)[0].getContext("2d"),b.lineJoin="miter",b.miterLimit=1e5,b.save()):(b=ta("shape",'coordorigin="0,0"',"position:absolute;"),this.element.html(b+b),a._bind(d("*",c).add(c),["click","mousedown"],function(a){a.stopPropagation()},this._ns)),a._bind(a.tooltip,"tooltipmove",this.reposition,this._ns,this),this.create()},_swapDimensions:function(){this.size[0]=this.options.height,this.size[1]=this.options.width},_resetDimensions:function(){this.size[0]=this.options.width,this.size[1]=this.options.height},_useTitle:function(a){var b=this.qtip.elements.titlebar;return b&&(a.y===I||a.y===M&&this.element.position().top+this.size[1]/2+this.options.offset<b.outerHeight(B))},_parseCorner:function(a){var b=this.qtip.options.position.my;return a===C||b===C?a=C:a===B?a=new y(b.string()):a.string||(a=new y(a),a.fixed=B),a},_parseWidth:function(a,b,c){var d=this.qtip.elements,e=ha+s(b)+"Width";return(c?u(c,e):u(d.content,e)||u(this._useTitle(a)&&d.titlebar||d.content,e)||u(d.tooltip,e))||0},_parseRadius:function(a){var b=this.qtip.elements,c=ha+s(a.y)+s(a.x)+"Radius";return ba.ie<9?0:u(this._useTitle(a)&&b.titlebar||b.content,c)||u(b.tooltip,c)||0},_invalidColour:function(a,b,c){var d=a.css(b);return!d||c&&d===a.css(c)||na.test(d)?C:d},_parseColours:function(a){var b=this.qtip.elements,c=this.element.css("cssText",""),e=ha+s(a[a.precedance])+s(ia),f=this._useTitle(a)&&b.titlebar||b.content,g=this._invalidColour,h=[];return h[0]=g(c,ja)||g(f,ja)||g(b.content,ja)||g(b.tooltip,ja)||c.css(ja),h[1]=g(c,e,ia)||g(f,e,ia)||g(b.content,e,ia)||g(b.tooltip,e,ia)||b.tooltip.css(e),d("*",c).add(c).css("cssText",ja+":"+ka+la+";"+ha+":0"+la+";"),h},_calculateSize:function(a){var b,c,d,e=a.precedance===F,f=this.options.width,g=this.options.height,h="c"===a.abbrev(),i=(e?f:g)*(h?.5:1),j=Math.pow,k=Math.round,l=Math.sqrt(j(i,2)+j(g,2)),m=[this.border/i*l,this.border/g*l];return m[2]=Math.sqrt(j(m[0],2)-j(this.border,2)),m[3]=Math.sqrt(j(m[1],2)-j(this.border,2)),b=l+m[2]+m[3]+(h?0:m[0]),c=b/l,d=[k(c*f),k(c*g)],e?d:d.reverse()},_calculateTip:function(a,b,c){c=c||1,b=b||this.size;var d=b[0]*c,e=b[1]*c,f=Math.ceil(d/2),g=Math.ceil(e/2),h={br:[0,0,d,e,d,0],bl:[0,0,d,0,0,e],tr:[0,e,d,0,d,e],tl:[0,0,0,e,d,e],tc:[0,e,f,0,d,e],bc:[0,0,d,0,f,e],rc:[0,0,d,g,0,e],lc:[d,0,d,e,0,g]};return h.lt=h.br,h.rt=h.bl,h.lb=h.tr,h.rb=h.tl,h[a.abbrev()]},_drawCoords:function(a,b){a.beginPath(),a.moveTo(b[0],b[1]),a.lineTo(b[2],b[3]),a.lineTo(b[4],b[5]),a.closePath()},create:function(){var a=this.corner=(ma||ba.ie)&&this._parseCorner(this.options.corner);return(this.enabled=!!this.corner&&"c"!==this.corner.abbrev())&&(this.qtip.cache.corner=a.clone(),this.update()),this.element.toggle(this.enabled),this.corner},update:function(b,c){if(!this.enabled)return this;var e,f,g,h,i,j,k,l,m=this.qtip.elements,n=this.element,o=n.children(),p=this.options,q=this.size,r=p.mimic,s=Math.round;b||(b=this.qtip.cache.corner||this.corner),r===C?r=b:(r=new y(r),r.precedance=b.precedance,"inherit"===r.x?r.x=b.x:"inherit"===r.y?r.y=b.y:r.x===r.y&&(r[b.precedance]=b[b.precedance])),f=r.precedance,b.precedance===E?this._swapDimensions():this._resetDimensions(),e=this.color=this._parseColours(b),e[1]!==ka?(l=this.border=this._parseWidth(b,b[b.precedance]),p.border&&l<1&&!na.test(e[1])&&(e[0]=e[1]),this.border=l=p.border!==B?p.border:l):this.border=l=0,k=this.size=this._calculateSize(b),n.css({width:k[0],height:k[1],lineHeight:k[1]+"px"}),j=b.precedance===F?[s(r.x===J?l:r.x===L?k[0]-q[0]-l:(k[0]-q[0])/2),s(r.y===I?k[1]-q[1]:0)]:[s(r.x===J?k[0]-q[0]:0),s(r.y===I?l:r.y===K?k[1]-q[1]-l:(k[1]-q[1])/2)],ma?(g=o[0].getContext("2d"),g.restore(),g.save(),g.clearRect(0,0,6e3,6e3),h=this._calculateTip(r,q,sa),i=this._calculateTip(r,this.size,sa),o.attr(G,k[0]*sa).attr(H,k[1]*sa),o.css(G,k[0]).css(H,k[1]),this._drawCoords(g,i),g.fillStyle=e[1],g.fill(),g.translate(j[0]*sa,j[1]*sa),this._drawCoords(g,h),g.fillStyle=e[0],g.fill()):(h=this._calculateTip(r),h="m"+h[0]+","+h[1]+" l"+h[2]+","+h[3]+" "+h[4]+","+h[5]+" xe",j[2]=l&&/^(r|b)/i.test(b.string())?8===ba.ie?2:1:0,o.css({coordsize:k[0]+l+" "+(k[1]+l),antialias:""+(r.string().indexOf(M)>-1),left:j[0]-j[2]*Number(f===E),top:j[1]-j[2]*Number(f===F),width:k[0]+l,height:k[1]+l}).each(function(a){var b=d(this);b[b.prop?"prop":"attr"]({coordsize:k[0]+l+" "+(k[1]+l),path:h,fillcolor:e[0],filled:!!a,stroked:!a}).toggle(!(!l&&!a)),!a&&b.html(ta("stroke",'weight="'+2*l+'px" color="'+e[1]+'" miterlimit="1000" joinstyle="miter"'))})),a.opera&&setTimeout(function(){m.tip.css({display:"inline-block",visibility:"visible"})},1),c!==C&&this.calculate(b,k)},calculate:function(a,b){if(!this.enabled)return C;var c,e,f=this,g=this.qtip.elements,h=this.element,i=this.options.offset,j=(g.tooltip.hasClass("ui-widget"),{});return a=a||this.corner,c=a.precedance,b=b||this._calculateSize(a),e=[a.x,a.y],c===E&&e.reverse(),d.each(e,function(d,e){var h,k,l;e===M?(h=c===F?J:I,j[h]="50%",j[ga+"-"+h]=-Math.round(b[c===F?0:1]/2)+i):(h=f._parseWidth(a,e,g.tooltip),k=f._parseWidth(a,e,g.content),l=f._parseRadius(a),j[e]=Math.max(-f.border,d?k:i+(l>h?l:-h)))}),j[a[c]]-=b[c===E?0:1],h.css({margin:"",top:"",bottom:"",left:"",right:""}).css(j),j},reposition:function(a,b,d,e){function f(a,b,c,d,e){a===O&&k.precedance===b&&l[d]&&k[c]!==M?k.precedance=k.precedance===E?F:E:a!==O&&l[d]&&(k[b]=k[b]===M?l[d]>0?d:e:k[b]===d?e:d)}function g(a,b,e){k[a]===M?q[ga+"-"+b]=p[a]=h[ga+"-"+b]-l[b]:(i=h[e]!==c?[l[b],-h[b]]:[-l[b],h[b]],(p[a]=Math.max(i[0],i[1]))>i[0]&&(d[b]-=l[b],p[b]=C),q[h[e]!==c?e:b]=p[a])}if(this.enabled){var h,i,j=b.cache,k=this.corner.clone(),l=d.adjusted,m=b.options.position.adjust.method.split(" "),n=m[0],o=m[1]||m[0],p={left:C,top:C,x:0,y:0},q={};this.corner.fixed!==B&&(f(n,E,F,J,L),f(o,F,E,I,K),k.string()===j.corner.string()&&j.cornerTop===l.top&&j.cornerLeft===l.left||this.update(k,C)),h=this.calculate(k),h.right!==c&&(h.left=-h.right),h.bottom!==c&&(h.top=-h.bottom),h.user=this.offset,(p.left=n===O&&!!l.left)&&g(E,J,L),(p.top=o===O&&!!l.top)&&g(F,I,K),this.element.css(q).toggle(!(p.x&&p.y||k.x===M&&p.y||k.y===M&&p.x)),d.left-=h.left.charAt?h.user:n!==O||p.top||!p.left&&!p.top?h.left+this.border:0,d.top-=h.top.charAt?h.user:o!==O||p.left||!p.left&&!p.top?h.top+this.border:0,j.cornerLeft=l.left,j.cornerTop=l.top,j.corner=k.clone()}},destroy:function(){this.qtip._unbind(this.qtip.tooltip,this._ns),this.qtip.elements.tip&&this.qtip.elements.tip.find("*").remove().end().remove()}}),fa=P.tip=function(a){return new v(a,a.options.style.tip)},fa.initialize="render",fa.sanitize=function(a){if(a.style&&"tip"in a.style){var b=a.style.tip;"object"!=typeof b&&(b=a.style.tip={corner:b}),/string|boolean/i.test(typeof b.corner)||(b.corner=B)}},z.tip={"^position.my|style.tip.(corner|mimic|border)$":function(){this.create(),this.qtip.reposition()},"^style.tip.(height|width)$":function(a){this.size=[a.width,a.height],this.update(),this.qtip.reposition()},"^content.title|style.(classes|widget)$":function(){this.update()}},d.extend(B,w.defaults,{style:{tip:{corner:B,mimic:C,width:6,height:6,border:B,offset:0}}}),P.viewport=function(c,d,e,f,g,h,i){function j(a,b,c,e,f,g,h,i,j){var k=d[f],s=u[a],t=v[a],w=c===O,x=s===f?j:s===g?-j:-j/2,y=t===f?i:t===g?-i:-i/2,z=q[f]+r[f]-(n?0:m[f]),A=z-k,B=k+j-(h===G?o:p)-z,C=x-(u.precedance===a||s===u[b]?y:0)-(t===M?i/2:0);return w?(C=(s===f?1:-1)*x,d[f]+=A>0?A:B>0?-B:0,d[f]=Math.max(-m[f]+r[f],k-C,Math.min(Math.max(-m[f]+r[f]+(h===G?o:p),k+C),d[f],"center"===s?k-x:1e9))):(e*=c===N?2:0,A>0&&(s!==f||B>0)?(d[f]-=C+e,l.invert(a,f)):B>0&&(s!==g||A>0)&&(d[f]-=(s===M?-C:C)+e,l.invert(a,g)),d[f]<q&&-d[f]>B&&(d[f]=k,l=u.clone())),d[f]-k}var k,l,m,n,o,p,q,r,s=e.target,t=c.elements.tooltip,u=e.my,v=e.at,w=e.adjust,x=w.method.split(" "),y=x[0],z=x[1]||x[0],A=e.viewport,B=e.container,D=(c.cache,{left
7:0,top:0});return A.jquery&&s[0]!==a&&s[0]!==b.body&&"none"!==w.method?(m=B.offset()||D,n="static"===B.css("position"),k="fixed"===t.css("position"),o=A[0]===a?A.width():A.outerWidth(C),p=A[0]===a?A.height():A.outerHeight(C),q={left:k?0:A.scrollLeft(),top:k?0:A.scrollTop()},r=A.offset()||D,"shift"===y&&"shift"===z||(l=u.clone()),D={left:"none"!==y?j(E,F,y,w.x,J,L,G,f,h):0,top:"none"!==z?j(F,E,z,w.y,I,K,H,g,i):0,my:l}):D}})}(window,document),function(a){"function"==typeof define&&define.amd?define("jqueryui",["jquery"],a):a(jQuery)}(function(a){function b(b,d){var e,f,g,h=b.nodeName.toLowerCase();return"area"===h?(e=b.parentNode,f=e.name,!(!b.href||!f||"map"!==e.nodeName.toLowerCase())&&(!!(g=a("img[usemap=#"+f+"]")[0])&&c(g))):(/input|select|textarea|button|object/.test(h)?!b.disabled:"a"===h?b.href||d:d)&&c(b)}function c(b){return a.expr.filters.visible(b)&&!a(b).parents().addBack().filter(function(){return"hidden"===a.css(this,"visibility")}).length}function d(a){for(var b,c;a.length&&a[0]!==document;){if(("absolute"===(b=a.css("position"))||"relative"===b||"fixed"===b)&&(c=parseInt(a.css("zIndex"),10),!isNaN(c)&&0!==c))return c;a=a.parent()}return 0}function e(){this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},a.extend(this._defaults,this.regional[""]),this.regional.en=a.extend(!0,{},this.regional[""]),this.regional["en-US"]=a.extend(!0,{},this.regional.en),this.dpDiv=f(a("<div id='"+this._mainDivId+"' class='ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>"))}function f(b){var c="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return b.delegate(c,"mouseout",function(){a(this).removeClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&a(this).removeClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&a(this).removeClass("ui-datepicker-next-hover")}).delegate(c,"mouseover",function(){a.datepicker._isDisabledDatepicker(k.inline?b.parent()[0]:k.input[0])||(a(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),a(this).addClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&a(this).addClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&a(this).addClass("ui-datepicker-next-hover"))})}function g(b,c){a.extend(b,c);for(var d in c)null==c[d]&&(b[d]=c[d]);return b}a.ui=a.ui||{},a.extend(a.ui,{version:"1.11.0",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),a.fn.extend({scrollParent:function(){var b=this.css("position"),c="absolute"===b,d=this.parents().filter(function(){var b=a(this);return(!c||"static"!==b.css("position"))&&/(auto|scroll)/.test(b.css("overflow")+b.css("overflow-y")+b.css("overflow-x"))}).eq(0);return"fixed"!==b&&d.length?d:a(this[0].ownerDocument||document)},uniqueId:function(){var a=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++a)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id
vendor: 13,065 bytes, lines 7-8
7)&&a(this).removeAttr("id")})}}),a.extend(a.expr[":"],{data:a.expr.createPseudo?a.expr.createPseudo(function(b){return function(c){return!!a.data(c,b)}}):function(b,c,d){return!!a.data(b,d[3])},focusable:function(c){return b(c,!isNaN(a.attr(c,"tabindex")))},tabbable:function(c){var d=a.attr(c,"tabindex"),e=isNaN(d);return(e||d>=0)&&b(c,!e)}}),a("<a>").outerWidth(1).jquery||a.each(["Width","Height"],function(b,c){function d(b,c,d,f){return a.each(e,function(){c-=parseFloat(a.css(b,"padding"+this))||0,d&&(c-=parseFloat(a.css(b,"border"+this+"Width"))||0),f&&(c-=parseFloat(a.css(b,"margin"+this))||0)}),c}var e="Width"===c?["Left","Right"]:["Top","Bottom"],f=c.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+c]=function(b){return void 0===b?g["inner"+c].call(this):this.each(function(){a(this).css(f,d(this,b)+"px")})},a.fn["outer"+c]=function(b,e){return"number"!=typeof b?g["outer"+c].call(this,b):this.each(function(){a(this).css(f,d(this,b,!0,e)+"px")})}}),a.fn.addBack||(a.fn.addBack=function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}),a("<a>").data("a-b","a").removeData("a-b").data("a-b")&&(a.fn.removeData=function(b){return function(c){return arguments.length?b.call(this,a.camelCase(c)):b.call(this)}}(a.fn.removeData)),a.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),a.fn.extend({focus:function(b){return function(c,d){return"number"==typeof c?this.each(function(){var b=this;setTimeout(function(){a(b).focus(),d&&d.call(b)},c)}):b.apply(this,arguments)}}(a.fn.focus),disableSelection:function(){var a="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.bind(a+".ui-disableSelection",function(a){a.preventDefault()})}}(),enableSelection:function(){return this.unbind(".ui-disableSelection")},zIndex:function(b){if(void 0!==b)return this.css("zIndex",b);if(this.length)for(var c,d,e=a(this[0]);e.length&&e[0]!==document;){if(("absolute"===(c=e.css("position"))||"relative"===c||"fixed"===c)&&(d=parseInt(e.css("zIndex"),10),!isNaN(d)&&0!==d))return d;e=e.parent()}return 0}}),a.ui.plugin={add:function(b,c,d){var e,f=a.ui[b].prototype;for(e in d)f.plugins[e]=f.plugins[e]||[],f.plugins[e].push([c,d[e]])},call:function(a,b,c,d){var e,f=a.plugins[b];if(f&&(d||a.element[0].parentNode&&11!==a.element[0].parentNode.nodeType))for(e=0;e<f.length;e++)a.options[f[e][0]]&&f[e][1].apply(a.element,c)}};var h=0,i=Array.prototype.slice;a.cleanData=function(b){return function(c){for(var d,e=0;null!=(d=c[e]);e++)try{a(d).triggerHandler("remove")}catch(f){}b(c)}}(a.cleanData),a.widget=function(b,c,d){var e,f,g,h,i={},j=b.split(".")[0];return b=b.split(".")[1],e=j+"-"+b,d||(d=c,c=a.Widget),a.expr[":"][e.toLowerCase()]=function(b){return!!a.data(b,e)},a[j]=a[j]||{},f=a[j][b],g=a[j][b]=function(a,b){if(!this._createWidget)return new g(a,b);arguments.length&&this._createWidget(a,b)},a.extend(g,f,{version:d.version,_proto:a.extend({},d),_childConstructors:[]}),h=new c,h.options=a.widget.extend({},h.options),a.each(d,function(b,d){if(!a.isFunction(d))return void(i[b]=d);i[b]=function(){var a=function(){return c.prototype[b].apply(this,arguments)},e=function(a){return c.prototype[b].apply(this,a)};return function(){var b,c=this._super,f=this._superApply;return this._super=a,this._superApply=e,b=d.apply(this,arguments),this._super=c,this._superApply=f,b}}()}),g.prototype=a.widget.extend(h,{widgetEventPrefix:f?h.widgetEventPrefix||b:b},i,{constructor:g,namespace:j,widgetName:b,widgetFullName:e}),f?(a.each(f._childConstructors,function(b,c){var d=c.prototype;a.widget(d.namespace+"."+d.widgetName,g,c._proto)}),delete f._childConstructors):c._childConstructors.push(g),a.widget.bridge(b,g),g},a.widget.extend=function(b){for(var c,d,e=i.call(arguments,1),f=0,g=e.length;f<g;f++)for(c in e[f])d=e[f][c],e[f].hasOwnProperty(c)&&void 0!==d&&(a.isPlainObject(d)?b[c]=a.isPlainObject(b[c])?a.widget.extend({},b[c],d):a.widget.extend({},d):b[c]=d);return b},a.widget.bridge=function(b,c){var d=c.prototype.widgetFullName||b;a.fn[b]=function(e){var f="string"==typeof e,g=i.call(arguments,1),h=this;return e=!f&&g.length?a.widget.extend.apply(null,[e].concat(g)):e,f?this.each(function(){var c,f=a.data(this,d);return"instance"===e?(h=f,!1):f?a.isFunction(f[e])&&"_"!==e.charAt(0)?(c=f[e].apply(f,g),c!==f&&void 0!==c?(h=c&&c.jquery?h.pushStack(c.get()):c,!1):void 0):a.error("no such method '"+e+"' for "+b+" widget instance"):a.error("cannot call methods on "+b+" prior to initialization; attempted to call method '"+e+"'")}):this.each(function(){var b=a.data(this,d);b?(b.option(e||{}),b._init&&b._init()):a.data(this,d,new c(e,this))}),h}},a.Widget=function(){},a.Widget._childConstructors=[],a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{disabled:!1,create:null},_createWidget:function(b,c){c=a(c||this.defaultElement||this)[0],this.element=a(c),this.uuid=h++,this.eventNamespace="."+this.widgetName+this.uuid,this.options=a.widget.extend({},this.options,this._getCreateOptions(),b),this.bindings=a(),this.hoverable=a(),this.focusable=a(),c!==this&&(a.data(c,this.widgetFullName,this),this._on(!0,this.element,{remove:function(a){a.target===c&&this.destroy()}}),this.document=a(c.style?c.ownerDocument:c.document||c),this.window=a(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:a.noop,_getCreateEventData:a.noop,_create:a.noop,_init:a.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetFullName).removeData(a.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:a.noop,widget:function(){return this.element},option:function(b,c){var d,e,f,g=b;if(0===arguments.length)return a.widget.extend({},this.options);if("string"==typeof b)if(g={},d=b.split("."),b=d.shift(),d.length){for(e=g[b]=a.widget.extend({},this.options[b]),f=0;f<d.length-1;f++)e[d[f]]=e[d[f]]||{},e=e[d[f]];if(b=d.pop(),1===arguments.length)return void 0===e[b]?null:e[b];e[b]=c}else{if(1===arguments.length)return void 0===this.options[b]?null:this.options[b];g[b]=c}return this._setOptions(g),this},_setOptions:function(a){var b;for(b in a)this._setOption(b,a[b]);return this},_setOption:function(a,b){return this.options[a]=b,"disabled"===a&&(this.widget().toggleClass(this.widgetFullName+"-disabled",!!b),b&&(this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus"))),this},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_on:function(b,c,d){var e,f=this;"boolean"!=typeof b&&(d=c,c=b,b=!1),d?(c=e=a(c),this.bindings=this.bindings.add(c)):(d=c,c=this.element,e=this.widget()),a.each(d,function(d,g){function h(){if(b||!0!==f.options.disabled&&!a(this).hasClass("ui-state-disabled"))return("string"==typeof g?f[g]:g).apply(f,arguments)}"string"!=typeof g&&(h.guid=g.guid=g.guid||h.guid||a.guid++);var i=d.match(/^([\w:-]*)\s*(.*)$/),j=i[1]+f.eventNamespace,k=i[2];k?e.delegate(k,j,h):c.bind(j,h)})},_off:function(a,b){b=(b||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,a.unbind(b).undelegate(b)},_delay:function(a,b){function c(){return("string"==typeof a?d[a]:a).apply(d,arguments)}var d=this;return setTimeout(c,b||0)},_hoverable:function(b){this.hoverable=this.hoverable.add(b),this._on(b,{mouseenter:function(b){a(b.currentTarget).addClass("ui-state-hover")},mouseleave:function(b){a(b.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(b){this.focusable=this.focusable.add(b),this._on(b,{focusin:function(b){a(b.currentTarget).addClass("ui-state-focus")},focusout:function(b){a(b.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(b,c,d){var e,f,g=this.options[b];if(d=d||{},c=a.Event(c),c.type=(b===this.widgetEventPrefix?b:this.widgetEventPrefix+b).toLowerCase(),c.target=this.element[0],f=c.originalEvent)for(e in f)e in c||(c[e]=f[e]);return this.element.trigger(c,d),!(a.isFunction(g)&&!1===g.apply(this.element[0],[c].concat(d))||c.isDefaultPrevented())}},a.each({show:"fadeIn",hide:"fadeOut"},function(b,c){a.Widget.prototype["_"+b]=function(d,e,f){"string"==typeof e&&(e={effect:e});var g,h=e?!0===e||"number"==typeof e?c:e.effect||c:b;e=e||{},"number"==typeof e&&(e={duration:e}),g=!a.isEmptyObject(e),e.complete=f,e.delay&&d.delay(e.delay),g&&a.effects&&a.effects.effect[h]?d[b](e):h!==b&&d[h]?d[h](e.duration,e.easing,f):d.queue(function(c){a(this)[b](),f&&f.call(d[0]),c()})}});var j=(a.widget,!1);a(document).mouseup(function(){j=!1});a.widget("ui.mouse",{version:"1.11.0",options:{cancel:"input,textarea,button,select,option",distance:1,delay:0},_mouseInit:function(){var b=this;this.element.bind("mousedown."+this.widgetName,function(a){return b._mouseDown(a)}).bind("click."+this.widgetName,function(c){if(!0===a.data(c.target,b.widgetName+".preventClickEvent"))return a.removeData(c.target,b.widgetName+".preventClickEvent"),c.stopImmediatePropagation(),!1}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),this._mouseMoveDelegate&&this.document.unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(b){if(!j){this._mouseStarted&&this._mouseUp(b),this._mouseDownEvent=b;var c=this,d=1===b.which,e=!("string"!=typeof this.options.cancel||!b.target.nodeName)&&a(b.target).closest(this.options.cancel).length;return!(d&&!e&&this._mouseCapture(b))||(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){c.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=!1!==this._mouseStart(b),!this._mouseStarted)?(b.preventDefault(),!0):(!0===a.data(b.target,this.widgetName+".preventClickEvent")&&a.removeData(b.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(a){return c._mouseMove(a)},this._mouseUpDelegate=function(a){return c._mouseUp(a)},this.document.bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),b.preventDefault(),j=!0,!0))}},_mouseMove:function(b){return a.ui.ie&&(!document.documentMode||document.documentMode<9)&&!b.button?this._mouseUp(b):b.which?this._mouseStarted?(this._mouseDrag(b),b.preventDefault()):(this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=!1!==this._mouseStart(this._mouseDownEvent,b),this._mouseStarted?this._mouseDrag(b):this._mouseUp(b)),!this._mouseStarted):this._mouseUp(b)},_mouseUp:function(b){return this.document.unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target===this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b)),j=!1,!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}});a.extend(a.ui,{datepicker:{version:"1.11.0"}});var k;a.extend(e.prototype,{markerClassName:"hasDatepicker",maxRows:4,_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(a){return g(this._defaults,a||{}),this},_attachDatepicker:function(b,c){var d,e,f;d=b.nodeName.toLowerCase(),e="div"===d||"span"===d,b.id||(this.uuid+=1,b.id="dp"+this.uuid),f=this._newInst(a(b),e),f.settings=a.extend({},c||{}),"input"===d?this._connectDatepicker(b,f):e&&this._inlineDatepicker(b,f)},_newInst:function(b,c){return{id:b[0].id.replace(/([^A-Za-z0-9_\-])/g,"\\\\$1"),input:b,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:c,
8dpDiv:c?f(a("<div class='"+this._inlineClass+" ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>")):this.dpDiv}},_connectDatepicker:function(b,c){var d=a(b);c.append=a([]),c.trigger=a([]),d.hasClass(this.markerClassName)||(this._attachments(d,c),d.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp),this._autoSize(c),a.data(b,"datepicker",c),c.settings.disabled&&this._disableDatepicker(b))},_attachments:function(b,c){var d,e,f,g=this._get(c,"appendText"),h=this._get(c,"isRTL");c.append&&c.append.remove(),g&&(c.append=a("<span class='"+this._appendClass+"'>"+g+"</span>"),b[h?"before":"after"](c.append)),b.unbind("focus",this._showDatepicker),c.trigger&&c.trigger.remove(),d=this._get(c,"showOn"),"focu
8s"!==d&&"both"!==d||b.focus(this._showDatepicker),"button"!==d&&"both"!==d||(e=this._get(c,"buttonText"),f=this._get(c,"buttonImage"),c.trigger=a(this._get(c,"buttonImageOnly")?a("<img/>").addClass(this._triggerClass).attr({src:f,alt:e,title:e}):a("<button type='button'></button>").addClass(this._triggerClass).html(f?a("<img/>").attr({src:f,alt:e,title:e}):e)),b[h?"before":"after"](c.trigger),c.trigger.click(function(){return a.datepicker._datepickerShowing&&a.datepicker._lastInput===b[0]?a.datepicker._hideDatepicker():a.datepicker._datepickerShowing&&a.datepicker._lastInput!==b[0]?(a.datepicker._hideDatepicker(),a.datepicker._showDatepicker(b[0])):a.datepicker._showDatepicker(b[0]),!1}))},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b,c,d,e,f=new Date(2009,11,20),g=this._get(a,"dateFormat");g.match(/[DM]/)&&(b=function(a){for(c=0,d=0,e=0;e<a.length;e++)a[e].length>c&&(c=a[e].length,d=e);return d},f.setMonth(b(this._get(a,g.match(/MM/)?"monthNames":"monthNamesShort"))),f.setDate(b(this._get(a,g.match(/DD/)?"dayNames":"dayNamesShort"))+20-f.getDay())),a.input.attr("size",this._formatDate(a,f).length)}},_inlineDatepicker:function(b,c){var d=a(b);d.hasClass(this.markerClassName)||(d.addClass(this.markerClassName).append(c.dpDiv),a.data(b,"datepicker",c),this._setDate(c,this._getDefaultDate(c),!0),this._updateDatepicker(c),this._updateAlternate(c),c.settings.disabled&&this._disableDatepicker(b),c.dpDiv.css("display","block"))},_dialogDatepicker:function(b,c,d,e,f){var h,i,j,k,l,m=this._dialogInst;return m||(this.uuid+=1,h="dp"+this.uuid,this._dialogInput=a("<input type='text' id='"+h+"' style='position: absolute; top: -100px; width: 0px;'/>"),this._dialogInput.keydown(this._doKeyDown),a("body").append(this._dialogInput),m=this._dialogInst=this._newInst(this._dialogInput,!1),m.settings={},a.data(this._dialogInput[0],"datepicker",m)),g(m.settings,e||{}),c=c&&c.constructor===Date?this._formatDate(m,c):c,this._dialogInput.val(c),this._pos=f?f.length?f:[f.pageX,f.pageY]:null,this._pos||(i=document.documentElement.clientWidth,j=document.documentElement.clientHeight,k=document.documentElement.scrollLeft||document.body.scrollLeft,l=document.documentElement.scrollTop||document.body.scrollTop,this._pos=[i/2-100+k,j/2-150+l]),this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),m.settings.onSelect=d,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),a.blockUI&&a.blockUI(this.dpDiv),a.data(this._dialogInput[0],"datepicker",m),this},_destroyDatepicker:function(b){var c,d=a(b),e=a.data(b,"datepicker");d.hasClass(this.markerClassName)&&(c=b.nodeName.toLowerCase(),a.removeData(b,"datepicker"),"input"===c?(e.append.remove(),e.trigger.remove(),d.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):"div"!==c&&"span"!==c||d.removeClass(this.markerClassName).empty())},_enableDatepicker:function(b){var c,d,e=a(b),f=a.data(b,"datepicker");e.hasClass(this.markerClassName)&&(c=b.nodeName.toLowerCase(),"input"===c?(b.disabled=!1,f.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""})):"div"!==c&&"span"!==c||(d=e.children("."+this._inlineClass),d.children().removeClass("ui-state-disabled"),d.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!1)),this._disabledInputs=a.map(this._disabledInputs,function(a){return a===b?null:a}))},_disableDatepicker:function(b){var c,d,e=a(b),f=a.data(b,"datepicker");e.hasClass(this.markerClassName)&&(c=b.nodeName.toLowerCase(),"input"===c?(b.disabled=!0,f.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"})):"div"!==c&&"span"!==c||(d=e.children("."+this._inlineClass),d.children().addClass("ui-state-disabled"),d.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!0)),this._disabledInputs=a.map(this._disabledInputs,function(a){return a===b?null:a}),this._disabledInputs[this._disabledInputs.length]=b)}
vendor: 10,306 bytes, line 8
8,_isDisabledDatepicker:function(a){if(!a)return!1;for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]===a)return!0;return!1},_getInst:function(b){try{return a.data(b,"datepicker")}catch(c){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(b,c,d){var e,f,h,i,j=this._getInst(b);if(2===arguments.length&&"string"==typeof c)return"defaults"===c?a.extend({},a.datepicker._defaults):j?"all"===c?a.extend({},j.settings):this._get(j,c):null;e=c||{},"string"==typeof c&&(e={},e[c]=d),j&&(this._curInst===j&&this._hideDatepicker(),f=this._getDateDatepicker(b,!0),h=this._getMinMaxDate(j,"min"),i=this._getMinMaxDate(j,"max"),g(j.settings,e),null!==h&&void 0!==e.dateFormat&&void 0===e.minDate&&(j.settings.minDate=this._formatDate(j,h)),null!==i&&void 0!==e.dateFormat&&void 0===e.maxDate&&(j.settings.maxDate=this._formatDate(j,i)),"disabled"in e&&(e.disabled?this._disableDatepicker(b):this._enableDatepicker(b)),this._attachments(a(b),j),this._autoSize(j),this._setDate(j,f),this._updateAlternate(j),this._updateDatepicker(j))},_changeDatepicker:function(a,b,c){this._optionDatepicker(a,b,c)},_refreshDatepicker:function(a){var b=this._getInst(a);b&&this._updateDatepicker(b)},_setDateDatepicker:function(a,b){var c=this._getInst(a);c&&(this._setDate(c,b),this._updateDatepicker(c),this._updateAlternate(c))},_getDateDatepicker:function(a,b){var c=this._getInst(a);return c&&!c.inline&&this._setDateFromField(c,b),c?this._getDate(c):null},_doKeyDown:function(b){var c,d,e,f=a.datepicker._getInst(b.target),g=!0,h=f.dpDiv.is(".ui-datepicker-rtl");if(f._keyEvent=!0,a.datepicker._datepickerShowing)switch(b.keyCode){case 9:a.datepicker._hideDatepicker(),g=!1;break;case 13:return e=a("td."+a.datepicker._dayOverClass+":not(."+a.datepicker._currentClass+")",f.dpDiv),e[0]&&a.datepicker._selectDay(b.target,f.selectedMonth,f.selectedYear,e[0]),c=a.datepicker._get(f,"onSelect"),c?(d=a.datepicker._formatDate(f),c.apply(f.input?f.input[0]:null,[d,f])):a.datepicker._hideDatepicker(),!1;case 27:a.datepicker._hideDatepicker();break;case 33:a.datepicker._adjustDate(b.target,b.ctrlKey?-a.datepicker._get(f,"stepBigMonths"):-a.datepicker._get(f,"stepMonths"),"M");break;case 34:a.datepicker._adjustDate(b.target,b.ctrlKey?+a.datepicker._get(f,"stepBigMonths"):+a.datepicker._get(f,"stepMonths"),"M");break;case 35:(b.ctrlKey||b.metaKey)&&a.datepicker._clearDate(b.target),g=b.ctrlKey||b.metaKey;break;case 36:(b.ctrlKey||b.metaKey)&&a.datepicker._gotoToday(b.target),g=b.ctrlKey||b.metaKey;break;case 37:(b.ctrlKey||b.metaKey)&&a.datepicker._adjustDate(b.target,h?1:-1,"D"),g=b.ctrlKey||b.metaKey,b.originalEvent.altKey&&a.datepicker._adjustDate(b.target,b.ctrlKey?-a.datepicker._get(f,"stepBigMonths"):-a.datepicker._get(f,"stepMonths"),"M");break;case 38:(b.ctrlKey||b.metaKey)&&a.datepicker._adjustDate(b.target,-7,"D"),g=b.ctrlKey||b.metaKey;break;case 39:(b.ctrlKey||b.metaKey)&&a.datepicker._adjustDate(b.target,h?-1:1,"D"),g=b.ctrlKey||b.metaKey,b.originalEvent.altKey&&a.datepicker._adjustDate(b.target,b.ctrlKey?+a.datepicker._get(f,"stepBigMonths"):+a.datepicker._get(f,"stepMonths"),"M");break;case 40:(b.ctrlKey||b.metaKey)&&a.datepicker._adjustDate(b.target,7,"D"),g=b.ctrlKey||b.metaKey;break;default:g=!1}else 36===b.keyCode&&b.ctrlKey?a.datepicker._showDatepicker(this):g=!1;g&&(b.preventDefault(),b.stopPropagation())},_doKeyPress:function(b){var c,d,e=a.datepicker._getInst(b.target);if(a.datepicker._get(e,"constrainInput"))return c=a.datepicker._possibleChars(a.datepicker._get(e,"dateFormat")),d=String.fromCharCode(null==b.charCode?b.keyCode:b.charCode),b.ctrlKey||b.metaKey||d<" "||!c||c.indexOf(d)>-1},_doKeyUp:function(b){var c,d=a.datepicker._getInst(b.target);if(d.input.val()!==d.lastVal)try{c=a.datepicker.parseDate(a.datepicker._get(d,"dateFormat"),d.input?d.input.val():null,a.datepicker._getFormatConfig(d)),c&&(a.datepicker._setDateFromField(d),a.datepicker._updateAlternate(d),a.datepicker._updateDatepicker(d))}catch(e){}return!0},_showDatepicker:function(b){if(b=b.target||b,"input"!==b.nodeName.toLowerCase()&&(b=a("input",b.parentNode)[0]),!a.datepicker._isDisabledDatepicker(b)&&a.datepicker._lastInput!==b){var c,e,f,h,i,j,k;c=a.datepicker._getInst(b),a.datepicker._curInst&&a.datepicker._curInst!==c&&(a.datepicker._curInst.dpDiv.stop(!0,!0),c&&a.datepicker._datepickerShowing&&a.datepicker._hideDatepicker(a.datepicker._curInst.input[0])),e=a.datepicker._get(c,"beforeShow"),f=e?e.apply(b,[b,c]):{},!1!==f&&(g(c.settings,f),c.lastVal=null,a.datepicker._lastInput=b,a.datepicker._setDateFromField(c),a.datepicker._inDialog&&(b.value=""),a.datepicker._pos||(a.datepicker._pos=a.datepicker._findPos(b),a.datepicker._pos[1]+=b.offsetHeight),h=!1,a(b).parents().each(function(){return!(h|="fixed"===a(this).css("position"))}),i={left:a.datepicker._pos[0],top:a.datepicker._pos[1]},a.datepicker._pos=null,c.dpDiv.empty(),c.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),a.datepicker._updateDatepicker(c),i=a.datepicker._checkOffset(c,i,h),c.dpDiv.css({position:a.datepicker._inDialog&&a.blockUI?"static":h?"fixed":"absolute",display:"none",left:i.left+"px",top:i.top+"px"}),c.inline||(j=a.datepicker._get(c,"showAnim"),k=a.datepicker._get(c,"duration"),c.dpDiv.css("z-index",d(a(b))+1),a.datepicker._datepickerShowing=!0,a.effects&&a.effects.effect[j]?c.dpDiv.show(j,a.datepicker._get(c,"showOptions"),k):c.dpDiv[j||"show"](j?k:null),a.datepicker._shouldFocusInput(c)&&c.input.focus(),a.datepicker._curInst=c))}},_updateDatepicker:function(b){this.maxRows=4,k=b,b.dpDiv.empty().append(this._generateHTML(b)),this._attachHandlers(b),b.dpDiv.find("."+this._dayOverClass+" a");var c,d=this._getNumberOfMonths(b),e=d[1];b.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),e>1&&b.dpDiv.addClass("ui-datepicker-multi-"+e).css("width",17*e+"em"),b.dpDiv[(1!==d[0]||1!==d[1]?"add":"remove")+"Class"]("ui-datepicker-multi"),b.dpDiv[(this._get(b,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),b===a.datepicker._curInst&&a.datepicker._datepickerShowing&&a.datepicker._shouldFocusInput(b)&&b.input.focus(),b.yearshtml&&(c=b.yearshtml,setTimeout(function(){c===b.yearshtml&&b.yearshtml&&b.dpDiv.find("select.ui-datepicker-year:first").replaceWith(b.yearshtml),c=b.yearshtml=null},0))},_shouldFocusInput:function(a){return a.input&&a.input.is(":visible")&&!a.input.is(":disabled")&&!a.input.is(":focus")},_checkOffset:function(b,c,d){var e=b.dpDiv.outerWidth(),f=b.dpDiv.outerHeight(),g=b.input?b.input.outerWidth():0,h=b.input?b.input.outerHeight():0,i=document.documentElement.clientWidth+(d?0:a(document).scrollLeft()),j=document.documentElement.clientHeight+(d?0:a(document).scrollTop());return c.left-=this._get(b,"isRTL")?e-g:0,c.left-=d&&c.left===b.input.offset().left?a(document).scrollLeft():0,c.top-=d&&c.top===b.input.offset().top+h?a(document).scrollTop():0,c.left-=Math.min(c.left,c.left+e>i&&i>e?Math.abs(c.left+e-i):0),c.top-=Math.min(c.top,c.top+f>j&&j>f?Math.abs(f+h):0),c},_findPos:function(b){for(var c,d=this._getInst(b),e=this._get(d,"isRTL");b&&("hidden"===b.type||1!==b.nodeType||a.expr.filters.hidden(b));)b=b[e?"previousSibling":"nextSibling"];return c=a(b).offset(),[c.left,c.top]},_hideDatepicker:function(b){var c,d,e,f,g=this._curInst;!g||b&&g!==a.data(b,"datepicker")||this._datepickerShowing&&(c=this._get(g,"showAnim"),d=this._get(g,"duration"),e=function(){a.datepicker._tidyDialog(g)},a.effects&&(a.effects.effect[c]||a.effects[c])?g.dpDiv.hide(c,a.datepicker._get(g,"showOptions"),d,e):g.dpDiv["slideDown"===c?"slideUp":"fadeIn"===c?"fadeOut":"hide"](c?d:null,e),c||e(),this._datepickerShowing=!1,f=this._get(g,"onClose"),f&&f.apply(g.input?g.input[0]:null,[g.input?g.input.val():"",g]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),a.blockUI&&(a.unblockUI(),a("body").append(this.dpDiv))),this._inDialog=!1)},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(b){if(a.datepicker._curInst){var c=a(b.target),d=a.datepicker._getInst(c[0]);(c[0].id===a.datepicker._mainDivId||0!==c.parents("#"+a.datepicker._mainDivId).length||c.hasClass(a.datepicker.markerClassName)||c.closest("."+a.datepicker._triggerClass).length||!a.datepicker._datepickerShowing||a.datepicker._inDialog&&a.blockUI)&&(!c.hasClass(a.datepicker.markerClassName)||a.datepicker._curInst===d)||a.datepicker._hideDatepicker()}},_adjustDate:function(b,c,d){var e=a(b),f=this._getInst(e[0]);this._isDisabledDatepicker(e[0])||(this._adjustInstDate(f,c+("M"===d?this._get(f,"showCurrentAtPos"):0),d),this._updateDatepicker(f))},_gotoToday:function(b){var c,d=a(b),e=this._getInst(d[0]);this._get(e,"gotoCurrent")&&e.currentDay?(e.selectedDay=e.currentDay,e.drawMonth=e.selectedMonth=e.currentMonth,e.drawYear=e.selectedYear=e.currentYear):(c=new Date,e.selectedDay=c.getDate(),e.drawMonth=e.selectedMonth=c.getMonth(),e.drawYear=e.selectedYear=c.getFullYear()),this._notifyChange(e),this._adjustDate(d)},_selectMonthYear:function(b,c,d){var e=a(b),f=this._getInst(e[0]);f["selected"+("M"===d?"Month":"Year")]=f["draw"+("M"===d?"Month":"Year")]=parseInt(c.options[c.selectedIndex].value,10),this._notifyChange(f),this._adjustDate(e)},_selectDay:function(b,c,d,e){var f,g=a(b);a(e).hasClass(this._unselectableClass)||this._isDisabledDatepicker(g[0])||(f=this._getInst(g[0]),f.selectedDay=f.currentDay=a("a",e).html(),f.selectedMonth=f.currentMonth=c,f.selectedYear=f.currentYear=d,this._selectDate(b,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear)))},_clearDate:function(b){var c=a(b);this._selectDate(c,"")},_selectDate:function(b,c){var d,e=a(b),f=this._getInst(e[0]);c=null!=c?c:this._formatDate(f),f.input&&f.input.val(c),this._updateAlternate(f),d=this._get(f,"onSelect"),d?d.apply(f.input?f.input[0]:null,[c,f]):f.input&&f.input.trigger("change"),f.inline?this._updateDatepicker(f):(this._hideDatepicker(),this._lastInput=f.input[0],"object"!=typeof f.input[0]&&f.input.focus(),this._lastInput=null)},_updateAlternate:function(b){var c,d,e,f=this._get(b,"altField");f&&(c=this._get(b,"altFormat")||this._get(b,"dateFormat"),d=this._getDate(b),e=this.formatDate(c,d,this._getFormatConfig(b)),a(f).each(function(){a(this).val(e)}))}
vendor: 5,589 bytes, line 8
8,noWeekends:function(a){var b=a.getDay();return[b>0&&b<6,""]},iso8601Week:function(a){var b,c=new Date(a.getTime());return c.setDate(c.getDate()+4-(c.getDay()||7)),b=c.getTime(),c.setMonth(0),c.setDate(1),Math.floor(Math.round((b-c)/864e5)/7)+1},parseDate:function(b,c,d){if(null==b||null==c)throw"Invalid arguments";if(""===(c="object"==typeof c?c.toString():c+""))return null;var e,f,g,h,i=0,j=(d?d.shortYearCutoff:null)||this._defaults.shortYearCutoff,k="string"!=typeof j?j:(new Date).getFullYear()%100+parseInt(j,10),l=(d?d.dayNamesShort:null)||this._defaults.dayNamesShort,m=(d?d.dayNames:null)||this._defaults.dayNames,n=(d?d.monthNamesShort:null)||this._defaults.monthNamesShort,o=(d?d.monthNames:null)||this._defaults.monthNames,p=-1,q=-1,r=-1,s=-1,t=!1,u=function(a){var c=e+1<b.length&&b.charAt(e+1)===a;return c&&e++,c},v=function(a){var b=u(a),d="@"===a?14:"!"===a?20:"y"===a&&b?4:"o"===a?3:2,e=new RegExp("^\\d{1,"+d+"}"),f=c.substring(i).match(e);if(!f)throw"Missing number at position "+i;return i+=f[0].length,parseInt(f[0],10)},w=function(b,d,e){var f=-1,g=a.map(u(b)?e:d,function(a,b){return[[b,a]]}).sort(function(a,b){return-(a[1].length-b[1].length)});if(a.each(g,function(a,b){var d=b[1];if(c.substr(i,d.length).toLowerCase()===d.toLowerCase())return f=b[0],i+=d.length,!1}),-1!==f)return f+1;throw"Unknown name at position "+i},x=function(){if(c.charAt(i)!==b.charAt(e))throw"Unexpected literal at position "+i;i++};for(e=0;e<b.length;e++)if(t)"'"!==b.charAt(e)||u("'")?x():t=!1;else switch(b.charAt(e)){case"d":r=v("d");break;case"D":w("D",l,m);break;case"o":s=v("o");break;case"m":q=v("m");break;case"M":q=w("M",n,o);break;case"y":p=v("y");break;case"@":h=new Date(v("@")),p=h.getFullYear(),q=h.getMonth()+1,r=h.getDate();break;case"!":h=new Date((v("!")-this._ticksTo1970)/1e4),p=h.getFullYear(),q=h.getMonth()+1,r=h.getDate();break;case"'":u("'")?x():t=!0;break;default:x()}if(i<c.length&&(g=c.substr(i),!/^\s+/.test(g)))throw"Extra/unparsed characters found in date: "+g;if(-1===p?p=(new Date).getFullYear():p<100&&(p+=(new Date).getFullYear()-(new Date).getFullYear()%100+(p<=k?0:-100)),s>-1)for(q=1,r=s;;){if(f=this._getDaysInMonth(p,q-1),r<=f)break;q++,r-=f}if(h=this._daylightSavingAdjust(new Date(p,q-1,r)),h.getFullYear()!==p||h.getMonth()+1!==q||h.getDate()!==r)throw"Invalid date";return h},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:24*(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*60*60*1e7,formatDate:function(a,b,c){if(!b)return"";var d,e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,g=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,h=(c?c.monthNames:null)||this._defaults.monthNames,i=function(b){var c=d+1<a.length&&a.charAt(d+1)===b;return c&&d++,c},j=function(a,b,c){var d=""+b;if(i(a))for(;d.length<c;)d="0"+d;return d},k=function(a,b,c,d){return i(a)?d[b]:c[b]},l="",m=!1;if(b)for(d=0;d<a.length;d++)if(m)"'"!==a.charAt(d)||i("'")?l+=a.charAt(d):m=!1;else switch(a.charAt(d)){case"d":l+=j("d",b.getDate(),2);break;case"D":l+=k("D",b.getDay(),e,f);break;case"o":l+=j("o",Math.round((new Date(b.getFullYear(),b.getMonth(),b.getDate()).getTime()-new Date(b.getFullYear(),0,0).getTime())/864e5),3);break;case"m":l+=j("m",b.getMonth()+1,2);break;case"M":l+=k("M",b.getMonth(),g,h);break;case"y":l+=i("y")?b.getFullYear():(b.getYear()%100<10?"0":"")+b.getYear()%100;break;case"@":l+=b.getTime();break;case"!":l+=1e4*b.getTime()+this._ticksTo1970;break;case"'":i("'")?l+="'":m=!0;break;default:l+=a.charAt(d)}return l},_possibleChars:function(a){var b,c="",d=!1,e=function(c){var d=b+1<a.length&&a.charAt(b+1)===c;return d&&b++,d};for(b=0;b<a.length;b++)if(d)"'"!==a.charAt(b)||e("'")?c+=a.charAt(b):d=!1;else switch(a.charAt(b)){case"d":case"m":case"y":case"@":c+="0123456789";break;case"D":case"M":return null;case"'":e("'")?c+="'":d=!0;break;default:c+=a.charAt(b)}return c},_get:function(a,b){return void 0!==a.settings[b]?a.settings[b]:this._defaults[b]},_setDateFromField:function(a,b){if(a.input.val()!==a.lastVal){var c=this._get(a,"dateFormat"),d=a.lastVal=a.input?a.input.val():null,e=this._getDefaultDate(a),f=e,g=this._getFormatConfig(a);try{f=this.parseDate(c,d,g)||e}catch(event){d=b?"":d}a.selectedDay=f.getDate(),a.drawMonth=a.selectedMonth=f.getMonth(),a.drawYear=a.selectedYear=f.getFullYear(),a.currentDay=d?f.getDate():0,a.currentMonth=d?f.getMonth():0,a.currentYear=d?f.getFullYear():0,this._adjustInstDate(a)}},_getDefaultDate:function(a){return this._restrictMinMax(a,this._determineDate(a,this._get(a,"defaultDate"),new Date))},_determineDate:function(b,c,d){var e=function(a){var b=new Date;return b.setDate(b.getDate()+a),b},f=function(c){try{return a.datepicker.parseDate(a.datepicker._get(b,"dateFormat"),c,a.datepicker._getFormatConfig(b))}catch(j){}for(var d=(c.toLowerCase().match(/^c/)?a.datepicker._getDate(b):null)||new Date,e=d.getFullYear(),f=d.getMonth(),g=d.getDate(),h=/([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,i=h.exec(c);i;){switch(i[2]||"d"){case"d":case"D":g+=parseInt(i[1],10);break;case"w":case"W":g+=7*parseInt(i[1],10);break;case"m":case"M":f+=parseInt(i[1],10),g=Math.min(g,a.datepicker._getDaysInMonth(e,f));break;case"y":case"Y":e+=parseInt(i[1],10),g=Math.min(g,a.datepicker._getDaysInMonth(e,f))}i=h.exec(c)}return new Date(e,f,g)},g=null==c||""===c?d:"string"==typeof c?f(c):"number"==typeof c?isNaN(c)?d:e(c):new Date(c.getTime());
vendor: 4,962 bytes, line 8
8return g=g&&"Invalid Date"===g.toString()?d:g,g&&(g.setHours(0),g.setMinutes(0),g.setSeconds(0),g.setMilliseconds(0)),this._daylightSavingAdjust(g)},_daylightSavingAdjust:function(a){return a?(a.setHours(a.getHours()>12?a.getHours()+2:0),a):null},_setDate:function(a,b,c){var d=!b,e=a.selectedMonth,f=a.selectedYear,g=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=g.getDate(),a.drawMonth=a.selectedMonth=a.currentMonth=g.getMonth(),a.drawYear=a.selectedYear=a.currentYear=g.getFullYear(),e===a.selectedMonth&&f===a.selectedYear||c||this._notifyChange(a),this._adjustInstDate(a),a.input&&a.input.val(d?"":this._formatDate(a))},_getDate:function(a){return!a.currentYear||a.input&&""===a.input.val()?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay))},_attachHandlers:function(b){var c=this._get(b,"stepMonths"),d="#"+b.id.replace(/\\\\/g,"\\");b.dpDiv.find("[data-handler]").map(function(){var b={prev:function(){a.datepicker._adjustDate(d,-c,"M")},next:function(){a.datepicker._adjustDate(d,+c,"M")},hide:function(){a.datepicker._hideDatepicker()},today:function(){a.datepicker._gotoToday(d)},selectDay:function(){return a.datepicker._selectDay(d,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return a.datepicker._selectMonthYear(d,this,"M"),!1},selectYear:function(){return a.datepicker._selectMonthYear(d,this,"Y"),!1}};a(this).bind(this.getAttribute("data-event"),b[this.getAttribute("data-handler")])})},_generateHTML:function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O=new Date,P=this._daylightSavingAdjust(new Date(O.getFullYear(),O.getMonth(),O.getDate())),Q=this._get(a,"isRTL"),R=this._get(a,"showButtonPanel"),S=this._get(a,"hideIfNoPrevNext"),T=this._get(a,"navigationAsDateFormat"),U=this._getNumberOfMonths(a),V=this._get(a,"showCurrentAtPos"),W=this._get(a,"stepMonths"),X=1!==U[0]||1!==U[1],Y=this._daylightSavingAdjust(a.currentDay?new Date(a.currentYear,a.currentMonth,a.currentDay):new Date(9999,9,9)),Z=this._getMinMaxDate(a,"min"),$=this._getMinMaxDate(a,"max"),_=a.drawMonth-V,aa=a.drawYear;if(_<0&&(_+=12,aa--),$)for(b=this._daylightSavingAdjust(new Date($.getFullYear(),$.getMonth()-U[0]*U[1]+1,$.getDate())),b=Z&&b<Z?Z:b;this._daylightSavingAdjust(new Date(aa,_,1))>b;)--_<0&&(_=11,aa--);for(a.drawMonth=_,a.drawYear=aa,c=this._get(a,"prevText"),c=T?this.formatDate(c,this._daylightSavingAdjust(new Date(aa,_-W,1)),this._getFormatConfig(a)):c,d=this._canAdjustMonth(a,-1,aa,_)?"<a class='ui-datepicker-prev ui-corner-all' data-handler='prev' data-event='click' title='"+c+"'><span class='ui-icon ui-icon-circle-triangle-"+(Q?"e":"w")+"'>"+c+"</span></a>":S?"":"<a class='ui-datepicker-prev ui-corner-all ui-state-disabled' title='"+c+"'><span class='ui-icon ui-icon-circle-triangle-"+(Q?"e":"w")+"'>"+c+"</span></a>",e=this._get(a,"nextText"),e=T?this.formatDate(e,this._daylightSavingAdjust(new Date(aa,_+W,1)),this._getFormatConfig(a)):e,f=this._canAdjustMonth(a,1,aa,_)?"<a class='ui-datepicker-next ui-corner-all' data-handler='next' data-event='click' title='"+e+"'><span class='ui-icon ui-icon-circle-triangle-"+(Q?"w":"e")+"'>"+e+"</span></a>":S?"":"<a class='ui-datepicker-next ui-corner-all ui-state-disabled' title='"+e+"'><span class='ui-icon ui-icon-circle-triangle-"+(Q?"w":"e")+"'>"+e+"</span></a>",g=this._get(a,"currentText"),h=this._get(a,"gotoCurrent")&&a.currentDay?Y:P,g=T?this.formatDate(g,h,this._getFormatConfig(a)):g,i=a.inline?"":"<button type='button' class='ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all' data-handler='hide' data-event='click'>"+this._get(a,"closeText")+"</button>",j=R?"<div class='ui-datepicker-buttonpane ui-widget-content'>"+(Q?i:"")+(this._isInRange(a,h)?"<button type='button' class='ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all' data-handler='today' data-event='click'>"+g+"</button>":"")+(Q?"":i)+"</div>":"",k=parseInt(this._get(a,"firstDay"),10),k=isNaN(k)?0:k,l=this._get(a,"showWeek"),m=this._get(a,"dayNames"),n=this._get(a,"dayNamesMin"),o=this._get(a,"monthNames"),p=this._get(a,"monthNamesShort"),q=this._get(a,"beforeShowDay"),r=this._get(a,"showOtherMonths"),s=this._get(a,"selectOtherMonths"),t=this._getDefaultDate(a),u="",w=0;w<U[0];w++){for(x="",this.maxRows=4,y=0;y<U[1];y++){if(z=this._daylightSavingAdjust(new Date(aa,_,a.selectedDay)),A=" ui-corner-all",B="",X){if(B+="<div class='ui-datepicker-group",U[1]>1)switch(y){case 0:B+=" ui-datepicker-group-first",A=" ui-corner-"+(Q?"right":"left");break;case U[1]-1:B+=" ui-datepicker-group-last",A=" ui-corner-"+(Q?"left":"right");break;default:B+=" ui-datepicker-group-middle",A=""}B+="'>"}for(B+="<div class='ui-datepicker-header ui-widget-header ui-helper-clearfix"+A+"'>"+(/all|left/.test(A)&&0===w?Q?f:d:"")+(/all|right/.test(A)&&0===w?Q?d:f:"")+this._generateMonthYearHeader(a,_,aa,Z,$,w>0||y>
vendor: 3,800 bytes, line 8
80,o,p)+"</div><table class='ui-datepicker-calendar'><thead><tr>",C=l?"<th class='ui-datepicker-week-col'>"+this._get(a,"weekHeader")+"</th>":"",v=0;v<7;v++)D=(v+k)%7,C+="<th scope='col'"+((v+k+6)%7>=5?" class='ui-datepicker-week-end'":"")+"><span title='"+m[D]+"'>"+n[D]+"</span></th>";for(B+=C+"</tr></thead><tbody>",E=this._getDaysInMonth(aa,_),aa===a.selectedYear&&_===a.selectedMonth&&(a.selectedDay=Math.min(a.selectedDay,E)),F=(this._getFirstDayOfMonth(aa,_)-k+7)%7,G=Math.ceil((F+E)/7),H=X&&this.maxRows>G?this.maxRows:G,this.maxRows=H,I=this._daylightSavingAdjust(new Date(aa,_,1-F)),J=0;J<H;J++){for(B+="<tr>",K=l?"<td class='ui-datepicker-week-col'>"+this._get(a,"calculateWeek")(I)+"</td>":"",v=0;v<7;v++)L=q?q.apply(a.input?a.input[0]:null,[I]):[!0,""],M=I.getMonth()!==_,N=M&&!s||!L[0]||Z&&I<Z||$&&I>$,K+="<td class='"+((v+k+6)%7>=5?" ui-datepicker-week-end":"")+(M?" ui-datepicker-other-month":"")+(I.getTime()===z.getTime()&&_===a.selectedMonth&&a._keyEvent||t.getTime()===I.getTime()&&t.getTime()===z.getTime()?" "+this._dayOverClass:"")+(N?" "+this._unselectableClass+" ui-state-disabled":"")+(M&&!r?"":" "+L[1]+(I.getTime()===Y.getTime()?" "+this._currentClass:"")+(I.getTime()===P.getTime()?" ui-datepicker-today":""))+"'"+(M&&!r||!L[2]?"":" title='"+L[2].replace(/'/g,"&#39;")+"'")+(N?"":" data-handler='selectDay' data-event='click' data-month='"+I.getMonth()+"' data-year='"+I.getFullYear()+"'")+">"+(M&&!r?"&#xa0;":N?"<span class='ui-state-default'>"+I.getDate()+"</span>":"<a class='ui-state-default"+(I.getTime()===P.getTime()?" ui-state-highlight":"")+(I.getTime()===Y.getTime()?" ui-state-active":"")+(M?" ui-priority-secondary":"")+"' href='#'>"+I.getDate()+"</a>")+"</td>",I.setDate(I.getDate()+1),I=this._daylightSavingAdjust(I);B+=K+"</tr>"}_++,_>11&&(_=0,aa++),B+="</tbody></table>"+(X?"</div>"+(U[0]>0&&y===U[1]-1?"<div class='ui-datepicker-row-break'></div>":""):""),x+=B}u+=x}return u+=j,a._keyEvent=!1,u},_generateMonthYearHeader:function(a,b,c,d,e,f,g,h){var i,j,k,l,m,n,o,p,q=this._get(a,"changeMonth"),r=this._get(a,"changeYear"),s=this._get(a,"showMonthAfterYear"),t="<div class='ui-datepicker-title'>",u="";if(f||!q)u+="<span class='ui-datepicker-month'>"+g[b]+"</span>";else{for(i=d&&d.getFullYear()===c,j=e&&e.getFullYear()===c,u+="<select class='ui-datepicker-month' data-handler='selectMonth' data-event='change'>",k=0;k<12;k++)(!i||k>=d.getMonth())&&(!j||k<=e.getMonth())&&(u+="<option value='"+k+"'"+(k===b?" selected='selected'":"")+">"+h[k]+"</option>");u+="</select>"}if(s||(t+=u+(!f&&q&&r?"":"&#xa0;")),!a.yearshtml)if(a.yearshtml="",f||!r)t+="<span class='ui-datepicker-year'>"+c+"</span>";else{for(l=this._get(a,"yearRange").split(":"),m=(new Date).getFullYear(),n=function(a){var b=a.match(/c[+\-].*/)?c+parseInt(a.substring(1),10):a.match(/[+\-].*/)?m+parseInt(a,10):parseInt(a,10);return isNaN(b)?m:b},o=n(l[0]),p=Math.max(o,n(l[1]||"")),o=d?Math.max(o,d.getFullYear()):o,p=e?Math.min(p,e.getFullYear()):p,a.yearshtml+="<select class='ui-datepicker-year' data-handler='selectYear' data-event='change'>";o<=p;o++)a.yearshtml+="<option value='"+o+"'"+(o===c?" selected='selected'":"")+">"+o+"</option>";a.yearshtml+="</select>",t+=a.yearshtml,a.yearshtml=null}return t+=this._get(a,"yearSuffix"),s&&(t+=(!f&&q&&r?"":"&#xa0;")+u),t+="</div>"},_adjustInstDate:function(a,b,c){var d=a.drawYear+("Y"===c?b:0),e=a.drawMonth+("M"===c?b:0),f=Math.min(a.selectedDay,this._getDaysInMonth(d,e))+("D"===c?b:0),g=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(d,e,f)));a.selectedDay=g.getDate(),a.drawMonth=a.selectedMonth=g.getMonth(),a.drawYear=a.selectedYear=g.getFullYear(),"M"!==c&&"Y"!==c||this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max"),e=c&&b<c?c:b;return d&&e>d?d:e}
vendor: 9,722 bytes, lines 8-9
8,_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");b&&b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){var b=this._get(a,"numberOfMonths");return null==b?[1,1]:"number"==typeof b?[1,b]:b},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return new Date(a,b,1).getDay()},_canAdjustMonth:function(a,b,c,d){var e=this._getNumberOfMonths(a),f=this._daylightSavingAdjust(new Date(c,d+(b<0?b:e[0]*e[1]),1));return b<0&&f.setDate(this._getDaysInMonth(f.getFullYear(),f.getMonth())),this._isInRange(a,f)},_isInRange:function(a,b){var c,d,e=this._getMinMaxDate(a,"min"),f=this._getMinMaxDate(a,"max"),g=null,h=null,i=this._get(a,"yearRange");return i&&(c=i.split(":"),d=(new Date).getFullYear(),g=parseInt(c[0],10),h=parseInt(c[1],10),c[0].match(/[+\-].*/)&&(g+=d),c[1].match(/[+\-].*/)&&(h+=d)),(!e||b.getTime()>=e.getTime())&&(!f||b.getTime()<=f.getTime())&&(!g||b.getFullYear()>=g)&&(!h||b.getFullYear()<=h)},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");return b="string"!=typeof b?b:(new Date).getFullYear()%100+parseInt(b,10),{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,d){b||(a.currentDay=a.selectedDay,a.currentMonth=a.selectedMonth,a.currentYear=a.selectedYear);var e=b?"object"==typeof b?b:this._daylightSavingAdjust(new Date(d,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),e,this._getFormatConfig(a))}}),a.fn.datepicker=function(b){if(!this.length)return this;a.datepicker.initialized||(a(document).mousedown(a.datepicker._checkExternalClick),a.datepicker.initialized=!0),0===a("#"+a.datepicker._mainDivId).length&&a("body").append(a.datepicker.dpDiv);var c=Array.prototype.slice.call(arguments,1);return"string"!=typeof b||"isDisabled"!==b&&"getDate"!==b&&"widget"!==b?"option"===b&&2===arguments.length&&"string"==typeof arguments[1]?a.datepicker["_"+b+"Datepicker"].apply(a.datepicker,[this[0]].concat(c)):this.each(function(){
9"string"==typeof b?a.datepicker["_"+b+"Datepicker"].apply(a.datepicker,[this].concat(c)):a.datepicker._attachDatepicker(this,b)}):a.datepicker["_"+b+"Datepicker"].apply(a.datepicker,[this[0]].concat(c))},a.datepicker=new e,a.datepicker.initialized=!1,a.datepicker.uuid=(new Date).getTime(),a.datepicker.version="1.11.0";a.datepicker,a.widget("ui.slider",a.ui.mouse,{version:"1.11.0",widgetEventPrefix:"slide",options:{animate:!1,distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null,change:null,slide:null,start:null,stop:null},numPages:5,_create:function(){this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this.element.addClass("ui-slider ui-slider-"+this.orientation+" ui-widget ui-widget-content ui-corner-all"),this._refresh(),this._setOption("disabled",this.options.disabled),this._animateOff=!1},_refresh:function(){this._createRange(),this._createHandles(),this._setupEvents(),this._refreshValue()},_createHandles:function(){var b,c,d=this.options,e=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),f=[];for(c=d.values&&d.values.length||1,e.length>c&&(e.slice(c).remove(),e=e.slice(0,c)),b=e.length;b<c;b++)f.push("<span class='ui-slider-handle ui-state-default ui-corner-all' tabindex='0'></span>");this.handles=e.add(a(f.join("")).appendTo(this.element)),this.handle=this.handles.eq(0),this.handles.each(function(b){a(this).data("ui-slider-handle-index",b)})},_createRange:function(){var b=this.options,c="";b.range?(!0===b.range&&(b.values?b.values.length&&2!==b.values.length?b.values=[b.values[0],b.values[0]]:a.isArray(b.values)&&(b.values=b.values.slice(0)):b.values=[this._valueMin(),this._valueMin()]),this.range&&this.range.length?this.range.removeClass("ui-slider-range-min ui-slider-range-max").css({left:"",bottom:""}):(this.range=a("<div></div>").appendTo(this.element),c="ui-slider-range ui-widget-header ui-corner-all"),this.range.addClass(c+("min"===b.range||"max"===b.range?" ui-slider-range-"+b.range:""))):(this.range&&this.range.remove(),this.range=null)},_setupEvents:function(){this._off(this.handles),this._on(this.handles,this._handleEvents),this._hoverable(this.handles),this._focusable(this.handles)},_destroy:function(){this.handles.remove(),this.range&&this.range.remove(),this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-widget ui-widget-content ui-corner-all"),this._mouseDestroy()},_mouseCapture:function(b){var c,d,e,f,g,h,i,j=this,k=this.options;return!k.disabled&&(this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),c={x:b.pageX,y:b.pageY},d=this._normValueFromMouse(c),e=this._valueMax()-this._valueMin()+1,this.handles.each(function(b){var c=Math.abs(d-j.values(b));(e>c||e===c&&(b===j._lastChangedValue||j.values(b)===k.min))&&(e=c,f=a(this),g=b)}),!1!==this._start(b,g)&&(this._mouseSliding=!0,this._handleIndex=g,f.addClass("ui-state-active").focus(),h=f.offset(),i=!a(b.target).parents().addBack().is(".ui-slider-handle"),this._clickOffset=i?{left:0,top:0}:{left:b.pageX-h.left-f.width()/2,top:b.pageY-h.top-f.height()/2-(parseInt(f.css("borderTopWidth"),10)||0)-(parseInt(f.css("borderBottomWidth"),10)||0)+(parseInt(f.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(b,g,d),this._animateOff=!0,!0))},_mouseStart:function(){return!0},_mouseDrag:function(a){var b={x:a.pageX,y:a.pageY},c=this._normValueFromMouse(b);return this._slide(a,this._handleIndex,c),!1},_mouseStop:function(a){return this.handles.removeClass("ui-state-active"),this._mouseSliding=!1,this._stop(a,this._handleIndex),this._change(a,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1},_detectOrientation:function(){this.orientation="vertical"===this.options.orientation?"vertical":"horizontal"},_normValueFromMouse:function(a){var b,c,d,e,f;return"horizontal"===this.orientation?(b=this.elementSize.width,c=a.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(b=this.elementSize.height,c=a.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),d=c/b,d>1&&(d=1),d<0&&(d=0),"vertical"===this.orientation&&(d=1-d),e=this._valueMax()-this._valueMin(),f=this._valueMin()+d*e,this._trimAlignValue(f)},_start:function(a,b){var c={handle:this.handles[b],value:this.value()};return this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._trigger("start",a,c)},_slide:function(a,b,c){var d,e,f;this.options.values&&this.options.values.length?(d=this.values(b?0:1),2===this.options.values.length&&!0===this.options.range&&(0===b&&c>d||1===b&&c<d)&&(c=d),c!==this.values(b)&&(e=this.values(),e[b]=c,f=this._trigger("slide",a,{handle:this.handles[b],value:c,values:e}),d=this.values(b?0:1),!1!==f&&this.values(b,c))):c!==this.value()&&!1!==(f=this._trigger("slide",a,{handle:this.handles[b],value:c}))&&this.value(c)},_stop:function(a,b){var c={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._trigger("stop",a,c)},_change:function(a,b){if(!this._keySliding&&!this._mouseSliding){var c={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._lastChangedValue=b,this._trigger("change",a,c)}},value:function(a){return arguments.length?(this.options.value=this._trimAlignValue(a),this._refreshValue(),void this._change(null,0)):this._value()},values:function(b,c){var d,e,f;if(arguments.length>1)return this.options.values[b]=this._trimAlignValue(c),this._refreshValue(),void this._change(null,b);if(!arguments.length)return this._values();if(!a.isArray(arguments[0]))return this.options.values&&this.options.values.length?this._values(b):this.value();for(d=this.options.values,e=arguments[0],f=0;f<d.length;f+=1)d[f]=this._trimAlignValue(e[f]),this._change(null,f);this._refreshValue()},_setOption:function(b,c){var d,e=0;switch("range"===b&&!0===this.options.range&&("min"===c?(this.options.value=this._values(0),this.options.values=null):"max"===c&&(this.options.value=this._values(this.options.values.length-1),this.options.values=null)),a.isArray(this.options.values)&&(e=this.options.values.length),"disabled"===b&&this.element.toggleClass("ui-state-disabled",!!c),this._super(b,c),b){case"orientation":this._detectOrientation(),this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation),this._refreshValue();break;case"value":this._animateOff=!0,this._refreshValue(),this._change(null,0),this._animateOff=!1;break;case"values":for(this._animateOff=!0,this._refreshValue(),d=0;d<e;d+=1)this._change(null,d);this._animateOff=!1;break;case"min":case"max":this._animateOff=!0,this._refreshValue(),this._animateOff=!1;break;case"range":this._animateOff=!0,this._refresh(),this._animateOff=!1}},_value:function(){var a=this.options.value;return a=this._trimAlignValue(a)},_values:function(a){var b,c,d;if(arguments.length)return b=this.options.values[a],b=this._trimAlignValue(b);if(this.options.values&&this.options.values.length){for(c=this.options.values.slice(),d=0;d<c.length;d+=1)c[d]=this._trimAlignValue(c[d]);return c}return[]}
9,_trimAlignValue:function(a){if(a<=this._valueMin())return this._valueMin();if(a>=this._valueMax())return this._valueMax();var b=this.options.step>0?this.options.step:1,c=(a-this._valueMin())%b,d=a-c;return 2*Math.abs(c)>=b&&(d+=c>0?b:-b),parseFloat(d.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var b,c,d,e,f,g=this.options.range,h=this.options,i=this,j=!this._animateOff&&h.animate,k={};this.options.values&&this.options.values.length?this.handles.each(function(d){c=(i.values(d)-i._valueMin())/(i._valueMax()-i._valueMin())*100,k["horizontal"===i.orientation?"left":"bottom"]=c+"%",a(this).stop(1,1)[j?"animate":"css"](k,h.animate),!0===i.options.range&&("horizontal"===i.orientation?(0===d&&i.range.stop(1,1)[j?"animate":"css"]({left:c+"%"},h.animate),1===d&&i.range[j?"animate":"css"]({width:c-b+"%"},{queue:!1,duration:h.animate})):(0===d&&i.range.stop(1,1)[j?"animate":"css"]({bottom:c+"%"},h.animate),1===d&&i.range[j?"animate":"css"]({height:c-b+"%"},{queue:!1,duration:h.animate}))),b=c}):(d=this.value(),e=this._valueMin(),f=this._valueMax(),c=f!==e?(d-e)/(f-e)*100:0,k["horizontal"===this.orientation?"left":"bottom"]=c+"%",this.handle.stop(1,1)[j?"animate":"css"](k,h.animate),"min"===g&&"horizontal"===this.orientation&&this.range.stop(1,1)[j?"animate":"css"]({width:c+"%"},h.animate),"max"===g&&"horizontal"===this.orientation&&this.range[j?"animate":"css"]({width:100-c+"%"},{queue:!1,duration:h.animate}),"min"===g&&"vertical"===this.orientation&&this.range.stop(1,1)[j?"animate":"css"]({height:c+"%"},h.animate),"max"===g&&"vertical"===this.orientation&&this.range[j?"animate":"css"]({height:100-c+"%"},{queue:!1,duration:h.animate}))},_handleEvents:{keydown:function(b){var c,d,e,f=a(b.target).data("ui-slider-handle-index");switch(b.keyCode){case a.ui.keyCode.HOME:case a.ui.keyCode.END:case a.ui.keyCode.PAGE_UP:case a.ui.keyCode.PAGE_DOWN:case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:if(b.preventDefault(),!this._keySliding&&(this._keySliding=!0,a(b.target).addClass("ui-state-active"),!1===this._start(b,f)))return}switch(e=this.options.step,c=d=this.options.values&&this.options.values.length?this.values(f):this.value(),b.keyCode){case a.ui.keyCode.HOME:d=this._valueMin();break;case a.ui.keyCode.END:d=this._valueMax();break;case a.ui.keyCode.PAGE_UP:d=this._trimAlignValue(c+(this._valueMax()-this._valueMin())/this.numPages);break;case a.ui.keyCode.PAGE_DOWN:d=this._trimAlignValue(c-(this._valueMax()-this._valueMin())/this.numPages);break;case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:if(c===this._valueMax())return;d=this._trimAlignValue(c+e);break;case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:if(c===this._valueMin())return;d=this._trimAlignValue(c-e)}this._slide(b,f,d)},keyup:function(b){var c=a(b.target).data("ui-slider-handle-index");this._keySliding&&(this._keySliding=!1,this._stop(b,c),this._change(b,c),a(b.target).removeClass("ui-state-active"))}}})}),define("text",["module"],function(a){"use strict";var b,c,d=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],e=/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,f=/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im,g="undefined"!=typeof location&&location.href,h=g&&location.protocol&&location.protocol.replace(/\:/,""),i=g&&location.hostname,j=g&&(location.port||void 0),k=[],l=a.config&&a.config()||{};return b={version:"2.0.5",strip:function(a){if(a){a=a.replace(e,"");var b=a.match(f);b&&(a=b[1])}else a="";return a},jsEscape:function(a){return a.replace(/(['\\])/g,"\\$1").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r").replace(/[\u2028]/g,"\\u2028").replace(/[\u2029]/g,"\\u2029")},createXhr:l.createXhr||function(){var a,b,c;if("undefined"!=typeof XMLHttpRequest)return new XMLHttpRequest;if("undefined"!=typeof ActiveXObject)for(b=0;b<3;b+=1){c=d[b];try{a=new ActiveXObject(c)}catch(e){}if(a){d=[c];break}}return a},parseName:function(a){var b,c,d,e,f=!1,g=a.indexOf("."),h=0===a.indexOf("./")||0===a.indexOf("../");-1!==g&&(!h||g>1)?(b=a.substring(0,g),c=a.substring(g+1,a.length)):b=a,d=c||b,-1!==(g=d.indexOf("!"))&&(f="strip"===d.substring(g+1),d=d.substring(0,g),c?c=d:b=d);var i=i||{environmentBase:"../.."};return e=i.environmentBase||"",b=e+b,{moduleName:b,ext:c,strip:f}},xdRegExp:/^((\w+)\:)?\/\/([^\/\\]+)/,useXhr:function(a,c,d,e){var f,g,h,i=b.xdRegExp.exec(a);return!i||(f=i[2],g=i[3],g=g.split(":"),h=g[1],g=g[0],!(f&&f!==c||g&&g.toLowerCase()!==d.toLowerCase()||(h||g)&&h!==e))},finishLoad:function(a,c,d,e){d=c?b.strip(d):d,l.isBuild&&(k[a]=d),e(d)},load:function(a,c,d,e){if(e.isBuild&&!e.inlineText)return void d();l.isBuild=e.isBuild;var f=b.parseName(a),k=f.moduleName+(f.ext?"."+f.ext:""),m=c.toUrl(k),n=l.useXhr||b.useXhr;m=m.replace("/components/components/","/components/"),!g||n(m,h,i,j)?b.get(m,function(c){b.finishLoad(a,f.strip,c,d)},function(a){d.error&&d.error(a)}):c([k],function(a){b.finishLoad(f.moduleName+"."+f.ext,f.strip,a,d)})},write:function(a,c,d,e){if(k.hasOwnProperty(c)){var f=b.jsEscape(k[c]);d.asModule(a+"!"+c,"define(function () { return '"+f+"';});\n")}},writeFile:function(a,c,d,e,f){var g=b.parseName(c),h=g.ext?"."+g.ext:"",i=g.moduleName+h,j=d.toUrl(g.moduleName+h)+".js";b.load(i,d,function(c){var d=function(a){return e(j,a)};d.asModule=function(a,b){return e.asModule(a,j,b)},b.write(a,i,d,f)},f)}},"node"===l.env||!l.env&&"undefined"!=typeof process&&process.versions&&process.versions.node?(c=require.nodeRequire("fs"),b.get=function(a,b){var d=c.readFileSync(a,"utf8");0===d.indexOf("\ufeff")&&(d=d.substring(1)),b(d)}):"xhr"===l.env||!l.env&&b.createXhr()?b.get=function(a,c,d,e){var f,g=b.createXhr();if(g.open("GET",a,!0),e)for(f in e)e.hasOwnProperty(f)&&g.setRequestHeader(f.toLowerCase(),e[f]);l.onXhr&&l.onXhr(g,a),g.onreadystatechange=function(b){var e,f;4===g.readyState&&(e=g.status,e>399&&e<600?(f=new Error(a+" HTTP status: "+e),f.xhr=g,d(f)):c(g.responseText))},g.send(null)}:("rhino"===l.env||!l.env&&"undefined"!=typeof Packages&&"undefined"!=typeof java)&&(b.get=function(a,b){var c,d,e="utf-8",f=new java.io.File
9(a),g=java.lang.System.getProperty("line.separator"),h=new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(f),e)),i="";try{for(c=new java.lang.StringBuffer,d=h.readLine(),d&&d.length()&&65279===d.charAt(0)&&(d=d.substring(1)),c.append(d);null!==(d=h.readLine());)c.append(g),c.append(d);i=String(c.toString())}finally{h.close()}b(i)}),b}),define("hbars",["text","handlebars"],function(a,b){"use strict";var c={};return{version:"0.0.2",load:function(d,e,f,g){if(c[d])f(c[d]);else{var h=g.hbars&&g.hbars.extension||".html",i=g.hbars&&g.hbars.path||"",j=g.hbars&&g.hbars.compileOptions||{};a.load(i+d+h,e,function(a){g.isBuild?(c[d]=b.precompile(a,j),f()):(c[d]=b.compile(a),f(c[d]))},g)}},write:function(a,b,d,e){var f=c[b];f&&d.asModule(a+"!"+b,"define('{pluginName}!{moduleName}', ['handlebars'], function (Handlebars) { return Handlebars.template({content}); });\n".replace("{pluginName}",a).replace("{moduleName}",b).replace("{content}",f))}}}),define("hbars!/components/c_008/html/c_008-authorable",["handlebars"],function(a){return a.template({compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<div class="c_008">\n    <button type="button" \n        class="has-tooltip tooltip-label-central tooltip-label-hidden '+a.escapeExpression((g=null!=(g=h(c,"style")||(null!=b?h(b,"style"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"style",hash:{},data:e,loc:{start:{line:3,column:70},end:{line:3,column:79}}}):g))+" "+a.escapeExpression((g=null!=(g=h(c,"icon")||(null!=b?h(b,"icon"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"icon",hash:{},data:e,loc:{start:{line:3,column:80},end:{line:3,column:88}}}):g))+'"\n        data-parent-component="'+a.escapeExpression((g=null!=(g=h(c,"parentComponent")||(null!=b?h(b,"parentComponent"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"parentComponent",hash:{},data:e,loc:{start:{line:4,column:31},end:{line:4,column:50}}}):g))+'"\n        data-tooltip-id="'+a.escapeExpression((g=null!=(g=h(c,"tooltipID")||(null!=b?h(b,"tooltipID"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"tooltipID",hash:{},data:e,loc:{start:{line:5,column:25},end:{line:5,column:38}}}):g))+'"\n        data-tooltip-my="'+a.escapeExpression((g=null!=(g=h(c,"positionMy")||(null!=b?h(b,"positionMy"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"positionMy",hash:{},data:e,loc:{start:{line:6,column:25},end:{line:6,column:39}}}):g))+' center"\n        data-tooltip-at="'+a.escapeExpression((g=null!=(g=h(c,"positionAt")||(null!=b?h(b,"positionAt"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"positionAt",hash:{},data:e,loc:{start:{line:7,column:25},end:{line:7,column:39}}}):g))+' center" tabindex="0"\n        data-label-option="'+a.escapeExpression((g=null!=(g=h(c,"labelOption")||(null!=b?h(b,"labelOption"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"labelOption",hash:{},data:e,loc:{start:{line:8,column:27},end:{line:8,column:42}}}):g))+'"> <span>'+a.escapeExpression((g=null!=(g=h(c,"label")||(null!=b?h(b,"label"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"label",hash:{},data:e,loc:{start:{line:8,column:51},end:{line:8,column:60}}}):g))+'</span>\n    </button>\n    <div class="tooltip-panel" data-tooltip-id="'+a.escapeExpression((g=null!=(g=h(c,"tooltipID")||(null!=b?h(b,"tooltipID"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"tooltipID",hash:{},data:e,loc:{start:{line:10,column:48},end:{line:10,column:61}}}):g))+'">\n        <p>'+(null!=(g=null!=(g=h(c,"content")||(null!=b?h(b,"content"):b))?g:a.hooks.helperMissing,f="function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"content",hash:{},data:e,loc:{start:{line:11,column:11},end:{line:11,column:24}}}):g)?f:"")+"</p>\n    </div>\n</div>"},useData:!0}
9)}),define("c_008",["jquery","qTip","underscore","jqueryui","hbars!/components/c_008/html/c_008-authorable"],function(a,b,c,d,e){"use strict";function f(b){g(),u=a.extend({},t,b)}function g(){var b={ie:function(){for(var a=4,b=document.createElement("div");(b.innerHTML="\x3c!--[if gt IE "+a+"]><i></i><![endif]--\x3e")&&b.getElementsByTagName("i")[0];a+=1);return a>4?a:NaN}(),iOS:parseFloat((""+(/CPU.*OS ([0-9_]{1,5})|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))||!1},c={offset:function(c,d,e){function f(a,b){d.left+=b*a.scrollLeft(),d.top+=b*a.scrollTop()}if(!e[0])return d;var g,h,i,j=a(c[0].ownerDocument),k=!!b.ie&&"CSS1Compat"!==document.compatMode,l=e[0],m=a.css(l,"overflow-y");do{if("static"!==(h=a.css(l,"position"))){"fixed"===h?(i=l.getBoundingClientRect(),f(j,-1)):(i=a(l).position(),i.left+=parseFloat(a.css(l,"borderLeftWidth"))||0,i.top+=parseFloat(a.css(l,"borderTopWidth"))||0);var n=parseFloat(a.css(l,"marginLeft")),o=parseFloat(a.css(l,"marginTop"));d.left-=i.left+(n>0?n:0),d.top-=i.top+(o>0?o:0),g||"hidden"===m||"visible"===m||(g=a(l))}}while(l=l.offsetParent);return g&&(g[0]!==j[0]||k)&&f(g,1),d}};a.extend(!0,a.qtip.prototype.reposition,c)}function h(a,b){var c=a;return function(a){c.qtip(b),a&&c.qtip("toggle",!0)}}function i(b){var c,d=u.selectors.tooltipPanel+"["+u.selectors.tooltipDataId+'="'+b.tooltipID+'"]',e=a(d).first().clone();c=u.tooltips.tooltipContainer?u.tooltips.tooltipContainer:u.tooltips.useQtipContainer?b.$trigger.parents(u.selectors.componentRoot):a(u.selectors.body),b.$trigger.closest(".c_320B-panel").length&&(u.tooltips.viewport=b.$trigger.closest(".c_320B-panel"),c=b.$trigger.closest(".c_320B-panel")),b.$trigger.closest(".c_320-panel").length&&(u.tooltips.viewport=b.$trigger.closest(".c_320-panel"),c=b.$trigger.closest(".c_320-panel"));var f=window.useAmericas?o():void 0,g=h(b.$trigger,{content:{text:e,button:f},position:{my:b.tooltipMy,at:b.tooltipAt,target:b.$trigger,adjust:{y:b.tooltipYOffset,x:b.tooltipXOffset,method:u.tooltips.viewportFlipMethod},viewport:u.tooltips.viewport,container:c},events:{toggle:function(c){if("tooltiphide"===c.type){if(b.$trigger.hasClass(u.classes.tooltipTriggerActive)){var d=b.$trigger.qtip("api"),e=d&&d.tooltip.hasClass(u.classes.keyboardTriggered);!b.$trigger.closest(u.selectors.componentRoot+".asterisk").length||e?b.$trigger.focus():window.setTimeout(function(){document.activeElement===b.$trigger[0]&&b.$trigger.blur()},0)}b.$trigger.removeClass(u.classes.tooltipTriggerActive),b.$trigger.attr("aria-expanded",!1),a(b.$trigger).removeAttr("aria-describedby"),a(b.$trigger).closest("td").find(u.selectors.availableInPacks)&&a(b.$trigger).closest("td").removeClass(u.selectors.tooltipBackground)}else{var f=a(b.$trigger).data("hasqtip");b.$trigger.addClass(u.classes.tooltipTriggerActive),b.$trigger.attr("aria-expanded",!0),a(b.$trigger).attr("aria-describedby","qtip-"+f),a(".qtip").attr("role","tooltip"),a(b.$trigger).closest("td").find(u.selectors.availableInPacks)&&a(b.$trigger).closest("td").addClass(u.selectors.tooltipBackground)}},visible:function(b,c){var d=c.tooltip.find(":tabbable"),e=d.eq(0),f=d.eq(-1),g=!1;e.focus(),c.heliosEventsLoaded||(c.tooltip.keyup(function(a){16===a.keyCode&&(g=!1)}),c.tooltip.keydown(function(a){if(16===a.keyCode&&(g=!0),9===a.keyCode){if(a.target===f[0]&&!g)return e.focus(1),!1;if(a.target===e[0]&&g)return f.focus(1),!1}27===a.keyCode&&c.hide()}),c.heliosEventsLoaded=!0),a(u.selectors.tooltipContent).scrollTop(0)},show:function(c,d){var e=a(d.elements.target[0]),g=e.closest(".c_129.modal"),h=!1,i=e.closest(".c_107.global-finance-overlay .dialog"),j=e.closest(".grade-info-overlay");if(window.useAmericas&&!f&&(f=o(),a(b.$trigger).data("qtip")._updateButton(f)),g.length?(e.qtip("option","position.container",g),e.qtip("option","position.viewport",g)):i.length?(e.qtip("option","position.container",i),e.qtip("option","position.viewport",i)):j.length&&(e.qtip("option","position.container",j),e.qtip("option","position.viewport",j)),e.parents(u.selectors.menuMobileExpanded).length){var k=a(u.selectors.menuMobileExpanded);e.qtip("option","position.container",k),e.qtip("option","position.viewport",k)}u.events.onShow&&u.events.onShow(c,d),e[0].classList.contains("no-analytics")&&(h=!0),u.analyticsManager&&!h&&q(d.target)}},show:{event:u.events.tooltipEvent,delay:0,solo:!0,effect:!1},hide:{event:u.tooltips.hideEvent,fixed:!0,target:!1}});g(),b.$trigger.off(u.events.tooltipKeyDown,j),b.$trigger.on(u.events.tooltipKeyDown,j),b.$trigger.on(u.events.tooltipEvent,function(c){c.preventDefault(),c.stopPropagation(),void 0===b.$trigger.qtip("api")&&g(!0),a(".qtip").trigger("focus"),a(".qtip").addClass(u.classes.mouseTriggered),a(".qtip").removeClass(u.classes.keyboardTriggered)})}function j(b){!b||b.which!==u.constants.enterKeycode&&b.which!==u.constants.spaceKeycode||(b.preventDefault(),b.stopPropagation(),a(b.target).trigger(u.events.tooltipEvent),a(".qtip").removeClass(u.classes.mouseTriggered),a(".qtip").addClass(u.classes.keyboardTriggered))}function k(a){return!(!a.hasClass(u.classes.tooltipLabelCentral)&&!a.hasClass(u.classes.tooltipLabelHidden))}function l(a){return k(a)?0:u.tooltips.xOffsetCentral}function m(a){var b=a.data(u.selectors.tooltipDataAt)||u.tooltips.at;return k(a)?"top left"===b||"top center"===b?"top center":"bottom center"
9:b}function n(a){var b={$trigger:a,tooltipDefaults:u.tooltips,tooltipID:a.attr(u.selectors.tooltipDataId),tooltipAt:m(a),tooltipMy:a.data(u.selectors.tooltipDataMy)||u.tooltips.my,tooltipYOffset:u.tooltips.yOffsetTop,tooltipXOffset:l(a)};"top "===b.tooltipAt.substring(0,4)?b.tooltipYOffset=u.tooltips.yOffsetTop:"bottom "===b.tooltipAt.substring(0,7)&&(b.tooltipYOffset=u.tooltips.yOffsetBottom),i(b)}function o(){var b=a(u.selectors.componentRoot).attr("data-close-label"),c=a("<span>").addClass("sr-only").text(b);return a("<button />").addClass(u.classes.tooltipClose).attr({"aria-label":b}).append(c)}function p(b,d){b.length&&(d&&d.showEvent&&(t.events.tooltipEvent="mouseenter"),u=a.extend(!0,{},u,t,b,d),b.each(function(b){var d=a(this),e=d.attr("data-tooltip-id"),f=c.uniqueId("tooltip-input-element-id-");e||d.parents(u.selectors.componentRoot).find('[data-tooltip-id="'+e+'"]').attr("data-tooltip-id",f),n(d)}))}function q(b){var c,d,e=b.data(u.dataEle.tooltipId),f=a(u.selectors.tooltipContainer).find("[data-tooltip-id="+e+"]"),g="tooltipDisplay";d=f.find(u.selectors.tooltipHeading).text(),b.hasClass(u.classes.tooltipTriggerActive)||(d.length||(d=f.data(u.data.tooltipId)),c={componentId:"C8_Tooltip",tooltipTitle:e},b.data("parentComponent")&&(c.parentComponent=b.data("parentComponent")),u.analyticsManager.tag(g,c))}function r(b,d,f){var g={tooltipID:c.uniqueId("tooltip-input-element-id-"),positionMy:"top",positionAt:"center",labelOption:"tooltip-label-hidden",position:"bottom",label:""},h=a.extend({},g,f),i=e(h);d.html(i),p(b.find(".has-tooltip"))}function s(b){if(!b.length)return!1;b.each(function(){var b=a(this).data("hasqtip");a("#qtip-"+b+"-content").remove()})}var t={selectors:{body:"body",componentRoot:".c_008",root:".has-tooltip",tooltipTrigger:".has-tooltip",tooltipDataId:"data-tooltip-id",tooltipDataAt:"tooltip-at",tooltipDataMy:"tooltip-my",tooltipPanel:".tooltip-panel",tooltipContainer:".qtip",tooltipContent:".qtip-content",tooltipHeading:".tooltip-heading",tooltipBackground:"tooltip-background",availableInPacks:".available-in-packs",menuMobileExpanded:".c_320-panels-container--expanded"},tooltips:{my:"top center",at:"bottom left",yOffsetTop:-14,yOffsetBottom:14,xOffsetCentral:8,hideEvent:"click unfocus",viewportFlipMethod:"shift flipinvert",viewport:a(document)},classes:{tooltipTriggerActive:"tooltip-active",tooltipLabelCentral:"tooltip-label-central",tooltipLabelHidden:"tooltip-label-hidden",tooltipClose:"qtip-close",mouseTriggered:"mouse-triggered",keyboardTriggered:"keyboard-triggered"},events:{tooltipEvent:"click",tooltipKeyDown:"keydown"},data:{tooltipId:"tooltip-id"},dataEle:{tooltipId:"tooltip-id"},constants:{enterKeycode:13,spaceKeycode:32},pseudoElement:!1},u=null;return{init:f,createTooltips:p,createAuthorableTooltip:r,flushTooltips:s}}),define("disclaimers",["jquery","handlebars","underscore","logger","c_008"],function(a,b,c,d,e){"use strict";function f(b){w=a.extend({},v,b),x.info("init"),s=a(a(w.selectors.vuejsConfigurator).length?w.selectors.backboneConfigurator:w.selectors.body),p()}function g(b,c,d){var e=/HELIOS\.components\.disclaimers\s*=\s*(\{.*?\});/,f=e.exec(b);if(f){var g=JSON.parse(f[1]);a.each(g,function(a,b){var c=C[b.id];c&&(c.status=2,c.id=b.id,c.text=b.text)})}else x.warn("Error extracting disclaimer JSON data");h(c,d)}function h(a,b){j(a.disclaimerData,b),l(a.disclaimerNodes)}function i(){var a=w.urls.disclaimerContentUrl;return a&&-1===a.indexOf("common-assets")&&(a.slice(-1)!==w.delimiter&&(a+=w.delimiter),a+=u.join(w.delimiter)+".html"),a}function j(d,f){var g=s.find(w.selectors.tooltipTemplate).html(),h=s.find(w.selectors.tooltipTemplateContent).html(),i=b.compile(g),j=b.compile(h),l=[],m=0;x.info("injectTooltips"),a.each(d,function(b,e){var g,h,n=e.disclaimers.length,o=!1;n>1&&a.each(e.disclaimers,function(a,b){if(null==C[b]||2!=C[b].status)return void(o=!0);var c=new RegExp("\\[\\["+b+"\\]\\]"),d="[["+b+"-"+a+"]]";e.text=e.text.replace(c,d)}),a.each(e.disclaimers,function(b,d){if(null==C[d]||2!=C[d].status)return void(o=!0);var f,m=new RegExp("\\[\\["+d+"\\]\\]");g="[["+d+"]]",n>1&&(m=new RegExp("\\[\\["+d+"-"+b+"\\]\\]"),g="[["+d+"-"+b+"]]"),c.has(C,d)?(f=c.uniqueId("disclaimer-"+d+"-"+b+"-tooltip-"),C[d].disclaimerId=f,c.has(C[d],"tooltipLabel")||(C[d].tooltipLabel=w.tooltipMarker),h=e.text.replace(m,i(C[d])),g=g.replace(m,j(C[d])),e.text=h,l.push(f),s.append(a.parseHTML(g))):(n>1&&(d=d+"-"+b),k(e,d))}),o||(e.$element.replaceWith(a.parseHTML(e.text)),m++,Object.keys(d).length===m&&D.trigger(w.events.disclaimersRendered,f))}),a.each(l,function(b,c){e.createTooltips(a('.has-tooltip[data-tooltip-id="'+c+'"]'),w.tooltipOptions)}),a('html[dir="rtl"]').length&&a(".c_008 .has-tooltip span").attr("dir","rtl"),r()}function k(a,b){var c=new RegExp("\\[\\["+b+"\\]\\]","g");x.info("Removing unrendered disclaimer "+b),a.text=a.text.replace(c,""),a.$element.get(0).nodeValue=a.text}function l(b){var c=b||t;x.warn("Removing all unrendered disclaimers"),a.each(c,function(b,c){var d=a(c);d&&d.length&&(d.get(0).nodeValue=d.text().replace(z,""))})}function m(){a.each(B,function(a,b){(b.$element.parents("a").length||b.$element.parents("button").length)&&(b.text=b.text.replace(z,""),b.$element.get(0).nodeValue=b.text,x.warn("Disclaimers cannot be inserted into clickable elements. Removing all unrendered disclaimers from this node"))})}function n(){w.urls.disclaimerContentUrl?x.warn("Call to disclaimer data source failed"):x.warn("Disclaimer data source URL not set"),l()}function o(b){return t=a(),b.length&&b.find("*:not(iframe):not(script)").each(function(){var b=a(this).contents().filter(function(){return 3===this.nodeType&&y.test(this.nodeValue)});b.length&&(t=t.add(b))}),t}function p(b,d,e){var f,j,k={},p=b||s;if(x.info("renderDisclaimers"),null!==e&&void 0!==e||(e=w.events.onDisclaimerCompleted),p){if(t=o(p),!t.length)return void p.trigger(e);if(d&&p&&(w.tooltipOptions.tooltips.viewport=p,w.tooltipOptions.tooltips.position={my:"bottom center",at:"top center",viewport:p,container:p,adjust:{method:"flip shift",mouse:!1,scroll:!0}},w.tooltipOptions.tooltips.style=a.extend(!0,w.tooltipOptions.tooltips.style||{},{tip:{corner:"bottom center"}})),m(),!a(w.selectors.tooltipTemplate).length)return x.warn("Tooltip template not found. Hiding all disclaimers"),l(),void p.trigger(w.events.onDisclaimerCompleted);if(p){var q=p.attr("disclaimers")?JSON.parse(p.attr("disclaimers")):[];t.each(function(b,d){var e=a(d),f=e.text(),g=f.match(z),h=[];c.each(g,function(a){var b=a.replace(A,"");h.push(b),C[b]||q.includes(b)||(C[b]={status:0},q.push(b))}),k[b]={$element:e,text:f,disclaimers:h},B[b]=c.extend({},k[b])}),p.attr("disclaimers",JSON.stringify(q)),u=c.reduce(c.keys(C),function(a,b){var c=C[b];return 0===c.status&&(a.push(b),c.status=1),a},[]),j={disclaimerNodes:t,disclaimerData:k,scope:p},u.length>0?(f=i(),f?a.ajax({url:f,dataType:"html"}).done(function(a){g(a,j,p)}).fail(n).always(function(){p.trigger(w.events.onDisclaimerCompleted)}):(n(),p.trigger(w.events.onDisclaimerCompleted))):h(j,p)}}}function q(b){var c=(b||s).find(".has-tooltip[data-tooltip-id]");if(c.length){var d=c.map(function(){return'.qtip:has(.tooltip-panel[data-tooltip-id="'+this.getAttribute("data-tooltip-id")+'"])'}).get().join(",");d&&a(d).remove(),c.removeAttr("data-hasqtip").removeData("hasqtip").removeData("qtip"),e.createTooltips(c,w.tooltipOptions)}}function r(){var b,c,d={},e=0;
9a(w.selectors.disclaimerTooltipWrapper).each(function(){b=a(this).find(w.selectors.tooltipHeading+" + div").text(),d[b]=a(this).find(w.selectors.tooltipHeading).text()}),a(w.selectors.printDisclaimersWrapper).empty();for(c in d)a(w.selectors.printDisclaimersWrapper).append("<p><span>"+d[c]+(d[c]?":":"")+" </span> "+c+"</p>"),e++;e>0?a(w.selectors.printDisclaimersHeader).show():a(w.selectors.printDisclaimersHeader).hide()}var s,t,u,v={tooltipMarker:"[*]",delimiter:"/",events:{disclaimersRendered:"disclaimersRendered",onDisclaimerCompleted:"disclaimers.onDisclaimerCompleted"},selectors:{body:"body",disclaimerContainer:"get-disclaimers-html",tooltipTemplate:"script[data-name='template-tooltip']",tooltipTemplateContent:"script[data-name='template-tooltip-content']",printDisclaimersHeader:"div.print-disclaimers h3",printDisclaimersWrapper:"div.print-disclaimers div",disclaimerTooltipWrapper:".disclaimer-tooltip",tooltipHeading:".tooltip-heading",vuejsConfigurator:"#vuejs-configurator",backboneConfigurator:".c_cfg_backbone"},urls:{disclaimerContentUrl:HELIOS.config.common.api.disclaimers||!1},tooltipOptions:{tooltips:{viewport:a(document)}}},w=null,x=new d({prefix:"Disclaimers"}),y=/\[\[(\w+)\]\]/,z=/\[\[(\w+)\]\]/g,A=/\]\]|\[\[/g,B={},C={},D=a({});return{init:f,eventAggregator:D,renderDisclaimers:p,rebindDisclaimers:q,getDisclaimerNodes:o,removeAllDisclaimers:l}}),
10define("skiplinks",["jquery"],function(a){"use strict";function b(){a("#skiplinks a").on("click",function(b){b.preventDefault();var c=a(this).attr("href");a("html, body").animate({scrollTop:a(c).offset().top},"fast"),a("button:visible, a:visible, input:visible, select:visible, textarea:visible, *[tabindex=0]",c).first().focus()})}return{init:b}}),define("stateStore",["storageManager","underscore"],function(a,b){"use strict";function c(a){this.settings=b.extend({},d,a),this.namespace=this.settings.namespace}var d={namespace:"state"};return c.prototype.init=function(){return!!this.settings.HELIOS&&(this.settings.HELIOS[this.namespace]=this.settings.HELIOS[this.namespace]||{},a.init(),this.currentStateData=this.get(),this.hydrate(),this)},c.prototype.get=function(){return a.loadItem(this.namespace)||{}},c.prototype.set=function(b){return a.saveItem(this.namespace,b)},c.prototype.update=function(){this.set(this.currentStateData)},c.prototype.hydrate=function(){b.extend(this.settings.HELIOS[this.namespace],this.currentStateData)},c.prototype.save=function(a,c){if(b.isUndefined(a)||!a.length||!b.isObject(c))return!1;this.currentStateData[a]=this.currentStateData[a]||{},b.extend(this.currentStateData[a],c),this.update(),this.hydrate()},c.prototype.remove=function(a){if(!a)return!1;this.currentStateData[a]={},this.update(),this.hydrate()},c}),define("stateStoreFactory",["stateStore","underscore"],function(a,b){"use strict";var c={namespace:"state"};return{instances:[],create:function(d,e){var f,g=b.extend({},c,d),h=b.findWhere(this.instances,{id:g.namespace});return b.isObject(h)?h.instance:(f=new a(g),(e||b.isUndefined(e))&&f.init(),this.instances.push({id:g.namespace,instance:f}),f)}}}),define("urlParameterDecoder",["jquery"],function(a){"use strict";function b(b){f=a.extend({},e,b)}function c(a){return decodeURIComponent(a.replace(f.pl," "))}function d(a){var b,d={};for(void 0!==a&&(f.query=a),b=f.search.exec(f.query);b;)d[c(b[1])]=c(b[2]),b=f.search.exec(f.query);return d}var e={pl:/\+/g,search:/([^&=]+)=?([^&]*)/g,query:window.location.search.substring(1),pathname:window.location.pathname},f=null;return{init:b,getUrlParams:d}}),define("queryStringStore",["jquery","storageManager","urlParameterDecoder"],function(a,b,c){function d(){if(c.init(),e=c.getUrlParams(),a.isEmptyObject(e))return!1;b.init(),b.saveItem(f.keyName,e,f)}var e,f={keyName:"queryParamsData",mode:"sessionStorage"};return{init:d}}),define("apigeeConfig",["jquery","underscore","storageManager","logger","heliosObject"],function(a,b,c,d,e){var f=new d({prefix:"ApigeeConfig"});c.init();var g={},h={};return h.clearConfigFromLocalStorage=function(){return f.debug("Clearing config from local storage"),c.deleteItem("apigeeConfig","localStorage"),this},h.getApigeeUrl=function(){return g.apigeeUrl},h.getApiGatewayUrl=function(){return g.apiGatewayUrl},h.setApigeeUrl=function(a){return g.apigeeUrl=this.transformApigeeUrl(a),this},h.setApiGatewayUrl=function(a){return g.apiGatewayUrl=this.transformApigeeUrl(a),this},h.getCountryCode=function(){return g.countryCode},h.setCountryCode=function(a){return g.countryCode=a,this},h.getLanguageCode=function(){return g.languageCode},h.setLanguageCode=function(a){return g.languageCode=a,this},h.getLocale=function(){return this.getLanguageCode()+"_"+this.getCountryCode()},h.setBrand=function(a){return e.config.common.api.apigee.brand?(g.brand=e.config.common.api.apigee.brand,this):(g.brand=a.split("_")[0]?a.split("_")[0]:"",this)},h.getBrand=function(){return g.brand},h.setEnvironment=function(a){return e.config.common.api.apigee.environment?(g.environment=e.config.common.api.apigee.environment,this):(g.environment=a.split("_")[1]?a.split("_")[1]:"dark",this)},h.getEnvironment=function(){return g.environment},h.setupContentNode=function(a){var b=a.split("/");return this.setBrand(b[2]||""),this.setEnvironment(b[2]||""),this},h.setProxyPrefix=function(a){return g.proxyPrefix=a,this},h.getProxyPrefix=function(){return g.proxyPrefix},h.transformApigeeUrl=function(a){return"/"===a.slice(-1)?a.slice(0,-1):a},h.isStale=function(a,b){return g.countryCode!==a||g.languageCode!==b},h.setApiGatewayEnabledServices=function(a){return g.apiGatewayEnabledServices=a,this},h.getApiGatewayEnabledServices=function(){return g.apiGatewayEnabledServices},h.clearConfigFromLocalStorage(),h.setProxyPrefix("/v2/proxy"),h.setCountryCode(e.config.common.api.apigee.countryCode),h.setLanguageCode(e.config.common.api.apigee.languageCode),h.setApigeeUrl(e.config.common.api.apigee.url),e.config.common.api.apigateway&&e.config.common.api.apigateway.url&&h.setApiGatewayUrl(e.config.common.api.apigateway.url),h.setupContentNode(e.config.common.api.apigee.aemProxyUrl||""),h.setApiGatewayEnabledServices(e.config.common.api.apigatewayEnabledServices||[]),b.create(h)}),define("apigeeAuthoriser",["jquery","underscore","stateStoreFactory","apigeeConfig","logger","storageManager"],function(a,b,c,d,e,f){var g=new e({prefix:"ApigeeAuthoriser"}),h={authInProgress:!1,authorisationUrlPath:"/v2/authorisation",publicAccessTokenPath:"/v2/publicAccessToken"};return h.getToken=function(b,c){var d=this,e=btoa(JSON.stringify(b));return d.authTokenInProgress=d.authTokenInProgress||{},this.dfd=this.dfd||{},d.authTokenInProgress[e]&&null===f.loadItem(e)?(g.debug("Tokenisation request blocked - request already in progress"),this.dfd[e].promise()):(null===f.loadItem(e)||c?(g.debug("Tokenisation request not blocked - continuing"),this.authTokenInProgress[e]=!0,this.dfd[e]=a.Deferred(),this.tokenPromise=this.tokenPromise||{},this.tokenPromise[e]=a.ajax({url:this.getTokenUrl(),type:"GET",contentType:"application/json",data:b}).done(function(a,b,c){d.authTokenInProgress[e]=!1,200==c.status&&(f.saveItem(e,{access_token:a.access_token},{customExpiryDate:new Date(a.valid_until)}),d.dfd[e].resolve(a))}
10)):(this.dfd[e]=a.Deferred().done(function(){d.authTokenInProgress[e]=!1}),d.dfd[e].resolve(f.loadItem(e))),this.dfd[e])},h.getApiGatewayToken=function(b,c){var d=this,e=btoa(JSON.stringify(b)+"-AG");return d.agAuthTokenInProgress=d.agAuthTokenInProgress||{},this.agDfd=this.agDfd||{},d.agAuthTokenInProgress[e]&&null===f.loadItem(e)?(g.debug("Tokenisation request blocked - request already in progress"),this.agDfd[e].promise()):(null===f.loadItem(e)||c?(g.debug("Tokenisation request not blocked - continuing"),this.agAuthTokenInProgress[e]=!0,this.agDfd[e]=a.Deferred(),this.agTokenPromise=this.agTokenPromise||{},this.agTokenPromise[e]=a.ajax({url:this.getApiGatewayTokenUrl(),type:"GET",contentType:"application/json",data:b}).done(function(a,b,c){d.agAuthTokenInProgress[e]=!1,200==c.status&&(f.saveItem(e,{access_token:a.access_token},{customExpiryDate:new Date(a.valid_until)}),d.agDfd[e].resolve(a))})):(this.agDfd[e]=a.Deferred().done(function(){d.agAuthTokenInProgress[e]=!1}),d.agDfd[e].resolve(f.loadItem(e))),this.agDfd[e])},h.getTokenUrl=function(){return this.getConfig().getApigeeUrl()+this.publicAccessTokenPath},h.getApiGatewayTokenUrl=function(){return this.getConfig().getApiGatewayUrl()+this.publicAccessTokenPath},h.generateTokenObject=function(a,b){return{locale:this.getConfig().getLocale(),scope:a,proxy:b,brand:this.getConfig().getBrand(),environment:this.getConfig().getEnvironment()}},h.getAuthorisationUrl=function(){return this.getConfig().getApigeeUrl()+this.authorisationUrlPath+"/"+this.getConfig().getCountryCode()+"/"+this.getConfig().getLanguageCode()},h.setConfig=function(a){this._config=a},h.getConfig=function(){return this._config},h.setConfig(d),h}),define("remoteServicesIface",[],function(){var a={};return a.getModelPrice=function(a,b,c){},a}),define("apigeeServiceCalls",["jquery","underscore","pricingConstants","stateStoreFactory","apigeeAuthoriser","remoteServicesIface","storageManager","logger"],function(a,b,c,d,e,f,g,h){"use strict";var i,j=new h({prefix:"ApigeeServiceCalls"});return i=b.create(f),i.getModelPrice=function(b,c,d){j.debug("Calling makeCall in getModelPrice");var f;return a.getDataFromObject(window.HELIOS,["config","common","pricing","isOfferPriceEnabled"])&&(f="?includeBestOffer="+!0),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/models/{modelCode}/prices/{priceCode}"+f,pathParams:{modelCode:b,priceCode:d},headers:{model:c}})},i.getTaxes=function(a,b){return j.debug("Calling makeCall in getTaxes"),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/finance/models/{modelCode}/taxes",pathParams:{modelCode:a},queryParams:{configurationURL:b}})},i.getGradePrice=function(b,c,d,f){j.debug("Calling makeCall in getGradePrice");var g;return a.getDataFromObject(window.HELIOS,["config","common","pricing","isOfferPriceEnabled"])&&(g="?includeBestOffer="+!0),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/models/{modelCode}/grades/{gradeId}/prices/{priceCode}"+g,pathParams:{modelCode:b,priceCode:f,gradeId:d},headers:{model:c}})},i.getVersionPrice=function(b,c,d,f,g){j.debug("Calling makeCall in getVersionPrice");var h="";return a.getDataFromObject(window.HELIOS,["config","common","pricing","isOfferPriceEnabled"])&&(h="?includeBestOffer="+!0),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/models/{modelCode}/grades/{gradeId}/versions/{versionId}/prices/{priceCode}"+h,pathParams:{modelCode:b,priceCode:g,gradeId:d,versionId:f},headers:{model:c}})},i.getVersionPriceByZone=function(b,c,d,f,g,h,i){j.debug("Calling makeCall in getVersionPriceByZone");var k="?regionalPriceLocation="+(h.code||i)+"&regionalPriceLocationType="+(h?h.type:"postCode");return a.getDataFromObject(window.HELIOS,["config","common","pricing","isOfferPriceEnabled"])&&(k=k+"&includeBestOffer="+!0),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/models/{modelCode}/grades/{gradeId}/versions/{versionId}/prices/{priceCode}"+k,pathParams:{modelCode:b,priceCode:g,gradeId:d,versionId:f},headers:{model:c}})},i.getGradePriceByZone=function(b,c,d,f,g,h){j.debug("Calling makeCall in getGradePriceByZone");var i="?regionalPriceLocation="+(g.code||h)+"&regionalPriceLocationType="+(g?g.type:"postCode");return a.getDataFromObject(window.HELIOS,["config","common","pricing","isOfferPriceEnabled"])&&(i=i+"&includeBestOffer="+!0),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/models/{modelCode}/grades/{gradeId}/prices/{priceCode}"+i,pathParams:{modelCode:b,priceCode:f,gradeId:d},headers:{model:c}})},i.getModelPriceByZone=function(b,c,d,f,g){j.debug("Calling makeCall in getModelPriceByZone");var h="?regionalPriceLocation="+(f.code||g)+"&regionalPriceLocationType="+(f?f.type:"postCode");return a.getDataFromObject(window.HELIOS,["config","common","pricing","isOfferPriceEnabled"])&&(h=h+"&includeBestOffer="+!0),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/models/{modelCode}/prices/{priceCode}"+h,pathParams:{modelCode:b,priceCode:d},headers:{model:c}})},i.getOffersFilters=function(a,c,d,f){var g=!1;j.debug("Calling makeCall in getOffersFilters"),c&&(g=!0);var h=b.extend(f||{},{category:c,location:d,model:a,includeResults:!1,includeFilteredFacets:g,includePreFilteredFacets:!0});return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/offers",queryParams:h})},i.getOffersFiltersModelName=function(a,c,d,f){var g=!1;return j.debug("Calling makeCall in getOffersFilters"),c&&(g=!0),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/offers",queryParams:b.extend(f||{},{category:c,location:d,modelName:a,includeResults:!1,includeFilteredFacets:g,includePreFilteredFacets:!0})})},i.getOffers=function(a,c,d,f,g,h){j.debug("Calling makeCall in getOffers"),!0!==g&&(g=!1),b.isUndefined(h)&&b.has(f,"location")&&(h=f.location);var i=b.extend({},f,{start:c,size:d,model:a,includeResults:!0,includeFilteredFacets:g,includePreFilteredFacets:!1,location:h});if(b.has(f,"locality")){var k=f.locality;i.locality=k||""}return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/offers",queryParams:i}
10)},i.getOffersModelName=function(a,c,d,f,g,h){j.debug("Calling makeCall in getOffers"),!0!==g&&(g=!1),b.isUndefined(h)&&b.has(f,"location")&&(h=f.location);var i=b.extend({},f,{start:c,size:d,modelName:a,includeResults:!0,includeFilteredFacets:g,includePreFilteredFacets:!1});return h&&(i.location=h),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/offers",queryParams:i})},i.getOffer=function(a){return j.debug("Calling makeCall in getOffers"),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/offers/{offerId}",pathParams:{offerId:a}})},i.getOffersByQuery=function(b){return j.debug("Calling makeCall in getOffersByQuery"),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/offers?"+a.trim(b)})},i.getCarsInventory=function(a,c,d,f){var g;switch(d){case"uci":g="/v2/models/inventory/usedcars";break;default:g="/v2/models/inventory/newcars"}return b.isEmpty(c)||(c.dealerId?g+="?dealerId="+window.encodeURIComponent(c.dealerId):(c.lat&&c.lng&&(g+="?lat="+window.encodeURIComponent(c.lat)+"&long="+window.encodeURIComponent(c.lng)),c.location&&(g+="?location="+window.encodeURIComponent(c.location)),c.isMarketingDealer&&(g+="&isMarketingDealer="+window.encodeURIComponent(c.isMarketingDealer)),c.radius&&(g+="&radius="+window.encodeURIComponent(c.radius)),c.regionalPriceEnabled&&c.regionalPriceLocation&&(g+="&regionalPriceEnabled="+window.encodeURIComponent(c.regionalPriceEnabled)+"&regionalPriceLocation="+window.encodeURIComponent(c.regionalPriceLocation)))),j.debug("Calling makeCall in getInventory"),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:g,queryParams:a,ajaxSettings:{type:"POST"},headers:f})},i.getExternalFinanceLink=function(a,c,d,f,g,h,i,k){j.debug("Calling makeCall in getExternalFinanceLink");var l={model:h},m="/v2/finance/models/"+a,n={priceCode:c,location:d,postalCode:f,currency:g};return i=i||{},k=k||{},b.isEmpty(i.gradeId)||(m+="/grades/"+i.gradeId),b.isEmpty(i.versionId)||(m+="/versions/"+i.versionId),m+="/calculatorLink",k.price&&(n.price=k.price),i.componentUrl&&(n.configurationURL=i.componentUrl),k.referrerURL&&(n.referrerURL=k.referrerURL),k.destinationURL&&(n.destinationURL=k.destinationURL),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),headers:l,queryParams:n,url:m})},i.getFinanceOffer=function(a,d,f,g){var h={model:d},i={},k="/v2/finance/models/"+a;switch(g=g||{},b.isEmpty(g.gradeId)||(k+="/grades/"+g.gradeId),b.isEmpty(g.versionId)||(k+="/versions/"+g.versionId),k+="/offer",b.isEmpty(g.configurationUrl)||(i.configurationURL=g.configurationUrl),b.isEmpty(g.currencyCode)||(i.currency=g.currencyCode),f){case c.REPRESENTED_AS.BEST_MONTHLY:i.financeType="best";break;case c.REPRESENTED_AS.FINANCE:i.financeType="finance";break;case c.REPRESENTED_AS.LEASE:i.financeType="lease";break;default:j.warn("Invalid `priceRepresentedAs` value used when requesting finance offer: "+f)}return b.isEmpty(g.totalPrice)||(i.price=g.totalPrice),b.isEmpty(g.priceCode)||(i.priceCode=g.priceCode),j.debug("Calling makeCall in getFinanceOffer"),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),headers:h,queryParams:i,url:k})},i.getDealers=function(a,c){var d={},f="/v2/dealers";if(d.size=a||1,b.has(c,"canAcceptLeads")){if(!b.isBoolean(c.canAcceptLeads))throw new Error("canAcceptLeads must be a boolean");d.canAcceptLeads=c.canAcceptLeads}if(b.has(c,"isMarketingDealer")){if(!b.isBoolean(c.isMarketingDealer))throw new Error("isMarketingDealer must be a boolean");d.isMarketingDealer=c.isMarketingDealer}return b.has(c,"location")&&c.location&&(d.location=c.postalcode),c.lat&&(c.long||c.lng)?(d.lat=c.lat,d.long=c.long||c.lng):c.location&&(d.location=c.location),b.has(c,"serviceId")&&c.serviceId&&(d.serviceId=c.serviceId),b.has(c,"filterConditionType")&&(d.serviceFilterType=c.filterConditionType),b.has(c,"testDriveModel")&&(d.testDriveModel=c.testDriveModel),b.has(c,"radius")&&(d.radius=c.radius),b.has(c,"include")&&(d.include=c.include),b.has(c,"start")&&(d.start=c.start),j.debug("Calling makeCall in getDealers"),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:f,queryParams:d,ajaxSettings:{type:"GET"}})},i.getDealerReviews=function(a,b,c,d,f,g){return j.debug("Calling makeCall in getDealerReviews"),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/dealers/{dealerId}/reviews",queryParams:{start:b,size:c,type:d,sortField:f,sortOrder:g},pathParams:{dealerId:a},ajaxSettings:{type:"GET"}})},i.getDealerByIdentifier=function(a){return j.debug("Calling makeCall in getDealerByIdentifier"),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/dealers/{dealerId}",pathParams:{dealerId:a},ajaxSettings:{type:"GET"}})},i.getLocationByIP=function(){return this.cacheAPICall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/utils/location"})},i.getZipCode=function(a){var b="/v2/utils/location/"+a;return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:b,ajaxSettings:{type:"GET"}})},i.getDealerByIP=function(){return this.getDealers()},i.postFileUploadFormData=function(a){return j.debug("Calling makeCall in postFileUploadFormData"),a=a||{},this.makeCall({ajaxSettings:a.ajaxSettings,queryParams:a.queryParams,url:a.url,tokenOptions:e.generateTokenObject("READ","*")})},i.postFileUploadForProofOfOwnership=function(a){var b={mode:"cookie"},c={};return a=a||{},c.Authorization="Bearer "+g.loadItem("HH427c6f9f26e",b)||"",this.makeCall({ajaxSettings:{type:"POST",contentType:!1,processData:!1},queryParams:a,useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/users/vehicles/proofOfOwnership",headers:c})},i.getOfferConfiguratorCode=function(a,b,c,d){var f;return j.debug("Calling makeCall in getConfiguratorCode"),f=c?"/v2/models/{modelCode}/grades/{gradeId}/versions/{versionId}/configurationCode":"/v2/models/{modelCode}/grades/{gradeId}/configurationCode",this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:f,pathParams:{modelCode:a,gradeId:b,versionId:c},headers:{model:d},ajaxSettings:{type:"GET"}})},i.getConfiguratorCode=function(a,b){return j.debug("Calling makeCall in getConfiguratorCode"),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:a,headers:{model:b},ajaxSettings:{type:"GET"}})},i.c2gCallstoApigee=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:a,ajaxSettings:{type:"GET"}})},i.getPredictionResults=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/personalisations/users/predictions",queryParams:a})},i.getDealersForBATD=function(a){return a=a||{},this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/models/inventory/batd/cars",queryParams:a,ajaxSettings:{type:"GET"}})},i.getWltpValues=function(a,b){return j.debug("Calling makeCall in getWltpValues"),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/models/emissions/wltp/{wltpIdentifier}",pathParams:{wltpIdentifier:a},queryParams:b})},i.getRegistrationFromPostalCode=function(a){return a=a||{},this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/ecommerce/reservations/fees/registration",queryParams:a,ajaxSettings:{type:"GET"}})}
10,i.financeDetailsNFSA=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/finance/models/financeCalc",queryParams:JSON.stringify(a||{}),ajaxSettings:{type:"POST"}})},i.postConfirmationNotificationData=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/ecommerce/reservations/sendNotification",queryParams:JSON.stringify(a||{}),ajaxSettings:{type:"POST"},headers:{"Content-Type":"application/json"}})},i.getInstallmentsOptions=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/finance/models/installments/options",queryParams:a,ajaxSettings:{type:"GET"}})},i.getFinanceCalculatorSummary=function(a){return a&&a.financeInfo&&a.financeInfo.repaymentFrequency&&delete a.financeInfo.repaymentFrequency,this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/finance/models/financeCalc",queryParams:JSON.stringify(a||{}),ajaxSettings:{type:"POST"}})},i.getConfirmCalculationId=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/finance/models/financeCalc?confirmCalculation=true",queryParams:JSON.stringify(a||{}),ajaxSettings:{type:"POST"}})},i.getSpecificInventoryDealerCar=function(a,b){var c="/v2/models/inventory/newcars/"+(a||"")+"?associatedDealerId="+(b||"");return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:c,ajaxSettings:{type:"GET"}})},i.getVehicleAddons=function(a,b){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/ecommerce/addons",queryParams:{country:b.config.common.countryCode||"",modelCode:(a.model.modelCode||"").toUpperCase(),versionId:(a.version.key||"").toUpperCase(),currency:b.config.common.currencyCode||""},ajaxSettings:{type:"GET"}})},i.getMMMNextQuestion=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/models/recommendations/questions/next",queryParams:JSON.stringify(a||{}),ajaxSettings:{type:"POST"}})},i.getMMMRecommendations=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/models/recommendations",queryParams:JSON.stringify(a||{}),ajaxSettings:{type:"POST"}})},i.getMMMModelDetails=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:a,ajaxSettings:{type:"GET"}})},i.getGMMMPriceDetails=function(a,b){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:a,ajaxSettings:{type:"GET",headers:{model:b}}})},i.getSnugKidsVehicleData=function(a,b,c,d){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/channel/americas/us/snugkids/vehicle",queryParams:{brand:a,language:b,model:c,region:d}})},i.getSnugKidsInspectionData=function(a,b,c,d,f,g,h){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/channel/americas/us/snugkids/inspection",queryParams:{brand:a,language:b,model:c,region:d,yearRange:f,seatType:g,crsType:h}})},i.externalSystemSupportsMessages=function(a){var b=a.url,c=a.type,d={mode:"cookie"},f=a.data?a.data:"",h={};return h.Authorization="Bearer "+g.loadItem("HH427c6f9f26e",d)||"",this.makeCall({ajaxSettings:{type:c,contentType:"application/json",processData:!1},useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:b,queryParams:JSON.stringify(f),headers:h})},i.getConfiguratorSummaryAPIDetails=function(a,b){var c={useTransitionalData:b.useTransitionalData,fields:b.fields};return b.priceType&&(c.priceType=b.priceType),b.choicePriceType&&(c.choicePriceType=b.choicePriceType),b.regionalPriceLocationType&&(c.regionalPriceLocationType=b.regionalPriceLocationType),b.regionalPriceLocation&&(c.regionalPriceLocation=b.regionalPriceLocation),b.includeBestOffer&&(c.includeBestOffer=b.includeBestOffer),b.additionalPriceTypes&&(c.additionalPriceTypes=b.additionalPriceTypes),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:a,queryParams:c,ajaxSettings:{type:"GET"}})},i.getBaseModelConfiguration=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:a,ajaxSettings:{type:"GET"}})},i.updateBookMarksObsoleteType=function(a,b){return this.makePutCall({url:"/v2/users/public/bookmarkCatalog/"+a+"/bookmarks",useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),queryParams:b,ajaxSettings:{dataType:"json",contentType:"application/json",type:"PUT"}})},i.getBookmarkCatalog=function(a){return this.makeCall({url:"/v2/users/public/bookmarkCatalog/"+a,useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),ajaxSettings:{type:"GET"}})},i.deleteShowroom=function(a){return this.makePutCall({url:"/v2/users/public/bookmarkCatalog/"+a,useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),queryParams:{isCatalogActive:!1},ajaxSettings:{type:"PUT",dataType:"json",contentType:"application/json"}})},i.deleteShowroomVehicle=function(a,b){return this.makePutCall({url:"/v2/users/public/bookmarkCatalog/"+a+"/bookmarks",useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),queryParams:{bookmarks:[{id:b,isBookmarkActive:"false"}]},ajaxSettings:{type:"PUT",dataType:"json",contentType:"application/json"}})},i.getRealTimeTimeSlots=function(a,b){var c={},d=b?"/v2/bookings/services/timeslots":"/v2/bookings/testdrives/timeslots";return b&&(c.dealerId=a.dealerId,c.daysInAdvance=a.daysInAdvance,c.targetSystemRoutingId=a.targetSystemRoutingId,c.bookingType=a.bookingType),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:d,queryParams:b?c:a,ajaxSettings:{type:"GET"}})},i.getRealtimeServiceBookingDealers=function(a,c){var d={},f="/v2/dealers";if(d.size=a||1,b.has(c,"canAcceptLeads")){if(!b.isBoolean(c.canAcceptLeads))throw new Error("canAcceptLeads must be a boolean");d.canAcceptLeads=c.canAcceptLeads}return b.has(c,"serviceId")&&c.serviceId&&(d.serviceId=c.serviceId),b.has(c,"filterConditionType")&&(d.serviceFilterType=c.filterConditionType),c.lat&&(c.long||c.lng)?(d.lat=c.lat,d.long=c.long||c.lng):b.has(c,"location")&&c.location&&(d.location=c.location),b.has(c,"radiu
10s")&&(d.radius=c.radius),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:f,queryParams:d,ajaxSettings:{type:"GET"}})},i.getRealtimeBookingDealers=function(a,c){var d={};return d.size=a||1,c.lat&&(c.long||c.lng)?(d.lat=c.lat,d.long=c.long||c.lng):c.location&&(d.location=c.location),b.has(c,"modelCode")&&(d.modelCode=c.modelCode),b.has(c,"powerTrain")&&(d.powerTrain=c.powerTrain),b.has(c,"targetSystemRoutingId")&&(d.targetSystemRoutingId=c.targetSystemRoutingId),b.has(c,"radius")&&(d.radius=c.radius),j.debug("Calling makeCall in getDealers"),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/bookings/testdrives/dealers",queryParams:d,ajaxSettings:{type:"GET"}})},i.getVehicleSummary=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/users/public/registrationNumber",queryParams:a,ajaxSettings:{type:"GET"}})},i.getReservationId=function(){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/bookings/testdrives/{reservationid}",ajaxSettings:{type:"DELETE"}})},i.serviceRecommendations=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/users/public/model/serviceRecommendations",queryParams:a,ajaxSettings:{type:"GET"}})},i.getDealerByIdForInventory=function(a,b,c){var d="/"+a+"/dealers",f={},g={};return g.size=-1,b&&(g.dealerIdentifier=b.join(",")),c.lat&&c.lng&&(g.lat=c.lat,g.long=c.lng),f={useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:d,queryParams:g,ajaxSettings:{type:"GET"}},this.makeCall(f)},i.financeBatchCall=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/finance/models/installments",queryParams:JSON.stringify(a||{}),ajaxSettings:{type:"POST"}})},i.getVATDetails=function(a,b){j.debug("Calling makeCall in getVATDetails");var c=a+"/price";return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:c,queryParams:{useTransitionalData:!1,priceType:b,includeBestOffer:!1},ajaxSettings:{type:"GET"}})},i.getTaxDetails=function(a,b){j.debug("Calling makeCall in getTaxDetails");var c="/v2/finance/models/"+b+"/taxes";return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:c,queryParams:{useTransitionalData:!1,eimCode:a},ajaxSettings:{type:"GET"}})},i.getSimulationId=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("WRITE","*"),url:"/v2/finance/models/simulation",queryParams:JSON.stringify(a||{}),ajaxSettings:{type:"POST"}})},i.getChoicesForFinCalcAccessoryStep=function(a,b,c,d,f,g,h,i,j,k,l){var m,n={useTransitionalData:!1,choicePriceType:c,filterByChoiceIDs:d,conflictTypes:g,priceMethod:h,priceType:f};return m=i?i+"/choices":"/v2/models/"+a+"/configuration/"+b+"/choices",j&&(n.includeBestOffer=j),k&&(n.regionalPriceLocation=k),l&&(n.regionalPriceLocationType=l),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:m,queryParams:n,ajaxSettings:{type:"GET"}})},i.getTotalPriceForFinCalcAccessoryStep=function(a,b,c,d,f,g){var h,i={useTransitionalData:!1,choicePriceType:b,priceType:c};return h=a+"/price",d&&(i.includeBestOffer=d),f&&(i.regionalPriceLocation=f),g&&(i.regionalPriceLocationType=g),this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:h,queryParams:i,ajaxSettings:{type:"GET"}})},i.getRegionalPriceForVersions=function(a,b,c,d,f,g,h,i,j,k){var l;return l="/v2/models/"+a+"/configuration/"+b+"/choices",this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:l,queryParams:{useTransitionalData:!1,choicePriceType:c,filterByChoiceIDs:d,conflictTypes:g,priceMethod:h,priceType:f,includeBestOffer:i,regionalPriceLocation:j,regionalPriceLocationType:k},ajaxSettings:{type:"GET"}})},i.getEimCodeForFinanceCalculatorSummary=function(a){var b=a;return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:b,queryParams:{fields:"eim"},ajaxSettings:{type:"GET"}})},i.getChoicesForUprRegionalPricing=function(a,b,c,d,f,g,h,i,j,k){var l="/v2/models/"+a+"/configuration/"+b+"/choices",m={useTransitionalData:!1,choicePriceType:c,filterByChoiceIDs:d,conflictTypes:g,priceMethod:h,priceType:f,includeBestOffer:i,regionalPriceLocation:j,regionalPriceLocationType:k};return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:l,queryParams:m,ajaxSettings:{type:"GET"}})},i.getFromPredefinedQuery=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:a,ajaxSettings:{type:"GET"}})},i.searchVehicleByRegistrationNumberOrFacets=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/tradein/vehicle/search",queryParams:JSON.stringify(a||{}),ajaxSettings:{type:"POST"}})},i.getVehicleValuation=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/tradein/valuation",queryParams:JSON.stringify(a||{}),ajaxSettings:{type:"POST"}})},i.searchVehicleManually=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/tradein/valuation/options",queryParams:a,ajaxSettings:{type:"GET"}})},i.searchVehicleManuallyByRegistrationDate=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:"/v2/tradein/valuation/options?buildFacetType=brand",queryParams:JSON.stringify(a||{}),ajaxSettings:{type:"POST"},headers:{"Content-Type":"application/json"}})},i.getChoicesForAccessoriesRecommendations=function(a,b,c,d,f,g){var h="/v2/models/"+a+"/configuration/"+b+"/choices",i={useTransitionalData:!1,choicePriceType:c,filterByChoiceIDs:g,priceMethod:f,priceType:d};return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","*"),url:h,queryParams:i,ajaxSettings:{type:"GET"}})},i.searchGenAI=function(a){return this.makeCall({useToken:!0,tokenOptions:e.generateTokenObject("READ","V2-Generative-Search"),url:"/v2/generative-search/search",queryParams:JSON.stringify(a||{}),ajaxSettings:{type:"POST"},headers:{"Content-Type":"application/json"}})},i.executeWithParams=function(a){return a=a||{},
11this.makeCall({ajaxSettings:a.ajaxSettings,queryParams:a.queryParams||{},url:a.url,tokenOptions:e.generateTokenObject("READ","*")})},i}),define("apigeeServices",["jquery","underscore","stateStoreFactory","apigeeConfig","apigeeAuthoriser","apigeeServiceCalls","logger"],function(a,b,c,d,e,f,g){var h=new g({prefix:"ApigeeServices"}),i=0,j=b.create(f,{});return j.MAX_CALL_RECURSION_LEVEL=2,j.setAuthoriser=function(a){this.authoriser=a},j.getAuthoriser=function(){return this.authoriser},j.generateCallIdentifier=function(a){var c,d=b.extend({},a.ajaxSettings);return c=this.replacePathPlaceholders(a.url,a.pathParams),d.url=this.buildFullRequestUrl(c),d.data=a.queryParams,d.headers=a.headers,btoa(JSON.stringify(d))},j.saveXHRToCache=function(a,b){this._XHRCache=this._XHRCache||{},this._XHRCache[a]=b},j.getXHRFromCache=function(a){return!!a&&(this._XHRCache&&this._XHRCache[a])},j.removeXHRFromCache=function(a){delete this._XHRCache.callIdentifier},j.cacheAPICall=function(a){var b,c=this.generateCallIdentifier(a),d=this.getXHRFromCache(c);return d||(b=this.makeCall.call(this,a),this.saveXHRToCache(c,b),b)},j.isApiGatewayEnabledUrl=function(a){return!(!this.getConfig().getApiGatewayUrl()||!this.getConfig().getApiGatewayEnabledServices())&&this.getConfig().getApiGatewayEnabledServices().some(function(b){return a&&b&&(a===b||a.startsWith(b+"/")||a.startsWith("/"+b)||a.startsWith(b+"?"))})},j.makeCall=function(c){var d,e=this,f=b.extend({},c.ajaxSettings),g=!1;return h.debug("Call number: "+i++),d=this.replacePathPlaceholders(c.url,c.pathParams),f.url=this.buildFullRequestUrl(d),f.data=c.queryParams,f.beforeSend=function(a,b){b.url=b.url.replace(/%5B%5D=/g,"=")},this.isApiGatewayEnabledUrl(d)&&(g=!0),this.applyStaticHeaders(f,c.headers),e.makeRecursiveCallWithToken(c.tokenOptions,f,a.Deferred(),1,g)},j.makeRecursiveCallWithToken=function(b,c,d,e,f){var g,i,j=this,k=!1,l=1!=e;return g=f?this.getAuthoriser().getApiGatewayToken(b,l):this.getAuthoriser().getToken(b,l),g=g.then(function(g){return c.headers=c.headers||{},c.headers.accesstoken="Bearer "+(g.access_token||""),k?h.debug("Request aborted"):(h.debug("Initial authorisation confirmed"),i=a.ajax(c),i.then(function(a,b,c){h.debug("Got successful response from AJAX call"),d.resolve(a,b,c)},function(a){return 401==a.status&&e<2?(h.debug("Token expired and Generate new token"),j.makeRecursiveCallWithToken(b,c,d,e+1,f)):(h.debug("Too many levels of recursion in makeCall"),h.debug("AJAX call failed with unexpected HTTP status code: "+a.status),d.reject(a).promise())})),d}),g.abort=function(){k=!0,i&&i.abort()},g},j.buildFullRequestUrl=function(a){return(this.isApiGatewayEnabledUrl(a)?this.getConfig().getApiGatewayUrl():this.getConfig().getApigeeUrl())+a},j.replacePathPlaceholders=function(a,c){var d;if(c)for(b.each(c,function(b,c,d){a=a.replace("{"+c+"}",encodeURIComponent(b))}),d=0;d<c.length;d++)a=a.replace("{"+(d+1)+"}",c[d]);return a},j.applyStaticHeaders=function(a,c){b.isObject(c)&&(a.headers=a.headers||{},b.extendOwn(a.headers,c))},j.setConfig=function(a){this._config=a},j.getConfig=function(){return this._config},j.setConfig(d),j.setAuthoriser(b.create(e)),j.makePutCall=function(c){var d,e=this,f=b.extend({},c.ajaxSettings),g=!1;return h.debug("Call number: "+i++),d=this.replacePathPlaceholders(c.url,c.pathParams),f.url=this.buildFullRequestUrl(d),f.data=JSON.stringify(c.queryParams),f.beforeSend=function(a,b){b.url=b.url.replace(/%5B%5D=/g,"=")},this.isApiGatewayEnabledUrl(d)&&(g=!0),this.applyStaticHeaders(f,c.headers),e.makeRecursiveCallWithToken(c.tokenOptions,f,a.Deferred(),1,g)},j}),define("remoteServices",["apigeeServices"],function(a){return a}),define("numberFormat",["logger","underscore"],function(a,b){"use strict";function c(a){this.HELIOS={},a&&(this.HELIOS=a.HELIOS),this.HELIOS&&(this.HELIOS.config=this.HELIOS.config||{},this.HELIOS.config.common=this.HELIOS.config.common||{},this.HELIOS.config.common.formatting=this.HELIOS.config.common.formatting||{},this.HELIOS.config.common.locale||(this.HELIOS.config.common.locale=document.documentElement.getAttribute("lang")))}var d=new a({prefix:"NumberFormat"});return c.prototype.asCurrency=function(a,c,e,f){var g;return b.isUndefined(f)&&(f=this.HELIOS.config.common.formatting&&this.HELIOS.config.common.formatting.currency&&this.HELIOS.config.common.formatting.currency.manualPriceFormatting),"string"==typeof a&&(a=a.replace(/\s/g,""),a=Number(a)),c=c||this.HELIOS.config.common.currencyCode,e=e||this.HELIOS.config.common.locale,b.isUndefined(c)||!0===f?(d.info("Formatting price manually"),g=this.formatPriceManually(a,e)):(d.info("Formatting price automatically"),g=this.formatPrice(a,c,e)),g},c.prototype.formatPrice=function(a,b,c){var e,f,g,h;return b&&3===$.trim(b).length?(e={style:"currency",currency:b,minimumFractionDigits:a%1==0?0:2},f=new Intl.NumberFormat(c,e),g=f.format(a),"MXN"===b?(h=a&&a.toString().split(".")[0],h&&4!==h.length?g:g.replace(/\B(?=(\d{3})+(?!\d))/g,",")):g):(d.error("No currency available for price formatting"),"")},c.prototype.formatPriceManually=function(a,c){var d,e,f,g,h=this.HELIOS.config.common.formatting.currency||{},i=/\B(?=(\d{3})+(?!\d))/g,j=/\B(?=(\d{2})+(?!\d))/g;return h.symbol=b.unescape(h.symbol),h.symbol=$("<span/>").html(h.symbol).text(),h.decimalSeparator=b.unescape(h.decimalSeparator),h.thousandsSeparator=b.unescape(h.thousandsSeparator),(b.isUndefined(h.decimalSeparator)||"locale"===h.decimalSeparator)&&(h.decimalSeparator=.001,h.decimalSeparator=h.decimalSeparator.toLocaleStr
11ing(c),h.decimalSeparator=h.decimalSeparator.substr(h.decimalSeparator.length-4,1)),a=parseFloat(Math.round(100*a)/100),a=a.toFixed(h.decimalPlaces),d=a.split("."),a=parseInt(d[0],10),b.isNaN(a)||(h.decimalPlaces&&h.decimalPlaces>0?(g=!b.isUndefined(d[1])&&0===parseInt(d[1],10),d[1]=h.decimalSeparator+d[1],!h.showDecimalZeros&&g&&(d[1]="")):d[1]=""),"en-IN"===c?(e=d[0].substring(d[0].length-3),f=d[0].substring(0,d[0].length-3),f&&(e=h.thousandsSeparator+e),a=f.replace(j,h.thousandsSeparator)+e+d[1]):a=d[0].replace(i,h.thousandsSeparator)+d[1],a=b.isUndefined(h.position)||"right"!==h.position?h.symbol+a:a+" "+h.symbol},c.prototype.asInteger=function(a,b){var c;return"string"==typeof a&&(a=a.replace(/\s/g,""),a=Number(a)),b=b||this.HELIOS.config.common.locale,c=new Intl.NumberFormat(b),c.format(a)},c}),define("rciProxyHelper",["jquery","underscore"],function(a,b){var c=function(a){if(b.isUndefined(a))throw"No options passed into RciProxyHelper constructor.";if(b.isUndefined(a.HELIOS))throw"No options.HELIOS object passed in.";if(b.isUndefined(a.window))throw"No options.window object passed in.";this.options=a};return c.prototype.getDeferred=function(){return this._deferred||(this._deferred=a.Deferred())},c.prototype.getConstructor=function(){return this.ensureScriptInjected(),this.getDeferred()},c.prototype.ensureScriptInjected=function(){if(!(this.options.HELIOS.config&&this.options.HELIOS.config.common&&this.options.HELIOS.config.common.pricing&&b.isString(this.options.HELIOS.config.common.pricing.rciProxyScriptUrl)))throw"Error with HELIOS.config.common.pricing.rciProxyScriptUrl";this._isScriptInjected||(a.getScript(this.options.HELIOS.config.common.pricing.rciProxyScriptUrl).done(b.bind(function(){this.getDeferred().resolve(this.options.window.RCIProxy)},this)),this._isScriptInjected=!0)},c}),define("rciProxyHelperSingleton",["rciProxyHelper"],function(a){"use strict";return new a({HELIOS:HELIOS,window:window})}),define("rciProxyConstants_",[],function(){"use strict";return{PROXY_PARAM_KEYS:{AGE:"age",BRAND:"Brand",CITY:"City",COUNTRY:"Country",CALC_CURRENCY:"CalcCurrency",CURRENCY:"Currency",DEALER:"Dealer",ENGINE:"Engine",ID_VEHICLE:"IdVehicle",KM:"km",LANG:"Lang",MODEL:"Model",MODEL_C:"ModelC",MODEL_SPEC_CODE:"ModelSpecCode",POWER:"Power",POWER_WO_OPTIONS:"Powerwooptions",PRICE:"Price",PRICE_WO_OPTIONS:"PriceWoOptions",PRICE_TYPE:"PriceType",SEG:"Seg",STATE:"State",STYLE:"Style",TYPE:"Type",VEHICLE_BRAND:"VehicleBrand",VERSION:"Version",VERSION_C:"VersionC",VH_ID:"vhid",RCI_PROXY_DEALER:"rciProxyDealer",RCI_PROXY_TYPE:"rciProxyType",RCI_PROXY_STYLE:"rciProxyStyle",PRICE_TOTAL_ACCESSORIES:"priceTotalAccessories",EIM_CODE:"eimCode",TYPE_OF_DATA:"typeOfData",TYPE_OF_REQUEST:"typeOfRequest",UPHOLSTRAY:"upholstery",INTERNCOLOR:"intColor",EXTERNCOLOR:"extColor",CAPACITY:"capacity",TYPEVARIANTVERSION:"tvv",POWERTYPEHP:"HP",POWERTYPEKW:"KW",POWERHP:"powerCh",POWERKW:"powerKw",PRICETOTALOPTIONS:"priceTotalOptions",PRICETOTALSERVICES:"priceTotalServices",PRICEWOOPTIONSWOVAT:"priceWoOptionsWoVAT",PRICETOTALDISCOUNTS:"priceTotalDiscounts",PRICETOTALTAXES:"priceTotalTaxes",PRICEWITHTAX:"priceWithTax",PRICEWITHOUTTAX:"priceWithoutTax",USER:"USER",PRICEWOVAT:"priceWoVAT",PRICEREBATE:"priceRebate",PRICEREBATEWOVAT:"priceRebateWoVat"},PROXY_PARAM_VALUES:{DEALER:"HELIOS",DEALER_CFG:"PACE_CONFIG",DEALER_PS:"PACE_WISHLIST",STYLE:"preorder",TYPE:{NEW_VEHICLE:"NV",USED_VEHICLE:"UV"},PRICE_TYPE:{INCLUDES_TAX:"TTC",EXCLUDES_TAX:"HT"}},EVENTS:{FINANCIAL_OFFER_RELOADED:"financialOfferReloaded",PROXY_READY:"proxyReady",SIMULATOR_RENDER_COMPLETED:"simulatorRenderCompleted",BOOK_TEST_DRIVE_BUTTON_CLICK:"bookTestDriveButtonClick"}}}),define("priceManagerConstants",[],function(){"use strict";return{PRICE_KEYS:{HEADING_ONE:"h1",HEADING_TWO:"h2",IS_FINANCE_CALCULATOR_ENABLED:"isFinanceCalculatorEnabled",LABEL:"label",LEGAL_ONE:"legalOne",LEGAL_TWO:"legalTwo",MONTHLY_PRICE:"price",SIMULATOR_LABEL:"simulatorLabel",TEXT:"text",APR:"apr",DOWN_PAYMENT:"downpayment",DURATION:"duration",STRIKETHROUGH:"strikethrough",NONE:"None"},PRICE_PARAMS:{AGE:"age",CURRENCY_CODE:"currencyCode",GRADE_KEY:"gradeKey",KM:"km",MODEL_KEY:"modelKey",MODEL_PATH:"modelPath",POW
11ER_WO_OPTIONS:"Powerwooptions",PRICE_CODE:"priceCode",PRICE_INCLUDES_TAX:"priceIncludesTax",PRICE_REPRESENTED_AS:"priceRepresentedAs",TOTAL_PRICE:"totalPrice",PRICE_WO_OPTIONS:"priceWoOptions",VEHICLE_BRAND:"vehicleBrand",VEHICLE_ELECTRIC_MODEL_KEY:"vehicleElectricModelKey",VEHICLE_FISCAL_HORSEPOWER:"vehicleFiscalHorsepower",VEHICLE_FUEL_TYPE:"vehicleFuelType",VEHICLE_MODEL_CODE:"vehicleModelCode",VEHICLE_MODEL_NAME:"vehicleModelName",VEHICLE_MODEL_SEMI_CLAIR:"vehicleModelSemiClair",VEHICLE_SEG:"vehicleSeg",VEHICLE_TYPE:"vehicleType",VEHICLE_VERSION_CODE:"vehicleVersionCode",VEHICLE_VERSION_NAME:"vehicleVersionName",VERSION_KEY:"versionKey",VHID:"vhid",PRICE_TOTAL_ACCESSORIES:"priceTotalAccessories",EIM_CODE:"eimCode",ISCONFIGURATOR:"isConfigurator"}}}),define("modelViewConstants",[],function(){"use strict";return{backbone:{events:{add:"add",all:"all",change:"change",destroy:"destroy",error:"error",invalid:"invalid",remove:"remove",request:"request",reset:"reset",route:"route",sort:"sort",sync:"sync",update:"update"},navigation:{replace:!0,trigger:!0}},batteryInfoModel:{properties:{key:"key",type:"type"}},batteryModel:{properties:{batteryCode:"batteryCode",leaseTable:"leaseTable"}},breakpoints:{small:"small",medium:"medium",large:"large"},c_202_1View:{cssClasses:{container:"c_202_1"}},c_202_2Controller:{options:{configuratorModel:"configuratorModel",offerModel:"offerModel",summaryOfferModel:"summaryOfferModel",region:"region",window:"window"}},c_202_2Model:{properties:{cta:"cta",offerModel:"offerModel",offerTitle:"offerTitle",doubleOfferTitle:"doubleOfferTitle",offerSubheading:"offerSubheading",doubleOfferSubheading:"doubleOfferSubheading",useIcon:"useIcon",offerLabel:"offerLabel",microDisclaimer:"microDisclaimer",configuratorModel:"configuratorModel"}},c_202_2View:{cssClasses:{container:"c_202_2"},events:{viewOfferClick:"viewOfferClick"},options:{eventAggregator:"eventAggregator"}},c_202_3Model:{properties:{offerSubheading:"offerSubheading",doubleOfferSubheading:"doubleOfferSubheading",microDisclaimer:"microDisclaimer"}},c_202_3View:{cssClasses:{container:"c_202_3"}},c_202_4Model:{properties:{applicability:"applicability",caveat:"caveat",contactDealerCta:"contactDealerCta",contactDealerUrl:"contactDealerUrl",details:"details",highlight:"highlight",highlightedLegalNotice:"highlightedLegalNotice",legalDetails:"legalDetails",legalDetailsHeadline:"legalDetailsHeadline",modelName:"modelName",offerModel:"offerModel",offerSubheading:"offerSubheading",offerTitle:"offerTitle",doubleOfferSubheading:"doubleOfferSubheading",doubleOfferTitle:"doubleOfferTitle",offerTypeTitle:"offerTypeTitle",originatorComponentId:"originatorComponentId",region:"region",status:"status",tableData:"tableData",tableDataItemLabel:"label",tableDataItemValue:"value",tableHeadline:"tableHeadline",tableIntro:"tableIntro",validity:"validity",viewOffersCta:"viewOffersCta",viewOffersUrl:"viewOffersUrl",viewOffersTarget:"_blank",buttonText:"buttonText"}},c_202_4View:{cssClasses:{container:"c_202_4"}},c_204:{options:{eventAggregator:"eventAggregator"},properties:{categoryOption:{images:"images",value:"value",description:"description",cta:"cta",url:"url",keyUspText:"keyUspText",lcvKeyInfo:"lcvKeyInfo",versions:"versions",specs:"specs",key:"key",informationOverlay:"informationOverlay",imageDisclaimer:"imageDisclaimer"},analyticsManager:"analyticsManager",configuratorModel:"configuratorModel",categoryOptions:"categoryOptions",cta:"cta",title:"title",trayTitle:"trayTitle",isSimplifiedLinearNavEnabled:"isSimplifiedLinearNavEnabled",text:"text",versions:"versions",modelName:"modelName",defaultPriceOption:"defaultPriceOption",priceList:"priceList",key:"key",lcvDataValues:"lcvDataValues",minValue:"minValue",maxValue:"maxValue",simplifiedLinearNavClassAdded:"simplifiedLinearNavClassAdded",bodyTypeTrayCtaClicked:"bodyTypeTrayCtaClicked",categoryGroups:"categoryGroups",socialLinks:"socialLinks"},selectors:{bodyTypeCard:".body-type-card",list:"li",body:"body"},classes:{hideKeyFeatures:"hide-key-features"},analytics:{componentId:"C204_BodyType_Tray",location:"bodyType-card"},events:{resize:"resize",classChange:"classChange"}},c_204_1:{properties:{heroImageSrc:"heroImageSrc",listItems:"listItems",imageSrc:"imageSrc"},selectors:{body:"body"},classes:{noScroll:"no-scroll"}},documentationModel:{properties:{configuration:"configuration",pricesData:"pricesData"}}
11,gradeDetailView:{options:{window:"window",heliosObject:"heliosObject"}},specImageController:{errors:{requestImage:{apiCallFailed:"The request to the Visual Services API has failed",specModelConfigurationUrlForImageNotSpecified:"The `SpecModel` must have a valid configuration URL for image",specModelNotSpecified:"You must specify a `SpecModel`",visualImagesModelNotSpecified:"You must specify a `VisualImagesModel`",visualServicesRequestConfigurationNotSpecified:"You must specify a Visual Services Request Configuration"}},options:{configuratorModel:"configuratorModel",heliosObject:"heliosObject",windowObject:"windowObject",visualImagesModelConstructor:"visualImagesModelConstructor",visualServicesRequestConfiguration:"visualServicesRequestConfiguration"},profileBreakpointPropertyNames:{large:"large",medium:"medium",small:"small"},profileDensityPropertyNames:{double:"double",single:"single"},properties:{specCode:"specCode",key:"key"}},inventoryApp:{hashQuery:"#/search!",queryBrackets:"[]",queryStringKeys:{model:"model.name",versionName:"version.name",filteringColour:"filteringColour"},properties:{encodedProperty:"encodedProperty",versionName:"versionName",filteringColour:"filteringColour"},searchingType:{exact:"exact",location:"location"}},leaseOptionModel:{properties:{cost:"cost",isSelected:"isSelected",mileage:"mileage",months:"months"}},mainController:{events:{urlUpdate:"urlUpdate",linearNavLocalisationDataSynced:"linearNav:localisationDataSynced",orientationchange:"orientationchange",sync:"sync"},options:{app:"app",categoryValue:"categoryValue",eventAggregator:"eventAggregator",heliosObject:"heliosObject",heliosAppContext:"heliosAppContext",window:"window",financeManager:"financeManager",hashModal:"#modal"},classes:{dataSyncInProgress:"cfg-data-sync-in-progress"}},vueJSConfigurator:{name:"VueJSConfigurator",isEnabled:"VueJSConfiguratorIsEnabled",selectors:{vueApp:"#app"},getters:{getChoicesForTrayItem:"choices/getChoicesForTrayItem",getSelectedChoiceIds:"summary/getSelectedChoiceIds",getStartUrlHash:"navigation/getStartUrlHash",getVueJSHeaderDimensionValues:"ui/getVueJSHeaderDimensionValues",upholstery:"summary/upholstery",getRciPriceMapping:"monthlyPrice/getRciPriceMapping",getInternColor:"summary/internColor",getExternColor:"summary/exteriorColour",getCapacity:"summary/engineCapacitySpecification",getTypeVariantVersion:"summary/typeVariantVersion",getEnginePowerSpecification:"summary/enginePowerSpecification",getAccessories:"summary/accessories",getEquipmentSpecs:"summary/equipmentSpecs",getExteriorColour:"summary/getExteriorColour",getStylePacks:"summary/stylePacks",getAdditionalPrices:"summary/additionalPrices",getWarrantyServiceData:"summary/warrantyServiceData",getWheelsData:"summary/wheels",getPacks:"summary/getPacks",getVersionData:"summary/getVersion"},actions:{fetchPropertyDataForTrayItem:"fetchPropertyDataForTrayItem",updateVueJSNavState:"navigation/updateNavState",updateStartUrlHash:"navigation/updateStartUrlHash"},state:{configurationKey:"configurationKey",uiSpecificationCategoryKey:"uiSpecificationCategoryKey"},contentJsonNodes:{versions:"versions",grades:"grades"},specifications:{equipmentSpecs:"equipmentSpecs",fullEquipmentSpecs:"fullEquipmentSpecs"}},mainView:{selectors:{cfgContainer:".c_cfg",cfgContainerV2:".c_cfg_v2",cfgContainer_V2:"c_cfg_v2",categoriesRegion:".c_085",completeRegion:".c_091",summaryCompleteRegion:".c_091-2",errorRegion:".error",financeModalRegion:".c_107_1",footerRegion:".c_090",headerRegion:".c_088",nextButtonRegion:".c_085_4",inventoryLinkRegion:".c_200",menuRegion:".c_084",modalRegion:".c_107",modalRegionDialog:".c_107 .dialog",priceCaveatRegion:".cfg-exposed-caveat .c_147_2",pricesRegion:".c_089",persistentCtaRegion:".cfg-preview > .c_089_1",persistentCtaRegionV2:".cfg-main > .c_089_1",persistentCtaV2:".cfg-main > .c_089_1 .persistent-cta",stageCaveatsRegion:".c_147",summaryRegion:".c_148",stageRegion:".c_087",summaryStageRegion:".c_148_4",tooltipRegion:".c_147_6",trayRegion:".c_086",linearNavigationRegion:".cfg-linear-navigation",linearNavigation:".c_085_2",cookieRegion:".c_128",exitButton:".cfg-exit-button",linearNavExitButton:".cfg-linear-navigation-holder .cfg-exit-button span",panelHolder:".cfg-panel-holder",optionsHolder:".cfg-options-holder",trayTitle:".cfg-tray-title",body:"body",fixedPreviewWrapper:".cfg-preview-fixed-wrapper",trayView:".cfg-tray-view",mainContent:".main-content",preview:".cfg-preview",cfgHeader:".cfg-header",html:"html",linearNav:".cfg-linear-navigation .linear-nav-container",specFiltersRegion:".spec-filters-container",specFilters:".c_085_2_7",trayHeader:".cfg-tray-header",trayNextHeader:".cfg-next-tray-header",swatchesLayoutHeader:".
11swatches-layout .tray-header.open",cfgMain:".cfg-main",simplifiedNavEnabled:".cfg-simplified-nav-enabled",bodyTypeTray:".body-type-tray",bodTypeNav:".navigation-step-1 .c_085_2",cfgExposedCaveat:".cfg-exposed-caveat",isCollapsed:".is-collapsed",cfgFullWidth:".cfg-next-button",trayCaveat:".tray-caveat .c_147_2",firstHeader:"body > .header",cfgHeaderFullwidth:".c_cfg_v2 .header",cfgNavigation:".c_cfg_v2 .c_085_2",summaryPriceCaveatRegion:".summary-price-caveat .c_147_2",isVisible:":visible",vueJSAppHeader:".app-header",vueJSAppTraysHeader:".app-trays-header"},settings:{scrollDebounceTime:500},events:{scroll:"scroll",wheel:"wheel",click:"click",keypress:"keypress",optionsTrayStylesApplied:"optionsTrayStylesApplied",mainStageResize:"main:stage:resize",summaryStageResize:"summary:stage:resize",vueJSHeaderDimensionValuesUpdated:"vueJSHeaderDimensionValuesUpdated",positionColorSwatchHeaderOnScroll:"scroll.positionColorSwatchHeader",cookiesOnScroll:"scroll.cookies"},properties:{paddingTop:"padding-top",initial:"initial",display:"display",none:"none",trayAnimWait:500,simplifiedNavEnabled:"simplifiedNavEnabled",auto:"auto",warrantyService:"warranty-service",top:"top",marginTop:"margin-top",marginBottom:"margin-bottom",topMargin:2,zeroMargin:0},classes:{cookieEnabled:"cookie-enabled",fullWidth:"full-width",open:"open",multiColumn:"multi-column",hideNextButton:"cfg-hide-next-button",summaryStageIsExpanded:"cfg-summary-stage-is-expanded",fixedBar:"fixed-bar",bodyTypeTray:"body-type-tray",keyboardTabbing:"keyboard-tabbing",persistenceCtaEnabled:"persistence-cta-enabled",persistenceFullBorder:"persistence-full-border",cfgScrolled:"cfg-scrolled",extraMarginTop:"extra-margin-top",fullWidthDisclaimer:"full-width-disclaimer",noFullWidth:"not-full-width",showMobileDisclaimer:"show-mobile-disclaimer"},attrs:{scrolledOffset:"scrolledOffset",stickyPreview:"fixed-cfg-preview",open:"open",style:"style",display:"display",nextButtonDisplay:"display"}},offerModel:{properties:{applicability:"applicability",caveat:"caveat",data:"data",details:"details",headline:"headline",highlight:"highlight",id:"id",legals:"legals",main:"main",model:"model",name:"name",region:"region",status:"status",strapline:"strapline",table:"table",title:"title",additionalTitle:"additionalTitle",additionalStrapline:"additionalStrapline",type:"offerType",typeTitle:"offerTypeTitle",validity:"validity",microDisclaimer:"microDisclaimer",grade:"grade",version:"version",code:"code"}},offersModel:{options:{restrictedTo:"restrictedTo",grade:"grade",version:"version",location:"location",modelCode:"modelCode",numItems:"numItems",startIndex:"startIndex",includeFilteredFacets:"includeFilteredFacets",offerTags:{offerTagsResponseProperty:"offerTags",name:"offerTags.name",priceLockUpValue:1,versionValue:2,summaryValue:3}},properties:{offers:"offers"},values:{numItems:1,maxItems:100,startIndex:0},restrictingValues:{model:"model"}},monthlyPriceModel:{options:{requestConfiguration:"requestConfiguration",configuratorModel:"configuratorModel",localisationData:"localisationData",priceRepresentation:"priceRepresentation",remoteServices:"remoteServices",priceManager:"priceManager",currencyCode:"currencyCode",totalPrice:"totalPrice",engineSpecs:"engineSpecs",versionSpecs:"versionSpecs",HELIOS:"HELIOS",eimCode:"eimCode"},properties:{price:"price",label:"label",h1:"h1",h2:"h2",text:"text",legal:"legalTwo",warning:"legalOne"},contentNodes:{versions:"versions"}},inventoryModel:{properties:{inventoryTotal:"total",dealerLocation:{address:"address",phone:"phone"}},options:{location:"location"}},wltpDataModel:{options:{wltpIdentifier:"wltpIdentifier",queryParams:"queryParams"},properties:{showDefaultEmissions:"showDefaultEmissions"}},dealerModel:{options:{dealerId:"dealerId"},properties:{dealerId:"dealerId",location:"location",radius:"radius",heliosLocationDealerProperty:"heliosLocationDealerProperty",smartLocationContext:"smartLocationContext"}},powertrainOption:{properties:{batteryType:"batteryType",selectLeaseOptionButtonText:"selectLeaseOptionButtonText",showTransmissionGearType:"showTransmissionGearType",showDrivetrainName:"showDrivetrainName",possibleOptions:"possibleOptions"}},specFilterController:{options:{configuratorModel:"configuratorModel",eventAggregator:"eventAggregator"},ANALYTICS_CONSTANTS:{COMMA_AND_SPACE:", ",CONFIGURATOR_PREFIX:"configurator-",FILTER_SUFFIX:"-filter",TRAY_SUFFIX:"-tray",RESET_CONFIGURATION:"reset configuration"},strings:{version:"version"}},specFilterDefinitionModel:{properties:{defaultFilterText:"defaultFilterText",activeFilter:"activeFilter",filterTitle:"filterTitle",key:"key",isSlider:"isSlider",filterTypeIcon:"filterTypeIcon"}},specFilterGroupMetadataModel:{properties:{filters:"filters",key:"key"}},specFilterGroupModel:{events:{filtersChange:"change:filters",filtersOptionsIsSelectedChange:"change:filters:options:isSelected",filtersOptionsIsSelectedChangeComplete:"changeComplete:filters:options:isSelected"},properties:{filters:"filters",key:"key",version:"version"}},specFilterItemModel:{events:{isSelectedChange:"change:isSelected"},properties:{isDisabled:"isDisabled",isSelected:"isSelected",text:"text",value:"value",unit:"unit",queryParamValue:"queryParamValue"}},specFilterMetadataModel:{properties:{key:"key",textGetter:"textGetter",unitGetter:"unitGetter",valueGetter:"valueGetter"}},specFilterModel:{events:{optionsChange:"change:options",optionsIsSelectedChange:"change:options:isSelected"},properties:{key:"key",options:"options",title:"title",valueGetter:"valueGetter",defaultFilterText:"defaultFilterText",filterTypeIcon:"filterTypeIcon",minValue:"minValue",maxValue:"maxValue",initialValues:"initialValues",intialMinValue:"intialMinValue",initialMaxValue:"initialMaxValue",filterType:"filterType",unit:"unit",interval:"interval",label:"label",allText:"allText",values:"values",value:"value",isSelected:"isSelected",selectedValue:"selectedValue",allOptionSelected:"allOptionSelected",filterTypeSlider:"filterTypeSlider",filterTypeDropDown:"filterTypeDropDown",filterTypeOption:"filterTypeOption",sorting:"sorting",isSlider:"isSlider",currentMinValue:"currentMinValue",currentMaxValue:"currentMaxValue",noSelection:"noSelection"}},specPricingMethod:{CATALOGUE:1,IMPACT:2,VERSION:3},spinnerImageSources:{scene7:"scene7",webRender:"webRender",mediaServer:"mediaServer"},cropSizes:{c_085:"c_085",c_086_3:"c_086_3",c_086_4:"c_086_4",c_086_5:"c_086_5",c_086_X:"c_086X",c_107:"c_107"}
11,configurationModel:{options:{specChoices:"specChoices",url:"url",window:"window"},properties:{canonicalUri:"canonicalURI",choices:"choices",configurationKey:"configurationKey",confOptimum:"confOptimum",impact:"impact"}},configurationPriceModel:{options:{additionalCostsParams:"additionalCostsParams",configurationPriceBaseUrl:"configurationPriceBaseUrl",configurationPriceOption:"configurationPriceOption",configurationPriceVersion:"configurationPriceVersion",configurationUrl:"configurationUrl",name:"name"},properties:{price:"price"}},configurationTaxesModel:{options:{configurationUrl:"configurationUrl",modelCode:"modelCode"},properties:{taxesInformation:"taxesInformation",modelCode:"modelCode",configurationUrl:"configurationUrl",errorCode:"errorCode",isDataAvailable:"isDataAvailable",requestInfo:"requestInfo"}},configuratorModel:{events:{batteryLeaseOptionChange:"batteryLeaseOptionChange",documentationDataSync:"documentationDataSync",localisationDataSync:"localisationDataSync",configurationDataSync:"configurationDataSync",configurationPriceDataSync:"configurationPriceDataSync",configurationEimDataSync:"configurationEimDataSync",financeCalculatorDataSync:"financeCalculatorDataSync",offersDataSync:"offersDataSync",summaryOffersDataSync:"summaryOffersDataSync",versionOffersDataSync:"versionOffersDataSync",inventoryDataSync:"inventoryDataSync",dealerDataSync:"dealerDataSync",priceListsDataSync:"priceListsDataSync",configurationUpdateFinished:"configurationUpdateFinished",inventoryCountChange:"inventoryCountChange",checkInventoryEnabled:"checkInventoryEnabled",userLocationChange:"userLocationChange",configurationTaxesDataSync:"configurationTaxesDataSync",displayedMonthlyPriceTypeChange:"onDisplayedMonthlyPriceTypeChange",showComparePricesOverlay:"onShowComparePricesOverlay",storageSaved:"storageSaved",vatReady:"vatReady",wltpDataSync:"wltpDataSync"},options:{isCategoryEnabled:"isCategoryEnabled",window:"window",smartLocationContext:"smartLocationContext",showConfiguratorPrice
11s:"showConfiguratorPrices"},properties:{additionalCostsData:"additionalCostsData",analyticsSourceComponentId:"sourceComponentId",batteryLeaseOption:"batteryLeaseOption",categoryValue:"categoryValue",configurationPriceData:"configurationPriceData",currentCompleteConfiguration:"currentCompleteConfiguration",currentConfiguration:"currentConfiguration",documentationModel:"documentationModel",initialConfigurationKey:"initialConfigurationKey",defaultGradeVersionConfigurationKey:"defaultGradeVersionConfigurationKey",enableDefaultGradeVersion:"enableDefaultGradeVersion",localisationData:"localisationData",specFilterGroups:"specFilterGroups",numberFormat:"numberFormat",canonicalUri:"canonicalURI",eimData:"eimData",currentRouteName:"currentRouteName",obsolescenceModalTrigger:"cfg:obsolescenceModal",exteriorPreviewImage:"exteriorPreviewImage",financeCalculator:"financeCalculator",offersData:"offersData",summaryOffersData:"summaryOffersData",versionOffersData:"versionOffersData",priceListsData:"priceListsData",profileManager:"profileManager",stepName:"stepName",isFinanceModalCalcInitialised:"isFinanceModalCalcInitialised",inventoryData:"inventoryData",dealerData:"dealerData",taxesData:"taxesData",eventTriggerReady:"ready",linearNavRoute:"linearNavRoute",summaryButton:"summaryButton",summary:"summary",analyticsController:"analyticsController",nextLinearNavUrl:"nextLinearNavUrl",variants:{linearNavigation:"2"},grade:"grade",name:"name",currentLocation:"currentLocation",useDealerId:"useDealerId",reset:"reset",wltpData:"wltpData",initialConfigurationUrl:"initialConfigurationUrl",autocontinueSelected:"autocontinueSelected",isDevice:"isDevice",multipleInclusionModel:"multipleInclusionModel",currentTray:"currentTray",startNavWasInit:"startNavWasInit",isSequentialDataLoadForFirstTraySetup:"isSequentialDataLoadForFirstTraySetup",text:"text",VATModel:"VATModel",hyphen:"-",deepLinkedURLModelHash:"deepLinkedURLModelHash",isFirstTrayRendered:"isFirstTrayRendered",dataSyncInProgress:"dataSyncInProgress",selectedUISpecificationCategoryKey:"selectedUISpecificationCategoryKey",isBodyTypeSelected:"isBodyTypeSelected",isNextButtonClicked:"isNextButtonClicked",bodyTypeName:"bodyTypeName",implicitToExplicitChangeInProgress:"implicitToExplicitChangeInProgress",externalUserJourneyFlag:"externalUserJourneyFlag",selectedVersionsDetail:"selectedVersionsDetail",totalVersionAdded:"totalVersionAdded",resetSelectedVersions:"resetSelectedVersions",InteriorShereViewZoomTrack:"InteriorShereViewZoomTrack",fixedHeaderHeight:"fixedHeaderHeight",bgOptions:"bgOptions",globalFinanceSavedParams:"globalFinanceSavedParams"},cssClasses:{c2gwebIframe:"c2gweb-iframe",loading:"loading"},selectors:{c2gwebIframe:".c2gweb-iframe"},dataFormats:{digitCountAfterDecimal:3},constants:{baseConfigurationKey:"A"}},configuratorViewModel:{properties:{configuratorModel:"configuratorModel",hasMonthlyPrice:"hasMonthlyPrice",hasFinanceCta:"hasFinanceCta",uniqueUrl:"uniqueUrl"},analyticsConstants:{notSetText:"not set",noCategoryKey:""},params:{option:"option",optionPack:"option-pack",model:"model",fieldName:"fieldName",type:"type",systematic:"SYSTEMATIC",default:"DEFAULT"}},conflictDiagnosticModel:{properties:{conflictingChoices:"conflictingChoices",nextConf:"nextConf"}},stepNames:{1:"Create",2:"Summary",3:"Finished"},vehicleWeightModel:{properties:{maxPayload:"maxPayload"}},visualImagesModel:{options:{baseUrl:"baseUrl",configurationUri:"configurationUri",profile:"profile",viewPoint:"viewPoint",decorName:"decorName"},properties:{response:"response",status:"status"}},gradeModel:{properties:{additionalImageSpecs:"additionalImageSpecs",configurationUrlForImage:"configurationUrlForImage",equipmentSpecs:"equipmentSpecs",fallbackImages:"fallbackImages",imageSource:"imageSource",sortOrder:"sortOrder",usp:"usp",versions:"versions",universalPriceDisclaimer:"universalPriceDisclaimer",universalPriceDescription:"universalPriceDescription"}},versionModel:{properties:{versions:"versions",engine:"engine",body:"body",fullEquipmentSpecs:"fullEquipmentSpecs",lcvDataValues:"lcvDataValues"}},impactModel:{properties:{impossibles:"impossibles",possibles:"possibles",specCatCode:"specCatCode",specCode:"specCode"},strings:{autre:"Autre_"}},localisationModel:{options:{categoryValue:"categoryValue"},properties:{additionalCosts:"additionalCosts",battery:"battery",images:"images",interiorJson:"interiorJson",inventoryEnabled:"inventoryCountEnabled",exteriorJson:"exteriorJson",model:"model",strings:"strings",text:"text",smartLocation:"smartLocation",spinData:"spinData",uiSpecCatGroups:"categoryGroups",webRender:"webRender",exterior
11Colours:"exteriorColours",isCardSortingDisabled:"isCardSortingDisabled",priceManagerConfiguration:"priceManagerConfiguration",
12isFinanceCalculatorEnabledForModel:"isFinanceCalculatorEnabledForModel",isMonthlyPriceEnabledForModel:"isMonthlyPriceEnabledForModel",isMonthlyPriceEnabled:"isMonthlyPriceEnabled",isFinanceCalculatorEnabled:"isFinanceCalculatorEnabled",openFinanceCalculatorInSameWindow:"openFinanceCalculatorInSameWindow",passReferrerAndDestinationURLs:"passReferrerAndDestinationURLs",defaultMonthlyPriceType:"defaultMonthlyPriceType",availableMonthlyPriceTypes:"availableMonthlyPriceTypes",priceCodes:"priceCodes",specFilterDefinitions:"filters",categoryGroups:"categoryGroups",scene7Stage:"scene7Stage",categoryKey:"categoryKey",specs:"specs",isAPRProminenceEnabled:"isAPRProminenceEnabled",trays:{configure:{accessories:"accessories","exterior-colour":"exteriorColour","interior-colour":"exteriorColour",drivetrain:"drivetrain",engine:"engine",grade:"grade",trim:"trim",transmission:"transmission",upholstery:"upholstery",equipment:"option",wheels:"wheels","style-pack":"stylePack","fuel-type":"fuelType","vehicle-length":"vehicleLength","vehicle-payload":"vehiclePayload","vehicle-height":"vehicleHeight",dimensions:"dimensions"}}},strings:{defaultScene7CompanyName:"nissan",defaultScene7ServerUrl:"https://nissan.scene7.com/is/image/",monthlyPriceBestMonthly:"bestMonthly",monthlyPriceFinance:"finance",ecommerceEnabled:"ecommerceEnabled",monthlyPriceLease:"leasing",monthly:"monthly",weekly:"weekly",fortnightly:"fortnightly",financedInsurance:"{financedInsurance}",openingCommissionPercentage:"{openingCommissionPercentage}",loanTerm:"{loanTerm}",cat:"{cat}",interestRate:"{interestRate}"},settings:{maxCallAttempts:3}},rciProxyModel:{events:{sync:"sync",simulatorRendered:"simulatorRendered",customProxyParams:"customProxyParams"},properties:{detailedOfferH1:"detailedOfferH1",detailedOfferH2:"detailedOfferH2",detailedOfferText:"detailedOfferText",detailedOfferLegalText:"detailedOfferLegalText"}},financeCalculator:{properties:{HELIOS:"HELIOS",localisationData:"localisationData",versionSpecs:"versionSpecs",gradeSpecs:"gradeSpecs",engineSpecs:"engineSpecs",basePrice:"basePrice",totalPrice:"totalPrice",currencyCode:"currencyCode",gradeKey:"gradeKey",priceRepresentation:"priceRepresentation",accessories:"accessories",eimCode:"eimCode"}},optionModel:{properties:{images:"images",value:"value",name:"name",specs:"specs",price:"price",specTitle:"specTitle"}},optionGroupModel:{values:{allCategoriesGroupKey:"ALL_CATEGORIES"},properties:{key:"key",specs:"specs",value:"value",description:"description",groupKey:"groupKey"}},colourModel:{cssClasses:{container:"c_086_3"},properties:{key:"key",name:"name",groupType:"groupType",options:"options",oneToneColourGroup:"oneToneColourGroup",twoToneColourGroup:"twoToneColourGroup"},groupTypes:{oneTone:"oneTone",twoTone:"twoTone",other:"other"}},stylePackGroupModel:{properties:{key:"key",name:"name",packs:"packs",subgroups:"subgroups",groupType:"groupType"},groupTypes:{INTERIOR:"interior",EXTERIOR:"exterior",OTHER:"other"}},stylePackSubgroupModel:{properties:{key:"key",name:"name",packs:"packs"}},packModel:{properties:{specs:"specs"}},stylePackModel:{properties:{packs:"packs",specs:"specs"}},warrantyServiceModel:{properties:{key:"key",name:"name",specs:"specs"},types:{WARRANTY_EXTENSION:"warranty-extension",SERVICE_PACK:"service-pack"}},powertrainModel:{properties:{battery:"battery",drivetrain:"driveTrain",capacity:"capacity",engine:"engineType",fuelConsumption:"fuelConsumption",fuelType:"fuelType",power:"power",torque:"torque",transmission:"transmission",fiscalTax:"fiscalTax",usp:"usp"}},engineDetailView:{selectors:{engineEmissionsInfoButton:".cfg-engine-emissions-info",optionHeader:".cfg-option-header",technicalDataHeader:".cfg-engine-technical-data .header",selectLeaseOfferButton:".cfg-select-lease-option button",disclaimerDescription:".cfg-engine-emissions-info",disclaimerLabel:".price-prefix",disclaimerText:".cfg-option-grade-price-disclaimer",engineTechnicalData:".cfg-engine-technical-data dl",cfgEngineStatsList:".cfg-engine-statslist li",specAmount:".amount",technicalValue:".value"},classes:{versionSpecificationsAdded:"versions-specifications-added"},attributes:{emissionDataId:"data-id",versionName:"data-version-name"},constants:{fuelConsumptionCity:"fuel-consumption-city",fuelConsumptionCombined:"fuel-consumption-combined",fuelConsumptionHighway:"fuel-consumption-highway",emissions:"emissions"},events:{targetConfigurationChanged:"targetConfigurationChanged"}},drivetrainModel:{properties:{name:"value"}},engineModel:{properties:{name:"value"}},transmissionModel:{properties:{gears:"gears",gearBoxType:"gearBoxType"}},dimensionModel:{properties:{height:"height",length:"length",volume:"volume",heightGroup:"heightGroup",lengthGroup:"lengthGroup"}},obsolescenceModel:{events:{isInvalid:"isInvalid",sync:"sync"},properties:{defaultResolvedDoc:"defaultResolvedDoc",localResolvedConf:"localResolvedConf",requestedURI:"requestedURI",isValid:"isValid",isUpdated:"isUpdated",confuriSegment:"confuri=",confuriVersion:"v=",obsolesenceResolve:"obsolesenceResolve",configuration:"configuration"}},emissionsDataModel:{properties:{emissionsData:"emissionsData",emissionsDataTypes:"emissionsDataTypes",engineSpecs:"engineSpecs",label:"label",value:"value",minValue:"minValue",maxValue:"maxValue",unit:"unit",efficie
12ncy:"efficiency",fuelConsumption:"fuelConsumption",key:"key",options:"options"}},priceTypes:{MONTHLY:0,TOTAL:1},priceListsModel:{properties:{priceList:"priceList"}},priceViewModel:{cssClasses:{priceCaveatsAreExposed:"price-caveats-are-exposed",cfgCaveatTooltip:"cfg-caveat-tooltip"},properties:{totalPrice:"totalPrice",monthlyPrice:"monthlyPrice",monthlyPriceLabel:"monthlyPriceLabel",monthlyPriceDetail:"monthlyPriceDetail",financeCtaLabel:"financeCtaLabel",monthlyPriceDisclaimer:"monthlyPriceDisclaimer",monthlyPriceInputError:"indicativeInputErrorMessage",monthlyPriceInputErrorDescription:"indicativeInputErrorDescription"}},caveats:{properties:{showCaveats:"showCaveats",startExpanded:"startExpanded",exposed:"priceCaveatsAreExposed",msrp:"priceCaveatsMSRP",monthlyPrice:"priceCaveatsMonthlyPrice",emissionsData:"emissionsData",financeCalculatorPricingCaveat:"financeCalculatorPricingCaveat"}},routeNames:{chooseConfigurationOption:"ChooseConfigurationOption",complete:"Complete",configure:"Configure",summary:"Summary",category:"Category",modal:"Modal",categorySelect:"CategorySelect"},specificationCategoryMetadata:{properties:{itemFilter:"itemFilter",key:"key",pricingMethod:"pricingMethod",pricingMethodLocation:"pricingMethodLocation",propertyName:"propertyName",allowsMultipleSelections:"allowsMultipleSelections"}},specificationModel:{breakpointPropertyNames:{large:"large",medium:"medium",small:"small"},properties:{groupKey:"groupKey",images:"images",key:"key",name:"name",longEngineName:"longEngineName",pricesKeyList:"pricesKeyList",enhancedMoreInfo:"enhancedMoreInfo",description:"description",descriptionRTE:"descriptionRTE",specs:"specs",type:"type",unit:"unit",value:"value",features:"features",imageDisclaimer:"imageDisclaimer",universalPriceDisclaimer:"priceDisclaimer",universalPriceDescription:"priceDescription",additionalImageSpecs:"additionalImageSpecs",configurationUrlForImage:"configurationUrlForImage",fallbackImages:"fallbackImages",imageSource:"imageSource",categoryKey:"categoryKey",isVersionNameEnabled:"isVersionNameEnabled",selectedForCompare:"selectedForCompare",price:"price"}},storageManager:{properties:{storageName:"c_cfg",storageName_v2:"c_cfg_v2_linear",storageOptions:{},tipsStorageName:"tips",storageCfgUrl:"cfg_url",storageMonthlyPriceType:"c_cfg_preferred_monthly_price_type",storageModelCode:"lastVisitedVehicle"}},uiSpecCatLevel1Group:{properties:{subGroups:"subGroups",title:"title"}},uiSpecCatLevel2Group:{properties:{categories:"categories",title:"title",icons:"icons"}},uiSpecCat:{properties:{activeOptionDescription:"activeOptionDescription",eventAggregator:"eventAggregator",image:"image",isOptionExplicitlySelected:"isOptionExplicitlySelected",priceInformation:"priceInformation",selectedSpecs:"selectedSpecs",uiSpecCat:"uiSpecCat",uiSpecCatMetadataKey:"uiSpecCatMetadataKey",uiSpecCatName:"uiSpecCatName",uiSpecCatNameParsed:"uiSpecCatNameParsed",url:"url",pricePrefixText:"pricePrefixText",transmissionGearType:"transmissionGearType",isTransmissionGearType:"isTransmissionGearType",drivetrainName:"drivetrainName",isDrivetrainName:"isDrivetrainName",icon:"icon"},cssClasses:{selectionMargin:"selection-margin"}},uiSpecificationCategoryModel:{properties:{categories:"categories",key:"key",name:"name",nameLocation:"nameLocation",sortOrder:"sortOrder",sortOrderLocation:"sortOrderLocation",url:"url",fullWidth:"fullWidth",multiColumn:"multiColumn",universalPriceDisclaimer:"priceDisclaimer",universalPriceDescription:"priceDescription"}}
12,cssClasses:{active:"active",checked:"checked",selected:"selected",hidden:"hidden",open:"open",panel:"panel",stageIsExpanded:"cfg-stage-is-expanded",stageIsTransitioning:"cfg-stage-is-transitioning",isScrolled:"isScrolled",save:"save",share:"share",hasExposedCaveat:"cfg-has-exposed-caveat",isPinned:"is-pinned",isAbove:"is-above",isBelow:"is-below",menuPlaceholder:"placeholder",hasInventoryButton:"has-inventory-button",inventoryModalOpen:"inventory-modal-open",itemName:"item-name",cta:"cta",systematicSpec:"cfg-systematic",zeroPrice:"zero-price",hideLabelCaveat:"hide-label-caveat"},app:{elementIds:{scene7Spinner:"cfg-stage-spin"},properties:{eventAggregator:"eventAggregator"},cssClasses:{cfg:"c_cfg",c_cfg_backbone:"c_cfg_backbone",cfgVariantPrefix:"c_cfg_v",cfgExitButton:"cfg-exit-button",header:"header",nextButton:"cfg-next-button",isLocked:"is-locked",mainContent:"main-content",trayOpen:"cfg-tray-view",cookieComponent:".c_128",simpliFiedNavBar:"simplified-nav-bar",linearCfgLoadedClass:"is-cfg-v2-loaded"},selectors:{cfg:".c_cfg",cfgExitButton:".cfg-exit-button",linearNavigation:".navigation-step-1",htmlElement:"html",modalContainer:".c_107",tooltipContainer:".c_147_6",priceCaveatContainer:".c_147_2"},events:{categorySelect:"categorySelect",start:"start",bodyTypeSelected:"bodyType:selected"},cssAttributes:{display:"block",noShow:"none",nextButtonDisplay:"display"}},events:{resize:"resize",transitionend:"webkitTransitionEnd oTransitionEnd MSTransitionEnd transitionend",scroll:"scroll"},applicationEvents:{cfgCloseModal:"cfg:closeModal",cfgOpenModal:"cfg:openModal",cfgCloseSecondaryModal:"cfg:closeSecondaryModal",cfgOpenSecondaryModal:"cfg:openSecondaryModal",cfgOpenFinanceModal:"cfg:openFinanceModal",cfgCloseFinanceModal:"cfg:closeFinanceModal",cfgAnalyticsClickEvent:"cfg:analyticsClickEvent",cfgAnalyticsEvent:"cfg:analyticsEvent",cfgHideHeader:"cfg:hideHeader",cfgChangeSpecFilters:"cfg:changeSpecFilters",cfgResetSpecFilters:"cfg:resetSpecFilters",cfgShowHeader:"cfg:showHeader",initialised:"initialised",cfgPanelTransitionEnd:"cfg:panelTransitionEnd",cfgSmartLocationEnabled:"cfg:smartLocation:enabled",cfgSmartLocationTriggerClicked:"cfg:smartLocation:triggerClicked",cfgToggleSmartLocation:"cfg:smartLocation:toggle",cfgSmartLocationTransitionEnd:"cfg:smartLocation:transitionEnd",cfgSmartLocationSaved:"cfg:smartLocation:saved",cfgMobileLinearNavTransitionEnd:"cfg:mobileLinearNav:transitionEnd",inventoryCountEnabled:"inv:count:enabled",initialising:"initialising",renderDisclaimers:"renderDisclaimers",populateExposedCaveat:"populateExposedCaveat",renderDelay:600,financeCalculatorLoaded:"financeCalculatorLoaded",cfgEditTray:"cfg:cfgEditTray",cfgStopEditTray:"cfg:cfgStopEditTray",lockPageShowHeaderComplete:"lockPage:showHeaderComplete",lockPageHideHeaderComplete:"lockPage:hideHeaderComplete",cfgExitButtonClick:"cfg:exitButton:click",cfgLinearNavExitButtonClick:"cfg:linearNav:exitButton:click",cfgUpdatePersistentPreviewAreaSize:"cfg:updatePersistentPreviewAreaSize",cfgConflictResolutionComplete:"cfgConflictResolutionComplete",configurationIsReady:"configurationIsReady",trayChange:"trayChange",aditionalCostsSync:"aditionalCostsSync",cfgScrolled:"cfg:scrolled",cfgDataRequestsForFirstTrayLoadedComplete:"cfg:dataRequestsForFirstTrayLoadedComplete",editBodyTray:"editBodyTray",hidePriceSummary:"hidePriceSummary",backboneToVueJSEvent:"backbone:vuejs:event:",configurationCategoryStateChange:"configurationCategoryStateChange",configuratorResetInProgress:"configuratorResetInProgress",configurationKeyChange:"configurationKeyChange",onConfigurationPriceDataSync:"onConfigurationPriceDataSync",modelHashChange:"modelHashChange",smartLocationUpdate:"smartLocationUpdate",selectedUISpecificationCategoryKeyChange:"selectedUISpecificationCategoryKeyChange",backboneStarted:"backboneStarted",versionFullEquipmentSpecsUpdated:"versionFullEquipmentSpecsUpdated",versionFullEquipmentSpecsFetched:"versionFullEquipmentSpecsFetched",cfgBodyTypeTrayLoaded:"cfg:loadedBodyTypeTray",financeCalculatorDataChange:"financeCalculatorDataChange",resetConfigurator:"resetConfigurator",financeOfferEstimated:"financeOfferEstimated",exitConfiguratorJourney:"exitConfiguratorJourneyPrompt",financeCalculatorAdditionalCaveatChange:"financeCalculatorAdditionalCaveatChange",monthlyFinanceOfferUpdated:"monthlyFinanceOfferUpdated",updateFinanceCalculatorPrice:"updateFinanceCalculatorPrice",renderFinanceModalComplete:"renderFinanceModalComplete",renderModalComplete:"renderModalComplete",renderPricesComplete:"renderPricesComplete",renderStageComplete:"renderStageComplete",renderTooltipComplete:"renderTooltipComplete",isInventoryOverlayOpen:"isInventoryOverlayOpen",getLinkoutFinanceParams:"getLinkoutFinanceParams",updateEditBookmarkData:"updateEditBookmarkData",updateIsCurrentConfigurationSaved:"updateIsCurrentConfigurationSaved"},c_084:{properties:{isConfigurationSummarySubmittedToAnalytics:"isConfigurationSummarySubmittedToAnalytics",isSelected:"isSelected",stepNumber:"stepNumber",title:"title",titleKey:"titleKey",url:"url"}}
12,c_085:{cssClasses:{container:"c_085"},properties:{activeOption:"activeOption",configureOptionUrl:"configureOptionUrl",footerHeadingText:"footerHeadingText",footerLinks:"footerLinks",headingText:"headingText",image:"image",resetButtonText:"resetButtonText",title:"title",uiSpecificationCategoryModel:"uiSpecificationCategoryModel"}},c_085_1_5:{properties:{resetButtonText:"resetButtonText",uiSpecCatLevel1Groups:"uiSpecCatLevel1Groups"}},c_085_2:{classes:{c_085_2:"c_085_2",mobileLinearNavOpen:"open-on-mobile",navItem:"linear-nav-item",navItemActive:"linear-nav-active",navItemNextActive:"linear-nav-next-active",navItemVisited:"linear-nav-visited",subNav:"linear-subnav",subNavItem:"linear-subnav-item slick-slide",subNavActive:"linear-subnav-active",subNavVisited:"linear-subnav-visited",summaryNavButton:"linear-nav-item-button-summary",smartLocationEnabled:"cfg-smart-location-enabled",smartLocationOpen:"is-open",hasInventoryButton:"has-inventory-button",simplifiedNavEnabled:"cfg-simplified-nav-enabled",slickDisabled:"slick-disabled",slickPrev:"slick-prev",summaryActive:"summary-active",noOverflow:"no-overflow",equalWidth:"equal-width"},selectors:{c_085_2:".c_085_2",linearNav:".linear-nav",linearNavToggleButton:".linear-nav-toggle-button",navItem:".linear-nav-item",navItemButton:".linear-nav-item-button",subNav:".linear-subnav",subNavItem:".linear-subnav-item",subNavItemButton:".linear-subnav-button",subNavOpen:".open",leftSubNavPaddleButton:".linear-subnav-left-paddle",rightSubNavPaddleButton:".linear-subnav-right-paddle",navigationHolder:".cfg-linear-navigation-holder",c_090:".c_090",summaryCTA:".summary-cta",exitButton:".cfg-exit-button",exitButtonContainer:".cfg-exit-button-container",smartLocationContainer:".smart-location-container",inventoryCountButton:".c_200",htmlElement:"html",navLink:".linear-subnav-item > a",c_201_2:".c_201_2",currentNavigation:".current-navigation",slickButton:".slick-slider > button",pagination:".navigation-pagination",paginationMobile:".navigation-pagination-mobile > span",selectedSpec:"selected-spec"},properties:{linearNavRoute:"linearNavRoute",linearNavGroups:"linearNavGroups",linearSubNavGroups:"subGroups",categories:"categories",selected:"selected",visited:"visited",uiSpecCat:"uiSpecCat",uiSpecCatMetadataKey:"uiSpecCatMetadataKey",uiSpecCatName:"uiSpecCatName",url:"url",summary:"summary",summaryButton:"summaryButton",title:"title",type:"type",pageName:"pageName",summaryUrl:"summaryUrl",childUrl:"childUrl",hashEnd:"hashEnd",hashModal:"#modal",hasInventory:"hasInventory",simplifiedNavEnabled:"simplifiedNavEnabled",ofLabel:"ofLabel",activeOptionDescription:"activeOptionDescription",totalNav:"totalNav",selectedSpec:"selectedSpec",waitForAnimate:"waitForAnimate",componentId:"componentId",initialSlide:"initialSlide",simplifiedLinearNavClassAdded:"simplifiedLinearNavClassAdded",bodyTypeTrayCtaClicked:"bodyTypeTrayCtaClicked"},events:{change:"change",click:"click",scroll:"scroll",changeSubNavItem:"LinearNavJourney:subnav:changed",LinearNavExternalTrayChange:"LinearNavJourney:externaltraychange:triggered",linearNavRouteCreated:"LinearNavJourney:route:created",linearNavRouteUrlChanged:"LinearNavJourney:url:changed",linearNavSummaryButtonChanged:"LinearNavJourney:summarybutton:changed",linearSummaryTrayOpened:"LinearNavJourney:summarytray:opened",linearDefaultTrayOpened:"LinearNavJourney:defaulttray:opened",linearSelectedTrayChange:"LinearNavJourney:tray:changed",categoryChange:"LinearNavJourney:category:changed",linearNavRendered:"LinearNavJourney:rendered",linearNavSetStartTray:"LinearNavJourney:setstarttray",hashChange:"hashchange",summaryMoveStage:"summary:move:stage",collapseMenu:"collapseMenu",toggleMobileLinearNav:"toggleMobileLinearNav",summaryVisited:"summary:visited",changeOrientation:"orientationchange resize",simplifiedNavEnabled:"simplifiedNavEnabled"},analytics:{navbar:"navbar",cta:"cta",browserNavigation:"browser navigation",browserButton:"browser button",direct:"direct",componentId:"c_085-2-Configurator_Navbar",pageType:"vehicle",action:"chevron click",location:"configurator-navbar",configuratorSummary:"configurator-summary"}}
12,c_085_4:{cssClasses:{trayOptionSelected:"tray-option-selected",nextButtonContainer:"cfg-next-button-container",editFromSummaryMode:"cfg-button-back-to-summary"},events:{linearStateChange:"linearNavJourney:state:change",linearHideNextButton:"linearNavJourney:hide:nextButton"},properties:{configuratorModel:"configuratorModel",url:"url",uiSpecificationCategoryKey:"uiSpecificationCategoryKey",nextItemUrl:"nextItemUrl",nextUrl:"nextUrl",next:"next",nextButtonCopy:"nextButtonCopy",nextItemName:"nextItemName",href:"href",key:"key",title:"title",lastLinearNavItem:"lastLinearNavItem",subGroups:"subGroups",categories:"categories",linearNavRoute:"linearNavRoute",activeItem:"activeItem",activeIndex:"activeIndex",summary:"summary",summaryBackToSummaryLabel:"summaryBackToSummaryLabel",editFromSummaryMode:"editFromSummaryMode",summaryUrl:"summaryUrl",bodyType:"body-type"},selectors:{nextButtonCta:".cfg-next-button-cta",nextButtonCategory:".next-button-category",nextButtonCopy:".next-button-copy",mainContent:".main-content"}},c_086:{cssClasses:{container:"c_086",extend:"extend",hidden:"hidden",infoIcon:"info-icon",moreInfo:"more-info",qTip:".qtip-focus .qtip-close"},events:{trayOptionsTotalChange:"cfg:trayOptionsTotalChange",trayDomRefresh:"cfg:trayDomRefresh",linearNavDismissTrayTip:"linearNav:dismissTrayTip",trySelectOption:"trySelectOption",click:"click"},properties:{allowsMultipleSelections:"allowsMultipleSelections",backButtonUrl:"backButtonUrl",backButtonText:"backButtonText",batteryLeaseOptionIsSelected:"batteryLeaseOptionIsSelected",configuratorModel:"configuratorModel",eventAggregator:"eventAggregator",images:"images",version:"version",invisible:"invisible",currentSelectionName:"currentSelectionName",currentSelectionLabel:"currentSelectionLabel",currentSelectionPrice:"currentSelectionPrice",currentSelectionDetails:"currentSelectionDetails",selectedUISpecificationCategoryKey:"selectedUISpecificationCategoryKey",selectedSpecificationCategoryKey:"selectedSpecificationCategoryKey",specificationCategoryName:"specificationCategoryName",isTipHidden:"isTipHidden",isEngineCardVersion1:"isEngineCardVersion1",extraOptionsHidden:"extraOptionsHidden",extraPriceLabel:"extraPriceLabel",extraInformationLabel:"extraInformationLabel",extraInformationButton:"extraInformationButton",aboutHeader:"aboutHeader",aboutParagraph:"aboutParagraph",heliosObject:"heliosObject",uiSpecCategory:"uiSpecCategory",grade:"grade",totalOptionsLabel:"totalOptionsLabel",trayOptionsTotalData:"trayOptionsTotalData",trayOptionsTotal:"trayOptionsTotal",detailModel:"detailModel",detailCollection:"detailCollection",name:"name",gradeName:"gradeName",modelName:"modelName",isVersionTray:"isVersionTray",isGradeTray:"isGradeTray",hiddenModelName:"hiddenModelName",noCtaItemsMessage:"noCtaItemsMessage",noOptionsAvailable:"noOptionsAvailable",requiredTraysForCtaNoItemsMessage:"requiredTraysForCtaNoItemsMessage",triggerTabActivate:"triggerTabActivate",currentSelectionSpeclabel:"currentSelectionSpeclabel",reset:"reset",initialCurrentSelectionName:"initialCurrentSelectionName",dataState:"data-state",transmissionGearType:"transmissionGearType",isTransmissionGearType:"isTransmissionGearType",drivetrainName:"drivetrainName",isDrivetrainName:"isDrivetrainName",originalText:"original-text",lineHeight:"line-height",noCarsOnFilter:"noCarsOnFilter"},analyticsConstants:{trayFooter:"Tray footer"},selectors:{optionsHolder:".cfg-options-holder",trayPanel:".c_086.panel"}},c_086_linearView:{cssClasses:{extend:"extend",open:"open",hidden:"hidden",tray:"cfg-tray",multiColumn:"multi-column",fullWidth:"full-width",cfgOption:"cfg-option",cfgOptionSwatch:"cfg-option-swatch",cfgOptionSwatchHalf:"cfg-option-swatch-half",disabledConflict:"disabled-conflict",disabledNoItemsMessage:"disabled-no-items-message",checked:"checked",qTip:".qtip-focus .qtip-close",fixedBar:"fixed-bar",filtersEnabled:"filters-enabled",noPaddingBottom:"no-padding-bottom",swatchesLayout:"swatches-layout",swatchesLayoutContainer:"swatches-layout-container",castShadow:"cast-shadow"},events:{show:"show",transitionEnd:"webkitTransitionEnd oTransitionEnd MSTransitionEnd transitionend",linearNavAnimateTrayIn:"linearNav:animateTrayIn",linearNavDismissTrayTip:"linearNav:dismissTrayTip",linearNavTrayRegionRendered:"linearNav:tray:region:rendered",linearNavTrayClassChange:"linearNav:tray:classChange",linearNavTrayResize:"linearNav:tray:resize",trySelectOption:"trySelectOption",optionSelected:"optionSelected",componentRendered:"componentRendered",click:"click",openSwatchConfirmationPrompt:"openSwatchConfirmationPrompt",closeSwatchConfirmationPrompt:"closeSwatchConfirmationPrompt",trayAnimationComplete:"trayAnimationComplete",linearTrayAnimationComplete:"linearTrayAnimationComplete",linearNavShowTrayTip:"linearNavShowTrayTip",changeInclusionGroupDefaultItem:"changeInclusionGroupDefaultItem",windowResized:"windowResized",reloadCurrentView:"reloadCurrentView",changeCurrentView:"changeCurrentView",resize:"resize",checkItemShouldBeHidden:"checkItemShouldBeHidden",setSwatchesCaveatPosition:"setSwatchesCaveatPosition",swatchLayoutClassAdded:"swatchLayoutClassAdded",touchmoveSwatchHeader:"touchmove.swatchHeader",scrollSwatchesTooltip:"scroll.
12swatchesTooltip",restoreScrollTooltipListener:"restoreScrollTooltipListener",scroll:"scroll"},properties:{batteryLeaseOptionIsSelected:"batteryLeaseOptionIsSelected",configuratorModel:"configuratorModel",eventAggregator:"eventAggregator",selectedUISpecificationCategoryKey:"selectedUISpecificationCategoryKey",selectedSpecificationCategoryKey:"selectedSpecificationCategoryKey",specificationCategoryName:"specificationCategoryName",heliosObject:"heliosObject",isFirstLoadOnTray:"isFirstLoadOnTray",uiSpecCategory:"uiSpecCategory",detailModel:"detailModel",detailCollection:"detailCollection",triggerTabActivate:"triggerTabActivate",currentSelectionSpeclabel:"currentSelectionSpeclabel",top:"top",marginBottom:"marginBottom",paddingTop:"paddingTop",select:"select",change:"change",cancel:"cancel",marginTop:"margin-top",minHeight:"min-height",paddingBottom:"padding-bottom",tooltipRegion:"tooltipRegion",specFilterRegion:"specFilterRegion",swatchTemplate:"swatchTemplate",swatchTemplateHalf:"swatchTemplateHalf",model:"model",dataState:"data-state",hideConflictModel:"hideConflictModel",linearTrayAnimationComplete:"linearTrayAnimationComplete",window:"window",render:"render",conflictRequestDebounceValue:200,isVisible:":visible"},selectors:{optionsHolder:".cfg-options-holder",nextOptionsHolder:".cfg-next-options-holder",trayHeader:".cfg-tray-header",nextTrayHeader:".cfg-next-tray-header",cfgOption:".cfg-option",disabledConflict:".disabled-conflict",noItemsTemplate:".no-items-template",ctaItemsMessage:".cta-items-messages",cfgTrayCurrentSelection:".cfg-tray-current-selection",cfgTrayCurrentSelectionTitle:".cfg-tray-current-selection-title",doubleCategory:".c_086_doubleCategory",tab1:".tab-1-content",tab2:".tab-2-content",tab1content:".tab-1-content",tab2content:".tab-2-content",tab1ContentOpen:".cfg-linear-options-tray.open:not(.tray-header) .tab-1-content",visible:":visible",linearOptionTrayOpen:".cfg-linear-options-tray.open",tab1RadioButton:".tab-1-radio-button",tab2RadioButton:".tab-2-radio-button",specFilters:".c_085_2_7",trayPanel:".c_086.panel",hiddenItems:".c_086_x.hidden",cCfg:".c_cfg",vueCfg:".c_cfg_vuejs",linearOptionsTrayOpen:".cfg-linear-options-tray.open:not(.tray-header)",options:".options",trayCaveatContainer:".tray-caveat",mainContainer:".main-content",conflictVisible:".conflict-visible",cfgNextButton:".cfg-next-button",trayCaveat:".tray-caveat .c_147_2",openedTrayHeader:".tray-header.cfg-linear-options-tray.open",trayPriceLockupCollapsed:".tray-price-lockup-inner .inner",vueJSAppHeader:".app-header",vueJSAppTraysHeader:".app-trays-header",persistentCtaV2:".cfg-main > .c_089_1 .persistent-cta"},hideConflictsRequiredTrays:["equipment","packs","style-pack","individual-options","trim","accessories","warranty-service"],options:{window:"window"},specificationCategories:["grade","version","engine"]},optionGroup:{properties:{optionGroup:"optionGroup",title:"title"}},option:{cssClasses:{container:"c_086_x",isHiddenBySpecFilter:"is-hidden-by-spec-filter",selected:"option-selected",conflicted:"conflicted",softConflict:"soft-conflict",colorConflict:"color-conflict",hideMessageNotification:"hide-message-notification",cfgMoreInfoLink:"cfg-more-info-link",hasMoreInfoLink:"has-cfg-more-info-link",hasLeasedBattery:"has-leased-battery",requiresGradeChange:"requires-grade-change",hasTooltip:"has-tooltip",noPrice:"no-price",noUrl:"no-url",conflictsBehaviorsCssClass:{enabledAutoConflict:"enabled-auto-conflict",enabledAutoConflictMessage:"enabled-auto-conflict-message",enabledConfirmationConflict:"enabled-confirmation-conflict",disabledConflict:"disabled-conflict"},systematicVersion:"systematic-version",optionSelected:"option-selected",added:"added",engineWrapper:"c_234",engineConflictRow:"engine-conflict-row-",engineConflictRowLast:"engine-conflict-row-last",scrolled:"scrolled",offersAdded:"offers-added",conflictVisible:"conflict-visible",engineContainer:"c_234",impliedItems:"implied-items",selectDisabled:"select-disabled",containsMultipleInclusions:"contains-multiple-inclusions",versionSelected:"version-selected",versionConflicted:"version-conflicted",cfgHideNextButton:"cfg-hide-next-button",noHoverState:"no-hover-state",touchHoverActive:"touch-hover-active",touchStartTriggered:"touch-start-triggered"},cssAttributes:{cursor:"cursor",pointer:"pointer",overflowY:"overflow-y",auto:"auto",hidden:"hidden",
12wait:"wait"},events:{configurationStepsComplete:"configurationStepsComplete",trayOptionSelected:"cfg:trayOptionSelected",trayOptionRemoved:"cfg:trayOptionRemoved",optionHeightChange:"optionHeightChange",linearNavAnimateTrayIn:"linearNav:animateTrayIn",sortTrayOptionSelected:"sort:trayOptionSelected",changeSortCollectionFlag:"changeSortCollectionFlag",trySelectOption:"trySelectOption",offerUpdated:"offerUpdated",conflictResolutionComplete:"conflictResolutionComplete",updateMinPrice:"updateMinPrice",checkItemShouldBeHidden:"checkItemShouldBeHidden",targetConfigurationChanged:"targetConfigurationChanged",checkNoResultsOnFilter:"checkNoResultsOnFilter",scrollOnFilterChange:"scrollOnFilterChange",linearTrayAnimationComplete:"linearTrayAnimationComplete",onVersionAddedToCompare:"onVersionAddedToCompare",disableVersionsForCompare:"disableVersionsForCompare",enableVersionsForCompare:"enableVersionsForCompare",compareVersionSelected:"compareVersionSelected",removeCompareVersion:"removeCompareVersion",toggleAdditionaSwatchesCta:"toggleAdditionaSwatchesCta",updateCompareCheckBox:"updateCompareCheckBox",click:"click",autoContinueButtonClicked:"autoContinueButtonClicked",selectOptionClicked:"selectOptionClicked",blur:"blur"},dataAttributes:{ariaChecked:"aria-checked",specCode:"spec-code"},childEvents:{optionSelected:"optionSelected"},properties:{addedOption:"addedOption",additionalClasses:"additionalClasses",addOption:"addOption",additionalLabel:"additionalLabel",allowsMultipleSelections:"allowsMultipleSelections",analyticsData:"analyticsData",attributes:"attributes",autoContinueUrl:"autoContinueUrl",availableInPack:"availableInPack",cancelLabel:"cancelLabel",changeDescLabel:"changeDescLabel",conflictHeader:"conflictHeader",isHiddenBySpecFilter:"isHiddenBySpecFilter",priceChangeLabel:"priceChangeLabel",closeConfirmationPrompt:"closeConfirmationPrompt",confirmLabel:"confirmLabel",conflictMessage:"conflictMessage",confirmSelection:"confirmSelection",currentPrice:"currentPrice",specStatusFlag:"specStatusFlag",hardConflictFlag:"hardConflictFlag",softConflictFlag:"softConflictFlag",colorConflictFlag:"colorConflictFlag",typeOfConflict:"typeOfConflict",conflictBehavior:"conflictBehavior",explicitChoiceOriginCategoryTray:"explicitChoiceOriginCategoryTray",requieresVersionChange:"requieresVersionChange",enhancedMoreInfoData:"enhancedMoreInfoData",eventAggregator:"eventAggregator",extraInfo:"extraInfo",currentSelection:"currentSelection",groupKey:"groupKey",hasConflicts:"hasConflicts",hasExtraInfoLabel:"hasExtraInfoLabel",hideLabel:"hideLabel",installedText:"installedText",isAvailableInPack:"isAvailableInPack",isExtraOption:"isExtraOption",isLoading:"isLoading",isPack:"isPack",isSelected:"isSelected",key:"key",moreInformationLabel:"moreInformationLabel",newTotalPriceLabel:"newTotalPriceLabel",optionTypeId:"optionTypeId",optionClass:"optionClass",optionPackItems:"optionPackItems",optionsIncludedInPacks:"optionsIncludedInPacks",price:"price",priceDelta:"priceDelta",pricePrefix:"pricePrefix",priceDescription:"priceDescription",priceDisclaimer:"priceDisclaimer",priceDescriptionText:"priceDescriptionText",priceDisclaimerText:"priceDisclaimerText",priceDisclaimerVersion:"priceDisclaimerVersion",pricePaymentFrequency:"pricePaymentFrequency",priceType:"priceType",priceText:"priceText",requiresGradeChange:"requiresGradeChange",specCatMetadata:"specCatMetadata",removeDescLabel:"removeDescLabel",replaceDescLabel:"replaceDescLabel",selectedOption:"selectedOption",selectOption:"selectOption",specCode:"specCode",specName:"specName",specification:"specification",systematicEquipment:"systematicEquipment",defaultEquipment:"defaultEquipment",includedInPackEquipment:"includedInPackEquipment",accessoriesIncludedInPacks:"accessoriesIncludedInPacks",freeOptionEquipment:"freeOptionEquipment",specs:"specs",nextConfigurationComplete:"nextConfigurationComplete",conflictResolutionAddedComponents:"conflictResolutionAddedComponents",conflictResolutionRemovedComponents:"conflictResolutionRemovedComponents",conflictingChoices:"conflictingChoices",canonicalURI:"canonicalURI",impossibles:"impossibles",nextConf:"nextConf",targetConfiguration:"targetConfiguration",targetGradeName:"targetGradeName",targetGrade:"targetGrade",targetVersion:"targetVersion",targetName:"targetName",targetPrice
12:"targetPrice",targetVersionPrice:"targetVersionPrice",technicalLabel:"technicalLabel",text:"text",versionGroup:"VersionGroup",version:"version",
13configuration:"configuration",isMoreInformationAvailable:"isMoreInformationAvailable",name:"name",description:"description",images:"images",cardSortingEnabled:"cardSortingEnabled",equipment:"equipment",accessories:"accessories",nextLinearNavUrl:"nextLinearNavUrl",href:"href",autoContinue:"autoContinue",noUrl:"#",sortCollection:"sortCollection",extraOptionsCta:"extraOptionsCta",autoContinueButtonText:"autoContinueButtonText",hasNoDetailImage:"hasNoDetailImage",uri:"URI",type:"type",conflictExplicitSelectedSpecs:"conflictExplicitSelectedSpecs",conflictsSpecsAddedExplicitSelected:"conflictsSpecsAddedExplicitSelected",showSystematicVersions:"showSystematicVersions",subGroups:"subGroups",isValidVersionPack:"isValidVersionPack",itemShouldBeHidden:"itemShouldBeHidden",possibleOptions:"possibleOptions",render:"render",uiSpecCategory:"uiSpecCategory",conflictCategoryKey:"conflictCategoryKey",caseName:"caseName",hideConflictModel:"hideConflictModel",conflictResolutionComplete:"conflictResolutionComplete",default:"DEFAULT",current:"current",hasImpliedItems:"hasImpliedItems",multipleInclusionsDefaultItems:"multipleInclusionsDefaultItems",multipleInclusionSpecCodes:"multipleInclusionSpecCodes",multipleInclusionChoices:"multipleInclusionChoices",exteriorColour:"exterior-colour",upholstery:"upholstery",possibles:"possibles",multipleInclusionsModalSpecCodesGroup:"multipleInclusionsModalSpecCodesGroup",currentVersionMultipleInclusionChoices:"currentVersionMultipleInclusionChoices",amendedConflictResolutionAddedComponents:"amendedConflictResolutionAddedComponents",multipleInclusionDependencies:"multipleInclusionDependencies",isMultipleInclusionDependenciesResolutionCompleted:"isMultipleInclusionDependenciesResolutionCompleted",isMultipleInclusionsConflictsResolutionComplete:"isMultipleInclusionsConflictsResolutionComplete",multipleInclusionSelectionLabel:"multipleInclusionSelectionLabel",isHideFirstVersion:"isHideFirstVersion",requestFunction:"requestFunction",requestMainFunction:"requestMainFunction",visible:":visible",isDataRequestEnabled:"isDataRequestEnabled",isDataRequestSetup:"isDataRequestSetup",isDataRequestComplete:"isDataRequestComplete",unit:"unit",value:"value",hasDefaultItemChanged:"hasDefaultItemChanged",isMultipleInclusionsResolutionCompleted:"isMultipleInclusionsResolutionCompleted",isGroupSelected:"isGroupSelected",disabled:"disabled",isDefaultVersionChanged:"isDefaultVersionChanged",chooseVersionClicked:"chooseVersionClicked",currentTooltipTimeout:"currentTooltipTimeout"},categoryTrays:{gradeTray:"gradeTray",grade:"grade",versionTray:"versionTray",version:"version",styleTray:"styleTray",categoryTray:"categoryTray",specStyleTray:"specStyleTray",colorTray:"colorTray",upholsteryTray:"upholsteryTray",basedOnversion:"basedOnversion"},typeOfConflicts:{softConflict:"softConflict",hardVersionConflict:"hardVersionConflict",hardStyleConflict:"hardStyleConflict",hardConflict:"hardConflict",notConflict:"notConflict",allHardConflicts:["hardConflict","hardVersionConflict"]},conflictsBehaviors:{enabledAutoConflict:"enabledAutoConflict",enabledAutoConflictMessage:"enabledAutoConflictMessage",enabledConfirmationConflict:"enabledConfirmationConflict",disabledConflict:"disabledConflict"},conflictsCases:{isCaseConflictOne:"isCaseConflictOne",isCaseConflictTwo:"isCaseConflictTwo",isCaseConflictThree:"isCaseConflictThree",isCaseConflictFour:"isCaseConflictFour",isCaseConflictFive:"isCaseConflictFive",isCaseConflictSix:"isCaseConflictSix"},conflictCategoryKeys:{drivetrain:"drivetrain",exteriorColour:"exterior-colour",grade:"grade"},SPEC_SORT_STATUS:{POSSIBLE_OPTION:1,SELECTED_OPTION:2,COLOUR_SWATCHES_OPTION_VISIBILITY_CTA:3,IMPLIED_CONFLICTED_OPTION:4,TOGGLE_CONFLICTED_OPTION_VISIBILITY_CTA:5,HARD_STYLE_CONFLICT_OPTION:6,CONFLICTED_OPTION:7},analyticsConstants:{trackingInteractionType:"Change",missingTextFallback:"not set",actionRemove:"remove",actionAdd:"add",compareContentAction:"conflict_selection",compareLocationInPage:"configurator-comparison"},selectors:{moreInfoButton:".more-info-button",optionSelectText:".cfg-option-select-text",price:".price",conflictValue:".cfg-conflict-value li",scrollRegion:"html, body",requireGradeChange:".requires-grade-change",optionHeader:".cfg-option-header",doubleOfferTitle:".double-offer-title",offerContainer:".c_202_1",offerIcon:".offer-icon",tooltipActive:".tooltip-active",htmlElement:"html",name:".name",fromPrice:".from-price",fromLabel:".from-label",groupAccordion:".option-groups-accordion",optionAddButton:".cfg-option-add",optionSelectButton:".cfg-option-select",versionSelected:".version-selected",compareCurrentlySelected:".compare-currently-selected",compareVersionNotSelected:".cfg-compare-select:not(.version-selected)",compareSelectBox:".compare-select-box",cfgOption:".cfg-option",chooseVersionBtn:".choose-version-button",conflictBox:".cfg-conflicts",visibleConflictsBox:".conflict-visible .cfg-conflicts",cfgMain:".cfg-main",cfgNextButton:".cfg-next-button",li:"li"},virtualPageOptions:{trackingObject:"trackingObject",lastLocation:"lastLocation",currentLocation:"currentLocation",isEditItem:"isEditItem",lastPageName:"lastPageName"}
13,strings:{OPTION:"option",OPTION_PACK:"option-pack"},labels:{mostPopularLabel:"mostPopularLabel"},attributes:{typeOfConflict:"type-of-conflicts"}},c_086_1:{cssClasses:{container:"c_086_1"},properties:{optionClass:"optionClass",options:"options",emissionsData:"emissionsData",value:"value",label:"label",unit:"unit",tab1Data:"tab1Data",tab2Data:"tab2Data"}},c_086_2:{cssClasses:{displayAllFeatures:"display-all-features",displayStandardFeatures:"display-standard-features",isBaseGrade:"is-base-grade",container:"c_086_2",longText:"long-text",fullText:"full-text",cfgLinearColorListDefault:"cfg-linear-color-list-default",resetHeight:"reset-height",openList:"list-opened",aprProminence:"apr-prominence",cfgCompareSelect:"cfg-compare-select",compareToolTip:"compare-tool-tip",selected:"selected",versionSelected:"version-selected",selectDisabled:"select-disabled",showDash:"show-dash",offersAdded:"offers-added",offerCaret:"offer-caret"},options:{eventAggregator:"eventAggregator"},properties:{analyticsData:"analyticsData",detailedFeatures:"detailedFeatures",gradeChangeText:"gradeChangeText",priceDelta:"priceDelta",specCode:"specCode",specification:"specification",gradeName:"gradeName",gradeTextDowngrade:"gradeTextDowngrade",gradeTextSelected:"gradeTextSelected",gradeTextStandard:"gradeTextStandard",gradeTextUpgrade:"gradeTextUpgrade",versionTextUpgrade:"versionTextUpgrade",versionTextDownGrade:"versionTextDownGrade",versionTextSelected:"versionTextSelected",versionName:"versionName",groupKey:"groupKey",hideFeaturesButtonText:"hideFeaturesButtonText",isSelected:"isSelected",isBaseGrade:"isBaseGrade",isGradeOffersEnabled:"isGradeOffersEnabled",isVersionOffersEnabled:"isVersionOffersEnabled",isUpgrade:"isUpgrade",offerModel:"offerModel",offers:"offers",optionClass:"optionClass",options:"options",showDetailedFeaturesButtonText:"showDetailedFeaturesButtonText",showStandardFeaturesButtonText:"showStandardFeaturesButtonText",priceLabel:"priceLabel",description:"description",images:"images",equipmentTitle:"equipmentTitle",name:"name",monthlyPriceModel:"monthlyPriceModel",monthlyPriceValue:"monthlyPriceValue",monthlyPriceDetail:"monthlyPriceDetail",monthlyPriceLabel:"monthlyPriceLabel",monthlyPriceCta:"monthlyPriceCta",isMonthlyPriceEnabled:"isMonthlyPriceEnabled",labelPrice:"label",price:"price",legalOne:"legalOne",monthlyPriceEnabledForGradesOn:"VERSION",modelName:"modelName",versions:"versions",versionChangeText:"versionChangeText",priceDisclaimer:"priceDisclaimer",priceDescription:"priceDescription",versionTextDowngrade:"versionTextDowngrade",uiSpecCategory:"uiSpecCategory",disclaimer:"disclaimer",isVersionNameEnabled:"isVersionNameEnabled",targetPrice:"targetPrice",detailModel:"detailModel",detailCollection:"detailCollection",title:"title",hiddenModelName:"hiddenModelName",currentPrice:"currentPrice",width:"width",isAPRProminenceEnabled:"isAPRProminenceEnabled",simplifiedNavEnabled:"simplifiedNavEnabled",compareVersionDetail:"compareVersionDetail",isLargeBreakpoint:"isLargeBreakpoint",checked:"checked",disabled:"disabled",currentTray:"currentTray",isDefaultVersionChanged:"isDefaultVersionChanged",setSpecificationSelectedForCompare:"setSpecificationSelectedForCompare"},analyticsConstants:{configuratorPrefix:"configurator-create-",gradesPrefix:"grades-",componentId:"C86_Version_Tray",locationInPage:"version-card",trackingVar:"contentDisplayed",reset:{trackingVar:"buttonNoCookie",contentAction:"reset configuration",locationInPage:"version-tray",buttonText:"reset configuration"},search:{type:"configurator-version-filter",trackingVar:"search",componentId:"C86_Version_Tray_Filter"},version:"version"},events:{cfgTooltipOpen:"cfg:tooltipOpen",cfgTooltipClose:"cfg:tooltipClose",click:"click.cfgTooltip",touchstart:"touchstart.cfgTooltip",optionSelected:"optionSelected",scrollTooltip:"scroll.tooltip"},selectors:{featuresList:".cfg-standard-features > li",featuresListContainer:".cfg-standard-features",container:".c_086_2",holderTrayOpen:"div[class*='-holder cfg-linear-options-tray open']",gradeOffer:".grade-offer",versionOffer:".version-offer",isChecked:":checked",firstSpan:"span:first",panel:".panel"},constants:{label:"label",lcvDataValues:"lcvDataValues",lcvDataInfoTitle:"lcvDataInfoTitle",length:"length",height:"height",he
13ightGroup:"heightGroup",lengthGroup:"lengthGroup",groupValue:"groupValue",bodyType:"bodytype",enabled:"enabled",displayLcvInfo:"displayLcvInfo",icon:"icon",maxVersionDesktop:3}},c_086_4:{cssClasses:{container:"c_086_4"},properties:{images:"images",optionClass:"optionClass",options:"options"}},c_086_5:{cssClasses:{container:"c_086_5",containerSwatch:"c_086_5_1"},properties:{images:"images",optionClass:"optionClass",options:"options"},analyticsConstants:{configuratorPrefix:"configurator-create-",batteryPrefix:"battery-"}},c_086_6:{cssClasses:{container:"c_086_6"},properties:{optionClass:"optionClass",optionGroupsCollection:"optionGroupsCollection",optionGroupsModel:"optionGroupsModel",optionPacksModel:"optionPacksModel"}},c_086_9:{cssClasses:{container:"c_086_9"},properties:{accessoryGroupsCollection:"accessoryGroupsCollection",accessoryGroupsModel:"accessoryGroupsModel",accessoryPacks:"accessoryPacks",optionGroup:"optionGroup",specs:"specs"},options:{eventAggregator:"eventAggregator"}},c_086_10:{cssClasses:{container:"c_086_10"},properties:{options:"options"},selectors:{optionHeader:".cfg-option-header"},analyticsConstants:{},units:{cubicVolumeUnit:3}},c_086_11:{cssClasses:{container:"c_086_11"},properties:{optionClass:"optionClass",optionPacksModel:"optionPacksModel"}},c_086_12:{cssClasses:{container:"c_086_12"},properties:{optionClass:"optionClass",optionGroupsCollection:"optionGroupsCollection",optionGroupsModel:"optionGroupsModel",groups:"groups"},options:{eventAggregator:"eventAggregator"},events:{cfgConflictResolutionComplete:"cfgConflictResolutionComplete"}},c_086_13:{cssClasses:{container:"c_086_13",isCollapsed:"is-collapsed",c_086_13_1:"c_086-13-1",groupLists:"group-lists"},properties:{warrantyServicesCollection:"warrantyServicesCollection",warrantyServicesModel:"warrantyServicesModel",id:"id",options:"options",optionClass:"optionClass",uiSpecificationCategoryKey:"uiSpecificationCategoryKey",name:"name",accordionTitle:"accordionTitle",accordionDescription:"accordionDescription",description:"description",warrantyLogo:"warrantyLogo",isMoreInformationAvailable:"isMoreInformationAvailable",moreInformationLabel:"moreInformationLabel",minPrice:"minPrice",fromLabel:"fromLabel",isCollapsed:"is-collapsed",key:"key",interactionType:"interactionType"},selectors:{optionHeader:".cfg-option-header",dialog:".dialog",overlayContainer:".overlay-container",tcContainer:".tc-container",disclaimer:".c_147_2>div",accordionTitle:".accordion-title"},analyticsData:{accordionType:"configurator-warranty&services",warrantyText:"warranty extension",serviceText:"service packs",serviceTextSingle:"service pack"}},c_086_23:{cssClasses:{container:"c_086_23",noImage:"no-image",noMoreInfo:"no-more-info"},properties:{name:"name",options:"options"}},c_086_SingleCategory:{cssClasses:{hidden:"hidden",isHiddenBySpecFilter:"is-hidden-by-spec-filter"},selectors:{ctaItemsMessage:".cta-items-messages",noCarsInFilter:".no-cars-in-filter",panelHolder:".cfg-panel-holder",trayRegion:".c_086",cfgHeader:".tray-header.cfg-linear-options-tray.open",options:".options li"},events:{scrollOnFilterChange:"scrollOnFilterChange",checkNoResultsOnFilter:"checkNoResultsOnFilter",backboneVuejsEventConfigurationUpdateFinished:"backbone:vuejs:event:configurationUpdateFinished"},properties:{minHeight:"min-height",auto:"auto",setIsDisabled:"setIsDisabled"}},c_086_DoubleCategory:{cssClasses:{isEmpty:"is-empty",checked:"checked"},properties:{hasEmptyContentPanel:"hasEmptyContentPanel",id:"id",isTab1Empty:"isTab1Empty",isTab2Empty:"isTab2Empty",tab1Label:"tab1Label",tab2Label:"tab2Label",tab1SpecCatKey:"tab1SpecCatKey",tab2SpecCatKey:"tab2SpecCatKey",noCtaItemsMessage:"noCtaItemsMessage",key:"key"},sort:{SORT_MAX_WEIGHT:1e3},selectors:{tab1Content:".tab-1-content",tab2Content:".tab-2-content",disabledConflict:".disabled-conflict",tab1Button:".tab-1-radio-button",tab2Button:".tab-2-radio-button"},events:{trySelectOption:"trySelectOption",backboneVuejsEventConfigurationUpdateFinished:"backbone:vuejs:event:configurationUpdateFinished"}},ctaDisplayConflicted:{events:{enabledConflictedViewCta:"enabledConflictedViewCta",disableConflictedViewCta:"disableConflictedViewCta",clickCtaToggleExtraChoices:"clickCtaToggleExtraChoices",toggleShowOptions:"toggleShowOptions",scrollCtaToTop:"scrollCtaToTop",toggleExtraOptions:"toggle:extraOptions",hideExtraOptions:"hide:extraOptions"},selectors:{parent:".c_086",cfgTrayTitle:".cfg-tray-title",vehicleGrade:".cfg-summary-car .grade",vehicleModel:".cfg-summary-car .model",extraOptionsBtn:".cfg-extra-options-btn",cfgExtraOptionsListItem:".cfg-extra-options-list-item",cfgExtraOptionsListItemWrap:".cfg-extra-options-list-item-wrap",cfgOptionTitleDetail:".cfg-option-title-detail",cfgExtraOptionsHeading:".cfg-extra-options-heading",options:".options",optionSelected:".option-selected"},classes:{showOption:"show-option",expanded:"expanded",isExtraOption:"is-extra-option",hidden:"hidden",cfgExtraOptionsListItem:"cfg-extra-options-list-item"}
13,properties:{groupKey:"groupKey",versionGroup:"VersionGroup",ctaDisplayConflictedView:"ctaDisplayConflictedView",extraOptionsCta:"extraOptionsCta",isExtraOption:"isExtraOption",specStatusFlag:"specStatusFlag",ctaDisplayConflictedHeading:"ctaDisplayConflictedHeading",ctaDisplayConflictedOpen:"ctaDisplayConflictedOpen",ctaDisplayConflictedClosed:"ctaDisplayConflictedClosed",requireConfigChanges:"requireConfigChanges"}},optionGroupsModel:{properties:{groupFilter:"groupFilter",groups:"groups",isGroupsDropDownDisplayed:"isGroupsDropDownDisplayed",groupFilterName:"groupFilterName",accordionTitle:"accordionTitle"}},optionGroupsView:{properties:{configuratorModel:"configuratorModel",selected:"selected",slideDuration:200,ariaExpanded:"aria-expanded",groupValue:"group-value"},selectors:{groupDetails:".group-details"}},packsModel:{cssClasses:{container:"c_086_Pack"},properties:{options:"options"}},stylePacksModel:{cssClasses:{container:"c_086_8"},properties:{options:"options",optionGroup:"optionGroup",title:"title"}},accessoryGroupsModel:{properties:{optionGroup:"optionGroup",title:"title"}},c_086_7:{cssClasses:{container:"c_086_7"},properties:{images:"images",optionClass:"optionClass",options:"options"}},c_086_8:{cssClasses:{container:"c_086_8",checked:"checked",tabMenuHidden:"tab-menu-hidden"},properties:{exteriorStylePackGroupsCollection:"exteriorStylePackGroupsCollection",exteriorStylePackGroupsModel:"exteriorStylePackGroupsModel",id:"id",interiorStylePackGroupsModel:"interiorStylePackGroupsModel",interiorStylePackGroupsCollection:"interiorStylePackGroupsCollection",options:"options",optionClass:"optionClass",interiorStylePackLabel:"interiorStylePackLabel",exteriorStylePackLabel:"exteriorStylePackLabel",experiencePackLabel:"experiencePackLabel",hasInteriorPacks:"hasInteriorPacks",hasExteriorPacks:"hasExteriorPacks",uiSpecificationCategoryKey:"uiSpecificationCategoryKey"}},c_086_3:{cssClasses:{container:"c_086_3",containerSwatch:"c_086_3_1",checked:"checked",tabMenuHidden:"tab-menu-hidden",noHexcode:"no-hexcode",noImage:"no-image"},properties:{hexCode:"hexCode",twoToneColourCollection:"twoToneColourCollection",twoToneColourModel:"twoToneColourModel",id:"id",oneToneColourModel:"oneToneColourModel",oneToneColourCollection:"oneToneColourCollection",options:"options",optionClass:"optionClass",oneToneColourLabel:"colour-1Tone",twoToneColourLabel:"colour-2Tone",has1Tone:"has1Tone",has2Tone:"has2Tone",uiSpecificationCategoryKey:"uiSpecificationCategoryKey",smallImages:"smallImages",fallbackImages:"fallbackImages",images:"images",cropsize:2,isSelected:"isSelected"}},c_087:{cssClasses:{hidden:"hidden",buttonActiveClass:"active",stageImageAspectRatio_16_9:"stage-image-aspect-ratio-16_9",stageImageAspectRatio_4_3:"stage-image-aspect-ratio-4_3",sphereInteriorContainer:"sphere-interior-container",msError:"ms-error",msImageError:"ms-image-error",msSystemError:"ms-system-error",cfgStageSphereViewIsShown:"cfg-stage-sphere-view-is-shown",cfgStageControlTied:"cfg-stage-control-tied",backgroundSelectedClass:"selected"},events:{collapseStage:"cfg:collapseStage",scene7ImagesNotFound:"scene7ImagesNotFound",mediaServerImagesNotFound:"mediaServerImagesNotFound",scene7NotFoundImagesFallback:"scene7NotFoundImagesFallback",expandStage:"cfg:expandStage",inventoryCountEnabled:"inv:count:enabled",changeSpinState:"changeSpinState",summaryStageResize:"summary:stage:resize",onStageReady:"onStageReady",eimCodeChange:"change:eimCode",load:"load",focus:"focus",touchstart:"touchstart",resize:"resize",vueJsSetTrayViewType:"vueJsSetTrayViewType"},options:{breakpoints:"breakpoints"},properties:{analyticsZoomInOut:"zoomin-out",analyticsViewMore:"View More",analyticsHide:"Hide",analyticsInteriorView:"Interior View",analyticsExteriorView:"Exterior View",buttonActiveClass:"buttonActiveClass",exterior360ImagesModel:"exterior360ImagesModel",exteriorImages:"exteriorImages",interior360ImagesModel:"interior360ImagesModel",interiorImages:"interiorImages",isExteriorAndInteriorAvailable:"isExteriorAndInteriorAvailable",buttonTextInterior:"buttonTextInterior",buttonTextExterior:"buttonTextExterior",dataState:"data-state",configuratorModel:"configuratorModel",dataPaths:"dataPaths",breakpoints:"breakpoints",collapsed:"collapsed",expanded:"expanded",buttonTextFullscreenHide:"buttonTextFullscreenHide",buttonTextFullscreen:"buttonTextFullscreen",eimCode:"eimCode",exterior
13ColourKey:"exteriorColourKey",exteriorConfiguration:"exteriorConfiguration",intPreviewImg:"intPreviewImg",extPreviewImg:"extPreviewImg",images:"images",defaultDelay:5e3,spinState:"spinState",spinData:"spinData",visualSpecCodesExt:"visualSpecCodesExt",visualSpecCodesInt:"visualSpecCodesInt",hasInventory:"hasInventory",fitType:"dealer",interiorDisabled:"data-interior-disabled",sphereView:"sphere",panelView:"panel",pannellumZoomOptions:"pannellumZoomOptions",pannellumZoomValue:"pannellumZoomValue",pannellumImageType:"equirectangular",pannellumViewer:"pannellumViewer",sphereInteriorImage:"sphereInteriorImage",sphereInteriorImageUrl:"sphereInteriorImageUrl",sphereInteriorImageHasLoaded:"sphereInteriorImageHasLoaded",initialPitch:-20,initialYaw:0,zoomSliderValue:"value",zoomSliderTimer:"timer",zoomSliderValueTap:"zoomSliderValueTap",zoomSliderTapTimeStamp:"zoomSliderTapTimeStamp",zoomSliderTapLevel:"zoomSliderTapLevel",zoomOptions:{min:-100,max:-55,step:2,initialValue:-100,orientation:"vertical",range:"min"},summary:"summary",shouldDisplayBgOptions:"shouldDisplayBgOptions",areExteriorBGOptionsRendered:"areExteriorBGOptionsRendered",areInteriorBGOptionsRendered:"areInteriorBGOptionsRendered"},selectors:{scene7SpinnerImage:".s7-frame-image",skyboxCanvas:"#cfg-skybox canvas",cfgStage:".cfg-stage",cfgV2:".c_cfg_v2",mainContent:".main-content",sphereInteriorIcons:".sphere-interior-icons",sphereInteriorLoadingIcon:"#sphere-interior-container .s7-loading-icon",sphereInteriorSpinIcon:"#sphere-interior-container .s7-spin-icon",backgroundsHolder:".backgrounds-holder"},spinStates:{exterior:"exterior",interior:"interior"},imageSources:{scene7:"scene7",mediaServer:"mediaServer"},mediaServerErrorCodes:{systemErrorCodes:["10004","10000","10001","10003","10005","10020","10030","10050","10051","10052","10053","10054","10055","10070","10100","10110","10111","10112","10113","10114","10115","10200","10210","10220","10241","10280","10281","10230","10240","10250","10290","10291","10292","10500","10510","10520","10525","10526","10527","10528","10530","10540","10550","10554","10555","10556","10760","10900"],imageNotFoundErrorCodes:["10610","10611","10620","10630","10631","10640","10641","10650","10710","10720","10730","10731","10740","10770","10780","10810","10820","10830","10260","10270"]}},c_088:{cssClasses:{trayOptionSelected:"tray-option-selected"},events:{doAnalyticsUpdate:"doAnalyticsUpdate"},properties:{configuratorModel:"configuratorModel",headerButtonText:"headerButtonText",headerButtonCtaText:"headerButtonCtaText",primaryHeaderText:"primaryHeaderText",backUrl:"backUrl",marketingTitle:"marketingTitle",logo:"logo",date:"date",url:"url",uiSpecificationCategoryKey:"uiSpecificationCategoryKey"},analyticsConstants:{trayHeader:"Tray header"}},c_089:{cssClasses:{hasFinanceCta:"has-finance-cta",hasMonthlyPrice:"has-monthly-price",show:"show",hidden:"hidden",priceHidden:"price-hidden",totalPriceHidden:"total-price-hidden",itemsCollapse:"items-collapse",itemsPartialCollapse:"items-partial-collapse",label:"label",caveatAsterisk:"caveat-asterisk",aprProminence:"apr-prominence",globalFinance:"global-finance",globalFinanceCalculator:"global-finance-cta",globalFinanceLoading:"global-finance-loading",financeLinkoutOverlay:"finance-linkout-overlay",globalFinanceError:"global-finance-error",linkoutFinanceError:"linkout-finance-error"},options:{eventAggregator:"eventAggregator",window:"window"},properties:{configuratorModel:"configuratorModel",engineName:"engineName",engineFullCode:"engineFullCode",isModelOffersEnabled:"isModelOffersEnabled",offerModel:"offerModel",summaryOfferModel:"summaryOfferModel",totalPriceLabel:"totalPriceLabel",showCaveats:"showCaveats",handlingCaveat:"handlingCaveat",handlingWildcard:"%handling%",monthlyPriceLabel:"monthlyPriceLabel",weeklyPriceLabel:"weeklyPriceLabel",fortnightlyPriceLabel:"fortnightlyPriceLabel",monthlyLeaseLabel:"monthlyLeaseLabel",weeklyLeaseLabel:"weeklyLeaseLabel",fortnightlyLeaseLabel:"fortnightlyLeaseLabel",finCalcErrorMessage:"finCalcErrorMessage",monthlyPriceSwitchLabel:"monthlyPriceSwitchLabel",destination:"Destination",minPrice:"minPrice",VersionGroup:"VersionGroup",versionName:"versionName",name:"name",gradeName:"gradeName",modelName:"modelName",financeCtaLabel:"financeCtaLabel",leasePriceLabel:"leasePriceLabel",leasePrice:"leasePrice",isLeaseSelected:"isLeaseSelected",disableEngineName:"disableEngineName",isFinanceCalculatorEnabled:"isFinanceCalculatorEnabled",isMonthlyPriceEnabled:"isMonthlyPriceEnabled",persistentCta:"persistentCta",analyticsManager:"analyticsManager",isEimCodeChecked:"isEimCodeChecked",eimCodeLabel:"eimCodeLabel",eimCode:"eimCode",eimPrint:"eimPrint",showPrice:"showPrice",hiddenModelName:"hiddenModelName",summaryBannerImgs:"summaryBannerImgs",summaryBannerAltText:"summaryBannerAltText",isSummaryBannerEnabled:"isSummaryBannerEnabled",transmissionGearType:"transmissionGearType",isTransmissionGearType:"isTransmissionGearType",drivetrainName:"drivetrainName",isDrivetrainName:"isDrivetrainName",fuelType:"fuelType",newPopupWindow:"newPopupWindow",closePriceLockupConfig:"closePriceLockupConfig",isPriceLockupBtnEnabled:"isPriceLockupBtnEnabled",none:"none",partial:"partial",isAPRProminenceEnabled:"isAPRProminenceEnabled",isFinanceNFSA:"isFinanceNFSA",financeNfsaCtaLabel:"financeNfsaCtaLabel",editCtaLabelNFSA:"editCtaLabelNFSA",financeCalculatorNFSA:"financeCalculatorNFSA",NFSAdisclaimerText:"NFSAdisclaimerText",disclaimerTextLeasing:"disclaimerTextLeasing",NFSARePaymentFrequency:"NFSARePaymentFrequency",weeklyFrequencyNFSA:"weeklyFrequencyNFSA",monthlyFrequencyNFSA:"monthlyFrequencyNFSA",fortnightlyFrequencyNFSA:"fortnightlyFrequencyNFSA",FrequencyNFSA:"FrequencyNFSA",years:"years",onVersionChanged:"onVersionChanged",financeCalculatorDefaults:"financeCalculatorDefaults",isGlobalFinanceCalculator:"isGlobalFinanceCalculator",indicativeErrorMessage:"indicativeErrorMessage",indicativeErrorDescription:"indicativeErrorDescription",loanTerm:"loanTerm",postalCode:"postalCode",providerKey:"providerKey",coverageTypeKey:"c
13overageTypeKey",paymentTypeKey:"paymentTypeKey",providerValue:"providerValue",coverageTypeValue:"coverageTypeValue",paymentTypeValue:"paymentTypeValue",financeTypeOthers:"financeTypeOthers",extendedWarrantyOthers:"extendedWarrantyOthers",providerOthers:"providerOthers",coverageTypeOthers:"coverageTypeOthers",specialPaymentOthers:"specialPaymentOthers",globalFinanceProxyParams:"globalFinanceProxyParams",isTooltipDisclaimerType:"isTooltipDisclaimerType",nonFinanceableMonthlyPriceLabel:"nonFinanceableMonthlyPriceLabel",isRegionalPriceEnabled:"isRegionalPriceEnabled"},events:{leaseSelectionChange:"leaseSelectionChange",removePersistentCtaElement:"removePersistentCtaElement",persistentCtaActive:"persistentCtaActive",vueShowFinanceCalculator:"vueShowFinanceCalculator",backboneToVueJSEventMonthlyFinanceOfferUpdated:"backbone:vuejs:event:monthlyFinanceOfferUpdated",backboneToVueJSEventUpdateFinanceCalculatorPrice:"backbone:vuejs:event:updateFinanceCalculatorPrice",globalFinanceCalculatorUpdate:"globalFinanceCalculatorUpdate",vueExteriorInitialImageUrl:"vueExteriorInitialImageUrl",linkoutFinanceParamsReady:"linkoutFinanceParamsReady",backboneToVueJSEventUpdateGlobalFinanceCalculatorParamsForGuestWishList:"backbone:vuejs:event:updateGlobalFinanceCalculatorParamsForGuestWishList"},analyticsConstants:{chevronClickClose:"chevron click:Close",chevronClickOpen:"chevron click:Open",priceLockup:"Price-Lockup"},storage:{sessionStorage:"sessionStorage"}},c_090:{properties:{print:"print",share:"share",save:"save",summaryUrl:"summaryUrl",buttonText:"buttonText",footer:"footer",modal:"modal",text:"text",locationInPage:"locationInPage",analyticsManager:"analyticsManager",printBtnText:"printBtnText",saveBtnText:"saveBtnText",shareBtnText:"shareBtnText",strings:"strings",summary:"summary",editBookmarkData:"editBookmarkData"},selectors:{simplifiedlinearNav:".cfg-simplified-nav-enabled",saveCta:".save"}},c_091:{cssClasses:{container:"c_091",links:{batd:"book-test-drive",brochure:"download-brochure",enquiry:"enquiry",chat:"live-chat",finance:"finance",inventory:"inventory"},externalUserJourney:{requestquote:"request-quote",finance:"finance",inventory:"inventory"},containers:{batd:"book-test-drive-container",brochure:"download-brochure-container",enquiry:"enquiry-container",chat:"live-chat-container",requestquote:"request-quote-container",finance:"finance-container",inventory:"inventory-container"}},properties:{configuratorModel:"configuratorModel",connectIntroduction:"connectIntroduction",connectTitle:"connectTitle",cssClass:"cssClass",introduction:"introduction",inventoryBaseUrl:"inventoryBaseUrl",inventoryQueryStringUrl:"inventoryQueryStringUrl",inventoryTotal:"inventoryTotal",resultsText:"resultsText",lastVisitedVehicle:"lastVisitedVehicle",linkGroups:"linkGroups",otherLinks:"otherLinks",simulatorAvailability:"simulatorAvailability",title:"title",inventoryTextCta:"inventoryTextCta",moreThanThousand:"999+"},selectors:{imageContainer:".img-container",bookTestDrive:".book-test-drive",financeCalculator:".c_089 .finance-calculator .finance-calculator-cta"},analyticsConstants:{start:"start"},events:{triggerFinanceCalculator:"click"},attributes:{dataCompletionType:"completionType"}},c_092:{properties:{title:"title",image:"image",instructions:"instructions",selectUrlButtonText:"selectUrlButtonText",helperText:"helperText",uniqueUrl:"uniqueUrl"},selectors:{urlTextInput:".unique-url-text"}},c_093:{properties:{title:"title",image:"image",instructions:"instructions",selectUrlButtonText:"selectUrlButtonText",helperText:"helperText",analyticsManager:"analyticsManager",emailUri:"emailUri",social:"social"}},c_105:{analyticsConstants:{start:"start"},selectors:{modal:".modal",container:".c_105"},cssClasses:{simulator:"finance-simulator",loading:"loading",cfgFinanceNfsaModal:"cfgFinanceNfsaModal",container:"c_105",modalSimulator:".modal .finance-simulator",cfgFinanceNfsa:"finance-nfsa-overlay",cfgGlobalFinaceCalcultor:"global-finance-overlay",hidden:"hidden"},properties:{configuratorModel:"configuratorModel",newPopupWindow:"newPopupWindow"},events:{priceChange:"priceChange",simulatorRendered:"simulatorRendered",backboneToVueJSEventUpdateFinanceCalculatorPrice:"backbone:vuejs:event:updateFinanceCalculatorPrice",customProxyParams:"customProxyParams"}}
13,c_106:{properties:{title:"title",subtitle:"subtitle",body:"body",buttonText:"buttonText",hideLabel:"hideLabel",resetConfig:"resetConfig",reset:"reset"}},c_107:{attributes:{tabIndex:"tabindex",ariaLabel:"aria-label"},events:{cfgModalOpen:"cfg:modalOpen",cfgModalClose:"cfg:modalClose",cfgModalEmpty:"cfg:modalEmpty",cfgModalCloseButton:"cfg:modalCloseButton",cfgModalOpened:"cfg:modalOpened",cfgSecondaryModalOpen:"cfg:secondaryModalOpen",cfgSecondaryModalClose:"cfg:secondaryModalClose",cfgSecondaryModalEmpty:"cfg:secondaryModalEmpty",cfgSecondaryModalBackButton:"cfg:secondaryModalBackButton",cfgModalScroll:"cfg:modalScroll",cfgModalHashChange:"cfg:modalHashChange",cfgResetConfigurator:"cfg:ResetConfigurator",keydown:"keydown",keyup:"keyup",hashChange:"hashchange",configureUrl:"configureUrl",enableFullScreen:"c_107EnableFullScreen",disableFullScreen:"c_107DisableFullScreen",focus:"focus",showMandatoryLocationItems:"showMandatoryLocationItems",toggleMandatoryLocationClasses:"toggleMandatoryLocationClasses",setCentered:"c_107SetCentered",closeVersionFilters:"closeVersionFilters",removeCentered:"c_107RemoveCentered",modalHashChange:"modalHashChange",renderedFilterOverlay:"renderedFilterOverlay",configurationUrlUpdateWithModalOpen:"configurationUrlUpdateWithModalOpen",setVersionFilters:"setVersionFilters"},cssClasses:{modalOpen:"modal-open",open:"open",errorOverlay:"c_156",fullScreen:"full-screen",autoSuggestItem:"pac-item",close:".close",dialogContents:".dialog-contents",hidden:"hidden",c_201_1:".c_201_1",dialog:".dialog",modalUnderlay:".modal-underlay",centeredDialog:"centered-dialog",mandatoryUnderlay:"mandatory-underlay",secondaryModalOpen:"secondary-modal-open",centered:"centered",filterOverlay:"filter-overlay"},regionNames:{primaryModalContent:"primaryModalContent",primaryModalDialogContents:".primary-modal .dialog-contents",secondaryModalContent:"secondaryModalContent",secondaryModalDialogContents:".secondary-modal .dialog-contents"},properties:{closeLabel:"closeLabel",backLabel:"backLabel",modalType:"modalType",uniqueUrl:"uniqueUrl",images:"images",resetConfig:"resetConfig",moreInfo:"moreInfo",shareConfig:"shareConfig",saveConfig:"saveConfig",hash:"#modal",modalUrl:"modal",parent:"parent",backToPageLabel:"backToPageLabel",isModal:"isModal",modalOpened:"modalOpened"},selectors:{defaultFocusables:"a, button, input, textarea, select, iframe",activeTabIndex:"[tabindex]:not([tabindex='-1'])",div:"div",dialog:".c_107 .dialog",obsolete:"c_210-0",html:"html",all:"*",tabIndex:"[tabindex]",focus:":focus"},dataProperties:{launchedFrom:"launchedFrom",oldTabIndex:"oldTabIndex",focusables:"focusables",tabIndexedElements:"tabIndexedElements"},values:{negativeIndex:"-1"},keys:{profileDataLocal:"ProfileDataLocal"}},c_107_1:{regionNames:{persistentModalContent:"persistentModalContent"},cssClasses:{modalOpen:"persistent-modal-open",
14open:"open",dialogContents:"dialog-contents",primaryModal:"primary-modal"},events:{cfgPersistentModalOpen:"cfgPersistentModalOpen",cfgPersistentModalClose:"cfg:PersistentModalClose",keyup:"keyup",hashChange:"hashchange",configureUrl:"configureUrl"},properties:{hash:"#modal",modalUrl:"modal"},selectors:{persistentModal:".modal.persistent-modal"}},c_145:{properties:{description:"description",descriptionRTE:"descriptionRTE",images:"images",title:"title",features:"features",specs:"specs",imageDisclaimer:"imageDisclaimer",model:"model"}},c_147:{cssClasses:{caveat:"caveat",readMore:"read-more",summary:"summary",content:"content",hidden:"hidden"},events:{visibilityChange:"visibilityChange"},properties:{caveats:"caveats",image:"image",additionalCaveat:"additional",name:"name",summary:"summary",imageSummary:"imageSummary",imageContent:"imageContent",imageReadMore:"imageReadMore",additionalContent:"additionalContent",financeCalculatorAdditionalCaveat:"financeCalculatorAdditionalCaveat",readMore:"readMore",c_147_3:"c_147_3",c_147_4:"c_147_4",placement:"placement",paddingRight:"padding-right",summaryTray:"summary-tray"},selectors:{caveats:".caveats",cfgStage:".cfg-stage"}},c_147_1:{properties:{emissionsData:"emissionsData",emissionsDataTypes:"emissionsDataTypes",engineSpecs:"engineSpecs",label:"label",value:"value",unit:"unit"}}
14,c_147_2:{cssClasses:{isCollapsed:"is-collapsed",caveatOverflow:"caveat-overflow",pricesExposed:"prices-exposed",warrantyServiceTrayOpen:"warranty-service-tray-open"},selectors:{cfgV2:".c_cfg_v2",c_086Panel:".c_086.panel",trayCaveat:".tray-caveat > .c_147_2"},events:{showExposedCaveat:"cfg:showExposedCaveat",hideExposedCaveat:"cfg:hideExposedCaveat",eventAggregator:"eventAggregator",warrantyDisclaimer:"warrantyDisclaimer",change:"change"},properties:{style:"style",totalPriceCaveat:"totalPriceCaveat",editorialMonthlyPriceCaveat:"editorialMonthlyPriceCaveat",financeCalculatorPricingCaveat:"financeCalculatorPricingCaveat",requiredLegalText:"requiredLegalText",summaryText:"summaryText",buttonShowText:"buttonShowText",buttonHideText:"buttonHideText",displayType:"displayType",isCollapsed:"isCollapsed",priceCaveatsAreExposed:"priceCaveatsAreExposed",caveatsDescFlag:"caveatsDescFlag",eventAggregator:"eventAggregator",emissionsCopy:"emissionsCopy",hasMonthlyPriceCaveat:"hasMonthlyPriceCaveat",priceLegalsTitle:"priceLegalsTitle",priceLegalsSubtitle:"priceLegalsSubtitle",priceLegalsText:"priceLegalsText",priceLegalsLegal:"priceLegalsLegal",priceLegalsWarning:"priceLegalsWarning",footerLegalLinks:"footerLegalLinks",showCaveats:"showCaveats",isCollapsedFullWidth:"isCollapsedFullWidth",isCollapsedMobile:"isCollapsedMobile",toggleDuration:500},analyticsData:{serviceWarrantyTray:"service-warranty-tray",showDisclaimer:"show disclaimer"}},c_147_6:{cssClasses:{placementAbove:"placement-above",placementBelow:"placement-below",tooltipContent:"tooltip-content",isOpen:"is-open",hidden:"hidden",cfgOptionSwatch:"cfg-option-swatch",cfgOptionSwatchIndex:"cfg-option-swatch-index",cfgOptionSwatchStyles:"cfg-option-swatch-styles",c_086_3:"c_086_3",c_147_6:"c_147_6",hasMonthlyPrice:"has-monthly-price"},events:{cfgTooltipOpen:"cfg:tooltipOpen",cfgTooltipClose:"cfg:tooltipClose",click:"click.cfgTooltip",touchstart:"touchstart.cfgTooltip",updatePosition:"updatePosition",focus:"focus",resize:"resize"},properties:{content:"content",position:"position",parent:"parent",container:"container",placement:"placement",isPlacementLocked:"isPlacementLocked",closeLabel:"closeLabel",rtl:"rtl",above:"above",below:"below",auto:"auto"},dataAttributes:{isOpen:"isOpen"},selectors:{applicationContainer:".c_cfg",trayContent:".panel.selected",gradePriceValue:".cfg-option-grade-price-value",cfgCarPrices:".cfg-car-prices",imageAndOffer:".image-and-offer",choices:".choices",options:".options",optionContainer:".cfg-option-detail-container:visible",modalDialog:".c_107 .dialog",cookieBox:".c_128"}},c_148:{cssClasses:{container:"c_148",show:"show"},properties:{additionalCssClass:"additionalCssClass",footerLinkDescription:"footerLinkDescription",footerLinkText:"footerLinkText",footerLinkUrl:"footerLinkUrl",introduction:"introduction",leaseOptionIsSelected:"leaseOptionIsSelected",leaseSummaryTitle:"leaseSummaryTitle",leasePriceSubText:"leasePriceSubText",leaseOptionMileage:"leaseOptionMileage",leaseOptionLength:"leaseOptionLength",leaseOptionPrice:"leaseOptionPrice",leaseMileageLabel:"leaseMileageLabel",leaseLengthLabel:"leaseLengthLabel",showSummary1Label:"showSummary1Label",showSummary2Label:"showSummary2Label",showSummary1Description:"showSummary1Description",showSummary2Description:"showSummary2Description",leaseOffersCta:"leaseOffersCta",title:"title",efficiencyImage:"efficiencyImage",resetButtonText:"resetButtonText",checked:"checked",selected:"selected",success:"success",yes:"yes",no:"no",px:"px",string:"string",content:"content",formResponse:"formResponse",componentOrderLeft:"componentOrderLeft",componentOrderRight:"componentOrderRight",componentOrderMobile:"componentOrdermobile",componentOrderingDone:"componentOrderingDone",summary:"summary",isMobile:"isMobile",isSmallBreakpoint:"isSmallBreakpoint",inlineFormConfTitle:"inlineFormConfTitle",inlineFormConfSubtitle:"inlineFormConfSubtitle",confirmationTitle:"confirmationTitle",confirmationText:"confirmationText",inlineFormPath:"inlineFormPath",resetFormText:"resetFormText",toggleType:"configurator-form-confirmation",successAnimationDuration:"1000",failureAnimationDuration:"500",failureAnimationOffset:"50"},selectors:{span:"span",trayContent1:".tray-content-1",trayContent2:".tray-content-2",sectionDescription1:".section-description-1",sectionDescription2:".section-description-2",scrollRegion:"html, body",isSmallBreakpoint:"isSmallBreakpoint",inlineFormConfTitle:".inlineFormConfTitle",inlineFormConfSubtitle:".inlineFormConfSubtitle",confirmationTitle:".confirmation-title",confirmationText:".confirmation-text",resetFormText:".reset-form-text",resultMessage:".result-message",hidden:"hidden",c241:".c_241",resetFormButton:".cfg-reset-link",cfgTrayReset:".cfg-tray-reset",errorTemplate:".formbuilder-error-template",errorGroupMessage:".error-group-message",errorGroupInlineForm:".error-group-inline-form",c148:".c_148",inlineForm:".c_019 form",summaryTray:".summary-tray"},events:{linearSelectedTrayChange:"LinearNavJourney:tray:changed",trackAnalyticsInlineForm:"trackAnalyticsInlineForm",cfgTooltipClose:"cfg:tooltipClose",scroll:"scroll",summaryRendered:"summaryRendered",cfgSmartLocationSaved:"cfg:smartLocation:saved",renderDisclaimers:"renderDisclaimers",backboneVuejsEventConfigurationUpdateFinished:"backbone:vuejs:event:configurationUpdateFinished"}}
14,c_241:{cssClasses:{container:"c_241",show:"show"},properties:{inlineFormConfTitle:"inlineFormConfTitle",inlineFormConfSubtitle:"inlineFormConfSubtitle",confirmationTitle:"confirmationTitle",confirmationText:"confirmationText",inlineFormPath:"inlineFormPath",resetFormText:"resetFormText"}},c_148_1:{cssClasses:{container:"c_148_1",hasMonthlyPrice:"has-monthly-price",hasFinanceCta:"has-finance-cta",hidden:"hidden",priceHidden:"price-hidden",autoSizeImgIE:"auto-size-image-ie",aprProminence:"apr-prominence"},events:{vatReady:"vatReady",vueShowEngineSpecificationsModal:"vueShowEngineSpecificationsModal"},properties:{additionalCosts:"additionalCosts",choices:"choices",isModelOffersEnabled:"isModelOffersEnabled",offerModel:"offerModel",summaryOfferModel:"summaryOfferModel",totalPriceLabel:"totalPriceLabel",hasMonthlyPrice:"hasMonthlyPrice",monthlyPriceLabel:"monthlyPriceLabel",monthlyPriceSwitchLabel:"monthlyPriceSwitchLabel",financeCtaLabel:"financeCtaLabel",image:"image",name:"name",priceImpact:"priceImpact",hexCode:"hexCode",configuratorModel:"configuratorModel",equipment:"equipment",isFinanceCalculatorEnabled:"isFinanceCalculatorEnabled",openFinanceCalculatorInSameWindow:"openFinanceCalculatorInSameWindow",passReferrerAndDestinationURLs:"passReferrerAndDestinationURLs",isMonthlyPriceEnabled:"isMonthlyPriceEnabled",priceDisclaimer:"priceDisclaimer",priceDescription:"priceDescription",priceCodeLabel:"priceCodeLabel",pricePrefix:"pricePrefix",modelPriceDisclaimer:"modelPriceDisclaimer",modelPriceDescription:"modelPriceDescription",priceCodeDisclaimer:"priceCodeDisclaimer",priceCodeDescription:"priceCodeDescription",versionPriceDisclaimer:"versionPriceDisclaimer",versionPriceDescription:"versionPriceDescription",keyReference:"key",dataKey:"data-key",equipmentSpecs:"equipmentSpecs",packs:"packs",detailedFeatures:"detailedFeatures",isMoreInformationAvailable:"isMoreInformationAvailable",resetButtonText:"resetButtonText",engineModelData:"engineModelData",grade:"grade",gradeName:"gradeName",model:"model",universalPriceDisclaimer:"universalPriceDisclaimer",universalPriceDescription:"universalPriceDescription",showSystematicVersions:"showSystematicVersions",isVisible:"isVisible",isCategoriesEnabled:"isCategoriesEnabled",isFittingLabelEnabled:"isFittingLabelEnabled",selectionName:"selectionName",price:"price",fitType:"fitType",fitLabel:"fitLabel",accessories:"accessories",individualOptions:"individual-options",packTitle:"packTitle",summaryBannerImgs:"summaryBannerImgs",summaryBannerAltText:"summaryBannerAltText",isSummaryBannerEnabled:"isSummaryBannerEnabled",summaryBannerTargetURL:"summaryBannerTargetURL",summaryBannerOpenLinkInNewTab:"summaryBannerOpenLinkInNewTab",blank:"_blank",transmissionGearType:"transmissionGearType",isTransmissionGearType:"isTransmissionGearType",drivetrainName:"drivetrainName",isDrivetrainName:"isDrivetrainName",text:"text",vatPriceLoaded:"vatPriceLoaded",unit:"unit",specTitle:"specTitle",categoryKey:"category-key",newPopupWindow:"newPopupWindow",isAPRProminenceEnabled:"isAPRProminenceEnabled",isFinanceNFSA:"isFinanceNFSA",financeNfsaCtaLabel:"financeNfsaCtaLabel",editCtaLabelNFSA:"editCtaLabelNFSA",financeCalculatorNFSA:"financeCalculatorNFSA",NFSAdisclaimerText:"NFSAdisclaimerText",NFSARePaymentFrequency:"NFSARePaymentFrequency",weeklyFrequencyNFSA:"weeklyFrequencyNFSA",monthlyFrequencyNFSA:"monthlyFrequencyNFSA",fortnightlyFrequencyNFSA:"fortnightlyFrequencyNFSA",FrequencyNFSA:"FrequencyNFSA",years:"years",onVersionChanged:"onVersionChanged",financeCalculatorDefaults:"financeCalculatorDefaults"},selectors:{resetBtn:".cfg-reset-link",showMoreInformation:".cfg-more-info-link",choicesEditButton:".choices dt a",categoryName:".category-name",selectionInfo:".selection-info",choiceInfo:".choices dd",additionalCostsInfo:".additional-costs dd",choiceAccessoriesTemplate:".choice-accesories-template",summaryBannerImg:".summary-banner-img",summaryBannerLink:".summary-banner-info a",choicesContainer:".choices",pricesWrapper:".prices"},analyticsConstants:{cta:"cta",configuratorSummary:"configurator-summary",configuratorSummaryPromoBanner:"configurator-summary-promo-banner",configuratorSummaryBannerImage:"configurator-summary-banner-image"},strings:{breakLine:"<br />"}}
14,c_148_2:{cssClasses:{container:"c_148_2"},properties:{contentItemNames:"contentItemNames",displayedContentSelectorLabel:"displayedContentSelectorLabel",equipmentSpecificationCategories:"equipmentSpecificationCategories",equipmentSpecificationsTitle:"equipmentSpecificationsTitle",moreInformationLabel:"moreInformationLabel",technicalSpecificationCategories:"technicalSpecificationCategories",technicalSpecificationsTitle:"technicalSpecificationsTitle",printCaveat:"printCaveat",emissionData:"emissionData",efficiencyImage:"efficiencyImage",order:"order",unit:"Unit"},analyticsConstants:{summary:"Summary",product:"Product",configurator:"Configurator"}},c_148_3:{cssClasses:{container:"c_148_3"},events:{vatReady:"vatReady"},selectors:{pricesContent:".prices-content",errorRegion:".error-region",optionsPrice:".options-price",totalRegion:".total-region",vatRegion:".vat-region",taxesErrorTemplate:".taxes-error-template",taxesTitleRowTemplate:".taxes-title-row-template",taxesFinalPriceTemplate:".taxes-final-price-template",taxesVatTemplate:".taxes-vat-template",taxesValueRowTemplate:".taxes-value-row-template",boxError:".box-error",errorTitle:".error-title",errorDescription:".error-description",finalPrice:".final-price",totalPrice:".total-title",totalValue:".total-value",priceTitle:".price-title",priceDetailsItem:".price-details-item",priceDetailsName:".price-details-name",priceDetailsValue:".price-details-value"},properties:{isTaxEnabled:"isTaxEnabled",configurationUrl:"configurationUrl",modelCode:"modelCode",taxesInformation:"taxesInformation",isDataAvailable:"isDataAvailable",errorCode:"errorCode",taxesErrorHeading:"taxesErrorHeading",taxesErrorText:"taxesErrorText",priceWithTaxesLabel:"priceWithTaxesLabel",strings:"strings",totalPrice:"totalPrice",title:"title",value:"value",isNegative:"isNegative",model:"model",requestInfo:"requestInfo",text:"text",vatLabel:"vatLabel",vatValue:"vatValue",vatTaxLabel:"vatTaxLabel",vatTaxValue:"vatTaxValue",eventTriggerReady:"ready",eventAggregator:"eventAggregator",hyphen:"-"}},c_148_4:{events:{summaryMoveStage:"summary:move:stage"},properties:{showSummaryStage:"showSummaryStage",summary:"Summary",configuratorModel:"configuratorModel"}},c_148_5:{cssClasses:{container:"c_148_5",legalIconContainer:"legal-icon-container"},properties:{equipmentSpecificationCategories:"equipmentSpecificationCategories",equipmentSpecificationsTitle:"equipmentSpecificationsTitle",moreInformationLabel:"moreInformationLabel",technicalSpecificationCategories:"technicalSpecificationCategories",technicalSpecificationsTitle:"technicalSpecificationsTitle",printCaveat:"printCaveat",efficiencyImage:"efficiencyImage",ariaExpanded:"aria-expanded",slideDuration:200,technicalAccordionState:"technicalAccordionState",equipmentAccordionState:"equipmentAccordionState",expanded:"expanded",order:"order",key:"key",versions:"versions",emissionsIconInfo:"emissionsIconInfo",jc08EmissionsIconInfo:"jc08EmissionsIconInfo",wltpEmissionsIconInfo:"wltpEmissionsIconInfo",jc08FuelTypeClass:"jc08",wltpFuelTypeClass:"wltp",legalIcon:"legalIcon",fuelEconomy:"Fuel Economy",images:"images",unit:"Unit",range:"range",content:"content"},selectors:{specificationDetails:".specification-details",legalIcon:".legal-icon",JC08LegalIcon:".legal-icon.jc08",WLTPLegalIcon:".legal-icon.wltp"},attributes:{specType:"spec-type"},analyticsConstants:{summary:"Summary",product:"Product",configurator:"Configurator"},wltpDataKeys:["energyConsumption","electricRange","range"],wltpRangeKeys:["range","rangeCity","electricRange","electricRangeCity"],wltpSpecNames:["wltpLow","wltpMedium","wltpHigh","wltpVeryHigh","wltpAcPowerConsumptionRatio","wltpOneChargeMileage"],jc08SpecNames:["urban","extraUrban","combined","co2Emissions","efficency"]},c_156:{properties:{configurationError:"configurationError",title:"title",body:"body",buttonText:"buttonText"}},c_187:{cssClasses:{ctaBatd:"cta-batd",ctaSaveForLater:"cta-save-for-later",ctaContactDealer:"cta-contact-dealer",saveCta:".cta-save-for-later"},properties:{links:"links",ctas:"ctas",steps:"steps",footerHeadingText:"footerHeadingText",description:"description",batdEnabled:"batdEnabled",contactEnabled:"contactEnabled",saveEnabled:"saveEnabled",label:"label",destination:"destination",class:"class",hash:"href"}}
14,c_192:{cssClasses:{tooltipRendered:"tooltip-rendered",tooltipTrigger:"has-tooltip",tooltipPlaceholder:"tooltip-placeholder",modalContainer:"modal",invisible:"invisible",isOpen:"is-open",noPrice:"no-price"},selectors:{categoryName:".category-name"},genericProperties:{trackingComponentId:"trackingComponentId",versionInfo:"versionInfo",versionName:"versionName",moreInfoText:"moreInfoText",sectionHeading:"sectionHeading",specificationData:"specificationData"}},c_192_A:{properties:{configuratorModel:"configuratorModel",conflictHeader:"conflictHeader",equipmentSpecs:"equipmentSpecs",gradeKey:"gradeKey",key:"key",tooltipDescription:"description",tooltipImages:"images",value:"value",versionName:"versionName",versionPrice:"versionPrice",from:"from",price:"price",changeTo:"changeTo"}},c_192_B:{properties:{equipmentSpecs:"equipmentSpecs",key:"key",name:"name",gradeName:"gradeName",specCode:"specCode",specification:"specification",targetVersionPrice:"targetVersionPrice",tooltipDescription:"description",tooltipImages:"images",value:"value",uiSpecCategory:"uiSpecCategory",fullEquipmentSpecs:"fullEquipmentSpecs",template301:"t301"}},c_192_C:{properties:{efficiencyImage:"efficiencyImage",emissionsData:"emissionsData",emissionsDataTitle:"emissionsDataTitle",engineName:"engineName",engineSpecs:"engineSpecs",fuelType:"fuelType",images:"images",key:"key",name:"name",showEmissionsData:"showEmissionsData",specCode:"specCode",specification:"specification",targetVersionPrice:"targetVersionPrice",techSpecs:"techSpecs",fullTechnicalSpecs:"fullTechnicalSpecs",tooltipDescription:"description",tooltipImages:"images",value:"value"}},c_199:{cssClasses:{checked:"checked"},selectors:{checkedInput:"input[type=radio]:checked",dialog:".c_107 .dialog",closeButton:"button.close"},properties:{batteryCode:"batteryCode",cost:"cost",costSuffix:"costSuffix",heading:"heading",leaseOptions:"leaseOptions",mileage:"mileage",mileageLabel:"mileageLabel",mileageSuffix:"mileageSuffix",months:"months",monthsLabel:"monthsLabel",mileageVariations:"mileageVariations",mileageVariationsCount:"mileageVariationsCount",monthVariations:"monthVariations",leasingTableDataCells:"leasingTableDataCells",offersLabel:"offersLabel",selectMileageLabel:"selectMileageLabel"},analyticsConstants:{leaseOffer:"Lease offer",months:" Months",miles:" Miles"}},c_200:{properties:{buttonText:"buttonText",buttonCloseText:"buttonCloseText",intro:"intro",ctaText:"ctaText",ctaUrl:"ctaUrl",queryStringUrl:"queryStringUrl",caveat:"caveat",eventAggregator:"eventAggregator",moduleId:"moduleId",resultTooLargeText:"resultTooLargeText",resultsText:"resultsText",resultsSingularText:"resultsSingularText",noResultsText:"noResultsText",inventoryTotal:"inventoryTotal",isInventoryTotalMoreThanOne:"isInventoryTotalMoreThanOne",isInventoryTotalMoreThanOneThousand:"isInventoryTotalMoreThanOneThousand",noResultsNextStepsCtaUrl:"noResultsNextStepsCtaUrl",noResultsNextStepsCtaText:"noResultsNextStepsCtaText",noResultsChangeCriteriaCtaUrl:"noResultsChangeCriteriaCtaUrl",noResultsChangeCriteriaCtaText:"noResultsChangeCriteriaCtaText",isInventoryTotalLoading:"isInventoryTotalLoading",defaultDistance:"defaultDistance",distanceText:"distanceText",distanceLabel:"distanceLabel",distanceUnits:"distanceUnits",isLocationEnabled:"isLocationEnabled",locationValue:"locationValue",total:"total",locationMatchType:"locationMatchType",inventorySearchType:"inventorySearchType",nearestDealerTitle:"nearestDealerTitle",dealerAddressLabel:"dealerAddressLabel",dealerContactLabel:"dealerContactLabel",contactPhoneLabel:"contactPhoneLabel",changeDealerLabel:"changeDealerLabel",dealerAddress:"dealerAddress",dealerStatePostalCode:"dealerStatePostalCode",dealerPhoneNumber:"dealerPhoneNumber",showDealerInventory:"showDealerInventory",href:"href",matchType:"matchType"},selectors:{body:"body",inventoryLinkButton:".cfg-inventory-link-button"},events:{showInventoryButton:"showInventoryButton",hideInventoryButton:"hideInventoryButton",toggleInventoryOverlay:"toggleInventoryOverlay",onCollapseInventoryOverlay:"onCollapseInventoryOverlay",heliosDealerUpdate:"helios.dealer.update",mouseenter:"mouseenter"},analyticsConstants:{completionStep:"Inventory",completionType:"Inventory",locationInPage:"Stage",panelLocation:"Panel",locationInPageEnter:"location-enter-configurator_top_nav_bar",locationInPageEdit:"location-edit-configurator_top_nav_bar",locationInPageEnterLargeBreakpoint:"location-enter-configurator_stage",locationInPageEditLargeBreakpoint:"location-edit-configurator_stage"}
14,cssClasses:{hasResults:"has-results",singular:"singular",tooMany:"too-many",btnDisabled:"disabled",hasDealerPhoneNumber:"has-phone",hasDealerPageLink:"has-link"},tokens:{distance:"%distance%",location:"%location%",units:"%units%"}},c_200_1:{properties:{buttonText:"buttonText",buttonCloseText:"buttonCloseText",intro:"intro",ctaText:"ctaText",ctaUrl:"ctaUrl",queryStringUrl:"queryStringUrl",caveat:"caveat",eventAggregator:"eventAggregator",moduleId:"moduleId",resultTooLargeText:"resultTooLargeText",resultsText:"resultsText",resultsSingularText:"resultsSingularText",noResultsText:"noResultsText",inventoryTotal:"inventoryTotal",isInventoryTotalMoreThanOne:"isInventoryTotalMoreThanOne",isInventoryTotalMoreThanOneThousand:"isInventoryTotalMoreThanOneThousand",noResultsNextStepsCtaUrl:"noResultsNextStepsCtaUrl",noResultsNextStepsCtaText:"noResultsNextStepsCtaText",noResultsChangeCriteriaCtaUrl:"noResultsChangeCriteriaCtaUrl",noResultsChangeCriteriaCtaText:"noResultsChangeCriteriaCtaText",isInventoryTotalLoading:"isInventoryTotalLoading",dealerAddressTokenLabel:"dealerAddressTokenLabel",defaultDistance:"defaultDistance",distanceText:"distanceText",distanceLabel:"distanceLabel",distanceUnits:"distanceUnits",dealerAddress:"dealerAddress",isLocationEnabled:"isLocationEnabled",total:"total",inventoryTotalExceeded:"999+",locationValue:"locationValue",locationCtaText:"locationCtaText",locationFuzzy:"locationFuzzy",showDealerInventory:"showDealerInventory"},analyticsConstants:{completionStep:"Inventory",completionType:"Inventory",locationInPage:"configurator-summary",panelLocation:"Panel",locationInPageEnter:"location-enter-configurator_next_step",locationInPageEdit:"location-edit-configurator_next_step"},cssClasses:{hasResults:"has-results",hasLoaded:"has-loaded",singular:"singular",tooMany:"too-many"},tokens:{distance:"%distance%",location:"%location%",units:"%units%",name:"%name%",postcode:"%postcode%"}},c_201:{cssClasses:{contentItem:"content-item",contentImage:"content-image"},properties:{itemImagePaths:"itemImagePaths",moreInfoHeading:"moreInfoHeading",enhancedMoreInfoData:"enhancedMoreInfoData",listItems:"listItems",heroImagePaths:"heroImagePaths",imageSrc:"imageSrc",moreInfoModal:"moreInfoModal",model:"model",collection:"collection",eventAggregator:"eventAggregator",configuratorModel:"configuratorModel"},selectors:{contentItem:".content-item",contentImage:".content-image",heroImage:".hero-image",mainContent:".main-content-box",nextButton:".cfg-next-button"}},c_201_1:{cssClasses:{error:"error",hidden:"hidden",btnDisabled:"btn-disabled",visible:"visible",open:"open"},properties:{usePostalCode:"locationUsePostalCode",disabled:"disabled",dealerValue:"dealerValue",locationValue:"locationValue",postalCode:{heading:"heading",strapline:"strapline",placeholderText:"placeholderText",smartLocationContext:"smartLocationContext",errorText:"errorText",submitButtonLabel:"submitButtonLabel",disclaimerText:"disclaimerText",customRegExPattern:"customRegExPattern"},location:{heading:"heading",ctaLabel:"ctaLabel",strapline:"strapline",currentLocation:"currentLocation",weCanNotFindYouLocation:"weCanNotFindYouLocation",placeholderText:"placeholderText",errorText:"errorText",submitButtonLabel:"submitButtonLabel",disclaimerText:"disclaimerText",locationAddress:"location-address",locationZip:"location-zip",locationLabel:"location",location:"location",dealer:"dealer"}},selectors:{locationForm:".location-form",locationInput:".location-wrapper .location-input",confirmLocationCta:".confirm-location-cta",spanAutocomplete:".location-wrapper .autocomplete-suggestions",resultItem:".pac-item",template:"#new-autocomplete-ctx",currentLocation:".btn-geolocate",errorWrap:".error-wrap",errorMessage:".error-message"},events:{locationSaved:"locationSaved",getPostalCodeByAddressName:"getPostalCodeByAddressName",eventAggregator:"eventAggregator",getLocationByCoordinates:"getLocationByCoordinates",locationNotFound:"locationNotFound",inputFocus:"inputFocus"},mappingNames:{postalCode:"postalCode",location:"location"},errors:{locationAddress:"Sorry, we could not find a location using that such term",locationZip:"Error with Postal Code"},heliosToGoogleMapping:{streetNumber:"street_number",road:"route",town:"postal_town",location:"locality",country:"country",postalCode:"postal_code"},analytics:{locationInPage:"smart-location_overlay",locationInPageEnter:"location-enter-top_nav_bar",locationInPageEdit:"location-edit-configurator_top_nav_bar",closeButtonLabel:"Close"}},c_201_3:{properties:{logo:"logo",hasReferrerURL:"hasReferrerURL",configuratorExitURL:"configuratorExitURL",location:{hardGateTitle:"hardGateTitle",whyNeedLocationLabel:"whyNeedLocationLabel",whyNeedLocationDisclaimer:"whyNeedLocationDisclaimer",returnBackLinkLabel:"returnBackLinkLabel",returnHomeLinkLabel:"returnHomeLinkLabel",buildPriceLabel:"buildPriceLabel"}},selectors:{locationForm:".location-form",locationInput:".c_107 .location-input",confirmLocationCta:".confirm-location-cta",spanAutocomplete:".c_107 .autocomplete-suggestions",resultItem:".pac-item",template:"#new-autocomplete-ctx",currentLocation:".btn-geolocate",errorWrap:".error-wrap",errorMessage:".error-message",whyNeedLocationLabel:".why-need-location-label",returnToPreviousPage:".return-to-previous-page",returnToHomePage:".return-to-homepage",whyNeedLocationDisclaimer:".why-need-location-disclaimer",hardGateTitleBg:".hard-gate-title-bg",autoCompleteSuggestion:".autocomplete-suggestions",firstSuggestionItem:".autocomplete-suggestions .first-result-item"}
14,cssClasses:{hidden:"hidden",open:"open",isActive:"is-active"},analytics:{locationInPage:"smart-location_overlay",locationInPageEnter:"location-enter-top_nav_bar",locationInPageEnterHardGate:"location-enter-configurator_hard_gate",locationInPageEdit:"location-edit-configurator_top_nav_bar",closeButtonLabel:"Close"}},analyticsController:{properties:{c_cfg:"c_cfg",stateObject:"stateObject",HELIOS:"HELIOS",componentId:"componentId",destination:"destination",locationInPage:"locationInPage",buttonText:"buttonText",componentName:"c_cfg",genericClick:"genericClick",configRFI:"configRFI"}},c_201_2:{analytics:{locationInPageEnter:"location-enter-top_nav_bar",locationInPageEdit:"location-edit-configurator_top_nav_bar",call:"call",discoverDealer:"discover dealer"},cssClasses:{component:"c_201_2",hasLocation:"has-location",hasDealerPhoneNumber:"has-phone",hasDealerPageLink:"has-link",open:"is-open",showDealer:"show-dealer"},properties:{usePostalCode:"locationUsePostalCode",heading:"heading",ctaLabel:"ctaLabel",iconAltText:"iconAltText",setLocationCTALabel:"setLocationCTALabel",isLocationEnabled:"isLocationEnabled",locationLabel:"locationLabel",locationValue:"locationValue",locationCtaText:"locationCtaText",nearestDealerTitle:"nearestDealerTitle",dealerAddressLabel:"dealerAddressLabel",dealerContactLabel:"dealerContactLabel",dealerAddress:"dealerAddress",dealerStatePostalCode:"dealerStatePostalCode",dealerPhoneNumber:"dealerPhoneNumber",dealerPageLink:"dealerPageLink",dealerPageLinkLabel:"dealerPageLinkLabel",dealerType:"dealerType",showDealer:"showDealer",showDealerLink:"showDealerLink",changeDealerLabel:"changeDealerLabel",dealerId:"dealerId",dealerValue:"dealerValue",location:{location:"location",dealer:"dealer"},href:"href"},selectors:{component:".c_201_2",locationDesc:".location-description",dropdownToggle:".smart-location-dropdown-toggle",locationValue:".location",setLocationCTA:".set-location",htmlElement:"html",modal:".c_107",linearNavigationToggleButton:".linear-nav-toggle-button",nearestDealerTitle:".smart-location-nearest-dealer",dealerAddress:".smart-location-dealer-address",dealerStatePostalCode:".smart-location-dealer-state-postal-code",dealerPhoneNumber:".smart-location-dealer-phone-number",dealerPhoneNumberAnchor:".smart-location-dealer-phone-number a",dealerPhoneNumberSpan:".smart-location-dealer-phone-number .tel",dealerPageLink:".dealer-page",dealerPageLinkLabel:".dealer-page-label",body:"body",button:"button"},events:{getPostalCodeByAddressName:"getPostalCodeByAddressName",getLocationByCoordinates:"getLocationByCoordinates",smartLocationClick:"click.smartLocation",heliosDealerUpdate:"helios.dealer.update",heliosDealerUpdated:"heliosDealerUpdated"},mappingNames:{postalCode:"postalCode",location:"location"}},c_201_0:{properties:{profileManager:"profileManager",locationLabel:"locationLabel",locationValue:"locationValue",locationCtaText:"locationCtaText",isLocationEnabled:"isLocationEnabled",disabled:"disabled",dealerValue:"dealerValue"},selectors:{launchLocationCta:".launch-location-cta",locationLabel:".location-prompt",locationValue:".location-value"},cssClasses:{display:"display",hidden:"hidden",btndisabled:"btn-disabled"},events:{getPostalCodeByAddressName:"getPostalCodeByAddressName",getLocationByCoordinates:"getLocationByCoordinates",locationLabelValueChange:"locationLabelValueChange",updateLocationMessage:"updateLocationMessage"},analytics:{locationInPageEnter:"location-enter-top_nav_bar",locationInPageEdit:"location-edit-top_nav_bar"}},analyticsModel:{properties:{configuratorModel:"configuratorModel",analyticsDataObj:"analyticsDataObj"},events:{stateObject:"stateObject"}},eimModel:{properties:{fullEIM:"fullEIM"}},storageManagerState:{properties:{drivetrain:"drivetrain",engine:"engine",colour:"exterior-colour",fuelType:"fuel-type",grade:"grade",model:"model",upholstery:"upholstery",vehicleHeight:"vehicle-height",vehicleLength:"vehicle-length"}},c_210_1:{properties:{title:"title",subtitle:"subtitle",style:"style",h1:"h1",h2:"h2",text:"text",legal:"legal",warning:"warning",cta:"cta"},selectors:{monthlyPriceTitle:".monthlyOverlay-header-title",rci:".rci"}},c_210_0:{properties:{title:"title",description:"description",cta:"cta"},classes:{close:"close",pricesNotificationCta:"prices-notification-cta"}}
14,c_234:{cssClasses:{container:"c_234"},properties:{optionClass:"optionClass",options:"options",emissionsData:"emissionsData",value:"value",label:"label",unit:"unit",tab1Data:"tab1Data",tab2Data:"tab2Data"}},specFilters:{model:{attributeNames:{displayedOptionViewModels:"displayedOptionViewModels",specCatKey:"specCatKey"}},view:{optionKeys:{eventAggregator:"eventAggregator",isSpecFilterEnabled:"isSpecFilterEnabled",detailView:"detailView",tooltipRegion:"tooltipRegion",model:"model",specFilterRegion:"specFilterRegion"},selectors:{specFiltersRegion:".spec-filters"},regionNames:{specFilters:"specFiltersRegion"}}},c_085_2_7:{selectors:{c_107:".c_107",cfgHeader:".tray-header.cfg-linear-options-tray.open",noCarsInFilter:".no-cars-in-filter",filters:".filters",filtersList:".filters li",backToResults:".back-to-results",resetButton:".reset-spec-filters-button",mobileFilters:".mobile-filters"},cssClasses:{filterOverlay:"filter-overlay",showFilters:"show-filters",hidden:"hidden",filterOverlayContainer:"filter-overlay-container"},properties:{currentMinValue:"currentMinValue",currentMaxValue:"currentMaxValue",minValue:"minValue",maxValue:"maxValue",isSelected:"isSelected",version:"version",eventAggregator:"eventAggregator"},eventNames:{changeSpecFilters:"changeSpecFilters",resetSpecFilters:"resetSpecFilters",slideSpecFilters:"slideSpecFilters",onDeepLinkFilterItemChange:"onDeepLinkFilterItemChange",updateVisibleSpecCount:"updateVisibleSpecCount",setVersionFiltersOverlay:"setVersionFiltersOverlay",closeVersionFilters:"closeVersionFilters",setVersionFilters:"setVersionFilters",setIsSelected:"setIsSelected",orientationchange:"orientationchange",click:"click",setResetOverlayMobile:"setResetOverlayMobile",scrollOnFilterChange:"scrollOnFilterChange",setIsDisabled:"setIsDisabled",modalHashChange:"modalHashChange",renderedFilterOverlay:"renderedFilterOverlay"},controller:{optionKeys:{noFilterSelectedText:"noFilterSelectedText",region:"region",resetSpecFiltersCta:"resetSpecFiltersCta",selectedSpecHiddenBySpecFiltersText:"selectedSpecHiddenBySpecFiltersText",specFilterGroups:"specFilterGroups",filterLabelText:"filterLabelText",filterSearchResultText:"filterSearchResultText",moreFilterLabel:"moreFilterLabel",backToResultLabel:"backToResultLabel",closedFilterLabel:"closedFilterLabel",isLargeBreakpoint:"isLargeBreakpoint",eventAggregator:"eventAggregator",resetFilterLabel:"resetFilterLabel"},eventNames:{
15selectedSpecFilterItemChange:"selectedSpecFilterItemChange",characteristicsFilterChange:"characteristicsFilterChange",enableResetFiltersButton:"enableResetFiltersButton"},variant:{linearConfigurator:"linearConfigurator"}},specFilterGroupViewModel:{attributeNames:{isResetSpecFiltersEnabled:"isResetSpecFiltersEnabled",isSelectedSpecHiddenBySpecFilters:"isSelectedSpecHiddenBySpecFilters",key:"key",resetSpecFiltersCta:"resetSpecFiltersCta",selectedSpecHiddenBySpecFiltersText:"selectedSpecHiddenBySpecFiltersText",filterLabelText:"filterLabelText",filterSearchResultText:"filterSearchResultText",setResetButtonCta:"setResetButtonCta",moreFilterLabelText:"moreFilterLabel",backToResultLabel:"backToResultLabel",closedFilterLabelText:"closedFilterLabel",moreFilterOpen:"moreFilterOpen",resetFilterLabelText:"resetFilterLabel",eventAggregator:"eventAggregator",tabindex:"tabindex"}},specFilterGroupView:{cssClasses:{container:"c_085_2_7",open:"open",extraMarginTop:"extra-margin-top",hidden:"hidden",fixedBar:"fixed-bar"},constants:{minFilterLength:3,landscape:"landscape",portrait:"portrait"},cssSelectors:{selectedSpecHiddenBySpecFiltersMessage:".selected-spec-hidden-by-spec-filters-message",specFiltersContainer:".spec-filters",filtersContainer:".filters",visibleSpecCountMessageText:".filter-search-result .text",showMoreFilters:".show-more-filters",noCarsInFilter:".no-cars-in-filter",select:"select",cfgTray:".cfg-tray",fixedBar:".c_085_2_7.fixed-bar",window:"window",document:"document",specFilterList:".spec-filters li",resetSpecFiltersButton:".reset-spec-filters-button",specFilterFirst3ListItems:".spec-filters li:lt(3)",specFilterLast3ListItems:".spec-filters li:gt(3)",sliderButtons:".noUi-handle",cfgMain:".cfg-main",specFiltersRegion:".spec-filters-container"},eventNames:{resetSpecFiltersClick:"resetSpecFiltersClick",selectedSpecFilterItemChange:"selectedSpecFilterItemChange",characteristicsFilterChange:"characteristicsFilterChange",enableResetFiltersButton:"enableResetFiltersButton",removedCardLength:"removedCardLength"},htmlElements:{cardCountContainer:"<span class='count'></span>
15",characteristicsFilterContainer:"<div class='characteristics open'></div>"}},specFilterItemViewModel:{attributeNames:{isDisabled:"isDisabled",isSelected:"isSelected",text:"text",value:"value",queryParamValue:"queryParamValue"}},specFilterView:{cssSelectors:{specFilterItemsContainer:".spec-filter-items",title:".spec-filter-title",inputRange:".input-range",minValue:"min-vlaue",maxValue:"max-vlaue",checkbox:".checkbox",optionCheckbox:".option-checkbox",optionFilter:".option-filter"},cssClasses:{engineTray:"engine-tray",hidden:"hidden",selected:"selected"},sliderOptions:{key:"key",minValue:"minValue",maxValue:"maxValue",initialValues:"initialValues",interval:"interval",filterTypeSlider:"filterTypeSlider",filterTypeDropDown:"filterTypeDropDown",filterTypeOption:"filterTypeOption",values:"values",constants:{DEBOUNCE_SLIDER:100,STEP_COUNT:10}},eventNames:{selectedSpecFilterItemChange:"selectedSpecFilterItemChange",characteristicsFilterChange:"characteristicsFilterChange"},properties:{isEngineTray:"isEngineTray",isSlider:"isSlider"}},specFilterViewModel:{attributeNames:{key:"key",options:"options",title:"title",currentMinValue:"currentMinValue",minValue:"minValue",maxValue:"maxValue",initialValues:"initialValues",unit:"unit",currentMaxValue:"currentMaxValue"}}},mandatoryLocationController:{options:{configuratorModel:"configuratorModel"},selectors:{htmlElement:"html"},cssClasses:{mandatoryLocationHardGateEnabled:"mandatory-location-hard-gate-enabled",hasMandatoryLocationAddress:"has-mandatory-location-address"},events:{cfgIsHardGateRequired:"cfg:isHardGateRequired"}},c_029:{properties:{content:"content",model:"model",images:"images"}},c_245:{properties:{configuratorModel:"configuratorModel",eventAggregator:"eventAggregator",tooltipRegion:"tooltipRegion",collection:"collection",model:"model",key:"key",name:"name",value:"value",index:"index",title:"title",description:"description",features:"features",images:"images",imageDisclaimer:"imageDisclaimer",enhancedMoreInfo:"enhancedMoreInfo",specifications:"specifications",confirmLabel:"confirmLabel",cancelLabel:"cancelLabel",changeThisItemLabel:"changeThisItemLabel",ourSuggestionLabel:"ourSuggestionLabel",showAllOptionsLabel:"showAllOptionsLabel",moreInformationLabel:"moreInformationLabel",priceChangeLabel:"priceChangeLabel",selectLabel:"selectLabel",numberItemsBeforeShowAll:"numberItemsBeforeShowAll",price:"price",formattedPrice:"formattedPrice",isMoreInformationAvailable:"isMoreInformationAvailable",paddingBottom:"padding-bottom",isSelected:"isSelected",isHidden:"isHidden"},events:{resize:"resize.c_245",changeInclusionGroupDefaultItem:"changeInclusionGroupDefaultItem",onShowAllSpecs:"onShowAllSpecs"},selectors:{htmlElement:"html",hiddenItem:".item.hidden"},cssClasses:{multipleInclusionsOverlayOpen:"multiple-inclusions-overlay-open",noImage:"no-image",isSuggested:"is-suggested",isBundle:"is-bundle",hasMoreInfo:"has-more-info",hidden:"hidden"},attributes:{dataKey:"data-key",dataViewMoreEnabled:"data-view-more-enabled"},strings:{commaAndSpace:", "},analytics:{impliedItemEdit:"Implied-item-edit"}},c_307:{properties:{title:"title",isAuthenticatedShowroomEnabled:"isAuthenticatedShowroomEnabled",isUserLoggedIn:"isUserLoggedIn",isNoUserOrNoShowroomId:"isNoUserOrNoShowroomId",redirectUrl:"redirectUrl",createAccountUrl:"createAccountUrl",savedTitle:"savedTitle",updateTitle:"updateTitle",updatedTitle:"updatedTitle",description:"description",updateDescription:"updateDescription",saveConfirmationDescription:"saveConfirmationDescription",updateConfirmationDescription:"updateConfirmationDescription",saveCta:"saveCta",saveToMyAccountCta:"saveToMyAccountCta",saveToMyAccountMessage:"saveToMyAccountMessage",optOutOfAccountDescription:"optOutOfAccountDescription",saveAsNewCta:"saveAsNewCta",OverwriteCta:"OverwriteCta",goToShowroomLabel:"goToShowroomLabel",saveBuildHelpMessage:"saveBuildHelpMessage",showroomSuccessHelpMessage:"showroomSuccessHelpMessage",copyLinkLabel:"copyLinkLabel",linkCopiedLabel:"linkCopiedLabel",rememberShowroomLabel:"rememberShowroomLabel",errorMessage:"errorMessage",showroomId:"showroomId",modelHash:"modelHash",configurationKey:"configurationKey",goToShowroomPath:"goToShowroomPath",goToAuthenticatedShowroomPath:"goToAuthenticatedShowroomPath",saved:"saved",updated:"updated",status:"status",showroomUrl:"showroom-url",showroomFullTitle:"showroomFullTitle",showroomFullDescription:"showroomFullDescription",uniqueSaveUrl:"uniqueSaveUrl",createShowroomAndBookmarkUrl:"createShowroomAndBookmarkUrl",editBookmarkData:"editBookmarkData",isEnabledGuestWishlist:"isEnabledGuestWishlist",autoSaveConfigKey:"autoSaveConfigKey",signInCtaLabel:"signInCtaLabel",signUpCtaLabel:"signUpCtaLabel",registrationURL:"registrationURL",accountSourceParam:"accountSourceParam",accountSourceValue:"accountSourceValue"},constants:{copiedLinkInterval:3e3,showroomCodeLifeTime:3650,showroomFullCode:8010001,badRequestCode:400,modelName:"%model-name%",recommendation:"recommendation",configurator:"
15configurator",agent:"agent"},attributes:{dataCopyURL:"data-copy-url"},selectors:{rememberShowroom:".remember-showroom",buildAction:".build-action",buildSuccess:".build-success",footerAction:".save-showroom-footer-action",footerSuccess:".save-showroom-footer-success",personalShowroomIcon:".personal-showroom-icon",vehicleCount:".vehicle-count"},cssClasses:{saveShowroomModal:"save-showroom-modal",loading:"loading",withVehicleCount:"with-vehicle-count"}},vat:{events:{vatReady:"vatReady"}},compareOverlay:{properties:{analyticsManager:"analyticsManager"},classes:{updateVehicleIcon:"update-vehicle-icon",cancelRemoveBtn:"cancel-remove-btn",removeConfirmBtn:"remove-confirm-btn",compareOverlay:"compare-overlay",compareSelectBox:"compare-select-box",removeModalOverlay:"remove-modal-overlay",chooseBtn:"choose-btn"},events:{compareVersionSelected:"compareVersionSelected"},attributes:{versionId:"versionId"},selectors:{cfgCompare:".cfg-compare",c129:".c_129"}},bodyType:{properties:{confirmationText:"confirmationText",confirmationCTA:"confirmationCTA",cancelCTA:"cancelCTA",configuratorModel:"configuratorModel",queryParamsData:"queryParamsData",lcvKeyInfo:"lcvKeyInfo"},selectors:{cancelCTA:".cancel-btn",confirmCTA:".confirm-btn"},routeNames:{categorySelect:"category-select"}}}}),define("vueJSHelpers",["underscore","jquery","modelViewConstants"],function(a,b,c){"use strict";var d=c.vueJSConfigurator;return{isVueJSConfiguratorEnabled:function(){var a=window;return a&&a[d.isEnabled]||!1},getVueJSConfigurator:function(){var a,b=window;return b&&b[d.name]&&(a=Object.assign({},b[d.name])),a},isVueJSTray:function(a){var b=this.getVueJSConfigurator();return b&&b.isValidVueJSTrayForBackbone(a)||!1},getVueAppElement:function(){return b(c.vueJSConfigurator.selectors.vueApp)},getVueJSVersionsData:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store;if(b)return b.$services.TrayDataService.backboneTraysData[c.vueJSConfigurator.contentJsonNodes.versions]&&b.$services.TrayDataService.backboneTraysData[c.vueJSConfigurator.contentJsonNodes.versions].items},getVueJSChoiceData:function(a,b,d){var e=this.getVueJSConfigurator(),f=e&&e.$store;if(f)return f.getters[c.vueJSConfigurator.getters.getChoicesForTrayItem](d)},getVueJSelectedChoicesForTray:function(a,b){var d=this.getVueJSConfigurator(),e=d&&d.$store;if(e)return b=b||e.state[c.vueJSConfigurator.state.configurationKey],e.getters[c.vueJSConfigurator.getters.getSelectedChoiceIds](a,b)},getVueJSelectedVersionKey:function(){var a=this.getVueJSelectedChoicesForTray(c.vueJSConfigurator.contentJsonNodes.versions);if(a&&a.length)return a[0]},getVueJSRciPriceMapping:function(){var b=this.getVueJSConfigurator(),d=b&&b.$store,e=d&&d.getters[c.vueJSConfigurator.getters.getRciPriceMapping];if(d&&!a.isEmpty(e))return e},getVueJSUpholsteryKey:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.upholstery];if(b&&d)return d},getVueJSInternColor:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getInternColor];if(b&&d)return d},getVueJSExternColor:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getExternColor];if(b&&d)return d},getVueJSCapacity:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getCapacity];if(b&&d)return d},getVueJSTypeVariantVersion:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getTypeVariantVersion];if(b&&d)return d},getVueJSEnginePowerSpecification:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getEnginePowerSpecification];if(b&&d)return d},getVueJSAdditionalPrices:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getAdditionalPrices];if(b&&d)return d},getVueJSAccessories:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getAccessories];if(b&&d)return d},getVueJSEquipmentSpecs:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getEquipmentSpecs];if(b&&d)return d},getVueJSExteriorColour:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getExternColor];if(b&&d)return d},getVueJSStylePacks:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getStylePacks
15];if(b&&d)return d},getVueJSWarrantyServiceData:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getWarrantyServiceData];if(b&&d)return d},getVueJSWheelsData:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getWheelsData];if(b&&d)return d},getVueJSPacks:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getPacks];if(b&&d)return d},getVueJSVersionData:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store,d=b&&b.getters[c.vueJSConfigurator.getters.getVersionData];if(b&&d)return d},fetchVueJSVersionFullEquipmentSpecs:function(b){var d=this.getVueJSConfigurator(),e=d&&d.$store,f=this.getVueJSVersionsData();if(e&&f){var g=a.findWhere(f,{key:b});g&&void 0===g.fullEquipmentSpecs&&e.$services.TrayDataService.getTrayData({contentNode:c.vueJSConfigurator.contentJsonNodes.versions,specCode:b,dataFields:[c.vueJSConfigurator.specifications.fullEquipmentSpecs]})}},getVueJSConfigurationKey:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store;if(b)return b.state[c.vueJSConfigurator.state.configurationKey]},getVueJSUISpecificationCategoryKey:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store;if(b)return b.state[c.vueJSConfigurator.state.uiSpecificationCategoryKey]},getVueJSStartUrlHash:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store;if(b)return b.getters[c.vueJSConfigurator.getters.getStartUrlHash]},setVueJSStartUrlHash:function(a){var b=this.getVueJSConfigurator(),d=b&&b.$store;if(d)return d.dispatch(c.vueJSConfigurator.actions.updateStartUrlHash,a)},getVueJSNavState:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store;if(b&&b.state&&b.state.navigation&&b.state.navigation.navState)return JSON.parse(JSON.stringify(b.state.navigation.navState))},getVueJSHeaderDimensionValues:function(a){var b=this.getVueJSConfigurator(),d=b&&b.$store;if(d)return d.getters[c.vueJSConfigurator.getters.getVueJSHeaderDimensionValues]},getVueJSNonFinanceablePrice:function(){var a=this.getVueJSConfigurator(),b=a&&a.$store;return b&&b.state&&b.state.summary&&b.state.summary.nonFinanceablePrice}}}),define("rciPCHUtility",["jquery","underscore","rciProxyConstants_","logger"],function(a,b,c,d){function e(a){a=a||{},this.options=a}new d({prefix:"RciPCHUtility"});return e.prototype.isRciPricingEnabled=function(a){var d;return a&&a.map(function(a){a.priceCategory==c.PROXY_PARAM_KEYS.PRICEWITHTAX&&(d=!b.isEmpty(a.mapToValue))}),d},e.prototype.getPriceWithTaxandWithoutTax=function(a,b,c){var d,e="";return this.isRciPricingEnabled(c)&&a&&b&&c.map(function(c){if(c.priceCategory==b){e=c.mapToValue&&c.mapToValue.sourcePriceType;for(var f in a)e==f&&(d=a[e][0].price)}}),d},e.prototype.priceTotalTaxesandDiscounts=function(a,d,e){var f=[];return!b.isEmpty(e)&&!b.isEmpty(a)&&e.map(function(b){b.priceCategory==d&&b.mapToValues.map(function(b){for(var e in a)b.sourcePriceType==e&&(d==c.PROXY_PARAM_KEYS.PRICETOTALDISCOUNTS?f.push({type:b.targetKey,price:a[e][0].price}):f.push({key:b.targetKey,price:a[e][0].price}))})}),f},e.prototype.getAccessories=function(a,d){var e=[];if(!b.isEmpty(a)&&!b.isEmpty(d)){var f=this;a.map(function(a){return a.choices.map(function(a){e.push({key:a.choiceId,value:a.label,price:f.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHTAX,d),priceWoVAT:f.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,d)})})})}return e},e.prototype.getWarrantyServiceData=function(a,d){var e=[];return b.isEmpty(a.service)||e.push({key:a.service.choiceId,value:a.service.label,price:this.getPriceWithTaxandWithoutTax(a.service.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHTAX,d),priceWoVAT:this.getPriceWithTaxandWithoutTax(a.service.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,d)}),b.isEmpty(a.warranty)||e.push({key:a.warranty.choiceId,value:a.warranty.label,price:this.getPriceWithTaxandWithoutTax(a.warranty.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHTAX,d),priceWoVAT:this.getPriceWithTaxandWithoutTax(a.warranty.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,d)}),e},getChoicesBySelectionType=function(a,b){var c=[];return a&&a.length&&a.map(function(a){return a.choices.filter(function(a){a.selectionType==b&&c.push(a)})}),c},e.prototype.getEquipmentSpecs=function(a,b,d){var e=getChoicesBySelectionType(a,b),f=[];if(e&&e.length){var g=this;e.map(function(a){return f.push({key:a.choiceId,value:a.label,price:g.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHTAX,d),priceWoVAT:g.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,d)})})}return f},e.prototype.getExteriorColour=function(a,d){var e={};return a&&!b.isEmpty(a)&&(e.key=a.choiceId,e.value=a.label,e.price=this.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHTAX,d),e.priceWoVAT=this.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,d)),e},e.prototype.getStylePacks=function(a,d){var e=[];
15if(a&&!b.isEmpty(a)){var f=this;a.map(function(a){a.choices.map(function(a){e.push({key:a.choiceId,value:a.label,price:f.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHTAX,d),priceWoVAT:f.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,d)})})})}return e},e.prototype.getWheels=function(a,d){var e={};return a&&!b.isEmpty(a)&&(e.key=a.choiceId,e.value=a.label,e.price=this.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHTAX,d),e.priceWoVAT=this.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,d)),e},e.prototype.getUpholstery=function(a,d){var e={};return a&&!b.isEmpty(a)&&(e.key=a.choiceId,e.value=a.label,e.price=this.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHTAX,d),e.priceWoVAT=this.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,d)),e},e.prototype.getRciProxyDealerValue=function(a){switch(!0){case a.isConfigurator:return c.PROXY_PARAM_VALUES.DEALER_CFG;case a.isPersonalShowroom:return c.PROXY_PARAM_VALUES.DEALER_PS;default:return c.PROXY_PARAM_VALUES.DEALER}},e.prototype.getPacks=function(a,d){var e=[];if(a&&!b.isEmpty(a)){var f=this;a.map(function(a){return e.push({key:a.choiceId,value:a.label,price:f.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHTAX,d),priceWoVAT:f.getPriceWithTaxandWithoutTax(a.additionalPrices,c.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,d)})})}return e},e}),define("priceManager",["jquery","underscore","pricingConstants","rciProxyHelperSingleton","objectFactory","rciProxyConstants_","priceManagerConstants","storageManager","storageManagerKeys","vueJSHelpers","rciPCHUtility"],function(a,b,c,d,e,f,g,h,i,j,k){var l=function(a){this.options=a||{}};return l.prototype.getPreferredDealerCity=function(){var a;return this.options.storageManager&&(a=this.options.storageManager.loadItem(i.preferredDealerCity.itemKey)),a},l.prototype.getPreferredDealerState=function(){var a;return this.options.storageManager&&(a=this.options.storageManager.loadItem(i.preferredDealerState.itemKey)),a},l.prototype.isCityAndStateRequiredForRci=function(){var a=/in/i;return!!(this.options.HELIOS&&this.options.HELIOS.config&&this.options.HELIOS.config.common&&a.test(this.options.HELIOS.config.common.countryCode))},l.prototype.isPreferredDealerCitySet=function(){return b.isString(this.getPreferredDealerCity())},l.prototype.isPreferredDealerStateSet=function(){return b.isString(this.getPreferredDealerState())},l.prototype.isVehicleNci=function(a){return a&&a.vehicleType===f.PROXY_PARAM_VALUES.TYPE.NEW_VEHICLE},l.prototype.isVehicleUci=function(a){return a&&a.vehicleType===f.PROXY_PARAM_VALUES.TYPE.USED_VEHICLE},l.prototype.onRemoteServicesFinanceOfferPromiseDone=function(a,b){var c={};a?(c[g.PRICE_KEYS.HEADING_ONE]=a.heading,c[g.PRICE_KEYS.HEADING_TWO]=a.subHeading,c[g.PRICE_KEYS.LABEL]=a.label,c[g.PRICE_KEYS.LEGAL_ONE]=a.warning,c[g.PRICE_KEYS.LEGAL_TWO]=a.legalText,c[g.PRICE_KEYS.MONTHLY_PRICE]=a.monthlyPayment,c[g.PRICE_KEYS.TEXT]=a.text,b.resolve(c)):b.reject("remoteServices failed")},l.prototype.onRemoteServicesFinanceOfferPromiseFail=function(a,b,c){c.reject("remoteServices failed with: "+b)},l.prototype.requestFinancePriceFromRemoteServices=function(a,c){var d,e,f=this.getRemoteServices();f?(d={},c.currencyCode&&(d.currency=c.currencyCode),c.gradeKey&&(d.gradeId=c.gradeKey),c.priceCode&&(d.priceCode=c.priceCode),c.totalPrice&&(d.price=c.totalPrice),c.versionKey&&(d.versionId=c.versionKey),e=this.functionInvoker(f,"getFinanceOffer",[c.modelKey,c.modelPath,c.priceRepresentedAs,d]),e?e.done(b.partial(this.onRemoteServicesFinanceOfferPromiseDone,b,a)).fail(b.partial(this.onRemoteServicesFinanceOfferPromiseFail,b,b,a)):a.reject("remoteServices failed")):a.reject("remoteServices is undefined")},l.prototype.requestPrice=function(c){var d=a.Deferred(),e=!1;return b.isUndefined(c)&&(e=!0,d.reject("priceParams is undefined")),!e&&b.isUndefined(c.priceCode)&&(e=!0,d.reject("priceCode is undefined")),!e&&b.isUndefined(c.modelPath)&&(e=!0,d.reject("modelPath is undefined")),!e&&b.isUndefined(c.modelKey)&&
15(e=!0,d.reject("modelKey is undefined")),e||(b.isUndefined(c.totalPrice)?this.requestTotalPrice(d,c):this.requestFinancePrice(d,c)),d},l.prototype.requestFinancePrice=function(a,b){if(this.options.HELIOS&&this.options.HELIOS.config&&this.options.HELIOS.config.common&&this.options.HELIOS.config.common.pricing)switch(this.options.HELIOS.config.common.pricing.financeProvider){case c.FINANCE_PROVIDERS.RCI:b.priceRepresentedAs===c.REPRESENTED_AS.BEST_MONTHLY?this.requestFinancePriceFromRci(a,b):b.priceRepresentedAs===c.REPRESENTED_AS.FINANCE||b.priceRepresentedAs===c.REPRESENTED_AS.LEASE?this.requestFinancePriceFromRemoteServices(a,b):a.reject('Invalid "represented as" value ('+b.priceRepresentedAs+") for RCI market");break;default:a.reject("Attempt to request finance price with finance provider: "+this.options.HELIOS.config.common.pricing.financeProvider)}},l.prototype.requestFinancePriceFromRci=function(a,c){d.getConstructor().done(b.bind(function(d){var g,l,m,n,o={},p=e.getObject(d),q=this.options.HELIOS.config.common.pricing.rciCustomProxyParams,r=!1,s=new k;if(c.isConfigurator){var t=j.getVueJSAdditionalPrices(),u=j.getVueJSAccessories(),v=j.getVueJSEquipmentSpecs(),w=j.getVueJSInternColor(),x=j.getVueJSExteriorColour(),y=j.getVueJSStylePacks(),z=j.getVueJSUpholsteryKey(),A=j.getVueJSWarrantyServiceData(),B=j.getVueJSWheelsData(),C=j.getVueJSPacks(),D=j.getVueJSRciPriceMapping(),E=j.getVueJSVersionData(),F=j.getVueJSCapacity(),G=j.getVueJSTypeVariantVersion(),H=j.getVueJSEnginePowerSpecification();r=s.isRciPricingEnabled(D)}if(c.isPersonalShowroom){var t=c.additionalPrice,u=c.accessories,v=c.equipmentSpecs,w=c.interiorColour,x=c.exteriorColour,y=c.stylePacks,z=c.upholstery,A=c.warrantyServiceData,B=c.wheels,C=c.packs,D=c.rciPriceMapping,E=c.versionData,F=c.capacity,G=c.typeVariantVersion,H=c.enginePowerSpecification;r=s.isRciPricingEnabled(D)}if(q&&q.refresh)return!1;if(n=h.loadItem(i.finance.rciCustomProxyParams,{mode:i.c_cfg.sessionStorage}),p.addListener(f.EVENTS.PROXY_READY,b.bind(this.onRciProxyReady,this,p,a)),p.addListener(f.EVENTS.FINANCIAL_OFFER_RELOADED,b.bind(this.onRciFinancialOfferReloaded,this,p,a)),this.isVehicleNci(c)&&(g=c.vehicleModelSemiClair,l=c.modelKey),this.isVehicleUci(c)&&(g=l=c.vehicleElectricModelKey),!0===c.priceIncludesTax&&(m=f.PROXY_PARAM_VALUES.PRICE_TYPE.INCLUDES_TAX),!1===c.priceIncludesTax&&(m=f.PROXY_PARAM_VALUES.PRICE_TYPE.EXCLUDES_TAX),n&&n.version===c.versionKey?(p.setProxyParams(n),this.options.HELIOS.config.common.pricing.rciCustomProxyParams=n,h.deleteItem(i.finance.rciCustomProxyParams,{mode:i.c_cfg.sessionStorage})):q&&q.version===c.versionKey?p.setProxyParams(q):c.financeInput&&p.setProxyParams(c.financeInput),p.setProxyParam(f.PROXY_PARAM_KEYS.AGE,c.age),p.setProxyParam(f.PROXY_PARAM_KEYS.CALC_CURRENCY,this.options.HELIOS.config.common.currencyCode),p.setProxyParam(f.PROXY_PARAM_KEYS.CURRENCY,this.options.HELIOS.config.common.formatting.currency.symbol),p.setProxyParam(f.PROXY_PARAM_KEYS.DEALER,s.getRciProxyDealerValue(c)),p.setProxyParam(f.PROXY_PARAM_KEYS.ENGINE,c.vehicleFuelType),p.setProxyParam(f.PROXY_PARAM_KEYS.ID_VEHICLE,g),p.setProxyParam(f.PROXY_PARAM_KEYS.KM,c.km),p.setProxyParam(f.PROXY_PARAM_KEYS.LANG,this.options.HELIOS.config.common.locale.split("-")[0]),p.setProxyParam(f.PROXY_PARAM_KEYS.MODEL,c.vehicleModelCode),p.setProxyParam(f.PROXY_PARAM_KEYS.MODEL_C,c.vehicleModelName),p.setProxyParam(f.PROXY_PARAM_KEYS.MODEL_SPEC_CODE,l),p.setProxyParam(f.PROXY_PARAM_KEYS.POWER,c.vehicleFiscalHorsepower),p.setProxyParam(f.PROXY_PARAM_KEYS.POWER_WO_OPTIONS,c.Powerwooptions),p.setProxyParam(f.PROXY_PARAM_KEYS.PRICE,r?s.getPriceWithTaxandWithoutTax(t,f.PROXY_PARAM_KEYS.PRICEWITHTAX,D):c.totalPrice),p.setProxyParam(f.PROXY_PARAM_KEYS.PRICE_WO_OPTIONS,c.priceWoOptions),p.setProxyParam(f.PROXY_PARAM_KEYS.PRICE_TYPE,m),p.setProxyParam(f.PROXY_PARAM_KEYS.SEG,c.vehicleSeg),p.setProxyParam(f.PROXY_PARAM_KEYS.STYLE,f.PROXY_PARAM_VALUES.STYLE),p.setProxyParam(f.PROXY_PARAM_KEYS.TYPE,c.vehicleType),p.setProxyParam(f.PROXY_PARAM_KEYS.VEHICLE_BRAND,c.vehicleBrand),p.setProxyParam(f.PROXY_PARAM_KEYS.VERSION,c.vehicleVersionCode),p.setProxyParam(f.PROXY_PARAM_KEYS.VERSION_C,c.vehicleVersionName),p.setProxyParam(f.PROXY_PARAM_KEYS.VH_ID,c.vhid),p.setProxyParam(f.PROXY_PARAM_KEYS.EIM_CODE,c.eimCode),r){if(b.isEmpty(E)||(p.setProxyParam(f.PROXY_PARAM_KEYS.PRICEWOOPTIONSWOVAT,s.getPriceWithTaxandWithoutTax(E.additionalPrices,f.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,D)),p.setProxyParam(f.PROXY_PARAM_KEYS.PRICE_WO_OPTIONS,s.getPriceWithTaxandWithoutTax(E.additionalPrices,f.PROXY_PARAM_KEYS.PRICEWITHTAX,D))),b.isEmpty(z)||p.setProxyParam(f.PROXY_PARAM_KEYS.UPHOLSTRAY,z.choiceId),b.isEmpty(w)||p.setProxyParam(f.PROXY_PARAM_KEYS.INTERNCOLOR,w.choiceId),b.isEmpty(x)||p.setProxyParam(f.PROXY_PARAM_KEYS.EXTERNCOLOR,x.choiceId),b.isEmpty(F)||p.setProxyParam(f.PROXY_PARAM_KEYS.CAPACITY,F.value),b.isEmpty(G)||p.setProxyParam(f.PROXY_PARAM_KEYS.TYPEVARIANTVERSION,G.label),b.isEmpty(j.getVueJSEnginePowerSpecification())||
15(j.getVueJSEnginePowerSpecification()[0].numericValueForHp&&p.setProxyParam(f.PROXY_PARAM_KEYS.POWERHP,j.getVueJSEnginePowerSpecification()[0].numericValueForHp),j.getVueJSEnginePowerSpecification()[0].numericValueForKw&&p.setProxyParam(f.PROXY_PARAM_KEYS.POWERKW,j.getVueJSEnginePowerSpecification()[0].numericValueForKw)),!b.isEmpty(u)){var I=s.getAccessories(u,D);I.length&&p.setProxyParam(f.PROXY_PARAM_KEYS.PRICE_TOTAL_ACCESSORIES,I)}if(b.isEmpty(A.service)&&b.isEmpty(A.warranty)||p.setProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALSERVICES,s.getWarrantyServiceData(A,D)),b.isEmpty(t)||(p.setProxyParam(f.PROXY_PARAM_KEYS.PRICEWOVAT,s.getPriceWithTaxandWithoutTax(t,f.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,D)),p.setProxyParam(f.PROXY_PARAM_KEYS.PRICEREBATE,s.getPriceWithTaxandWithoutTax(t,f.PROXY_PARAM_KEYS.PRICEREBATE,D)),p.setProxyParam(f.PROXY_PARAM_KEYS.PRICEREBATEWOVAT,s.getPriceWithTaxandWithoutTax(t,f.PROXY_PARAM_KEYS.PRICEREBATEWOVAT,D))),b.isEmpty(v)||p.setProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,s.getEquipmentSpecs(v,f.PROXY_PARAM_KEYS.USER,D)),!b.isEmpty(x)){var J=p.getProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALOPTIONS);J.push(s.getExteriorColour(x,D)),p.setProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,J)}if(!b.isEmpty(y)){var J=p.getProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALOPTIONS),y=s.getStylePacks(y,D);p.setProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,Array.prototype.concat(J,y))}if(!b.isEmpty(B)){var J=p.getProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALOPTIONS);J.push(s.getWheels(B,D)),p.setProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,J)}if(!b.isEmpty(z)){var J=p.getProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALOPTIONS);J.push(s.getUpholstery(z,D)),p.setProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,J)}if(!b.isEmpty(C)){var J=p.getProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALOPTIONS),C=s.getPacks(C,D);p.setProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,Array.prototype.concat(J,C))}p.setProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALDISCOUNTS,s.priceTotalTaxesandDiscounts(t,f.PROXY_PARAM_KEYS.PRICETOTALDISCOUNTS,D)),p.setProxyParam(f.PROXY_PARAM_KEYS.PRICETOTALTAXES,s.priceTotalTaxesandDiscounts(t,f.PROXY_PARAM_KEYS.PRICETOTALTAXES,D))}c.isPersonalShowroom&&(b.isEmpty(H)||(H[0].numericValueForHp&&p.setProxyParam(f.PROXY_PARAM_KEYS.POWERHP,H[0].numericValueForHp),H[0].numericValueForKw&&p.setProxyParam(f.PROXY_PARAM_KEYS.POWERKW,H[0].numericValueForKw))),c.isPersonalShowroomV3&&(b.isEmpty(c.enginePowerSpecifications)||(c.enginePowerSpecifications[0].numericValueForHp&&p.setProxyParam(f.PROXY_PARAM_KEYS.POWERHP,c.enginePowerSpecifications[0].numericValueForHp),c.enginePowerSpecifications[0].numericValueForKw&&p.setProxyParam(f.PROXY_PARAM_KEYS.POWERKW,c.enginePowerSpecifications[0].numericValueForKw))),b.isUndefined(c.simulatorPowerHpCalc)||p.setProxyParam(f.PROXY_PARAM_KEYS.POWERHP,c.simulatorPowerHpCalc),b.isUndefined(c.simulatorPowerKwCalc)||p.setProxyParam(f.PROXY_PARAM_KEYS.POWERKW,c.simulatorPowerKwCalc),Array.isArray(c.priceTotalAccessories)&&c.priceTotalAccessories.length&&!r&&p.setProxyParam(f.PROXY_PARAM_KEYS.PRICE_TOTAL_ACCESSORIES,c.priceTotalAccessories),this.isCityAndStateRequiredForRci()&&this.isPreferredDealerCitySet()&&this.isPreferredDealerStateSet()&&(p.setProxyParam(f.PROXY_PARAM_KEYS.CITY,this.getPreferredDealerCity()),p.setProxyParam(f.PROXY_PARAM_KEYS.STATE,this.getPreferredDealerState())),o[f.PROXY_PARAM_KEYS.BRAND]=this.options.HELIOS.config.brand,o[f.PROXY_PARAM_KEYS.COUNTRY]=this.options.HELIOS.config.common.countryCode,p.setProxyParams(o),b.isEmpty(c.pchMissingParams)||p.setProxyParams(c.pchMissingParams)},this))},l.prototype.onRciProxyReady=function(a,b){a.calculateFinancialOffer()},l.prototype.onRciFinancialOfferReloaded=function(a,c){var d=a.getFinancialOffer(),e={},f=d.getParams();parseInt(d.getErrorCode(),10)>0?c.reject(d.getErrorCode()+" - "+d.getErrorDisplayMessage()):b.isUndefined(f.detailedOffer)?c.reject(d.getParam("errorMessage")):(e[g.PRICE_KEYS.MONTHLY_PRICE]=f.monthlyPayment,e[g.PRICE_KEYS.LABEL]=d.getShortOfferBody(),e[g.PRICE_KEYS.LEGAL_ONE]=d.getTeachingSentence(),e[g.PRICE_KEYS.SIMULATOR_LABEL]=d.getShortOfferSimulatorLink(),e[g.PRICE_KEYS.HEADING_ONE]=d.getDetailedOfferH1(),e[g.PRICE_KEYS.HEADING_TWO]=d.getDetailedOfferH2(),e[g.PRICE_KEYS.TEXT]=d.getDetailedOfferText(),e[g.PRICE_KEYS.LEGAL_TWO]=d.getDetailedOfferLegalText(),e[g.PRICE_KEYS.IS_FINANCE_CALCULATOR_ENABLED]=!!d.getShortOfferSimulatorLink(),e[g.PRICE_KEYS.APR]=d.getApr(),e[g.PRICE_KEYS.DOWN_PAYMENT]=d.getDownpayment(),e[g.PRICE_KEYS.DURATION]=d.getDuration(),c.resolve(e))},l.prototype.handlePricingRemoteServices=function(a,c,d,e,f,g){a=b.isEmpty(d.versionKey)||b.isEmpty(d.gradeKey)?b.isEmpty(d.gradeKey)?this.functionInvoker(c,"getModelPriceByZone",[d.modelKey,d.modelPath,d.priceCode,f,e]):this.functionInvoker(c,"getGradePriceByZone",[d.modelKey,d.modelPath,d.gradeKey,d.priceCode,f,e]):this.functionInvoker(c,"getVersionPriceByZone",[d.modelKey,d.modelPath,d.gradeKey,d.versionKey,d.priceCode,f,e]),a?a.done(b.partial(this.onRemoteServicesTotalPricePromiseDone,b,g)).fail(b.partial(this.onRemoteServicesTotalPricePromiseFail,b,b,g)):g.reject("remoteServices failed")},l.prototype.requestTotalPrice=function(c,d){var e,f=this.getRemoteServices(),h=!1;if(b.isUndefined(f)&&(h=!0,c.reject("remoteServices is undefined")),d&&d.isRegionalPriceEnabled){var i={};if(d.isPriceFromWebserviceEnabled)d.userPostalCode||d.postalZone.code?this.handlePricingRemoteServices(e,f,d,d.userPostalCode,d.postalZone,c):d.isDefaultPostCodeEnabled&&d.defaultPostCode?this.handlePricingRemoteServices(e,f,d,d.defaultPostCode,d.defaultPostalCodeZone,c):c.reject("remoteServices failed");else if(!b.isEmpty(d.priceFromPageJson)){var i={}
16;b.isEmpty(d.versionKey)||b.isEmpty(d.gradeKey)?b.isEmpty(d.gradeKey)?a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode])&&(i.price=this.options.HELIOS.vehicleData[d.modelNode][d.priceCode].modelPrice):a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode,"grades",d.gradeKey])&&(i.price=this.options.HELIOS.vehicleData[d.modelNode][d.priceCode].grades[d.gradeKey].gradePrice):a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode,"grades",d.gradeKey,"versions",d.versionKey])&&(i.price=this.options.HELIOS.vehicleData[d.modelNode][d.priceCode].grades[d.gradeKey].versions[d.versionKey]),i.price?this.onRemoteServicesTotalPricePromiseDone(i,c):c.reject("remoteServices failed")}}else if(d&&d.isOfferPriceEnabled)e=b.isEmpty(d.versionKey)||b.isEmpty(d.gradeKey)?b.isEmpty(d.gradeKey)?this.functionInvoker(f,"getModelPrice",[d.modelKey,d.modelPath,d.priceCode]):this.functionInvoker(f,"getGradePrice",[d.modelKey,d.modelPath,d.gradeKey,d.priceCode]):this.functionInvoker(f,"getVersionPrice",[d.modelKey,d.modelPath,d.gradeKey,d.versionKey,d.priceCode]),e?e.done(b.partial(this.onRemoteServicesTotalPricePromiseDone,b,c)).fail(b.partial(this.onRemoteServicesTotalPricePromiseFail,b,b,c)):c.reject("remoteServices failed");else if(!h&&d&&d.isC2gWebOfferEnabled&&!b.isEmpty(d.priceFromPageJson)){var j=!0,i={};if(b.isEmpty(d.versionKey)||b.isEmpty(d.gradeKey))if(b.isEmpty(d.gradeKey)){if(a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode])&&(i.price=this.options.HELIOS.vehicleData[d.modelNode][d.priceCode].modelPrice),b.isEmpty(d.c2gOfferPriceType)||d.c2gOfferPriceType===g.PRICE_KEYS.NONE||a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.c2gOfferPriceType])&&(i.offerPrice=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].modelPrice),!b.isEmpty(d.c2gOfferDiscountpriceType)&&d.c2gOfferDiscountpriceType!==g.PRICE_KEYS.NONE&&a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.c2gOfferDiscountpriceType])){var k=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].bestPriceGradeKey,l=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].bestPriceVersionKey;a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode,"grades",d.gradeKey,"versions",d.versionKey])?i.discountPrice=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferDiscountpriceType].grades[k].versions[l]:i.discountPrice=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferDiscountpriceType].modelPrice}if(!b.isEmpty(i.offerPrice)&&!b.isEmpty(i.price)&&parseInt(i.offerPrice)<parseInt(i.price)){if(i.offerExists=!0,a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode])&&a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.c2gOfferPriceType])){var k=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].bestPriceGradeKey,l=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].bestPriceVersionKey;a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode,"grades",d.gradeKey,"versions",d.versionKey])?i.priceForDiscountDiscliamer=this.options.HELIOS.vehicleData[d.modelNode][d.priceCode].grades[k].versions[l]:(j=!1,e=this.functionInvoker(f,"getVersionPrice",[d.modelKey,d.modelPath,k,l,d.c2gOfferDiscountpriceType]),e?e.done(b.partial(this.onRemoteServicesOfferPricePromiseDone,b,c,i)).fail(b.partial(this.onRemoteServicesOfferPricePromiseFail,b,c)):c.reject("remoteServices failed")),d.gradeKey=k,d.versionKey=l}a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.c2gOfferPriceType])&&(i.offerDisclaimer=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].priceDisclaimer)}}else{if(a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode,"grades",d.gradeKey])&&(i.price=this.options.HELIOS.vehicleData[d.modelNode][d.priceCode].grades[d.gradeKey].gradePrice),b.isEmpty(d.c2gOfferPriceType)||d.c2gOfferPriceType===g.PRICE_KEYS.NONE||a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.c2gOfferPriceType,"grades",d.gradeKey])&&(i.offerPrice=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].grades[d.gradeKey].gradePrice),!b.isEmpty(d.c2gOfferDiscountpriceType)&&d.c2gOfferDiscountpriceType!==g.PRICE_KEYS.NONE&&a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.c2gOfferDiscountpriceType,"grades",d.gradeKey])){var l=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].grades[d.gradeKey].bestPriceVersionKey;i.discountPrice=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferDiscountpriceType].grades[d.gradeKey].versions[l]}if(!b.isEmpty(i.offerPrice)&&!b.isEmpty(i.price)){if(parseInt(i.offerPrice)<parseInt(i.price)){i.offerExists=!0;var l,m;a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode,"grades",d.gradeKey])&&a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.c2gOfferPriceType,"grades",d.gradeKey])&&(l=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].grades[d.gradeKey].bestPriceVersionKey,i.priceForDiscountDiscliamer=this.options.HELIOS.vehicleData[d.modelNode][d.priceCode].grades[d.gradeKey].versions[l]),a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.c2gOfferPriceType,"grades",d.gradeKey])&&(m=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].grades[d.gradeKey],i.offerDisclaimer=m.priceDisclaimer),d.versionKey=l}
16if(parseInt(i.offerPrice)==parseInt(i.price)){var l;a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode,"grades",d.gradeKey])&&a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.c2gOfferPriceType,"grades",d.gradeKey])&&(l=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].grades[d.gradeKey].bestPriceVersionKey),d.versionKey=l}}}else if(a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode,"grades",d.gradeKey,"versions",d.versionKey])&&(i.price=this.options.HELIOS.vehicleData[d.modelNode][d.priceCode].grades[d.gradeKey].versions[d.versionKey]),b.isEmpty(d.c2gOfferPriceType)||d.c2gOfferPriceType===g.PRICE_KEYS.NONE||a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.c2gOfferPriceType,"grades",d.gradeKey,"versions",d.versionKey])&&(i.offerPrice=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].grades[d.gradeKey].versions[d.versionKey]),b.isEmpty(d.c2gOfferDiscountpriceType)||d.c2gOfferDiscountpriceType===g.PRICE_KEYS.NONE||a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.c2gOfferDiscountpriceType,"grades",d.gradeKey,"versions",d.versionKey])&&(i.discountPrice=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferDiscountpriceType].grades[d.gradeKey].versions[d.versionKey]),!b.isEmpty(i.offerPrice)&&!b.isEmpty(i.price)&&parseInt(i.offerPrice)<parseInt(i.price)){var n;i.offerExists=!0,i.versionPrice=!0,i.priceForDiscountDiscliamer=i.price,a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.c2gOfferPriceType,"grades",d.gradeKey,"versionDisclaimers"])&&(n=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].grades[d.gradeKey].bestPriceVersionKey,i.offerDisclaimer=this.options.HELIOS.vehicleData[d.modelNode][d.c2gOfferPriceType].grades[d.gradeKey].versionDisclaimers[n])}j&&(i.price?this.onRemoteServicesTotalPricePromiseDone(i,c):c.reject("remoteServices failed"))}else if(!h)if(b.isEmpty(d.priceFromPageJson))e=b.isEmpty(d.versionKey)||b.isEmpty(d.gradeKey)?b.isEmpty(d.gradeKey)?this.functionInvoker(f,"getModelPrice",[d.modelKey,d.modelPath,d.priceCode]):this.functionInvoker(f,"getGradePrice",[d.modelKey,d.modelPath,d.gradeKey,d.priceCode]):this.functionInvoker(f,"getVersionPrice",[d.modelKey,d.modelPath,d.gradeKey,d.versionKey,d.priceCode]),e?e.done(b.partial(this.onRemoteServicesTotalPricePromiseDone,b,c)).fail(b.partial(this.onRemoteServicesTotalPricePromiseFail,b,b,c)):c.reject("remoteServices failed");else{var i={};b.isEmpty(d.versionKey)||b.isEmpty(d.gradeKey)?b.isEmpty(d.gradeKey)?a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode])&&(i.price=this.options.HELIOS.vehicleData[d.modelNode][d.priceCode].modelPrice):a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode,"grades",d.gradeKey])&&(i.price=this.options.HELIOS.vehicleData[d.modelNode][d.priceCode].grades[d.gradeKey].gradePrice):a.isNestedProp(this.options.HELIOS,["vehicleData",d.modelNode,d.priceCode,"grades",d.gradeKey,"versions",d.versionKey])&&(i.price=this.options.HELIOS.vehicleData[d.modelNode][d.priceCode].grades[d.gradeKey].versions[d.versionKey]),i.price?this.onRemoteServicesTotalPricePromiseDone(i,c):c.reject("remoteServices failed")}},l.prototype.onRemoteServicesTotalPricePromiseDone=function(a,b){a?b.resolve(a):b.reject("remoteServices failed")},l.prototype.onRemoteServicesTotalPricePromiseFail=function(a,b,c){c.reject("remoteServices failed with: "+b)},l.prototype.functionInvoker=function(a,b,c){return a&&a[b].apply(a,c)},l.prototype.getRemoteServices=function(){return this.options.remoteServices},l.prototype.onRemoteServicesOfferPricePromiseDone=function(a,b,c){a?(c.discountPrice=a.price,b.resolve(c)):b.reject("remoteServices failed")},l.prototype.onRemoteServicesOfferPricePromiseFail=function(a,b){b.reject("remoteServices failed with: "+a)},l}),define("financeManagerConstants",[],function(){"use strict";return{PARAMS:{CUSTOM:"custom"},DATA:{RCI_PROXY_INSTANCE:"rciProxyInstance"},EVENTS:{PRICE_CHANGE:"priceChange",SIMULATOR_RENDERED:"simulatorRendered",CUSTOM_PROXY_PARAMS:"customProxyParams"}}}),define("financeManager",["jquery","underscore","rciProxyHelperSingleton","objectFactory","rciProxyConstants_","remoteServices","financeManagerConstants","vueJSHelpers","rciPCHUtility"],function(a,b,c,d,e,f,g,h,i){var j=function(a){this.options=a};return j.prototype.isVehicleNci=function(a){return a&&a.vehicleType===e.PROXY_PARAM_VALUES.TYPE.NEW_VEHICLE},j.prototype.isVehicleUci=function(a){return a&&a.vehicleType===e.PROXY_PARAM_VALUES.TYPE.USED_VEHICLE},j.prototype.getPriceType=function(a){return a.priceIncludesTax?e.PROXY_PARAM_VALUES.PRICE_TYPE.INCLUDES_TAX:e.PROXY_PARAM_VALUES.PRICE_TYPE.EXCLUDES_TAX},j.prototype.showCalculator=function(f,g,k){var l,m=a.Deferred();return c.getConstructor().done(b.bind(function(a){var c,n,o=this.getPriceType(g),p={},q=this.options.HELIOS.config.common.pricing.rciCustomProxyParams,r=!1,s=new i;
16if(l=d.getObject(a),q&&q.version===g.versionKey&&l.setProxyParams(q),g.financeInput&&l.setProxyParams(g.financeInput),g.isConfigurator){var t=h.getVueJSRciPriceMapping(),r=s.isRciPricingEnabled(t);if(r)var u=h.getVueJSAdditionalPrices(),v=h.getVueJSAccessories(),w=h.getVueJSEquipmentSpecs(),x=h.getVueJSInternColor(),y=h.getVueJSExteriorColour(),z=h.getVueJSStylePacks(),A=h.getVueJSUpholsteryKey(),B=h.getVueJSWarrantyServiceData(),C=h.getVueJSWheelsData(),D=h.getVueJSPacks(),E=h.getVueJSVersionData(),F=h.getVueJSCapacity(),G=h.getVueJSTypeVariantVersion(),H=h.getVueJSEnginePowerSpecification()}if(g.isPersonalShowroom){var t=g.rciPriceMapping,r=s.isRciPricingEnabled(t);if(r)var u=g.additionalPrice,v=g.accessories,w=g.equipmentSpecs,x=g.interiorColour,y=g.exteriorColour,z=g.stylePacks,A=g.upholstery,B=g.warrantyServiceData,C=g.wheels,D=g.packs,E=g.versionData,F=g.capacity,G=g.typeVariantVersion,H=g.enginePowerSpecification}if(this.isVehicleNci(g)&&(c=g.vehicleModelSemiClair,n=g.modelKey),this.isVehicleUci(g)&&(c=n=g.vehicleElectricModelKey),l.setProxyParam(e.PROXY_PARAM_KEYS.AGE,g.age),l.setProxyParam(e.PROXY_PARAM_KEYS.CALC_CURRENCY,g.currencyCode||this.options.HELIOS.config.common.currencyCode),l.setProxyParam(e.PROXY_PARAM_KEYS.CURRENCY,this.options.HELIOS.config.common.formatting.currency.symbol),l.setProxyParam(e.PROXY_PARAM_KEYS.DEALER,s.getRciProxyDealerValue(g)),l.setProxyParam(e.PROXY_PARAM_KEYS.ENGINE,g.vehicleFuelType),l.setProxyParam(e.PROXY_PARAM_KEYS.ID_VEHICLE,c),l.setProxyParam(e.PROXY_PARAM_KEYS.KM,g.km),l.setProxyParam(e.PROXY_PARAM_KEYS.LANG,this.options.HELIOS.config.common.locale.split("-")[0]),l.setProxyParam(e.PROXY_PARAM_KEYS.MODEL,g.vehicleModelCode),l.setProxyParam(e.PROXY_PARAM_KEYS.MODEL_C,g.vehicleModelName),l.setProxyParam(e.PROXY_PARAM_KEYS.MODEL_SPEC_CODE,n),l.setProxyParam(e.PROXY_PARAM_KEYS.POWER,g.vehicleFiscalHorsepower),l.setProxyParam(e.PROXY_PARAM_KEYS.POWER_WO_OPTIONS,g.Powerwooptions),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE,r?s.getPriceWithTaxandWithoutTax(u,e.PROXY_PARAM_KEYS.PRICEWITHTAX,t):g.totalPrice),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_WO_OPTIONS,g.priceWoOptions),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_TYPE,o),l.setProxyParam(e.PROXY_PARAM_KEYS.SEG,g.vehicleSeg),l.setProxyParam(e.PROXY_PARAM_KEYS.STYLE,e.PROXY_PARAM_VALUES.STYLE),l.setProxyParam(e.PROXY_PARAM_KEYS.TYPE,g.vehicleType),l.setProxyParam(e.PROXY_PARAM_KEYS.VEHICLE_BRAND,g.vehicleBrand),l.setProxyParam(e.PROXY_PARAM_KEYS.VERSION,g.versionKey),l.setProxyParam(e.PROXY_PARAM_KEYS.VERSION_C,g.vehicleVersionName),l.setProxyParam(e.PROXY_PARAM_KEYS.EIM_CODE,g.eimCode),l.setProxyParam(e.PROXY_PARAM_KEYS.VH_ID,g.vhid),r){if(b.isEmpty(E)||(l.setProxyParam(e.PROXY_PARAM_KEYS.PRICEWOOPTIONSWOVAT,s.getPriceWithTaxandWithoutTax(E.additionalPrices,e.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,t)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_WO_OPTIONS,s.getPriceWithTaxandWithoutTax(E.additionalPrices,e.PROXY_PARAM_KEYS.PRICEWITHTAX,t))),b.isEmpty(A)||l.setProxyParam(e.PROXY_PARAM_KEYS.UPHOLSTRAY,A.choiceId),b.isEmpty(x)||l.setProxyParam(e.PROXY_PARAM_KEYS.INTERNCOLOR,x.choiceId),b.isEmpty(y)||l.setProxyParam(e.PROXY_PARAM_KEYS.EXTERNCOLOR,y.choiceId),b.isEmpty(F)||l.setProxyParam(e.PROXY_PARAM_KEYS.CAPACITY,F.value),b.isEmpty(G)||l.setProxyParam(e.PROXY_PARAM_KEYS.TYPEVARIANTVERSION,G.label),b.isEmpty(h.getVueJSEnginePowerSpecification())||
16(h.getVueJSEnginePowerSpecification()[0].numericValueForHp&&l.setProxyParam(e.PROXY_PARAM_KEYS.POWERHP,h.getVueJSEnginePowerSpecification()[0].numericValueForHp),h.getVueJSEnginePowerSpecification()[0].numericValueForKw&&l.setProxyParam(e.PROXY_PARAM_KEYS.POWERKW,h.getVueJSEnginePowerSpecification()[0].numericValueForKw)),v&&v.length){var I=s.getAccessories(v,t);I.length&&l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_TOTAL_ACCESSORIES,I)}if(b.isEmpty(u)||(l.setProxyParam(e.PROXY_PARAM_KEYS.PRICEWOVAT,s.getPriceWithTaxandWithoutTax(u,e.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,t)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICEREBATE,s.getPriceWithTaxandWithoutTax(u,e.PROXY_PARAM_KEYS.PRICEREBATE,t)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICEREBATEWOVAT,s.getPriceWithTaxandWithoutTax(u,e.PROXY_PARAM_KEYS.PRICEREBATEWOVAT,t))),b.isEmpty(B.service)&&b.isEmpty(B.warranty)||l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALSERVICES,s.getWarrantyServiceData(B,t)),b.isEmpty(w)||l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,s.getEquipmentSpecs(w,e.PROXY_PARAM_KEYS.USER,t)),!b.isEmpty(y)){var J=l.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS);J.push(s.getExteriorColour(y,t)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,J)}if(!b.isEmpty(z)){var J=l.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS),z=s.getStylePacks(z,t);l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,Array.prototype.concat(J,z))}if(!b.isEmpty(C)){var J=l.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS);J.push(s.getWheels(C,t)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,J)}if(!b.isEmpty(A)){var J=l.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS);J.push(s.getUpholstery(A,t)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,J)}if(!b.isEmpty(D)){var J=l.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS),K=s.getPacks(D,t);l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,Array.prototype.concat(J,K))}l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALDISCOUNTS,s.priceTotalTaxesandDiscounts(u,e.PROXY_PARAM_KEYS.PRICETOTALDISCOUNTS,t)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALTAXES,s.priceTotalTaxesandDiscounts(u,e.PROXY_PARAM_KEYS.PRICETOTALTAXES,t))}g.isPersonalShowroom&&(b.isEmpty(H)||(H[0].numericValueForHp&&l.setProxyParam(e.PROXY_PARAM_KEYS.POWERHP,H[0].numericValueForHp),H[0].numericValueForKw&&l.setProxyParam(e.PROXY_PARAM_KEYS.POWERKW,H[0].numericValueForKw))),g.isPersonalShowroomV3&&(b.isEmpty(g.enginePowerSpecifications)||(g.enginePowerSpecifications[0].numericValueForHp&&l.setProxyParam(e.PROXY_PARAM_KEYS.POWERHP,g.enginePowerSpecifications[0].numericValueForHp),g.enginePowerSpecifications[0].numericValueForKw&&l.setProxyParam(e.PROXY_PARAM_KEYS.POWERKW,g.enginePowerSpecifications[0].numericValueForKw))),b.isUndefined(g.simulatorPowerHpCalc)||l.setProxyParam(e.PROXY_PARAM_KEYS.POWERHP,g.simulatorPowerHpCalc),b.isUndefined(g.simulatorPowerKwCalc)||l.setProxyParam(e.PROXY_PARAM_KEYS.POWERKW,g.simulatorPowerKwCalc),Array.isArray(g.priceTotalAccessories)&&g.priceTotalAccessories.length&&!r&&l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_TOTAL_ACCESSORIES,g.priceTotalAccessories),p[e.PROXY_PARAM_KEYS.BRAND]=this.options.HELIOS.config.brand,p[e.PROXY_PARAM_KEYS.COUNTRY]=this.options.HELIOS.config.common.countryCode,l.setProxyParams(p),b.isEmpty(g.pchMissingParams)||l.setProxyParams(g.pchMissingParams),l.addListener(e.EVENTS.PROXY_READY,b.bind(this.onRciProxyReady,this,f,l)),l.addListener(e.EVENTS.FINANCIAL_OFFER_RELOADED,b.bind(this.onRciFinancialOfferReloaded,this,l,k)),l.addListener(e.EVENTS.SIMULATOR_RENDER_COMPLETED,b.bind(this.onSimulatorRenderCompleted,this,l,k)),l.addListener(e.EVENTS.BOOK_TEST_DRIVE_BUTTON_CLICK,b.bind(this.onBookTestDriveButtonClick,this)),j.prototype.RciProxyInstance=l,m.resolve()},this)).fail(b.bind(function(){m.reject()},this)),m},j.prototype.showCalculatorForInventory=function(f,g,h,i){var k,l=a.Deferred();return c.getConstructor().done(b.bind(function(a){var c,m,n,o={};k=d.getObject(a),i?k.setProxyParams(i):(n=this.getPriceType(g),g.financeInput&&k.setProxyParams(g.financeInput),this.isVehicleNci(g)&&(c=g.vehicleModelSemiClair,m=g.modelKey),this.isVehicleUci(g)&&(c=m=g.vehicleElectricModelKey),k.setProxyParam(e.PROXY_PARAM_KEYS.AGE,g.age),k.setProxyParam(e.PROXY_PARAM_KEYS.CALC_CURRENCY,g.currencyCode||this.options.HELIOS.config.common.currencyCode),k.setProxyParam(e.PROXY_PARAM_KEYS.CURRENCY,this.options.HELIOS.config.common.formatting.currency.symbol),k.setProxyParam(e.PROXY_PARAM_KEYS.DEALER,e.PROXY_PARAM_VALUES.DEALER),k.setProxyParam(e.PROXY_PARAM_KEYS.ENGINE,g.vehicleFuelType),k.setProxyParam(e.PROXY_PARAM_KEYS.ID_VEHICLE,c),k.setProxyParam(e.PROXY_PARAM_KEYS.KM,g.km),k.setProxyParam(e.PROXY_PARAM_KEYS.LANG,this.options.HELIOS.config.common.locale.split("-")[0]),k.setProxyParam(e.PROXY_PARAM_KEYS.MODEL,g.vehicleModelCode),k.setProxyParam(e.PROXY_PARAM_KEYS.MODEL_C,g.vehicleModelName),k.setProxyParam(e.PROXY_PARAM_KEYS.MODEL_SPEC_CODE,m),k.setProxyParam(e.PROXY_PARAM_KEYS.POWER,g.vehicleFiscalHorsepower),k.setProxyParam(e.PROXY_PARAM_KEYS.POWER_WO_OPTIONS,g.Powerwooptions),k.setProxyParam(e.PROXY_PARAM_KEYS.PRICE,g.totalPrice),k.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_WO_OPTIONS,g.priceWoOptions),k.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_TYPE,n),k.setProxyParam(e.PROXY_PARAM_KEYS.SEG,g.vehicleSeg),k.setProxyParam(e.PROXY_PARAM_KEYS.STYLE,e.PROXY_PARAM_VALUES.STYLE),k.setProxyParam(e.PROXY_PARAM_KEYS.TYPE,g.vehicleType),k.setProxyParam(e.PROXY_PARAM_KEYS.VEHICLE_BRAND,g.vehicleBrand),k.setProxyParam(e.PROXY_PARAM_KEYS.VERSION,g.versionKey),k.setProxyParam(e.PROXY_PARAM_KEYS.VERSION_C,g.vehicleVersionName),k.setProxyParam(e.PROXY_PARAM_KEYS.EIM_CODE,g.eimCode),k.setProxyParam(e.PROXY_PARAM_KEYS.VH_ID,g.vhid),Array.isArray(g.priceTotalAccessories)&&g.priceTotalAccessories.length&&k.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_TOTAL_ACCESSORIES,g.priceTotalAccessories),o[e.PROXY_PARAM_KEYS.BRAND]=this.options.HELIOS.config.brand,o[e.PROXY_PARAM_KEYS.COUNTRY]=this.options.HELIOS.config.common.countryCode,g.typeOfData&&g.typeOfRequest&&(k.setProxyParam(e.PROXY_PARAM_KEYS.TYPE_OF_DATA,g.typeOfData),k.setProxyParam(e.PROXY_PARAM_KEYS.TYPE_OF_REQUEST,g.typeOfRequest)),k.setProxyParams(o)),k.addListener(e.EVENTS.PROXY_READY,b.b
16ind(this.onRciProxyReady,this,f,k)),k.addListener(e.EVENTS.FINANCIAL_OFFER_RELOADED,b.bind(this.onRciFinancialOfferReloadedForInventory,this,k,h)),k.addListener(e.EVENTS.SIMULATOR_RENDER_COMPLETED,b.bind(this.onSimulatorRenderCompleted,this,k,h)),k.addListener(e.EVENTS.BOOK_TEST_DRIVE_BUTTON_CLICK,b.bind(this.onBookTestDriveButtonClick,this)),j.prototype.RciProxyInstance=k,l.resolve()},this)).fail(b.bind(function(){l.reject()},this)),l},j.prototype.getRciProxyInstance=function(){return j.prototype.RciProxyInstance},j.prototype.onRciProxyReady=function(b,c){c.isSimulatorExist()?c.refreshSimulator(!0):(a(b).empty(),c.createSimulator(b))},j.prototype.onBookTestDriveButtonClick=function(a,b){var c=this.options.settings.financialSimulatorBatdUrl;c&&window.open(c)},j.prototype.onRciFinancialOfferReloaded=function(a,b){var c=a.getFinancialOffer(g.PARAMS.CUSTOM);b.data(g.DATA.RCI_PROXY_INSTANCE,a),b.trigger(g.EVENTS.PRICE_CHANGE,c),setTimeout(function(){c&&c.getMonthlyPayment()&&b.trigger(g.EVENTS.CUSTOM_PROXY_PARAMS,a.getCustomProxyParams())},0)},j.prototype.onRciFinancialOfferReloadedForInventory=function(a,b){var c=a.getFinancialOffer(g.PARAMS.CUSTOM);b.trigger(g.EVENTS.PRICE_CHANGE,c),setTimeout(function(){c&&c.getMonthlyPayment()&&b.trigger(g.EVENTS.CUSTOM_PROXY_PARAMS,a.getCustomProxyParams(),c)},0)},j.prototype.onSimulatorRenderCompleted=function(a,b){b.trigger(g.EVENTS.SIMULATOR_RENDERED,a)},j.prototype.apigeeExternalCalculatorRequest=function(a,b,c,d,e,g,h,i){return f.getExternalFinanceLink(a,b,c,d,e,g,h,i)},j.prototype.refreshSimulator=function(a,c){var d=this.getRciProxyInstance(),f=new i,g=c&&c.dealer==e.PROXY_PARAM_VALUES.DEALER_CFG,j=c&&c.dealer==e.PROXY_PARAM_VALUES.DEALER_PS;if(!b.isEmpty(a)){if(c&&d.setProxyParams(c),g){var k=h.getVueJSRciPriceMapping(),l=f.isRciPricingEnabled(k);if(l)var m=h.getVueJSAdditionalPrices(),n=h.getVueJSAccessories(),o=h.getVueJSEquipmentSpecs(),p=h.getVueJSInternColor(),q=h.getVueJSExteriorColour(),r=h.getVueJSStylePacks(),s=h.getVueJSUpholsteryKey(),t=h.getVueJSWarrantyServiceData(),u=h.getVueJSWheelsData(),v=h.getVueJSPacks(),w=h.getVueJSVersionData(),x=h.getVueJSCapacity(),y=h.getVueJSTypeVariantVersion(),z=h.getVueJSEnginePowerSpecification()}if(j){var k=priceParams.rciPriceMapping,l=f.isRciPricingEnabled(k);if(l)var m=priceParams.additionalPrice,n=priceParams.accessories,o=priceParams.equipmentSpecs,p=priceParams.interiorColour,q=priceParams.exteriorColour,r=priceParams.stylePacks,s=priceParams.upholstery,t=priceParams.warrantyServiceData,u=priceParams.wheels,v=priceParams.packs,w=priceParams.versionData,x=priceParams.capacity,y=priceParams.typeVariantVersion,z=priceParams.enginePowerSpecification}if(d.setProxyParam(e.PROXY_PARAM_KEYS.PRICE,l?f.getPriceWithTaxandWithoutTax(m,e.PROXY_PARAM_KEYS.PRICEWITHTAX,k):a.totalPrice),d.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_WO_OPTIONS,a.basePrice),Array.isArray(a.accessories)&&a.accessories.length?d.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_TOTAL_ACCESSORIES,a.accessories):d.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_TOTAL_ACCESSORIES,void 0),l){if(b.isEmpty(w)||(d.setProxyParam(e.PROXY_PARAM_KEYS.PRICEWOOPTIONSWOVAT,f.getPriceWithTaxandWithoutTax(w.additionalPrices,e.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,k)),d.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_WO_OPTIONS,f.getPriceWithTaxandWithoutTax(w.additionalPrices,e.PROXY_PARAM_KEYS.PRICEWITHTAX,k))),b.isEmpty(s)||d.setProxyParam(e.PROXY_PARAM_KEYS.UPHOLSTRAY,s.choiceId),b.isEmpty(p)||d.setProxyParam(e.PROXY_PARAM_KEYS.INTERNCOLOR,p.choiceId),b.isEmpty(q)||d.setProxyParam(e.PROXY_PARAM_KEYS.EXTERNCOLOR,q.choiceId),b.isEmpty(x)||d.setProxyParam(e.PROXY_PARAM_KEYS.CAPACITY,x.value),b.isEmpty(y)||d.setProxyParam(e.PROXY_PARAM_KEYS.TYPEVARIANTVERSION,y.label),b.isEmpty(h.getVueJSEnginePowerSpecification())||
16(h.getVueJSEnginePowerSpecification()[0].numericValueForHp&&d.setProxyParam(e.PROXY_PARAM_KEYS.POWERHP,h.getVueJSEnginePowerSpecification()[0].numericValueForHp),h.getVueJSEnginePowerSpecification()[0].numericValueForKw&&d.setProxyParam(e.PROXY_PARAM_KEYS.POWERKW,h.getVueJSEnginePowerSpecification()[0].numericValueForKw)),n&&n.length){var A=f.getAccessories(n,k);A.length&&d.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_TOTAL_ACCESSORIES,A)}if(b.isEmpty(m)||(d.setProxyParam(e.PROXY_PARAM_KEYS.PRICEWOVAT,f.getPriceWithTaxandWithoutTax(m,e.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,k)),d.setProxyParam(e.PROXY_PARAM_KEYS.PRICEREBATE,f.getPriceWithTaxandWithoutTax(m,e.PROXY_PARAM_KEYS.PRICEREBATE,k)),d.setProxyParam(e.PROXY_PARAM_KEYS.PRICEREBATEWOVAT,f.getPriceWithTaxandWithoutTax(m,e.PROXY_PARAM_KEYS.PRICEREBATEWOVAT,k))),b.isEmpty(t.service)&&b.isEmpty(t.warranty)||d.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALSERVICES,f.getWarrantyServiceData(t,k)),b.isEmpty(o)||d.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,f.getEquipmentSpecs(o,e.PROXY_PARAM_KEYS.USER,k)),!b.isEmpty(q)){var B=d.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS);B.push(f.getExteriorColour(q,k)),d.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,B)}if(!b.isEmpty(r)){var B=d.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS),r=f.getStylePacks(r,k);d.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,Array.prototype.concat(B,r))}if(!b.isEmpty(u)){var B=d.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS);B.push(f.getWheels(u,k)),d.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,B)}if(!b.isEmpty(s)){var B=d.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS);B.push(f.getUpholstery(s,k)),d.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,B)}if(!b.isEmpty(v)){var B=d.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS),C=f.getPacks(v,k);d.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,Array.prototype.concat(B,C))}d.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALDISCOUNTS,f.priceTotalTaxesandDiscounts(m,e.PROXY_PARAM_KEYS.PRICETOTALDISCOUNTS,k)),d.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALTAXES,f.priceTotalTaxesandDiscounts(m,e.PROXY_PARAM_KEYS.PRICETOTALTAXES,k))}j&&(b.isEmpty(z)||(z[0].numericValueForHp&&d.setProxyParam(e.PROXY_PARAM_KEYS.POWERHP,z[0].numericValueForHp),z[0].numericValueForKw&&d.setProxyParam(e.PROXY_PARAM_KEYS.POWERKW,z[0].numericValueForKw)))}d.isSimulatorExist()&&d.refreshSimulator(!0)},j.prototype.reLoadSimulator=function(c,d,f,j,k){var l=this.getRciProxyInstance(),m=new i,n=d.dealer==e.PROXY_PARAM_VALUES.DEALER_CFG,o=d.dealer==e.PROXY_PARAM_VALUES.DEALER_PS;if(l.isSimulatorExist()&&l.clearProxy(),n){var p=h.getVueJSRciPriceMapping(),q=m.isRciPricingEnabled(p);if(q)var r=h.getVueJSAdditionalPrices(),s=h.getVueJSAccessories(),t=h.getVueJSEquipmentSpecs(),u=h.getVueJSInternColor(),v=h.getVueJSExteriorColour(),w=h.getVueJSStylePacks(),x=h.getVueJSUpholsteryKey(),y=h.getVueJSWarrantyServiceData(),z=h.getVueJSWheelsData(),A=h.getVueJSPacks(),B=h.getVueJSVersionData(),C=h.getVueJSCapacity(),D=h.getVueJSTypeVariantVersion(),E=h.getVueJSEnginePowerSpecification()}if(o){var p=priceParams.rciPriceMapping,q=m.isRciPricingEnabled(p);if(q)var r=priceParams.additionalPrice,s=priceParams.accessories,t=priceParams.equipmentSpecs,u=priceParams.interiorColour,v=priceParams.exteriorColour,w=priceParams.stylePacks,x=priceParams.upholstery,y=priceParams.warrantyServiceData,z=priceParams.wheels,A=priceParams.packs,B=priceParams.versionData,C=priceParams.capacity,D=priceParams.typeVariantVersion,E=priceParams.enginePowerSpecification}if(l.setProxyParam(e.PROXY_PARAM_KEYS.AGE,d.age),l.setProxyParam(e.PROXY_PARAM_KEYS.CALC_CURRENCY,d.calcCurrency),l.setProxyParam(e.PROXY_PARAM_KEYS.CURRENCY,d.currency),l.setProxyParam(e.PROXY_PARAM_KEYS.DEALER,d.dealer),l.setProxyParam(e.PROXY_PARAM_KEYS.LANG,d.lang),l.setProxyParam(e.PROXY_PARAM_KEYS.MODEL,d.model),l.setProxyParam(e.PROXY_PARAM_KEYS.MODEL_C,d.modelC),l.setProxyParam(e.PROXY_PARAM_KEYS.MODEL_SPEC_CODE,d.modelSpecCode),l.setProxyParam(e.PROXY_PARAM_KEYS.ID_VEHICLE,d.idVehicle),l.setProxyParam(e.PROXY_PARAM_KEYS.POWER,d.power),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_TYPE,d.priceType),l.setProxyParam(e.PROXY_PARAM_KEYS.SEG,d.seg),l.setProxyParam(e.PROXY_PARAM_KEYS.STYLE,d.style),l.setProxyParam(e.PROXY_PARAM_KEYS.TYPE,d.type),l.setProxyParam(e.PROXY_PARAM_KEYS.VEHICLE_BRAND,d.brand),l.setProxyParam(e.PROXY_PARAM_KEYS.VH_ID,d.vhid),l.setProxyParam(e.PROXY_PARAM_KEYS.ENGINE,c.versionSpecs&&c.versionSpecs.engine&&c.versionSpecs.engine.fuelType&&c.versionSpecs.engine.fuelType.value),l.setProxyParam(e.PROXY_PARAM_KEYS.VERSION,c.versionSpecs&&c.versionSpecs.key),l.setProxyParam(e.PROXY_PARAM_KEYS.VERSION_C,c.versionSpecs&&c.versionSpecs.name),l.setProxyParam(e.PROXY_PARAM_KEYS.EIM_CODE,c.eimCode),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE,q?m.getPriceWithTaxandWithoutTax(r,e.PROXY_PARAM_KEYS.PRICEWITHTAX,p):c.totalPrice),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_WO_OPTIONS,c.basePrice),Array.isArray(c.accessories)&&c.accessories.length?l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_TOTAL_ACCESSORIES,c.accessories):l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_TOTAL_ACCESSORIES,void 0),q){if(b.isEmpty(B)||
16(l.setProxyParam(e.PROXY_PARAM_KEYS.PRICEWOOPTIONSWOVAT,m.getPriceWithTaxandWithoutTax(B.additionalPrices,e.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,p)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_WO_OPTIONS,m.getPriceWithTaxandWithoutTax(B.additionalPrices,e.PROXY_PARAM_KEYS.PRICEWITHTAX,p))),b.isEmpty(x)||l.setProxyParam(e.PROXY_PARAM_KEYS.UPHOLSTRAY,x.choiceId),b.isEmpty(u)||l.setProxyParam(e.PROXY_PARAM_KEYS.INTERNCOLOR,u.choiceId),b.isEmpty(v)||l.setProxyParam(e.PROXY_PARAM_KEYS.EXTERNCOLOR,v.choiceId),b.isEmpty(C)||l.setProxyParam(e.PROXY_PARAM_KEYS.CAPACITY,C.value),b.isEmpty(D)||l.setProxyParam(e.PROXY_PARAM_KEYS.TYPEVARIANTVERSION,D.label),b.isEmpty(h.getVueJSEnginePowerSpecification())||(h.getVueJSEnginePowerSpecification()[0].numericValueForHp&&l.setProxyParam(e.PROXY_PARAM_KEYS.POWERHP,h.getVueJSEnginePowerSpecification()[0].numericValueForHp),h.getVueJSEnginePowerSpecification()[0].numericValueForKw&&l.setProxyParam(e.PROXY_PARAM_KEYS.POWERKW,h.getVueJSEnginePowerSpecification()[0].numericValueForKw)),s&&s.length){var F=m.getAccessories(s,p);F.length&&l.setProxyParam(e.PROXY_PARAM_KEYS.PRICE_TOTAL_ACCESSORIES,F)}if(b.isEmpty(r)||(l.setProxyParam(e.PROXY_PARAM_KEYS.PRICEWOVAT,m.getPriceWithTaxandWithoutTax(r,e.PROXY_PARAM_KEYS.PRICEWITHOUTTAX,p)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICEREBATE,m.getPriceWithTaxandWithoutTax(r,e.PROXY_PARAM_KEYS.PRICEREBATE,p)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICEREBATEWOVAT,m.getPriceWithTaxandWithoutTax(r,e.PROXY_PARAM_KEYS.PRICEREBATEWOVAT,p))),b.isEmpty(y.service)&&b.isEmpty(y.warranty)||l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALSERVICES,m.getWarrantyServiceData(y,p)),b.isEmpty(t)||l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,m.getEquipmentSpecs(t,e.PROXY_PARAM_KEYS.USER,p)),!b.isEmpty(v)){var G=l.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS);G.push(m.getExteriorColour(v,p)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,G)}if(!b.isEmpty(w)){var G=l.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS),w=m.getStylePacks(w,p);l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,Array.prototype.concat(G,w))}if(!b.isEmpty(z)){var G=l.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS);G.push(m.getWheels(z,p)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,G)}if(!b.isEmpty(x)){var G=l.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS);G.push(m.getUpholstery(x,p)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,G)}if(!b.isEmpty(A)){var G=l.getProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS),H=m.getPacks(A,p);l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALOPTIONS,Array.prototype.concat(G,H))}l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALDISCOUNTS,m.priceTotalTaxesandDiscounts(r,e.PROXY_PARAM_KEYS.PRICETOTALDISCOUNTS,p)),l.setProxyParam(e.PROXY_PARAM_KEYS.PRICETOTALTAXES,m.priceTotalTaxesandDiscounts(r,e.PROXY_PARAM_KEYS.PRICETOTALTAXES,p))}o&&(b.isEmpty(E)||(E[0].numericValueForHp&&l.setProxyParam(e.PROXY_PARAM_KEYS.POWERHP,E[0].numericValueForHp),
17E[0].numericValueForKw&&l.setProxyParam(e.PROXY_PARAM_KEYS.POWERKW,E[0].numericValueForKw))),l.setProxyParam(e.PROXY_PARAM_KEYS.BRAND,d.brand),l.setProxyParam(e.PROXY_PARAM_KEYS.COUNTRY,d.country),a(j).addClass(k),l.createSimulator(f,"",g.PARAMS.CUSTOM)},j}),define("paceCaptcha",["underscore","jquery"],function(a,b){"use strict";function c(a){this.$form=a,this.$captchaKey=this.$form.data("captcha-key"),this.$captchaElement=this.$form.find('[id^="captcha-widget"]').data("captcha-widget"),this.$tokenElement=this.$form.find(".captcha-token"),__googleCaptcha.push({form:this.$form,siteKey:this.$captchaKey,widget:this.$captchaElement,tokenElement:this.$tokenElement})}return window.isCaptchaLibraryInjected=window.isCaptchaLibraryInjected||!1,window.__googleCaptcha=[],c.prototype.getDeferred=function(){return this._deferred||this.initDeferred(),this._deferred},c.prototype.initDeferred=function(){this._deferred=new b.Deferred,this.injectLibrary()},c.prototype.isScriptInitialised=function(){return void 0!==window.grecaptcha},c.prototype.injectLibrary=function(){if(!isCaptchaLibraryInjected){var a=document.createElement("script");a.src="https://www.google.com/recaptcha/enterprise.js?onload=googleCaptchaCallback&render=explicit&hl="+b("html").attr("lang"),a.id="reCaptchaEnterprise",a.async=!0,a.defer=!0,document.head.appendChild(a),isCaptchaLibraryInjected=!0,window.googleCaptchaCallback=function(){this._deferred.resolve()}.bind(this)}},c.prototype.captchaExpired=function(a,b){a.val(""),b.valid()},c.prototype.isCaptchaValid=function(a,b,c){a.val(c),b.valid()},c.prototype.render=function(){b(__googleCaptcha).each(function(a,b){grecaptcha.enterprise.render(b.widget,{sitekey:b.siteKey,"expired-callback":function(){this.captchaExpired(b.tokenElement,b.form)}.bind(this),callback:function(a){this.isCaptchaValid(b.tokenElement,b.form,a)}.bind(this)}),__googleCaptcha.shift()}.bind(this))},c}),define("jqueryvalidation",[],function(){return $.validator}),define("validation",["underscore","jquery","paceCaptcha","jqueryvalidation"],function(a,b,c){"use strict";function d(c,e){if(!(this instanceof d))return new d(c,e);if(this.$form="object"==typeof c?c:b(c),0!==this.$form.size()){this.current={$formGroup:null,$formElement:null,errors:{}},this.errors={};var f="!-+/:-@[-`{-�",g=" -¿";this.patterns={"generic-alpha":"[^"+f+g+"0-9]*","simple-numeric":"^\\d*$","generic-numeric":"[0-9 -]*","simple-alphanumeric":"^[0-9a-zA-Z]*$","generic-alphanumeric":"^([0-9a-zA-ZÀ-ÿ()+ -_]){0,20}$","long-alphanumeric":"^([0-9a-zA-ZÀ-ÿ()+ -_]){0,100}$","international-alphanumeric":"[^"+f+g+"]*",email:".+@.+",date:"^[0-9]{2}-[0-9]{2}-[0-9]{4}$",password:"^(?=.*?[A-Z])(?=(.*[a-z]){1,})(?=(.*[\\d]){1,})(?=(.*[\\W_]){1,})(?!.*\\s).{8,}
17$","generic-vin":"^[0-9a-hA-Hj-nJ-NpPr-zR-Z]{17}$"},this.uiConstants={prefix:"helios_",classBtnDisabled:"btn-disabled",classHasValidation:"hasValidation",classElementError:"error",classElementRequired:"required",classElementComplete:"complete",classFormGroup:"form-group",classFormSubmitButton:"submit-form-button",classErrorMessage:"error-message",classGroupErrors:"error-group",classTooltip:"tooltip",classShowError:"show-error",groupCheckboxChecked:"group-checkbox:checked",analyticsTracked:"tracked",servicesCheckboxes:".checkbox-group"},this.$groupErrors=this.$form.find("."+this.uiConstants.classGroupErrors),this.customRoutines=["dates","notblank","required","invalid","past-date","equal-to","max-length","vin-or-registration","customregex","postcode-regex","brazilian-cpf","brazilian-cnpj","chile-rut","min-checkbox-required","max-checkbox-required","either-or-error","services-required"],this._elIndex=[],this.addCustomValidators(),this.customRoutines=this._fetchCustomErrors(),this.defaults={showGroupErrors:!0,groupErrorsSelector:".error-group",groupErrorsPlacement:"submit",submitButtonEnabled:!0,submitButtonSelector:null,validation:{debug:!1,ignore:["input:hidden:not(.captcha-token)"],errorPlacement:a.bind(this._formElementErrorPlacementHandler,this),invalidHandler:a.bind(this._formInvalidHandler,this),showErrors:a.bind(this._formErrorsShowHandler,this),highlight:a.bind(this._formElementHighlightHandler,this),unhighlight:a.bind(this._formElementUnhighlightHandler,this),success:a.bind(this._formValidHandler,this),submitHandler:a.bind(this._formSubmitHandler,this),rules:this.customRoutines.rules,messages:this.customRoutines.messages}},this.options=e||{},this.settings=b.extend(!0,{},this.defaults,this.options),this.init()}}a.isUndefined(b.validator)||(b.validator.prototype.ruleValidationStatus=function(a){if(!a)return{error:"element not defined",element:a};a=b(a);var c=a.rules(),d={};for(var e in c){var f={method:e,parameters:c[e]},g=b.validator.methods[e].call(this,a.value.replace(/\r/g,""),a,f.parameters);d[f.method]=g}return d}),d.prototype.init=function(){if(this.validator=this.$form.validate(this.settings.validation),this._placeGroupErrors(),this._bindHandlers(),this.$form.addClass(this.uiConstants.classHasValidation),this.$form.attr("data-captcha-enabled")&&"true"===this.$form.attr("data-captcha-enabled").toLowerCase()){var a=new c(this.$form);a.getDeferred().done(function(){this.render()}.bind(a))}},d.prototype.getElementIndex=function(){for(;this._elIndex.length>0;)this._elIndex.pop();this.$form.find("input, select, textarea").each(a.bind(function(c,d){var e=b(d).attr("id")?b(d).attr("id"):b(d).attr("name");e&&a.indexOf(this._elIndex,e)<0&&this._elIndex.push(e)},this))},d.prototype.reset=function(){this.validator.resetForm(),this.$form.find(".error").removeClass("error")},d.prototype.getValidationRoutines=function(a){var b={};for(var c in this.customRoutines){var d=a.attr("data-validation-"+this.customRoutines[c]);d&&d.length>0&&(b[this.customRoutines[c]]=d)}return b},d.prototype._fetchCustomErrors=function(){var c=this,d={},e={};return b("input, select, textarea, radio",this.$form).each(function(f,g){var h,i,j,k=b(g),l=k.attr("name"),m=c.getValidationRoutines(k);if(a.size(m)>0){e[l]={},d[l]={};for(h in m)i="helios_"+h.replace("validation","").toLowerCase(),j=m[h],b.validator.methods.hasOwnProperty(i)&&(e[l][i]=j,d[l][i]=j),b.validator.methods.hasOwnProperty(l.toLowerCase())&&"customregex"===h&&(e[l][l.toLowerCase()]=!1)}}),{rules:e,messages:d}},d.prototype.getRuleStatus=function(a){return a?this.$form.validate().ruleValidationStatus(a):{}},d.prototype.getRules=function(a){return a?a.rules():this.$form.rules()},d.prototype._setCurrent=function(a){if(a){var c=b(a,this.$form),d=c.parents("."+this.uiConstants.classFormGroup);this.current={$formElement:c,$formGroup:d}}},d.prototype._bindHandlers=function(){var b=this.settings.formSubmitButton||"."+this.uiConstants.classFormSubmitButton;this.$form.on("click",b,a.bind(this._submitButtonClickHandler,this)),this.$form.on("change","select",a.bind(this._formElementChangeHandler,this))},d.prototype._formElementChangeHandler=function(a){b(a.currentTarget).valid()},d.prototype._submitButtonClickHandler=function(a){a.preventDefault();var c=b(a.currentTarget);this.$form.trigger("validation.submit.form"),c.hasClass(this.uiConstants.classBtnDisabled)||("function"==typeof this.settings.formSubmitHandler?this.settings.formSubmitHandler(a.currentTarget,this.$form):this.$form.valid()?this.$form.trigger("submit"):this._toggleGroupErrors(this.errors))},d.prototype._formInvalidHandler=function(a,b){},d.prototype._formValidHandler=function(a,b){},d.prototype._formSubmitHandler=function(a){a.submit(),this.toggleFormSubmitButton()},d.prototype._onFormElementFocusoutHandler=function(a,b){this._setCurrent(a)},d.prototype._formErrorsShowHandler=function(a,b){for(var c in b)if(b.hasOwnProperty(c)){var d=b[c];this._updateError(d.element,d.message,d.method),this.errors[d.element.name]=d.message}this.$form.validate().defaultShowErrors()},d.prototype._updateError=function(a,b,c){var d,e,f=!1;this._setCurrent(a),d=this.current.$formElement.is(":visible")||this.current.$formElement.hasClass(this.uiConstants.classShowError),e=this.current.$formElement.css("clip"),((f=this.current.$formElement.is('[type="checkbox"], [type="radio"]'))||d&&("auto"===e||void 0===e))&&this._displayError(b)},d.prototype._formElementErrorPlacementHandler=function(a,b){this._setCurrent(b)},d.prototype._formElementHighlightHandler=function(a,b,c){this._setCurrent(a),this.current.$formElement.addClass(this.uiConstants.classElementError),this.current.$formGroup.removeClass(this.uiConstants.classElementComplete).addClass(this.uiConstants.classElementError)},d.prototype._formElementUnhighlightHandler=function(c,d,e){this._setCurrent(c),this.errors=a.omit(this.errors,c.name),this.current.$formGroup.removeClass(this.uiConstants.classElementError),b.trim(this.current.$formElement.val()).length>0?(this.current.$formGroup.addClass(this.uiConstants.classElementComplete),this.current.$formGroup.hasClass(this.uiConstants.analyticsTracked)&&this.current.$formGroup.removeClass(this.uiConstants.analyticsTracked)):this.current.$formGroup.removeClass(this.uiConstants.classElementComplete),this._removeError()},d.prototype._displayError=function(a){this.errors[this.current.$formElement.attr("name")]=a;var c,d=this.current.$formGroup,e=d.find("."+this.uiConstants.classErrorMessage),f=this.current.$formElement.parent().find("."+this.uiConstants.classErrorMessage);0===e.size()&&0===f.size()?(c=b('<span class="'+this.uiConstants.classErrorMessage+'"id="'+e.context.getAttribute("id")+'-error">'+a+"</span>"),e.context.setAttribute("aria-describedby",e.context.getAttribute("id")+"-error"),this.current.$formElement.is("select")?this.current.$formElement.next().after(c):this.current.$formElement.parent().append(c)):e.text(a)},d.prototype._removeError=function(a){var c=a?b(a).parents("."+this.uiConstants.classFormGroup):this.current.$formGroup;c.removeClass(this.uiConstants.classElementError),b(c.context).hasClass(this.uiConstants.classElementError)&&c.context.removeAttribute("aria-describedby")},d.prototype.fetchCurrentErrors=function(a){var c={},d=this.$form;return b("input, select, textarea",this.$form).each(function(){c[b(this).attr("name")]||(c[b(this).attr("name")]=[]),c[b(this).attr("name")].push(d.val
17idate().ruleValidationStatus(this))}),c},d.prototype._placeGroupErrors=function(){var a,c=b(this.settings.groupErrorsSelector,this.$form),d=c.first().clone();switch(c.remove(),this.settings.groupErrorsPlacement){case"submit":a=this.settings.formSubmitButton||"."+this.uiConstants.classFormSubmitButton,b(a,this.$form).before(d);break;case"submit-tooltip":d.addClass(this.uiConstants.classTooltip),a=this.settings.formSubmitButton||"."+this.uiConstants.classFormSubmitButton,b(a,this.$form).before(d);break;default:this.$form.prepend(d)}this.$groupErrors=d,this.$groupErrorList=d.find("ul:eq(0)")},d.prototype.hideGroupErrors=function(){this.$groupErrors.fadeOut("fast")},d.prototype.showGroupErrors=function(){var a=this;this.$groupErrors.show(),this.$groupErrors.hasClass(this.uiConstants.classTooltip)&&setTimeout(function(){b(document).one("click",function(c){b(c.target).is("."+a.uiConstants.classFormSubmitButton)?a.showGroupErrors():a.hideGroupErrors()})},25)},d.prototype._toggleGroupErrors=function(b){this.getElementIndex();var c=[];if(this.$form.removeClass(this.uiConstants.classElementError),this.$groupErrorList.children().remove(),this.settings.showGroupErrors){if(1===this.$groupErrors.size()){for(var d in this._elIndex)this.errors.hasOwnProperty(this._elIndex[d])&&(this.$groupErrorList.append("<li>"+this.errors[this._elIndex[d]]+"</li>"),c.push(this._elIndex[d]));for(var e in this.errors)a.indexOf(c,e)<0&&this.$groupErrorList.append("<li>"+this.errors[e]+"</li>")}a.size(this.errors)>0?(this.settings.showGroupErrors&&this.showGroupErrors(),this.$form.addClass(this.uiConstants.classElementError)):(this.hideGroupErrors(),this.$form.removeClass(this.uiConstants.classElementError))}},d.prototype.toggleGroupErrors=function(){this.settings.showGroupErrors=!this.settings.showGroupErrors},d.prototype.enableGroupErrors=function(){this.settings.showGroupErrors=!0},d.prototype.disableGroupErrors=function(){this.settings.showGroupErrors=!1},d.prototype._getSubmitButton=function(){return null!==this.settings.submitButtonSelector?b(this.settings.submitButtonSelector,this.$form):b("."+this.uiConstants.classFormSubmitButton,this.$form)},d.prototype.toggleFormSubmitButton=function(){this.settings.submitButtonEnabled?this.disableFormSubmitButton():this.enableFormSubmitButton()},d.prototype.enableFormSubmitButton=function(){this.settings.submitButtonEnabled=!0,this._getSubmitButton().removeClass(this.uiConstants.classBtnDisabled).prop("disabled",!1)},d.prototype.disableFormSubmitButton=function(){this.settings.showGroupsubmitButtonEnabledErrors=!1,this._getSubmitButton().addClass(this.uiConstants.classBtnDisabled).prop("disabled",!0)},d.prototype.addCustomValidators=function(){b.validator.addMethod(this.uiConstants.prefix+"dates",a.bind(g,this)),b.validator.addMethod(this.uiConstants.prefix+"invalid",a.bind(e,this)),b.validator.addMethod(this.uiConstants.prefix+"notblank",a.bind(i,this)),b.validator.addMethod(this.uiConstants.prefix+"compound",a.bind(j,this)),b.validator.addMethod(this.uiConstants.prefix+"either_or",a.bind(k,this)),b.validator.addMethod(this.uiConstants.prefix+"past-date",a.bind(m,this)),b.validator.addMethod(this.uiConstants.prefix+"equal-to",a.bind(n,this)),b.validator.addMethod(this.uiConstants.prefix+"max-length",a.bind(o,this)),b.validator.addMethod(this.uiConstants.prefix+"vin-or-registration",a.bind(f,this)),b.validator.addMethod(this.uiConstants.prefix+"customregex",a.bind(p,this)),b.validator.addMethod(this.uiConstants.prefix+"postcode-regex",a.bind(r,this)),b.validator.addMethod(this.uiConstants.prefix+"brazilian-cpf",a.bind(s,this)),b.validator.addMethod(this.uiConstants.prefix+"brazilian-cnpj",a.bind(t,this)),b.validator.addMethod(this.uiConstants.prefix+"chile-rut",a.bind(u,this)),b.validator.addMethod(this.uiConstants.prefix+"services-required",a.bind(v,this)),b.validator.addMethod(this.uiConstants.prefix+"min-checkbox-required",a.bind(w,this)),b.validator.addMethod(this.uiConstants.prefix+"max-checkbox-required",a.bind(x,this)),b.validator.addMethod(this.uiConstants.prefix+"either-or-error",a.bind(q,this))};var e=function(a,c,d){if(!a||0===a.length)return!0;var e=b(c),f=e.data("validation-invalid-pattern"),g=!0;if(this.patterns.hasOwnProperty(f))switch("string"==typeof this.patterns[f]&&(this.patterns[f]=new RegExp(this.patterns[f])),f){case"date":g=this.patterns[f].test(a)&&h(a);break;case"email":case"telephone":case"password":if(e.data("validation-customregex-pattern")){g=new RegExp(e.data("validation-customregex-pattern")).test(a)}else g=this.patterns[f].test(a);break;default:g=0===a.replace(this.patterns[f],"").length}return g},f=function(a){var b,c=this.patterns["generic-alphanumeric"],d=this.patterns["generic-vin"];return b=17===a.length?new RegExp(d):new RegExp(c),0===a.replace(b,"").length},g=function(a,c){var d=c.dataset,e=!0,f=b.datepicker.regional[b("html").attr("lang").split("-")[0]].dateFormat;if(a){var g=b.datepicker.parseDate(f,a);
17switch(d.validationType){case"greater-than":e=g>new Date((new Date).getTime()+36e5*d.minValidDate*24);break;case"less-than":e=g<new Date((new Date).getTime()+36e5*d.maxValidDate*24)}}return e},h=function(a,b){return!!l(a,b)},i=function(a,c,d){var e,f,g=b(c);return g.is('[type="checkbox"]')?g.is(":checked"):g.is('[type="radio"]')?(e=g.attr("name"),f=!1,b('input[name="'+e+'"]').each(function(){if(b(this).is(":checked"))return f=!0,!1}),f):!g.is("textarea")&&!g.is("select")||b.trim(a).length?b.trim(a).length>0:(g.parents(".form-group-container").each(function(){b(this).hasClass("hidden")&&(f=!0)}),!!f)},j=function(a,c,d){var e=this.validator,f=d[0];if(!(f instanceof Array))return!1;b(f.join(", "),c.form).filter(function(){return e.elementValue(this)});return b(f.join(", "),c.form).filter(function(){return e.elementValue(this)}).length===f.length},k=function(c,d,e){var f=this,g=this.validator,h=e[0],i=e[1];if(!(i instanceof Array))return!1;var j="#"+b(d).attr("id");a.indexOf(i,j)<0&&i.push(j);var k=b(i.join(", "),d.form);return k.each(function(){f._removeError(b(this))}),k.filter(function(){return g.elementValue(this)}).length>=h},l=function(a,b){b=b||"dd-mm-yyyy";for(var c,d,e,f=/[^mdy]/.exec(b)[0],g=b.split(f),h=a.split(f),i=g.length,j=0;j<i;j+=1)/m/.test(g[j])&&(c=parseInt(h[j])-1),/d/.test(g[j])&&(d=parseInt(h[j])),/y/.test(g[j])&&(e=parseInt(h[j]));return!!(c>=0&&c<12&&e&&e>999&&d>0&&d<=new Date(e,c,d).getDate())&&new Date(e,c,d)},m=function(a,b,c,d){var e=!0,f=new Date,g=l(a,d);return g&&new Date(f).getTime()<=g.getTime()&&(e=!1),e},n=function(a,c,d){var e=b(c),f=e.data("validation-equal-to-element"),g=b(f),h=g.val();return g.data("boundEqualValidator")||(g.data("boundEqualValidator","true"),g.bind("input",function(){e.valid()}),g.bind("propertychange",function(){e.closest("form").valid()})),h===a},o=function(a,c){var d=b(c),e=d.data("validation-max-length-value");return!a||0===a.length||a.length<=e},p=function(a,c,d){var e=b(c),f=e.data("validation-customregex-pattern");return!a||0===a.length||!f||0===f.length||"string"!=typeof f||new RegExp(f).test(a)},q=function(a,c){var d,e,f,g=b(c),h=g.data("validation-either-or"),i=g.closest(".customTextFieldsPair").find("[data-validation-either-or]"),j=[];return b.each(i,function(a,c){j.push(b(c).data("validation-either-or"))}),d=h===j[0]?j[1]:j[0],f=b(c).closest("form").find("input[name="+d+"]"),""===a?(e=f.val(),f.toggleClass(this.uiConstants.classElementError,""===e),f.attr("aria-invalid",""===e),f.closest(".form-group").toggleClass(this.uiConstants.classElementError,""===e),""!==e||f.siblings("."+this.uiConstants.classErrorMessage).length||this._updateError(f,f.data("validation-either-or-error"),this.uiConstants.prefix+"either-or-error"),""!==e):(f.removeClass(this.uiConstants.classElementError),f.attr("aria-invalid",!1),f.closest(".form-group").removeClass(this.uiConstants.classElementError),!0)},r=function(a,c){var d=!0,e=b(c),f=e.data("validation-postcode-regex-pattern");return b.trim(a).length&&(d=new RegExp(f,"i").test(a)),d},s=function(a,c){var d=/^0+$|^1+$|^2+$|^3+$|^4+$|^5+$|^6+$|^7+$|^8+$|^9+$/,e=[],f=0,g=0,h=11,i=h,j=0,k="",l=0,m=0;if(a=b.trim(a),a=a.replace(/\./g,""),!(k=a.replace("-",""))||0===k.length)return!1;for(;k.length<h;)k="0"+k;for(m=0;m<h;m++)e[m]=k.charAt(m),m<9&&(i--,f+=e[m]*i);for(j=f%h,e[9]=j<2?0:h-j,i=h,l=0;l<10;l++)g+=e[l]*i,i--;return j=g%h,e[10]=j<2?0:h-j,parseInt(k.charAt(9))===e[9]&&parseInt(k.charAt(10))===e[10]&&!k.match(d)},t=function(a,c){var d,e,f=/^([0-9]{2}[\.]?[0-9]{3}[\.]?[0-9]{3}[\/]?[0-9]{4}[-]?[0-9]{2})$/,g=/^(\d)\1+$/,h=[5,4,3,2,9,8,7,6,5,4,3,2],i=[6,5,4,3,2,9,8,7,6,5,4,3,2],j="",k=0,l=0,m=0;if(a=b.trim(a),!f.test(a))return!1;
17if(a=a.replace(/\./g,""),a=a.replace(/-/g,""),!(j=a.replace(/\//g,""))||0===j.length)return!1;for(;j.length<14;)j="0"+j;if(j.match(g))return!1;for(k=0;k<12;k++)l+=j.charAt(k)*h[k];for(d=l%11,d=d<2?0:11-d,k=0;k<12;k++)m+=j.charAt(k)*i[k];return m+=d*i[12],e=m%11,e=e<2?0:11-e,parseInt(j.charAt(12))===d&&parseInt(j.charAt(13))===e},u=function(a,b){var c,d,e,f,g,h;if(a.indexOf("-")<0||""==a)return!1;if(c=a.split("-")[0],d=a.split("-")[1],c.length>8)return!1;for(e=c.length-1,f=2,g=0;e>=0;)g+=parseInt(c[e])*f,7==f?f=2:f+=1,e-=1;return h=11-g%11,"X",(11==h?"0":10==h?"K":h.toString())==d.toUpperCase()},v=function(a,c){var d=b(c),e=!1,f=d.parents("[services-required]"),g=f.find(this.uiConstants.servicesCheckboxes);return b(g).each(function(){if(b(this).prop("checked"))return void(e=!0)}),e},w=function(a,c){var d=b(c),e=d.parents("[data-min-required]"),f=e.data("min-required");return e.find("."+this.uiConstants.groupCheckboxChecked).length>=f||0===f},x=function(a,c){var d=b(c),e=d.parents("[data-max-required]"),f=e.data("max-required");return e.find("."+this.uiConstants.groupCheckboxChecked).length<=f||0===f};return d}),function(a){"function"==typeof define&&define.amd?define("jqueryCookie",["jquery"],a):a("object"==typeof exports?require("jquery"):jQuery)}(function(a){function b(a){return h.raw?a:encodeURIComponent(a)}function c(a){return h.raw?a:decodeURIComponent(a)}function d(a){return b(h.json?JSON.stringify(a):String(a))}function e(a){0===a.indexOf('"')&&(a=a.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return a=decodeURIComponent(a.replace(g," ")),h.json?JSON.parse(a):a}catch(b){}}function f(b,c){var d=h.raw?b:e(b);return a.isFunction(c)?c(d):d}var g=/\+/g,h=a.cookie=function(e,g,i){if(void 0!==g&&!a.isFunction(g)){if(i=a.extend({},h.defaults,i),"number"==typeof i.expires){var j=i.expires,k=i.expires=new Date;k.setTime(+k+864e5*j)}return document.cookie=[b(e),"=",d(g),i.expires?"; expires="+i.expires.toUTCString():"",i.path?"; path="+i.path:"",i.domain?"; domain="+i.domain:"",i.secure?"; secure":""].join("")}for(var l=e?void 0:{},m=document.cookie?document.cookie.split("; "):[],n=0,o=m.length;n<o;n++){var p=m[n].split("="),q=c(p.shift()),r=p.join("=");if(e&&e===q){l=f(r,g);break}e||void 0===(r=f(r))||(l[q]=r)}return l};h.defaults={},a.removeCookie=function(b,c){return void 0!==a.cookie(b)&&(a.cookie(b,"",a.extend({},c,{expires:-1})),!a.cookie(b))}}),define("languageUtilities",["underscore","heliosObject"],function(a,b){"use strict";function c(a){if(!(this instanceof c))return new c(a);this.defaults={multiLanguageCountryCodes:["ar-AE","ar-BH","ar-DZ","ar-KW","ar-MA","ar-OM","ar-QA","ar-SA","de-CH","en-AE","en-AU","en-BH","en-GB","en-KW","en-OM","en-QA","en-SA","fr-CH","fr-DZ","fr-MA","it-CH","pt-BR","pt-PT","ru-UA","uk-UA","zh-CN","zh-TW"]},this.options=a||{},this.settings=$.extend(!0,{},this.defaults,this.options)}return c.prototype.getLanguageCode=function(){var c,d=b.config.common.locale;return d.length&&(c=a.contains(this.settings.multiLanguageCountryCodes,d)?d:d.split("-")[0]),c},c}),define("markerwithlabel",[],function(){var a=!1;return{init:function(b){b&&!a&&(a=!0,b.done(function(){function a(a,b){function c(){}c.prototype=b.prototype,a.superClass_=b.prototype,a.prototype=new c,a.prototype.constructor=a}function b(a,c,d){this.marker_=a,this.handCursorURL_=a.handCursorURL,this.labelDiv_=document.createElement("div"),this.labelDiv_.style.cssText="position: absolute; overflow: hidden;",this.eventDiv_=document.createElement("div"),this.eventDiv_.style.cssText=this.labelDiv_.style.cssText,this.eventDiv_.setAttribute("onselectstart","return false;"),this.eventDiv_.setAttribute("ondragstart","return false;"),this.crossDiv_=b.getSharedCross(c)}function c(a){a=a||{},a.labelContent=a.labelContent||"",a.labelAnchor=a.labelAnchor||new google.maps.Point(0,0),a.labelClass=a.labelClass||"markerLabels",a.labelStyle=a.labelStyle||{},a.labelInBackground=a.labelInBackground||!1,void 0===a.labelVisible&&(a.labelVisible=!0),void 0===a.raiseOnDrag&&(a.raiseOnDrag=!0),void 0===a.clickable&&(a.clickable=!0),void 0===a.draggable&&(a.draggable=!1),void 0===a.optimized&&(a.optimized=!1),a.crossImage=a.crossImage||"http"+("https:"===document.location.protocol?"s":"")+"://maps.gstatic.
17com/intl/en_us/mapfiles/drag_cross_67_16.png",a.handCursor=a.handCursor||"http"+("https:"===document.location.protocol?"s":"")+"://maps.gstatic.com/intl/en_us/mapfiles/closedhand_8_8.cur",a.optimized=!1,this.label=new b(this,a.crossImage,a.handCursor),google.maps.Marker.apply(this,arguments)}a(b,google.maps.OverlayView),b.getSharedCross=function(a){var c;return void 0===b.getSharedCross.crossDiv&&(c=document.createElement("img"),c.style.cssText="position: absolute; z-index: 1000002; display: none;",c.style.marginLeft="-8px",c.style.marginTop="-9px",c.src=a,b.getSharedCross.crossDiv=c),b.getSharedCross.crossDiv},b.prototype.onAdd=function(){var a,c,d,e,f,g,h,i=this,j=!1,k=!1,l=20,m="url("+this.handCursorURL_+")",n=function(a){a.preventDefault&&a.preventDefault(),a.cancelBubble=!0,a.stopPropagation&&a.stopPropagation()},o=function(){i.marker_.setAnimation(null)};this.getPanes().markerLayer.appendChild(this.labelDiv_),this.getPanes().overlayMouseTarget.appendChild(this.eventDiv_),void 0===b.getSharedCross.processed&&(this.getPanes().overlayImage.appendChild(this.crossDiv_),b.getSharedCross.processed=!0),this.listeners_=[google.maps.event.addDomListener(this.eventDiv_,"mouseover",function(a){(i.marker_.getDraggable()||i.marker_.getClickable())&&(this.style.cursor="pointer",google.maps.event.trigger(i.marker_,"mouseover",a))}),google.maps.event.addDomListener(this.eventDiv_,"mouseout",function(a){!i.marker_.getDraggable()&&!i.marker_.getClickable()||k||(this.style.cursor=i.marker_.getCursor(),google.maps.event.trigger(i.marker_,"mouseout",a))}),google.maps.event.addDomListener(this.eventDiv_,"mousedown",function(a){k=!1,i.marker_.getDraggable()&&(j=!0,this.style.cursor=m),(i.marker_.getDraggable()||i.marker_.getClickable())&&(google.maps.event.trigger(i.marker_,"mousedown",a),n(a))}),google.maps.event.addDomListener(document,"mouseup",function(b){var c;if(j&&(j=!1,i.eventDiv_.style.cursor="pointer",google.maps.event.trigger(i.marker_,"mouseup",b)),k){if(f){c=i.getProjection().fromLatLngToDivPixel(i.marker_.getPosition()),c.y+=l,i.marker_.setPosition(i.getProjection().fromDivPixelToLatLng(c));try{i.marker_.setAnimation(google.maps.Animation.BOUNCE),setTimeout(o,1406)}catch(d){}}i.crossDiv_.style.display="none",i.marker_.setZIndex(a),e=!0,k=!1,b.latLng=i.marker_.getPosition(),google.maps.event.trigger(i.marker_,"dragend",b)}}),google.maps.event.addListener(i.marker_.getMap(),"mousemove",function(b){var e;j&&(k?(b.latLng=new google.maps.LatLng(b.latLng.lat()-c,b.latLng.lng()-d),e=i.getProjection().fromLatLngToDivPixel(b.latLng),f&&(i.crossDiv_.style.left=e.x+"px",i.crossDiv_.style.top=e.y+"px",i.crossDiv_.style.display="",e.y-=l),i.marker_.setPosition(i.getProjection().fromDivPixelToLatLng(e)),f&&(i.eventDiv_.style.top=e.y+l+"px"),google.maps.event.trigger(i.marker_,"drag",b)):(c=b.latLng.lat()-i.marker_.getPosition().lat(),d=b.latLng.lng()-i.marker_.getPosition().lng(),a=i.marker_.getZIndex(),g=i.marker_.getPosition(),h=i.marker_.getMap().getCenter(),f=i.marker_.get("raiseOnDrag"),k=!0,i.marker_.setZIndex(1e6),b.latLng=i.marker_.getPosition(),google.maps.event.trigger(i.marker_,"dragstart",b)))}),google.maps.event.addDomListener(document,"keydown",function(a){k&&27===a.keyCode&&(f=!1,i.marker_.setPosition(g),i.marker_.getMap().setCenter(h),google.maps.event.trigger(document,"mouseup",a))}),google.maps.event.addDomListener(this.eventDiv_,"click",function(a){(i.marker_.getDraggable()||i.marker_.getClickable())&&(e?e=!1:(google.maps.event.trigger(i.marker_,"click",a),n(a)))}),google.maps.event.addDomListener(this.eventDiv_,"dblclick",function(a){(i.marker_.getDraggable()||i.marker_.getClickable())&&(google.maps.event.trigger(i.marker_,"dblclick",a),n(a))}),google.maps.event.addListener(this.marker_,"dragstart",function(a){k||(f=this.get("raiseOnDrag"))}),google.maps.event.addListener(this.marker_,"drag",function(a){k||f&&(i.setPosition(l),i.labelDiv_.style.zIndex=1e6+(this.get("labelInBackground")?-1:1))}),google.maps.event.addListener(this.marker_,"dragend",function(a){k||f&&i.setPosition(0)}),google.maps.event.addListener(this.marker_,"position_changed",function(){i.setPosition()}),google.maps.event.addListener(this.marker_,"zindex_changed",function(){i.setZIndex()}),google.maps.event.addListener(this.marker_,"visible_changed",function(){i.setVisible()}),google.maps.event.addListener(this.marker_,"labelvisible_changed",function(){i.setVisible()}),google.maps.event.addListener(this.marker_,"title_changed",function(){i.setTitle()}),google.maps.event.addListener(this.marker_,"labelcontent_changed",function(){i.setContent()}),google.maps.event.addListener(this.marker_,"labelanchor_changed",function(){i.setAnchor()}),google.maps.event.addListener(this.marker_,"labelclass_changed",function(){i.setStyles()}),google.maps.event.addListener(this.marker_,"labelstyle_changed",function(){i.setStyles()})]},b.prototype.onRemove=function(){var a;if(this.labelDiv_.parentNode&&this.labelDiv_.parentNode.removeChild(this.labelDiv_),this.eventDiv_.parentNode&&this.eventDiv_.parentNode.removeChild(this.eventDiv_),this.listeners_)for(a=0;a<this.listeners_.length;a++)google.maps.event.removeListener(this.listeners_[a])},b.prototype.draw=function(){this.setContent(),this.setTitle(),this.setStyles()},b.prototype.setContent=function(){var a=this.marker_.get("labelContent");void 0===a.nodeType?(this.labelDiv_.innerHTML=a,this.eventDiv_.innerHTML=this.labelDiv_.innerHTML):(this.labelDiv_.innerHTML="",this.labelDiv_.appendChild(a),a=a.cloneNode(!0),this.eventDiv_.appendChild(a))},b.prototype.setTitle=function(){this.eventDiv_.title=this.marker_.getTitle()||""},b.prototype.setStyles=function(){var a,b;this.labelDiv_.className=this.marker_.get("labelClass"),this.eventDiv_.className=this.labelDiv_.className,this.labelDiv_.style.cssText="",this.eventDiv_.style.cssText="",b=this.marker_.get("labelStyle");
17for(a in b)b.hasOwnProperty(a)&&(this.labelDiv_.style[a]=b[a],this.eventDiv_.style[a]=b[a]);this.setMandatoryStyles()},b.prototype.setMandatoryStyles=function(){this.labelDiv_.style.position="absolute",this.labelDiv_.style.overflow="hidden",void 0!==this.labelDiv_.style.opacity&&""!==this.labelDiv_.style.opacity&&(this.labelDiv_.style.MsFilter='"progid:DXImageTransform.Microsoft.Alpha(opacity='+100*this.labelDiv_.style.opacity+')"',this.labelDiv_.style.filter="alpha(opacity="+100*this.labelDiv_.style.opacity+")"),this.eventDiv_.style.position=this.labelDiv_.style.position,this.eventDiv_.style.overflow=this.labelDiv_.style.overflow,this.eventDiv_.style.opacity=.01,this.eventDiv_.style.MsFilter='"progid:DXImageTransform.Microsoft.Alpha(opacity=1)"',this.eventDiv_.style.filter="alpha(opacity=1)",this.setAnchor(),this.setPosition(),this.setVisible()},b.prototype.setAnchor=function(){var a=this.marker_.get("labelAnchor");this.labelDiv_.style.marginLeft=-a.x+"px",this.labelDiv_.style.marginTop=-a.y+"px",this.eventDiv_.style.marginLeft=-a.x+"px",this.eventDiv_.style.marginTop=-a.y+"px"},b.prototype.setPosition=function(a){var b=this.getProjection().fromLatLngToDivPixel(this.marker_.getPosition());void 0===a&&(a=0),this.labelDiv_.style.left=Math.round(b.x)+"px",this.labelDiv_.style.top=Math.round(b.y-a)+"px",this.eventDiv_.style.left=this.labelDiv_.style.left,this.eventDiv_.style.top=this.labelDiv_.style.top,this.setZIndex()},b.prototype.setZIndex=function(){var a=this.marker_.get("labelInBackground")?-1:1;void 0===this.marker_.getZIndex()?(this.labelDiv_.style.zIndex=parseInt(this.labelDiv_.style.top,10)+a,this.eventDiv_.style.zIndex=this.labelDiv_.style.zIndex):(this.labelDiv_.style.zIndex=this.marker_.getZIndex()+a,this.eventDiv_.style.zIndex=this.labelDiv_.style.zIndex)},b.prototype.setVisible=function(){this.marker_.get("labelVisible")?this.labelDiv_.style.display=this.marker_.getVisible()?"block":"none":this.labelDiv_.style.display="none",this.eventDiv_.style.display=this.labelDiv_.style.display},a(c,google.maps.Marker),c.prototype.setMap=function(a){google.maps.Marker.prototype.setMap.apply(this,arguments),this.label.setMap(a)},window.MarkerWithLabel=c}))}}}),define("googleMaps",["underscore","jquery","languageUtilities","logger","markerwithlabel"],function(a,b,c,d,e){"use strict";var f,g="___googleMapsCallback",h=new d({prefix:"GoogleMaps"});return f=function(b){if(a.isUndefined(b))throw"InvalidArgumentException: You must pass an `options` argument to the `GoogleMaps` constructor";if(a.isUndefined(b.window))throw"InvalidArgumentException: You must pass `options.window` to the `GoogleMaps` constructor";if(a.isUndefined(b.window.document))throw"InvalidArgumentException: You must pass `options.window.document` to the `GoogleMaps` constructor";if(a.isUndefined(b.HELIOS))throw"InvalidArgumentException: You must pass `option.HELIOS` to the `GoogleMaps` constructor";this.options=b},f.prototype.getDeferred=function(){return this._deferred||this.initDeferred(),this._deferred},f.prototype.getIdValue=function(){var a
18;return this.options.HELIOS&&this.options.HELIOS.config&&this.options.HELIOS.config.common&&this.options.HELIOS.config.common.api&&this.options.HELIOS.config.common.api.googleMaps&&this.isMapOnPage()&&(a=this.options.HELIOS.config.common.api.googleMaps.apiKey),a},f.prototype.getLibrariesValue=function(){return"geometry,places"},f.prototype.getScriptSrc=function(){var a,b,d,e,f=this.options.HELIOS,h=(new c).getLanguageCode();return f&&(a=f.config.brand,b=f.config.common.countryCode,d=f.config.common.api.googleMaps.useRegion),e="//maps.googleapis.com/maps/api/js?v=3.64&key="+this.getIdValue()+"&channel="+a+"-"+b+"&libraries="+this.getLibrariesValue()+"&callback="+g+"&language="+h,d&&(e+="&region="+b),e},f.prototype.initDeferred=function(){this._deferred=b.Deferred(),this.options.window[g]=this._deferred.resolve,this.onDeferredCreate(),this.isScriptInitialised()&&this._deferred.resolve()},f.prototype.initMarkerWithLabel=function(){e.init(this.getDeferred())},f.prototype.isScriptInitialised=function(){return window&&window.google&&window.google.maps&&void 0!==window.google.maps.places},f.prototype.isScriptInjected=function(){return window&&window.isScriptAlreadyInjected},f.prototype.injectScript=function(){var a,b;
18if(!this._isScriptInjected&&!this.isScriptInjected()){if(this.isScriptInitialised())return void this.onScriptInject();h.debug("Injecting Google Maps script"),a=this.options.window.document.createElement("script"),a.type="text/javascript",a.async=!0,a.src=this.getScriptSrc(),b=this.options.window.document.getElementsByTagName("script")[0],b.parentNode.insertBefore(a,b),window.isScriptAlreadyInjected=!0,this.onScriptInject()}},f.prototype.isMapOnPage=function(){var c,d=this.options.HELIOS;return d&&d.config&&d.config.common&&d.config.common.api&&d.config.common.api.googleMaps&&a.isArray(d.config.common.api.googleMaps.hasMapComponentSelectorWhitelist)&&(c=b(d.config.common.api.googleMaps.hasMapComponentSelectorWhitelist.join()).length>0),c||!0},f.prototype.onDeferredCreate=function(){this.injectScript()},f.prototype.onScriptInject=function(){this._isScriptInjected=!0,this.initMarkerWithLabel()},f}),define("googleMapsSingleton",["googleMaps"],function(a){"use strict";return new a({HELIOS:HELIOS,window:window})}),define("markerclusterer",[],function(){function a(b,c){b.getMarkerClusterer().extend(a,google.maps.OverlayView),this.cluster_=b,this.className_=b.getMarkerClusterer().getClusterClass(),this.styles_=c,this.center_=null,this.div_=null,this.sums_=null,this.visible_=!1,this.setMap(b.getMap())}function b(b){this.markerClusterer_=b,this.map_=b.getMap(),this.gridSize_=b.getGridSize(),this.minClusterSize_=b.getMinimumClusterSize(),this.averageCenter_=b.getAverageCenter(),this.markers_=[],this.center_=null,this.bounds_=null,this.clusterIcon_=new a(this,b.getStyles())}function c(a,b,d){this.extend(c,google.maps.OverlayView),b=b||[],d=d||{},this.markers_=[],this.clusters_=[],this.listeners_=[],this.activeMap_=null,this.ready_=!1,this.gridSize_=d.gridSize||60,this.minClusterSize_=d.minimumClusterSize||2,this.maxZoom_=d.maxZoom||null,this.restrictToMapMaxZoom_=d.restrictToMaxZoom||null,this.styles_=d.styles||[],this.title_=d.title||"",this.zoomOnClick_=!0,void 0!==d.zoomOnClick&&(this.zoomOnClick_=d.zoomOnClick),this.averageCenter_=!1,void 0!==d.averageCenter&&(this.averageCenter_=d.averageCenter),this.ignoreHidden_=!1,void 0!==d.ignoreHidden&&(this.ignoreHidden_=d.ignoreHidden),this.enableRetinaIcons_=!1,void 0!==d.enableRetinaIcons&&(this.enableRetinaIcons_=d.enableRetinaIcons),this.imagePath_=d.imagePath||c.IMAGE_PATH,this.imageExtension_=d.imageExtension||c.IMAGE_EXTENSION,this.imageSizes_=d.imageSizes||c.IMAGE_SIZES,this.calculator_=d.calculator||c.CALCULATOR,this.batchSize_=d.batchSize||c.BATCH_SIZE,this.batchSizeIE_=d.batchSizeIE||c.BATCH_SIZE_IE,this.clusterClass_=d.clusterClass||"cluster",-1!==navigator.userAgent.toLowerCase().indexOf("msie")&&(this.batchSize_=this.batchSizeIE_),this.setupStyles_(),this.addMarkers(b,!0),this.setMap(a)}return a.prototype.onAdd=function(){var a,b,c=this;this.div_=document.createElement("div"),this.div_.className=this.className_,this.visible_&&this.show(),this.getPanes().overlayMouseTarget.appendChild(this.div_),this.boundsChangedListener_=google.maps.event.addListener(this.getMap(),"bounds_changed",function(){b=a}),google.maps.event.addDomListener(this.div_,"mousedown",function(){a=!0,b=!1}),google.maps.event.addDomListener(this.div_,"click",function(d){if(a=!1,!b){var e,f,g,h,i=c.cluster_.getMarkerClusterer();google.maps.event.trigger(i,"click",c.cluster_),google.maps.event.trigger(i,"clusterclick",c.cluster_),i.getZoomOnClick()&&(g=i.getMap().getZoom(),f=i.getMaxZoom(),h=i.restrictToMaxZoom(),e=c.cluster_.getBounds(),i.getMap().fitBounds(e),setTimeout(function(){i.getMap().fitBounds(e),null!==h&&null!==f&&i.getMap().getZoom()>f&&i.getMap().setZoom(f+1),i.getMap().getZoom()===g&&i.getMap().setZoom(g+1)},100)),d.cancelBubble=!0,d.stopPropagation&&d.stopPropagation()}}),google.maps.event.addDomListener(this.div_,"mouseover",function(){var a=c.cluster_.getMarkerClusterer();google.maps.event.trigger(a,"mouseover",c.cluster_)}),google.maps.event.addDomListener(this.div_,"mouseout",function(){var a=c.cluster_.getMarkerClusterer();google.maps.event.trigger(a,"mouseout",c.cluster_)})},a.prototype.onRemove=function(){this.div_&&this.div_.parentNode&&(this.hide(),google.maps.event.removeListener(this.boundsChangedListener_),google.maps.event.clearInstanceListeners(this.div_),this.div_.parentNode.removeChild(this.div_),this.div_=null)},a.prototype.draw=function(){if(this.visible_){var a=this.getPosFromLatLng_(this.center_);this.div_.style.top=a.y+"px",this.div_.style.left=a.x+"px"}},a.prototype.hide=function(){this.div_&&(this.div_.style.display="none"),this.visible_=!1},a.prototype.show=function(){if(this.div_){var a="",b=this.backgroundPosition_.split(" "),c=parseInt(b[0].replace(/^\s+|\s+$/g,""),10),d=parseInt(b[1].replace(/^\s+|\s+$/g,""),10),e=this.getPosFromLatLng_(this.center_);this.div_.style.cssText=this.createCss(e),this.url_&&""!==this.url_&&(a="<img src='"+this.url_+"' style='position: absolute; top: "+d+"px; left: "+c+"px; ",this.cluster_.getMarkerClusterer().enableRetinaIcons_||(a+="clip: rect("+-1*d+"px, "+(-1*c+this.width_)+"px, "+(-1*d+this.height_)+"px, "+-1*c+"px);"),a+="'>"),this.div_.innerHTML=a+"<div class='"+this.innerClassName+"'style='position: absolute;top: "+this.anchorText_[0]+"px;left: "+this.anchorText_[1]+"px;color: "+this.textColor_+";font-size: "+this.textSize_+"px;font-family: "+this.fontFamily_+";font-weight: "+this.fontWeight_+";font-style: "+this.fontStyle_+";text-decoration: "+this.textDecoration_+";text-align: center;width: "+this.width_+"px;'>"+this.sums_.text+"</div>",void 0===this.sums_.title||""===this.sums_.title?this.div_.title=this.cluster_.getMarkerClusterer().getTitle():this.div_.title=this.sums_.title,this.div_.style.display=""}this.visible_=!0},a.prototype.useStyle=function(a){var b="single-digit";this.sums_=a;var c=Math.max(0,a.index-1);c=Math.min(this.styles_.length-1,c);var d=this.styles_[c];1*a.text<10?this.innerClassName=b:this.innerClassName="",this.url_=d.url,this.height_=d.height,this.width_=d.width,this.anchorText_=d.anchorText||[0,0],this.anchorIcon_=d.anchorIcon||[parseInt(this.height_/2,10),parseInt(this.width_/2,10)],this.textColor_=d.textColor||"black",this.textSize_=d.textSize||11,this.textDecoration_=d.textDecoration||"none",this.fontWeight_=d.fontWeight||"bold",this.fontStyle_=d.fontStyle||"normal",this.fontFamily_=d.fontFamily||"Arial,sans-serif",this.backgroundPosition_=
18d.backgroundPosition||"0 0"},a.prototype.setCenter=function(a){this.center_=a},a.prototype.createCss=function(a){var b=[];return b.push("cursor: pointer;"),b.push("position: absolute; top: "+a.y+"px; left: "+a.x+"px;"),b.push("width: "+this.width_+"px; height: "+this.height_+"px;"),b.join("")},a.prototype.getPosFromLatLng_=function(a){var b=this.getProjection().fromLatLngToDivPixel(a);return b.x-=this.anchorIcon_[1],b.y-=this.anchorIcon_[0],b.x=parseInt(b.x,10),b.y=parseInt(b.y,10),b},b.prototype.getSize=function(){return this.markers_.length},b.prototype.getMarkers=function(){return this.markers_},b.prototype.getCenter=function(){return this.center_},b.prototype.getMap=function(){return this.map_},b.prototype.getMarkerClusterer=function(){return this.markerClusterer_},b.prototype.getBounds=function(){var a,b=new google.maps.LatLngBounds(this.center_,this.center_),c=this.getMarkers();for(a=0;a<c.length;a++)b.extend(c[a].getPosition());return b},b.prototype.remove=function(){this.clusterIcon_.setMap(null),this.markers_=[],delete this.markers_},b.prototype.addMarker=function(a){var b,c,d;if(this.isMarkerAlreadyAdded_(a))return!1;if(this.center_){if(this.averageCenter_){var e=this.markers_.length+1,f=(this.center_.lat()*(e-1)+a.getPosition().lat())/e,g=(this.center_.lng()*(e-1)+a.getPosition().lng())/e;this.center_=new google.maps.LatLng(f,g),this.calculateBounds_()}}else this.center_=a.getPosition(),this.calculateBounds_();if(a.isAdded=!0,this.markers_.push(a),c=this.markers_.length,null!==(d=this.markerClusterer_.getMaxZoom())&&this.map_.getZoom()>d)a.getMap()!==this.map_&&a.setMap(this.map_);else if(c<this.minClusterSize_)a.getMap()!==this.map_&&a.setMap(this.map_);else if(c===this.minClusterSize_)for(b=0;b<c;b++)this.markers_[b].setMap(null);else a.setMap(null);return this.updateIcon_(),!0},b.prototype.isMarkerInClusterBounds=function(a){return this.bounds_.contains(a.getPosition())},b.prototype.calculateBounds_=function(){var a=new google.maps.LatLngBounds(this.center_,this.center_);this.bounds_=this.markerClusterer_.getExtendedBounds(a)},b.prototype.updateIcon_=function(){var a=this.markers_.length,b=this.markerClusterer_.getMaxZoom();if(null!==b&&this.map_.getZoom()>b)return void this.clusterIcon_.hide();if(a<this.minClusterSize_)return void this.clusterIcon_.hide();var c=this.markerClusterer_.getStyles().length,d=this.markerClusterer_.getCalculator()(this.markers_,c);this.clusterIcon_.setCenter(this.center_),this.clusterIcon_.useStyle(d),this.clusterIcon_.show()},b.prototype.isMarkerAlreadyAdded_=function(a){var b;if(this.markers_.indexOf)return-1!==this.markers_.indexOf(a);for(b=0;b<this.markers_.length;b++)if(a===this.markers_[b])return!0;return!1},c.prototype.onAdd=function(){var a=this;this.activeMap_=this.getMap(),this.ready_=!0,this.repaint(),this.listeners_=[google.maps.event.addListener(this.getMap(),"zoom_changed",function(){a.resetViewport_(!1),this.getZoom()!==(this.get("minZoom")||0)&&this.getZoom()!==this.get("maxZoom")||google.maps.event.trigger(this,"idle")}),google.maps.event.addListener(this.getMap(),"idle",function(){a.redraw_()})]},c.prototype.onRemove=function(){var a;for(a=0;a<this.markers_.length;a++)this.markers_[a].getMap()!==this.activeMap_&&this.markers_[a].setMap(this.activeMap_);for(a=0;
18a<this.clusters_.length;a++)this.clusters_[a].remove();for(this.clusters_=[],a=0;a<this.listeners_.length;a++)google.maps.event.removeListener(this.listeners_[a]);this.listeners_=[],this.activeMap_=null,this.ready_=!1},c.prototype.draw=function(){},c.prototype.setupStyles_=function(){var a,b;if(!(this.styles_.length>0))for(a=0;a<this.imageSizes_.length;a++)b=this.imageSizes_[a],this.styles_.push({url:this.imagePath_+(a+1)+"."+this.imageExtension_,height:b,width:b})},c.prototype.fitMapToMarkers=function(){var a,b=this.getMarkers(),c=new google.maps.LatLngBounds;for(a=0;a<b.length;a++)c.extend(b[a].getPosition());this.getMap().fitBounds(c)},c.prototype.getGridSize=function(){return this.gridSize_},c.prototype.setGridSize=function(a){this.gridSize_=a},c.prototype.getMinimumClusterSize=function(){return this.minClusterSize_},c.prototype.setMinimumClusterSize=function(a){this.minClusterSize_=a},c.prototype.getMaxZoom=function(){return this.maxZoom_},c.prototype.restrictToMaxZoom=function(){return this.restrictToMapMaxZoom_},c.prototype.setMaxZoom=function(a){this.maxZoom_=a},c.prototype.getStyles=function(){return this.styles_},c.prototype.setStyles=function(a){this.styles_=a},c.prototype.getTitle=function(){return this.title_},c.prototype.setTitle=function(a){this.title_=a},c.prototype.getZoomOnClick=function(){return this.zoomOnClick_},c.prototype.setZoomOnClick=function(a){this.zoomOnClick_=a},c.prototype.getAverageCenter=function(){return this.averageCenter_},c.prototype.setAverageCenter=function(a){this.averageCenter_=a},c.prototype.getIgnoreHidden=function(){return this.ignoreHidden_},c.prototype.setIgnoreHidden=function(a){this.ignoreHidden_=a},c.prototype.getEnableRetinaIcons=function(){return this.enableRetinaIcons_},c.prototype.setEnableRetinaIcons=function(a){this.enableRetinaIcons_=a},c.prototype.getImageExtension=function(){return this.imageExtension_},c.prototype.setImageExtension=function(a){this.imageExtension_=a},c.prototype.getImagePath=function(){return this.imagePath_},c.prototype.setImagePath=function(a){this.imagePath_=a},c.prototype.getImageSizes=function(){return this.imageSizes_},c.prototype.setImageSizes=function(a){this.imageSizes_=a},c.prototype.getCalculator=function(){return this.calculator_},c.prototype.setCalculator=function(a){this.calculator_=a},c.prototype.getBatchSizeIE=function(){return this.batchSizeIE_},c.prototype.setBatchSizeIE=function(a){this.batchSizeIE_=a},c.prototype.getClusterClass=function(){return this.clusterClass_},c.prototype.setClusterClass=function(a){this.clusterClass_=a},c.prototype.getMarkers=function(){return this.markers_},c.prototype.getTotalMarkers=function(){return this.markers_.length},c.prototype.getClusters=function(){return this.clusters_},c.prototype.getTotalClusters=function(){return this.clusters_.length},c.prototype.addMarker=function(a,b){this.pushMarkerTo_(a),b||this.redraw_()},c.prototype.addMarkers=function(a,b){var c;for(c in a)a.hasOwnProperty(c)&&(a[c].hasOwnProperty("id")||a[c].hasOwnProperty("dealerId"))&&this.pushMarkerTo_(a[c]);b||this.redraw_()},c.prototype.pushMarkerTo_=function(a){if(a.getDraggable()){var b=this;google.maps.event.addListener(a,"dragend",function(){b.ready_&&(this.isAdded=!1,b.repaint())})}a.isAdded=!1,this.markers_.push(a)},c.prototype.removeMarker=function(a,b){var c=this.removeMarker_(a);return!b&&c&&this.repaint(),c},c.prototype.removeMarkers=function(a,b){var c,d,e=!1;for(c=0;c<a.length;c++)d=this.removeMarker_(a[c]),e=e||d;return!b&&e&&this.repaint(),e},c.prototype.removeMarker_=function(a){var b,c=-1;if(this.markers_.indexOf)c=this.markers_.indexOf(a);else for(b=0;b<this.markers_.length;b++)if(a===this.markers_[b]){c=b;break}return-1!==c&&(a.setMap(null),this.markers_.splice(c,1),!0)},c.prototype.clearMarkers=function(){this.resetViewport_(!0),this.markers_=[]}
18,c.prototype.repaint=function(){var a=this.clusters_.slice();this.clusters_=[],this.resetViewport_(!1),this.redraw_(),setTimeout(function(){var b;for(b=0;b<a.length;b++)a[b].remove()},0)},c.prototype.getExtendedBounds=function(a){var b=this.getProjection(),c=new google.maps.LatLng(a.getNorthEast().lat(),a.getNorthEast().lng()),d=new google.maps.LatLng(a.getSouthWest().lat(),a.getSouthWest().lng()),e=b.fromLatLngToDivPixel(c);e.x+=this.gridSize_,e.y-=this.gridSize_;var f=b.fromLatLngToDivPixel(d);f.x-=this.gridSize_,f.y+=this.gridSize_;var g=b.fromDivPixelToLatLng(e),h=b.fromDivPixelToLatLng(f);return a.extend(g),a.extend(h),a},c.prototype.redraw_=function(){this.createClusters_(0)},c.prototype.resetViewport_=function(a){var b,c;for(b=0;b<this.clusters_.length;b++)this.clusters_[b].remove();for(this.clusters_=[],b=0;b<this.markers_.length;b++)c=this.markers_[b],c.isAdded=!1,a&&c.setMap(null)},c.prototype.distanceBetweenPoints_=function(a,b){var c=(b.lat()-a.lat())*Math.PI/180,d=(b.lng()-a.lng())*Math.PI/180,e=Math.sin(c/2)*Math.sin(c/2)+Math.cos(a.lat()*Math.PI/180)*Math.cos(b.lat()*Math.PI/180)*Math.sin(d/2)*Math.sin(d/2);return 2*Math.atan2(Math.sqrt(e),Math.sqrt(1-e))*6371},c.prototype.isMarkerInBounds_=function(a,b){return b.contains(a.getPosition())},c.prototype.addToClosestCluster_=function(a){var c,d,e,f,g=4e4,h=null;for(c=0;
18c<this.clusters_.length;c++)e=this.clusters_[c],(f=e.getCenter())&&(d=this.distanceBetweenPoints_(f,a.getPosition()))<g&&(g=d,h=e);h&&h.isMarkerInClusterBounds(a)?h.addMarker(a):(e=new b(this),e.addMarker(a),this.clusters_.push(e))},c.prototype.createClusters_=function(a){var b,c,d,e=this;if(this.ready_){0===a&&(google.maps.event.trigger(this,"clusteringbegin",this),void 0!==this.timerRefStatic&&(clearTimeout(this.timerRefStatic),delete this.timerRefStatic)),d=this.getMap().getZoom()>3?new google.maps.LatLngBounds(this.getMap().getBounds().getSouthWest(),this.getMap().getBounds().getNorthEast()):new google.maps.LatLngBounds(new google.maps.LatLng(85.02070771743472,-178.48388434375),new google.maps.LatLng(-85.08136444384544,178.00048865625));var f=this.getExtendedBounds(d),g=Math.min(a+this.batchSize_,this.markers_.length);for(b=a;b<g;b++)c=this.markers_[b],!c.isAdded&&this.isMarkerInBounds_(c,f)&&(!this.ignoreHidden_||this.ignoreHidden_&&c.getVisible())&&this.addToClosestCluster_(c);g<this.markers_.length?this.timerRefStatic=setTimeout(function(){e.createClusters_(g)},0):(delete this.timerRefStatic,google.maps.event.trigger(this,"clusteringend",this))}},c.prototype.extend=function(a,b){return function(a){var b;for(b in a.prototype)this.prototype[b]=a.prototype[b];return this}.apply(a,[b])},c.CALCULATOR=function(a,b){for(var c=0,d="",e=a.length.toString(),f=e;0!==f;)f=parseInt(f/10,10),c++;return c=Math.min(c,b),{text:e,index:c,title:d}},c.BATCH_SIZE=2e3,c.BATCH_SIZE_IE=50,c.IMAGE_PATH="http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclustererplus/images/m",c.IMAGE_EXTENSION="png",c.IMAGE_SIZES=[53,56,66,78,90],c}),define("c_022",["jquery","googleMapsSingleton","markerclusterer","stateStoreFactory","logger","handlebars","backbone","disclaimers","underscore"],function(a,b,c,d,e,f,g,h,i){"use strict";function j(a,b,c){var d,e=1e3,f=900,g=c||0,h=a.get("oldZIndex"),i=a.getZIndex();return void 0===h&&(h=i,a.set("oldZIndex",i)),d="active"===b?e:"result"===b?f-g:h,a.setZIndex(d),a}function k(){return window.HELIOS&&window.HELIOS.components&&window.HELIOS.components.c_022?window.HELIOS.components.c_022.settings:{styles:[],cluster:null,geoMarker:null,logos:null,height:"54",width:"49",paddSingleDigits:!0,cluster
18s:[{textColor:"",fontFamily:"",textSize:"",height:"",width:"",url:""}]}}function l(a,c,d){if(void 0!==b)return new n(a,c,d)}var m,n,o,p,q={dealerDetailContainerSelect:".map-results",detailsLoadingClass:"is-loading",isGeolocated:a.noop,listViewTriggerSelector:".btn-view-list",activeClass:"is-active",rootSelector:".c_022",formBuilderSelector:".c_019",selectDealerButtonSelector:".btn-select-this-dealer",autoSelectFirstDealerInCollection:!1,buttonSelect:".btn-select",buttonPrev:".js-btn-prev",buttonNext:".js-btn-next",inactiveClass:"inactive",backToMyAccountWrapper:".back-to-my-account-wrapper",backToMyAccountCloseButton:".back-to-my-account-wrapper i.close",markerCreationBatchSize:1e4,markerCreationBatchSizeIE:1e3,events:{dealerSelected:"map.dealerSelected"},data:{activeDealerType:"active-dealer-type"}},r={streetViewControl:!1,maxZoom:17,minZoom:1,zoom:8,draggable:!0,scrollwheel:!0,zoomControl:!0,panControl:!0},s="helios-map",t="map-instance",u=0,v=".lb_template_c-40-3_list",w={},x=12,y="is-showing-detail",z="C22_Dealer_Map";return f.registerHelper("pageCount",function(a,b){var c=b.hash.pattern;return'<span class="page-count">'+(c&&""!==c?c.replace("%num%",a.position).replace("%total%",a.resultsTotal):a.position+" / "+a.resultsTotal)+"</span>"}),n=function(a,c,d){var e=this;if(window.googleMapInitiated)var f=setInterval(function(){"undefined"!=typeof google&&google.maps&&google.maps.places&&(clearInterval(f),e.init(a,c,d))},100);else window.googleMapInitiated=!0,b.getDeferred().done(function(){e.init(a,c,d)});return this},n.prototype={instanceId:null,$el:null,settings:null,mapSettings:null,map:null,dealerTemplate:null,collectionInstance:!1,resultsList:[],geoMarkerInstance:null,activeDealer:!1,isDealerSelected:!1,icons:{geo:null},clusterStyles:null,labelanchorLeft:null,labelanchorTop:null,markerCluster:null,clusterLevel:60,clusteredMarkers:{},autoSelectFirstDealerInCollection:!1,zoomOnMarkerActive:!1,batcherDeferred:null,chosenDealerId:null,promise:function(){return b.getDeferred().promise()},init:function(b,c,g){var h,i,j,l=k(),n=this,r=a(b);m=a(q.rootSelector),o=new e({prefix:"C22"}),o.info("init"),this.$el=r,this.settings=a.extend({},q,c),p=d.create(),this.mapSettings=a.extend({},this.getGMapSettings(r,l),c),this.setMarkerSettings(l),i=s+(u+=1)+"",w[i]=this,r.attr(t,i),h=new google.maps.Map(b,this.mapSettings),c.idle&&google.maps.event.addListenerOnce(h,"idle",function(){c.idle()}),this.instanceId=i,this.map=h,g&&g.length&&(this.collectionInstance=g,this.collectionInstance.bind("change:visible",a.proxy(this.filterMarkers,n)).bind("change:position",this.updateMarker,this).bind("change:all",a.proxy(this.updateResults,n))),a(this.settings.dealerDetailContainerSelect).on("click",q.buttonSelect,a.proxy(this.dealerSelection,this)).on("click",q.buttonPrev,q.buttonNext,a.proxy(this.dealerPagination,this)),this.collectionInstance&&this.initMarkers(r,c),j=a(v),j.length&&(this.dealerTemplate=f.compile(j.html()))},autoAdjustZoomOverMarkers:function(b){var c,d,e=parseInt(this.settings.autoZoomOutLimit),f=parseInt(this.settings.minMarkersVisible),g=this.map.getZoom(),h=parseInt(this.settings.preferredZoom),i=this.settings.ActiveDealersCallback(),j=this.map,k=new google.maps.Geocoder,l=this;this.settings.minMarkersVisible||(f=6),this.settings.autoZoomOutLimit||(e=3),this.settings.preferredZoom||(h=14),f>i.length&&(f=i.length),g=h&&h>=e?h:e,this.map.setZoom(g),c=a(".c_152-0 input.location-value").val(),c?(d=c.split(","),this.getAutoSelectFirstDealerInCollection()?this.zoomOnMarker(i[0].attributes.marker):(j.setCenter(new google.maps.LatLng(d[0],d[1])),l.loopThroughZoomLevels(l,i,f,e,g)),m.parents(".c_040").attr("data-current-zoom-level",l.map.getZoom())):b&&k.geocode({address:b},function(a,b){b==google.maps.GeocoderStatus.OK?(j.setCenter(a[0].geometry.location),l.loopThroughZoomLevels(l,i,f,e,g),m.closest(".c_040").attr("data-current-zoom-level",l.map.getZoom())):o.warn("Could not pan map to search location: "+b)})},loopThroughZoomLevels:function(a,b,c,d,e){var f,g=this.getNumberOfVisibleMarkers(a.map,b);if(o.info("Minimum markers visible: "+c+", Auto Zoom Limit: "+d),b.length>0)for(f=e;f>=1&&(o.info("Autozooming... visible markers: "+g+", zoom level: "+f),!(f<=d&&g>=1))&&g<c;f--)a.map.setZoom(f),g=this.getNumberOfVisibleMarkers(a.map,b)},getNumberOfVisibleMarkers:function(a,b){var c,d,e=0,f=a.getBounds();if(f)for(c=0,d=b.length;c<d;c++)f.contains(b[c].attributes.marker.getPosition())&&e++;return e},zoom:function(a){this.map&&this.map.setZoom(a)},refresh:function(){o.info("refresh"),google.maps.event.trigger(this.map,"resize"),this.extendBounds()},getGMapSettings:function(b,c){var d=a.extend({},r,{styles:c.styles});return this.getElemOptions(b,d),d},createIcon:function(a,b,c){var d,e=c.width,f=c.height,g=this.labelanchorLeft,h=this.labelanchorTop,i=null;return a&&""!==a&&(i=a+b),d=""!==b?new google.maps.Point(g,h):new google.maps.Point(g,Math.floor(f/2)),{url:i,origin:new google.maps.Point(0,0),anchor:d,scaledSize:new google.maps.Size(e,f),size:new google.maps.Size(e,f)}},setMarkerSettings:function(b){var c=this,d=".png";return this.clusterStyles=b.clusters,this.labelanchorLeft=Math.floor(b.width/2),this.labelanchorTop=b.height,this.clusterLevel=b.clusterLevel||this.clusterLevel,this.icons={geo:this.createIcon(b.geoMarker,"",b)},b.markerStyles&&a.each(b.markerStyles,function(a,e){c.icons[a+"Active"]=c.createIcon(e.active,d,b),c.icons[a+"Inactive"]=c.createIcon(e.inactive,d,b)}),this},getElemOptions:function(a,b){var c=a.data("lat"),d=a.data("lon"),e=a.data("draggable"),f=a.data("scrollwheel"),g=a.data("zoomcontrol"),h=a.data("pancontrol"),i=a.data("zoom");return void 0!==c&&void 0!==d&&(b.center=new google.maps.LatLng(c,d)),!1===e&&(b.draggable=e),!1===f&&(b.scrollwheel=f),!1===g&&(b.zoomControl=g),!1===h&&(b.panControl
18=h),i&&(b.zoom=i),this},onShow:function(){var a,b,c=this;c&&c.markerCluster&&i.isFunction(c.markerCluster.getMarkers)?(o.info("onShow"),a=c.markerCluster.getMarkers(),google.maps.event.trigger(this.map,"resize"),this.map.getZoom()<=2&&this.updateResults(),this.activeDealer?this.centerActiveDealer():i.isEmpty(a)||1!==a.length?!a.length&&this.map.showApiResultsOnly?this.centerOnCountry():!i.isEmpty(a)&&a.length>1&&this.refresh():(b=a[0].getPosition(),this.map.setZoom(10),c.map.panTo(b))):o&&o.warn("onShow() instance.markerCluster is undefined!")},setAutoSelectFirstDealerInCollection:function(a){this.autoSelectFirstDealerInCollection=a,this.setZoomOnMarker(this.autoSelectFirstDealerInCollection),this.autoSelectFirstDealerInCollection||(this.activeDealer=!1)},getAutoSelectFirstDealerInCollection:function(){return this.autoSelectFirstDealerInCollection},setZoomOnMarker:function(a){void 0!==typeof a&&(this.zoomOnMarkerActive=a)},getZoomOnMarker:function(){return this.zoomOnMarkerActive},zoomOnMarker:function(a,b){var c=this,d=b||14;c.zoomOnMarkerActive&&(c.map.setZoom(d),setTimeout(function(){c.map.setCenter(a.getPosition())},100))},initMarkers:function(b,c){return o.info("initMarkers"),this.addDealerMarkers(b,c).done(a.proxy(function(a){this.clusteredMarkers=this.clusterMarkers(b,this.clusterStyles,a,this.clusterLevel)},this)),this},trackMarkerClick:function(a){var b,c={},d={},e=a.attributes.address;this.settings.analyticsManager?(b=this.settings.analyticsManager.trackingVars.dealerInteraction,d=this.settings.analyticsManager.getTrackingObjectProperties(b),c[d.componentId]=z,c[d.dealerId]=a.get("id"),c[d.dealerName]=a.get("tradingName"),c[d.dealerType]=a.get("dealerType")||"unknown",c[d.dealerAction]="Map",e?(c[d.dealerAddress]=e.addressLine1?e.addressLine1:"",c[d.dealerAddress]+=e.addressLine2?","+e.addressLine2:"",c[d.dealerAddress]+=e.addressLine3?","+e.addressLine3:"",c[d.dealerAddress]+=e.city?","+e.city:"",c[d.dealerAddress]+=e.postalCode?","+e.postalCode:""):c[d.dealerAddress]="unknown",this.isDealerSelected?this.settings.analyticsManager.append(b,c):(this.settings.analyticsManager.tag(b,c),this.isDealerSelected=!0)):o.warn("analyticsManager not defined")},viewMarker:function(b,c,d){var e,f,g=this.map;if(o.info("viewMarker"),e=b?b.dealerId:null){f=this.collectionInstance.get(e);var h=this;h.loadingDealerDetail().setActiveMarker(f,!0),h.settings.dealerCallback(e).then(a.proxy(function(){this.showDealerDetail(f,!0,d)},h)),!0===c&&g.getZoom()<=x&&(g.setZoom(x+1),g.setCenter(b.getPosition()))}return this},isDealerActiveAndVisible:function(b){var c=this.settings.ActiveDealersCallback("visible"),d=i.pluck(c,"id");return-1!==a.inArray(b,d)},filterMarkers:function(b){var c=[],d=this.settings.ActiveDealersCallback("visible");o.info("filterMarkers"),this.clearMarkers(),this.resultsList=i.pluck(d,"id"),i.each(d,function(a){c.push(a.get("marker"))}),a.when(this.clusterMarkers(this.$el,this.clusterStyles,c,this.clusterLevel)).done(i.bind(function(){b&&this.extendBounds(c)},this))},clearMarkers:function(){i.isNull(this.markerCluster)||this.markerCluster.clearMarkers()},updateResults:function(){var a=this,b=this.settings.ActiveDealersCallback();o.info("updateResults"),a.resultsList=i.pluck(b,"id"),b.length&&a.center(b)},getSelectedDealerId:function(){var a,b=window.HELIOS.state.dealer;return b&&(a=b.id),a},getPreferredDealerId:function(){var a,b=window.HELIOS.state.dealer;return b&&(a=b.preferred),a},removeSelectedDealerId:function(){var a=p.get(),b="dealer",c=a[b];c&&c.id&&(delete c.id,p.set(a))},center:function(b){var c,d,e,f=this,g=f.getSelectedDealerId(),h=f.getPreferredDealerId();return o.info("center"),b&&(g?(c=i.findWhere(b,{id:g}))&&(e=c.get("marker"),f.setZoomOnMarker(!0)):f.getAutoSelectFirstDealerInCollection()?e=b[0].get("marker"):(d=f.chosenDealerId||g||h)&&(c=i.findWhere(b,{id:d}),c?(e=c.get("marker"),f.setZoomOnMarker(!0)):o.warn("dealerId not in collection"))),f.removeSelectedDealerId(),e?f.getZoomOnMarker()&&(f.zoomOnMarker(e),f.viewMarker(e)):(f.removeDealerDetail(),a(this.settings.dealerDetailContainerSelect).trigger("noDealerSelected")),f},centerOnLatLng:function(a){var b,c,d,e,f=this.map,g=f.getBounds(),h=0,i=0,j=new google.maps.LatLngBounds;return o.info("centerOnLatLng"),void 0!==g?(h=g.getNorthEast(),i=g.getSouthWest
18(),b=a.lat()-h.lat(),c=a.lat()-i.lat(),Math.abs(c)<Math.abs(b)?i=new google.maps.LatLng(i.lat()+(b+c),i.lng()):h=new google.maps.LatLng(h.lat()+(c+b),h.lng()),d=a.lng()-h.lng(),e=a.lng()-i.lng(),Math.abs(e)<Math.abs(d)?i=new google.maps.LatLng(i.lat(),i.lng()+(d+e)):h=new google.maps.LatLng(h.lat(),h.lng()+(e+d)),j.extend(i),j.extend(h)):o.debug("map.getBounds() returned undefined in centerOnLatLng c_022.js"),f.fitBounds(j),this},getCountryGeolocationData:function(){var b,c=this.settings.HELIOS.config.common.api.apigee.countryCode,d=a.Deferred();return o.info("getCountryGeolocationData"),this.countryGeolocationData?d.resolve(this.countryGeolocationData):(b=new google.maps.Geocoder,b.geocode({address:c},i.bind(function(a,b){b===google.maps.GeocoderStatus.OK?(this.countryGeolocationData=a,d.resolve(this.countryGeolocationData)):d.reject()},this))),d.promise()},centerOnCountry:function(){o.info("centerOnCountry"),this.getCountryGeolocationData().done(i.bind(function(a){var b,c;i.isUndefined(a)||(b=a[0].geometry,this.map.setCenter(b.location),c=new google.maps.LatLngBounds,c.union(b.viewport),this.map.fitBounds(c))},this)).fail(function(){o.warn("Could not centre on country. No country geolocation data.")})},checkClusterLevel:function(b,c){var d;return o.info("checkClusterLevel"),d=a(q.listViewTriggerSelector).hasClass(q.activeClass)?c.getMaxZoom():b.getZoom(),d<=c.getMaxZoom()?c.setMaxZoom(d-1):d>x&&c.setMaxZoom(x),this},setActiveMarker:function(a,b){var c,d,e=this.activeDealer,f="is-active-marker",g=a.get("markerStyle");return o.info("setActiveMarker("+b+")"),e&&(c=this.collectionInstance.get(e),this.activeDealer=!1,this.setActiveMarker(c,!1)),this.$el.data(q.data.activeDealerType,a.get("dealerType")),c=a.get("marker"),d=c.get("labelClass"),d=d.replace(f,""),b?(d=d+" "+f,this.setMarkerIcon(c,g,!0),j(c,"active"),this.activeDealer=a.get("id"),this.$el.trigger(this.settings.events.dealerSelected)):(this.setMarkerIcon(c,g,!1),j(c,!1)),window.HELIOS.state.dealer=window.HELIOS.state.dealer||{},window.HELIOS.state.dealer.id=this.activeDealer,c.set("labelClass",d),this},disableActiveMarker:function(){var a,b=this.activeDealer;o.info("disableActiveMarker"),b&&(a=this.collectionInstance.get(b),this.setActiveMarker(a,!1)),this.activeDealer=!1},updateMarker:function(a,b,c){var d=a.get("marker"),e=a.get("markerStyle");if(void 0===b?(d.set("labelContent",""),d.set("labelClass",""),this.setMarkerIcon(d,e,!1),j(d,!1)):j(d,"result",b),!1)try{d.label.draw()}catch(f){o.error("updateMarker - "+f.message)}},removeDealerDetail:function(){o.info("removeDealerDetail"),a(this.settings.dealerDetailContainerSelect).empty().parentsUntil("map-wrapper").removeClass(y),this.refresh()},loadingDealerDetail:function(){return a(this.settings.dealerDetailContainerSelect).addClass(this.settings.detailsLoadingClass),this},showDealerDetail:function(b,c,d){var e,f,g,j,k,l,m,n="single-digit",p=this;return o.info("showDealerDetail"),p.dealerTemplate&&(e=b.toJSON(),!0===i.contains(p.resultsList,e.id)&&(e.hasPagination=!0),g=p.settings.isGeolocated(),j=b.get("position"),(j>=9||void 0===b.get("position"))&&(n=""),a.extend(e,{isSingleDigit:n,mygeolocation:g,resultsTotal:this.resultsList.length}),f=p.dealerTemplate(e),l=a(p.settings.dealerDetailContainerSelect),m=a.Event("dealerSelected",e),l.trigger("analytics.dealerSelected",e).trigger(m),l.removeClass(p.settings.detailsLoadingClass).html(f),k=p.$el.parent().parent(),!1===k.hasClass(y)&&(k.addClass(y),google.maps.event.trigger(p.map,"resize"),
19p.map.setCenter(b.get("marker").getPosition())),h.renderDisclaimers(l),a(p.settings.backToMyAccountCloseButton).on("click",function(){return a(this).parents(p.settings.backToMyAccountWrapper).addClass(p.settings.inactiveClass),!1})),p.setActiveMarker(b,!0),p.isMapVisible()&&p.centerActiveDealer(!0),!d&&p.isMapVisible()&&this.trackMarkerClick(b),a(this.settings.dealerDetailContainerSelect).trigger("dealerWasSelected"),this.settings.onShowDealerDetail&&this.settings.onShowDealerDetail(),l},dealerSelection:function(b,c){var d=a(b.target),e=d.attr("data-id");o.info("dealerSelection"),b.preventDefault(),b.stopImmediatePropagation(),c.chosenDealerId=e,d.trigger("dealer-selected",[e])},selectDealer:function(){o.info("selectDealer"),a(this.settings.dealerDetailContainerSelect).find(q.buttonSelect).trigger("click",this)},dealerPagination:function(b){var c,d,e,f=a(b.target),g=1,h=f.attr("data-id"),j=i.indexOf(this.resultsList,h),k=q.buttonNext;b.preventDefault(),f.hasClass("js-btn-prev")&&(g=-1,k=q.buttonPrev),c=j+g,c<0?c=this.resultsList.length-1:c>=this.resultsList.length&&(c=0),d=this.collectionInstance.get(this.resultsList[c]),e=this.showDealerDetail(d,!0),e.find(k).focus(),this.map.setCenter(d.get("marker").getPosition())},addMarker:function(b,c,d,e){var f,g=this,h=e?"Active":"Inactive",i={draggable:!1,raiseOnDrag:!1,map:g.map,icon:g.icons.alphaInactive,labelContent:"",labelAnchor:new google.maps.Point(this.labelanchorLeft,this.labelanchorTop),labelClass:""};return!!c&&(f=a.extend({},i,b),f.position=new google.maps.LatLng(c.latitude,c.longitude),d&&g.icons[d+h]&&(f.icon=g.icons[d+h]),new window.MarkerWithLabel(f))},addDealerMarkers:function(b,c){var d=this,e=d.collectionInstance,f=[],g=this.settings.markerCreationBatchSizeIE;return o.info("addDealerMarkers"),a("html").hasClass("ltie9")||(g=this.settings.markerCreationBatchSize,o.info("addDealerMarkers - batchSize: "+g)),this.addDealerMarkersBatch(f,e,1,g).done(function(a){d.extendBounds(a)})},addDealerMarkersBatch:function(b,c,d,e){var f=this,g=function(){f.viewMarker(this)};return 1===d&&(f.batcherDeferred=a.Deferred()),i.defer(function(){var a,h,i,j=d*e-e,k=c.length,l=!1;for(h=0;h<e;h++){if(j+h+1>k){l=!0;break}a=c.at(j+h),i=f.addMarker({dealerId:a.get("id"),title:a.get("tradingName"),map:null},a.get("geolocation"),a.get("markerStyle")),google.maps.event.addListener(i,"click",g),a.set("marker",i),b.pu
19sh(i)}l?f.batcherDeferred.resolve(b):f.addDealerMarkersBatch(b,c,d+1,e)}),f.batcherDeferred.promise()},clusterMarkers:function(b,d,e,f){var g=this,h=new c(this.map,e,{gridSize:f,maxZoom:x,minimumClusterSize:2,styles:d,ignoreHidden:!0});return o.info("clusterMarkers"),this.markerCluster=h,a(this).trigger("mapFinishedLoading"),a(document).one("mapEventsReady",function(){a(g).trigger("mapFinishedLoading")}),h},extendBounds:function(b){var c=this,d=b||c.markerCluster.getMarkers(),e=new google.maps.LatLngBounds;return o.info("extendBounds"),d&&d.length&&(a.each(d,function(a,b){e.extend(b.getPosition())}),c.map.fitBounds(e)),this},getExtendBounds:function(){return!this.getZoomOnMarker()},setLocation:function(a,b,c){var d;return o.info("setLocation"),a&&b?(this.setAutoSelectFirstDealerInCollection(!1),d=new google.maps.LatLng(a,b),this.geoMarkerInstance=new window.MarkerWithLabel({position:d,clickable:!1,draggable:!1,raiseOnDrag:!1,map:this.map,icon:this.icons.geo,labelContent:"",title:c})):this.geoMarkerInstance&&(this.geoMarkerInstance.setMap(null),this.geoMarkerInstance=null),this},centerActiveDealer:function(a){var b,c,d,e=this;e.activeDealer&&(b=e.collectionInstance.get(e.activeDealer),c=b.get("geolocation"),d=new google.maps.LatLng(c.latitude,c.longitude),setTimeout(function(){a?e.map.panTo(d):e.map.setCenter(d)},100))},isMapVisible:function(){return this.$el.is(":visible")},destroy:function(){return this.$el=null,delete w[this.instanceId]},setMarkerIcon:function(a,b,c){var d=c?"Active":"Inactive",e=c?this.icons.alphaActive:this.icons.alphaInactive;return b&&this.icons[b+d]&&(e=this.icons[b+d]),a.set("icon",e)}},{initInstance:l}}),define("c_040_listView",["jquery","underscore","logger","handlebars","backbone","storageManager","disclaimers"],function(a,b,c,d,e,f,g){"use strict";function h(a,b,c){return new s(a,b,c)}var i,j,k,l,m,n,o,p,q={classes:{hasPagination:"hasPagination",singleDigit:"single-digit",showMore:"is-showing-more",inactive:"inactive"},selectors:{container:".grid-row",showMore:".btn-show-more",template:".lb_template_c-40-2_list",viewListActions:".view-list-actions",filterContainer:".filter-results-group",prefilter:".dealer-locator-prefilter",moreDealerInfo:".more-dealer-info",accordionGroup:".accordion-group",accordionChildHeader:".accordion-child-header",accordionPanel:".accordion-panel",backToMyAccountWrapper:".back-to-my-account-wrapper",componentChild:".c_040-2",c040Form:".c_040-form",locationResults:".location-results",c040Component:".c_040",selectDealer:".c_019 .c_040 .form-group select"},template:{selectedDealerTemplate:"[data-template='selectedDealerTemplate']"},triggers:{change:"change"},loggedInCookie:"OwnerServicesLoggedInName"},r={callbacks:"callbacks",findADealer:"findADealer",currentPage:"currentPage",dealerNumber:"dealerNumber",showMoreAction:"showMoreAction",currentView:"currentView",loggedIn:"loggedIn",position:"position",page:"page",size:"size",showMoreLabel:"showMoreLabel",showLessLabel:"showLessLabel",currentServiceFilter:"currentServiceFilter",dealerSearchUrl:"dealer-search-url",dealerListUrl:"dealer-list-url",dataDealerAction:"data-dealer-action"};k=e.Model.extend({initialize:function(){this.listenTo(this.collection,"reset",this.resetHandler)},resetHandler:function(){this.trigger("reset:listItem"),this.clear(),this.destroy()}}),l=e.Collection.extend({model:k}),m=e.View.extend({className:"col-4",events:{"click .btn-select-dealer":"selectDealerOnClick","click .back-to-my-account-wrapper i.close":"dismissPreferredDealerMessage","click .btn-show-more":"toggleMoreInfo","click .icon-map-view":"viewOnMapHandler","touchend .btn-show-more":"toggleMoreInfo","mouseup .icon-directions":"onAnalyticsTracking","mouseup .detail-list .icon-email":"onAnalyticsTracking","mouseup .detail-list .icon-external-link":"onAnalyticsTracking","mouseup .contact-us a":"onAnalyticsTracking","touchend .icon-directions":"onAnalyticsTracking","touchend .detail-list .icon-email":"onAnalyticsTracking","touchend .detail-list .icon-external-link":"onAnalyticsTracking","touchend .contact-us a":"onAnalyticsTracking"},template:function(a){return n(a)},initialize:function(){this.listenTo(this.model,"add",this.render),this.listenTo(this.model,"reset:listItem",this.remove),this.listenTo(this.model,"showMoreClose:listItem",this.closeMoreInfo)},createAddressString:function(){var c;return c=a.map(this.model.get("address"),function(a,b){return[a]}),c=b.compact(c),c.join(", ")},trackEvent:function(a){var b={componentId:"C40_Dealer_List_View",dealerAction:a,dealerName:this.model.get("tradingName"),dealerId:this.model.get("id"),dealerAddress:this.createAddressString(),dealerType:this.model.get("dealerType")||"unknown"};p.tag("dealerInteraction",b)},trackShowMore:function(){this.trackEvent("show more")},closeMoreInfo:function(){var a=this.model.get(r.showMoreLabel),b=this.$el.find(q.selectors.showMore+" > span");b.text(),this.$el.children(q.selectors.componentChild).removeClass(q.classes.showMore),b.text(a)},toggleMoreInfo:function(a){var b=this.model.get(r.showMoreLabel),c=this.model.get(r.showLessLabel),d=this.$el.find(q.selectors.showMore+" > span"),e=d.text();3!==a.which&&(a.preventDefault(),this.trackShowMore(),this.$el.children(q.selectors.componentChild).toggleClass(q.classes.showMore),d.text(e===b?c:b),this.model.trigger("showMore:listItem",this.model.get("id")))},onAnalyticsTracking:function(b){var c={"get-direction":"get directions",email:"email",call:"call","discover-dealer":"discover dealer"},d=a(b.currentTarget).attr(r.dataDealerAction),e=c[d]||"";3!==b.which&&this.trackEvent(e)},viewOnMapHandler:function(b){var c;3!==b.which&&(b.preventDefault(),this.trackEvent("view on map"),this.model.viewOnMap(!1,this.model.get("id")),c=this.$el.closest(q.selectors.locationResults),c.length&&a("html, body").animate({scrollTop:c.offset().top},function(){c.find("[data-view=map]").focus()}))},selectDealerOnClick:function(b){var c=a.extend({},{suggestedName:this.model.attributes.suggestedName,dealerId:this.model.attributes.id,distance:this.model.attributes.distance,country:this.model.attributes.country},this.model.attributes.address,this.model.attributes.contact),e=d.compile(a(q.template.selectedDealerTemplate).html());window.HELIOS.state.dealer=window.HELIOS.state.dealer||{},window.HELIOS.state.dealer.id=c.dealerId;var g=window.location.search;if(g.length){for(var h={},i=g?g.substring(1).split("&"):[],j=0;j<i.length;j++){var k=i[j].split("=");h[k[0]]=k[1]}var l=Object.keys(h);if(l.indexOf("configurationHash")>-1&&l.indexOf("modelCode")>-1){var m=document.getElementById("dealerid"),n=document.getElementById("dealername"),o=document.getElementById("dealeremail"),p=document.getElementById("dealerphone"),r=document.getElementById("dealeraddress1"),s=document.getElementById("dealeraddress2"),t=document.getElementById("dealercity"),u=document.getElementById("dealercountry"),v=document.getElementById("dealerpostalcode");m&&m.setAttribute("value",c.dealerId?c.dealerId:""),n&&n.setAttribute("value",c.suggestedName?c.suggestedName:""),o&&o.setAttribute("value",c.email?c.email:""),p&&p.setAttribute("value",c.phone?c.phone:""),r&&r.setAttribute("value",c.addressLine1?c.addressLine1:""),s&&s.setAttribute("value",c.addressLine2?c.addressLine2:""),t&&t.setAttribute("value",c.city?c.city:""),u&&u.setAttribute("value",c.country?c.country.toUpperCase():""),v&&v.setAttribute("value",c.postalCode?c.postalCode:""),f.saveItem("PreferedDealerInfo",c,{mode:"sessionStorage"})}}this.trackEvent("select this dealer"),a("body").trigger("selectThisDealerEvent",[e(c),this.model]),a(q.selectors.selectDealer).val(c.dealerId).trigger(q.triggers.change)},dismissPreferredDealerMessage:function(b){b.preventDefault(),a(b.target).parents(q.selectors.backToMyAccountWrapper).addClass(q.classes.inactive)}
19,render:function(){return this.$el.html(this.template(this.model.toJSON())),this.model.set(r.showMoreLabel,this.$el.find(q.selectors.showMore+" > span").text()),this.model.set(r.showLessLabel,this.$el.find(q.selectors.showMore).data("alt")),this}}),j=e.Model.extend({callbacks:{isGeolocated:a.noop},defaults:{callbacks:{},loggedIn:!1,page:1,size:6,dealerSearchUrl:"",dealerListUrl:"",preferredDealerID:"",showMoreCurrentID:""},initialize:function(){a.each(this.get(r.callbacks),a.proxy(function(a,b){this.callbacks[a]=b},this)),f.loadItem(q.loggedInCookie,{mode:"cookie"})&&this.set(q.loggedIn,!0)}}),i=e.View.extend({events:{"click .btn-view-list":"checkDevice"},initialize:function(c){b.extend(this,b.pick(c,"geoloc")),this.model.set(r.dealerSearchUrl,a(".c_040").data(r.dealerSearchUrl)),this.model.set(r.dealerListUrl,a(".c_040").data(r.dealerListUrl)),this.model.set(r.size,a('.c_152-0 input[name="size"]').val()),this.requestListData(),this.$container=this.$el.children(q.selectors.container),this.$container.empty(),this.$viewListActions=this.$el.find(q.selectors.viewListActions),this.listenTo(this.collection,"add",this.addDealer),this.listenTo(this.collection,"reset",this.requestListData),this.listenTo(this,"reset",this.resetDealers),this.collection.on("showMore:listItem",this.showMoreHandler,this),a(".btn-more").off("click").on("click",this.loadMoreDealer.bind(this))},showMoreHandler:function(a){var b=this.model.get("showMoreCurrentID");b&&this.collection.get(b).trigger("showMoreClose:listItem"),this.model.set("showMoreCurrentID",a===b?"":a)},requestListData:function(c){var d=0==this.$el.closest(q.selectors.c040Form).length?this.$el.closest(q.selectors.c040Component):this.$el.closest(q.selectors.c040Form),e=d.find("input[name=location]").val(),f=d.find("input[name=latlong]").val(),g=a("input[name=_charset_]").val(),h=a(q.selectors.filterContainer).data(r.currentServiceFilter)||a(q.selectors.prefilter).val(),i=e&&e.length?this.model.get(r.dealerSearchUrl):this.model.get(r.dealerListUrl),j="",k="",l=this.geoloc.isDealerSelected(),m=this.geoloc.isCurrentLocation(),c=c||!1,n={_charset_:g,page:this.model.get(r.page),size:this.model.get(r.size)};this.moreDealerRequest=!0===c,h&&(n["dealer-services"]=h),e&&e.length&&(l||m?n.latlong=f:n.location=e),b.each(n,function(a,b){"latlong"===b?k="/"+b+"/"+a:"location"===b?k="/"+b+"/"+a:j+="/"+b+"/"+a}),j+=k,this.activeAjaxRequest=a.ajax({url:i+(j.length?j+"/data.json":""),type:"GET",success:a.proxy(this.onRequestSuccess,this),error:a.proxy(this.onRequestError,this)})},onRequestSuccess:function(a){if(null===a)return o.warn("Response for list view data returned null"),!1;if(a&&a.dealers&&this.formatDealers(a.dealers),a&&void 0!==a.totalResults&&this.loadMoreDisplayHandler(a.totalResults),!0===this.moreDealerRequest){var b=this.geoloc.$el.find("span.search-complete");b.length>0&&b.text(b.text()+" ")}this.moreDealerRequest=!1},onRequestError:function(a){o.warn("Ajax request from C_040_ListAppView for dealers' data failed."),this.moreDealerRequest=!1},handleAccordionClick:function(a,b){a.find(q.selectors.accordionChildHeader).on("click",function(c){c.stopPropagation(),a.toggleClass("active"),b="closed"===b?"open":"closed",a.find(q.selectors.accordionChildHeader).attr("data-state",b),a.find(q.selectors.accordionPanel).attr("data-state",b)})},formatDealers:function(b){var c,d=b.length,e=q.classes.singleDigit;for(c=0;c<d;c++){(c>=9||!b[c][r.position])&&(e=""),b[c].mygeolocation=this.model.callbacks.isGeolocated(),b[c].isSingleDigit=e,b[c].preferredDealer=this.model.get("preferredDealerID")===b[c].id,b[c].averageStarRating&&(b[c].dealerRating=this.formatStarRating(b[c])),this.createDealer(b[c]);var f=a(".dealer-"+b[c].id).siblings(q.selectors.moreDealerInfo).find(q.selectors.accordionGroup),g=f.find(q.selectors.accordionChildHeader).attr("data-state");this.handleAccordionClick(f,g)}},formatStarRating:function(b){var c=[];return a.each(b.averageStarRating,function(a,b){var d=b.displayScore;d&&c.push({title:b.title,grade:d,number:b.numberOfReviews,percent:20*d,type:a})}),c},createDealer:function(a){this.collection.add(a)},checkIsNewDealer:function(a){return!this.$container.find(".dealer-"+a).length},addDealer:function(a){var c=b.extend(a,{viewOnMap:this.model.callbacks.viewOnMap}),d=new m({model:c}
19);this.checkIsNewDealer(d.model.id)&&(this.$container.append(d.render().el),g.renderDisclaimers(this.$container))},removeAllDealers:function(){this.collection.reset()},loadMoreDisplayHandler:function(a){var b=parseInt(this.model.get(r.page)),c=parseInt(this.model.get(r.size)),d=a>b*c;this.$viewListActions.toggleClass(q.classes.hasPagination,d)},loadMoreDealer:function(a){a.preventDefault(),this.incrementPageNumber(),this.requestListData(!0)},incrementPageNumber:function(){var a=this.model.get(r.page);this.model.set(r.page,a+1)},resetDealers:function(){this.resetPageNumber().removeAllDealers()},resetPageNumber:function(){return this.model.set(r.page,1),this},setPreferredDealer:function(a){this.model.set("preferredDealerID",a)}});var s=function(b,e,g){var h;if(this.settings=a.extend({},q,e),p=e.analyticsManager,o=new c({prefix:"C_040_ListView"}),!(h=a(q.selectors.template).html()))return o.warn("listview template not found"),!1;this.model=new j(e),this.view=new i({el:b,model:this.model,collection:new l,geoloc:e.geoloc}),n=d.compile(h),f.init()};return{init:h}}),define("stringUtilities",["underscore"],function(a){"use strict";function b(){if(!(this instanceof b))return new b}return b.prototype.escapeRegExSpecialCharacters=function(a){return a.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")},b.prototype.allReplace=function(a,b){var c=a;for(var d in b)c=c.replace(new RegExp(d,"g"),b[d]);return c},String.prototype.limitLineCharacters=function(b){if(a.isNumber(b)){var c,d=this.charAt(b-1),e=this.charAt(b),f="&hellip;";if(b!==this.length&&d&&b&&" "!==d&&" "!==e){for(c=b-1;c>=0;c--)if((d=this.charAt(c))&&" "===d){b=c;break}return c>0?this.substring(0,b+1)+f:""}return this.substring(0,b)+f}},b.prototype.digest=function(a){var b=(new TextEncoder).encode(a);return crypto.subtle.digest("SHA-256",b).then(function(a){return Array.prototype.slice.call(new Uint8Array(a)).map(function(a){return("00"+a.toString(16)).slice(-2)}).join("")})},b}),define("heliosLocation",["underscore","remoteServices"],function(a,b){"use strict";var c=function(a){a=a||{},this.dealerLocation=a.dealerLocation||{},this.location=a.location||{},this.postalCode=a.postalCode,this.ip=a.ip,this.regionCode=a.regionCode};return c.prototype.getDealerNameAddress=function(){return this.dealerLocation&&this.dealerLocation.dealerName+", "+this.dealerLocation.address},c.prototype.getDealerAddress=function(){return this.dealerLocation&&this.dealerLocation.address},c.prototype.getDealerPhoneNumber=function(){return this.dealerLocation&&this.dealerLocation.phone},c.prototype.getDealerId=function(){return this.dealerLocation&&this.dealerLocation.dealerId},c.prototype.getDealerType=function(){return this.dealerLocation&&this.dealerLocation.type},c.prototype.getDealerLat=function(){return this.dealerLocation&&this.dealerLocation.lat},c.prototype.getDealerLng=function(){return this.dealerLocation&&this.dealerLocation.lng},c.prototype.getDealerWebsite=function(){return this.dealerLocation&&this.dealerLocation.website},c.prototype.getDealerName=function(){return this.dealerLocation&&this.dealerLocation.dealerName},c.prototype.getDealerStateCode=function(){return this.dealerLocation&&this.dealerLocation.stateCode},c.prototype.getDealerStatePostalCode=function(){return this.dealerLocation&&this.dealerLocation.statePostalCode},c.prototype.getDealerPostalCode=function(){return this.dealerLocation&&this.dealerLocation.postalCode},c.prototype.getPostalCode=function(){return this.postalCode},c.prototype.getIp=function(){return this.ip},c.prototype.getUserAddress=function(){return this.location&&this.location.address},c.prototype.getLocalityName=function(){return this.location&&this.location.localityName&&this.location.localityName.long_name},c.prototype.getUserLat=function(){return this.location&&this.location.lat},c.prototype.getUserLng=function(){return this.location&&this.location.lng},c.prototype.getUserMapId=function(){return this.location&&this.location.locationId},c.prototype.setDealerId=function(a){return this.dealerLocation.dealerId=a,this},c.prototype.getRegionCode=function(){return this.regionCode},c.prototype.setUserLocationFromGooglePlaceResult=function(b,c){var d,e,f,g,h,i,j,k,l;return b&&(e=b.postalCode,e||(d=a.find(b.address_components,function(b){return a.contains(b.types,"postal_code")}),e=d&&d.long_name),a.isEmpty(c)||a.map(c,function(b){a.find(b.address_components,function(b){if(a.contains(b.types,"administrative_area_level_1"))return g=b,!1})}),a.isEmpty(b)||a.find(b.address_components,function(b){if(a.contains(b.types,"administrative_area_level_1"))return i=b,!1}),j=$.grep(c,function(a){return $.grep(a.address_components,function(a){return-1!==$.inArray("locality",a.t
19ypes)||-1!==$.inArray("administrative_area_level_2",a.types)}).length>0}),k=$.grep(c,function(a){return $.grep(a.address_components,function(a){return-1!==$.inArray("administrative_area_level_1",a.types)}).length>0}),$(j).each(function(b){f=a.find($(this)[0].address_components,function(b){return a.contains(b.types,"locality")||a.contains(b.types,"administrative_area_level_2")})}),$(k).each(function(b){g=a.find($(this)[0].address_components,function(b){return a.contains(b.types,"administrative_area_level_1")})}),h=g&&g.short_name,l=g&&g.long_name,this.location={localityName:f||"",address:b.formatted_address,lat:b.geometry.location.lat(),lng:b.geometry.location.lng(),locationId:b.place_id,addressComponents:b.address_components},this.postalCode=a.isUndefined(e)?"":e,this.regionCode=h,l&&(this.regionName=l)),this},c.prototype.toJSON=function(){return{dealerLocation:this.dealerLocation,location:this.location,postalCode:this.postalCode,ip:this.ip?this.ip:"",regionCode:this.regionCode?this.regionCode:""}},c.prototype.setUserAddress=function(a){return this.location.address=a,this},c}),define("c_152_0_autocomplete",["jquery","underscore","googleMapsSingleton","logger","handlebars","stringUtilities","objectFactory","heliosLocation"],function(a,b,c,d,e,f,g,h){"use strict";function i(a,b,c){return new m(a,b,c)}var j,k="autocomplete",l={APIevents:{close:"close",complete:"complete",initialized:"initialized"},attributes:{autocomplete:"autocomplete"},classes:{noResult:"no-result",resultsActive:"is-active",topSuggestion:"top-suggestion"},datas:{dealerId:"dealer-id",noResultsText:"no-results-text",value:"value",placeId:"place-id"},events:{click:"click."+k,focus:"focus."+k,focusin:"focusin."+k,focusout:"focusout."+k,keydown:"keydown."+k,keyup:"keyup."+k,mouseenter:"mouseenter."+k,resize:"resize."+k},selectors:{resultsList:".autocomplete-suggestions",suggestion:"button",template:'script[type="text/x-handlebars-template"]',btnSearch:".btn-search"},defaultKey:"suggestedName",exclude:[],fallbackKey:"tradingName",maxResults:5,minMaxHeight:150,onPlaceChanged:a.noop},m=function(b,d,e){if(window.googleMapInitiated)var f=this,g=setInterval(function(){"undefined"!=typeof google&&google.maps&&google.maps.places&&(clearInterval(g),b&&d&&e&&f.init(b,d,e))},100);else window.googleMapInitiated=!0,c.getDeferred().done(a.proxy(function(){"undefined"!=typeof google&&google.maps&&google.maps.places&&b&&d&&e&&this.init(b,d,e)},this));return this};return m.prototype={$el:null,$resultsList:null,events:{},dealerCollection:[],focusOutTimeout:-1,googleAutocompleteService:null,initialized:!1,key:l.defaultKey,noResultsText:!1,request:{types:["geocode"],input:""},resizeTimeout:-1,settings:null,topSuggestion:!1,init:function(a,b,c){j=new d({prefix:"C152-0"}),this.$el=a,this.$resultsList=a.parent().find(l.selectors.resultsList),this.$btnSearch=a.parent().find(l.selectors.btnSearch),this.template=this.getTemplate(),this.initSettings(b).initCollection(c).bindEvents(),google.maps.places&&(this.googleAutocompleteService=new google.maps.places.AutocompleteService),this.noResultsText=this.$el.data(l.datas.noResultsText),this.selectedDealerId="",this.initialized=!0,this.trigger(l.APIevents.initialized)},getTemplate:function(){var a=this.$resultsList.find(l.selectors.template),b=e.compile(a.html(),{noEscape:!0});return a.remove(),b},initSettings:function(b){return this.settings=a.extend({},l,b),b.countryCode&&(this.request.componentRestrictions={country:b.countryCode.length>2?b.countryCode.substring(0,2):b.countryCode}),this},initCollection:function(a){var b;return a&&a.first&&(this.collection=a,this.collection.first()&&(b=this.collection.first())&&!1===b.has(this.key)&&(this.key=l.fallbackKey)),this.dealerNameKey=this.key,this},bindEvents:function(){return this.$el.attr(l.attributes.autocomplete,"off").on(l.events.keydown,a.proxy(this.inputKeyDownHandler,this)).on(l.events.keyup,a.proxy(this.inputKeyUpHandler,this)),this.$el.parent().on(l.events.focusout,a.proxy(this.focusOutHandler,this)).on(l.events.focusin,a.proxy(this.focusInHandler,this)),window.matchMedia&&window.matchMedia(this.settings.smallOrMedium).matches&&this.$el.on(l.events.focus,a.proxy(this.inputFocusHandler,this)),this.$resultsList.on(l.events.click,l.selectors.suggestion,a.proxy(this.selectionHandler,this)).on(l.events.keydown,l.selectors.suggestion,a.proxy(this.listKeyDownHandler,this)).on(l.events.mouseenter,l.selectors.suggestion,a.proxy(this.listHoverHandler,this)),!1!==this.settings.maxHeight&&(a(window).on(l.events.resize,a.proxy(this.onResize,this)),this.isSmallBreakpoint()&&this.refreshResultHeight()),this},isSmallBreakpoint:function(){return window.matchMedia&&window.matchMedia(this.settings.matchMediaTest).matches},onResize:function(){window.clearTimeout(this.resizeTimeout),this.resizeTimeout=window.setTimeout(a.proxy(this.refreshResultHeight,this),80)},refreshResultHeight:function(){var b,c,d=0,e=this.$resultsList.parent();return b=a(window).height(),this.isSmallBreakpoint()&&(b/=2),c=e.offset(),d=b-c.top-e.height(),d<this.settings.minMaxHeight&&(d=this.settings.minMaxHeight),this.$resultsList.css("max-height",d),this},inputFocusHandler:function(a){var c,d=document.documentElement;window.pageXOffset||d.scrollLeft,d.clientLeft;c=this.$el.offset().top-10,window.scroll(0,c),b.defer(function(){window.scroll(0,c)})},inputKeyUpHandler:function(b){var c;
1913!==b.which&&(c=a.trim(this.$el.val()),c!==this.request.input?(this.request.input=c,-1===a.inArray(c,this.settings.exclude)?this.searchAction():this.hideSuggestions()):40===b.which?this.focusSuggestion(0):27===b.which&&this.hideSuggestions())},inputKeyDownHandler:function(a){if(40===a.which)return a.preventDefault(),this.focusSuggestion(0)},focusOutHandler:function(b){this.$resultsList.hasClass(l.classes.resultsActive)&&(this.$el.attr("aria-expanded",!0),window.clearTimeout(this.focusOutTimeout),this.focusOutTimeout=window.setTimeout(a.proxy(function(){this.hideSuggestions(),this.trigger(l.APIevents.close)},this),200))},focusInHandler:function(a){window.clearTimeout(this.focusOutTimeout)},listKeyDownHandler:function(b){var c,d,e=0;if(40===b.which?e=1:38===b.which&&(e=-1),0!==e)return c=a(b.target),d=c.parent().index(),this.focusSuggestion(d+e,e),!1},listHoverHandler:function(b){var c=a(b.currentTarget).index();this.focusSuggestion(c)},focusSuggestion:function(a,b){var c=this.$resultsList.find("li button"),d=l.classes.topSuggestion;return c.filter("."+d).removeClass(d),a<0?a=c.length-1:a>=c.length&&(a=0),c.eq(a).focus(),this},hideSuggestions:function(a){return this.$resultsList&&(this.$resultsList.empty().removeClass(l.classes.resultsActive),this.$el.attr("aria-expanded",!1),""===this.$el.val()&&(this.$resultsList.removeClass(l.classes.noResult),this.$btnSearch.prop("disabled",!1))),!0===a&&(this.topSuggestion=!1),this},getSelectedDealerId:function(){return this.selectedDealerId},setSelectedDealerId:function(a){this.selectedDealerId="string"==typeof a?a:""},setCountryRestriction:function(a){this.request.componentRestrictions.country=a},selectionHandler:function(b){var c,d,e,f,g,h=a(b.currentTarget);j.info("selectionHandler"),b.preventDefault(),h[0].nodeName.toLowerCase()!==l.selectors.suggestion&&(h=h.parent()),d=h.data(l.datas.value),e=h.data(l.datas.placeId),f=!1,c=h.data(l.datas.dealerId),this.setSelectedDealerId(c),window.HELIOS.state=window.HELIOS.state||{},window.HELIOS.state.dealer=null,window.HELIOS.state.dealerName=null,c&&""!==c&&(g=this.collection.get(c))&&(f=g.get("geolocation"),window.HELIOS.state.dealer=g,window.HELIOS.state.dealerName=d),this.hideSuggestions(!0),this.settings.onPlaceChanged({geolocation:f,name:d,placeId:e})},searchAction:function(){j.info("searchAction"),a.when(this.serviceCall(this.request),this.dealerSearch(this.request)).done(a.proxy(this.onComplete,this))},serviceCall:function(b){var c=this,d=a.Deferred();return j.info("serviceCall"),this.googleAutocompleteService.getPlacePredictions(b,function(a,b){c.serviceCallback(a,b,d)}),d.promise()},serviceCallback:function(a,b,c){var d=a;j.info("serviceCallback"),b!==google.maps.places.PlacesServiceStatus.OK&&(d=[]),c.resolve(d)},dealerSearch:function(c){var d=c.input.toLowerCase(),e=[],g=new f,h=a.Deferred();return j.info("dealerSearch"),d.length>1&&this.collection&&this.collection.length&&(d=g.escapeRegExSpecialCharacters(d),this.collection.each(b.bind(function(a,c,f){a.id!==a.get("id")&&(a.id=a.get("id"));var g=a.get(this.key),h=[];g&&g.length&&(h=g.match(new RegExp(d,"gi"))),h&&(this.settings.showApiResultsOnly||!0===a.get("visible")||b.isUndefined(a.get("visible")))&&e.push(a)},this)),e.sort(a.proxy(this.sortByName,this))),h.resolve(e),h.promise(e)},sortByName:function(a,b){var c=a.get(this.dealerNameKey),d=b.get(this.dealerNameKey);return c>d?1:c<d?-1:0},onComplete:function(a,b){var c=[];j.info("onComplete"),this.topSuggestion=!1,b.length&&(c=this.extractDealers(b)),a.length&&(c=this.extractServices(a,c.length).concat(c)),0===c.length?this.onNoResults():this.onResults(c),this.trigger(l.APIevents.complete)},onNoResults:function(){this.noResultsText&&""!==this.noResultsText?(this.$resultsList.html("<span>"+this.noResultsText+"</span>").addClass(l.classes.resultsActive+" "+l.classes.noResult),this.$el.attr("aria-expanded",!0),this.$btnSearch.prop("disabled",!0)):this.hideSuggestions(!0)},onResults:function(a){var b=this.formatResult(a);this.$resultsList.html(this.template(b)).addClass(l.classes.resultsActive).removeClass(l.classes.noResult),this.$el.attr("aria-expanded",!0),this.$btnSearch.prop("disabled",!1),this.$resultsList.find("li button").eq(0).addClass(l.classes.topSuggestion)},formatResult:function(a){var b,c=a.length;for(b=0;b<c;b++)if(a[b].id)return a[b].firstDealer=!0,a;return a},extractServices:function(a,b){var c,d,e,f,g,h=[],i=a.length;for(this.settings.maxResults&&(i=this.settings.maxResults-b)>a.length&&(i=a.length),g=0;g<i;g++)f=a[g],d=f.description,e=f.place_id,c=f.markerStyle?"marker-"+f.markerStyle:"marker-alpha",h.push({value:d,text:this.highlightTerm(d),markerStyle:c,placeId:e});return this.topSuggestion={geolocation:!1,name:a[0].description},h},extractDealers:function(a){var b,c,d,e,f=[],g=a.length;for(this.settings.maxResults&&(g=Math.floor(this.settings.maxResults/2)),a.length<g&&(g=a.length),e=0;e<g;e++)c=a[e],d=c.get(this.key),b=c.get("markerStyle")?"marker-"+c.get("markerStyle"):"marker-alpha",f.push({value:d,text:this.highlightTerm(d),id:c.id,markerStyle:b});return this.topSuggestion={geolocation:a[0].get("geolocation"),name:a[0].get(this.key)},f},trigger:function(a,b){var c=void 0===b?this:b;if(void 0!==this.events[a])for(var d=0;d<this.events[a].length;d++)this.events[a][d](c)},on:function(a,b){return void 0===a||"function"!=typeof b?this:(void 0!==this.events[a]?this.events[a].push(b):this.events[a]=[b],"initialized"===a&&this.initialized&&b(this),this)},off:function(a){return void 0!==this.events[a]&&(this.events[a]=[]),this},highlightTerm:function(a){var b=this.request.input,c=new f,d=new RegExp(c.escapeRegExSpecialCharacters(b),"i");return a.replace(d,"<b>$&</b>")},destroy:function(){this.$resultsList.off("."+k).remove(),this.$el.off(l.events.keyup).parent().off(l.events.focusout),this.$resultsList=null,this.$el=null,this.collection=null,this.googleAutocompleteService=null},getPostalCodeFromPlace:function(a){var c;if(a)return(c=b.find(a.address_components,function(a){return b.contains(a.types,"postal_code")},this))&&c.long_name},resolveLocationFromPlace:function(a,c,d){var e,f,i,j;return i=b.find(a,function(a){return b.contains(a.types,"postal_code")},this),j=this.getPostalCodeFromPlace(i),f=b.first(a),!d||b.find(f.address_components,function(a){return b.contains(a.types,"country")}).short_name===d?(f.postalCode=j,e=g.getObject(h),e.setUserLocationFromGooglePlaceResult(f),c.resolve(e),c):(c.reject(window.google.maps.GeocoderStatus.INVALID_REQUEST),c)},searchReverseGeocode:function(d,e){var f=a.Deferred(),g=new window.google.maps.Geocoder;
19if(window.googleMapInitiated)var h=this,i=setInterval(function(){"undefined"!=typeof google&&google.maps&&google.maps.places&&(clearInterval(i),g&&g.geocode(d,b.bind(function(a,b){b===window.google.maps.GeocoderStatus.OK?h.resolveLocationFromPlace(a,f,e):f.reject(b)},h)))},100);else window.googleMapInitiated=!0,c.getDeferred().done(b.bind(function(){g&&g.geocode(d,b.bind(function(a,b){b===window.google.maps.GeocoderStatus.OK?this.resolveLocationFromPlace(a,f,e):f.reject(b)},this))},this));return f}},{init:i,Autocomplete:m}}),define("c_152_0",["jquery","underscore","c_152_0_autocomplete","heliosObject","logger","heliosLocation","backbone"],function(a,b,c,d,e,f){"use strict";function g(b,c,d,f){var g,i=a(c);if(h=new e({prefix:"C152-0"}),k=d,i.hasClass(m))return g=i.data(l),g instanceof s||(g=new s(i,b,f),i.data(l,g)),g;void 0!==c||document.body,
20a(parent).find(p.selector.root).each(function(a,c){var d=$root.eq(a);d.data(l)instanceof s||d.data(l,new s(d,b,f))})}var h,i,j,k,l="c_152_0",m="c_152-0",n="C40_Dealer_Single_View",o="C40_location_overlay",p={selector:{root:"."+m,input:".location-input",geoButton:".btn-geolocate",submitButton:".btn-search",valueInput:".location-value",suggestions:".autocomplete-suggestions",parentClass:".c_040",resultsText:".results-text",geoLocationErrorText:".geo-location-error",locationResults:".location-results",formRoot:".c_019"},events:{click:"click."+l,input:"input."+l,focus:"focus."+l,blur:"blur."+l,keypress:"keypress."+l},APIevents:{geolocation:"geolocation",submit:"submit",input:"input",initialized:"initialized",change:"change"},classes:{locatingActivity:"is-locating",located:"is-located",isActive:"is-active",onloadSmartLocation:"on-load-smartlocation",onSmartLocationError:"on-smartlocation-error"}},q={autocomplete:{countryCode:d.config.common.countryCode,matchMediaTest:d.config.common.mediaQuery.is.small,smallOrMedium:d.config.common.mediaQuery.is.smallOrMedium,exclude:[""],maxHeight:!1}},r=!1;i=Backbone.Model.extend({idAttribute:"id"}),j=Backbone.Collection.extend({model:i,allActiveResults:0});var s=function(a,c,d){this.options=c,this.attributes={value:!1,defaultText:null,geolocation:!1,label:"",previousQuery:!1,isValid:!1,initialized:!1,open:!1,wasGeoText:!1},this.getGeolocation=b.bind(this.getGeolocation,this),this.$el=a,this.$input=a.find(p.selector.input),this.$geoButton=this.$el.find(p.selector.geoButton),this.$value=this.$el.find(p.selector.valueInput),this.$submitButton=this.$el.find(p.selector.submitButton),this.analyticsManager=d,this.$parentEl=this.$el.closest(p.selector.parentClass),this.$resultText=this.$el.closest(p.selector.parentClass).find(p.selector.resultsText),this.$geoLocationErrorText=this.$el.closest(p.selector.parentClass).find(p.selector.geoLocationErrorText),this.$locationResults=this.$el.closest(p.selector.parentClass).find(p.selector.locationResults),this.events={},this.on=function(a,b){for(var c,d=a.split(" "),e=0;e<d.length;e++)void 0!==(c=d[e])&&"function"==typeof b&&(void 0!==this.events[c]?this.events[c].push(b):this.events[c]=[b],c===p.APIevents.initialized&&this.get("initialized")&&b(this));return this},this.off=function(a){return void 0!==this.events[a]&&(this.events[a]=[]),this},this.reset=function(a){this.collection.reset(a)},this.destroy=function(){this.unbindEvents(),this.autocomplete&&this.autocomplete.destroy()}};return s.prototype={events:[],init:function(){var a,b=this.options;return void 0!==b.collection&&(a=j.extend({url:b.collection.url,getDealer:b.collection.getDealer,getAllDealers:b.collection.getAllDealers,getActiveDealers:b.collection.getActiveDealers}),this.collection=new a),void 0!==b.settings&&this.initSettings(b.settings),this.set("defaultText",this.$geoButton.data("text")),this.$value.add(this.$input).val(""),this.get("autocomplete")&&(this.autocomplete=this.newAutocomplete()),this.bindEvents(),this.set("initialized",!0),this.trigger(p.APIevents.initialized,this),this.$el.trigger(l+":initialized",this),this.options.settings.showCurrentLocationDealersOnLoad&&this.getGeolocationFromSmartLocation(),this},newAutocomplete:function(){return c.init(this.$input,this.getAutocompleteSettings(),this.collection)},onAutocompleteInitialized:function(){this.$suggestions=this.$el.find(p.selector.suggestions)},onAutocompleteComplete:function(){this.get("open")?this.trigger("update"):(this.set("open",!0),this.trigger("open"))},onAutocompleteClose:function(){this.set("open",!1),this.trigger("close")},initSettings:function(b){a.extend(!0,this.attributes,b)},getAutocompleteSettings:function(){var a,c=q.autocomplete;return c.onPlaceChanged=b.bind(this.onAutocompletePlaceChanged,this),c.showApiResultsOnly=this.options.settings.showApiResultsOnly,a=this.get("defaultText"),a&&""!==a&&c.exclude.push(a),c},onAutocompletePlaceChanged:function(a,b){var c=a.geolocation;c?this.setGeolocation(c):this.setGeolocation(!1),this.setLabel(a.name),this.set("geoLocationFromSmartLocationError",!1),this.trigger(p.APIevents.change,b,a)},set:function(a,b){return this.attributes[a]=b,this.attributes[a]},get:function(a){return this.attributes[a]},trigger:function(a,b){var c=void 0===b?this:b,d=a;if(void 0!==this.events[a])for(var e=0;e<this.events[a].length;e++)this.events[a][e](c,d)},getGeolocation:function(a){a.preventDefault(),navigator.geolocation&&"function"==typeof navigator.geolocation.getCurrentPosition&&(this.options.settings.showCurrentLocationDealersOnLoad?this.getGeolocationFromSmartLocation(a):(this.$geoButton.blur().addClass(p.classes.locatingActivity),navigator.geolocation.getCurrentPosition(b.bind(this.geolocationCallback,this),b.bind(this.geolocationErrorCallback,this)))),this.get("autocomplete")&&this.autocomplete.hideSuggestions()},getGeolocationFromSmartLocation:function(a){var c,d=this.options.settings.smartLocationContext;this.$geoButton.addClass(p.classes.isActive+" "+p.classes.locatingActivity),a&&(d.profileManager.getSavedData().done(function(a){a&&a.dealerLocation&&a.dealerLocation.dealerId&&(c=a.dealerLocation.dealerId)}),d.profileManager.deleteData()),d.get().done(b.bind(function(e){b.isUndefined(e.getUserAddress())||b.isUndefined(e.getUserLat())||b.isUndefined(e.getUserLng())?b.isUndefined(e.getDealerId())?this.geoLocationFromSmartLocationErrorCallback(error,a):(this.set("dealerPresent",!0),this.geoLocationFromSmartLocationCallback(e,a)):(this.geoLocationFromSmartLocationCallback(e,a),b.isUndefined(e.getDealerId())||this.set("dealerPresent",!0),a&&
20c&&d.set(e.setDealerId(c)))},this)).fail(b.bind(function(b){this.geoLocationFromSmartLocationErrorCallback(b,a),a&&c&&d.set((new f).setDealerId(c))},this))},geolocationCallback:function(a){this.$geoButton.addClass(p.classes.located).toggleClass(p.classes.isActive+" "+p.classes.locatingActivity),this.$geoButton.hasClass(p.classes.isActive)?(this.setGeolocation(a.coords),this.setLabel(this.get("defaultText"))):(this.setLabel(""),this.deactivateGeoButton()),this.$submitButton.prop("disabled",!1),this.get("autocomplete")&&this.autocomplete.$resultsList&&this.autocomplete.$resultsList.removeClass("no-result"),this.trigger(p.APIevents.geolocation,a.coords)},geoLocationFromSmartLocationCallback:function(a,b){var c,d,e=a.getUserLat(),f=a.getUserLng(),g=a.getUserAddress();c={coords:{latitude:e,longitude:f,address:g,isGeoButtonActive:this.isGeoButtonActive()}},this.$geoButton.removeClass(p.classes.locatingActivity),this.setGeolocation(c.coords),this.set("defaultText",g),this.setLabel(g),this.set("geoLocationFromSmartLocationError",!1),this.$parentEl.addClass(p.classes.onloadSmartLocation),this.trigger(p.APIevents.geolocation,c.coords),!b&&this.$el.closest(p.selector.formRoot).length&&(d={componentId:o,contentAction:"allow|geolocation",locationInPage:g,buttonText:"allow"},this.analyticsManager.tag("buttonNoCookie",d)),this.$submitButton.prop("disabled",!1),this.get("autocomplete")&&this.autocomplete.$resultsList&&this.autocomplete.$resultsList.removeClass("no-result")},geoLocationFromSmartLocationErrorCallback:function(a,b){var c,d=this.options.settings.cannotFindYourLocationText;if(this.$geoButton.removeClass(p.classes.locatingActivity),this.$el.closest(p.selector.formRoot).length&&(b||("string"==typeof a&&"INVALID_REQUEST"===a&&(c={componentId:o,contentAction:"allow|geolocation",locationInPage:"",buttonText:"allow"}),"object"==typeof a&&a.code===a.PERMISSION_DENIED&&(c={componentId:o,contentAction:"deny|geolocation",locationInPage:"",buttonText:"deny"}),this.analyticsManager.tag("buttonNoCookie",c))),this.$submitButton.prop("disabled",!1),this.get("autocomplete")&&this.autocomplete.$resultsList&&this.autocomplete.$resultsList.removeClass("no-result"),"object"==typeof a&&a.code===a.PERMISSION_DENIED&&!b)return!1;this.setGeolocation(!1),this.$input.val(""),this.set("geoLocationFromSmartLocationError",!0),d&&(this.$resultText.html(d),this.$geoLocationErrorText.html(d),this.$locationResults.hasClass(p.classes.isActive)||this.$geoLocationErrorText.addClass(p.classes.isActive))},deactivateGeoButton:function(){this.$geoButton.removeClass(p.classes.isActive),this.isCurrentLocation()&&this.setLabel(""),this.setGeolocation(!1)},geolocationErrorCallback:function(a){var b;switch(this.setGeolocation(!1),this.setLabel(""),this.$geoButton.removeClass(p.classes.locatingActivity),this.$submitButton.prop("disabled",!1),this.get("autocomplete")&&this.autocomplete.$resultsList&&this.autocomplete.$resultsList.removeClass("no-result"),a.code){case a.PERMISSION_DENIED:b="User denied the request for Geolocation.";break;case a.POSITION_UNAVAILABLE:b="Location information is unavailable.";break;case a.TIMEOUT:b="The request to get user location timed out.";break;case a.UNKNOWN_ERROR:b="An unknown error occurred."}q.debug&&b&&h.error(b)},setGeolocation:function(a){a&&a.latitude&&a.longitude?(this.set("geolocation",a),this.set("value",a.latitude+","+a.longitude),this.$value.prop("disabled",!1).val(this.get("value"))):(this.set("geolocation",!1),this.set("value",!1),this.$value.val("")),this.updateValid()},setLabel:function(a){this.set("label",a),this.$input.val(a),this.updateValid()},updateValid:function(){var a=""!==this.get("geolocation")?this.get("geolocation"):this.get("label");this.set("isValid",0!==a.length)},isDealerSelected:function(){return""!==this.autocomplete.getSelectedDealerId()},isCurrentLocation:function(){return this.get("defaultText")===this.$input.val()},isGeoButtonActive:function(){return this.$geoButton.hasClass(p.classes.isActive)},searchTermExist:function(){return this.$input.val().length&&!this.isCurrentLocation()},bindEvents:function(){this.get("autocomplete")&&this.autocomplete.on("initialized",b.bind(this.onAutocompleteInitialized,this)).on("complete",b.bind(this.onAutocompleteComplete,this)).on("close",b.bind(this.onAutocompleteClose,this)),this.$input.on(p.events.input,b.bind(this.onInputChanged,this)).on(p.events.focus,b.bind(this.onInputFocus,this)).on(p.events.blur,b.bind(this.onInputBlur,this)).on(p.events.keypress,b.bind(this.onSubmit,this)),this.$geoButton.on(p.events.click,this.getGeolocation),this.$submitButton.on(p.events.click,b.bind(this.onSubmit,this))},unbindEvents:function(){this.$geoButton.add(this.$input).off("."+l)},onSubmit:function(a){var b;if(13===a.which||"click"===a.type)return b=this.$input.val(),""===b&&this.set("label",""),k.HELIOS.state=k.HELIOS.state||{},k.HELIOS.state.dealerName&&b===k.HELIOS.state.dealerName||(k.HELIOS.state.dealer=null,k.HELIOS.state.dealerName=null,this.trigger(p.APIevents.submit,a)),!1},trackingVar:function(a,b){var c={componentId:n,action:"search",searchType:"dealer",searchTerm:"geolocation",searchResults:a||0};this.$geoButton.hasClass(p.classes.isActive)&&!r&&(b&&(c.searchFilter="dealerServices",c.searchFilterValue=b),this.analyticsManager.tag("search",c),r=!0)},onInputChanged:function(){this.trigger(p.APIevents.input)},onInputFocus:function(){this.$input.val()===this.get("defaultText")&&(this.setLabel(""),this.set("wasGeoText",!0))},onInputBlur:function(){this.isGeoButtonActive()&&this.get("wasGeoText")&&""===this.$input.val()&&(this.get("defaultText"),this.set("wasGeoText",!1),this.setLabel(this.get("defaultText")))}},{init:g,defaults:{datas:l,selector:p.selector.root}}}),define("jqueryUtilityPlugins",["jquery","underscore"],function(a,b){"use strict";a.fn.isElementVisible=function(){var a,b,c=window.innerWidth||document.documentElement.clientWidth,d=window.innerHeight||document.documentElement.clientHeight,e=function(a,b){return document.elementFromPoint(a,b)};return 0!==this.length&&(a=this.get(0),b=a.getBoundingClientRect(),!(b.right<0||b.bottom<0||b.left>c||b.top>d)&&(a.contains(e(b.left,b.top))||a.contains(e(b.right,b.top))||a.contains(e(b.right,b.bottom))||a.contains(e(b.left,b.bottom))))},a.fn.serializeObject=function(){var b,c,d={};return a.each(this.serializeArray(),function(e,f){b=f.name,c=f.value,d[b]=void 0===d[b]?c:a.isArray(d[b])?d[b].concat(c):[d[b],c]}),d},a.escapeHtml=function(a){var b={"&":"&amp;",'"':"&quot;","'":"&#039;","<":"&lt;",">":"&gt;"};return(a+"").replace(/[<>&"']/g,function(a){return b[a]})},a.padWithZeros=function(b,c){var d=b+"";return d.length<c?a.padWithZeros("0"+d,c):d},a.uniqueElementId=function(c){var d,e,f,g="";return void 0!==c&&c.length&&(c,d=[],f=a("[id^="+c+"]"),f.each(function(){d.push(a(this).attr("id"))}),e=a.map(d,function(a){var b=a.split("-").pop();return parseInt(b,10)}),e.length||(e=[0]),g=c+(b.max(e)+1)),g},a.isNestedProp=function(a,b){var c,d;for(c=0;c<b.length;c++){if(d=b[c],!a||!a.hasOwnProperty(d))return!1;a=a[d]}return!0},a.getDataFromObject=function(b,c){var d;return a.each(c,function(a,c){if(0===a&&(d=b),!d.hasOwnProperty(c))return d=void 0,!1;d=d[c]}),d},a.fn.multilineEllipsis=function(b,c,d,e){var f=(document.documentElement.lang||window.navigator.language).slice(0,2),g="number"==typeof e?e:1;if("number"==typeof(b=parseFloat(b,10))){void 0===c&&(c=void 0===f||-1!==a.inArray(f,["ja","zh"]));var h=function(b,c){var d,e=a("#RulerText").get(0),f=c.parent().get(0),c=c.get(0),g=c.cloneNode(!0);return e&&f.removeChild(e),g.id="RulerText",g.style.visibility="hidden",g.style.display="inline",g.style.whiteSpace="nowrap",g.style.position="absolute",g.style.top=0,g.style.left=0,f.appendChild(g),g.innerHTML=b,d=g.offsetWidth,f.removeChild(g),d},i=function(a,b,c){for(var d="",e="";h(e,b)<c&&(d=a.substring(0,d.length+1),h(d,b)<c);)e=d;return e.length};this.each(function(){var e,f,h,j,k=a(this);if(k.find("> .multiline-ellipsis").remove(),e="inline"===k.css("display")?k:k.wrapInner('<span class="multiline-ellipsis" />').find("> .multiline-ellipsis"),f=k.data("original-text")||k.data("original-text",k.text()).text(),h=e.text(f)[0].getClientRects(),h.length>b){if(j=d?i(e.text(),e,e.outerWidth()):Math.floor(f.length/h.length),c)f=f.slice(0,j*b-g),e.text(f+"…");else for(;h.length>b;)f=f.substr(0,Math.min(f.length,f.lastIndexOf(" "))),h=e.text(f.substr(0,f.length-g)+"…")[0].getClientRects();e.hasClass("multiline-ellipsis")&&k.text(e.text())}})}return this}}),define("scrollLock",["jquery"],function(a){"use strict";function b(b){a(b.target).closest(n.selectors.touchMoveEnabled).length||b.preventDefault()}function c(){var b=a("<div>
20").css({overflow:"scroll",visibility:"hidden",width:100}).appendTo("body"),c=a("<div>").width("100%").appendTo(b).outerWidth();return b.remove(),100-c}function d(){k=a(document.getElementsByTagName("*")).filter(":visible").filter(function(){return"fixed"===a(this).css("position")}),o.addClass(n.classes.scrollDisabled).add(k).addClass(n.classes.scrollbarOffsetActive).css(l,c()),a(document).off(n.events.touchmove,b).on(n.events.touchmove,b),h()}function e(){o.add(k).removeClass([n.classes.scrollbarOffsetActive,n.classes.scrollDisabled].join(" ")).css(l,""),a(document).off(n.events.touchmove,b),i()}function f(){var d=!!window.MSInputMethodContext&&!!document.documentMode,e=/apple/i.test(navigator.vendor);j=a(".c_129"),m="rtl"===o.attr("dir")&&(d||e)?"padding-left":"padding-right",k=a(document.getElementsByTagName("*")).filter(":visible").filter(function(){return"fixed"===a(this).css("position")&&a(this).outerWidth()===a(window).width()}),o.addClass(n.classes.scrollDisabled).addClass(n.classes.scrollbarOffsetActive).css(m,c()),j&&o.css(m,0),k.each(function(){var b=a(this).css(m);a(this)[0].className.match(/modal/gi)||(a(this).addClass(n.classes.scrollbarOffsetActive),a(this).css(m,parseInt(b)+c()))}),a(document).off(n.events.touchmove,b).on(n.events.touchmove,b),h()}function g(){o.add(k).removeClass([n.classes.scrollbarOffsetActive,n.classes.scrollDisabled].join(" ")).css(m,""),a(document).off(n.events.touchmove,b),i()}function h(){a(".ReactModal__Body--open",window.parent.document)&&(a(n.selectors.reactCloseButton,window.parent.document).length?a(n.selectors.reactCloseButton,window.parent.document).hide():a(n.selectors.reactCloseButtonRTL,window.parent.document).length&&a(n.selectors.reactCloseButtonRTL,window.parent.document).hide())}function i(){a(".ReactModal__Body--open",window.parent.document)&&(a(n.selectors.reactCloseButton,window.parent.document).length?a(n.selectors.reactCloseButton,window.parent.document).show():a(n.selectors.reactCloseButtonRTL,window.parent.document).length&&a(n.selectors.reactCloseButtonRTL,window.parent.document).show())}var j,k,l,m,n={events:{touchmove:"touchmove"},selectors:{touchMoveEnabled:".touchmove-enabled",reactCloseButton:".ns-modal-close-button",reactCloseButtonRTL:".ns-modal-close-button-rtl",reactModalOverlayContent:".ReactModal__Overlay .modal-content"},classes:{scrollDisabled:"scroll-disabled",scrollbarOffsetActive:"js-scrollbar-offset-active"}},o=a("html");return l="rtl"===o.attr("dir")?"padding-left":"padding-right",m=l,{getScrollbarWidth:c,disableGlobalScrolling:d,enableGlobalScrolling:e,enableGlobalScrollingOnModal:g,disableGlobalScrollingOnModal:f}}),define("hbars!/common-assets/scripts/libs/modal/html/modalTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'            <div class="modal-close-wrapper">\n                <button type="button" class="modal-close" aria-label='+a.escapeExpression((f=null!=(f=g(c,"closeAriaLebel")||(null!=b?g(b,"closeAriaLebel"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"closeAriaLebel",hash:{},data:e,loc:{start:{line:7,column:69},end:{line:7,column:87}}}):f))+'><span aria-hidden="true">'+a.escapeExpression((f=null!=(f=g(c,"closeText")||(null!=b?g(b,"closeText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"closeText",hash:{},data:e,loc:{start:{line:7,column:113},end:{line:7,column:126}}}):f))+"</span></button>\n            </div>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<div id="'+a.escapeExpression((g=null!=(g=h(c,"modalId")||(null!=b?h(b,"modalId"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"modalId",hash:{},data:e,loc:{start:{line:1,column:9},end:{line:1,column:22}}}):g))+'" class="c_129 modal animate '+a.escapeExpression((g=null!=(g=h(c,"customClass")||(null!=b?h(b,"customClass"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"customClass",hash:{}
20,data:e,loc:{start:{line:1,column:51},end:{line:1,column:68}}}):g))+" "+a.escapeExpression((g=null!=(g=h(c,"touchMoveEnabledClass")||(null!=b?h(b,"touchMoveEnabledClass"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"touchMoveEnabledClass",hash:{},data:e,loc:{start:{line:1,column:69},end:{line:1,column:96}}}):g))+'" tabindex="-1">\n    <div class="modal-dialog-container" role="dialog" aria-modal="true" aria-label="'+a.escapeExpression((g=null!=(g=h(c,"dialogAriaLabel")||(null!=b?h(b,"dialogAriaLabel"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"dialogAriaLabel",hash:{},data:e,loc:{start:{line:2,column:84},end:{line:2,column:103}}}):g))+'">\n        <div class="modal-dialog" role="document">\n            <h2 class="modal-title"></h2>\n'+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"closeButton"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:5,column:12},end:{line:9,column:19}}}))?f:"")+'            <div class="modal-content"></div>\n        </div>\n    </div>\n</div>\n<div data-modal-id="'+a.escapeExpression((g=null!=(g=h(c,"modalId")||(null!=b?h(b,"modalId"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"modalId",hash:{},data:e,loc:{start:{line:14,column:20},end:{line:14,column:33}}}):g))+'" class="modal-overlay '+a.escapeExpression((g=null!=(g=h(c,"customOverlayClass")||(null!=b?h(b,"customOverlayClass"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"customOverlayClass",hash:{},data:e,loc:{start:{line:14,column:56},end:{line:14,column:78}}}):g))+'"></div>\n'},useData:!0})}),define("modalADA",["jquery","underscore"],function(a,b){function c(b){i=a(b).find(":tabbable"),j=!1,k=i.eq(0),l=i.eq(i.length-1),m=16,n=9,k.focus(),a(b).on("keyup",d),a(b).on("keydown",e)}function d(a){a.keyCode===m&&(j=!1)}function e(a){if(a.keyCode===m&&(j=!0),a.keyCode===n){if(a.target===l[0]&&!j)return k.focus(1),!1;if(a.target===k[0]&&j)return l.focus(1),!1}}function f(b){a(b).off("keyup",d),a(b).off("keydown",e)}function g(b,c){i=h(b),j=!1,k=i.eq(0),l=i.eq(i.length-1),m=16,n=9,k.focus(),a(c).on("keyup",d),a(c).on("keydown",e)}function h(b){var c=a();return a(b).each(function(b,d){var e=a(d),f=e.find(":tabbable");e.is(":tabbable")&&(c=c.add(e)),c=c.add(f)}),c}var i,j,k,l,m,n;return{ADATrap:c,addADATrapMultipleElements:g,RemoveADATrap:f}}),define("modal",["jquery","underscore","jqueryUtilityPlugins","scrollLock","hbars!/common-assets/scripts/libs/modal/html/modalTemplate","modalADA","storageManager"],function(a,b,c,d,e,f,g){"use strict";function h(c){if(!(this instanceof h))return new h(c);this.options=b.extend({component:"c_129",overlaySelector:".modal-overlay",dialogSelector:".modal-dialog",dialogContainerSelector:".modal-dialog-container",modalTitle:".modal-title",contentSelector:".modal-content",closeSelector:".modal-close",openSelector:null,target:null,title:null,iframe:!1,closeButton:!0,clearOnClose:!0,customClass:null,customOverlayClass:null,touchMoveEnabled:!1,defaultInstance:!1,adaTrap:!1,lastClickedElement:null,displayType:this.TYPE_RIGHTSLIDE,centeredClass:"centered",modalSize:null,closeText:null,closeTextProp:"close-text",preventEscClose:!1,preventOverlayClose:!1,preventScrollTop:!1,dialogAriaLabel:null},c||{}),this.options.displayType===h.TYPE_CENTERED&&(this.options.customClass+=" "+this.options.centeredClass),this.options.touchMoveEnabled&&(this.options.touchMoveEnabledClass="touchmove-enabled"),this.$body=a("body"),this.$html=a("html"),this.$root=null,this.$overlay=null,this.$dialog=null,this.$dialogContainer=null,this.$content=null,this.$openButton=null,this.$closeButton=null,this.modalId=a.uniqueElementId("modal-"),this.events={transitionend:"transitionend MSTransitionEnd"},(b.isNull(this.options.closeText)||b.isUndefined(this.options.closeText))&&this.$body.data(this.options.closeTextProp)&&(this.options.closeText=this.$body.data(this.options.closeTextProp)),this._cacheBodyWidth(),a(window).on("resize",b.bind(b.debounce(this._cacheBodyWidth,200),this)),this.currentTarget=!1,this._createModalContainer().then(b.bind(function(){this._bindListeners()},this)),HELIOS.modals.push(this)}return HELIOS.modals=[],h.prototype._cacheBodyWidth=function(){this.modalClosedWidth=this.$body.width()},h.prototype._createModalContainer=function(){return this._getComponentHtml().then(b.bind(function(b){this.$body.append(a(b)),this.$root=a("#"+this.modalId),this.$dialog=this.$root.find(this.options.dialogSelector),this.$dialogContainer=this.$root.find(this.options.dialogContainerSelector),this.$content=this.$root.find(this.options.contentSelector),this.$closeButton=this.$root.find(this.options.closeSelector),this.$overlay=this.$body.find(this.options.overlaySelector+'[data-modal-id="'+this.modalId+'"]')},this))},h.prototype._getComponentHtml=function(){var b,c;return b=a.Deferred(),c=e({modalId:this.modalId,customClass:this.getOption("customClass"),customOverlayClass:this.getOption("customOverlayClass"),touchMoveEnabledClass:this.getOption("touchMoveEnabledClass"),closeText:this.getOption("closeText"),closeButton:this.getOption("closeButton"),closeAriaLebel:this.options.closeText||"close",dialogAriaLabel:this.getOption("dialogAriaLabel")}),b.resolve(c),b},h.prototype._bindListeners=function(){a(this.options.openSelector).on("click.modal",b.bind(function(c){var d=a(c.target);c.preventDefault(),this.$openButton=d,this.currentTarget!==this.getOption("target",null,["href"])||this.getOption("clearOnClose")?b.throttle(this.open(),500):this.animateIn()},this)),this.$root.on("click.modal",this.options.closeSelector,b.bind(this.close,this)),this.$root.on("key
20down.modal",b.bind(function(a){27!==a.which||this.options.preventEscClose||this.close()},this)),this.$overlay.on("click.modal",b.throttle(b.bind(function(){this.options.preventOverlayClose||this.close()},this),500)),b.isFunction(this.options.onScrollToBottom)&&this.$root.scroll(b.debounce(b.bind(function(){var a=this.$dialog.height(),b=this.$root.height(),c=.1*a,d=Math.abs(this.$dialog.position().top),e=a-(d+b);e<=c&&this.options.onScrollToBottom(Math.max(e,0))},this),100))},h.prototype.handleActiveModalCount=function(a){g.init();var b,c={mode:"sessionStorage"},d="activeModalSession",e=g.loadItem(d,c),f=1,h=this;if(e||window.addEventListener("beforeunload",function(a){h.handleActiveModalCount("clear")},{once:!0}),"clear"===a)return void g.deleteItem(d,c);e&&e.activeModalCount&&(f="increment"===a?e.activeModalCount+1:e.activeModalCount-1),b={activeModalCount:f},g.saveItem(d,b,c)},h.prototype.open=function(c){var d;return c=this.currentTarget=this.getOption("target",c||!1,["href"]),this.currentScrollPos=a(document).scrollTop(),d=b.isEmpty(c)?this.setContent(this.getOption("content")):this.setTarget(c),this._enforceFocus(),d.then(b.bind(function(){var a=this.getOption("title");b.isEmpty(a)?this.$dialog.children(".modal-title").hide().text(""):this.$dialog.children(".modal-title").show().text(a)},this)).then(b.bind(function(){return this.animateIn()},this)).then(b.bind(function(){this.$root.trigger("modal.open",this).focus(),this.options.adaTrap&&f.ADATrap(this.$root)},this)),this.$overlay.css("zIndex",1),b.defer(b.bind(function(){this.$overlay.css("zIndex","")},this)),this.handleActiveModalCount("increment"),d},h.prototype.show=function(){this._enforceFocus(),this.animateIn().then(b.bind(function(){this.$root.trigger("modal.show",this).focus()},this)),this.$overlay.css("zIndex",1),b.defer(b.bind(function(){this.$overlay.css("zIndex","")},this))},h.prototype.close=function(c){var d;this.$root.removeClass("modal-iframe open");var e=this;return d=this.animateOut(),d=d.then(b.bind(function(){if(this.getOption("clearOnClose"))return this.clear()},this)),this.isConfirmed=c,d.then(b.bind(function(){this.$root.trigger("modal.close",this)},this)).done(function(){a(e.options.lastClickedElement).focus()}),this.handleActiveModalCount("decrement"),d},h.prototype.clear=function(){return this.$content.html("").promise()},h.prototype.setTarget=function(c){var d,e,f;if(c=this.getOption("target",c,["href"]),e=this.getOption("iframe"),d=this.clear(),e)d.then(b.bind(function(){this.setContent('<iframe src="'+c+'" frameBorder="0"></iframe>')},this)).then(b.bind(function(){var b=a.Deferred();return this.$content.find("iframe").load(function(){b.resolve()}),b},this));else{if(this.$root.removeClass("modal-iframe"),this.$content.height("auto"),/^[.#]/.test(c))return f=a(c).html(),this.setContent(f);d.then(b.bind(function(){return a.ajax({url:c,type:"GET",success:b.bind(function(a){return this.setContent(a)},this)})},this))}return d},h.prototype.setContent=function(a){return this.$content.html(a).promise()},h.prototype.setAllContent=function(a){var b=this.$dialog.children(this.options.modalTitle);return a.title&&a.title.length?b.text(a.title).show():b.hide(),this.setContent(a.content)},h.prototype.delay=function(b){var c=a.Deferred();return setTimeout(function(){c.resolve()},b),c},h.prototype.animateIn=function(){var c,e,f,g=a.Deferred();return d.disableGlobalScrollingOnModal(),this.$body.addClass("modal-open"),this.$root.addClass("open"),this.options.preventScrollTop&&this.$html.addClass("lock-scroll-position"),this.$body.width(),c=this.getOption("iframe"),e=this.$root.hasClass("animate"),f=!this.$root.hasClass("animate-in"),c&&this.$root.addClass("modal-iframe"),e&&f?(this.$root.addClass("animate-in"),this._transitionEnd(g)):g.resolve(),c?g.then(b.bind(function(){var b,c=this;c.$dialogContainer.height("100%"),c.$content.height(c.$dialogContainer.height()+20),a(window).resize(function(){clearTimeout(b),b=setTimeout(function(){c.$content.height(c.$dialogContainer.height()+20)},200)})},this)):g.then(b.bind(function(){this.getOption("type")===this.TYPE_CENTERED&&this._setCenteredModalHeightAndMargin(),this.getOption("type")===this.TYPE_CENTERED&&a(window).on("resize",b.bind(b.debounce(function(){this._setCenteredModalHeightAndMargin()},200),this))},this)),g.then(b.bind(function(){this.$root.trigger("modal.animateIn",this)},this)),g},h.prototype.recalculateHeight=function(){this._setCenteredModalHeightAndMargin()},h.prototype._setCenteredModalHeightAndMargin=function(){var b=this.options.modalSize,c=this.$root.filter(".modal");b?this.$dialogContainer.height(b):(b=c[0].getBoundingClientRect().height||c.outerHeight(),this.$dialogContainer.height(b)),c.outerHeight()>=a(window).height()?(c.css("top",0),c.css("margin-top",0),c.css("transform","none")):(c.css("top","50%"),c.css("transform","translateY(-50%)"))},h.prototype.animateOut=function(){var c,e,f=a.Deferred();return c=this.$root.hasClass("animate"),e=this.$root.hasClass("animate-in"),c&&e?(this.$root.removeClass("animate-in"),this._transitionEnd(f)):f.resolve(),f.then(b.bind(function(){d.enableGlobalScrollingOnModal(),this.$body.removeClass("modal-open"),this.$root.removeClass("modal-iframe open"),this.$html.removeClass("lock-scroll-position")},this)),f.then(b.bind(function(){this.$root.trigger("modal.animateOut",this)},this)),f},h.prototype.getOption=function(a,c,d){var e,f,g;if(e=c,b.isUndefined(this.options[a])||b.isNull(this.options[a])||(e=this.options[a]),!b.isNull(this.$openButton)){f=a.replace(/([a-z\d])([A-Z])/g,"$1-$2").toLowerCase(),g=["data-modal-"+f],b.isUndefined(d)||(g=b.union(g,d));for(var h=0,i=g.length;h<i;h++)b.isUndefined(this.$openButton.attr(g[h]))||(e=this.$openButton.attr(g[h]),b.isEmpty(e)&&(e=!0),"false"===e&&(e=!1))}return e},h.prototype.remove=function(){return a.when(this.$root.remove().promise(),this.$overlay.remove().promise()).then(b.bind(this._clearEvents,this))},h.getDefaultModal=function(){for(var a=0,b=HELIOS.modals.length;a<b;a++)if(HELIOS.modals[a].options.defaultInstance)return HELIOS.modals[a];throw new Error("No default modal has been set")},h.prototype._clearEvents=function(){a(window).off(".modal"),a(document).off(".modal"),this.$root.off(".modal")},h.prototype._transitionEnd=function(a){this.$html.hasClass("ie9")||this.$html.hasClass("ltie9")?a.resolve():this.$overlay.on(this.events.transitionend,function(){a.resolve()})},h.prototype._enforceFocus=function(){a(document).off("focusin.modal").on("focusin.modal",b.bind(function(a){document===a.target||this.$root.is(a.target)||this.$root.has(a.target).length||this.$root.focus()},this))},h.prototype._enforceTop=function(b,c,d,e){setTimeout(function(){a(b).animate({scrollTop:c},d)},e)},h.prototype.setDisplayType=function(a){this.options.displayType=a,this.options.displayType===h.TYPE_CENTERED?(this.options.customClass+=" "+this.options.centeredClass,this.$root.addClass(this.options.centeredClass)):(this.options.customClass=this.options.customClass.replace(this.options.centeredClass,""),this.$root.removeClass(this.options.centeredClass))},h.TYPE_RIGHTSLIDE=1,h.TYPE_CENTERED=2,h}),define("storeDealer",["storageManager","underscore"],function(a,b){"use strict";function c(a){this.settings=b.extend({},d,a),this.namespace=this.settings.namespace}var d={namespace:"dealerID",expiryTime:12e4};return c.prototype.init=function(){return!!this.settings.HELIOS&&(this.settings.HELIOS[this.namespace]=this.settings.HELIOS[this.namespace]||{},a.init(),this)},c.prototype.save=function(c){if(b.isUndefined(c)||!c.length)return!1;var d=(new Date).getTime(),e=this.settings.expiryTime+d;a.saveItem(this.settings.namespace,{dealerID:c},{customExpiryDate:new Date(e)})},c}),define("goTo",[],function(){"use strict";var a={}
21;return a.run=function(a,b){a?window.open(b,a):window.location.href=b},a}),define("c_040",["jquery","jqueryCookie","underscore","c_022","c_040_listView","c_152_0","modal","storageManager","stateStoreFactory","logger","languageUtilities","handlebars","backbone","storeDealer","goTo","disclaimers","heliosLocation"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){"use strict";function r(b){var c=a(N.selectors.root);M=a.extend({},N,b),c.length&&(F=M.window,B=i.create({HELIOS:M.HELIOS}),x=new n({HELIOS:M.HELIOS}),x.init(),c.each(function(c,d){return v(a(d),b)}),D=M.HELIOS.adobe.tagging.pageName,M.HELIOS.state=M.HELIOS.state||{},(M.HELIOS.state.dealer&&!M.HELIOS.state.dealer.preferred||!M.HELIOS.state.dealer)&&(M.HELIOS.state.dealer=null),M.HELIOS.state.dealerName=null)}function s(b){var c=a(N.selectors.root).hasClass(N.classes.fadOptimised)?"C40_Dealer_List_View":L,d={componentId:c,action:b.dealerAction,searchType:"dealer",searchFilter:b.searchFilter,searchFilterValue:b.searchFilterValue,searchResults:b.searchResults,searchTerm:b.dealerSearchTerm};b.onClickAdvancedFilter&&"undefined|"===b.dealerSearchTerm&&(d.searchTerm=""),M.analyticsManager.tag("search",d)}function t(a){var b={componentId:L,pageName:D+"|"+a+"-view"};M.analyticsManager.tag("virtualPage",b)}function u(b){var c,d,e,f,g,h=a(b.target),i="Unknown",j="",k="";(1===b.which||2===b.which||13===b.keyCode)&&(h.hasClass(N.selectors.iconDirections)||h.closest(N.selectors.dealerTradingContact).length||h.hasClass(N.classes.iconPreferred)||h.hasClass(N.classes.selectDealerFromMap)?(e=a(N.selectors.dealerTradingName,N.selectors.root).first().text(),f=a(N.selectors.dealerTradingId,N.selectors.root).data(N.data.dealerIdAnalytics),k=h.attr(N.data.dealerAction)||a(N.selectors.selectDealerFromMap,N.selectors.root).text().trim(),k||(k=h.parent().attr(N.data.dealerAction)),g=a(N.selectors.firstTradingAddress,N.selectors.root),a.each(a("p",g),function(b,c){a(c).text()&&(j+=a(c).text()+",")}),""!==j&&(j=j.substring(0,j.length-1)),c={componentId:L,dealerName:e,dealerId:f,dealerAddress:j,dealerAction:k||""},N.data.dealerTypeAnalytic?c.dealerType=N.data.dealerTypeAnalytic:c.dealerType=i,d="dealerInteraction"):(c={componentId:L,destination:h.attr("href"),locationInPage:"action-panel",buttonText:h.text()},d="genericClick"),M.analyticsManager.tag(d,c))}function v(b,c){var d,e;if(b.is(N.selectors.root)||(b=b.find(N.selectors.root)),b.length)return(e=b.data(G))instanceof O?
21(c&&e.mergeSettings(c),e):(b.hasClass(N.APIclasses.deferred)&&(M.deferred=!0),M=a.extend({},M,c),d=new O(b,M),b.data(G,d),I.push(d),d)}var w,x,y,z,A,B,C,D,E,F,G="c_040",H="dealer",I=[],J=(a.Deferred(),!1),K=!1,L="C40_Dealer_Map_View",M={debug:!1},N={configs:{fb:["simpleDetail","selectBtn","noList"],batd:["simpleDetail","noList"],bas:["simpleDetail","selectBtn"]},APIclasses:{deferred:"deferred",simpleDetail:"fad-simple-detail",selectBtn:"fad-select",noList:"fad-no-list"},classes:{active:"is-active",selectDealerFromMap:"btn-select-dealer-map",initialized:"is-initialized",preferred:"is-preferred",waiting:"ajax-btn-loading",selected:"is-selected",opened:"opened",closed:"closed",visuallyHidden:"is-visually-hidden",referrer:"referrer",isShowingDetail:"is-showing-detail",showIfLoggedIn:"logged-in",advancedFilterReset:"btn-reset",accordionPanel:"accordion-panel",accordionFormBuilder:"fad-accordion-content",noResults:"no-result",iconPreferred:"icon-preferred",onloadSmartLocation:"on-load-smartlocation",onSmartLocationError:"on-smartlocation-error",fadOptimised:"fad-optimised"},data:{passDealerKey:"dealer-id-input",resultsText:"results-text",noResultsText:"no-results-text",allDealersText:"alldealers-text",settings:"settings",urlDealerList:"dealer-list-url",urlDealerDetail:"dealer-detail-url",urlDealerSearch:"dealer-search-url",urlDealerSearchBasic:"dealer-search-basic-url",view:"view",myAccountUrl:"my-account-url",customerUrl:"customer-url",type:"type",dealerTypeAnalytic:"not set",dealerIdAnalytics:"dealer-id",dealerID:"data-dealer-id",target:"target",dealerAction:"data-dealer-action",defaultMobileTabletView:"default-mobile-tablet-view",defaultDesktopView:"default-desktop-view",showCurrentLocationDealersOnLoad:"show-current-location-dealers",cannotFindYourLocationText:"cannot-find-your-location-text"},events:{defaultClick:"click",click:"click."+G,mouseup:"mouseup."+G,touchend:"touchend."+G,change:"change."+G,zeroDealers:"zeroDealers",keyup:"keyup"},triggers:{click:"click",change:"change",dealerSelected:"dealerSelected",changeAll:"change:all",changeVisible:"change:visible"},selectors:{dealerDetail:".map-results",selectDealerFromMap:".btn-select-dealer-map",dealerDetailCTA:".map-results a, .map-results button",dealerNumber:"input[name='size']",locationInput:"input.location-input",form:".c_040-form",listView:".view-list",listToggler:".btn-view-list",map:".c_022",mapWrapper:".map-wrapper",mapView:".view-map",mapToggler:".btn-view-map",passDealer:".js-pass-id",preferred:".icon-preferred",preferenceSection:".dealer-preference",resultsText:".results-text",filterTextBy:".results-filtered-by",filterText:".results-filtered-by-filter",filterGroup:".filter-results-group",preFilter:".dealer-locator-prefilter",root:".c_040",searchBtn:".btn-search",autocomplete:".autocomplete-suggestions",selectBtn:".btn-fad.btn-select",selectDealer:".form-group select",viewActions:".view-actions",tabs:".view-actions button",advancedFilterDropdown:".dropdown",advancedFilter:".btn-filter",advancedFilterReset:".btn-reset",accordionGroup:".accordion-group",accordionChildHeader:".accordion-child-header",accordionPanel:".accordion-panel",feedbackButton:".c_151-0 a.number",modalClose:".modal-close",overlayReview:".modal-overlay",iconDirections:"icon-directions",dealerTradingName:".dealer-trading-name",dealerTradingId:".c_040-3.c_040-2",firstTradingAddress:".c_040-3.c_040-2 .dealer-address:first",dealerTradingAddress:".c_040-3.c_040-2 .dealer-address p",dealerTradingContact:".dealer-contact",isActive:".is-active",bookServiceButton:".book-service-btn",locationResultsInC19:".c_019 .location-results",geoLocationErrorText:".c_019 .geo-location-error",selectedDealerInForm:".c_019 .form-group .selected-dealer",submitFormBtn:".c_019 .submit-form .submit-form-button"},properties:{initialized:"initialized",deferred:"deferred",preferredDealer:"preferredDealer",currentPage:"currentPage",currentView:"currentView",mapInitializing:"mapInitializing",selectedDealer:"selectedDealer",urls:"urls",helios:"HELIOS",listView:"listView",dealerNumber:"dealerNumber",selectBtn:"selectBtn",map:"map",list:"list",isFiltered:"isFiltered",filters:"filters",position:"position",showMoreAction:"showMoreAction",address:"address",previousQuery:"previousQuery",viewingOnMap:"viewingOnMap",label:"label",currentServiceFilter:"currentServiceFilter",isPrefiltered:!1,typeGroup:"group"}};l.registerHelper("isNotEmptyObject",function(b,c){var d=!0,e=!1;return a.isEmptyObject(b)?d=!1:(a.each(b,function(a,b){if(null!==b&&""!==b)return e=!0,!1}),e||(d=!1)),d?c.fn(this):c.inverse(this)});var O=function(a,b){this.$el=a,this.attributes={debug:!1,currentView:!1,currentPage:1,dealerNumber:6,deferred:!1,initialized:!1,listView:null,mapInitializing:!1,preferredDealer:!1,selectedDealer:!1,selectBtn:!1,simpleDetail:!1,useTopSuggestion:!0,isFiltered:!1,wasFiltered:!1,filters:[],basicSearchOn:!1,viewingOnMap:!0,currentFilters:[]},this.initSettings(b),this.checkLoggedInStatus(),this.smartLocationContext=b.smartLocationContext,this.get(N.APIclasses.deferred)||this.init(),this.value=!1};return O.prototype={views:{},pins:[],activeAjaxRequest:!1,preferredDealerAjaxRequest:!1,markersLoadedDeferred:a.Deferred(),init:function(b){var d,e,f=[],h=this.get(N.properties.helios);return this.$root=a(N.selectors.root),this.get(N.properties.initialized)?this:(C=new g({customClass:"c_151-1-overlay",openSelector:".open-my-modal",closeSelector:"close-review",overlaySelector:"overlay-reviews"}),E=a(".c_151-1"),C.setContent(E),y=new j({prefix:"C40"}),y.info("FAD init()"),d=this.$el.find(N.selectors.dealerNumber),h.components&&h.components.c040&&h.components.c040.dealers&&h.components.c040.dealers.dealers&&(f=h.components.c040.dealers.dealers),this.initConfigs(),this.preferredZoom=this.$root.data("preferred-zoom"),this.autoZoomOutLimit=this.$root.data("auto-zoom-limit"),this.minMarkersVisible=this.$root.find(".c_152-0 input[name=size]").val(),this.showApiResultsOnly=this.$root.data("showApiResultsOnly"),this.get(N.properties.deferred)&&this.$el.removeClass(N.APIclasses.deferred),b&&this.mergeSettings(b),this.updateAttributesFromStorage(),this.$form=this.getForm(),this.$resultText=this.$root.find(N.selectors.resultsText),this.$filterText=this.$root.find(N.selectors.filterText),this.$filterGroup=this.$root.find(N.selectors.filterGroup+" input"),this.$searchBtn=this.$root.find(".c_152-0 "+N.selectors.searchBtn),this.$autocomplete=this.$root.find(N.selectors.autocomplete),this.$locationInput=this.$root.find(N.selectors.locationInput),d.length&&this.set(N.properties.dealerNumber,d.val()),this.showCurrentLocationDealersOnLoad=this.$root.data(N.data.showCurrentLocationDealersOnLoad)||!1,this.cannotFindYourLocationText=this.$root.data(N.data.cannotFindYourLocationText)||!1,this.geoloc=this.newGeoloc(f),this.$form.length&&this.geoloc&&(this.initViews(),this.bindEvents(),this.isOptimisedV1Dealer()&&a(N.selectors.selectedDealerInForm).length&&(a(N.selectors.selectedDealerInForm).addClass(N.classes.fadOptimised),a(N.selectors.submitFormBtn).addClass(N.classes.fadOptimised))),this.$el.addClass(N.classes.initialized),this.set(N.properties.initialized,!0),this.checkReferrer(),e=this.$resultText.data(N.data.allDealersText)||"",this.$resultText.html(e.replace("%number%",f.length)),this.$el.find(".custom-selectbox select").focus(c.bind(function(){this.$el.find("h2.find-a-dealer-heading").addClass("focus-active")},this)),this.$el.find(".custom-selectbox select").blur(c.bind(function(){this.$el.find("h2.find-a-dealer-heading").removeClass("focus-active")},this)),this.callbacks={viewOnMap:a.proxy(this.viewOnMap,this)},this)},markersLoaded:function(){return this.markersLoadedDeferred.promise()},setValue:function(b){var c=b.id;this.$el.addClass(N.classes.selected),this.get(N.properties.selectBtn)&&this.$selectDealer.val(c).trigger(N.triggers.change),this.value={id:c,shortDealerId:b.get("dealerId"),name:b.get("suggestedName")},a(N.selectors.root).trigger(N.triggers.dealerSelected)},getForm:function(){var a=this.$el.find(N.selectors.form);return a.length||(a=this.$el.closest("form")),a}
21,initConfigs:function(){a.each(N.configs,a.proxy(function(a){if(this.$el.hasClass(a))return this.applyConfig(a)},this))},applyConfig:function(a){var b,c=N.configs[a];if(c)for(b=0;b<c.length;b++)this.applyAPIsetting(c[b])},applyAPIsetting:function(a){switch(a){case"simpleDetail":this.set("simpleDetail",!0),this.$el.addClass(N.APIclasses.simpleDetail);break;case"selectBtn":this.set(N.properties.selectBtn,!0),this.$el.addClass(N.APIclasses.selectBtn),this.$selectBtn=this.$el.find(N.selectors.selectBtn),this.$selectDealer=this.$el.find(N.selectors.selectDealer);break;case"noList":this.set(N.properties.listView,!1)}},mergeSettings:function(b){b&&(this.attributes=a.extend({},this.attributes,b))},initSettings:function(a){this.mergeSettings(a),this.set(N.properties.urls,{dealerList:this.$el.data(N.data.urlDealerList)||!1,dealerDetail:this.$el.data(N.data.urlDealerDetail)||!1,dealerSearch:this.$el.data(N.data.urlDealerSearch)||!1,dealerSearchBasic:this.$el.data(N.data.urlDealerSearchBasic)||!1,customerUrl:this.$el.data(N.data.customerUrl)||!1,type:this.$el.data(N.data.type)||!1})},checkReferrer:function(){var a=document.referrer,b=this.$el.data(N.data.myAccountUrl);a.indexOf(b)>-1&&this.$el.addClass(N.classes.referrer)},updateAttributesFromStorage:function(){var a;HELIOS.state&&HELIOS.state[H]&&HELIOS.state[H].preferred?a=HELIOS.state[H]:this.attributes.storedDealer&&(a=this.attributes.storedDealer),a&&this.get(N.properties.urls).type!==N.properties.typeGroup&&this.activatePreferredDealerButton(a)},activatePreferredDealerButton:function(a){a&&(a.preferred&&this.set(N.properties.preferredDealer,a.preferred),a.id&&this.set(N.properties.selectedDealer,a.id))},initViews:function(){var a=this.$el.find(N.selectors.listView),b=this.$el.find(N.selectors.mapView),c=this.$el.find(N.selectors.viewActions),d=this.$el.data(N.data.defaultDesktopView),e=this.$el.data(N.data.defaultMobileTabletView);this.$viewActions=!!c.length&&c,a.length&&(!1!==this.get(N.properties.listView)?(this.addView(N.properties.list,a),this.set(N.properties.listView,!0),this.initList(),this.set(N.properties.currentView,N.properties.list)):(this.$viewActions.remove(),a.remove())),b.length&&(this.addView(N.properties.map,b),this.get(N.properties.urls).type===N.properties.typeGroup?this.toggleView(N.properties.list):this.toggleView(N.properties.map),window.innerWidth<=HELIOS.config.common.mediaQuery.breakpointsPx.smallOrMediumMax?e&&this.toggleView(e):window.innerWidth>=HELIOS.config.common.mediaQuery.breakpointsPx.large&&d&&this.toggleView(d)),this.isOptimisedV1Dealer()&&this.toggleView(N.properties.list)},bindEvents:function(){var b=!0;this.get(N.properties.listView)&&this.$viewActions.find("button").on(N.events.click,a.proxy(this.onViewTogglerClick,this)),this.geoloc&&this.geoloc.on("geolocation",a.proxy(this.onGeolocGeolocation,this)).on("change",a.proxy(function(a){var b,d;this.geoloc.isDealerSelected();this.showCurrentLocationDealersOnLoad&&(b={address:this.geoloc.get("label")},d=this.attributes.HELIOS.config.common.countryCode,this.geoloc.autocomplete.searchReverseGeocode(b,d).done(c.bind(function(a){this.smartLocationContext.set(a
21)},this))),!1!==a&&this.submitHandler()},this)).on("input",a.proxy(function(a){this.onGeolocInput(a),z=a.$input.val()},this)),this.$locationInput.on(N.events.keyup,a.proxy(function(a){if(13===a.keyCode){var b=this.$autocomplete.hasClass(N.classes.noResults);b||this.submitHandler(),A=b||!1,this.trackSearchHandler("search",this)}},this)),this.$searchBtn.on(N.events.click,a.proxy(function(){var a=this.$autocomplete.hasClass(N.classes.noResults);a||this.submitHandler(),A=a||!1,this.trackSearchHandler("search",this)},this)),this.$autocomplete.on(N.events.click,a.proxy(function(){A=!1,this.trackSearchHandler("search",this)},this)),this.$autocomplete.on(N.events.keyup,a.proxy(function(a){13===a.keyCode&&(A=!1,this.trackSearchHandler("search",this))},this)),this.$el.on(N.events.click,N.selectors.passDealer,a.proxy(this.passDealerHandler,this)),this.$el.find(N.selectors.advancedFilter).on("click.advancedFilter",a.proxy(this.onClickAdvancedFilter,this)),this.$el.find(N.selectors.advancedFilterDropdown+" ul li").on("click.advancedFilterItem",a.proxy(this.onClickAdvancedFilterElement,this)),this.$el.find(N.selectors.filterText).on("click.filterTextBy",a.proxy(this.onClickFilterText,this)),this.$el.find(N.selectors.advancedFilterReset).on("click.advancedFilterReset",a.proxy(this.onClickAdvancedFilterReset,this)),this.$el.on(N.events.click,N.selectors.preferred,a.proxy(this.setPreferred,this)),this.$el.on(N.events.mouseup,N.selectors.dealerDetailCTA,u),this.$el.on(N.events.keyup,N.selectors.dealerDetailCTA,u),this.$el.on(N.events.touchend,N.selectors.dealerDetailCTA,u),this.$el.on(N.events.click,N.selectors.feedbackButton,function(){C.open()}),a(N.selectors.modalClose).on(N.events.defaultClick,function(){C.animateOut()}),a(N.selectors.overlayReview).on(N.events.defaultClick,function(){C.animateOut()}),a(this.map).on("mapFinishedLoading",a.proxy(function(){this.loadPreFilters(),this.markersLoadedDeferred.resolve(),b&&(this.submitHandler(),b=!1)},this)),a(document).trigger("mapEventsReady")},trackSearchHandler:function(b,d){var e=this,f=a(N.selectors.filterGroup+" h3"),g=a(N.selectors.filterText),h={searchFilterValue:"",searchResults:this.getActiveDealers().length,dealerAction:b,dealerSearchTerm:"",searchFilter:f.length?f[0].textContent:"",dealerSearchFilter:function(){var a,b=[];for(a in e.attributes.currentFilters)"dealer-services"===e.attributes.currentFilters[a].name&&b.push(e.attributes.currentFilters[a].value);return b.join(", ")}()};A?h.dealerSearchTerm=a(N.selectors.locationInput).val():c.isEmpty(z)||(h.dealerSearchTerm=z+"|"+a(N.selectors.locationInput).val()),"filter"===b?(h.searchFilterValue=a(N.selectors.filterGroup+" .is-active").text(),h.onClickAdvancedFilter=!0):g.length&&(h.searchFilterValue=g[0].textContent,h.onClickAdvancedFilter=!1),s(h)},addView:function(a,b){var c=this.$el.find(N.selectors[a+"Toggler"]);this.views[a]={$view:b,$toggler:c,visited:!1},c.hasClass(N.classes.active)&&this.set(N.properties.currentView,a)},onViewTogglerClick:function(b){var c=a(b.target).data("view");J=!0,c&&(this.toggleView(c),c===N.properties.map&&(this.attributes.basicSearchOn=!0,this.$autocomplete.hasClass(N.classes.noResults)||(this.filterSubmitHandler(),this.map.onShow())))},toggleView:function(a){var b=this.get(N.properties.currentView),c=document,d={x:(window.pageXOffset||c.scrollLeft)-(c.clientLeft||0),y:(window.pageYOffset||c.scrollTop)-(c.clientTop||0)};if(!this.get(N.properties.initialized)||b!==a&&this.views[a]){if(b&&(this.views[b].$toggler.removeClass(N.classes.active),this.views[b].$view.removeClass(N.classes.active)),this.views[a].$toggler.addClass(N.classes.active),this.views[a].$view.addClass(N.classes.active),J){t(this.views[a].$toggler.data("view"))}this.set(N.properties.currentView,a),window.scroll(d.x,d.y),this.$autocomplete.hasClass(N.classes.noResults)||this.refreshView(a)}},refreshView:function(a){y.info("refreshView"),this.views[a].visited?a===N.properties.map&&this.map.onShow():(a===N.properties.map&&this.initMap(),this.views[a].visited=!0),p.renderDisclaimers(this.$el)},initMap:function(b){var c,e=[];this.get(N.properties.mapInitializing)||(this.set(N.properties.mapInitializing,!0),b||(this.get(N.properties.selectedDealer)?(b=a.proxy(this.viewOnMap,this,!1,this.get(N.properties.selectedDealer)),this.updateStoredData()):this.get(N.properties.preferredDealer)&&(b=a.proxy(this.viewOnMap,this,!1,this.get(N.properties.preferredDealer)))),c={dealerDetailContainerSelect:N.selectors.dealerDetail,idle:a.proxy(this.onMapReady,this,b),isGeolocated:a.proxy(this.isGeolocated,this),dealerCallback:a.proxy(this.requestDealerDetail,this),ActiveDealersCallback:a.proxy(this.getActiveDealers,this),onShowDealerDetail:a.proxy(this.onShowDealerDetail,this),searchTermExist:a.proxy(this.geoloc.searchTermExist,this.geoloc),preferredZoom:this.preferredZoom,autoZoomOutLimit:this.autoZoomOutLimit,minMarkersVisible:this.minMarkersVisible,analyticsManager:M.analyticsManager,showApiResultsOnly:this.showApiResultsOnly,HELIOS:this.attributes.HELIOS},this.geoloc.collection&&(e=this.geoloc.collection),this.$el.find(N.selectors.map).each(a.proxy(function(a,b){this.map=d.initInstance(b,c,e)},this)))},newGeoloc:function(a){var b=this.$el.find(f.defaults.selector),c=!1,d={},e=new k;return!!b.length&&(this.get(N.properties.urls).dealerSearch&&(d={collection:{url:this.get(N.properties.urls).dealerSearch},settings:{autocomplete:{language:e.getLanguageCode()},showApiResultsOnly:this.showApiResultsOnly,smartLocationContext:this.smartLocationContext,showCurrentLocationDealersOnLoad:this.showCurrentLocationDealersOnLoad,cannotFindYourLocationText:this.cannotFindYourLocationText}}),c=f.init(d,b,this.attributes.window,M.analyticsManager),c.init(),a&&c.reset(a),c)},initList:function(){var b={findADealer:this,preferredDealerID:this.get(N.properties.preferredDealer),callbacks:{isGeolocated:a.proxy(this.isGeolocated,this),viewOnMap:a.proxy(this.viewOnMap,this)},HELIOS:M.HELIOS,geoloc:this.geoloc,analyticsManager:M.analyticsManager};this.viewList=e.init(this.views.list.$view,b,this.geoloc.collection)},abortActiveRequest:function(){this.activeAjaxRequest&&this.activeAjaxRequest.abort()},onRequestError:function(){this.activeAjaxRequest=!1},requestDealerDetail:function(b){var c=this.geoloc.collection.get(b),d=a.Deferred();if(c)return this.setValue(c),c.get(N.properties.address)?(this.get(N.properties.preferredDealer)===b?c.set(N.properties.preferredDealer,!0):c.set(N.properties.preferredDealer,!1),d.resolve(c),this.isOptimisedV1Dealer()&&a("body").trigger("dealerDetailsFetched",[{id:c.id,address:c.get(N.properties.address),suggestedName:c.get("suggestedName")}])):this.activeAjaxRequest=a.ajax({url:this.get(N.properties.urls).dealerDetail+"/dealerId/"+b+"/data.json",type:"GET",success:a.proxy(function(a,c){var e;this.onRequestDealerDetailSuccess(d,a,b),N.data.dealerTypeAnalytic=a.dealerType,e=this.$root.find(N.selectors.bookServiceButton).attr("href"),e=decodeURI(e).replace("^DEALER_ID^",a.dealerId||"").replace("^SITE_ID^",a.siteId||""),this.$root.find(N.selectors.bookServiceButton).attr("href",e)},this),error:a.proxy(function(a,c,e){this.onRequestDealerDetailError(d,c,b)},this)}),d.promise()},onRequestDealerDetailSuccess:function(b,c,d){var e;if(null===c)return y.warn("Response for dealer data returned null"),!1;var f=a.extend({},{suggestedName:c.suggestedName,dealerId:c.id,distance:c.distance,country:c.country},c.address,c.contact),g=document.getElementById("dealerid"),h=document.getElementById("dealername"),i=document.getElementById("dealeremail"),j=document.getElementById("dealerphone"),k=document.getElementById("dealeraddress1"),l=document.getElementById("dealeraddress2"),m=document.getElementById("dealercity"),n=document.getElementById("dealercountry"),o=document.getElementById("dealerpostalcode");g&&g.setAttribute("value",f.dealerId?f.dealerId:""),h&&h.setAttribute("value",f.suggestedName?f.suggestedName:""),i&&i.setAttribute("value",f.email?f.email:""),j&&j.setAttribute("value",f.phone?f.phone:""),k&&k.setAttribute("value",f.addressLine1?f.addressLine1:""),l&&l.setAttribute("value",f.addressLine2?f.addressLine2:""),m&&m.setAttribute("value",f.city?f.city:""),n&&n.setAttribute("value",f.country?f.country.toUpperCase():""),o&&o.setAttribute("value",f.postalCode?f.postalCode:""),this.activeAjaxRequest=!1,this.updateModels([c],!1),e=this.geoloc.collection.get(d),this.value.shortDealerId=c.dealerId,b.resolve(e),a("body").trigger("dealerDetailsFetched",[c])},onRequestDealerDetailError:function(a,b){a.reject(b),this.onRequestError()},requestDealer:function(){this.attributes.basicSearchOn=!0,this.requestDealerData()},requestDealerData:function(){var b,d,e,f=this.get(N.properties.urls).dealerSearch,g="",h=this.$form.find("input[name=size]").val(),i=this.geoloc.isDealerSelected(),j=this.geoloc.$input.val(),k=this.geoloc.isCurrentLocation(),l="",m=null;for(y.info("requestDealerData"),this.attributes.basicSearchOn&&(f=this.get(N.properties.urls).dealerSearchBasic),(this.showApiResultsOnly||!j.length&&!k)&&(h=-1),this.attributes.currentFilters.length>1?this.addNewFilter("size",-1):this.addNewFilter("size",h),(j.length||k)&&(g=(i||k?"input[name=latlong]":"input[name=location]")+", "),g+="input[name=page], input[name=filter], input[name=_charset_]",b=this.$form.find(g).serializeArray(),d=0,e=this.attributes.currentFilters.length;d<e;d++)b.push(this.attributes.currentFilters[d]);a.when(this.map.clearMarkers()).done(c.bind(function(){return this.viewList&&this.viewList.view&&this.viewList.view.trigger("reset"),this.set(N.properties.currentPage,1),this.abortActiveRequest(),this.geoloc.set(N.properties.previousQuery,b),c.each(b,function(a){"location"!==a.name&&"latlong"!==a.name?l+="/"+a.name+"/"+a.value:m=a}),m&&(l+="/"+m.name+"/"+m.value),this.activeAjaxRequest=a.ajax({url:f+(l.length?l+"/data.json":""),type:"GET",success:c.bind(this.onDealerRequestSuccess,this),error:c.bind(this.onDealerRequestError,this),complete:this.toggleFilterButtonDisable(!1)}),this.activeAjaxRequest},this))},addNewFilter:function(a,b){var c,d,e={name:a,value:b},f=!1;for(c=0,d=this.attributes.currentFilters.length;c<d;c++)this.attributes.currentFilters[c].name===a&&(this.attributes.currentFilters[c].value=b,f=!0);f||this.attributes.currentFilters.push(e)},removeAllFilters:function(){for(;this.attributes.currentFilters.length>0;)this.attributes.currentFilters.pop()},onDealerRequestSuccess:function(b){var d=a.trim(this.geoloc.$input.val()),e=this.map,f=!this.showApiResultsOnly||!!d.length,g=a(N.selectors.filterGroup+" "+N.selectors.isActive).text();if(y.info("onDealerRequestSuccess"),b&&(this.activeAjaxRequest=!1,this.resetPins(),this.geoloc.collection.allActiveResults=b.totalResults,this.updateModels(b.dealers,f),this.pins=this.getActiveDealers(),a.when(this.updateUI(this.pins.length,f)).done(c.bind(function(){if(this.geoloc.get(N.properties.label)||this.geoloc.get("dealerPresent")||this.map.activeDealer){this.isOptimisedV1Dealer()&&this.geoloc.isDealerSelected()?a(N.selectors.locationResultsInC19).removeClass(N.classes.active):a(N.selectors.locationResultsInC19).addClass(N.classes.active);var b=this.geoloc.$el.find("span.search-complete");if(b.length>0){if(-1!==b.text().indexOf("%location%"))var e=b.text().replace("%location%",this.geoloc.attributes.label);else if(this.geoloc.attributes.previousLocationLabel)var e=b.text().replace(this.geoloc.attributes.previousLocationLabel,this.geoloc.attributes.label);this.geoloc.attributes.previousLocationLabel=this.geoloc.attributes.label,b.text(e)}a(N.selectors.geoLocationErrorText).removeClass(N.classes.active)}f&&d.length&&!M.HELIOS.state.dealer&&!this.showApiResultsOnly&&(this.map.map.getBounds()?F.setTimeout(c.bind(function(){this.map.autoAdjustZoomOverMarkers(d)},this),100):google.maps.event.addListenerOnce(this.map.map,"bounds_changed",c.bind(function(){F.setTimeout(c.bind(function(){this.map.autoAdjustZoomOverMarkers(d)},this),100)},this))),K&&(this.trackSearchHandler("filter"),K=!1)},this)),0===b.totalResults&&a(N.selectors.root).trigger(N.events.zeroDealers),this.geoloc.trackingVar(e.getNumberOfVisibleMarkers(e.map,this.pins),g)),null===b)return y.warn("Response for dealers data returned null"),!1},removeDealerDetail:function(){this.map&&this.map.removeDealerDetail()},onDealerRequestError:function(){y.info("onDealerRequestError"),this.onRequestError(),this.resetPins(),this.pins=[]},onPreferredDealerDone:function(b,c,d){this.$el.find(N.selectors.preferenceSection).removeClass(N.classes.preferred),a(".dealer-"+c).addClass(N.classes.preferred),this.get(N.properties.preferredDealer)&&(b=this.geoloc.collection.get(this.get(N.properties.preferredDealer)))&&this.map&&(this.get(N.properties.listView)||this.viewMarker(b)),this.updateStoredData(),this.viewList.view.setPreferredDealer(c)},passDealerHandler:function(b){var d,e,f=a(b.target),g=f.data("id"),h=f.attr(M.data.target);g&&(b.preventDefault(),this.viewList.view.setPreferredDealer(g),x.save(g),e=this.geoloc.collection.get(g),e&&this.smartLocationContext.set((new q).setDealerId(e.get("dealerId"))),d=f[0].href,c.isString(d)&&d.length&&o.run(h,d))},checkLoggedInStatus:function(){a.cookie("OwnerServicesLoggedInName")&&(w=!0,this.$el.addClass(N.classes.showIfLoggedIn))},setPreferred:function(b,c){var d,e;b.preventDefault(),d=a(b.target),e=c||d.attr("data-id"),this.set(N.properties.preferredDealer,e),a("."+N.classes.waiting).removeClass(N.classes.waiting),d.addClass(N.classes.waiting),this.requestPreferredDealer(d,e)},requestPreferredDealer:function(b,c){var d=this.geoloc.collection.get(c);this.preferredDealerAjaxRequest&&this.preferredDealerAjaxRequest.abort(),this.preferredDealerAjaxRequest=a.ajax({url:b.attr("data-action"),method:"post",dataType:"text",data:{dealerId:this.get(N.properties.preferredDealer)},success:a.proxy(this.onPreferredDealerDone,this,d,c),complete:a.proxy(function(){b.removeClass(N.classes.waiting),this.preferredDealerAjaxRequest=!1,this.checkReferrer()},this)})},getStoredData:function(a){var b={preferred:this.get(N.properties.preferredDealer)};return b.id=a||b.preferred,b}
21,updateStoredData:function(a){B&&B.save(H,this.getStoredData(a))},onMapReady:function(a){a&&a()},handleAccordionClick:function(a,b){a.find(N.selectors.accordionChildHeader).on("click",function(c){c.stopPropagation(),a.toggleClass("active"),b="closed"===b?"open":"closed",a.find(N.selectors.accordionChildHeader).attr("data-state",b),a.find(N.selectors.accordionPanel).attr("data-state",b)})},onShowDealerDetail:function(){var b,c,d;y.info("onShowDealerDetail invoked"),this.get(N.properties.viewingOnMap)||(b=this.$el.find(N.selectors.dealerDetail).offset(),a("html, body").animate({scrollTop:b.top},300)),c=a(N.selectors.dealerDetail).find(N.selectors.accordionGroup),d=c.find(N.selectors.accordionChildHeader).attr("data-state"),this.handleAccordionClick(c,d)},resetPins:function(){var a,b=this.pins.length;for(a=0;a<b;a++)this.pins[a].set({position:void 0,distance:void 0});return b},viewMarker:function(a){this.isOptimisedV1Dealer()||this.toggleView(N.properties.map),this.map.viewMarker(a.get("marker"),!0,!0)},viewOnMap:function(b,c){var d,e=!!b&&a(b.target),f=c||e.attr("data-id");b&&b.preventDefault(),f&&(d=this.geoloc.collection.get(f))&&(this.set(N.properties.viewingOnMap,!0),this.map?this.map.isDealerActiveAndVisible(f)&&this.viewMarker(d):this.initMap(a.proxy(this.viewMarker,this,d)))},isGeolocated:function(){return this.geoloc.get("value")},onGeolocGeolocation:function(a){var b=a.latitude,c=a.longitude,d=this.geoloc.get("defaultText"),e=this.geoloc.isGeoButtonActive();M.analyticsManager.tag("search",{searchType:"geolocation"}),this.map&&(e?(this.$root.removeClass(N.classes.onloadSmartLocation),this.map.geoMarkerInstance&&this.map.setLocation(!1),this.map.setLocation(b,c,d)):this.map.setLocation(!1)),this.submitHandler()},onGeolocInput:function(a){this.map.setLocation(!1)},submitHandler:function(a){var b,c=this.geoloc,d=c.searchTermExist(),e=c.isCurrentLocation(),f=c.isGeoButtonActive(),g=this.$root.hasClass(N.classes.onloadSmartLocation);if(this.set(N.properties.currentPage,1),a&&a.preventDefault(),this.map.chosenDealerId=null,d){if(this.get("useTopSuggestion")&&c.autocomplete.topSuggestion){if(c.autocomplete.topSuggestion.name&&M.HELIOS.state.dealerName){if(c.autocomplete.topSuggestion.name===M.HELIOS.state.dealerName)return c.$input.val(c.autocomplete.topSuggestion.name),void c.autocomplete.hideSuggestions();c.onAutocompletePlaceChanged(c.autocomplete.topSuggestion,!1)}else c.onAutocompletePlaceChanged(c.autocomplete.topSuggestion,!1);c.autocomplete.hideSuggestions()}}else this.geoloc.autocomplete.setSelectedDealerId(""),this.map.setAutoSelectFirstDealerInCollection(!1);d&&!c.get("isValid")&&a||(!e&&f&&(c.deactivateGeoButton(),this.map.setLocation(!1)),this.resetPins(),this.requestDealer()),g&&(b=this.geoloc.get("geolocation"),this.map.setLocation(b.latitude,b.longitude,b.address),this.$root.removeClass(N.classes.onloadSmartLocation))},filterSubmitHandler:function(b){var c=a(N.selectors.filterGroup+" .is-active").data("dealerServices");c&&this.addNewFilter("dealer-services",c),this.requestDealerData()},filterByCarType:function(a){this.attributes.basicSearchOn=!0,this.addNewFilter("test-drive-model",a),this.requestDealerData()},loadPreFilters:function(){var b=a(N.selectors.root).find(N.selectors.preFilter).val();b&&b.length&&!N.properties.isPrefiltered&&(N.properties.isPrefiltered=!0,this.map.setAutoSelectFirstDealerInCollection(!1),this.addNewFilter("dealer-services",b),this.requestDealerData(),a(N.selectors.root).find("button[data-dealer-services="+b+"]").addClass(N.classes.active))},getActiveDealers:function(a){var b,c=a||N.properties.position;return b=this.geoloc.collection.filter(function(a){return a.get("visible")}),b.sort(function(a,b){return a.get(c)<b.get(c)?-1:a.get(c)>b.get(c)?1:0}),b},formatDealerData:function(a){var b,c;if(a)for(b=0,c=a.length;b<c;b++)a[b]&&a[b].averageStarRating&&(a[b].dealerRating=this.formatStarRating(a[b]));return a},formatStarRating:function(b){var c=[];return a.each(b.averageStarRating,function(a,b){var d=b.displayScore;d&&c.push({title:b.title,grade:d,number:b.numberOfReviews,percent:20*d,type:a})}),c},getAllDealers:function(){return this.geoloc.collection.first(this.get(N.properties.currentPage)*this.get(N.properties.dealerNumber))},
22filterModels:function(a){var b,c,d,e,f,g,h,i;if(a){for(i=0,e=this.formatDealerData(a),h=e.length,g=this.get(N.properties.dealerNumber)*(this.get(N.properties.currentPage)-1),f=0;f<h;f++)b=e[f],c=b.id,(d=this.geoloc.collection.get(c))&&(i++,d.set(b),this.get(N.properties.preferredDealer)===c?d.set(N.properties.preferredDealer,!0):d.set(N.properties.preferredDealer,!1),d.set(N.properties.position,i+g));return this.geoloc.collection.trigger(N.triggers.changeVisible),i}return!1},updateModels:function(b,d){var e,f,g,h,i,j=!0;return!!b&&(g=0,this.showApiResultsOnly&&0===this.$root.closest(".c_056").length&&(j=!1),this.geoloc.collection.each(function(a){a.set({visible:j,position:null},{silent:!0})}),(d&&this.attributes.currentFilters.length>
221||d&&this.showApiResultsOnly)&&(i=this.map.getExtendBounds(),this.geoloc.collection.each(function(a){a.set({visible:!1,position:null},{silent:!0})})),b=this.formatDealerData(b),h=this.get(N.properties.dealerNumber)*(this.get(N.properties.currentPage)-1),c.each(b,c.bind(function(a){a&&(e=a.id,(f=this.geoloc.collection.get(e))&&(g++,f.set(a),this.get(N.properties.preferredDealer)===e?f.set(N.properties.preferredDealer,!0):f.set(N.properties.preferredDealer,!1),d&&f.set({visible:!0,position:g+h},{silent:!0})))},this)),d&&(this.geoloc.collection.trigger(N.triggers.changeAll),i=this.map.getExtendBounds(),this.geoloc.collection.trigger(N.triggers.changeVisible,i)),a(this).trigger("modelsUpdated"),g)},updateUI:function(b,c){var d,e,f,g=this.geoloc.get(N.properties.label),h=0,i=a.Deferred(),j=this.geoloc.get("geoLocationFromSmartLocationError");return y.info("updateUI"),this.geoloc.get("dealerPresent")&&(f=this.map.collectionInstance.get(this.map.activeDealer),f&&(this.geoloc.setLabel(f.attributes.suggestedName),g=f.attributes.suggestedName),this.geoloc.set("dealerPresent",!1)),b?j?this.$resultText.html(this.cannotFindYourLocationText):(d="",this.$resultText?(d=this.$resultText.data(N.data.allDealersText),d?this.$resultText.html(d.replace("%number%",b)):y.debug("resultString was not defined in updateUI"),g&&(d=this.$resultText.data(N.data.resultsText)||"",e=this.isOptimisedV1Dealer()?"<span>'"+g+"'</span>":"<span>"+g+"</span>",this.$resultText.html(d.replace("%location%",e)))):y.debug("this.$resultText is undefined in updateUI")):(j||this.$resultText.empty(),!this.showApiResultsOnly&&c&&(d=this.$resultText.data(N.data.noResultsText)||"",this.$resultText.html(d),this.geoloc.collection.each(function(a){a.set({visible:!1,position:null}),h++}))),this.geoloc.$input.val()&&"function"==typeof this.geoloc.$input.valid&&this.geoloc.$input.valid(),i.resolve("Finished updating UI"),i.promise()},set:function(a,b){return this.attributes[a]=b,this.attributes[a]},get:function(a){return this.attributes[a]},onClickAdvancedFilter:function(b){return a(b.target).parent(N.selectors.advancedFilter).toggleClass(N.classes.opened+" "+N.classes.closed),!1},onClickAdvancedFilterElement:function(b){var c,d,e,f,g,h,i,j=a(b.target);b.preventDefault(),j.hasClass(N.classes.advancedFilterReset)||j.hasClass(N.classes.active)||(this.set(N.properties.isFiltered,!0),c=j.html(),d=j.data("dealerServices"),e=j.parents(N.selectors.advancedFilterDropdown),f=e.find("input"),g=f.attr("name"),h=e.find("ul li"),this.$el.find(N.selectors.filterTextBy),h.find("button").removeClass(N.classes.active),j.not(N.selectors.advancedFilterReset).addClass(N.classes.active),a(N.selectors.filterGroup).data(N.properties.currentServiceFilter,d),f.val(j.data(g)),this.toggleFilterText(c,d),this.set(N.properties.currentPage,1),this.toggleFilterButtonDisable(!0),i=this.geoloc.isDealerSelected(),this.map.setAutoSelectFirstDealerInCollection(i),this.attributes.basicSearchOn=!0,this.filterSubmitHandler(),K=!0)},onClickAdvancedFilterReset:function(b){var c,d,e,f,g;a(b.target);b.preventDefault(),this.removeAllFilters(),a(N.selectors.filterGroup).data(N.properties.currentServiceFilter,""),e=this.$el.find(N.selectors.filterGroup+" button."+N.classes.active),f=this.$el.find(N.selectors.filterGroup+" input"),this.set(N.properties.isFiltered,!1),e.removeClass(N.classes.active),f.val(""),this.set(N.properties.currentPage,1),this.toggleFilterText(),c=this.get(N.properties.helios),d=c.components.c040.dealers.dealers,this.updateModels(d,!0),this.pins=this.getActiveDealers(),this.updateUI(this.pins.length),this.map.disableActiveMarker(),g=this.geoloc.isDealerSelected(),this.map.setAutoSelectFirstDealerInCollection(g),this.attributes.basicSearchOn=!0,this.filterSubmitHandler()},toggleFilterButtonDisable:function(b){a(N.selectors.filterGroup).find("li button").each(function(){this.disabled=b})},onClickFilterText:function(b){var c=a(b.currentTarget);b.preventDefault(),this.set(N.properties.isFiltered,!1),c.is(N.selectors.filterText)&&(this.$el.find(N.selectors.advancedFilterReset).trigger(N.triggers.click),c.parent().addClass(N.classes.visuallyHidden))},toggleFilterText:function(a,b){var c=this.$el.find(N.selectors.filterTextBy);a&&"Reset"!==a?c.removeClass(N.classes.visuallyHidden).find(N.selectors.filterText).attr("data-dealer-services",b).html(a).end():c.addClass(N.classes.visuallyHidden).find(N.selectors.filterText).data("dealerServices","").empty()},isOptimisedV1Dealer:function(){return a(N.selectors.root).hasClass(N.classes.fadOptimised)}},{init:r,newInstance:v}}),define("c_019_datepicker",[],function(){"use strict";function a(a){this.$element=a,this.dateAvailable()}var b={dataAttributes:{DEFAULT_DATE:"defaultDate"},jqueryUi:{methods:{SET_OPTION_METHOD:"option",SET_DATE_METHOD:"setDate"},properties:{MIN_DATE:"minDate"}}};return a.prototype.dateAvailable=function(){var a,c,d=this.$element.data("defaultDate")?new Date(this.$element.data("defaultDate")):new Date,e=this.$element.data("restrictDate"),f=0,g={5:0,6:2,0:1}
22,h=this.$element.datepicker(b.jqueryUi.methods.SET_OPTION_METHOD,b.jqueryUi.properties.MIN_DATE).toLowerCase(),i=e?h.match(/[0-9]/):[0];i=i.join(""),a=new Date(d.getFullYear(),d.getMonth(),d.getDate()+parseInt(i,10)),c=a.getDay(),g[c.toString()]&&(f=g[c.toString()],a=new Date(a.getFullYear(),a.getMonth(),a.getDate()+f),this.$element.datepicker(b.jqueryUi.methods.SET_OPTION_METHOD,b.jqueryUi.properties.MIN_DATE,a)),this.$element.data(b.dataAttributes.DEFAULT_DATE)&&this.$element.datepicker(b.jqueryUi.methods.SET_DATE_METHOD,a)},a}),function($){function Timepicker(){this.debug=!0,this._curInst=null,this._disabledInputs=[],this._timepickerShowing=!1,this._inDialog=!1,this._dialogClass="ui-timepicker-dialog",this._mainDivId="ui-timepicker-div",this._inlineClass="ui-timepicker-inline",this._currentClass="ui-timepicker-current",this._dayOverClass="ui-timepicker-days-cell-over",this.regional=[],this.regional[""]={hourText:"Hour",minuteText:"Minute",amPmText:["AM","PM"],closeButtonText:"Done",nowButtonText:"Now",deselectButtonText:"Deselect"}
22,this._defaults={showOn:"focus",button:null,showAnim:"fadeIn",showOptions:{},appendText:"",beforeShow:null,onSelect:null,onClose:null,timeSeparator:":",periodSeparator:" ",showPeriod:!1,showPeriodLabels:!0,showLeadingZero:!0,showMinutesLeadingZero:!0,altField:"",defaultTime:"now",myPosition:"left top",atPosition:"left bottom",onHourShow:null,onMinuteShow:null,hours:{starts:0,ends:23},minutes:{starts:0,ends:55,interval:5,manual:[]},rows:4,showHours:!0,showMinutes:!0,optionalMinutes:!1,showCloseButton:!1,showNowButton:!1,showDeselectButton:!1,maxTime:{hour:null,minute:null},minTime:{hour:null,minute:null}},$.extend(this._defaults,this.regional[""]),this.tpDiv=$('<div id="'+this._mainDivId+'" class="ui-timepicker ui-widget ui-helper-clearfix ui-corner-all " style="display: none"></div>')}function extendRemove(a,b){$.extend(a,b);for(var c in b)null!=b[c]&&void 0!=b[c]||(a[c]=b[c]);return a}$.extend($.ui,{timepicker:{version:"0.3.3"}});var PROP_NAME="timepicker",tpuuid=(new Date).getTime();$.extend(Timepicker.prototype,{markerClassName:"hasTimepicker",log:function(){this.debug},_widgetTimepicker:function(){return this.tpDiv},setDefaults:function(a){return extendRemove(this._defaults,a||{}),this},_attachTimepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("time:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase(),inline="div"==nodeName||"span"==nodeName;target.id||(this.uuid+=1,target.id="tp"+this.uuid);var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{}),"input"==nodeName?(this._connectTimepicker(target,inst),this._setTimeFromField(inst)):inline&&this._inlineTimepicker(target,inst)},_newInst:function(a,b){return{id:a[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1"),input:a,inline:b,tpDiv:b?$('<div class="'+this._inlineClass+' ui-timepicker ui-widget  ui-helper-clearfix"></div>'):this.tpDiv}},_connectTimepicker:function(a,b){var c=$(a);b.append=$([]),b.trigger=$([]),c.hasClass(this.markerClassName)||(this._attachments(c,b),c.addClass(this.markerClassName).keydown(this._doKeyDown).keyup(this._doKeyUp).bind("setData.timepicker",function(a,c,d){b.settings[c]=d}).bind("getData.timepicker",function(a,c){return this._get(b,c)}),$.data(a,PROP_NAME,b))},_doKeyDown:function(a){var b=$.timepicker._getInst(a.target),c=!0;if(b._keyEvent=!0,$.timepicker._timepickerShowing)switch(a.keyCode){case 9:$.timepicker._hideTimepicker(),c=!1;break;case 13:return $.timepicker._updateSelectedValue(b),$.timepicker._hideTimepicker(),!1;case 27:$.timepicker._hideTimepicker();break;default:c=!1}else 36==a.keyCode&&a.ctrlKey?$.timepicker._showTimepicker(this):c=!1;c&&(a.preventDefault(),a.stopPropagation())},_doKeyUp:function(a){var b=$.timepicker._getInst(a.target);$.timepicker._setTimeFromField(b),$.timepicker._updateTimepicker(b)},_attachments:function(a,b){var c=this._get(b,"appendText"),d=this._get(b,"isRTL");b.append&&b.append.remove(),c&&(b.append=$('<span class="'+this._appendClass+'">'+c+"</span>"),a[d?"before":"after"](b.append)),a.unbind("focus.timepicker",this._showTimepicker),a.unbind("click.timepicker",this._adjustZIndex),b.trigger&&b.trigger.remove();var e=this._get(b,"showOn");if("focus"!=e&&"both"!=e||(a.bind("focus.timepicker",this._showTimepicker),a.bind("click.timepicker",this._adjustZIndex)),"button"==e||"both"==e){var f=this._get(b,"button");null==f&&(f=$('<button class="ui-timepicker-trigger" type="button"></button>'),a.after(f)),$(f).bind("click.timepicker",function(){return $.timepicker._timepickerShowing&&$.timepicker._lastInput==a[0]?$.timepicker._hideTimepicker():b.input.is(":disabled")||$.timepicker._showTimepicker(a[0]),!1})}},_inlineTimepicker:function(a,b){var c=$(a);c.hasClass(this.markerClassName)||(c.addClass(this.markerClassName).append(b.tpDiv).bind("setData.timepicker",function(a,c,d){b.settings[c]=d}).bind("getData.timepicker",function(a,c){return this._get(b,c)}),$.data(a,PROP_NAME,b),this._setTimeFromField(b),this._updateTimepicker(b),b.tpDiv.show())},_adjustZIndex:function(a){a=a.target||a,$.timepicker._getInst(a).tpDiv.css("zIndex",$.timepicker._getZIndex(a)+1)}
22,_showTimepicker:function(a){if(a=a.target||a,"input"!=a.nodeName.toLowerCase()&&(a=$("input",a.parentNode)[0]),!$.timepicker._isDisabledTimepicker(a)&&$.timepicker._lastInput!=a){$.timepicker._hideTimepicker();var b=$.timepicker._getInst(a);$.timepicker._curInst&&$.timepicker._curInst!=b&&$.timepicker._curInst.tpDiv.stop(!0,!0);var c=$.timepicker._get(b,"beforeShow");extendRemove(b.settings,c?c.apply(a,[a,b]):{}),b.lastVal=null,$.timepicker._lastInput=a,$.timepicker._setTimeFromField(b),$.timepicker._inDialog&&(a.value=""),$.timepicker._pos||($.timepicker._pos=$.timepicker._findPos(a),$.timepicker._pos[1]+=a.offsetHeight);var d=!1;$(a).parents().each(function(){return!(d|="fixed"==$(this).css("position"))});var e={left:$.timepicker._pos[0],top:$.timepicker._pos[1]};if($.timepicker._pos=null,b.tpDiv.css({position:"absolute",display:"block",top:"-1000px"}),$.timepicker._updateTimepicker(b),!b.inline&&"object"==typeof $.ui.position){b.tpDiv.position({of:b.input,my:$.timepicker._get(b,"myPosition"),at:$.timepicker._get(b,"atPosition"),collision:"flip"});var e=b.tpDiv.offset();$.timepicker._pos=[e.top,e.left]}if(b._hoursClicked=!1,b._minutesClicked=!1,e=$.timepicker._checkOffset(b,e,d),b.tpDiv.css({position:$.timepicker._inDialog&&$.blockUI?"static":d?"fixed":"absolute",display:"none",left:e.left+"px",top:e.top+"px"}),!b.inline){var f=$.timepicker._get(b,"showAnim"),g=$.timepicker._get(b,"duration"),h=function(){$.timepicker._timepickerShowing=!0;var a=$.timepicker._getBorders(b.tpDiv);b.tpDiv.find("iframe.ui-timepicker-cover").css({left:-a[0],top:-a[1],width:b.tpDiv.outerWidth(),height:b.tpDiv.outerHeight()})};$.timepicker._adjustZIndex(a),$.effects&&$.effects[f]?b.tpDiv.show(f,$.timepicker._get(b,"showOptions"),g,h):b.tpDiv.show(f?g:null,h),f&&g||h(),b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus(),$.timepicker._curInst=b}}},_getZIndex:function(a){for(var b,c,d=$(a),e=0;d.length&&d[0]!==document;)b=d.css("position"),"absolute"!==b&&"relative"!==b&&"fixed"!==b||(c=parseInt(d.css("zIndex"),10),isNaN(c)||0===c||c>e&&(e=c)),d=d.parent();return e},_refreshTimepicker:function(a){var b=this._getInst(a);b&&this._updateTimepicker(b)},_updateTimepicker:function(a){a.tpDiv.empty().append(this._generateHTML(a)),this._rebindDialogEvents(a)},_rebindDialogEvents:function(a){var b=$.timepicker._getBorders(a.tpDiv),c=this;a.tpDiv.find("iframe.ui-timepicker-cover").css({left:-b[0],top:-b[1],width:a.tpDiv.outerWidth(),height:a.tpDiv.outerHeight()}).end().find(".ui-timepicker-minute-cell").unbind().bind("click",{fromDoubleClick:!1},$.proxy($.timepicker.selectMinutes,this)).bind("dblclick",{fromDoubleClick:!0},$.proxy($.timepicker.selectMinutes,this)).end().find(".ui-timepicker-hour-cell").unbind().bind("click",{fromDoubleClick:!1},$.proxy($.timepicker.selectHours,this)).bind("dblclick",{fromDoubleClick:!0},$.proxy($.timepicker.selectHours,this)).end().find(".ui-timepicker td a").unbind().bind("mouseout",function(){$(this).removeClass("ui-state-hover"),-1!=this.className.indexOf("ui-timepicker-prev")&&$(this).removeClass("ui-timepicker-prev-hover"),-1!=this.className.indexOf("ui-timepicker-next")&&$(this).removeClass("ui-timepicker-next-hover")}).bind("mouseover",function(){c._isDisabledTimepicker(a.inline?a.tpDiv.parent()[0]:a.input[0])||($(this).parents(".ui-timepicker-calendar").find("a").removeClass("ui-state-hover"),$(this).addClass("ui-state-hover"),-1!=this.className.indexOf("ui-timepicker-prev")&&$(this).addClass("ui-timepicker-prev-hover"),-1!=this.className.indexOf("ui-timepicker-next")&&$(this).addClass("ui-timepicker-next-hover"))}).end().find("."+this._dayOverClass+" a").trigger("mouseover").end().find(".ui-timepicker-now").bind("click",function(a){$.timepicker.selectNow(a)}).end().find(".ui-timepicker-deselect").bind("click",function(a){$.timepicker.deselectTime(a)}).end().find(".ui-timepicker-close").bind("click",function(a){$.timepicker._hideTimepicker()}).end()},_generateHTML:function(a){var b,c,d,e,f=1==this._get(a,"showPeriod"),g=1==this._get(a,"showPeriodLabels"),h=1==this._get(a,"showLeadingZero"),i=1==this._get(a,"showHours"),j=1==this._get(a,"showMinutes"),k=this._get(a,"amPmText"),l=this._get(a,"rows"),m=0,n=0,o=0,p=0,q=0,r=0,s=Array(),t=this._get(a,"hours"),u=null,v=0,w=this._get(a,"hourText"),x=this._get(a,"showCloseButton"),y=this._get(a,"closeButtonText"),z=this._get(a,"showNowButton"),A=this._get(a,"nowButtonText"),B=this._get(a,"showDeselectButton"),C=this._get(a,"deselectButtonText"),D=x||z||B;for(b=t.starts;b<=t.ends;b++)s.push(b);if(u=Math.ceil(s.length/l),g){for(v=0;v<s.length;v++)s[v]<12?o++:p++;v=0,m=Math.floor(o/s.length*l),n=Math.floor(p/s.length*l),l!=m+n&&(o&&
22(!p||!m||n&&o/m>=p/n)?m++:n++),q=Math.min(m,1),r=m+1,u=0==m?Math.ceil(p/n):0==n?Math.ceil(o/m):Math.ceil(Math.max(o/m,p/n))}if(e='<table class="ui-timepicker-table ui-widget-content ui-corner-all"><tr>',i){for(e+='<td class="ui-timepicker-hours"><div class="ui-timepicker-title ui-widget-header ui-helper-clearfix ui-corner-all">'+w+'</div><table class="ui-timepicker">',c=1;c<=l;c++){for(e+="<tr>",c==q&&g&&(e+='<th rowspan="'+m.toString()+'" class="periods" scope="row">'+k[0]+"</th>"),c==r&&g&&(e+='<th rowspan="'+n.toString()+'" class="periods" scope="row">'+k[1]+"</th>"),d=1;d<=u;d++)g&&c<r&&s[v]>=12?e+=this._generateHTMLHourCell(a,void 0,f,h):(e+=this._generateHTMLHourCell(a,s[v],f,h),v++);e+="</tr>"}e+="</table></td>"}if(j&&(e+='<td class="ui-timepicker-minutes">',e+=this._generateHTMLMinutes(a),e+="</td>"),e+="</tr>",D){var E='<tr><td colspan="3"><div class="ui-timepicker-buttonpane ui-widget-content">';z&&(E+='<button type="button" class="ui-timepicker-now ui-state-default ui-corner-all"  data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" >'+A+"</button>"),B&&(E+='<button type="button" class="ui-timepicker-deselect ui-state-default ui-corner-all"  data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" >'+C+"</button>"),x&&(E+='<button type="button" class="ui-timepicker-close ui-state-default ui-corner-all"  data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" >'+y+"</button>"),e+=E+"</div></td></tr>"}return e+="</table>"},_updateMinuteDisplay:function(a){var b=this._generateHTMLMinutes(a);a.tpDiv.find("td.ui-timepicker-minutes").html(b),this._rebindDialogEvents(a)},_generateHTMLMinutes:function(a){var b,c,d="",e=this._get(a,"rows"),f=Array(),g=this._get(a,"minutes"),h=null,j=0,k=1==this._get(a,"showMinutesLeadingZero"),l=this._get(a,"onMinuteShow"),m=this._get(a,"minuteText");for(g.starts||(g.starts=0),g.ends||(g.ends=59),g.manual||(g.manual=[]),b=g.starts;b<=g.ends;b+=g.interval)f.push(b);for(i=0;i<g.manual.length;i++){var n=g.manual[i];"number"!=typeof n||n<0||n>59||$.inArray(n,f)>=0||f.push(n)}if(f.sort(function(a,b){return a-b}),h=Math.round(f.length/e+.49),h<3&&(h=3),l&&0==l.apply(a.input?a.input[0]:null,[a.hours,a.minutes]))for(j=0;j<f.length;j+=1)if(b=f[j],l.apply(a.input?a.input[0]:null,[a.hours,b])){a.minutes=b;break}for(d+='<div class="ui-timepicker-title ui-widget-header ui-helper-clearfix ui-corner-all">'+m+'</div><table class="ui-timepicker">',j=0,c=1;c<=e;c++){for(d+="<tr>";j<c*h;){var b=f[j],o="";void 0!==b&&(o=b<10&&k?"0"+b.toString():b.toString()),d+=this._generateHTMLMinuteCell(a,b,o),j++}d+="</tr>"}return d+="</table>"},_generateHTMLHourCell:function(a,b,c,d){var e=b;b>12&&c&&(e=b-12),0==e&&c&&(e=12),e<10&&d&&(e="0"+e);var f=!0,g=this._get(a,"onHourShow"),h=this._get(a,"maxTime"),i=this._get(a,"minTime");return void 0==b?'<td><span class="ui-state-default ui-state-disabled">&nbsp;</span></td>':(g&&(f=g.apply(a.input?a.input[0]:null,[b])),f&&(!isNaN(parseInt(h.hour))&&b>h.hour&&(f=!1),!isNaN(parseInt(i.hour))&&b<i.hour&&(f=!1)),f?'<td class="ui-timepicker-hour-cell" data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" data-hour="'+b.toString()+'"><a class="ui-state-default '+(b==a.hours?"ui-state-active":"")+'">'+e.toString()+"</a></td>":'<td><span class="ui-state-default ui-state-disabled '+(b==a.hours?" ui-state-active ":" ")+'">'+e.toString()+"</span></td>")},_generateHTMLMinuteCell:function(a,b,c){var d=!0,e=a.hours,f=this._get(a,"onMinuteShow"),g=this._get(a,"maxTime"),h=this._get(a,"minTime");return f&&(d=f.apply(a.input?a.input[0]:null,[a.hours,b])),void 0==b?'<td><span class="ui-state-default ui-state-disabled">&nbsp;</span></td>':(d&&null!==e&&(!isNaN(parseInt(g.hour))&&!isNaN(parseInt(g.minute))&&e>=g.hour&&b>g.minute&&(d=!1),!isNaN(parseInt(h.hour))&&!isNaN(parseInt(h.minute))&&e<=h.hour&&b<h.minute&&(d=!1)),d?'<td class="ui-timepicker-minute-cell" data-timepicker-instance-id="#'+a.id.replace(/\\\\/g,"\\")+'" data-minute="'+b.toString()+'" ><a class="ui-state-default '+(b==a.minutes?"ui-state-active":"")+'" >'+c+"</a></td>":'<td><span class="ui-state-default ui-state-disabled" >'+c+"</span></td>")},_destroyTimepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(b.hasClass(this.markerClassName)){var d=a.nodeName.toLowerCase();$.removeData(a,PROP_NAME),"input"==d?(c.append.remove(),c.trigger.remove(),b.removeClass(this.markerClassName).unbind("focus.timepicker",this._showTimepicker).unbind("click.timepicker",this._adjustZIndex)):"div"!=d&&"span"!=d||b.removeClass(this.markerClassName).empty()}},_enableTimepicker:function(a){var b=$(a),c=b.attr("id"),d=$.data(a,PROP_NAME);if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if("input"==e){a.disabled=!1;var f=this._get(d,"button");$(f).removeClass("ui-state-disabled").disabled=!1,d.trigger.filter("button").each(function(){this.disabled=!1}).end()}else if("div"==e||"span"==e){var g=b.children("."+this._inlineClass);g.children().removeClass("ui-state-disabled"),g.find("button").each(function(){this.disabled=!1})}this._disabledInputs=$.map(this._disabledInputs,function(a){return a==c?null:a})}},_disableTimepicker:function(a){var b=$(a),c=$.data(a,PROP_NAME);if(b.hasClass(this.markerClassName)){var d=a.nodeName.toLowerCase();if("input"==d){var e=this._get(c,"button");$(e).addClass("ui-state-disabled").disabled=!0,a.disabled=!0,c.trigger.filter("button").each(function(){this.disabled=!0}).end()}else if("div"==d||"span"==d){var f=b.children("."+this._inlineClass);f.children().addClass("ui-state-disabled"),f.find("button").each(function(){this.disabled=!0})}this._disabledInputs=$.map(this._disabledInputs,function(b){return b==a?null:b}),this._disabledInputs[this._disabledInputs.length]=b.attr("id")}}
22,_isDisabledTimepicker:function(a){if(!a)return!1;for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return!0;return!1},_checkOffset:function(a,b,c){var d=a.tpDiv.outerWidth(),e=a.tpDiv.outerHeight(),f=a.input?a.input.outerWidth():0,g=a.input?a.input.outerHeight():0,h=document.documentElement.clientWidth+$(document).scrollLeft(),i=document.documentElement.clientHeight+$(document).scrollTop();return b.left-=this._get(a,"isRTL")?d-f:0,b.left-=c&&b.left==a.input.offset().left?$(document).scrollLeft():0,b.top-=c&&b.top==a.input.offset().top+g?$(document).scrollTop():0,b.left-=Math.min(b.left,b.left+d>h&&h>d?Math.abs(b.left+d-h):0),b.top-=Math.min(b.top,b.top+e>i&&i>e?Math.abs(e+g):0),b},_findPos:function(a){for(var b=this._getInst(a),c=this._get(b,"isRTL");a&&("hidden"==a.type||1!=a.nodeType);)a=a[c?"previousSibling":"nextSibling"];var d=$(a).offset();return[d.left,d.top]},_getBorders:function(a){var b=function(a){return{thin:1,medium:2,thick:3}[a]||a};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkExternalClick:function(a){if($.timepicker._curInst){var b=$(a.target);b[0].id==$.timepicker._mainDivId||0!=b.parents("#"+$.timepicker._mainDivId).length||b.hasClass($.timepicker.markerClassName)||b.hasClass($.timepicker._triggerClass)||!$.timepicker._timepickerShowing||$.timepicker._inDialog&&$.blockUI||$.timepicker._hideTimepicker()}},_hideTimepicker:function(a){var b=this._curInst;if(b&&(!a||b==$.data(a,PROP_NAME))&&this._timepickerShowing){var c=this._get(b,"showAnim"),d=this._get(b,"duration"),e=function(){$.timepicker._tidyDialog(b),this._curInst=null};$.effects&&$.effects[c]?b.tpDiv.hide(c,$.timepicker._get(b,"showOptions"),d,e):b.tpDiv["slideDown"==c?"slideUp":"fadeIn"==c?"fadeOut":"hide"](c?d:null,e),c||e(),this._timepickerShowing=!1,this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),$.blockUI&&($.unblockUI(),$("body").append(this.tpDiv))),this._inDialog=!1;var f=this._get(b,"onClose");f&&f.apply(b.input?b.input[0]:null,[b.input?b.input.val():"",b])}},_tidyDialog:function(a){a.tpDiv.removeClass(this._dialogClass).unbind(".ui-timepicker")},_getInst:function(a){try{return $.data(a,PROP_NAME)}catch(b){throw"Missing instance data for this timepicker"}},_get:function(a,b){return void 0!==a.settings[b]?a.settings[b]:this._defaults[b]},_setTimeFromField:function(a){if(a.input.val()!=a.lastVal){var b=this._get(a,"defaultTime"),c="now"==b?this._getCurrentTimeRounded(a):b;if(0==a.inline&&""!=a.input.val()&&(c=a.input.val()),c instanceof Date)a.hours=c.getHours(),a.minutes=c.getMinutes();else{var d=a.lastVal=c;if(""==c)a.hours=-1,a.minutes=-1;else{var e=this.parseTime(a,d);a.hours=e.hours,a.minutes=e.minutes}}$.timepicker._updateTimepicker(a)}},_optionTimepicker:function(a,b,c){var d=this._getInst(a);if(2==arguments.length&&"string"==typeof b)return"defaults"==b?$.extend({},$.timepicker._defaults):d?"all"==b?$.extend({},d.settings):this._get(d,b):null;var e=b||{};"string"==typeof b&&(e={},e[b]=c),d&&(extendRemove(d.settings,e),this._curInst==d&&(this._hideTimepicker(),this._updateTimepicker(d)),d.inline&&this._updateTimepicker(d))},_setTimeTimepicker:function(a,b){var c=this._getInst(a);c&&(this._setTime(c,b),this._updateTimepicker(c),this._updateAlternate(c,b))},_setTime:function(a,b,c){var d=a.hours,e=a.minutes;if(b instanceof Date)a.hours=b.getHours(),a.minutes=b.getMinutes();else{var b=this.parseTime(a,b);a.hours=b.hours,a.minutes=b.minutes}d==a.hours&&e==a.minutes||c||a.input.trigger("change"),this._updateTimepicker(a),this._updateSelectedValue(a)},_getCurrentTimeRounded:function(a){var b=new Date,c=b.getMinutes(),d=this._get(a,"minutes"),e=Math.round(c/d.interval)*d.interval;return b.setMinutes(e),b},parseTime:function(a,b){var c=new Object;if(c.hours=-1,c.minutes=-1,!b)return"";var d=this._get(a,"timeSeparator"),e=this._get(a,"amPmText"),f=this._get(a,"showHours"),g=this._get(a,"showMinutes"),h=this._get(a,"optionalMinutes"),i=1==this._get(a,"showPeriod"),j=b.indexOf(d);if(-1!=j?(c.hours=parseInt(b.substr(0,j),10),c.minutes=parseInt(b.substr(j+1),10)):!f||g&&!h?!f&&g&&(c.minutes=parseInt(b,10)):c.hours=parseInt(b,10),f){var k=b.toUpperCase();c.hours<12&&i&&-1!=k.indexOf(e[1].toUpperCase())&&(c.hours+=12),
2212==c.hours&&i&&-1!=k.indexOf(e[0].toUpperCase())&&(c.hours=0)}return c},selectNow:function(a){var b=$(a.target).attr("data-timepicker-instance-id"),c=$(b),d=this._getInst(c[0]),e=new Date;d.hours=e.getHours(),d.minutes=e.getMinutes(),this._updateSelectedValue(d),this._updateTimepicker(d),this._hideTimepicker()},deselectTime:function(a){var b=$(a.target).attr("data-timepicker-instance-id"),c=$(b),d=this._getInst(c[0]);d.hours=-1,d.minutes=-1,this._updateSelectedValue(d),this._hideTimepicker()},selectHours:function(a){var b=$(a.currentTarget),c=b.attr("data-timepicker-instance-id"),d=parseInt(b.attr("data-hour")),e=a.data.fromDoubleClick,f=$(c),g=this._getInst(f[0]),h=1==this._get(g,"showMinutes");if($.timepicker._isDisabledTimepicker(f.attr("id")))return!1;b.parents(".ui-timepicker-hours:first").find("a").removeClass("ui-state-active"),b.children("a").addClass("ui-state-active"),g.hours=d;var i=this._get(g,"onMinuteShow"),j=this._get(g,"maxTime"),k=this._get(g,"minTime");return!i&&isNaN(parseInt(j.minute))&&isNaN(parseInt(k.minute))||this._updateMinuteDisplay(g),this._updateSelectedValue(g),g._hoursClicked=!0,(g._minutesClicked||e||0==h)&&$.timepicker._hideTimepicker(),!1},selectMinutes:function(a){var b=$(a.currentTarget),c=b.attr("data-timepicker-instance-id"),d=parseInt(b.attr("data-minute")),e=a.data.fromDoubleClick,f=$(c),g=this._getInst(f[0]),h=1==this._get(g,"showHours");return!$.timepicker._isDisabledTimepicker(f.attr("id"))&&(b.parents(".ui-timepicker-minutes:first").find("a").removeClass("ui-state-active"),b.children("a").addClass("ui-state-active"),g.minutes=d,this._updateSelectedValue(g),g._minutesClicked=!0,!(!g._hoursClicked&&!e&&0!=h)&&($.timepicker._hideTimepicker(),!1))},_updateSelectedValue:function(a){var b=this._getParsedTime(a);a.input&&(a.input.val(b),a.input.trigger("change"));var c=this._get(a,"onSelect");return c&&c.apply(a.input?a.input[0]:null,[b,a]),this._updateAlternate(a,b),b},_getParsedTime:function(a){if(-1==a.hours&&-1==a.minutes)return"";(a.hours<a.hours.starts||a.hours>a.hours.ends)&&(a.hours=0),(a.minutes<a.minutes.starts||a.minutes>a.minutes.ends)&&(a.minutes=0);var b="",c=1==this._get(a,"showPeriod"),d=1==this._get(a,"showLeadingZero"),e=1==this._get(a,"showHours"),f=1==this._get(a,"showMinutes"),g=1==this._get(a,"optionalMinutes"),h=this._get(a,"amPmText"),i=a.hours?a.hours:0,j=a.minutes?a.minutes:0,k=i||0,l="";-1==k&&(k=0),-1==j&&(j=0),c&&(0==a.hours&&(k=12),a.hours<12?b=h[0]:(b=h[1],k>12&&(k-=12)));var m=k.toString();d&&k<10&&(m="0"+m);var n=j.toString();return j<10&&(n="0"+n),e&&(l+=m),!e||!f||g&&0==n||(l+=this._get(a,"timeSeparator")),!f||g&&0==n||(l+=n),e&&b.length>0&&(l+=this._get(a,"periodSeparator")+b),l},_updateAlternate:function(a,b){var c=this._get(a,"altField");c&&$(c).each(function(a,c){$(c).val(b)})},_getTimeAsDateTimepicker:function(a){var b=this._getInst(a);return-1==b.hours&&-1==b.minutes?"":((b.hours<b.hours.starts||b.hours>b.hours.ends)&&(b.hours=0),(b.minutes<b.minutes.starts||b.minutes>b.minutes.ends)&&(b.minutes=0),new Date(0,0,0,b.hours,b.minutes,0))},_getTimeTimepicker:function(a){var b=this._getInst(a);return this._getParsedTime(b)},_getHourTimepicker:function(a){var b=this._getInst(a);return void 0==b?-1:b.hours},_getMinuteTimepicker:function(a){var b=this._getInst(a);return void 0==b?-1:b.minutes}}),$.fn.timepicker=function(a){$.timepicker.initialized||($(document).mousedown($.timepicker._checkExternalClick),$.timepicker.initialized=!0),0===$("#"+$.timepicker._mainDivId).length&&$("body").append($.timepicker.tpDiv);var b=Array.prototype.slice.call(arguments,1);return"string"!=typeof a||"getTime"!=a&&"getTimeAsDate"!=a&&"getHour"!=a&&"getMinute"!=a?"option"==a&&2==arguments.length&&"string"==typeof arguments[1]?$.timepicker["_"+a+"Timepicker"].apply($.timepicker,[this[0]].concat(b)):this.each(function(){"string"==typeof a?$.timepicker["_"+a+"Timepicker"].apply($.timepicker,[this].concat(b)):$.timepicker._attachTimepicker(this,a)}):$.timepicker["_"+a+"Timepicker"].apply($.timepicker,[this[0]].concat(b))},$.timepicker=new Timepicker,$.timepicker.initialized=!1,$.timepicker.uuid=(new Date).getTime(),$.timepicker.version="0.3.3",window["TP_jQuery_"+tpuuid]=$}(jQuery),define("timePicker",function(){}),define("c_019_timepicker",["timePicker","underscore","modalADA"],function(a,b,c){"use strict";function d(a,b,c,d,e,f,g,h){this.$timePicker=a,this.$timePickerParent=h,this.timePickerSettingsObj=b,this.timePickerType=c,this.timePickerStartSelector=".time-picker-start",this.timePickerEndClass="time-picker-end",this.timePickerEndSelector="."+this.timePickerEndClass,this.timePickerCloseSelector=".time-close",this.timePickerErrorClass=d,this.$timePickerErrorMsg=$("."+e),this.timePickerSelectClass="select",this.timePickerCompleteClass="complete",this.formGroup=".form-group",this.timePickerShowClass="show",this.window=f,this.document=g,this.$html=$("html"),this.rtl=!1,this.localizeTimePicker()}return d.prototype.localizeTimePicker=function(){var a;b.isUndefined(this.$timePickerParent)&&(this.$timePickerParent=this.$timePicker.parent()),a=this.$timePickerParent.find(this.timePickerCloseSelector),this.$timePicker.timepicker(this.timePickerSettingsObj),this.$timePicker.timepicker("option",{beforeShow:b.bind(this.timePickerSettings,this),onClose:b.bind(this.timePickerClose,this),onSelect:b.bind(this.timePickerSelect,this)}),a.on("click",b.bind(this.resetTime,this))},d.prototype.timePickerSettings=function(a,d){function e(){var a=d.tpDiv;a.css({position:"absolute",top:i,left:0,"z-index":5}),$(".ui-timepicker-hour-cell .ui-state-default").attr("href","javascript:void(0);"),c.ADATrap(a.find(".ui-timepicker-hours")),$(".ui-timepicker-hour-cell .ui-state-default").click(function(){setTimeout(function(){$(".ui-timepicker-minute-cell .ui-state-default").attr("href","javascript:void(0);"),c.ADATrap(a.find(".ui-timepicker-minutes"))},10)}),this.isElementInViewport(a)||$("html, body").animate({scrollTop:f+a.outerHeight()})}var f,g,h,i,j=$("#"+d.id),k=this.$timePickerParent.find(this.timePickerStartSelector),l=this.$timePickerParent.find(this.timePickerEndSelector),m=$(this.window);m.height(),f=m.scrollTop(),
23g=parseInt(this.$timePicker.css("height"),10),h=this.$timePicker.position(),i=h.top+g+1,setTimeout(b.bind(e,this),10),j.addClass(this.timePickerSelectClass).prop("disabled",!0).before($.timepicker.tpDiv),"range"===this.timePickerType&&(j.hasClass(this.timePickerEndClass)?this.timePickerEndSelect(k,l):this.timePickerStartSelect(k,l))},d.prototype.isElementInViewport=function(a){var c;return b.isFunction($)&&a instanceof $&&(a=a[0]),c=a.getBoundingClientRect(),c.top>=0&&c.left>=0&&c.bottom<=(this.window.innerHeight||this.document.documentElement.clientHeight)&&c.right<=(this.window.innerWidth||this.document.documentElement.clientWidth)},d.prototype.timePickerStartSelect=function(a,b){var c,d,e,f,g=b.val();""!==g?(d=b.timepicker("getHour"),e=b.timepicker("getMinute"),d<0&&(d=0),e<0&&(e=0),f=d+":"+e,b.timepicker("option",{minTime:{hour:d,minute:e},defaultTime:f}),0===e&&(e=60,0===d&&(d=24),d-=1),e-=this.timePickerSettingsObj.minutes.interval,f=d+":"+e,c={maxTime:{hour:d,minute:e},defaultTime:f}):c={maxTime:{hour:this.timePickerSettingsObj.maxTime.hour,minute:this.timePickerSettingsObj.maxTime.minute}},a.timepicker("option",c)},d.prototype.timePickerEndSelect=function(a,b){var c,d,e,f,g=a.val();""!==g?(d=a.timepicker("getHour"),e=a.timepicker("getMinute"),d<0&&(d=0),e<0&&(e=0),f=d+":"+e,a.timepicker("option",{maxTime:{hour:d,minute:e},defaultTime:f}),e+=this.timePickerSettingsObj.minutes.interval,60===e&&(e=0,24===(d+=1)&&(d=0)),f=d+":"+e,c={minTime:{hour:d,minute:e},defaultTime:f}):c={minTime:{hour:this.timePickerSettingsObj.minTime.hour,minute:this.timePickerSettingsObj.minTime.minute}},b.timepicker("option",c)},d.prototype.timePickerSelect=function(a,b){var c=$("#"+b.id),d=c.parent().find(".time-close");this.$timePicker.width(),d.width();this.rtl="rtl"===this.$html.attr("dir"),this.rtl,d.addClass(this.timePickerShowClass),c.parent().addClass(this.timePickerCompleteClass),c.parent().closest(this.formGroup).addClass(this.timePickerCompleteClass),this.setHiddenInputTime(c,a),c.hasClass(this.timePickerErrorClass)&&(c.parent().removeClass(this.timePickerErrorClass).siblings(this.$timePickerErrorMsg).remove(),c.closest(this.formGroup).removeClass(this.timePickerErrorClass))},d.prototype.setHiddenInputTime=function(a,b){var c=a.attr("id")+"-hidden";$("#"+c).val(b).trigger("change")},d.prototype.timePickerClose=function(a,c){var d,e=$("#"+c.id),f=this.$timePickerParent.find(this.timePickerStartSelector),g=this.$timePickerParent.find(this.timePickerEndSelector);d=this.$timePickerParent.find(this.timePickerCloseSelector),d.on("click",b.bind(this.resetTime,this)),e.prop("disabled",!1),e.removeClass(this.timePickerSelectClass),e.closest(".timepicker-container").find(".ui-timepicker-trigger").focus(),"00"==a.substring(0,2)&&d.click(),this.checkTime(a),""!==g.val()&&this.setTimepickerValue(f,g)},d.prototype.setTimepickerValue=function(a,b){var c=b.timepicker("getHour"),d=b.timepicker("getMinute"),e=a.timepicker("getHour");d<=a.timepicker("getMinute")&&c<=e&&a.val("")},d.prototype.resetTime=function(a){var b=$(a.target).parent().find(this.$timePicker);a.preventDefault(),b[0].hasAttribute("placeholder")?b.val(""):b.val(b.attr("placeholder")),$(a.target).removeClass(this.timePickerShowClass),b.parent().removeClass(this.timePickerCompleteClass),b.parent().closest(this.formGroup).removeClass(this.timePickerCompleteClass),this.resetAllTime()},d.prototype.resetAllTime=function(){var a=this.$timePickerParent.find(this.timePickerStartSelector).val();""===this.$timePickerParent.find(this.timePickerEndSelector).val()&&""===a&&$(this.timePickerStartSelector+","+this.timePickerEndSelector).timepicker("option",{maxTime:{hour:this.timePickerSettingsObj.maxTime.hour,minute:this.timePickerSettingsObj.maxTime.minute}})},d.prototype.checkTime=function(a){var c,d,e,f,g=this.convertTime(a),h=parseInt(g.hour),i=parseInt(g.minute),j=this.$timePickerParent.find(this.timePickerCloseSelector),k=HELIOS.components.c_019.timePickerType.maxTime,l=HELIOS.components.c_019.timePickerType.minTime;j.on("click",b.bind(this.resetTime,this)),void 0!==k&&void 0!==l?(c=parseInt(k.hour),d=parseInt(k.minute),e=parseInt(l.hour),f=parseInt(l.minute),(h==c&&i>d||h==e&&i<f||h>
23c||h<e)&&j.click(),(new Date).getHours()==h&&(new Date).getMinutes()>i&&j.click()):(new Date).getHours()==h&&(new Date).getMinutes()>i&&j.click()},d.prototype.convertTime=function(a){var b=a.substring(0,2),c=a.substring(3,5),d=a.substring(6,8);return"12"==b&&(b="00"),"PM"==d&&(b=parseInt(b,10)+12),{hour:b,minute:c}},d}),define("c_019_17",["underscore","storageManager","heliosLocation","logger"],function(a,b,c,d){"use strict";function e(a,b){this.settings=$.extend({},k,b),this._defaults=k,this.$el=a,this.init()}var f,g,h,i,j="C19.17",k={selectors:{root:".c_019",selectedDealerNameInput:".selected-dealer-name",selectedDealerIdInput:".selected-dealer-id",selectedRequestVariable:".selected-request-variable"},data:{storageKey:"storageKey"},properties:{state:"state",queryParamsData:"queryParamsData",preferredDealer:"preferredDealer"},cookie:{ownerServicesLoggedInCookie:"OwnerServicesLoggedInName"},isPreferredDealerEnabled:void 0,isLoggedIn:!1,isInitialized:!1},l={cookie:{mode:"cookie"}},m={deepLinking:{key:"dealerIdInForm",dealerId:void 0},smartLocation:{dealerId:void 0},preferred:{dealerId:void 0}};return e.prototype.init=function(a){return i=new d({prefix:j}),f=$(this.settings.selectors.root),f.length?this._areRequiredElementsFound()?(b.init(),this._setIsInitialized(!0),void this._lookUpLoggedInCookie()):(i.debug("Required elements are missing"),!1):(i.debug("Root element is missing"),!1)},e.prototype.run=function(a){var b=$.Deferred();return this._setDealerCollection(a),this.isInitialized()&&this._getDealerCollection()?(this._resetActiveDealerData(),this._activeDealerHandler(b)):(b.reject(),i.debug("Component is not initialised or dealer collection data is missing")),b},e.prototype._activeDealerHandler=function(b){this._isLinkingDealerIdAvailable()&&(this.setActiveDealer(this._getDeepLinkingDealerId()),b.resolve()),this._getActiveDealerModel()||this._lookUpSmartLocationDealerId().done(a.bind(function(){this.setActiveDealer(this._getSmartLocationDealerId()),b.resolve()},this)).fail(a.bind(function(){this._isPreferredDealerIdAvailable()?(this.setActiveDealer(this._getPreferredDealerId()),b.resolve()):b.reject()},this))},e.prototype._findDealerModel=function(a){var b=this._getDealerCollection().get(a);return b||(b=this._getDealerCollection().findWhere({dealerId:a})),b},e.prototype.isInitialized=function(){return this.settings.isInitialized},e.prototype._areRequiredElementsFound=function(){var a=!1,b=f.find(this.settings.selectors.selectedDealerIdInput),c=f.find(this.settings.selectors.selectedDealerNameInput);return b.length&&c.length&&(a=!0),a},e.prototype._isQueryParamInURL=function(){return new RegExp("[?&]"+m.deepLinking.key+"=").test(this.settings.window.location.search)},e.prototype._isUserLoggedIn=function(){return this.settings.isLoggedIn},e.prototype._resetActiveDealerData=function(){m.deepLinking.dealerId=void 0,m.smartLocation.dealerId=void 0,m.preferred.dealerId=void 0,g=void 0},e.prototype.getActiveDealerId=function(){return this._getActiveDealerModel()&&this._getActiveDealerModel().get("id")},e.prototype._getIsPreferredDealerEnabled=function(){return this.settings.isPreferredDealerEnabled||this._lookupPreferredDealerEnabled()},e.prototype._getSmartLocationContext=function(){return this.settings.smartLocationContext},e.prototype._getDealerCollection=function(){return h},e.prototype._getDeepLinkingKey=function(){return m.deepLinking.key},e.prototype._getDeepLinkingDealerId=function(){return m.deepLinking.dealerId||this._lookUpQueryParamDealerId()},e.prototype._getSmartLocationDealerId=function(){return m.smartLocation.dealerId},e.prototype._getPreferredDealerId=function(){return m.preferred.dealerId||this._lookUpPreferredDealerId()},e.prototype._getActiveDealerModel=function(){return g},e.prototype._isLinkingDealerIdAvailable=function(){return this._isQueryParamInURL()&&this._getDeepLinkingDealerId()},e.prototype._isPreferredDealerIdAvailable=function(){return this._getIsPreferredDealerEnabled()&&this._isUserLoggedIn()&&this._getPreferredDealerId()},e.prototype._lookupPreferredDealerEnabled=function(){var a=f.find(this.settings.selectors.selectedRequestVariable),b=a&&a.data(this.settings.data.storageKey);return this._setIsPreferredDealerEnabled(b===this.settings.properties.preferredDealer),this.settings.isPreferredDealerEnabled},e.prototype._lookUpLoggedInCookie=function(){var a=b.loadItem(this.settings.cookie.ownerServicesLoggedInCookie,l.cookie);return this._setIsLoggedIn(!!a),a},e.prototype._lookUpQueryParamDealerId=function(){var a,c;return c=b.loadItem(this.settings.properties.queryParamsData,l.session),a=c&&c[this._getDeepLinkingKey()],this._setDeepLinkingDealerId(a),a},e.prototype._lookUpSmartLocationDealerId=function(){var b,c=$.Deferred();return this._getSmartLocationContext()&&this._getSmartLocationContext().get().done(a.bind(function(a){b=a.getDealerId(),b?(this._setSmartLocationDealerId(b),c.resolve(b)):c.reject()},this)).fail(function(){i.debug("smartLocationContext.get() failed"),c.reject()}),c},e.prototype._lookUpPreferredDealerId=function(){var a,c;return c=b.loadItem(this.settings.properties.state,l.local),a=c&&c.dealer&&c.dealer.preferred,this._setPreferredDealerId(a),a},e.prototype.setActiveDealer=function(a){var b=this._findDealerModel(a);b&&(this._setActiveDealerModel(b),this._getSmartLocationContext().set((new c).setDealerId(this._getActiveDealerModel().get("dealerId"))))}
23,e.prototype._setDealerCollection=function(a){if(a instanceof Backbone.Collection==!1)return!1;h=a},e.prototype._setIsPreferredDealerEnabled=function(a){this.settings.isPreferredDealerEnabled=!!a},e.prototype._setActiveDealerModel=function(a){g=a},e.prototype._setDeepLinkingDealerId=function(a){m.deepLinking.dealerId=a},e.prototype._setSmartLocationDealerId=function(a){m.smartLocation.dealerId=a},e.prototype._setPreferredDealerId=function(a){m.preferred.dealerId=a},e.prototype._setIsLoggedIn=function(a){this.settings.isLoggedIn=!!a},e.prototype._setIsInitialized=function(a){this.settings.isInitialized=!!a},e}),define("c_019_23",["underscore","c_008"],function(a,b){"use strict";function c(a,b){this.settings=$.extend({},f,b),this._defaults=f,this.$el=a,this.init()}var d,e,f={selectors:{root:".c_019-23",tooltipTriggers:".has-tooltip",groupCheckboxes:".group-checkboxes .group-checkbox",groupCheckbox:".group-checkbox",parentCheckboxes:".group-checkboxes",formParent:"form",combinedValue:".combined-value",checked:":checked"},attributes:{typeSubmission:"type-submission",characterConcat:"character-concat",disabled:"disabled",uncheckedConsentPayload:"unchecked-consent-payload"},events:{submit:"submit",change:"change"}};return c.prototype.init=function(){var a;if(d=$(this.settings.selectors.root),!d.length)return!1;a=d.find(this.settings.selectors.tooltipTriggers),b.createTooltips(a),e=d.parents(this.settings.selectors.formParent),this._bindEvents()},c.prototype._bindEvents=function(){$(this.settings.selectors.groupCheckboxes+":not(:first)").on(this.settings.events.change,a.bind(function(a){$(a.target).parents(this.settings.selectors.parentCheckboxex).find(this.settings.selectors.groupCheckbox).first().valid()},this))},c.prototype.verifyDataBeforeSubmit=function(){d.each(a.bind(function(a,b){var c,d=$(b),e=d.data(this.settings.attributes.typeSubmission),f=d.data(this.settings.attributes.characterConcat),g=d.find(this.settings.selectors.combinedValue),h=d.find(this.settings.selectors.groupCheckboxes);if(e)c=h.filter(this.settings.selectors.checked).map(function(){return this.value}).get().join(f),h.prop(this.settings.attributes.disabled,!0),g.val(c);else{var i=this.settings.attributes.uncheckedConsentPayload;h.each(function(){var a=$(this),b=a.attr("name"),c=a.closest("li");a.is(":checked")||!0!==d.data(i)&&"true"!==d.data(i)||$("<input>",{type:"hidden",name:b,value:""}).appendTo(c)})}},this))},c}),define("c_230",["jquery","handlebars","storageManager","remoteServices","underscore"],function(a,b,c,d,e){"use strict";function f(b,c){this.settings=a.extend({},m,c),this.defaults=m,this.$el=b,this.init(c)}var g,h,i,j,k,l,m={events:{click:"click",change:"change"},classes:{hide:"hide",disableButton:"btn-disabled"},data:{fileSizeError:"data-max-size-error",totalSizeError:"data-total-fileSize-error",serverError:"data-server-error",fileTypeError:"data-extn-error",mandatoryError:"data-validation-notblank"},ajaxError:{1020000:"data-file-upload-notsupported",1020001:"data-total-fileSize-error",1020002:"data-total-file-count-error",1020003:"data-max-size-error",1020004:"data-extn-error",1020005:"data-server-error",1020006:"data-server-error"},selectors:{componentRoot:".c_230",root:"input[name='fileUploadState']",fileListContainer:".upload-file-list",fileTemplate:"script[data-template=c_230]",file:"div.c_230 input#file",fileUploadTooptip:"div.c_230 .c_008",fileTypesSection:".c_230 .file-types",removeFile:"a.remove-upload-file",uploadButton:"div.upload-button",errorElement:".fileupload-error-group",errorMsg:".fileupload-error-group span.error-msg",Addfile:".btn-beta-right.addfile",Addmore:".btn-beta-right.addmore",Addbutton:".btn-beta-right",cancelButton:".cancel-button",CancelUpload:".cancel-upload",FormResponse:"input[name='formResponse']"},FileAuthorValues:{maxFileSize:Number(a("div.file-upload-params").attr("data-fileupload-maxuploadsize")),totalFileSize:Number(a("div.file-upload-params").attr("data-fileupload-totaluploadsize")),maxFileCount:Number(a("div.file-upload-params").attr("data-fileupload-maxfilecount")),FileTypes:a("div.file-upload-params").attr("data-fileupload-filetypes"),FileTypeAnalytics:a("div.c_230").attr("data-file-type-analytics"),Mandatory:a("div.c_230 .form-group").hasClass("required")},ajaxAbort:"abort",fileSizeParam:" MB",fileSizetoMB:1048576,fileArray:{},callBackFunction:null,AnalyticsComponentId:"C230_Form_Builder_Upload_File",fileUploadKey:"fileUpload",analyticsAcceptFileYes:"yes",preValue:"pre",postValue:"post"};return f.prototype.init=function(b){g=a(this.settings.selectors.componentRoot),g.length&&(this.settings.FileAuthorValues.FileTypes=this.refactorFileTypes(),l=a(this.settings.selectors.errorElement),a(this.settings.selectors.file).attr("accept",this.settings.FileAuthorValues.FileTypes),this.bindEvents(),c.init())},f.prototype.refactorFileTypes=function(){var b=this.settings.FileAuthorValues.FileTypes?this.settings.FileAuthorValues.FileTypes.split(","):[];return a.map(b,function(b){return 0!==a.trim(b).indexOf(".")?"."+a.trim(b):a.trim(b)}).join(",")},f.prototype.checkFile=function(b){var c,d=b.target.files,e=d[0],f=e.name,g=Number((e.size/this.settings.fileSizetoMB).toFixed(2)),h=f.substring(f.lastIndexOf("."),f.length).toLowerCase(),i=this.settings.FileAuthorValues.FileTypes?this.settings.FileAuthorValues.FileTypes.toLowerCase().split(","):[],j=this.settings.FileAuthorValues.FileTypeAnalytics||"",m=0;if(a(this.settings.selectors.file).replaceWith(a(this.settings.selectors.file).clone(!0)),i.indexOf(h)>-1)if(g<=this.settings.FileAuthorValues.maxFileSize){for(c in this.settings.fileArray)m+=Number((this.settings.fileArray[c].size/this.settings.fileSizetoMB).toFixed(2));m+=g,m<=this.settings.FileAuthorValues.totalFileSize?(this.disableErrorMessage(),this.settings.fileArray[d[0].name]=d[0],this.displayFileName(this.settings.fileArray),this.bindAnalyticsForFileUpload(j)):(k=l.attr(this.settings.data.totalSizeError),this.bindAnalyticsForFileUpload(j,k),this.enableErrorMessage(k))}else k=l.attr(this.settings.data.fileSizeError),this.bindAnalyticsForFileUpload(j,k),this.enableErrorMessage(k);else k=l.attr(this.settings.data.fileTypeError),this.bindAnalyticsForFileUpload(j,k),this.enableErrorMessage(k)},f.prototype.enableErrorMessage=function(b){a(this.settings.selectors.errorMsg).html(b),a(this.settings.selectors.errorElement).removeClass(this.settings.classes.hide)},f.prototype.disableErrorMessage=function(){a(this.settings.selectors.errorElement).addClass(this.settings.classes.hide)},f.prototype.removeSelectedFile=function(b){var c=a(b.target).attr("data-removeFile");b.preventDefault(),this.disableErrorMessage(),delete this.settings.fileArray[c],this.displayFileName(this.settings.fileArray)},f.prototype.displayFileName=function(c){var d,e={flist:c},f=b.compile(a(this.settings.selectors.fileTemplate).html()),g=Object.keys(c),h=g.length;for(d=0;d<h;d++)c[g[d]].sizeinMB=Number((c[g[d]].size/this.settings.fileSizetoMB).toFixed(2))+this.settings.fileSizeParam;h?a(this.settings.selectors.fileListContainer).html(f(e)).show():a(this.settings.selectors.fileListContainer).hide(),h<this.settings.FileAuthorValues.maxFileC
23ount?this.showUploadButton():this.hideUploadButton(),h?(a(this.settings.selectors.Addfile).addClass(this.settings.classes.hide),a(this.settings.selectors.Addmore).removeClass(this.settings.classes.hide)):(a(this.settings.selectors.Addfile).removeClass(this.settings.classes.hide),a(this.settings.selectors.Addmore).addClass(this.settings.classes.hide))},f.prototype.hideUploadButton=function(){a(this.settings.selectors.uploadButton).hide(),a(this.settings.selectors.fileUploadTooptip).hide(),a(this.settings.selectors.fileTypesSection).hide()},f.prototype.showUploadButton=function(){Object.keys(this.settings.fileArray).length<this.settings.FileAuthorValues.maxFileCount&&(a(this.settings.selectors.uploadButton).show(),a(this.settings.selectors.fileUploadTooptip).show(),a(this.settings.selectors.fileTypesSection).show())},f.prototype.hideCancelButton=function(){a(this.settings.selectors.cancelButton).hide()},f.prototype.displayMandatoryErrors=function(){if(this.settings.FileAuthorValues.Mandatory&&!Object.keys(this.settings.fileArray).length)return k=l.attr(this.settings.data.mandatoryError),this.enableErrorMessage(k),!1},f.prototype.showCancelButton=function(){a(this.settings.selectors.cancelButton).show()},f.prototype.handlePreAjaxCallSuccess=function(a,b,c){var e,f,g,h=new FormData;if(i=null,200===c.status){try{a="object"==typeof a?a:JSON.parse(a)}catch(k){a={}}if(a.formEndpoint){e=a.formEndpoint,f="string"==typeof a.formJson?a.formJson:JSON.stringify(a.formJson),h.append("formJson","Content-Type: application/json\n"+f);for(g in this.settings.fileArray)h.append(g,this.settings.fileArray[g]);j=d.postFileUploadFormData({ajaxSettings:{type:"POST",contentType:!1,processData:!1},queryParams:h,url:e}),j.done(handlePostAjaxCallSuccess),j.fail(handlePostAjaxCallFail)}else this.dataErrorHandling(this.settings.data.serverError)}else this.dataErrorHandling(this.settings.data.serverError)},f.prototype.handlePreAjaxCallFail=function(a,b){var c;i=null;try{c=JSON.parse(a.responseText)}catch(d){c={}}a.statusText&&a.statusText===this.settings.ajaxAbort?this.resetFileDisplay():c.location&&!e.isEmpty(c.location)?window.location.href=c.location:this.dataErrorHandling(this.settings.data.serverError)},f.prototype.dataErrorHandling=function(a){this.resetFileDisplay(),k=l.attr(a),this.enableErrorMessage(k)},f.prototype.handlePostAjaxCallSuccess=function(b){var c="string"==typeof b?b:JSON.stringify(b);j=null,this.disableUserInteraction(),this.storeAnalyticsData(this.settings.FileAuthorValues.FileTypeAnalytics,this.settings.analyticsAcceptFileYes),a(this.settings.selectors.root).val(this.settings.postValue),a(this.settings.selectors.FormResponse).val(c),this.settings.callBackFunction&&this.settings.callBackFunction(!0)},f.prototype.handlePostAjaxCallFail=function(a,b){var c=a.responseText?JSON.parse(a.responseText):{};j=null,400===a.status?(k=l.attr(this.settings.ajaxError[c.code]),this.enableErrorMessage(k)):a.statusText!==this.settings.ajaxAbort&&(k=l.attr(this.settings.data.serverError),this.enableErrorMessage(k)),this.resetFileDisplay()},f.prototype.handleFileUpload=function(b,c,d){var e,f=b.parents("form"),g=f.attr("action"),j="";h=b,this.settings.callBackFunction=d,Object.keys(this.settings.fileArray).length?(a(this.settings.selectors.root).val(this.settings.preValue),e=f.serialize(),b.addClass(this.settings.classes.disableButton).attr("disabled","disabled"),a(this.settings.selectors.removeFile).hide(),this.showCancelButton(),this.hideUploadButton(),this.disableErrorMessage(),i=a.ajax({url:g,data:e,contentType:"application/x-www-form-urlencoded",type:"POST"}),i.done(handlePreAjaxCallSuccess),i.fail(handlePreAjaxCallFail)):this.settings.FileAuthorValues.Mandatory?(k=l.attr(this.settings.data.mandatoryError),this.enableErrorMessage(k)):(j=c===this.settings.analyticsAcceptFileYes?this.settings.FileAuthorValues.FileTypeAnalytics:"",this.storeAnalyticsData(j,c),this.settings.callBackFunction&&this.settings.callBackFunction(!0))},f.prototype.storeAnalyticsData=function(a,b){c.saveItem(this.settings.fileUploadKey,{fileType:a,acceptFile:b},{mode:"localStorage"})},f.prototype.abortPostAjaxCall=function(a){a.preventDefault(),i?i.abort():j&&j.abort(),this.resetFileDisplay()},f.prototype.resetFileDisplay=function(){this.hideCancelButton(),this.showUploadButton(),a(this.settings.selectors.removeFile).show(),h&&h.removeClass(this.settings.classes.disableButton).removeAttr("disabled","disabled")},f.prototype.disableUserInteraction=function(){this.hideCancelButton(),this.hideUploadButton(),a(this.settings.selectors.removeFile).hide()},f.prototype.bindAnalyticsForFileUpload=function(a,b){var c={componentId:this.settings.AnalyticsComponentId,fileType:a,errorMessage:b},d=this.settings.fileUploadKey;this.settings.analyticsManager.tag(d,c)},f.prototype.triggerFileInput=function(b){b.preventDefault(),a(this.settings.selectors.file).trigger(this.settings.events.click)},f.prototype.bindEvents=function(){a(this.settings.selectors.Addbutton).on(this.settings.events.click,e.bind(this.triggerFileInput,this)),a(this.settings.selectors.file).on(this.settings.events.change,e.bind(this.checkFile,this)),a(this.settings.selectors.fileListContainer).on(this.settings.events.click,this.settings.selectors.removeFile,e.bind(this.removeSelectedFile,this)),a(this.settings.selectors.CancelUpload).on(this.settings.events.click,e.bind(this.abortPostAjaxCall,this))},f}),define("dateFormat",["heliosObject","underscore"],function(a,b){"use strict";function c(){return a.config.common.locale||(a.config.common.locale=document.documentElement.getAttribute("lang")),[a.config.common.locale]}function d(b){return a.config.common.dateFormat[b]||{}}function e(a,e){var f=c(),g=d(e);
23return!(b.isEmpty(g)||!b.isFunction(a.toLocaleDateString))&&(g.timeZone=k.standard,a.toLocaleDateString(f,g))}function f(a){return e(a,k.types.THREE_TIER)}function g(a){return e(a,k.types.TWO_TIER)}function h(a){var b,c=[];return a=a||[],a.forEach(function(a){if(a.startDate===a.endDate)b=new Date(a.startDate),c.push(b.getFullYear()+"-"+("0"+(b.getMonth()+1)).slice(-2)+"-"+("0"+b.getDate()).slice(-2));else for(var d=new Date(a.startDate),e=new Date(a.endDate);d<=e;)c.push(d.getFullYear()+"-"+("0"+(d.getMonth()+1)).slice(-2)+"-"+("0"+d.getDate()).slice(-2)),d.setDate(d.getDate()+1)}),c}function i(a){return a=a?new Date(a):null,a?a.getUTCFullYear()+"-"+("0"+(a.getUTCMonth()+1)).slice(-2)+"-"+("0"+a.getUTCDate()).slice(-2):void 0}function j(a,b,c,d){var e,f,g,h,i=a?new Date(a):new Date,j=a?new Date(a):new Date;return i.setUTCHours(i.getUTCHours()+9),j.setUTCHours(j.getUTCHours()+9),(1*b||0===Number(b))&&j.setUTCHours(Number(b)),(1*c||0===Number(c))&&j.setUTCMinutes(Number(c)),(1*d||0===Number(d))&&j.setUTCSeconds(Number(d)),h=j-i,h>0?(e=Math.floor(h%864e5/36e5),f=Math.floor(h%36e5/6e4),g=Math.floor(h%6e4/1e3),{cutOffExpired:!(60*f+e>0),hours:e,mins:f,secs:g}):{cutOffExpired:!0}}a.config=a.config||{},a.config.common=a.config.common||{},a.config.common.dateFormat=a.config.common.dateFormat||{};var k={types:{TWO_TIER:"two_tier",THREE_TIER:"three_tier"},standard:"UTC"};return{formatThreeTier:f,formatTwoTier:g,getUTCDiffTime:j,formatDatesFromDateRange:h,getDateString:i}}),define("cryptoJS",[],function(){var a=a||function(a,b){"use strict";var c={},d=c.lib={},e=d.Object=function(){function a(){}return a.create=function(){function a(){}return function(b){return a.prototype=b,new a}}(),a.mixIn=function(){var a=["toString"],b=a.length;return function(c,d){for(var e in d)d.hasOwnProperty(e)&&(c[e]=d[e]);for(var f=0;f<b;f++){var e=a[f];d.hasOwnProperty(e)&&(c[e]=d[e])}}}(),a.extend=function(b,c){if(b&&b.hasOwnProperty("constructor"))var d=b.constructor;else var d=function a(){a.$super.apply(this,arguments)};var e=d.prototype=a.create(this.prototype);return e.constructor=d,a.mixIn(d,this),b&&a.mixIn(e,b),c&&a.mixIn(d,c),d.$super=this,d},a.prototype.clone=function(){var b=a.create(this.constructor.prototype);return a.mixIn(b,this),b},a}(),f=d.WordArray=e.extend({constructor:function(a,c){a||(a=[]),c===b&&(c=4*a.length),this.words=a,this.sigBytes=c},toString:function(a){return a||(a=h),a.stringify(this)},concat:function(a){var b=this.words,c=a.words,d=this.sigBytes,e=a.sigBytes;if(this.clamp(),d%4)for(var f=0;f<e;f++){var g=c[f>>>2]>>>24-f%4*8&255,h=d+f,i=h>>>2;h%4==0&&(b[i]=0),b[i]|=g<<24-h%4*8}else for(var f=0;f<e;f+=4)b[d+f>>>2]=c[f>>>2];return this.sigBytes+=e,this},clamp:function(){var b=this.words,c=this.sigBytes;b[c>>>2]&=4294967295<<32-c%4*8,b.length=a.ceil(c/4)},clone:function(){var a=f.$super.prototype.clone.call(this);return a.words=a.words.slice(0),a}},{random:function(b){for(var c=[],d=0;d<b;d+=4)c[d>>>2]=4294967296*a.random()|0;return new f(c,b)}}),g=c.enc={},h=g.Hex={stringify:function(a){for(var b=a.words,c=a.sigBytes,d="",e=0;e<c;e++){var f=b[e>>>2]>>>24-e%4*8&255;d+=(f>>>4).toString(16)+(15&f).toString(16)}return d},parse:function(a){var b=a.length;if(b%2!=0)throw new m("The hex string must represent a whole number of bytes.");for(var c=[],d=0;d<b;d+=2){var e=d>>>3;d%8==0&&(c[e]=0),c[e]|=parseInt(a.substr(d,2),16)<<24-d%8*4}return new f(c,b/2)}},i=g.Latin1={stringify:function(a){for(var b=a.words,c=a.sigBytes,d="",e=0;e<c;e++){var f=b[e>>>2]>>>24-e%4*8&255;d+=String.fromCharCode(f)}return d},parse:function(a){for(var b=a.length,c=[],d=0;d<b;d++){var e=d>>>2;d%4==0&&(c[e]=0),c[e]|=(255&a.charCodeAt(d))<<24-d%4*8}return new f(c,b)}},j=g.Utf8={stringify:function(a){try{return decodeURIComponent(escape(i.stringify(a)))}catch(b){throw b instanceof URIError?new n("Malformed UTF-8 bytes."):b}return decodeURIComponent(escape(i.stringify(a)))},parse:function(a){return i.parse(unescape(encodeURIComponent(a)))}},k=d.BufferedBlockAlgorithm=e.extend({_reset:function(){this._data=new f,this._nDataBitsMsw=0,this._nDataBitsLsw=0},_append:function(a){"string"==typeof a&&(a=j.parse(a)),this._data.concat(a);var b=this._nDataBitsLsw;(this._nDataBitsLsw=b+8*a.sigBytes|0)>>>0<b>>>0&&(this._nDataBitsMsw=this._nDataBitsMsw+1|0)},_process:function(b){var c=this._data,d=c.words,e=c.sigBytes,g=this.blockSize,h=e/(4*g);h=b?a.ceil(h):a.max((0|h)-this._minBufferSize,0);var i=h*g,j=a.min(4*i,e);if(i){for(var k=0;k<i;k+=g)this._doProcessBlock(d.slice(k,k+g));var l=d.splice(0,i);c.sigBytes-=j}return new f(l,j)},_minBufferSize:0,clone:function(){var a=k.$super.prototype.clone.call(this);return a._data=a._data.clone(),a}});d.Hasher=k.extend({cfg:e.extend(),constructor:function(a){this.cfg=new(this.cfg.extend(a)),this._doInit(),this.reset()},reset:function(){return this._reset(),this._doReset(),this},update:function(a){return this._append(a),this._process(),this},finalize:function(a){a&&this._append(a);var b=this._doFinalize();return this.reset(),b},blockSize:16},{hash:function(a,b){return new this(b).finalize(a)}});var l=c.err={},m=l.OctetError=e.extend.call(Error),n=l.BitPatternError=e.extend.call(Error);return c}(Math);return function(b){"use strict";var c=a,d=c.lib,e=d.WordArray,f=d.Hasher,g=[],h=[];!function(){function a(a){for(var c=b.sqrt(a),d=2;d<=c;d++)if(a%d==0)return!1;return!0}function c(a){return 4294967296*(a-(0|a))|0}for(var d=2,e=0;e<64;)a(d)&&(e<8&&(g[e]=c(b.pow(d,.5))),h[e]=c(b.pow(d,1/3)),e++),d++}();var i=[],j=c.SHA256=f.extend({_doInit:function(){},_doReset:function(){this._state=g.slice(0)},_doProcessBlock:function(a){for(var b=this._state,c=b[0],d=b[1],e=b[2],f=b[3],g=b[4],j=b[5],k=b[6],l=b[7],m=c,n=d,o=e,p=f,q=g,r=j,s=k,t=l,u=0;u<64;u++){if(u<16)var v=a[u];else var w=i[u-15],x=i[u-2],v=i[u-7]+i[u-16]+((w<<25|w>>>7)^(w<<14|w>>>18)^w>>>3)+((x<<15|x>>>
2317)^(x<<13|x>>>19)^x>>>10);i[u]=v|=0;var y=((g<<26|g>>>6)^(g<<21|g>>>11)^(g<<7|g>>>25))+(g&j^~g&k)+l+v+h[u],z=((c<<30|c>>>2)^(c<<19|c>>>13)^(c<<10|c>>>22))+(c&d^c&e^d&e);l=k,k=j,j=g,g=f+y|0,f=e,e=d,d=c,c=y+z|0}b[0]=m+c|0,b[1]=n+d|0,b[2]=o+e|0,b[3]=p+f|0,b[4]=q+g|0,b[5]=r+j|0,b[6]=s+k|0,b[7]=t+l|0},_doFinalize:function(){var a=this._data,b=a.words,c=8*a.sigBytes,d=this._nDataBitsLsw,f=this._nDataBitsMsw;b[c>>>5]|=128<<24-c%32;var g=14+(c+64>>>9<<4);return b[g]=f,b[g+1]=d,a.sigBytes=4*b.length,this._process(),new e(this._state)},clone:function(){var a=j.$super.prototype.clone.call(this);return a._state=a._state.slice(0),a}})}(Math),a}),define("myPageApi",["jquery","remoteServices"],function(a,b){"use strict";function c(){if(null!==y)return y;var a=["access_token","refresh_token","id_token"],b=document.cookie.split("; "),c={},d=0;return b.forEach(function(b){var e=b.split("=");a.some(function(a){return a===e[0]})&&(c[e[0]]=e[1],d++)}),3===d?(y=c,c):null}function d(a){try{if(!a)return!1;var b=JSON.parse(window.atob(decodeURIComponent(a.split(".")[1])));if(b.exp&&1e3*b.exp>Date.now())return!0}catch(error){return!1}}function e(){if(null!==x)return x;var b=a.Deferred();x=b.promise();var e=c();return e&&d(e.id_token)?b.resolve(!0):b.resolve(!1),x}function f(){var a=c();return a&&d(a.id_token)}function g(a,b){var c=b||window.location.href;return a+"?prompt=2&nlink_rd="+btoa(c)}function h(){return e().then(function(a){return a?o({App_ID:"WR8F003_01",id_token:c().id_token}):null}).then(function(b){var c=a.Deferred(),d=z.components.c_019.myPagePrepopulateMappingCustomer;try{d=JSON.parse(d)}catch(f){return c.reject(new Error(f)),c.promise()}var e=a(b),f=e.find("error_cd").text();if(""!==f)return c.reject(new Error(f)),c.promise();var g={};return Object.keys(d).map(function(a){var b,c=d[a];if(c.fields){b=Object.keys(c.fields).filter(function(a){return e.find(a).text().trim().length>0}).map(function(a){return e.find(a).text().trim()}).join(c.conector)}else b=c.in?e.find(c.in).text().trim():e.find(c).text().trim();b&&(g[a]=b)}),g})}function i(){return e().then(function(a){return a?o({App_ID:"WR8F200_01",id_token:c().id_token}):null}).then(function(b){if(!b)return null;var c=a(b),d=[];return c.find("my_tenpo").each(function(){var b=a(this).find("hs_cd").text()+"-"+a(this).find("tenpo_cd").text(),c=a(this).find("hs_nm").text()+" "+a(this).find("tenpo_nm").text(),e=a(this).find("create_dt").text();d.push({id:b.trim(),name:c.trim(),created:e})}),d})}function j(a,b){return b?o({estimate_id:b,id_token:a,App_ID:"WRNF003_01",callback:"f"},void 0,B).then(function(a){try{var b,c=a.substring(2,a.length-3),d=JSON.parse(c),e=d.rashinban.estimate;return b=Array.isArray(e)?e[0].configuration_url:e.configuration_url,{configuration_url:b}}catch(error){return null}}).fail(function(a){return null}):null}function k(a,b){return b?o({cre_sim_id:b,id_token:a,App_ID:"WRNF024_01",callback:"f"},void 0,B).then(function(a){try{var b=a.substring(2,a.length-3),c=JSON.parse(b),d=c.rashinban.payment.payment_conditions.payment_result,e=JSON.parse(d);if(0===e.status)return e;throw new Error(JSON.stringify(e.err_detail))}catch(f){return null}}).fail(function(a){return null}):null}function l(a,b){var c=[];if(a&&(c=c.concat(["見積りSIM情報:","コンフィギュレーションURL: "+a.configuration_url,""])),b){var d=(b.keisan_detail||[])[0]||{}
24;c=c.concat(["クレSIM情報:","クレジットプラン:"+b.credit_plan,"頭金:"+b.atamakin,"下取車価格:"+b.shitadori,"所要資金:"+b.shikin,"計算結果詳細:","計算種別:"+d.shubetsu,"走行距離:"+d.soukou_kyori,"お支払い方法:"+d.harai,"お支払回数・期間:"+d.kaisu,"手数料率(実質年率):"+d.tesuryoritsu,"お支払開始年月:"+d.first_nen_tsuki,"初回分割支払額:"+d.first_haraigaku,"分割支払額(月額):"+d.getsugaku,"分割支払回数:"+d.bunkatsu_kaisu,"ボーナス月1:"+d.gatsu1,"ボーナス月2:"+d.gatsu2,"ボーナス1の回数:"+d.gatsu1_kaisu,"ボーナス2の回数:"+d.gatsu2_kaisu,"ボーナス月分割支払額:"+d.bonus_haraigaku,"最終回分割払支払額:"+d.last_haraigaku,"クレジット支払額合計:"+d.credit_kei,"支払総額:"+d.harai_kei,"走行距離免責基準:"+d.soukou_kyori_menseki,"走行距離清算可能上限:"+d.soukou_kyori_jogen,"簡易診断結果:"+d.shindan_kekka,""])}return c.join("\n")}function m(){var b=new URL(window.location.href),d=b&&b.searchParams,f=d.get("estimate_id"),g=d.get("cre_sim_id");return e().then(function(b){if(!b)return null;var d=c().id_token;return a.when(j(d,f),k(d,g)).then(l)})}function n(){var a=(new Date).getTime(),b=performance&&performance.now&&1e3*performance.now()||0;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(c){var d=16*Math.random();return a>
240?(d=(a+d)%16|0,a=Math.floor(a/16)):(d=(b+d)%16|0,b=Math.floor(b/16)),("x"===c?d:3&d|8).toString(16)})}function o(a,d,e){var f=c(),g=null!==f?f.access_token:void 0,h={"x-correlation-id":n(),ciam_access_token:g};return d=d||"GET","POST"===d&&(h["Content-Type"]="application/json"),b.makeCall({useToken:!0,tokenOptions:b.getAuthoriser().generateTokenObject("WRITE","*"),url:e||A,queryParams:a,headers:h,ajaxSettings:{method:d}})}function p(b){var d=b.split("-");return o(JSON.stringify({params:[{name:"App_ID",value:"WR8F201_01"},{name:"id_token",value:c().id_token},{name:"hs_cd",value:d[0]},{name:"tenpo_cd",value:d[1]}]}),"POST").then(function(b){var c=a(b),d=c.find("error_cd").text(),e=c.find("results").text();if(""!==d){var f=a.Deferred();return f.reject(new Error(d)),f.promise()}return e})}function q(b){var d=b.split("-");return o(JSON.stringify({params:[{name:"App_ID",value:"WR8F202_01"},{name:"id_token",value:c().id_token},{name:"hs_cd",value:d[0]},{name:"tenpo_cd",value:d[1]}]}),"POST").then(function(b){var c=a(b),d=c.find("error_cd").text(),e=c.find("results").text();if(""!==d){var f=a.Deferred();return f.reject(new Error(d)),f.promise()}return e})}function r(){var b=a.Deferred(),c=t(),d=s(c);return null===d?(b.reject(),b.promise()):(sessionStorage.setItem("isMyPageEnabled",!0),o(JSON.stringify({params:d}),"POST").then(function(b){if(""!==a(b).find("error_cd").text());else{var d=new Date;d.setTime(d.getTime()+36e5),document.cookie="session_id="+c+"; Secure; Path=/; Domain=.nissan.co.jp; expires="+d.toUTCString()}}))}function s(b){var c=z.components.c_019.myPagePrepopulateMappingCustomer,d=[{name:"App_ID",value:"WR8F401_01"},{name:"session_id",value:b}];try{c=JSON.parse(c)}catch(error){return null}return Object.keys(c).map(function(b){var e=c[b];if(a("input[data-storage-key="+b+"]").length>0)if(e.fields){var f=Object.keys(e.fields),g=a("input[data-storage-key="+b+"]").val();g&&(g=g.includes(e.conector)?g.split(e.conector):[g.slice(0,e.fields[f[0]].length),g.slice(e.fields[f[0]].length)],f.forEach(function(a,b){d.push({name:a,value:g[b]})}))}else{var h=a("input[data-storage-key="+b+"]").val().trim();if(h){var i=e.out?e.out:e;d.push({name:i,value:h})}}}),d}function t(){var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",b="",c=new Uint16Array(32);self.crypto.getRandomValues(c);for(var d=0;d<32;d++){b+=a[Math.floor(c[d]*a.length/65536)]}return b}function u(b){return e().then(function(c){return c?a.ajax(b):null}).then(function(a){return a?!0!==a.success&&"true"!==a.success?null:a.favoriteDealers:null})}function v(b,c){return e().then(function(d){if(!d)return null;var e={dealerId:c,action:"add"};return a.ajax(b,{method:"POST",data:e,contentType:"application/x-www-form-urlencoded"})}).then(function(b){if(!0!==b.success&&"true"!==b.success){var c=b.message,d=a.Deferred();return d.reject(new Error(c)),d.promise()}return b})}function w(b,c){return e().then(function(d){if(!d)return null;var e={dealerId:c,action:"delete"};return a.ajax(b,{method:"POST",data:e,contentType:"application/x-www-form-urlencoded"})}).then(function(b){if(!0!==b.success&&"true"!==b.success){var c=b.message,d=a.Deferred();return d.reject(new Error(c)),d.promise()}return b})}var x=null,y=null,z=window.HELIOS,A="/v2/channels/japan/ownerservices",B="/v2/channels/japan/finance-simulation";return{isLoggedIn:e,isLoggedInSync:f,getProfileData:h,getDealers:i,getLogInUrl:g,getRAQData:m,addDealer:p,removeDealer:q,sendDataToMyPage:r,getDealersOS:u,addDealerOS:v,removeDealerOS:w}}),define("contactAdvantage",["jquery","logger","storageManager"],function(a,b,c){"use strict";function d(){this.settings=a.extend({},e),this.init()}var e={campaignCodes:{BTO:"Web e-Com Contact Bto",STO:"Web e-Com Contact Sto",GENERIC:"RaQ - Generic",OFFERS:"RaQ - Offers Site",CFG:"RaQ - Config"},queryParamMapping:{RAQ_OFFERS:"raqoffers",RAQ_CONFIG:"raqconfig"},storageManagerMode:"localStorage",storageKeys:{CONTACT_ADVANTAGE:"contactAdvantage",CAMPAIGN_CODE:"campaignCode",OFFER_DETAILS:"offerDetails",CFG_DETAILS:"cfgDetails"}};return d.prototype.init=function(){c.init(),new b({prefix:"Contact advantage library"})},d.prototype.getQueryParams=function(a){var b={},c="";if(a){var d=document.createElement("a");d.href=a,c=d.search.substring(1)}else c=window.location.search.substring(1);for(var e=c.split("&"),f=0;f<e.length;f++){var g=e[f].split("=");g[0]&&(b[decodeURIComponent(g[0])]=decodeURIComponent(g[1]||""))}return b},d.prototype.updateCampaignDataInLocalStorage=function(a,b){var d=this.settings.storageKeys.CONTACT_ADVANTAGE,e=this.settings.storageManagerMode,f=c.loadItem(d,e)||{};f[b]=a||{},c.saveItem(d,f,{mode:e})},d.prototype.updateCampaignCode=function(a){var b=this.getQueryParams(),d=this.settings.storageKeys.CONTACT_ADVANTAGE,e=this.settings.storageManagerMode,f=c.loadItem(d,e)||{},g=!1,h=!1;a&&(g=!this.isObjectEmpty(f[this.settings.storageKeys.OFFER_DETAILS]),h=!this.isObjectEmpty(f[this.settings.storageKeys.CFG_DETAILS
24])),f[this.settings.storageKeys.CAMPAIGN_CODE]=this.determineCampaignCode(b,g,h),c.saveItem(d,f,{mode:e})},d.prototype.determineCampaignCode=function(a,b,c){var d=this.settings.campaignCodes;if(!this.isObjectEmpty(a)){var e=a.campaign?a.campaign.toLowerCase():null,f=this.settings.queryParamMapping;if(a.grade&&a.vin)return d.STO;if(a.grade&&!a.vin)return d.BTO;if(e===f.RAQ_OFFERS&&b)return d.OFFERS;if(e===f.RAQ_CONFIG&&c)return d.CFG}return d.GENERIC},d.prototype.isObjectEmpty=function(a){return null==a||"object"==typeof a&&0===Object.keys(a).length},d}),define("c_019",["logger","validation","storageManager","storageManagerKeys","c_040","c_008","profileManager","c_019_datepicker","c_019_timepicker","modal","c_019_17","c_019_23","c_230","underscore","urlParameterDecoder","keyCodeConstants","dateFormat","backbone","modalADA","cryptoJS","handlebars","myPageApi","contactAdvantage"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w){"use strict";function x(a,b){this.settings=n.extend({},ra,b),this.defaults=ra,this.$el=a,this.init(b),this.settings.HELIOS&&(ma=this.settings.HELIOS.adobe.tagging.componentId)}function y(){var a=W.map.activeDealer;ja.setActiveDealer(a)}function z(a,b){var c;for(c in a)n.has(b,c)&&n.isObject(b[c])?z(a[c],b[c]):n.has(b,c)?a[c]=b[c]:a[c]=""}function A(a,b,c){if(!b||!b.length||"[object String]"!==Object.prototype.toString.call(b))return!1;n.isObject(a)||(a={});for(var d,e=b.split(".");e.length>1;)d=e.shift(),n.has(a,d)||(a[d]={}),a=a[d];a[e[0]]=c}function B(a){var b,c="",d=window.location.search.replace("?","");return d.length&&(b=d.length?d.split("&"):[],b.length&&n.each(b,function(b,d){var e=b.split("=");e[0]===a&&e[1].length&&(c=decodeURIComponent(e[1]))})),c}function C(a){var b={mode:"localStorage"},d={mode:"sessionStorage"};return c.loadItem(a,b)||c.loadItem(a,d)}function D(a){var b={dates:[],times:[]};return $.each(a.days,function(a,c){c.open&&b.dates.push(c.date)}),b}function E(a){return a.openingHours&&a.openingHours.specialOpeningHours?q.formatDatesFromDateRange(a.openingHours.specialOpeningHours.filter(function(a){return a.closed})).map(function(a){var b=new Date(a);return b.getFullYear()+"-"+("0"+(b.getMonth()+1)).slice(-2)+"-"+("0"+b.getDate()).slice(-2)}):[]}function F(a){return a.openingHours&&a.openingHours.regularOpeningHours?a.openingHours.regularOpeningHours.filter(function(a){return a.closed}).map(function(a){return a.weekDay}):[]}function G(a){var b=a.settings,c=a.$postcodeWidget,d=c.find(b.selectors.manualAddressLink),e=c.find(b.selectors.searchAgainLink),f=c.find(b.selectors.searchPostcodeBtn),g=c.find(b.selectors.postcodeInput),h=c.find(".postcode input"),i=c.find(b.selectors.manualInputFields),j=c.find(b.selectors.addressSpan),k=c.find(b.selectors.addressSelect+" select"),l=c.find(f).data("search-postcode-url"),m={};return m.bindEvents=function(){d.on(ra.events.click,m.getDestination).on(ra.events.click,m.mirrorPostcodeInput),e.on(ra.events.click,m.getDestination).on(ra.events.click,m.clearFields),f.on(ra.events.click,m.ajaxPostcode),k.on("change",m.populateAddressFields),g.on(ra.events.keypress,m.checkKey),i.val()&&m.switchSection("manual-address-enter")},m.getDestination=function(a){var b=a.target,c=$(b).data("related-section");a.preventDefault(),m.switchSection(c)},m.switchSection=function(a){c.removeClass("postcode-search manual-address-enter select-address-box search-results-filled"),c.addClass(a)},m.checkKey=function(a){if((a.keyCode||a.which)===p.ENTER)return m.ajaxPostcode(),!1},m.ajaxPostcode=function(a){a&&a.preventDefault(),m.validated(g)?(f.addClass(this.settings.classes.ajaxBtnLoading),$.ajax({url:l+"/postcode/"+encodeURIComponent(g.val())+"/data.json",type:"GET",dataType:"json"}).done(m.ajaxDone).fail(m.ajaxFail)):m.displayErrorMsg()},m.ajaxDone=function(a){var c,d,e,g="<option>";if(f.removeClass(b.classes.ajaxBtnLoading),m.removeSearchError(),m.removeFormErrors(),a.status_code===b.statusCodes.lookupSuccess){for(j.text(k.data("defaulttext")),Y=a.addresses,k.empty(),k.append($(g)),c=0,d=Y.length;c<d;c++)e=$.map(Y[c],m.onMapDone).join(", "),k.append($(g,{value:c}).text(e));m.switchSection("select-address-box")}
24else m.ajaxFail(a)},m.ajaxFail=function(a){f.removeClass(b.classes.ajaxBtnLoading),m.displayErrorMsg(a)},m.onMapDone=function(a){return a||null},m.validated=function(a){var b=a.val(),c=h.data("validation-postcode-regex-pattern");return!!new RegExp(c,"i").test(b)},m.populateAddressFields=function(a){var b=$(a.target).val();Y&&Y[b]&&($.each(Y[b],m.replaceInputsValue),m.switchSection("search-results-filled"))},m.replaceInputsValue=function(a,b){c.find("input[data-address-key="+a+"]").val(b)},m.displayErrorMsg=function(a){var c;c=a?a.status_message:g.data("default-err"),g.addClass(b.classes.error).focus().after('<span class="postcode-error-message">'+c+"</span>")},m.removeSearchError=function(){g.removeClass(b.classes.error).val("").siblings().remove()},m.removeFormErrors=function(){c.find(b.selectors.formGroup).removeClass(b.classes.error)},m.mirrorPostcodeInput=function(a){var b=g.val();h.val(b)},m.clearFields=function(){i.val("")},m}var H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,_,aa,ba,ca,da,ea,fa,ga,ha,ia,ja,ka,la,ma,na,oa,pa,qa="c_019",ra={componentId:"C19_Form",trackingVar:{formSteps:"formSteps",dealerInteraction:"dealerInteraction"},classes:{hideCSS:"hide",showCSS:"show",error:"error",ajaxBtnLoading:"ajax-btn-loading",btnDisabled:"btn-disabled",jsDisabled:"js-disabled",expanded:"expanded",noDealerSelected:"no-dealer-selected",timePickerEnd:"time-picker-end",errorMessage:"error-message",active:"active",loginSuccess:"login-success",profileInSession:"profile-in-session",complete:"complete",required:"required",lookupAddressClass:"postcode-search manual-address-enter select-address-box search-results-filled",manualAddressEnterClass:"manual-address-enter",ecommerceCheckoutForm:"ecommerce-checkout-form",hasCatalogCode:"has-catalog-code",twoMonthsCalendar:"two-month-cal",multiDatePicker:"ui-datepicker-multi",noRestrict:"no-restrict",rtbCalendarOpen:"rtb-calendar-open",selectionActive:"selection-active",c_019_36_periodicServiceCheck:"periodic-service-check",c_019_36_otherServiceList:"option-name",linkedElement:"express-service-checkbox",visuallyHidden:"is-visually-hidden",hidden:"hidden",findVehicleNotClicked:"find-cta-not-clicked",myPage:"my-page",open:"open",modelPowertrainComponent:"c_019-39"},selectors:{root:".c_019",map:".c_022",dealerLocator:".c_040",bookATestDrive:".c_040.batd",carDataAdminSelector:".c_020",modalFormInPopUp:".c_129.form-in-popup-custom",brochureInlineModal:".c_129.brochures-modal",modalFormInPopUpOpen:".c_129.form-in-popup-custom.open",showroomModal:".c_303_8.showroom-modal-dealer, .c_303-12-inline-form, .c_303_1_8.showroom-modal-dealer",manualAddressLink:".manual-address-link",searchAgainLink:".postcode-link",postcodeContainer:".postcode-address",searchPostcodeBtn:".search-postcode",postcodeInput:".postcode-field",datePicker:".date-picker",datePickerDealerWarning:".dealer-warning",timePicker:".time-picker",timePickerStart:".time-picker-start",timePickerEnd:".time-picker-end",addressSpan:".selectedValue",manualInputFields:".manual-address-entries input",addressSelect:".address-select-container",findADealerAccordion:".fad-accordion-content",selectADealerButton:".select-a-dealer-button",dealerSelector:".dealerselector",dealerAddress:".dealer-address p",selectThisDealer:".btn-select-this-dealer",selectedDealerNameInput:"input.selected-dealer-name",selectedDealerIdInput:"input.selected-dealer-id",selectedModelNameInput:"input.model-name",lastItemActionsWrapperAfterC40:".item-actions-last",selectedDealerLabel:".selected-dealer",selectedDealerAddressContainer:".selected-dealer .dealer-address-container",selectedDealerName:"p.selected-dealer span",resetDate:".close",resetTime:".time-close",tooltipTriggers:".has-tooltip",formGroup:".form-group",errorMessage:".error-message",jsErrorMessage:".js-error-message",dropdownGroup:".dropdown-group",parentSelectBox:".parent-select-box select",childSelectBox:".child-select-box select",responsiveElm:".responsive-element",responsiveElmFieldset:".responsive-element-fieldset",responsiveChildData:"data-responsive-child",firstSelectBox:".first-select-box select",secondSelectBox:".second-select-box select",thirdSelectBox:".third-select-box select",tripleDropdownGroupData:"groupData",disclaimerList:".dropdown-disclaimer-list",spanSelectedValue:"span.selectedValue",disableGenericTracking:"disableGenericTracking",submitFormButton:".submit-form-button",jsDisabled:".js-disabled",dataPrePopulationStorageKey:"[data-storage-key]",dataPrePopulationUrl:"[data-prepopulation-url]",form:".c_019 form",formCount:"[name=fc]",addressComponent:".c_019-22",addressFormGroup:".form-address",addressManual:".manual-address-enter",body:"body",loginSuccessMessage:".login-success-message",loginWidget:"p.login-widget",c_019_25:".c_019-25",c_019_25B:".c_019-25B",dealerSelectorSection:".dealerselector.section",c_129:".c_129",c_148:".c_148",htmlBody:"html, body",brochuresModal:".brochures-modal",modalContent:".modal-content",summaryTray:".summary-tray",selectDealerFromMap:".btn-select-dealer-map",changeDealer:".change-dealer-button",selectedDealer:".selected-dealer:first",personalShowroomCatalogCode:"input[name='personalShowroomCatalogCode'][type='checkbox']",personalShowroomFormSubTitle:"h3.subtitle",personalShowroomFormTitle:"h2.title",AEMeditMode:".aem-edit-mode",datepickerContainer:".datepicker-container",datepickerDiv
24:"#ui-datepicker-div",datepickerMonthAndYearSelect:".ui-datepicker-month, .ui-datepicker-year",realTimeBookingContainer:".c_019-11C",dealerLocatorSearch:".location-input",bookingReference:".booking-reference",optimisedDealerSelector:".c_040.fad-optimised",c_019_25_DealerIdInputField:".c_019-25 .form-fields .dealer-id",c_019_25_DealerNameInputField:".c_019-25 .form-fields .dealer-name",c_019_25_DealerId:".dealerlocator.section .c_019-25 .form-fields .dealer-id",c_019_25_DealerName:".dealerlocator.section .c_019-25 .form-fields .dealer-name",c_019_25_DealerAddress:".dealerlocator.section .c_019-25 .selected-dealer .details .address",c_019_25_DealerAlphaType:".dealerlocator.section .c_019-25 .selected-dealer .details.dealer-type-alpha",c_019_25_DealerBetaType:".dealerlocator.section .c_019-25 .selected-dealer .details.dealer-type-beta",c_019_25B_DealerId:".dealerlocator.section .c_019-25B .form-fields .dealer-id",c_019_25B_DealerName:".dealerlocator.section .c_019-25B .form-fields .dealer-name",c_019_25B_DealerAddress:".dealerlocator.section .c_019-25B .selected-dealer .details .address",c_019_25B_DealerAlphaType:".dealerlocator.section .c_019-25B .selected-dealer .details.dealer-type-alpha",c_019_25B_DealerBetaType:".dealerlocator.section .c_019-25B .selected-dealer .details.dealer-type-beta",formValidationCheck:".form-validation-check",dealerSearchLocatorValidation:".search",visibleFormElements:".formBuilder .custom-selectbox>*[name]:visible, .formBuilder input[name]:visible, .formBuilder textarea[name]:visible, .formBuilder .c_019-39:visible",rsbModelDropdown:".dropdowngroup .dropdown-group .custom-selectbox [name='Model']",rsbModelDropdownInfiniti:".dropdowngroup .dropdown-group .custom-selectbox [name='currentVehicleModel']",hiddenfieldToGetDataFromCookie:"input[type=hidden][data-readfrom-cookie=true]",signatureHiddenInput:"input[name=signature]",pageUrlHiddenInput:"input[name=pageurl]",rsbServiceModelDropdown:".dropdowngroup .dropdown-group .custom-selectbox [data-model-dropdown='true']",customSelectbox:".custom-selectbox",dropdownCustomSelectbox:".dropdown .custom-selectbox select",c_019_36_checkboxGroup:".c_019-36 .checkbox-group",c_019_36_periodicService:".c_019-36 .periodic-service",c_019_36_serviceType:".c_019-36 .service-type",c_019_36_serviceTypeEncoded:".c_019-36 .service-type-encoded",c_019_36_selectedCheckbox:".c_019-36 input:checkbox:checked",c_019_36:".c_019-36",serverErrorMessageLink:".error-group.error-group-light a",primarySpinner:".primary-spinner",secondarySpinner:".secondary-spinner",linkedElement:"[data-event-manipulation=true]",linkedElementForEnable:"[data-additonal-checkbox-or-dropdown-enabled=true]",findMyVehicleCta:".c_019-38 .find-vehicle-button",c_019_38:".c_019-38",numberPlateFindVehicle:".c_019-38 .find-vehicle",c_019_37:".c_019-37",loginWidgetContainer:".login-widget-container",myPage:".my-page",powertrain:".powertrain",modelPowertrainComponent:".c_019-39",formOpenInOverlay:".form-in-popup-custom.open .c_019",formInWidget:".c_344C .c_019",formOpenInWidget:".c_344C.open .c_019",c_344:".c_344",c_344C:".c_344C",selectedModel:".selected-model",identityNumber:".identitynumber",identityNumberCpf:"input[data-validation-brazilian-cpf]",observationHiddenField:".formBuilder [name='observation']",additionalInfoHiddenField:".formBuilder [name='additionalInformation']",identityNumberCnpjField:"input[data-validation-brazilian-cnpj]",appliedOfferText:".applied-offer .applied-offer-text",dataAddressLookup:"input[data-address-lookup='true']",searchResultsList:"ul.searchResults",city:"label:contains('City')",unit:"label:contains('Unit')",province:"label:contains('Province')",postalCode:"label:contains('Postal Code')",preLaunchEnabled:".formBuilder [name='preLaunchEnabled']",realtimeBookingType:"input[name='bookingType']:checked",selectedVehicleModelDataName:".selected-vehicle-model-data-name",selectedVehicleModelName:".c_019-40 .selected-vehicle-model-name",idNumberResponsiveChild:"div[data-responsive-child]:not(.hide)"},id:{realTimeSlot:".c_019-11C #time-selected-hidden",datePickerErrorSlot:"#date-picker-errorslot",myPagePrepopulateData:"#mypage-error-message"},datepicker:{nextText:"",prevText:"",showOn:"both",buttonText:" ",minDate:null,maxDate:null,yearRange:"-100:+20",beforeShow:"",onClose:"",onSelect:"",changeMonth:!0,changeYear:!0,isRTL:!1},timepicker:{timeSeparator:":",showPeriod:!1,showPeriodLabels:!1,showLeadingZero:!0,amPmText:["AM","PM"],hourText:"Hour",minuteText:"Minute",showHours:!0,showMinutes:!0,showOn:"both",defaultTime:"",minTime:{hour:0,minute:0},maxTime:{hour:23,minute:59},hours:{starts:0,ends:23},minutes:{starts:0,ends:55,interval:15,manual:[]}},capture:{attrNamespace:"c_019-storage-capture",separator:",",destination:"to-field-value",mode:null},forms:{showGroupErrors:!1,groupErrorsPlacement:"form-head",input:"input",checkbox:"checkbox",form:"form",select:"select",validation:{},enterKeySubmitDisabled:"true",formSubmitHandler:"",label:"label"},data:{defaultDate:"default-date",restrictDate:"restrict-date",availableDates:"availableDates",closedDates:"closedDates",formCount:"formCount",formName:"formName",formType:"formType",templateName:"template-name",formCategory:"formCategory",href:"href",storageKey:"storageKey",disableWeekends:"disable-weekends",minDateDays:"min-date-days",maxDateDays:"max-date-days",acceptFile:"accept-file",attrEnterDisabled:"data-enter-disabled",formTemplateName:"_apps_helios_templates_site_form",secureSubmission:"secure-submission",
24nextDayBATD:"[next-day-batd]",enableTwoMonth:"enable-two-month",closedWeekDays:"closedWeekDays",isRestrictionFlexible:"restrictionFlexible",enableUrlSignatureValidation:"enableUrlSignatureValidation",serverErrorPagePath:"page-path",detailsFetched:"data-clicked",successEventEnabled:"event-trigger-success",collectAdditionalJourneyDetails:"collect-additional-journey-details"},attributes:{action:"action",isValid:!0,disabled:"disabled",name:"name",targetDropdown:"select[data-override-dropdown-options-byevent]",linkedDropdownCriteria:"data-override-dropdown-options-byevent",responsiveChildSelector:"data-responsive-child",linkedElementCriteria:"data-enabled-additonal-checkbox-or-dropdown-options",modelId:"data-model-id",dataModelDataName:"data-model-data-name",dataName:"data-name"},statusCodes:{lookupSuccess:"lookup_success",serverError:"_hls_error=True",failure:"failure",error:"error"},events:{change:"change."+qa,globalChange:"change",dealerSelected:"map.dealerSelected",submit:"submit",click:"click",keypress:"keypress",prepopulate:"prepopulatedForm",modelsUpdated:"modelsUpdated",keypressKeyup:"keypress",trackAnalyticsInlineForm:"trackAnalyticsInlineForm",storageSaved:"storageSaved",selectThisDealer:"selectThisDealerEvent",onUpdateAddressFieldsOnLoad:"onUpdateAddressFieldsOnLoad",focus:"focus",input:"input",blur:"blur",customSuccessInlineFormEvent:"customSuccessInlineFormEvent"},storageManagerSessionStorage:{mode:"sessionStorage"},storageManagerLocalStorage:{mode:"localStorage"},storageManagerCookie:{mode:"cookie"},cookie:{ownerServicesLoggedInCookie:"OwnerServicesLoggedInName"},modal:{componentId:"C19.21_Login_Widget",largeHeight:580},analytics:{pageType:"form",formStepName:"start",submitFormStepName:"submit",formStepNumber:"step-0",firstInteractionFormStepName:"form-first-interaction",firstInteractionFormStepNumber:"step-1",submitFormStepNumber:"finalstep",submittedFormStepName:"complete",showroomSubmittedFormStepNumber:"complete",submittedFormStepNumber:"step-2",vehicleModel:"vehicleModel",analyticsSession:"analyticsSession",componentIdRtb:"C19.11_Slot_Picker",action:"search",searchType:"real time booking",searchTerm:"slot picker",realTimePicker:"realTimePicker",enabled:"enabled",disabled:"disabled",personalShowroomInlineFormEvent:"analyticsPersonalShowroomInlineForm",selectDropdown:"model",offersHubInlineFormEvent:"offersHubInlineFormAnalyticsEvent",serverErrorCta:"server-error-cta",loginTextCTA:"authenticate-sign in",profileErrorMessage:"form auto fill error",popInForm:"pop-in-form",delayedPageLoad:"delayedPageLoad"},errorHandling:{animateTimeLength:500,animateStart:500},dealerMap:{initialized:"initialized",map:"map"},constants:{showroomKey:"cat_act",showroomCode:"{dynamic-text}",showroomModelName:"{modelName}",showroomModelNameStorageKey:"modelName",JapanTimeDifference:9,dealerTypeAlpha:"R1",dealerTypeBeta:"R2",showroomVehicleDetailStorageKey:"showroomVehicleDetails",signature:"signature",numberPlateLookUp:"numberplatelookup",offerDataStorageKey:"offerData",dealerTestdrive:"dealer",lastVisitedVehicle:"lastVisitedVehicle",formBuilderEcommerce:"formBuilderEcommerce"},template:{selectedDealerTemplate:"[data-template='selectedDealerTemplate']"}},sa=!1,ta=!1,ua=!1,va=!1,wa=!1,xa=!0,ya=!1,za=!1,Aa=[],Ba=[],Ca=!1,Da=0,Ea=!1;return x.prototype.init=function(e){var g,h,j,k,q,r,s,t,x,z,A=$("html");if(fa=this.settings.window,ga=fa.document,ha=$(fa),xa=!0,ka=new l(this.$el,{HELIOS:this.settings.HELIOS,analyticsManager:this.settings.analyticsManager,window:this.settings.window}),la=new m(this.$el,{window:this.settings.window,analyticsManager:this.settings.analyticsManager,HELIOS:this.settings.HELIOS}),this.settings.datepicker.beforeShow=n.bind(this.datePickerSettings,this),this.settings.datepicker.onClose=n.bind(this.datePickerClose,this),this.settings.datepicker.onSelect=n.bind(this.datePickerSelect,this),this.settings.forms.formSubmitHandler=n.bind(this.c_019_formHandler,this),this.settings.enableOpenDays=!1,I=$(this.settings.selectors.root),I.data("analyticsFirstFormInteraction","true"),pa=I.hasClass(this.settings.classes.myPage),!I.length)return!1;if(pa){var B=HELIOS.components.c_019||{},C=B.cgiUrl;$(".login-widget-modal").attr("href",v.getLogInUrl(C)),$(".login-widget-modal").on("click",n.bind(function(a){a.preventDefault();var b=v.getLogInUrl(C),c=this.settings.analyticsManager.trackingVars.genericClick,d={componentId:this.defaults.componentId,destination:b,locationInPage:I.data(this.settings.data.formType),buttonText:this.defaults.analytics.loginTextCTA};this.settings.analyticsManager.track(c,d),window.location=b},this))}if($(this.settings.selectors.modelPowertrainComponent).length?$(this.settings.selectors.powertrain).length||(HELIOS.components.c_019_39.powertrainEnabled=!1):HELIOS.components&&HELIOS.components.c_019_39&&delete HELIOS.components.c_019_39,this.initModal(),this.eCommerceCpo(),this.settings.scrollableElement?(this.onSummaryTray=!0,this.elementScrolled=$(this.settings.scrollableElement)):I.parents(this.settings.selectors.modalFormInPopUp).length?(this.onOverlay=!0,this.elementScrolled=I.parents(this.settings.selectors.modalFormInPopUp)):I.parents(this.settings.selectors.brochureInlineModal).length?(this.brochuresInlineModal=!0,this.elementScrolled=I.parents(this.settings.selectors.brochureInlineModal)):I.parents(this.settings.selectors.showroomModal).length?(this.showroomOverlay=!0,this.elementScrolled=I.parents(this.settings.selectors.showroomModal)):this.elementScrolled=$(window),0===Aa.length){var D=this;I.each(function(a){Aa.push({elem:$(this),show:!1}),D.isFormVisible(!1,a)})}H=new a({prefix:"C_019 FormBuilder"}),H.info("init()"),ua="rtl"===$("html").attr("dir"),Z=I.find("form").attr("data-form-name")||HELIOS.adobe.tagging.pageName||"not set",x=I.find("form").attr(this.settings.data.attrEnterDisabled)||"false",_=I.find("form").attr("action")||"#",aa=I.attr("data-vehicle-model"),M=$(this.settings.selectors.datePicker),N=M.map(function(){return this.id}),P=$(this.settings.selectors.resetDate),Q=$(this.settings.selectors.timePicker),R=$(this.settings.selectors.timePickerStart),S=$(this.settings.selectors.timePickerEnd),T=$(this.settings.selectors.resetTime),sa=A.hasClass("ltie9"),ta=A.hasClass("ie9"),g=$(this.settings.selectors.tooltipTriggers),o.init(),this.localizeDatePicker(),M.attr("tabindex",-1),Q.attr("tabindex",-1),setTimeout(function(){$(".ui-datepicker-trigger").attr("aria-labelledby",M.attr("id")),$(".ui-timepicker-trigger").attr("aria-labelledby",Q.attr("id"))},500),z=M.data("datasourceDealerLocator");var E=I.data(this.settings.data.collectAdditionalJourneyDetails);if(void 0!==E){var F=new w,Y=!0===E||"true"===E;F.updateCampaignCode(Y)}if(this.personalShowroomCatalogCode(),this.personalShowroomOverlayForms(),this.personalShowroomVehiclesForAnalytics(),X=I.find(this.settings.selectors.dealerLocator),X.length||(X=$(this.settings.selectors.bookATestDrive)),X.length&&this.setupDealerLocator(X),M.each(n.bind(function(a,b){var c=$(b),d=this.isTwoMonthCalendarEnabled(c),e=c.data("datasourceDealerLocator");if(this.settings.datepicker.defaultDate=new Date(c.data(ra.data.defaultDate)),O=c.data(this.settings.data.restrictDate),ea=c.data(this.settings.data.disableWeekends),e)return void c.prop("disabled",!0);c.data("url")?this.enableDatesByAjaxRequest(O,c,d):(O||ea)&&this.restrictDatePicker(O,c,d)},this)),ha.resize(n.bind(this.resizeDatepicker,this)),N.length>0&&P.on("click",n.bind(this.resetDate,this)),$(this.defaults.selectors.datepickerContainer).on(this.defaults.events.click,this.defaults.selectors.datepickerMonthAndYearSelect,n.bind(function(a){var b=$(a.target).parents(this.defaults.selectors.datepickerDiv).next();b.data(this.settings.data.isRestrictionFlexible)&&b.addClass(this.settings.classes.selectionActive)},this)),K=I.find(this.settings.selectors.postcodeContainer),j=this.settings.HELIOS.components,k=j.c019||j.c_019,k&&k.timePickerType&&(ca=k.timePickerType.type),I.data("tracking",{formName:Z,componentId:ma,formDestination:_}),J=I.find(this.settings.forms.form).each(n.bind(function(a,c){var d=$(c),e=d.attr(this.settings.attributes.action);x===this.settings.forms.enterKeySubmitDisabled&&d.on(this.settings.events.keypressKeyup,function(a){var b=a.target.nodeName,c=b.toLowerCase();a.keyCode!==p.ENTER||c!==this.settings.forms.input&&c!==this.settings.forms.select||(this.selectDeselectCheckbox(a.target),a.preventDefault())}),d.data(this.settings.data.secureSubmission)&&!e.match(/^https:\/\/.*/)&&d.attr(this.settings.attributes.action,"https://"+location.hostname+e),this.settings.forms.validation={ignore:"input:hidden:not(.validate):not(.captcha-token), .not-required *, .ui-datepicker *",focusInvalid:!1,invalidHandler:n.bind(this._invalidHandler,this)},t=new b(d,this.settings.forms),this.extractDataToForm(d)},this)),J.length||this.extractDataToForm(I),J.find("div.form-group").each(function(a,b){b.removeAttribute("aria-required"),b.classList.contains("required")&&$(b).find("input, select, textarea").attr("aria-required","true")}),I.find(K).each(n.bind(function(a,b){new G({$postcodeWidget:$(b),settings:this.settings}).bindEvents()},this)),q=c.loadItem(d.dwsPreselectedDealer.itemKey,{mode:"sessionStorage"}),q?((r=q[d.dwsPreselectedDealer.dataKeys.dealerUrl])===document.referrer||r&&!document.referrer.length)&&(s=q[d.dwsPreselectedDealer.dataKeys.dealerId])&&(this.disableDealerLocator(),this.dealerPrePopHandler(s)):W&&this.runDealerPrePopulation(),h=I.find(this.settings.selectors.selectedDealerName).val(),h?this.prepopulateDealerName(h):I.find(this.settings.selectors.selectedDealerLabel).addClass(this.settings.classes.noDealerSelected),I.find(this.settings.selectors.lastItemActionsWrapperAfterC40).find(this.settings.selectors.selectThisDealer).on(ra.events.click,n.bind(function(a){this._onDealerSelection(a)},this)),I.find(this.settings.selectors.dealerSelectorSection+" "+this.settings.selectors.selectThisDealer).on(ra.events.click,y),$(this.settings.selectors.submitFormButton).on(ra.events.click,n.bind(this.loadMapAfterSubmitIfRequiredA
24ndEmpty,this)),this.settings.eventAggregator&&(this.settings.isInline=!0,this.settings.eventAggregator.off("submitForm"),this.settings.eventAggregator.on("submitForm",n.bind(function(){$(this.settings.selectors.submitFormButton).trigger(this.defaults.events.click)},this)),this.settings.eventAggregator.off(this.settings.events.trackAnalyticsInlineForm),this.settings.eventAggregator.on(this.settings.events.trackAnalyticsInlineForm,n.bind(function(a,b){this.analyticsTrackingFormInline(a,b)},this)),this.settings.eventAggregator.on(this.settings.events.storageSaved,n.bind(function(){this.extractDataToForm(I)},this))),!this.settings.backboneEventAggregator&&this.settings.eventAggregator&&$(this.settings.selectors.formOpenInOverlay).length&&(this.settings.backboneEventAggregator=this.settings.eventAggregator),
25this.settings.backboneEventAggregator&&this.settings.HELIOS.components.c_019_31&&this.settings.HELIOS.components.c_019_31.homeTestDriveEnabled&&this.settings.backboneEventAggregator.trigger(this.settings.events.onUpdateAddressFieldsOnLoad),I.find(this.settings.selectors.selectADealerButton).click(n.bind(function(a){var b,c,d=W.map,e=d.map.center;a.preventDefault(),L=I.find(this.settings.selectors.findADealerAccordion),L.toggleClass(this.settings.classes.showCSS),I.find(this.settings.selectors.dealerSelector).toggleClass(this.settings.classes.expanded),I.find(this.settings.selectors.selectedDealerLabel).toggleClass(this.settings.classes.showCSS),W.get("initialized")||W.init(),L.hasClass(this.settings.classes.showCSS)||W.refreshView("map"),b=e.lat(),c=e.lng(),d.refresh(),d.mapSettings.showApiResultsOnly&&(d.map.setCenter({lat:b,lng:c}),d.map.setZoom(d.mapSettings.zoom/2)),$.each(d.clusteredMarkers.markers_,function(a,b){google.maps.event.addListener(b,ra.events.click,this._onDealerSelection)}),va&&this.dealerPrePopHandler()},this)),$(this.settings.selectors.map).on(this.settings.events.dealerSelected,n.bind(function(){this._onDealerSelection()},this)),I.find(this.settings.selectors.selectThisDealer).addClass(this.settings.classes.hideCSS),X.on("dealerWasSelected",n.bind(function(){var a="";da=W.map.activeDealer,W.geoloc.collection.get(da),$.each($(this.settings.selectors.dealerAddress,this.settings.selectors.root),function(b,c){a+=$(c).text()+","}),I.find(this.settings.selectors.selectThisDealer).removeClass(this.settings.classes.hideCSS)},this)),I.find(".location-input").keypress(function(a){a.which===p.ENTER&&a.preventDefault()}),this.formatCpfInput(),this.formatCnpjInput(),this.offerFromLocalStorage(),f.createTooltips(g),$(this.settings.selectors.submitFormButton).on(ra.events.click,n.bind(this.saveFormData,this)),e&&e.HELIOS&&e.HELIOS.components&&e.HELIOS.components.c_019||e&&e.HELIOS&&e.HELIOS.components&&(e.HELIOS.components.c_303||e.HELIOS.components.c_303_1)){I.on(ra.events.click,n.bind(this.onAnalyticsFormClick,this)),U=I.find(this.settings.selectors.dropdownGroup),U.length&&e.HELIOS.components.c_019&&e.HELIOS.components.c_019.dropdownData&&(ba=e.HELIOS.components.c_019.dropdownData,this.setupDropdownGroups(U));I.find(this.settings.selectors.timePicker).length&&e.HELIOS.components.c_019&&e.HELIOS.components.c_019.timePickerType&&(this.settings.timepicker=$.extend(!0,{},this.settings.timepicker,e.HELIOS.components.c_019.timePickerType),new i(Q,this.settings.timepicker,ca,this.settings.classes.error,this.settings.classes.errorMessage,fa,ga))}if(("undefined"!=typeof CQ&&CQ.WCM&&!CQ.WCM.isEditMode(!0)&&!CQ.WCM.isDesignMode(!0)||"undefined"==typeof CQ)&&(V=I.find(this.settings.selectors.responsiveElm),V.length&&this.setupResponsiveElement(V)),this.elementScrolled.scroll(function(){Aa.forEach(function(a,b){this.isFormVisible(!0,b)}.bind(this))}.bind(this)),pa?this.checkLoginMyPage().then(this.prepopulateFormFields.bind(this)).then(this.extractQueryStrDataToForm.bind(this)):this.prepopulateFormFields().then(this.extractQueryStrDataToForm.bind(this)),this.passAnalyicsJourneyIdToForm(),this.saveFormCount(),this.trackLoad(),this.settings.HELIOS.components.c_019_31&&this.settings.HELIOS.components.c_019_31.rtb&&!this.onOverlay?this.trackOnPageLoadRtb():this.settings.analytics.realTimePicker=this.settings.analytics.disabled,this.enableButton(),$("body").on(this.settings.events.selectThisDealer,n.bind(function(a,b,c){this._selectThisDealer(a,b,c)},this)),$("body").on("clearSearchLocation",n.bind(function(){$(this.settings.selectors.formValidationCheck).hasClass(this.settings.classes.complete)&&$(this.settings.selectors.formValidationCheck).removeClass(this.settings.classes.complete),$(this.settings.selectors.formValidationCheck).hasClass(this.settings.classes.error)&&$(this.settings.selectors.formValidationCheck).removeClass(this.settings.classes.error),$("html, body").animate({scrollTop:$(this.settings.selectors.formValidationCheck).offset().top})},this)),this.isOptimisedV1Dealer()?$("body").on("dealerDetailsFetched",n.debounce(function(a,b){this.showSelectedDealerDetails(b)},500).bind(this)):$("body").one("dealerDetailsFetched",n.bind(function(a,b){var c=$.extend({},{suggestedName:b.suggestedName},b.address,{phone:b.contact&&b.contact.phone||""}),d=u.compile($(ra.template.selectedDealerTemplate).html());I.find(this.settings.selectors.selectedDealerAddressContainer).empty().html(d(c)),$(this.settings.selectors.changeDealer).on("click",n.bind(this._changeDealer,this))},this)),z&&(!this.settings.backboneEventAggregator&&this.settings.eventAggregator&&(this.settings.backboneEventAggregator=this.settings.eventAggregator),this.settings.backboneEventAggregator&&(this.settings.backboneEventAggregator.on("onDealerSelectionDataSource",n.bind(function(a){$(this.settings.selectors.datePicker).each(n.bind(function(b,c){var d=$(c),e=this.isTwoMonthCalendarEnabled(d);if(!d.data("datasourceDealerLocator"))return!1;this.settings.datepicker.defaultDate=new Date(d.data(ra.data.defaultDate)),O=d.data(this.settings.data.restrictDate),ea=d.data(this.settings.data.disableWeekends),d.prop("disabled",!1),d.data("url")&&this.enableDatesByAjaxRequest(O,d,e,a)},this))},this)),this.settings.backboneEventAggregator.on("onDealerChangeDataSource",n.bind(function(){$(this.settings.selectors.datePicker).each(n.bind(function(a,b){var c=$(b);c.data("datasourceDealerLocator")&&(c.prop("disabled",!0),$.datepicker._clearDate(c),c.parents().removeClass(this.settings.classes.complete))},this))},this)))),HELIOS.components.c_019_31&&HELIOS.components.c_019_31.rsb&&($(this.settings.selectors.rsbModelDropdown).change(function(a,b){this.trackServiceBookingModelDropdown($(this.settings.selectors.rsbModelDropdown).val(),b)}.bind(this)),$(this.settings.selectors.rsbModelDropdownInfiniti).change(function(){this.trackServiceBookingModelDropdown($(this.settings.selectors.rsbModelDropdownInfiniti).val())}.bind(this))),I.data(this.settings.data.enableUrlSignatureValidation)&&this.populateSignatureAndPageUrlHiddenFields(),$(this.settings.selectors.hiddenfieldToGetDataFromCookie).each(function(a){var b=$(this).attr("data-cookiename"),c=$.cookie(b);c&&$(this).val(c)}),$(this.settings.selectors.rsbServiceModelDropdown).change(function(){var a=$(this.settings.selectors.rsbServiceModelDropdown).val(),b=$(this.settings.selectors.rsbServiceModelDropdown).parents(this.settings.selectors.customSelectbox).find(this.settings.selectors.spanSelectedValue).text();this.settings.backboneEventAggregator.trigger("changeServiceModelSelect",a,b)}.bind(this)),$(this.settings.selectors.c_019_37).length){var ia,ja,na=$(this.settings.selectors.c_019_37).find("script[data-content]"),oa=[];if(na)try{ia=JSON.parse(n.unescape(na.html())),ja=ia.priceConfigurations.formFields,ja.forEac
25h(function(a){oa.push(a.formFieldName)}),oa=n.uniq(oa),oa.forEach(n.bind(function(a){$("[name="+a+"]").change(function(b){var c=$("[name="+a+"]").val();this.settings.backboneEventAggregator.trigger("change",b,c)}.bind(this))}.bind(this)))}catch(qa){return}}I.find(this.settings.selectors.serverErrorMessageLink).on(this.settings.events.click,function(a){this.trackServerErrorMessageLinkVisit(a.target.href,a.target.text)}.bind(this)),I.find(this.settings.selectors.linkedElement).on(this.settings.events.change,function(a){this.updateLinkedDropdown(a.target.value)}.bind(this)),I.find(this.settings.selectors.linkedElementForEnable).on(this.settings.events.change,function(a){this.enableLinkedElement(a.target)}.bind(this)),I.find(this.settings.selectors.dataAddressLookup).length&&this.enableAddressLookout(),I.find(this.settings.selectors.dropdownCustomSelectbox).on("change",n.bind(this.trackDropdownChange,this))},x.prototype.formatCpfInput=function(){var a=I.find(this.settings.selectors.identityNumber),b=a.find(this.settings.selectors.identityNumberCpf)[0];b&&b.addEventListener("input",function(a){for(var b=this.selectionStart,c=this.selectionEnd,d=this.value.replace(/[^\d]/g,"").substring(0,11),e="",f=0;f<d.length;f++)3===f||6===f?e+=".":9===f&&(e+="-"),e+=d[f];this.value=e;var g=b;b>c?g=b-1:b===c&&b>0&&b%4==0&&(g+="deleteContentBackward"==a.inputType||"deleteContentForward"==a.inputType?0:"."==e.charAt(b-1)||"-"==e.charAt(b-1)?1:2),this.setSelectionRange(g,g)})},x.prototype.formatCnpjInput=function(){var a=I.find(this.settings.selectors.identityNumber),b=a.find(this.settings.selectors.identityNumberCnpjField)[0];b&&b.addEventListener("input",function(a){for(var b=this.selectionStart,c=this.selectionEnd,d=this.value.replace(/[^\d]/g,"").substring(0,14),e="",f=0;f<d.length;f++)2===f||5===f?e+=".":8===f?e+="/":12===f&&(e+="-"),e+=d[f];this.value=e;var g=b;b>c?g=b-1:b===c&&b>0&&(g+="deleteContentBackward"==a.inputType||"deleteContentForward"==a.inputType?0:"."==e.charAt(b-1)||"-"==e.charAt(b-1)||"/"==e.charAt(b-1)?1:0),this.setSelectionRange(g,g)})},x.prototype.offerFromLocalStorage=function(){var a;if(a=c.loadItem(this.settings.constants.offerDataStorageKey,this.defaults.storageManagerLocalStorage)){var b="string"==typeof a?JSON.parse(a):a,d=b.offerHeadline||b.value&&b.value.offerHeadline;d&&I.find(this.settings.selectors.appliedOfferText).text(d)}},x.prototype.isFormVisible=function(a,b){var c,d,e,f,g;this.onOverlay||this.brochuresInlineModal?(b=this.brochuresInlineModal?0:b,c=$(this.settings.selectors.c_129).find($(this.settings.selectors.root+":eq("+b+")")).find(this.settings.selectors.visibleFormElements)[0],this.initialTrack||(this.landingPageWindowScroll=$(window).scrollTop(),this.initialTrack=!0)):c=void 0!==b&&b>=0?$(this.settings.selectors.root+":eq("+b+")").find(this.settings.selectors.visibleFormElements)[0]:$(this.settings.selectors.visibleFormElements)[0],c&&(d=this.onOverlay||this.brochuresInlineModal?$(c).offset().top-this.landingPageWindowScroll:$(c).offset().top,e=d+$(c).outerHeight(),f=this.elementScrolled.scrollTop(),g=f+$(window).height()),(this.onOverlay||this.showroomOverlay||this.brochuresInlineModal?d>0&&d<$(window).height():d>f&&e<g)&&!1===Aa[b].show&&(Aa[b].show=!0,this.trackFormVisible(a))},x.prototype.isOptimisedV1Dealer=function(){return I.find(this.settings.selectors.optimisedDealerSelector).length},x.prototype.showSelectedDealerDetails=function(a){var b=$.extend({},{suggestedName:a.suggestedName},a.address),c=u.compile($(ra.template.selectedDealerTemplate).html()),d={componentId:"C40_Dealer_List_View",dealerName:a.tradingName,dealerId:a.id,dealerAddress:n.map(a.address,function(a){return a}).join(", "),dealerAction:"auto:Select this dealer",dealerType:"Unknown"};I.find(this.settings.selectors.selectedDealerAddressContainer).empty().html(c(b)),I.find(this.settings.selectors.findADealerAccordion).removeClass(this.settings.classes.showCSS),I.find(this.settings.selectors.selectedDealerLabel).addClass(this.settings.classes.showCSS),ja.setActiveDealer(a.id),this.setActiveDealer(a.id),this.updateGeoLocDetails(a),$(this.settings.selectors.changeDealer).on("click",n.bind(this._changeDealer,this)),this.settings.analyticsManager.tag(this.settings.analyticsManager.trackingVars.dealerInteraction,d)},x.prototype.updateGeoLocDetails=function(a){var b;W&&(b=W.map.collectionInstance.get(a.id),W.geoloc.$input.val(a.suggestedName),W.map.setActiveMarker(b,!0),W.geoloc.setLabel(a.suggestedName),W.geoloc.set("dealerPresent",!0),W.updateUI(W.getActiveDealers().length))},x.prototype._selectThisDealer=function(a,b,c){I.find(this.settings.selectors.selectedDealerLabel).addClass(this.settings.classes.showCSS),I.find(this.settings.selectors.selectedDealerAddressContainer).empty().html(b),I.find(this.settings.selectors.selectedDealerIdInput).val(n.escape(c.attributes.id)),I.find(this.settings.selectors.selectedDealerNameInput).val(n.escape(c.attributes.suggestedName)),I.find(this.settings.selectors.findADealerAccordion).removeClass(this.settings.classes.showCSS),this.updateGeoLocDetails(c.attributes),y(),this.isOptimisedV1Dealer()&&this.setActiveDealer(c.attributes.id),$(this.settings.selectors.changeDealer).on("click",n.bind(this._changeDealer,this)),$("html, body").scrollTop($(this.settings.selectors.selectedDealer).offset().top)},x.prototype._changeDealer=function(){var a,b=this.isOptimisedV1Dealer();I.find(this.settings.selectors.selectedDealerLabel).toggleClass(this.settings.classes.showCSS),I.find(this.settings.selectors.findADealerAccordion).toggleClass(this.settings.classes.showCSS),b&&(I.find(".location-results").addClass("is-active"),a={componentId:"C40_Dealer_List_View",contentAction:"change-selected-dealer",locationInPage:"Dealer locator form",buttonText:$(".change-dealer-button").text().trim()},this.settings.analyticsManager.tag(this.settings.analyticsManager.trackingVars.buttonNoCookie,a)),W&&(b||W.refreshView(this.settings.dealerMap.map),W.initList(),W.geoloc.set("geoLocationFromSmartLocationError",!1),W.geoloc.set("dealerPresent",!0),W.updateUI(W.getActiveDealers().length))},x.prototype._invalidHandler=function(a,b){var c,d,e,f=this.settings.brochuresModal?this.settings.brochuresModal:this.settings.selectors.brochuresModal+" "+this.settings.selectors.modalContent,g=this.settings.selectors.inventoryModal+" "+this.settings.selectors.modalContent,h=this.settings.errorHandling.animateTimeLength,i=this.settings.errorHandling.animateStart,j=/(iPad|iPhone|iPod)/g.test(navigator.userAgent);b.numberOfInvalids()&&!$(g).length&&b.numberOfInvalids()>0&&(c=$(b.errorList[0].element).parents(this.settings.selectors.formGroup))&&void 0!==c.offset()&&(this.settings.isInline?$(f).length?(d=this.settings.selectors.c_129,e=c.offset().top-$(f).offset().top):$(".contact-modal")?(d=".contact-modal",e=c.offset().top-10):(d=j?this.settings.selectors.htmlBody:this.settings.selectors.c_148,e=c.offset().top-$(this.settings.selectors.summaryTray).offset().top):(d=this.settings.selectors.htmlBody,e=c.offset().top-10),setTimeout(function(){window.useAmericas?$("html, body").animate({scrollTop:0}):($(d).animate({scrollTop:e+"px"},h),c.context.focus())},i))},x.prototype.setupDealerLocator=function(){var a={};if(!X)return!1;X.closest(".form-group").hasClass("required")&&(oa=!0),W=e.newInstance(X,{HELIOS:this.settings.HELIOS,window:this.settings.window,analyticsManager:this.settings.analyticsManager,smartLocationContext:this.settings.smartLocationContext}),ja=new k($(this.$el),{window:this.settings.window,smartLocationContext:this.settings.smartLocationContext}
25),ja.isInitialized()&&(a={restrictViewOnMapCalls:!0}),W.init(a)},x.prototype.runDealerPrePopulation=function(){var a=!1,b=!1;if(!(W&&W.geoloc&&W.geoloc.collection&&ja.isInitialized()))return!1;ja.run(W.geoloc.collection).done(n.bind(function(){b=!0,ja.getActiveDealerId()&&a&&this.activateDealerPrePopulation()},this)),$(W).one(this.settings.events.modelsUpdated,n.bind(function(){a=!0,ja.getActiveDealerId()&&b&&this.activateDealerPrePopulation()},this))},x.prototype.activateDealerPrePopulation=function(){va=!0,this.dealerPrePopHandler()},x.prototype.dealerPrePopHandler=function(a){var b=a||ja.getActiveDealerId();this.setActiveDealer(b),this.preselectDealer(),va&&(W.geoloc.$input.val(W.value.name),W.callbacks.viewOnMap(!1,W.value.id,!0),W.requestDealerDetail(W.value.id))},x.prototype.disableDealerLocator=function(){I.find(this.settings.selectors.findADealerAccordion).removeClass(this.settings.classes.showCSS),I.find(this.settings.selectors.selectADealerButton).prop("disabled","disabled").addClass(this.settings.classes.btnDisabled)},x.prototype.enableButton=function(){I.find(this.settings.selectors.submitFormButton+this.settings.selectors.jsDisabled).removeAttr("disabled").removeClass(this.settings.classes.jsDisabled+" "+this.settings.classes.btnDisabled)},x.prototype.preselectDealer=function(){W&&W.value&&(I.find(this.settings.selectors.selectedDealerIdInput).val(n.escape(W.value.id)),I.find(this.settings.selectors.selectedDealerNameInput).val(n.escape(W.value.name)),this.prepopulateDealerName(W.value.name))},x.prototype.setActiveDealer=function(a){var b;W&&a&&(b=W.geoloc.collection.get(a))&&b.attributes&&W.setValue(b)},x.prototype.showLoginWidget=function(){$(this.defaults.selectors.loginWidgetContainer).addClass(this.defaults.classes.showCSS)},x.prototype.checkLoginSuccess=function(){var a,b,e,f,g;this.settings.HELIOS.components.c_019;e=$(this.defaults.selectors.loginSuccessMessage),f=$(this.defaults.selectors.loginWidget),$(this.defaults.selectors.loginWidgetContainer),g=c.loadItem(this.settings.cookie.ownerServicesLoggedInCookie,this.defaults.storageManagerCookie)||$.cookie(this.settings.cookie.ownerServicesLoggedInCookie),a=c.loadItem(d.loginWidgetData.loginSuccess,this.defaults.storageManagerLocalStorage),b=c.loadItem(d.loginWidgetData.profileDataSession,this.defaults.storageManagerLocalStorage),c.deleteItem(d.loginWidgetData.loginSuccess,this.defaults.storageManagerLocalStorage),a&&g&&e.removeClass(this.defaults.classes.loginSuccess),b||g||f.removeClass(this.defaults.classes.profileInSession),this.bindEventsModal()},x.prototype.checkLoginMyPage=function(){return v.isLoggedIn().then(n.bind(function(a){a?(this.prepopulateProfileData(),this.prepopulateRAQData()):this.showLoginWidget()},this))},x.prototype.eCommerceCpo=function(){var a=c.loadItem(this.settings.constants.formBuilderEcommerce,this.defaults.storageManagerLocalStorage)||!1,b="",d="",e=document.querySelector('input[name="productType"]'),f=document.querySelector('input[name="comments"]');if(e&&(b=e.value.toLowerCase()||""),f&&(d=f.value.toLowerCase()||""),a&&a.cpo&&a.cpo.hasCpo&&("used car"===b||"used car"===d)){var g=document.querySelector('input[name="currentVehicleModel"]'),h=document.querySelector('input[name="vehicleModel"]'),i=document.querySelector('input[name="targetVehicleGrade"]'),j=h?h.closest(".form-group"):null,k=g?g.closest(".form-group"):null,l=i?i.closest(".form-group"):null,m=a.cpo.seletedModel,n=a.cpo.selectedMake,o=a.cpo.selectedGrade,p=a.cpo.selectedVersion,q=document.querySelector('input[name="ModelCode"]'),r=document.querySelector('input[name="targetVehicleBrand"]'),s=document.querySelector('input[name="vehicleBrand"]'),t=document.querySelector('input[name="vehicleRegistrationNumber"]'),u=document.querySelector('input[name="Price"]');document.querySelector(".c_019-25 .change-selected-dealer-cta-container").classList.add("hidden"),Ea=a.cpo.hasCpo||!1,g&&(g.value=n+" "+m,g.setAttribute("readonly",!0),k&&k.classList&&k.classList.add("complete")),h&&(h.value=n+" "+m,h.setAttribute("readonly",!0),j&&j.classList&&j.classList.add("complete")),i&&(i.value=o+" "+p,i.setAttribute("readonly",!0),l&&l.classList&&l.classList.add("complete")),q&&(q.value="OTHR"),f&&"used car"!==d&&(f.value="For used car ; CPO ;"+n),r&&(r.value=n),s&&(s.value=n),t&&(t.value=a.cpo.vehicleRegNum||""),u&&(u.value=a.cpo.vehiclePrice||"")}},x.prototype.eCommerceCpoAnalytics=function(){var a=c.loadItem(this.settings.constants.formBuilderEcommerce,this.defaults.storageManagerLocalStorage)||!1,b={};return a&&a.cpo&&a.cpo.hasCpo&&(b.currentVehicleModel=a.cpo.seletedModel||"",b.targetVehicleBrand=a.cpo.selectedMake||"",b.targetVehicleGrade=a.cpo.selectedGrade||"",b.vehicleSku=a.cpo.vehicleSku||"",b.Dealer=a.cpo.dealerId||"",b.dealerId=a.cpo.dealerId||"",b.dealerName=a.cpo.dealerName||"",b.dealerStatus=a.cpo.dealerStatus||!1,b.HeliosLeadId=a.cpo.dealerAddress||"",b.dealerAddress=a.cpo.dealerAddress||""),b},x.prototype.initModal=function(){var a,b;fa.matchMedia&&(a=fa.matchMedia(HELIOS.config.common.mediaQuery.is.small).matches),a||(b=this.settings.modal.largeHeight),ia=new j({openSelector:this.settings.selectors.loginWidgetModal,displayType:j.TYPE_CENTERED,customOverlayClass:"modal-overlay-dark",customClass:"login-widget",clearOnClose:!1,modalSize:b}),ia.setTarget=function(a){var b,c;return b=this.clear(),c=function(a){var b=[],c=$(a).find(this.settings.selectors.loginWidgetRoot);return $.each(c,function(a,c){b.push(c.outerHTML)}),b=b.join(""),this.setContent(b)},b.then(n.bind(function(){return $.ajax({url:a,type:"GET",success:n.bind(c,this)})},this)),b},ia.setContent=function(a){return this.$content.html(a).promise().done(function(){require("c_080C").init({HELIOS:this.settings.HELIOS,window:this.settings.window,analyticsManager:this.settings.analyticsManager})})}},x.prototype.bindEventsModal=function(){$(this.settings.selectors.loginWidgetModal).on(this.settings.events.click,function(a){var b=$(a.target),c={componentId:ma,destination:b.attr(this.settings.data.href),buttonText:b.text(),locationInPage:"pre-populated-form-"+Z.toLowerCase().replace(/\s+/g,"-"),contentAction:"login 
25widget"};a.preventDefault(),this.settings.analyticsManager.tag(this.settings.analyticsManager.trackingVars.buttonNoCookie,c)}),$(this.settings.selectors.body).on(this.settings.events.click,this.settings.selectors.loginWidgetModal,function(){(this.settings||this.settings.cookie)&&c.loadItem(this.settings.cookie.ownerServicesLoggedInCookie,this.defaults.storageManagerCookie)&&(c.saveItem(d.loginWidgetData.loginSuccess,!0,this.defaults.storageManagerSessionStorage),this.settings.window.location.reload())}.bind(this))},x.prototype.passAnalyicsJourneyIdToForm=function(){if(this.settings.analyticsManager){var a=this.settings.analyticsManager.getJourneyDataByName("offer");a&&a.id&&I.find("form").append('<input type="hidden" name="analyticsData" value="'+a.id+'"/>')}},x.prototype.onAnalyticsFormClick=function(a){var b,c,d,e,f,g=$(a.target).parents(this.settings.selectors.root).data("analyticsFirstFormInteraction");n.isUndefined(a.originalEvent)||"DIV"===a.target.nodeName||(b=$(a.target).is($(ra.selectors.submitFormButton,I)),f=$(a.target).is($(ra.selectors.serverErrorMessageLink,I)),1==this.settings.attributes.isValid&&(c={formStepName:b?this.settings.analytics.submitFormStepName:this.settings.analytics.firstInteractionFormStepName,formStepNumber:b?this.settings.analytics.submitFormStepNumber:this.settings.analytics.firstInteractionFormStepNumber,formCategory:$(a.target).parents(this.settings.selectors.root).find('.form-analytic-elements input[name="formCategory"]').val(),formType:$(a.target).parents(this.settings.selectors.root).find('.form-analytic-elements input[name="formType"]').val()}),d=I.data(this.settings.data.templateName)===this.settings.data.formTemplateName,n.isUndefined(c)||!b||this.settings.isInline||(c.pageType=this.settings.analytics.pageType,e="",$(this.settings.selectors.errorMessage,this.settings.selectors.root).each(function(a,b){$(b).is(":visible")&&(e+=$(b).text()+",")}),c.pageType=this.settings.analytics.pageType,e&&(c.errorMessage=e),this.analyticsTrackingForm(c)),void 0==c||"true"!=g||d||$(a.currentTarget).hasClass(this.settings.classes.ecommerceCheckoutForm)||f||(c.templateName=I.data(this.settings.data.templateName),this.analyticsTrackingForm(c),$(a.target).parents(this.settings.selectors.root).data("analyticsFirstFormInteraction","false")))},x.prototype.trackLoad=function(){if(this.settings.analyticsManager){var a=c.loadItem(d.multipleBrochures.itemKey,this.defaults.storageManagerLocalStorage),b=this.settings.analyticsManager,e=b.trackingVars.pageLoad,f=b.getTrackingObjectProperties(e),g={};a&&(g[f.brochureName]=a.brochures.join(","),g[f.brochureAmount]=a.brochures.length,g[f.vehicleModel]=a.model,g[f.vehicleCategory]=a.category,g[f.vehicleId]=a.id),this.settings.isConfigurator&&this.settings.isInline&&(g[f.pageType]=this.settings.containerPageType,g[f.componentId]=this.settings.sourceComponentId),this.settings.personalShowroomInlineForm?(g={formType:I.data(this.settings.data.formType),formCategory:I.data(this.settings.data.formCategory),formStepName:this.settings.analytics.formStepName,formStepNumber:this.settings.analytics.formStepNumber,formName:I.data(this.settings.data.formName),templateName:I.data(this.settings.data.templateName)},this.settings.eventAggregator.trigger(this.settings.analytics.personalShowroomInlineFormEvent,g)):Ea?(g=Object.assign({},g,this.eCommerceCpoAnalytics()),this.settings.analyticsManager.append(e,g),g=Object.assign({},g,this.settings.analyticsManager.taggingObject),this.settings.analyticsManager.tag(this.settings.analytics.delayedPageLoad,g)):this.settings.analyticsManager.append(e,g)}},x.prototype.trackOnPageLoadRtb=function(){var a=this.settings.analyticsManager,b=a.trackingVars.pageLoad,c=a.getTrackingObjectProperties(b),d={};this.settings.analytics.realTimePicker=this.settings.analytics.enabled,d[c.componentId]=this.defaults.componentId,d[c.realTimePicker]=this.settings.analytics.realTimePicker,HELIOS&&HELIOS.components&&HELIOS.components.c_019_31&&(d[c.homeTestDrive]=HELIOS.components.c_019_31.homeTestDriveEnabled),HELIOS&&HELIOS.components&&HELIOS.components.c_019_32&&(d[c.extendedTestDrive]=HELIOS.components.c_019_32.extendedTestDrive),this.settings.analyticsManager.append(b,d)},x.prototype.trackFormVisible=function(a){var b,c,d=this.settings.analyticsManager,e=d.trackingVars.pageLoad,f=d.trackingVars.formAppears,g={};c=a||this.onOverlay||this.onSummaryTray||this.showroomOverlay||this.brochuresInlineModal?f:e,b=d.getTrackingObjectProperties(c),g[b.componentId]=this.defaults.componentId,g[b.formVisible]="yes|"+(a?"onScroll":this.onSummaryTray?"virtual-page-view":this.onOverlay?"pop-in":this.showroomOverlay||this.brochuresInlineModal?"overlay":"onLoad"),(this.onOverlay||this.showroomOverlay||this.onSummaryTray||this.brochuresInlineModal)&&(g[b.formStepName]=this.onOverlay?this.settings.analytics.popInForm:"start",g[b.formStepNumber]=this.settings.analytics.formStepNumber,g[b.formType]=I.data(this.settings.data.formType),g[b.formCategory]=I.data(this.settings.data.formCategory),g[b.formName]=I.data(this.settings.data.formName),g[b.templateName]=I.data(this.settings.data.templateName),g[b.homeTestDrive]=!1,g[b.acceptFile]=$(this.settings.selectors.form).data(this.settings.data.acceptFile)),HELIOS&&HELIOS.components&&(HELIOS.components.c_019_31&&(g[b.homeTestDrive]=HELIOS.components.c_019_31.homeTestDriveEnabled,HELIOS.components.c_019_31.rtb&&(g[b.realTimePicker]=this.settings.analytics.enabled)),HELIOS.components.c_019_32&&(g[b.extendedTestDrive]=HELIOS.components.c_019_32.extendedTestDrive)),this.showroomOverlay||this.brochuresInlineModal||(g[b.pageType]=this.settings.analytics.pageType),Ea&&(g=Object.assign({},g,this.eCommerceCpoAnalytics())),"pageLoad"===c?this.settings.analyticsManager.append(c,g):this.settings.analyticsManager.tag(c,g)}
25,x.prototype.analyticsTrackingForm=function(a){var b,c;this.settings.analyticsManager&&(b={componentId:ma,formCategory:I.data(this.settings.data.formCategory),formType:I.data(this.settings.data.formType),formName:I.data(this.settings.data.formName)},na&&(b.vehicles=na)),this.settings&&this.settings.HELIOS&&this.settings.HELIOS.components&&(this.settings.HELIOS.components.c_303||this.settings.HELIOS.components.c_303_1)&&!this.settings.HELIOS.components.c_309_3?this.settings.personalShowroomInlineForm?(c=$.extend({},b,a),this.settings.eventAggregator.trigger(this.settings.analytics.personalShowroomInlineFormEvent,c)):(b.componentId="C303-8_personal_showroom",c=$.extend({},b,a),this.settings.analyticsManager.tag(this.settings.analyticsManager.trackingVars.formSteps,c)):this.settings.offersHubInlineForm?(c=$.extend({},b,a),this.settings.eventAggregator.trigger(this.settings.analytics.offersHubInlineFormEvent,c)):(c=$.extend({},b,a),Ea&&(c=Object.assign({},c,this.eCommerceCpoAnalytics())),this.settings.analyticsManager.tag(this.settings.analyticsManager.trackingVars.formSteps,c))},x.prototype.analyticsTrackingFormInline=function(a,b){if(b&&b.fcFormStep){var c=I.data(this.settings.data.formName)+"|"+b.fcFormStep;this.settings.analytics.formStepNumber=b.fcFormStep,I.data(this.settings.data.formName,c)}this.brochuresInlineModal&&(Ca?this.isFormVisible(!1,Da++):(this.isFormVisible(!1,Da),Ca=!0)),this.settings.analyticsManager&&(b=n.extend({componentId:ma,pageName:"handraiser|"+I.data(this.settings.data.formName),templateName:I.data(this.settings.data.templateName),formType:I.data(this.settings.data.formType),formCategory:I.data(this.settings.data.formCategory),formStepName:this.settings.analytics.formStepName,formStepNumber:this.settings.analytics.formStepNumber,formName:I.data(this.settings.data.formName)},b),this.settings.analyticsManager.tag(a,b))},x.prototype.setupDropdownGroups=function(a){var b,c,d,e,f,g,h;a.each(n.bind(function(a,i){f=$(i),b=f.find(this.settings.selectors.firstSelectBox),c=f.find(this.settings.selectors.secondSelectBox),d=f.find(this.settings.selectors.thirdSelectBox),e=b.val(),e&&b.parent().find(this.settings.selectors.spanSelectedValue).text(b.find("option[value="+e+"]").text()),this.prepopulateDropDownGroup(f),this.listenSelectChange(b,c,n.bind(this.onParentSelectChange,this)),c&&d&&(this.listenSelectChange(c,d,n.bind(this.onParentSelectChange,this)),d.length?d.on(this.settings.events.change,n.bind(this.onElementSelectChange,this)):c.on(this.settings.events.change,n.bind(this.onElementSelectChange,this))),e&&c&&(g=f.data(this.settings.selectors.tripleDropdownGroupData),$.isNestedProp(ba,[g,e,"options"])&&(h=ba[g][e].options,this.appendListOptions(c,h)))},this))},x.prototype.prepopulateDropDownGroup=function(a){var b,c,d,e=a.find(this.settings.selectors.firstSelectBox),f=a.find(this.settings.selectors.secondSelectBox),h=a.find(this.settings.selectors.thirdSelectBox);I.find(this.settings.selectors.dataPrePopulationUrl)&&(b=I.find(this.settings.selectors.dataPrePopulationUrl).data("prepopulationUrl")),a.parents(this.defaults.selectors.carDataAdminSelector).length||(g.init(),g.getData(b).done(n.bind(function(a){c=this.getHolesInPrepopData(a),$.isEmptyObject(c)?this.prepopulateTripleDropdown(e,f,h,a):g.getDataFallback(b,c).done(n.bind(function(b){d=$.extend({},a,b),this.resolvePrePopPromises(d),this.prepopulateTripleDropdown(e,f,h,d)},this))},this)))},x.prototype.prepopulateTripleDropdown=function(a,b,c,d){var e=!1,f=!1,g=!1,h=a.parents(this.settings.selectors.dropdownGroup).data(this.settings.selectors.tripleDropdownGroupData);a&&d.hasOwnProperty(a.data(this.settings.data.storageKey))&&(this.prepopulateDropdown(a,d),f=a.val()),ba&&f&&ba[h][f]&&(e=ba[h][f].options,this.appendListOptions(b,e),this.prepopulateDropdown(b,d),g=b.val()),g&&(e=this.getThirdOptions(f,g,ba[h]),this.appendListOptions(c,e),this.prepopulateDropdown(c,d))},x.prototype.prepopulateDropdown=function(a,b){var c;b.hasOwnProperty(a.data(this.settings.data.storageKey))&&(c=$.escapeHtml(b[a.data(this.settings.data.storageKey)]),a.find('option[value="'+c+'"]').length&&(a.val(n.escape(c)),a.parents(".custom-selectbox").find("span.selectedValue").text(a.find("option:selected").text())))},x.prototype.listenSelectChange=function(a,b,c){a.on(this.settings.events.change,{childSelectBox:b},c)},x.prototype.onElementSelectChange=function(a){var b=$(a.currentTarget),c=b.attr("id"),d=U.find(this.settings.selectors.disclaimerList),e=$("#"+c),f=[],g=b;$.each(U.children(this.settings.selectors.formGroup),function(a){a<U.children("div").length-1&&(g=$("#"+g.attr("data-responsive-parent")),f.push(g.val()))}),f=f.reverse(),$.each(f,function(a,b){c+="-"+b}),c+="-"+e.val(),d.children().not('div[data-responsive-child="'+c+'"]').hide()},x.prototype.onParentSelectChange=function(a){var b,c=$(a.target),d=c.parents(this.settings.selectors.dropdownGroup),e=d.data(this.settings.selectors.tripleDropdownGroupData),f=[],g=d.find(this.settings.selectors.thirdSelectBox),h=d.find(this.settings.selectors.secondSelectBox),i=d.find(this.settings.selectors.firstSelectBox).val();c.is(this.settings.selectors.firstSelectBox)?(this.emptySelectBox(h),this.emptySelectBox(g),ba[e]&&ba[e][i]&&ba[e][i].hasOwnProperty("options")&&(f=ba[e][i].options)):(b=h.val(),this.emptySelectBox(g),g&&b&&i&&(f=this.getThirdOptions(i,b,ba[e]))),this.appendListOptions(a.data.childSelectBox,f)},x.prototype.trackDropdownChange=function(a){var b=$(a.target),c={componentId:qa,locationInPage:b.attr("name"),contentAction:b.val()};this.settings.analyticsManager.track("buttonNoCookie",c)},x.prototype.appendListOptions=function(a,b){var c,d,e={}
26;if(b&&b.length){for(d=0;d<b.length;d++)c=b[d],e.value=n.escape(c.id),a.append($("<option>",e).text(c.label));this.selectDefaultOption(a)}},x.prototype.getThirdOptions=function(a,b,c){var d;if(c[a])return d=$(c[a].options).filter(function(){return this.id===b})[0],d&&d.hasOwnProperty("children")?d.children:[]},x.prototype.selectDefaultOption=function(a){var b,c=a.find("option").eq(0);c.length&&(b=c.text(),c.attr("selected","selected"),a.parent().find(this.settings.selectors.spanSelectedValue).text(b))},x.prototype.emptySelectBox=function(a){var b,c,d;a&&(b=a.find("option").eq(0),c=b.text(),a.empty(),a.append(b),a.parent().find(this.settings.selectors.spanSelectedValue).text(c),(d=a.parent().closest(this.settings.selectors.formGroup))&&d.hasClass(this.settings.classes.complete)&&d.removeClass(this.settings.classes.complete))},x.prototype.setupResponsiveElement=function(a){a.parent().parent().siblings(this.settings.selectors.responsiveElmFieldset).children().addClass(this.settings.classes.hideCSS).find("input, textarea, select").prop("disabled",!0),a.each(n.bind(function(a,b){var c=$(b);if(c.is(":checkbox")){var d=c.attr("id"),e=c.is(":checked"),f=this.settings.selectors.responsiveChildData+'="'+d+"-",g="["+f+e+'"]',h="["+f+!e+'"]',i=c.parent().parent().siblings(this.settings.selectors.responsiveElmFieldset);i.children(g).removeClass(this.settings.classes.hideCSS).find("input, textarea").prop("disabled",!1),i.children(h).find("input, textarea").val("")}else{var j=c.val(),k=c.parent().parent().siblings(this.settings.selectors.responsiveElmFieldset),l=c.attr("id")+"-";l+=j,j="["+this.settings.selectors.responsiveChildData+'="'+l+'"]',k.children().addClass(this.settings.classes.hideCSS).find("input, textarea, select").prop("disabled",!0),k.children(j).removeClass(this.settings.classes.hideCSS).find("input, textarea, select").prop("disabled",!1)}},this)),a.on(this.settings.events.change,n.bind(function(a){var b,c=$(a.target),d=c.parent().parent().siblings(this.settings.selectors.responsiveElmFieldset),e=c.attr("id")+"-",f="false";if(c.is(":checkbox")?c.is(":checked")&&(f="true"):f=c.val(),e+=f,b="["+this.settings.selectors.responsiveChildData+'="'+e+'"]',d.children().addClass(this.settings.classes.hideCSS).find("input, textarea, select").prop("disabled",!0),d.children(b).removeClass(this.settings.classes.hideCSS).find("input, textarea, select").prop("disabled",!1),c.is(":checkbox"))if(c.hasClass("content-checkbox")){var g=d.children(b).find("input, select, textarea");g.each(n.bind(function(a,b){var c=$(b);"hidden"===c.attr("type")&&c.val(f)})),d.children().find("input, textarea, select").each(n.bind(function(a,b){var c=$(b);"hidden"===c.attr("type")||c.prop("disabled",!1)}))}else d.children().find("input, textarea, select").val(""),d.children(b).find("input, select").val(f)}
26,this))},x.prototype.getDealerInfoWithinForm=function(a){var b=this.settings.selectors,c=$(b.dealerLocator,a),d=b.c_019_25_DealerIdInputField,e=b.c_019_25_DealerNameInputField,f="",g="",h={};return c&&c.length&&(d=b.selectedDealerIdInput,e=b.selectedDealerNameInput),f=$(d)&&$(d).val(),g=$(e)&&$(e).val(),f&&g&&(h.dealerId=f,h.dealerName=g),h},x.prototype.dealerRecheckBeforeSubmit=function(a){var b=this.getDealerInfoWithinForm(a),c=HELIOS.components.c_019_25&&HELIOS.components.c_019_25.settings.isDealerSelectionMandatory;if((oa||c)&&!b.dealerId){var d,e,f,g,h=$(a).closest(this.settings.selectors.c_129);return oa?(d=X,e=d.closest(this.settings.selectors.formGroup)):c&&(d=$(this.settings.selectors.c_019_25,a),e=$(this.settings.selectors.formValidationCheck)),e.addClass(this.settings.classes.error),h.length&&h.hasClass(this.settings.classes.open)?(f=h,g=e.offset().top-f.offset().top+f.scrollTop()):(f=$("html, body"),g=d.offset().top),f.animate({scrollTop:g},500),!1}return!0},x.prototype.c_019_formHandler=function(a,b){if(this.displayAddressForm(),$(this.settings.selectors.numberPlateFindVehicle).hasClass(this.settings.classes.hidden)||(this.vehicleDetailsFetched=this.settings.HELIOS&&this.settings.HELIOS.components.c_019_38&&this.settings.HELIOS.components.c_019_38.numberPlate&&$(this.settings.selectors.findMyVehicleCta).attr(this.settings.data.detailsFetched)),b.valid())if(n.isUndefined(this.vehicleDetailsFetched)||"true"==this.vehicleDetailsFetched){if(!this.dealerRecheckBeforeSubmit(b))return!1;if(ka.verifyDataBeforeSubmit(),$(this.settings.selectors.c_019_36).length&&this.saveCheckboxDataInObject(),this.settings.enableOpenDays&&this.settings.nextDayBATD&&!this.validateNextDaySubmit())return!1;la.handleFileUpload($(a),b.data(ra.data.acceptFile),n.bind(function(a){pa?v.sendDataToMyPage().then(n.bind(function(){this.submitFormFromStatus(b,a)},this),n.bind(function(){this.submitFormFromStatus(b,a)},this)):this.submitFormFromStatus(b,a)},this))}else $(this.settings.selectors.numberPlateFindVehicle).addClass(this.settings.classes.findVehicleNotClicked),$("html, body").animate({scrollTop:$(this.settings.selectors.c_019_38).offset().top});else this.settings.enableOpenDays&&this.settings.nextDayBATD&&this.validateNextDaySubmit(),this.displayAddressErrors(),this.displayDatepickerErrors(),this.displayDealerLocatorErrors(b),this.displayTimepickerErrors(),la.displayMandatoryErrors(),this.trackSubmissionInvalid()},x.prototype.submitFormFromStatus=function(a,b){var c=$(this.settings.id.realTimeSlot).val();ya=!!($(this.settings.selectors.formOpenInOverlay).length>0||$(this.settings.selectors.formOpenInWidget).length),this.updateDynamicHiddenField(),this.updatePreLaunchTag(),this.updateIdNumber(),b&&("function"==typeof this.settings.customFormHandler?this.settings.customFormHandler(a):this.settings.isInline||ya||this.settings.HELIOS&&this.settings.HELIOS.components.c_019_31&&this.settings.HELIOS.components.c_019_31.rtb&&!n.isEmpty(c)&&this.settings.HELIOS&&this.settings.HELIOS.components.c_019_31&&!this.settings.HELIOS.components.c_019_31.isV2LeadsFlowEnabled?(this.displaySpinner(),this.ajaxSubmit(a)):a.trigger(ra.events.submit))},x.prototype.updateIdNumber=function(){var a=$(this.settings.selectors.responsiveElmFieldset),b=$(this.settings.selectors.identityNumber),c='input[name="idNumber_CPF"], input[name="idNumber_CNPJ"], input[name="idNumber_RUT"]',d=a.find(c),e=function(a){var b=a.find(c);if(b.length){var d=b.val(),e=a.find('input[type="hidden"][name="idNumber"]');e.length&&e.val(d)}};if(a.length&&d.length){var f=a.find(this.settings.selectors.idNumberResponsiveChild).first();if(f.length)return void e(f)}b.length&&e(b)},x.prototype.updateDynamicHiddenField=function(){if($(this.settings.selectors.observationHiddenField).length){var a,b=$(this.settings.selectors.observationHiddenField).val(),c=/%([^%]+)%/,d=b.match(c);if(d&&(a=d[1],$('input[name="'+a+'"]').length)){var e=$('input[name="'+a+'"]').val(),f=e?b.replace(c,e):f=b.replace(c,"");$(this.settings.selectors.observationHiddenField).val(f)}}if($(this.settings.selectors.additionalInfoHiddenField).length){var a,b=$(this.settings.selectors.additionalInfoHiddenField).val(),c=/%([^%]+)%/,d=b.match(c);
26if(d&&(a=d[1],$('input[name="'+a+'"]').length)){var e=$('input[name="'+a+'"]').val(),f=e?b.replace(c,e):f=b.replace(c,"");$(this.settings.selectors.additionalInfoHiddenField).val(f)}}},x.prototype.updatePreLaunchTag=function(){var a;this.settings.HELIOS.components&&this.settings.HELIOS.components.c_019&&this.settings.HELIOS.components.c_019.isPreLaunch?(a=this.settings.HELIOS.components.c_019.isPreLaunch,$(this.settings.selectors.realtimeBookingType).val(this.settings.constants.dealerTestdrive)):this.settings.HELIOS.components&&this.settings.HELIOS.components.c_019_39&&this.settings.HELIOS.components.c_019_39.isPrelaunch&&(a=this.settings.HELIOS.components.c_019_39.isPrelaunch),this.setModelDataName(a),void 0!==a&&$(this.settings.selectors.preLaunchEnabled).val(a)},x.prototype.setModelDataName=function(a){var b=c.loadItem(this.settings.constants.lastVisitedVehicle,this.defaults.storageManagerLocalStorage)||!1,d=$(this.settings.selectors.selectedVehicleModelDataName),e="true"===String(a).toLowerCase();if(e&&this.settings.HELIOS.components&&this.settings.HELIOS.components.c_019_39){var f=I.find("["+this.settings.attributes.modelId+"="+b+"]").attr(this.settings.attributes.dataModelDataName);d.val(f),$(this.settings.selectors.selectedVehicleModelName).remove()}else{var g=I.find("option[value="+b+"]").attr(this.settings.attributes.dataName);if(e&&g)return void d.val(g);d.remove()}},x.prototype.displaySpinner=function(){function a(){$(b.settings.selectors.secondarySpinner)[0]&&!wa&&($(b.settings.selectors.primarySpinner).addClass("hidden"),$(b.settings.selectors.secondarySpinner).removeClass("hidden"))}if($(this.settings.selectors.primarySpinner)[0]){$(this.settings.selectors.primarySpinner).removeClass("hidden"),this.spinnerTimer=new Date;var b=this,c=parseInt($(this.settings.selectors.primarySpinner).attr("data-primary-timer"));window.setTimeout(a,1e3*c)}},x.prototype.getDealerDataFromForm=function(){var a=this.settings.selectors,b="",c="",d="",e="",f="",g="",h="",i={};return $(a.c_019_25_DealerId)&&$(a.c_019_25_DealerId).length>0||$(a.c_019_25B_DealerId)&&$(a.c_019_25B_DealerId).length>0?(b=a.c_019_25_DealerId||a.c_019_25B_DealerId,c=a.c_019_25_DealerName||a.c_019_25B_DealerName,d=a.c_019_25_DealerAddress||a.c_019_25B_DealerAddress,$(a.showroomDealerAlphaType)&&(h=this.settings.constants.dealerTypeAlpha),$(a.showroomDealerBetaType)&&(h=this.settings.constants.dealerTypeBeta)):(b=a.selectedDealerIdInput,c=a.selectedDealerNameInput,d=a.selectedDealerAddressContainer),e=$(b)&&$(b).val(),f=$(c)&&$(c).val(),g=$(d)&&$(d).text(),e&&f&&(i.dealerId=e,i.dealerName=f,g&&(g=g.replace(/\s+/," "),i.dealerAddress=g),h&&(i.dealerType=h)),i},x.prototype.ajaxSubmit=function(a){var b,d,e,f,g,h=a.serializeArray(),i={},j="formSteps",k=$("input[name=allOptIn]"),l=this.settings.globalFinanceCalculator?"globalFinanceFormResponse":"formResponse",m={},o={},p=this.settings.HELIOS.components.c_019_31&&this.settings.HELIOS.components.c_019_31.isEnhancedBookingEnabled,q=$(this.settings.selectors.root).attr("data-form-hash-fields"),s=n.isUndefined(q)?{}:$.trim(q.split(" ").join("")).split(",");$.map(h,function(a,b){i[a.name]=a.value,n.isEmpty(s)||s.forEach(function(b){a.name.toLowerCase()==b.toLowerCase()&&a.value&&(m["hash"+b]=t.SHA256.hash(a.value.toLowerCase())?t.SHA256.hash(a.value.toLowerCase()).toString():"")})}),e={componentId:ma,formType:I.data(this.settings.data.formType),formCategory:I.data(this.settings.data.formCategory),formStepName:this.settings.analytics.submittedFormStepName,formStepNumber:this.settings.analytics.submittedFormStepNumber,formName:I.data(this.settings.data.formName),formSubmission:"yes",formSubmissionSuccess:"yes"},this.settings.personalShowroomInlineForm&&(e.formStepNumber=this.settings.analytics.showroomSubmittedFormStepNumber),Ea&&(e=Object.assign({},e,this.eCommerceCpoAnalytics())),f=this.getDealerDataFromForm(),f.dealerId&&(e=Object.assign({},e,f)),k&&k.length&&("Nissan"===HELIOS.config.brand||"Infiniti"===HELIOS.config.brand)&&"US"===HELIOS.config.common.countryCode&&(i.allOptIn?e.allOptIn=i.allOptIn:e.allOptIn=!1),na&&(e.vehicles=na);var u=$(this.settings.id.realTimeSlot).val();ya=$(this.settings.selectors.formOpenInOverlay).length>0||$(this.settings.selectors.formOpenInWidget).length>0,this.settings.HELIOS&&this.settings.HELIOS.components.c_019_31&&this.settings.HELIOS.components.c_019_31.rtb&&(ya&&!n.isEmpty(u)||!ya)?(b=this.settings.HELIOS.components.c_019_31.isV2LeadsFlowEnabled?a.attr("action").replace("html","json"):this.settings.HELIOS.components.c_019_31.servlet
26Url,d=this.settings.HELIOS.components.c_019_31.successPath,za=!1,this.settings.eventAggregator=n.extend({},r.Events),$(this.settings.selectors.submitFormButton).addClass(this.settings.classes.btnDisabled).prop(this.settings.attributes.disabled,!0)):(b=a.attr("action"),b=b.replace("html","json"),za=!0),!n.isUndefined(p)&&p&&(g=this.settings.HELIOS.components.c_019_31.fallbackPath),(this.settings.offersHubInlineForm||this.settings.HELIOS&&this.settings.HELIOS.components.c_344&&this.settings.HELIOS.components.c_344.popInForm||this.settings.globalFinanceCalculator)&&$(this.settings.selectors.submitFormButton).addClass(this.settings.classes.btnDisabled).prop(this.settings.attributes.disabled,!0),$.ajax({url:b,type:"POST",data:i}).done(n.bind(function(a,b,f){if(e=Object.assign({},e,a.dtmStoreFields),n.isUndefined(this.spinnerTimer)){o.spinnerTimer="",e=Object.assign({},e,o);var h=c.loadItem(this.settings.analytics.analyticsSession,this.defaults.storageManagerSessionStorage);h=Object.assign({},h,o),c.saveItem(this.settings.analytics.analyticsSession,h,this.defaults.storageManagerSessionStorage)}else{this.spinnerTimer=new Date-this.spinnerTimer,o.spinnerTimer=this.spinnerTimer,e=Object.assign({},e,o);var h=c.loadItem(this.settings.analytics.analyticsSession,this.defaults.storageManagerSessionStorage);h=Object.assign({},h,o),c.saveItem(this.settings.analytics.analyticsSession,h,this.defaults.storageManagerSessionStorage)}n.isEmpty(m)||(e=Object.assign({},e,m)),this.settings.personalShowroomInlineForm&&this.settings.eventAggregator.trigger(this.settings.analytics.personalShowroomInlineFormEvent,e),!0===I.data(this.settings.data.successEventEnabled)&&this.settings.eventAggregator.trigger(this.settings.events.customSuccessInlineFormEvent,a),ya&&($(this.settings.selectors.c_344).length||$(this.settings.selectors.c_344C).length)?window.eventAggregator.trigger(l,{responseData:a,trackingVar:j,trackingObject:e,isRtbFallback:za}):this.settings.eventAggregator._events?this.settings.eventAggregator.trigger(l,{responseData:a,trackingVar:j,trackingObject:e,isRtbFallback:za}):window.eventAggregator.trigger(l,{responseData:a,trackingVar:j,trackingObject:e,isRtbFallback:za}),p&&206==f.status&&!ya?window.location.href=n.isUndefined(g)?"":g:this.settings.HELIOS&&this.settings.HELIOS.components.c_019_31&&this.settings.HELIOS.components.c_019_31.rtb&&!ya&&!this.settings.HELIOS.components.c_019_31.isV2LeadsFlowEnabled&&(window.location.href=d)},this)).fail(n.bind(function(b){var d=c.loadItem("ProfileDataSession",this.defaults.storageManagerSessionStorage),f=d&&Object.keys(d.storageData.dealerLocation).length?d.storageData.dealerLocation.dealerId:"",g=$(this.settings.selectors.form).data(this.settings.data.serverErrorPagePath),h=window.location.href;e.formSubmissionSuccess="no",this.settings.personalShowroomInlineForm&&this.settings.eventAggregator.trigger(this.settings.analytics.personalShowroomInlineFormEvent,e),ya&&$(this.settings.selectors.c_344).length||$(this.settings.selectors.c_344C).length?((b&&b.statusText===this.settings.statusCodes.error&&409!==b.status||b&&b.responseJSON&&b.responseJSON.result===this.settings.statusCodes.failure)&&(wa=!0),window.eventAggregator.trigger(l,{responseData:b.responseJSON,trackingVar:j,trackingObject:e,isRtbFallback:za,jqXHRResponse:b})):this.settings.eventAggregator.trigger(l,{responseData:b.responseJSON,trackingVar:j,trackingObject:e,isRtbFallback:za}),this.settings.HELIOS&&this.settings.HELIOS.components.c_019_31&&this.settings.HELIOS.components.c_019_31.rtb&&this.settings.HELIOS.components.c_019_11C.handleTimslotAlreadyTaken&&409==b.status&&($("body").trigger("showErrorOnTimeSlot",f),I.find(this.settings.selectors.submitFormButton).removeAttr("disabled").removeClass(this.settings.classes.btnDisabled)),p||ya||!this.settings.HELIOS||!this.settings.HELIOS.components.c_019_31||!this.settings.HELIOS.components.c_019_31.rtb||this.settings.HELIOS.components.c_019_11C.handleTimslotAlreadyTaken&&409==b.status||a.trigger(ra.events.submit),p&&409!=b.status&&!ya&&(h.includes(this.settings.statusCodes.serverError)?window.location.reload():window.location.href=h.replace(g.split("?")[0],g))},this))},x.prototype.trackSubmissionInvalid=function(){var a={};if(this.settings.attributes.isValid=!1,this.settings.analyticsManager){var b,c=$(".required.error"),d=$(".c_019-23.error"),e="";c&&(e=n.reduce(c.find(".error-message"),function(a,b){return a+$(b).text().trim()+" | "},"")),d&&(e+=n.reduce(d.find(".error-message"),function(a,b){return a+$(b).text().trim()+" | "},"")),b={componentId:ma,formType:I.data(this.settings.data.formType),formCategory:I.data(this.settings.data.formCategory),formStepName:this.settings.analytics.submittedFormStepName,formStepNumber:this.settings.analytics.submittedFormStepNumber,formName:I.data(this.settings.data.formName),formSubmission:this.settings.isInline?"yes":"no",formSubmissionSuccess:"no",errorMessage:e},a=this.getDealerDataFromForm(),a.dealerId&&(b=Object.assign({},b,a)),na&&(b.vehicles=na),Ea&&(b=Object.assign({},b,this.eCommerceCpoAnalytics())),this.settings.personalShowroomInlineForm?(b.formStepNumber=this.settings.analytics.showroomSubmittedFormStepNumber,this.settings.eventAggregator.trigger(this.settings.analytics.personalShowroomInlineFormEvent,b)):this.settings.offersHubInlineForm?this.settings.eventAggregator.trigger(this.settings.analytics.offersHubInlineFormEvent,b):this.settings.analyticsManager.tag("formSteps",b)}},x.prototype.displayAddressErrors=function(){K.removeClass(this.settings.classes.lookupAddressClass).addClass(this.settings.classes.manualAddressEnterClass),K.find("input.error").each(function(a,b){var c=$(b);c.siblings("span").remove(),c.after('<span class="error-message">'+c.data("validation-notblank")+"</span>")})},x.prototype.displayAddressForm=function(){K.removeClass(this.settings.classes.lookupAddressClass).addClass(this.settings.classes.manualAddressEnterClass);var a=$(this.settings.selectors.addressComponent);a.length&&(a.find(this.settings.selectors.addressFormGroup).removeClass(this.settings.classes.active),a.find(this.settings.selectors.addressManual).addClass(this.settings.classes.active))},x.prototype.displayDealerLocatorErrors=function(a){var b=$(this.settings.selectors.c_019_25,a),b=b||$(this.settings.selectors.c_019_25B,a);b.each(n.bind(function(a,b){var c=$(b),d=c.find(this.settings.selectors.dealerLocatorSearch);if(c.find(this.settings.selectors.formValidationCheck).hasClass(this.settings.classes.error))if(d.attr(this.settings.attributes.disabled))c.find(this.settings.selectors.formValidationCheck).removeClass(this.settings.classes.error);else if(c.data("DealerLocatorInstance").showSelectedDealerRequiredMessage(),$(this.settings.selectors.modalFormInPopUp).hasClass(this.settings.classes.open)&&$(this.settings.selectors.formValidationCheck).hasClass(this.settings.classes.error)){var e=$
26(this.settings.selectors.modalFormInPopUpOpen),f=$(this.settings.selectors.formValidationCheck),g=f.offset().top-e.offset().top+e.scrollTop();e.animate({scrollTop:g},500)}},this))},x.prototype._onDealerSelection=function(a){var b,c=W.map.activeDealer,d=W.geoloc.collection.get(c),e=I.find(this.settings.selectors.selectADealerButton);d&&(b=d.attributes.suggestedName),I.find(this.settings.selectors.selectedDealerLabel).removeClass(this.settings.classes.noDealerSelected).children("span").empty().text(b),I.find(this.settings.selectors.selectedDealerIdInput).val(n.escape(c)),I.find(this.settings.selectors.selectedDealerNameInput).val(n.escape(b)),a&&a.target&&(I.find(this.settings.selectors.findADealerAccordion).toggleClass(this.settings.classes.showCSS),e.length&&$("html,body").scrollTop(e.offset().top-15)),$(this.settings.selectors.selectDealerFromMap).on(this.settings.events.click,n.bind(this.selectDealerFromMap,this))},x.prototype.selectDealerFromMap=function(){var a=W.map.activeDealer,b=W.geoloc.collection.get(a),c=$.extend({},{suggestedName:b.attributes.suggestedName},b.attributes.address),d=u.compile($(ra.template.selectedDealerTemplate).html());$("body").trigger(this.settings.events.selectThisDealer,[d(c),b])},x.prototype.prepopulateDealerName=function(a){I.find(this.settings.selectors.selectedDealerName).empty().text(n.escape(a)),I.find(this.settings.selectors.selectedDealerNameInput).val(n.escape(a)),I.find(this.settings.selectors.findADealerAccordion).removeClass(this.settings.classes.showCSS),I.find(this.settings.selectors.selectedDealerLabel).addClass(this.settings.classes.showCSS),W&&W.geoloc.collection.get(W.value.id)&&(I.find(this.settings.selectors.findADealerAccordion).removeClass(this.settings.classes.showCSS),I.find(this.settings.selectors.selectedDealerLabel).addClass(this.settings.classes.showCSS))},x.prototype.extractDataToForm=function(a){c&&(c.init({mode:this.settings.capture.mode}),$("[data-"+this.settings.capture.attrNamespace+"]",a).each(n.bind(function(a,b){var c=$(b);switch(this.settings.capture.destination){case"to-field-value":this.extractDataToField(c);break;case"individual-fields":this.extractDataToIndividualFields(c);break;default:this.compressDataToSingleField(c)}},this)))},x.prototype.getKeysFromDataAttr=function(a){var b=$.trim(a.split(" ").join("")),c={},d=b.split(",");for(var e in d)A(c,d[e],null);return c},x.prototype.assignDataFromStorageToObj=function(a){var b,d=a,e=n.keys(d);for(b in e){var f=e[b],g=c.loadItem(f,{mode:this.settings.capture.mode});n.isObject(g)&&z(d[f],g)}return d},x.prototype.flatten=function(a,b){var c;for(c in b)n.isObject(b[c])?flatten(a,b[c]):a[c]=b[c]},x.prototype.fetchFlattenedValues=function(a){var b=a.data(this.settings.capture.attrNamespace),c=this.getKeysFromDataAttr(b),d={};return this.assignDataFromStorageToObj(c),this.flatten(d,c),d},x.prototype.extractDataToField=function(a){var b,d,e,f=a.data(this.settings.capture.attrNamespace);b=f.split("."),(d=c.loadItem(b[0],{mode:this.settings.capture.mode}))&&(b.length>1?(b.shift(),$.isNestedProp(d,b)&&(e=$.getDataFromObject(d,b))):e=d,e&&this._setInputValue(a,n.isObject(e)?JSON.stringify(e):String(e).replace(/\"/g,"")))},x.prototype.compressDataToSingleField=function(a){var b,c,d=this.fetchFlattenedValues(a),e=[];for(c in d)e.push('"'+c+"="+d[c]+'"');b=e.join(this.settings.capture.separator),a.val(n.escape(b))},x.prototype.extractDataToIndividualFields=function(a){var b,c,d=this.fetchFlattenedValues(a);for(b in d)c=a.clone(),c.attr({id:b,name:b,value:d[b]}),a.after(c);a.remove()},x.prototype.localizeDatePicker=function(){var a=$("html").attr("lang"),b=$("html").attr("lang").split("-")[0];N.each(n.bind(function(a,b){var c=$("#"+b),d=this.isTwoMonthCalendarEnabled(c);c.datepicker($.extend(this.settings.datepicker,d?{maxDate:this.getMaxDate(!1,d),numberOfMonths:2,hideIfNoPrevNext:!0,changeMonth:!1,changeYear:!1}:{})),c.closest(this.settings.selectors.datepickerContainer).toggleClass(this.settings.classes.twoMonthsCalendar,d),c.closest(this.settings.selectors.datepickerContainer).toggleClass(this.settings.classes.noRestrict,!c.data(this.settings.data.restrictDate))},this)),void 0!==$.datepicker.regional[a]?$.datepicker.setDefaults($.datepicker.regional[a]):void 0!==$.datepicker.regional[b]?$.datepicker.setDefaults($.datepicker.regional[b]):$.datepicker.setDefaults($.datepicker.regional[""])},x.prototype.restrictDatePicker=function(a,b,c){var d=ea?$.datepicker.noWeekends:null,e=this.getDateRestriction(a,b);b.datepicker("option",$.extend({beforeShowDay:d,minDate:a?e.minDate:c?"+0D":e.minDate,maxDate:this.getMaxDate(a,c,e)},c?{numberOfMonths:2,hideIfNoPrevNext:!0,changeMonth:!1,changeYear:!1}:{})),b.closest(this.settings.selectors.datepickerContainer).toggleClass(this.settings.classes.twoMonthsCalendar,c),d&&new h(b)},x.prototype.getDateRestriction=function(a,b){var c=new RegExp(/\+[0-9]+d/),d=b.data(this.settings.data.minDateDays),e=b.data(this.settings.data.maxDateDays);return c.test(d)||(d="+0D"),c.test(e)||(e="+3M"),!a&&ea&&(d="-36M",e="+36M"),{minDate:d,maxDate:e}},x.prototype.enableDatesByAjaxRequest=function(a,b,c,d){var e,f,g=this.getDateRestriction(a,b),h=b.parents(this.settings.selectors.formGroup).find(this.settings.selectors.datePickerDealerWarning),i=this.settings;this.settings.enableOpenDays=b.data("open-days")||!1,this.settings.nextDayBATD=b.data("next-d
26ay-batd")||!1,this.settings.remoteDate="",b.data(this.settings.data.availableDates,[]),b.data(this.settings.data.closedDates,[]),b.data("require-dealer")&&!this.settings.enableOpenDays&&(h.addClass(this.settings.classes.active),b.datepicker("option","disabled",!0),X.on("dealerWasSelected",function(){b.datepicker("option","disabled",!1),h.removeClass(this.settings.classes.active)})),this.settings.nextDayBATD&&(this.settings.nextToNextDay=!1,this.settings.$nextDayElement=b,f=this.getDealerIdForNextDayBATD(b),f&&0!==f.length?h.removeClass(this.settings.classes.active).addClass(this.settings.classes.hideCSS):h.addClass(this.settings.classes.active).removeClass(this.settings.classes.hideCSS),e=b.datepicker("getDate")||this.settings.remoteDate?new Date(this.settings.remoteDate):new Date,this.handleChangeMonth(e.getFullYear(),e.getMonth()+1,b,i.data.availableDates,i.data.closedDates,!0)),b.datepicker("option",$.extend({onChangeMonthYear:n.bind(function(a,c){this.handleChangeMonth(a,c,b,i.data.availableDates,i.data.closedDates,!1,d)},this),minDate:a?g.minDate:c&&!this.settings.nextDayBATD?"+0D":g.minDate,maxDate:this.getMaxDate(a,c,g),beforeShow:n.bind(function(a,c){var e=b.datepicker("getDate")||this.settings.remoteDate?new Date(this.settings.remoteDate):new Date;this.datePickerSettings(null,c),this.handleChangeMonth(e.getFullYear(),e.getMonth()+1,b,i.data.availableDates,i.data.closedDates,!1,d)},this),beforeShowDay:n.bind(function(a){return this.beforeShowDayHandler(b,a)},this)},c?{numberOfMonths:2,hideIfNoPrevNext:!0,changeMonth:!1,changeYear:!1}:{})),b.closest(this.settings.selectors.datepickerContainer).toggleClass(this.settings.classes.twoMonthsCalendar,c)},x.prototype.beforeShowDayHandler=function(a,b){var c,d,e,f,g,h,i,j,k,l,m,o=a.data("next-day-batd")||!1,p=a.data("datasourceDealerLocator");return o?(d=this.settings.remoteDate?new Date(this.settings.remoteDate):new Date,e=Date.UTC(d.getUTCFullYear(),d.getUTCMonth(),d.getUTCDate(),d.getUTCHours()+this.settings.constants.JapanTimeDifference,d.getUTCMinutes(),d.getUTCSeconds()),f=Date.UTC(d.getUTCFullYear(),d.getUTCMonth(),d.getUTCDate()+1,d.getUTCHours()+this.settings.constants.JapanTimeDifference,d.getUTCMinutes(),d.getUTCSeconds()),c=$.datepicker.formatDate("yy-mm-dd",b),g=q.getDateString(f),h=a.data(this.settings.data.closedDates)||[],j=q.getDateString(e),k=new Date(j),k.setHours(0,0,0),Math.floor((k-b)/864e5)>=0?[!1]:c===g?[this.checkNextDayAvailable(new Date(f))]:(i=!h.length||-1===h.indexOf(c),this.settings.nextToNextDay&&i?(this.settings.nextToNextDay=!1,[!1]):[i])):p?(c=$.datepicker.formatDate("yy-mm-dd",b),h=a.data(this.settings.data.closedDates)||[],l=a.data(this.settings.data.closedWeekDays)||[],m=b&&b.getDay(),0==m&&(m=7),i=!(h.length&&-1!==h.indexOf(c)||l.length&&-1!==l.indexOf(m)),[i]):n.isNull(a.data(this.settings.data.availableDates))?[!0]:(c=$.datepicker.formatDate("yy-mm-dd",b),[a.data(this.settings.data.availableDates).indexOf(c)>-1])},x.prototype.getAvailableDate=function(a){var b=new Date(this.settings.remoteDate);for(b.setHours(0,0,0);!this.beforeShowDayHandler(a,b)[0];)b.setDate(b.getDate()+1);return b},x.prototype.handleChangeMonth=function(a,b,c,d,e,f,g){var h=c.data("url"),i=c.data("open-days")||!1,j="01",k=("0"+b).slice(-2),l=a+"-"+k+"-"+j,m=i?this.getDealerIdForNextDayBATD(c):da,o=(ra.data.defaultDate&&new Date(c.data(ra.data.defaultDate)),c.data("datasourceDealerLocator"));if(o){if(!g)return c.prop("disabled",!0),!1;m=g}h+="/date/"+l+"/dealerId/"+m+"/data.json"+(i?"?"+(new Date).getTime():""),$.getJSON(h).done(n.bind(function(a,b,g){if(this.settings.remoteDate=g.getResponseHeader?g.getResponseHeader("Date")||g.getResponseHeader("date"):(new Date).toUTCString(),this.settings.dealerInfoData=a,o){var h=this.settings.data.closedWeekDays;!a||n.isEmpty(a)?(c.data(d,null),c.data(e,null)):i?c.data(e,E(a)).data(d,null).data(h,F(a)):c.data(d,D(a).dates).data(e,null)}else f?(a&&a.testDrive&&a.testDrive.lateRequests.available&&c.data("next-day-batd")&&c.datepicker("option",{minDate:"+0D"}),c.data(e,E(a)).data(d,null)):!a||n.isEmpty(a)?(c.data(d,null),c.data(e,null)):i?c.data(e,E(a)).data(d,null):c.data(d,D(a).dates).data(e,null)},this)).fail(n.bind(function(a,b,f){this.settings.remoteDate=a.getResponseHeader?a.getResponseHeader("Date")||a.getResponseHeader("date"):(new Date).toUTCString(),c.data(e,null),c.data(d,null)},this)).always(n.bind(function(){if(this.isTwoMonthCalendarEnabled(c)){var a=c.data("datepicker");a.drawMonth=(new Date).getMonth()+a.settings.showCurrentAtPos}if(c.datepicker("refresh"),f){var b=this.isEarliestDateWithinClosedDates(c);c.datepicker("option",{minDate:b}).datepicker("setDate",this.getAvailableDate(c)),this.setHiddenInputDate(c)}n.delay(n.bind(function(){$(".ui-datepicker-days-cell-over.ui-datepicker-unselectable.ui-state-disabled.ui-datepicker-today").removeClass("ui-datepicker-days-cell-over")},this),0)},this))},x.prototype.isEarliestDateWithinClosedDates=function(a){var b=a.data("minDateDays"),c=parseInt(b),d=new Date,e=d.getDate(),f=new Date(d.setDate(e+c)),g=$.datepicker.formatDate("yy-mm-dd",f),h=a.data("closedDates");if(c&&h&&h.length){for(;h.includes(g);){var i=new Date(g);i.setDate(i.getDate()+1),g=$.datepicker.formatDate("yy-mm-dd",i),c++}b="+"+c+"d"}return b},x.prototype.validateNextDaySubmit=function(){if(!this.settings.$nextDayElement.length)return!1;var a,b,c,d,e=this.settings.$nextDayElement.parents(".form-group"),f=e.find(".error-message"),g=this.settings.$nextDayElement.data("next-d
26ay-batd-error")||"",h=this.settings.selectors.htmlBody,i=this.settings.errorHandling.animateTimeLength,j=this.settings.errorHandling.animateStart,k=this.settings.$nextDayElement.data("url"),l=this.getDealerIdForNextDayBATD(this.settings.$nextDayElement);return k+="/date/"+$.datepicker.formatDate("yy-mm-dd",new Date)+"/dealerId/"+l+"/data.json",$.ajax({dataType:"json",url:k,async:!1,cache:!1,timeout:3e3}).always(n.bind(function(k,l,m){k=k.getResponseHeader?k:m.getResponseHeader?m:{},this.settings.remoteDate=k.getResponseHeader?k.getResponseHeader("Date")||k.getResponseHeader("date"):(new Date).toUTCString(),c=this.settings.$nextDayElement.datepicker("getDate"),d=new Date(Date.UTC(c.getFullYear(),c.getMonth(),c.getDate(),0,0,0)),this.checkNextDayAvailable(d)?(e.removeClass("error"),this.settings.$nextDayElement.removeClass("error"),b=!0):(0===f.size()?(a=$('<span class="error-message">'+g+"</span>"),this.settings.$nextDayElement.parent().append(a)):f.text(g),e.addClass("error"),this.settings.$nextDayElement.addClass("error"),setTimeout(function(){$(h).animate({scrollTop:e.offset().top},i)},j),b=!1)},this)),b},x.prototype.checkNextDayAvailable=function(a){var b,c,d,e,f=this.settings.dealerInfoData||null,g=new Date(this.settings.remoteDate),h=new Date(Date.UTC(g.getUTCFullYear(),g.getUTCMonth(),g.getUTCDate(),g.getUTCHours()+this.settings.constants.JapanTimeDifference,g.getUTCMinutes(),g.getUTCSeconds())),i=new Date(Date.UTC(g.getUTCFullYear(),g.getUTCMonth(),g.getUTCDate()+1,g.getUTCHours()+this.settings.constants.JapanTimeDifference,g.getUTCMinutes(),g.getUTCSeconds()));return!f||(f.testDrive&&f.testDrive.lateRequests?!!f.testDrive.lateRequests.available&&(b=f.testDrive.lateRequests.cutOffTime||"",c=n.object(["hour","min"],b.split(":")),d=q.getUTCDiffTime(this.settings.remoteDate,c.hour,c.min),-1===E(f).indexOf(q.getDateString(i))||-1===E(f).indexOf(q.getDateString(h))&&!d.cutOffExpired||(this.settings.nextToNextDay=!0),e=-1===E(f).indexOf(q.getDateString(h))&&-1===E(f).indexOf(q.getDateString(i)),e?e=a>i||q.getDateString(i)===q.getDateString(a)&&!d.cutOffExpired:a>i&&(e=!0),e):-1==E(f).indexOf(q.getDateString(i)))},x.prototype.getDealerIdForNextDayBATD=function(a){var b=a.data("dealerSource"),c=a.data("dealerKey");return"requestVariable"===b?B(c):"browser"===b?C(c):void 0},x.prototype.resizeDatepicker=function(){M.each(n.bind(function(a,b){var c=$(b).data(this.settings.data.isRestrictionFlexible),d=$(b).hasClass(this.settings.classes.selectionActive);(!c||c&&!d)&&$(b).datepicker(this.settings.classes.hideCSS)},this))},x.prototype.isElementInViewport=function(a){var b
27;return"function"==typeof jQuery&&a instanceof jQuery&&(a=a[0]),b=a.getBoundingClientRect(),b.top>=0&&b.left>=0&&b.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&b.right<=(window.innerWidth||document.documentElement.clientWidth)},x.prototype.datePickerSettings=function(a,b){var c,d,e,f,g,h,i,j;$(window).height(),c=$(window).scrollTop(),h=$("#"+b.id),h&&h.addClass("select"),f=b.dpDiv,d=parseInt(h.css("height"),10),e=h.position(),g=e.top+d,i=(new Date).getMonth()+1,j=this.settings.HELIOS&&this.settings.HELIOS.components.c_019_31&&this.settings.HELIOS.components.c_019_31.rtb,setTimeout(function(){var a=c+f.outerHeight();f.css({position:"absolute",top:g,left:0,"z-index":10}),this.isElementInViewport(f)||j||(f.hasClass(this.settings.classes.multiDatePicker)&&(a=f.parent(this.settings.selectors.datepickerContainer).offset().top),$("html, body").animate({scrollTop:a})),s.ADATrap(f)}.bind(this),10),this.isTwoMonthCalendarEnabled(h)&&(h.val()&&b.selectedMonth+1!==i?h.datepicker("option","showCurrentAtPos",1):h.datepicker("option","showCurrentAtPos",0)),h.prop("disabled",!0),h.before($.datepicker.dpDiv),this.settings.HELIOS&&this.settings.HELIOS.components.c_019_31&&this.settings.HELIOS.components.c_019_31.rtb&&(h.parents(this.settings.selectors.realTimeBookingContainer).addClass(this.settings.classes.rtbCalendarOpen),document.getElementById(this.settings.id.datePickerErrorSlot)&&null!=document.getElementById(this.settings.id.datePickerErrorSlot)&&(h.parents(this.settings.selectors.formGroup).removeClass(this.settings.classes.error),h.parents(this.settings.selectors.realTimeBookingContainer).find('span[id^="#date-picker-errorslot"]').remove()),h.prop("disabled",!1),this.analyticsSlotPickerClicked())},x.prototype.displayTimepickerErrors=function(){var a=Q.css("width");Q.siblings(this.settings.selectors.errorMessage).css("width",a)},x.prototype.hideTimepickerErrors=function(){Q.parents(this.settings.selectors.formGroup).removeClass("error")},x.prototype.datePickerClose=function(a,b){var c=$("#"+b.id);$(c).hasClass(this.settings.classes.selectionActive)&&$(c).removeClass(this.settings.classes.selectionActive),c.blur(),c.removeClass("select"),c.prop("disabled",!1),c.closest(this.settings.selectors.datepickerContainer).find(".ui-datepicker-trigger").focus(),this.settings.HELIOS&&this.settings.HELIOS.components.c_019_31&&this.settings.HELIOS.components.c_019_31.rtb&&c.parents(this.settings.selectors.realTimeBookingContainer).removeClass(this.settings.classes.rtbCalendarOpen)},x.prototype.resetDate=function(a){var b=$(a.currentTarget),c=b.parent().find(this.settings.selectors.datePicker);a.preventDefault(),!0===sa||!0===ta?c.val(this.settings.datepicker.dateFormat):$.datepicker._clearDate(c),b.removeClass(this.settings.classes.showCSS),b.parent().removeClass(this.settings.classes.complete),b.parent().closest(this.settings.selectors.formGroup).removeClass(this.settings.classes.complete)},x.prototype.isTwoMonthCalendarEnabled=function(a){return a.closest(this.settings.selectors.datepickerContainer).data(this.settings.data.enableTwoMonth)},x.prototype.datePickerSelect=function(a,b){var c=$("#"+b.id),d=c.parent();d.find(this.settings.selectors.resetDate).addClass(this.settings.classes.showCSS),d.addClass(this.settings.classes.complete),d.closest(this.settings.selectors.formGroup).addClass(this.settings.classes.complete),this.setHiddenInputDate(c),void 0!==HELIOS.components.c_019.timePickerType&&this.restrictPastTime(c),d.find("#"+b.id+"-hidden").trigger("change"),c.hasClass(this.settings.classes.error)&&d.removeClass(this.settings.classes.error).siblings(this.settings.selectors.errorMessage).remove()},x.prototype.setHiddenInputDate=function(a){var b=a.datepicker("getDate"),c=$.datepicker.formatDate("yy-mm-dd",b),d=a.attr("id")+"-hidden";$("#"+d).val(c)},x.prototype.restrictPastTime=function(a){var b,c,d=a.datepicker("getDate");HELIOS.components.c_019.datepicker={selectedDate:d};var e=new Date;e.setHours(0),e.setMinutes(0),e.setSeconds(0),b={hour:HELIOS.components.c_019.timePickerType.minTime.hour,minute:HELIOS.components.c_019.timePickerType.minTime.minute},c=I.find(this.settings.selectors.timePicker),Date.parse(e)===Date.parse(d)&&Number(b.hour)<(new Date).getHours()?(0!=(new Date).getMinutes()?(new Date).getMinutes()<45?c.timepicker("option","minTime",{hour:(new Date).getHours().toString(),minute:15*(Math.floor((new Date).getMinutes()/15)+1)}):c.timepicker("option","minTime",{hour:((new Date).getHours()+1).toString(),minute:"0"}):c.timepicker("option","minTime",{hour:(new Date).getHours().toString(),minute:"15"}),this.resetTimePickerValue(c)):Date.parse(e)!==Date.parse(d)&&(c.timepicker("option","minTime",b),this.resetTimePickerValue(c))},x.prototype.resetTimePickerValue=function(a){a[0].hasAttribute("placeholder")?a.val(""):a.val(a.attr("placeholder")),a.parent().removeClass("conplete"),a.parent().closest(".form-group").removeClass("complete"),a.siblings(".time-close").removeClass("show"),this.resetTimePickerValueAll(a)},x.prototype.resetTimePickerValueAll=function(a){var b=a.parent(),c=b.find(".time-picker-start").val();""===a.find(".time-picker-end").val()&&""===c&&$(".time-picker-start,.time-picker-end").timepicker("option",{maxTime:{hour:HELIOS.components.c_019.timePickerType.maxTime.hour,minute:HELIOS.components.c_019.timePickerType.maxTime.minute}})},x.prototype.displayDatepickerErrors=function(){var a=M.css("width");M.siblings(this.settings.selectors.errorMessage).css("width",a)},x.prototype.hideDatepickerErrors=function(a){a.parents(this.settings.selectors.formGroup).removeClass(this.settings.classes.error)}
27,x.prototype.analyticsSlotPickerClicked=function(){var a=this.settings.analyticsManager.trackingVars.search,b=this.settings.analyticsManager.getTrackingObjectProperties(a),c={};c[b.componentId]=this.settings.analytics.componentIdRtb,c[b.action]=this.settings.analytics.action,c[b.searchType]=this.settings.analytics.searchType,c[b.searchTerm]=this.settings.analytics.searchTerm,this.settings.analyticsManager.track(a,c)},x.prototype.prepopulateProfileData=function(){var a=this;v.getProfileData().then(function(b){a.resolvePrePopPromises(b)},function(b){a.trackProfileDataError()})},x.prototype.prepopulateRAQData=function(){var a=$('input[name="enquiryComments"]');a.length&&v.getRAQData().then(function(b){a.val(b)})},x.prototype.trackProfileDataError=function(){$(this.defaults.id.myPagePrepopulateData).addClass(this.defaults.classes.showCSS);var a=this.settings.analyticsManager.trackingVars.errorDisplayed,b={componentId:this.defaults.componentId,errorMessage:this.defaults.analytics.profileErrorMessage};this.settings.analyticsManager.track(a,b)},x.prototype.resolvePrePopPromises=function(a){var b=this;$(this.settings.selectors.dataPrePopulationStorageKey).each(n.bind(function(c,d){var e=$
27(d);a.hasOwnProperty(e.data(this.settings.data.storageKey))&&!e.parents(".dropdown-group").length&&("select"===e.prop("nodeName").toLowerCase()?"function"==typeof prepopulateDropdown?prepopulateDropdown(e,a):b.prepopulateDropdown(e,a):e.is(":checkbox")?e.prop("checked",a[e.data(this.settings.data.storageKey)]):e.val(a[e.data(this.settings.data.storageKey)]),e.closest(this.settings.selectors.addressComponent).length>0&&$(document).trigger(this.settings.events.prepopulate))},this))},x.prototype.prepopulateFormFields=function(){var a,b,c,d=$.Deferred();return I.find(this.settings.selectors.dataPrePopulationUrl)&&(a=I.find(this.settings.selectors.dataPrePopulationUrl).data("prepopulationUrl")),$(this.settings.selectors.dropdownCustomSelectbox).each(function(){$(this).siblings("span.selectedValue").html($(this).find("option:selected").html())}),g.init(),g.getSavedData(a).done(n.bind(function(e){b=this.getHolesInPrepopData(e),$.isEmptyObject(b)?(this.resolvePrePopPromises(e),d.resolve()):g.getDataFallback(a,b).done(n.bind(function(a){c=$.extend({},e,a),this.resolvePrePopPromises(c),this.checkLoginSuccess()},this)).always(d.resolve)},this)).fail(d.resolve),d},x.prototype.extractQueryStrDataToForm=function(){var a,b,c,d,e;a=o.getUrlParams(),d=[],e="data-request-variable",n.isEmpty(a)?H.info("[extractQueryStrDataToForm]: No query string data available"):(b=I.find("input["+e+"], select["+e+"], textarea["+e+"]").filter(function(b,e){return c=$(e).data("request-variable"),!n.isUndefined(a[c])&&(d.push(c),!0)}),b.length?$.each(b,n.bind(function(b,c){this._setInputValue(c,a[d[b]])},this)):H.info("[extractQueryStrDataToForm]: No form fields matching query string data"))},x.prototype._setInputValue=function(a,b){var c,d,e;if(n.isUndefined(b))H.warn("[_setInputValue]: Value to be set is undefined");else switch(d=$(a),c=d.prop("type"),e=b,c){case"text":d.val(e),d.attr("id").includes(this.settings.constants.numberPlateLookUp)&&d.valid();break;case"hidden":case"textarea":d.val(e);break;case"select-one":if(d.find('option[value="'+e+'"]').length)d.val(e).trigger(this.settings.events.globalChange);else if($(this.settings.selectors.c_019_37).length&&(e.includes(",")||(e=Number(e).toLocaleString(HELIOS.config.common.locale)),d.find("option:contains("+e+")").length)){var f=d.find("option:contains("+e+")").index();d.find("option:eq("+f+")").prop("selected",!0).trigger(this.settings.events.globalChange)}break;case"checkbox":case"radio":e=n.contains(["1","true",!0,"checked"],b),d.prop("checked",e).trigger("change");break;default:H.warn("[_setInputValue]: No matched prop type for element")}},x.prototype.getHolesInPrepopData=function(a){var b={};return $(this.settings.selectors.dataPrePopulationStorageKey).each(n.bind(function(c,d){a.hasOwnProperty($(d).data(this.settings.data.storageKey))||(b[$(d).data(this.settings.data.storageKey)]="SERVER_STORAGE")},this)),b},x.prototype.loadMapAfterSubmitIfRequiredAndEmpty=function(){var a,b,c,d,e;if(void 0!==W&&"undefined"!==W.map){var f=W.map,g=f.map.center;X=I.find(this.settings.selectors.dealerLocator),L=I.find(this.settings.selectors.findADealerAccordion),!0===window.useAmericas&&L.toggleClass(this.settings.classes.showCSS),W.get(this.settings.dealerMap.initialized)||W.init(),L.hasClass(this.settings.classes.showCSS)||W.refreshView(this.settings.dealerMap.map),f.refresh(),f.mapSettings.showApiResultsOnly&&g&&(d=g.lat(),e=g.lng(),f.map.setCenter({lat:d,lng:e}),f.map.setZoom(f.mapSettings.zoom/2)),$.each(f.clusteredMarkers.markers_,function(a,b){google.maps.event.addListener(b,ra.events.click,this._onDealerSelection)}),$(this.settings.selectors.map).on(this.settings.events.dealerSelected,n.bind(function(){this._onDealerSelection()},this)),va&&this.dealerPrePopHandler(),X.length&&this.setupDealerLocator(X)}a=I.find(this.settings.selectors.selectADealerButton),b=a.parent(),(c=b.hasClass(this.settings.classes.required))&&(I.find(this.settings.selectors.dealerSelectorSectionError).val(),L=I.find(this.settings.selectors.findADealerAccordion),L.addClass(this.settings.classes.showCSS),I.find(this.settings.selectors.dealerSelectorSection).addClass(this.settings.classes.expanded))},x.prototype.saveFormData=function(){var a,b,c,d={};return I.find(this.settings.selectors.dataPrePopulationUrl)&&(c=I.find(this.settings.selectors.dataPrePopulationUrl).data("prepopulationUrl")),$(this.settings.selectors.dataPrePopulationStorageKey).each(n.bind(function(c,e){var f=$(e);a=f.data(this.settings.data.storageKey),b=f.is(":checkbox")?f.is(":checked"):f.val(),d[a]=b},this)),g.saveData(d,c)},x.prototype.selectDeselectCheckbox=function(a){a.type===this.this.settings.forms.checkbox&&(!0===a.checked?a.checked=!1:a.checked=!0)},x.prototype.saveFormCount=function(){var a,b,d=c.loadItem(this.settings.analytics.analyticsSession,this.defaults.storageManagerSessionStorage),e=I.data(this.settings.data.formName),f=I.data(this.settings.data.formCategory),g=I.data(this.settings.data.formType);a=d?d.formCount+1:1,b={formCount:a,formName:e,formCategory:f,formType:g},c.saveItem(this.settings.analytics.analyticsSession,b,this.defaults.storageManagerSessionStorage)},x.prototype.getShowroomIdReadable=function(a){var b;return a&&(b="<b>"+a.slice(0,4)+" "+a.slice(4,8)+"</b>"),b},x.prototype.resolveShowroomCodeText=function(a,b,c){var d,e=a;e&&e.length&&(d=this.resolveShowroomCodeTitleText(e.next(),b),d.indexOf(b)>-1&&e.next().html(d),e.val()&&"false"!=e.val()?e.val(c):e.val(""),e.on(ra.events.click,function(){$(this).is(":checked")?$(this).val(c):$(this).val("")}
27))},x.prototype.resolveShowroomCodeTitleText=function(a,b){var c,d=a;return d.length&&(c=d.text().replace(new RegExp(this.settings.constants.showroomCode,"g"),b)),c},x.prototype.personalShowroomCatalogCode=function(){var a,b,d,e,f,g=I.find(this.settings.selectors.personalShowroomCatalogCode),h=I.find(this.settings.selectors.personalShowroomFormTitle),i=I.find(this.settings.selectors.personalShowroomFormSubTitle),j=g.parent(this.settings.selectors.AEMeditMode).length,k=!0;c.loadItem(this.settings.constants.showroomKey,this.defaults.storageManagerSessionStorage)?(a=c.loadItem(this.settings.constants.showroomKey,this.defaults.storageManagerSessionStorage),b=a&&a.catalog&&a.catalog.code?a.catalog.code:"",f=this.getShowroomIdReadable(b)?this.getShowroomIdReadable(b):"",this.resolveShowroomCodeText(g,f,b)):c.loadItem(this.settings.constants.showroomKey,this.defaults.storageManagerLocalStorage)?(a=c.loadItem(this.settings.constants.showroomKey,this.defaults.storageManagerLocalStorage),b=a&&a.catalog&&a.catalog.code?a.catalog.code:"",f=this.getShowroomIdReadable(b)?this.getShowroomIdReadable(b):"",this.resolveShowroomCodeText(g,f,b)):j||(k=!1,b="",f=""),k&&g.length&&g.siblings(this.defaults.forms.label).addClass(this.defaults.classes.hasCatalogCode),h.length&&(d=this.resolveShowroomCodeTitleText($(h[0]),f),d.indexOf(f)>-1&&$(h[0]).html(d)),i.length&&(e=this.resolveShowroomCodeTitleText(i,f),e.indexOf(f)>-1&&i.html(e))},x.prototype.personalShowroomOverlayForms=function(){var a=I.find(this.settings.selectors.personalShowroomFormSubTitle),b=a.text(),d="",e=c.loadItem(this.settings.constants.showroomModelNameStorageKey,this.defaults.storageManagerLocalStorage)||"";b.indexOf(this.settings.constants.showroomModelName)>-1&&(d=b.replace(new RegExp(this.settings.constants.showroomModelName,"g"),e),a.html(d))},x.prototype.personalShowroomVehiclesForAnalytics=function(){na=c.loadItem(this.settings.constants.showroomVehicleDetailStorageKey,this.defaults.storageManagerLocalStorage),c.deleteItem(this.settings.constants.showroomVehicleDetailStorageKey,this.defaults.storageManagerLocalStorage)},x.prototype.getMaxDate=function(a,b,c){var d=this.getMaxDateOfNextMonth(a,c&&c.minDate?parseInt(c.minDate):null),e=c&&c.maxDate?parseInt(c.maxDate):null;if(a){if(b)return e>d?d:c.maxDate}else if(b)return d;return c.maxDate},x.prototype.getRestrictDateInstance=function(a){var b=new Date,c=b.getDate(),d=b.getMonth(),e=b.getFullYear(),f=this.getAllDatesOfMonth(d+1,e),g=c+a;return g>f&&(g=a),new Date(e,d,g)},x.prototype.getAllDatesOfMonth=function(a,b){var c;return a<=7?2==a?(c=29==new Date(b,1,29).getDate(),28+(c?1:0)):1&a?31:30:1&a?30:31},x.prototype.getMaxDateOfNextMonth=function(a,b){var c=a?this.getRestrictDateInstance(b):new Date,d=c.getDate(),e=c.getMonth()+1,f=12==e?1:e+1,g=c.getFullYear();return this.getAllDatesOfMonth(e,g)+this.getAllDatesOfMonth(f,g)-d+(a?b:0)},x.prototype.trackServiceBookingModelDropdown=function(a,b){var c=this.settings.analyticsManager.trackingVars.vehicleSelector,d=this.settings.analyticsManager.getTrackingObjectProperties(c),e={};e[d.componentId]=this.settings.componentId,e[d.parentComponent]=this.settings.componentId,e[d.selectDropdown]=this.settings.analytics.selectDropdown,e[d.selectModel]=a,e[d.vehicleModel]=a,b||this.settings.analyticsManager.track(c,e)},x.prototype.populateSignatureAndPageUrlHiddenFields=function(){var a,b=window.location.search.replace("?",""),c=null,d=null,e=decodeURIComponent(window.location.href);b.length&&(a=b.length?b.split("&"):[],a.length&&n.each(a,n.bind(function(a,b){var d=a.split("=");d[0]===this.settings.constants.signature&&d[1].length&&(c=decodeURIComponent(d[1]))},this))),c&&(d=-1!==e.indexOf("?signature="+c+"&")?e.replace("?signature="+c+"&","?"):-1!==e.indexOf("&signature="+c+"&")?e.replace("&signature="+c+"&","&"):-1!==e.indexOf("?signature="+c)?e.replace("?signature="+c,""):-1!==e.indexOf("&signature="+c)?e.replace("&signature="+c,""):e,I.find(this.settings.selectors.signatureHiddenInput).val(c)),d&&I.find(this.settings.selectors.pageUrlHiddenInput).val(d)},x.prototype.trackServerErrorMessageLinkVisit=function(a,b){var c=this.settings.analyticsManager.trackingVars.genericClick,d=this.settings.analyticsManager.getTrackingObjectProperties(c),e={};e[d.componentId]=this.settings.componentId,e[d.locationInPage]=this.settings.analytics.serverErrorCta,e[d.destination]=a,e[d.buttonText]=b,this.settings.analyticsManager.track(c,e)},x.prototype.saveCheckboxDataInObject=function(){var a,b,c={},d=[],e=$(this.settings.selectors.c_019_36_checkboxGroup),f=$(this.settings.selectors.c_019_36_selectedCheckbox);f.each(n.bind(function(b,e){a=$(e).attr(this.settings.attributes.name),$(e).hasClass(this.settings.classes.c_019_36_periodicServiceCheck)?c[a]=$(this.settings.selectors.c_019_36_periodicService).val():$(e).hasClass(this.settings.classes.c_019_36_otherServiceList)?(d.push($(e).val()),c[a]=d.join(",")):c[a]=$(e).val()},this)),e.prop(this.settings.attributes.disabled,!0),b=$.isEmptyObject(c)?"":J
27SON.stringify(c),$(this.settings.selectors.c_019_36_serviceType).val(b),$(this.settings.selectors.c_019_36_serviceTypeEncoded).val(b)},x.prototype.updateLinkedDropdown=function(a){if(0==Ba.length){var b=this.settings.attributes.responsiveChildSelector;$(this.settings.attributes.targetDropdown).each(function(){if($(this).closest("["+b+"]").attr(b)){var a={itemAllOptions:$(this).html()};Ba.push(a)}})}var c=0,d=this.settings.attributes.linkedDropdownCriteria,e=this.settings.selectors.spanSelectedValue,f=this.settings.classes.visuallyHidden,g=this.settings.classes.linkedElement,h=this.settings.classes.hidden;$(this.settings.attributes.targetDropdown).each(function(){var b='<option selected="selected" value="">'+$("select["+d+"] option").eq(0).html()+"</option>",i=$(this).attr(d);if(void 0!==i&&!1!==i&&""!==i&&"[]"!==i){var j=JSON.parse($(this).attr(d)),k=j.find(function(b){return b.key==a});k?k.options.forEach(function(a){b+='<option value="'+a+'" >'+a+"</option>"}):b=Ba[c]?Ba[c].itemAllOptions:b,$(this).html(b);var l=$(this).parent().find("."+f).html();$(this).parent().find(e).html(l),$(this).parent().parent().next("."+g).length>0&&$(this).parent().parent().next("."+g).addClass(h)}c++})},x.prototype.enableLinkedElement=function(a){var b=a.value,c=a.getAttribute(this.settings.attributes.linkedElementCriteria);void 0!==c&&!1!==c&&"{}"!==c&&"[]"!==c&&(c=JSON.parse(c),""!==b&&c.includes(b)?$(a).parent().parent().next("."+this.settings.classes.linkedElement).removeClass(this.settings.classes.hidden):$(a).parent().parent().next("."+this.settings.classes.linkedElement).addClass(this.settings.classes.hidden))},x.prototype.enableAddressLookout=function(){var a=this,b=I.find(this.settings.selectors.dataAddressLookup).first(),c=I.find(this.settings.selectors.searchResultsList),d="https://ws1.postescanada-canadapost.ca/addresscomplete/interactive/",e="WN42-UF94-YW33-GD89",f=d+"find/v2.10/json3.ws",g=d+"retrieve/v2.11/json3.ws",h=function(a){return(a.Items||[]).map(function(a){return{id:a.Id,text:a.Text,next:a.Next,description:a.Description,fullText:a.Text+" "+a.Description}})},i=function(a){var b=n.first(a.Items)||{};return{id:b.Id,city:b.City,line1:b.Line1,street:b.Street,unit:b.SubBuilding,province:b.Province,fullAddress:b.Label,postalCode:b.PostalCode,provinceName:b.ProvinceName,buildingNumber:b.BuildingNumber}},j=function(a){c.empty(),a.length&&(b.attr("aria-expanded",!0),a.forEach(function(a){var b=$("<li></li>");b.append(document.createTextNode(a.fullText)),b.attr({id:a.id,role:"option","aria-selected":!1,"data-next":a.next,"data-value":a.fullText}),c.append(b)}))},k=function(c){var d=HELIOS.config.common.locale,e=d.includes("fr-"),f=e?a.settings.selectors.city.replace("City","Ville"):a.settings.selectors.city,g=e?a.settings.selectors.unit.replace("Unit","Unité"):a.settings.selectors.unit,h=e?a.settings.selectors.unit.replace("Unit","Appartement"):"",i=e?a.settings.selectors.postalCode.replace("Postal Code","Code postal"):a.settings.selectors.postalCode,j=I.find(f).parent().find("input"),k=I.find(g).parent().find("input"),l=I.find(h).parent().find("input"),m=I.find(i).parent().find("input"),n=I.find(a.settings.selectors.province).parent().find("select"),o=c.buildingNumber+" "+c.street;j.val(c.city).blur(),k.length&&k.val(c.unit).blur(),l.length&&l.val(c.unit).blur(),b.val(o),n.val(c.province).change(),m.val(c.postalCode).blur()},l=n.debounce(function(a,b){$.ajax({url:f,type:"GET",dataType:"json",data:{key:e,searchTerm:b?"":a,lastId:b||void 0,searchFor:"Everything",country:"CAN",languagePreference:"en",maxSuggestions:7,maxResults:100,provider:"AddressComplete",package:"Interactive",service:"Find",version:"2.1",endpoint:"json3.ws"}}).done(function(a){var b=h(a);j(b)})},500),m=function(a){c.removeClass("open"),b.attr("aria-expanded",!1),$.ajax({url:g,type:"GET",dataType:"json",data:{key:e,id:a,provider:"AddressComplete",package:"Interactive",service:"Retrieve",version:"2.11",endpoint:"json3.ws"}}).done(function(a){var b=i(a);k(b)})},o=function(a){a.target.value.length<2||l(a.target.value)},p=function(a){var b=a.target.getAttribute("id"),d=a.target.getAttribute("data-next");if(b){if(c.find("li").attr("aria-selected",!1),c.find(a.target).attr("aria-selected",!0),"Find"===d)return l(void 0,b);m(b)}};b.on(this.settings.events.input,o),c.on(this.settings.events.click,p),b.on(this.settings.events.focus,function(){c.addClass("open")}),b.on(this.settings.events.blur,function(a){c.is(a.relatedTarget)||$.contains(c,a.relatedTarget)||c.removeClass("open")})},x}),define("c_019_20",["underscore","remoteServices"],function(a,b){"use strict";function c(a,b){this.settings=$.extend({},k,b),this.defaults=k,this.$el=a,this.init(b)}var d,e,f,g,h,i,j,k={events:{blur:"blur",click:"click"},classes:{error:"error",complete:"complete"},selectors:{root:".c_019-20",emailCap:".cap-email",emailCapCode:".validation-code",emailCapMessage:".validation-message",submitForm:"[type=submit]",formParent:"form",errorMessage:".error-message"},data:{validationInvalidEmail:"validation-invalid-email",validationError:"validation-error",invalidEmail:"invalidEmail",externalError:"externalError"}},l=HELIOS.config.common.api.apigee.url;
27return i=null,c.prototype.init=function(a){if(d=$(this.settings.selectors.root),!d.length)return!1;e=$(this.settings.selectors.emailCap,d),f=$(this.settings.selectors.emailCapCode,d),g=d.parents(this.settings.selectors.formParent),h=$(this.settings.selectors.submitForm,g),j=/\/$/.test(l)?l:l+"/",j+="v2/utils/emailAddress/validation",this.bindEvents()},c.prototype.bindEvents=function(){e.on(this.settings.events.blur,a.bind(this.callServiceCAP,this)),h.on(this.settings.events.click,a.bind(this.callServiceCAP,this))},c.prototype.callServiceCAP=function(){if(""!==e.val().trim()){var c;c=b.executeWithParams({ajaxSettings:{type:"GET",dataType:"json"},url:j+"?emailAddress="+e.val().trim()}),c.always(a.bind(function(a,b,c){200===c.status?this.passedValidation(a):400===a.status?this.showErrorValidation(i.data.invalidEmail):this.showErrorValidation(i.data.externalError)},this))}},c.prototype.passedValidation=function(a){f.val(a.score),d.removeClass(this.settings.classes.error)},c.prototype.showErrorValidation=function(a){var b;b=a===this.settings.data.invalidEmail?d.data(this.settings.data.validationInvalidEmail):d.data(this.settings.data.validationError),$(this.settings.selectors.errorMessage).text(b),d.addClass(this.settings.classes.error),f.val("")},c}),define("c_019_22",["underscore","c_008","googleMapsSingleton","heliosObject","c_152_0_autocomplete"],function(a,b,c,d,e){"use strict";function f(a,b){return this.settings=$.extend({},l,b),this.defaults=l,this.$el=a,this.init(b)}var g,h,i,j,k="c_019-22",l={selectors:{root:".c_019-22",addressField:".address-field",manualAddressLink:".manual-address-link",placesLink:".places-link",formAddress:".form-address",tooltipTriggers:".has-tooltip",addressContainer:".address-lookup-container",formGroup:".form-group",formFields:".manual-address-enter input[type=text]",placeService:".place-service",suggestions:".autocomplete-suggestions",countrySelect:".country-select",modalOpen:".modal.open"},classes:{active:"active",error:"error"},events:{prepopulate:"prepopulatedForm",initialized:"initialized",complete:"complete",change:"change",open:"open",close:"close",placeChanged:"place_changed",click:"click."+k,input:"input."+k,focus:"focus."+k,blur:"blur."+k,keypress:"keypress."+k},apiEvents:{geolocation:"geolocation",submit:"submit",input:"input",initialized:"initialized",change:"change"}
27,atts:{initialized:"initialized",defaultText:"defaultText",wasGeoText:"wasGeoText",autocomplete:"autocomplete",open:"open"},data:{mappingUrl:"mapping-url",relatedSection:"related-section"},window:"window"},m="#c19_22_",n={autocomplete:{countryCode:d.config.common.countryCode,matchMediaTest:d.config.common.mediaQuery.is.small,smallOrMedium:d.config.common.mediaQuery.is.smallOrMedium,exclude:[""],maxHeight:!1}};return f.prototype.init=function(c){var d,e;return g=$(this.settings.selectors.root),!!g.length&&(d=$(this.settings.selectors.tooltipTriggers),g.find(this.settings.selectors.addressField),h=g.find(this.settings.selectors.manualAddressLink),i=g.find(this.settings.selectors.addressContainer),e=this.initGoogleAutocomplete(),b.createTooltips(d),this.bindEvents(),j=new this.GeoCoderService(this.settings),$.ajax({url:g.data(this.defaults.data.mappingUrl),type:"GET",dataType:"json"}).done(a.bind(this.ajaxDone,this)).fail(a.bind(this.ajaxFail,this)),e)},f.prototype.initGoogleAutocomplete=function(){$(this.$el).length>1&&(g=$(this.$el.context.activeElement).find(this.settings.selectors.root));var a,b=g.data(k);return b instanceof this.GeolocAutocomplete||(a={settings:this.settings,defaults:this.defaults,$el:this.$el},b=new this.GeolocAutocomplete(g,a).init(),g.data(k,b)),b},f.prototype.bindEvents=function(){var b=g.find(this.settings.selectors.placesLink);g.find(this.settings.selectors.addressField);h.on(this.settings.events.click,a.bind(this.toggleAddressForm,this)),b.on(this.settings.events.click,a.bind(this.toggleAddressForm,this)),$(document).on(this.settings.events.prepopulate,a.bind(this.showManualAddress,this)),$(this.settings.selectors.countrySelect).on(this.settings.events.change,function(){g.data(k).autocomplete.setCountryRestriction(this.value)})},f.prototype.toggleAddressForm=function(a){var b=$(a.target),c=b.data(this.defaults.data.relatedSection);a.preventDefault(),g.find(this.settings.selectors.formAddress).removeClass(this.settings.classes.active),g.find("."+c).addClass(this.settings.classes.active)},f.prototype.showManualAddress=function(){h.click()},f.prototype.ajaxDone=function(a){j.mapping=a,i.removeClass(this.settings.classes.error)},f.prototype.ajaxFail=function(a){i.addClass(this.settings.classes.error)},f.prototype.GeoCoderService=function(b){return this.settings=a.extend({},l,b),c.getDeferred().done($.proxy(function(){void 0!==b.window.google&&b.window.google.maps&&b.window.google.maps.Geocoder&&b&&this.init(b)},this)),this},f.prototype.GeoCoderService.prototype={mapping:null,init:function(){this.geocoder=new google.maps.Geocoder},getPlaceDetails:function(b){if(b){var c={placeId:b};this.geocoder.geocode(c,a.bind(function(b,c){c===google.maps.GeocoderStatus.OK&&this.placeChanged(a.first(b))},this))}},placeChanged:function(a){var b=this;this.mapping&&$.each(this.mapping.formFields,function(c,d){var e=b.mapping.addressfields[d],f="",g=$(b.settings.selectors.modalOpen);$.each(e,function(b,c){if("field.separator"===c.name)f+=c.text;else{var d,e=$(a.address_components).filter(function(){return d=!1,this.types.forEach(function(a){a==c.name&&(d=!0)}),d});e[0]&&e[0][c.text]&&(f+=e[0][c.text])}}),1===g.length?g.find(m+d).val(f).closest(b.settings.selectors.formGroup).removeClass(b.settings.classes.error):$(m+d).val(f).closest(b.settings.selectors.formGroup).removeClass(b.settings.classes.error),h.click()})}},f.prototype.GeolocAutocomplete=function(a,b){this.settings=b.settings,this.defaults=b.defaults,this.$el=b.$el,this.collection={},this.attributes={value:!1,defaultText:null,geolocation:!1,label:"",previousQuery:!1,isValid:!1,initialized:!1,open:!1,wasGeoText:!1},this.$input=$(g.find(this.settings.selectors.addressField)),this.events={},this.on=function(a,b){for(var c,d=a.split(" "),e=0;e<d.length;e++)void 0!==(c=d[e])&&"function"==typeof b&&(void 0!==this.events[c]?this.events[c].push(b):this.events[c]=[b],c===this.defaults.apiEvents.initialized&&this.get(this.defaults.atts.initialized)&&b(this));return this},this.off=function(a){return void 0!==this.events[a]&&(this.events[a]=[]),this},this.destroy=function(){this.unbindEvents(),this.autocomplete&&this.autocomplete.de
27stroy()}},f.prototype.GeolocAutocomplete.prototype={events:[],init:function(){return this.autocomplete=this.newAutocomplete(),this.bindEvents(),this.set(this.defaults.atts.initialized,!0),this.trigger(this.defaults.apiEvents.initialized,this),this.trigger(k+":"+this.defaults.atts.initialized,this),this},initSettings:function(a){$.extend(!0,this.attributes,a)},newAutocomplete:function(){return e.init(this.$input,this.getAutocompleteSettings(),this.collection)},onAutocompleteInitialized:function(){this.$suggestions=this.$el.find(l.selector.suggestions)},onAutocompleteComplete:function(){this.get(l.atts.open)?this.trigger(l.events.update):(this.set(l.atts.open,!0),this.trigger(l.events.open))},onAutocompleteClose:function(){this.set(l.atts.open,!1),this.trigger(l.events.close)},bindEvents:function(){this.get(l.atts.autocomplete)&&this.autocomplete.on(l.events.initialized,a.bind(this.onAutocompleteInitialized,this)).on(l.events.complete,a.bind(this.onAutocompleteComplete,this)).on(l.events.close,a.bind(this.onAutocompleteClose,this)),this.$input.on(l.events.input,a.bind(this.onInputChanged,this)).on(l.events.focus,a.bind(this.onInputFocus,this)).on(l.events.blur,a.bind(this.onInputBlur,this)).on(l.events.keypress,a.bind(this.onSubmit,this))},getAutocompleteSettings:function(){var b,c=n.autocomplete;return c.onPlaceChanged=a.bind(this.onAutocompletePlaceChanged,this),b=this.get(l.atts.defaultText),b&&""!==b&&c.exclude.push(b),c},onAutocompletePlaceChanged:function(a,b){j.getPlaceDetails(a.placeId),this.trigger(l.apiEvents.change,b,a),this.$input.val(a.name)},set:function(a,b){return this.attributes[a]=b,this.attributes[a]},get:function(a){return this.attributes[a]},trigger:function(a,b){var c=void 0===b?this:b,d=a;if(void 0!==this.events[a])for(var e=0;e<this.events[a].length;e++)this.events[a][e](c,d)},onSubmit:function(a){var b;if(13===a.which||a.type===l.events.click)return b=this.$input.val(),""===b&&this.set("label",""),this.settings.window.HELIOS.state=this.settings.window.HELIOS.state||{},this.settings.window.HELIOS.state.dealerName&&b===this.settings.window.HELIOS.state.dealerName||(this.settings.window.HELIOS.state.dealer=null,this.settings.window.HELIOS.state.dealerName=null,this.trigger(l.apiEvents.submit,a)),!1},unbindEvents:function(){this.$geoButton.add(this.$input).off("."+k)},onInputChanged:function(){this.trigger(l.apiEvents.input)},onInputFocus:function(){this.$input.val()===this.get(l.atts.defaultText)&&(this.setLabel(""),this.set(l.atts.wasGeoText,!0))},onInputBlur:function(){this.$input.val("")}},f}),define("c_019_25_ApplicationConstants",[],function(){"use strict";return{ADDRESS_FIELDS:{SPECIAL_FIELDS:{ITEM_SEPARATOR:{EXPRESSION:"{{commaAndSpace}}",HTML:", ",ID:"commaAndSpace"},NEW_LINE:{EXPRESSION:"{{{nextLine}}}",HTML:"<br />",ID:"nextLine"}}},ANALYTICS:{SEARCH_TYPE:"dealer-form",DEALER_ACTION:"dealer-form",FIND_NEAREST_DEALER:"find nearest dealer",
28FORM_PREFERRED_LOCATION:"form:preferred location",FORM_DEALER_LOCATION:"form:dealer location",FORM_EXTENDED_TESTDRIVE:"form:dealer location: extendedTestDrive",FORM_LOCATION_SELECTION:"form:location selection",NO_DEALER_IN_RANGE:"no dealer in range",SWITCH_TO_DEALER_LOCATION:"switch to dealer location",CHANGE_SELECTED_DEALER:"change selected dealer",SELECT_THIS_DEALER:"select this dealer",DEALERSHIP_IN_RANGE:"dealership in range",DEALER_ADDRESS:"dealerAddress",DEALER_ID:"dealerId",DEALER_NAME:"dealerName",EDIT_ADDRESS:"edit address",CLEAR_ADDRESS:"clear address",ENTER_ADDRESS_MANUALLY:"enter address manually",MODEL_NOT_SUPPORTED:"model-not-supported",VIEW_MORE_CTA:"view more",POWERTRAIN_ALTERNATE_OPTION:"form:powertrain unavailable at selected dealer",DEALER_PHONE_LINK_ACTION:"call",DEALER_ACTION_AUTO_SELECTED:"dealer-form:automatic selection"},CSS_CLASSES:{FORM_GROUP_ERROR:"error",INITIALIZED:"initialized",FORM_GROUP_COMPLETE:"complete",TRACKED:"tracked",DEALER_SELECTOR:".c_019-25",HIDDEN:"hidden",DEALER_CALL_ERROR:"dealer-call-error"},EVENTS:{CLEAR_SELECTED_DEALER:"clearSelectedDealer",DISPLAY_SELECTED_DEALER_REQUIRED_MESSAGE:"displaySelectedDealerRequiredMessage",GEOLOCATE_USER:"geolocateUser",GEOLOCATION_ERROR:"geolocationError",BROWSER_LOCATION_BLOCKED_ERROR:"browserLocationBlockedError",GEOLOCATION_REQUEST:"geolocationRequest",GEOLOCATION_
28SYNC:"geolocationSync",GO_TO_PREVIOUS_APPLICATION_STATE:"goToPreviousApplicationState",LOCATION_NOT_FOUND:"locationNotFound",SELECTED_DEALER_SYNC:"selectedDealerSync",SET_APPLICATION_STATE:"setApplicationState",SET_SEARCH_LOCATION:"setSearchLocation",SET_SELECTED_DEALER:"setSelectedDealer",DEALER_SEARCH_SUBMIT:"dealerSearchSubmit",DEALER_SEARCH_COMPLETE:"dealerSearchComplete",HIDE_LOCATION_INPUT:"locationInputHidden",DEALER_SEARCH_COMPLETE_ZERO_RESULTS:"dealerSearchCompleteZeroResults",DEALER_SEARCH_ERROR:"dealerSearchError",ANALYTICS_SEARCH:"analyticsSearch",ANALYTICS_DEALER_INTERACTION:"analyticsDealerInteraction",ANALYTICS_DEALER_PHONE_LINK_INTERACTION:"analyticsDealerPhoneLinkInteraction",VEHICLE_SELECTION_CHANGED:"c_019_25:vehicleSelectionChanged",TEST_DRIVE_MODEL_CHANGED:"c_019_25:testDriveModelChanged",NO_TEST_DRIVE_MODEL_SELECTED:"c_019_25:noTestDriveModelSelected",NO_TEST_DRIVE_STOCK_FOUND:"c_019_25:noTestDriveStockFound",NO_TEST_DRIVE_STOCK_FOUND_AT_DEALER:"c_019_25:noTestDriveStockFoundAtDealer",TEST_DRIVE_MODEL_FOUND:"c_019_25:testDriveModelFound",TOGGLE_ERROR_VISIBILITY_PERSISTENCE:"c_019_25:toggleErrorVisibilityPersistence",LOCK_STATE:"c_019_25:lockState",TRIGGER_SEARCH:"c_019_25:triggerSearch",CHANGE_MODEL_SELECT:"changeModelSelect",CHANGE_SERVICE_MODEL_SELECT:"changeServiceModelSelect",STORAGE_SAVED:"storageSaved",SELECTED_MODEL_CHANGE:"selectedModelChange",SWITCH_TEST_DRIVE:"switchTestDrive",CHANGE_MODEL_AND_POWERTRAIN:"changeModelAndPowertrain",ALTERNATE_POWERTRAIN_SELECTED:"alternatePowertrainSelect",LOCAL_DEALER_OPTION_SELECT:"localDealerSelect",DEALER_FURTHER_AWAY_SELECT:"dealerFurtherAwaySelect",RESET_DEALERLIST_COLLECTIONS:"reserDealerListCollections",HOME_TEST_DRIVE_ADDRESS_VERIFIED:"homeTestDriveAddressVerified",PRE_SELECT_WHEN_ADDRESS_NOT_VERIFIED:"preSelectWhenAssressNotVerified",HIDE_CHANGE_DEALER_CTA:"hideChangeDealerCta",FIND_NEAREST_DEALER:"findNearestDealer",NO_HOME_TESTDRIVE_RESULTS:"noHomeTestdriveResults",NEAREST_HOME_ADDRESS_DEALER:"nearestHomeAddressDealer",PRE_SELECT_NEAREST_DEALER:"preSelectNearestDealer",SWITCH_TO_DEALER_TEST_DRIVE:"switchToDealerTestdrive",CHANGE_DEALER_CTA:"changeDealerCta",GET_DEALER_ADDRESS:"dealerAddress",DEALER_SEARCH_COMPLETE_ZERO_RESULTS_HTD_FALLBACK:"dealerSearchCompleteZeroResultsHTDFallback",ENTER_ADDRESS_MANUALLY:"enterAddressManually",CLEAR_ADDRESS_FIELDS:"clearAddressFields",POSTAL_CODE_ADDRESS_FIELD_SEARCH:"postalCodeAddressFieldSearch",POSTAL_CODE_SEARCH_ZERO_RESULTS:"postalCodeSearchZeroResults",ADD_EDIT_CLEAR_ADDRESS_LINKS:"addEditClearAddressLinks",FORM_SUBMISSION_ERROR:"formSubmissionError",UPDATE_PROFILE_DATA_IN_LOCALSTORAGE:"updateProfileDataInLocalStorage",PREPOPULATE_DEALER_FROM_SMARTLOCATION:"prepopulateDealerFromSmartLocation",HOME_TESTDRIVE_FALLBACK_FLOW:"homeTestDriveFallbackFlow",HIDE_NEAREST_DEALER_CTA:"hideNearestDealerCta",SHOW_DEALER_MODEL_SERVICE_LABEL:"showDealerModelServiceLabel",TRACK_DEALER_MODEL_SERVICE_LABEL:"trackDealerModelServiceLabel",ON_UPDATE_ADDRESS_FIELDS_ONLOAD:"onUpdateAddressFieldsOnLoad",TRACK_ALTERNATE_OPTION:"trackPowertrainAlternateOptions",TRACK_NO_DEALERS_POWERTRAIN:"trackPowertrainNoDealers",TRACK_TOOGLE_STORE_TO_MYPAGE:"toogleStoreToMyPage"},SEARCH_LOCATION_SOURCES:{GEO_LOCATION:"geoLocation",SMART_LOCATION:"smartLocation",TEST_DRIVE_STOCK_CHECK:"testDriveStockCheck",USER_SELECT:"userSelect"},SELECTED_DEALER_SOURCES:{SMART_LOCATION:"smartLocation",USER_SELECT:"userSelect",MY_PAGE_USER_SELECT:"myPageUserSelect",PRE_SELECT:"preselect"},SELECTORS:{FORM_GROUP:".form-group",C20_MODEL_DROPDOWN:".c_020 .select-model",PREPOPULATE_VEHICLE:"data-lastprepopulatedvehicle",DEALER_LIST:".dealer-list",SELECTED_DEALER:".selected-dealer",ALTERNATE_POWERTRAIN:".alternate-powertrain-option",SEARCH_EXTENDED_RADIUS:".search-extended-radius-option",ALTERNATE_OPTIONS:".no-dealer-alternate-options input",C19_39_MODEL_SELECTOR:".c_019-39"},STATES:{DEALER_SELECTED:"dealerSelected",ERROR:"error",ERROR_WITH_DEALER_LIST:"errorWithDealerList",INITIALIZING:"initializing",SEARCH:"search",SEARCH_RESULTS:"searchResults",PMA_DEALER:"pma-dealer",SEARCHED_POSTAL_CODE:"searchedPostalCode",SEARCHING:"searching",DISABLED:"disabled",NO_RESULTS:"noResults",NO_HOME_TESTDRIVE_RESULTS:"noHomeTestdriveResults",NO_POWERTRAIN_TESTDRIVE_RESULTS:"noPowertrainTestdriveResults",PREFERRED_LOCATION_ADDRESS:"preferredLocationAddress",REALTIME_SERVICE_BOOKING:"realtimeServiceBooking",ENTER_ADDRESS_MANUALLY:"enterAddressManually",EDIT_HOME_ADDRESS:"editHomeAddress",CLEAR_ADDRESS_FIELDS:"clearAddressFields"},STORAGE_KEYS:{LAST_VISITED_VEHICLE:"lastVisitedVehicle"}}}),define("c_019_25_ModelConstants",[],function(){"use strict";return{CONTENT:{ATTRIBUTES:{ADDRESS_FIELD_ORDER:"address",CANNOT_FIND_USER_LOCATION:"formLabels.cannotFindUserLocation",CHANGE_SELECTED_DEALER_CTA:"formLabels.changeMyDealer",DEALER_FILTER_GROUPS:"dealerFilterGroups",DEALER_ICON_KEYS:"dealerIconKeys",DEALER_ID_ELEMENT_NAME:"formDetails.dealerIdElementName",DEALER_NAME_ELEMENT_NAME:"formDetails.dealerNameElementName",MODEL_ID_ELEMENT_NAME:"formDetails.modelIdElementName",MODEL_NAME_ELEMENT_NAME:"formDetails.modelNameElementName",DEALER_SEARCH_RETURNED_ZERO_RESULTS:"formLabels.noResults",DEALER_SELECTED_TEXT:"formLabels.titleDealerSelected",DEALER_URL_FORMAT:"urls.details",IS_LOCATION_PREFILL_ENABLED:"formDetails.isLocationPreFillEnabled",IS_SEARCH_ON_STARTUP_ENABLED:"formDetails.isAutoSearchEnabled",IS_SELECTED_DEALER_MANDATORY:"formDetails.isSelectedDealerMandatory",DISABLE_AUTO_GEO_LOCATION_ON_FORM_LOAD:"formDetails.disableAutoGeoLocationOnFormLoad",COURTESY_CAR:"courtesyCar",IS_SHOW_ONLY_DEALERS_WHO_ACCEPT_LEADS_ENABLED:"formDetails.showOnlyDealersWhoAcceptLeads",LOCATION_NOT_FOUND_TEXT:"formLabels.locationNotFound",LOCATION_
28SEARCH_ELEMENT_ID:"locationSearchElementId",SERVICE_FILTER_TYPE:"serviceFilterType",CURRENT_LOCATION_TEXT:"formLabels.currentLocation",LOCATION_SEARCH_LABEL:"formLabels.titleNoDealerSelected",POSTAL_CODE_VALIDATION:"formLabels.postalCodeValidation",ERROR_MESSAGE:"formLabels.errorMessage",LOCATION_SEARCH_PLACEHOLDER:"formLabels.locationTextBoxPlaceholder",BROWSER_LOCATION_DETECTION_BLOCKED:"formLabels.browserLocationDetectionBlocked",HTD_LOCATION_SEARCH_PLACEHOLDER:"homeAddressFieldsConfig.fullAddresPlaceholder",SEARCH_FOR_DEALERS_TEXT:"formLabels.searchForDealersCta",SELECTED_DEALER_IS_MANDATORY:"formLabels.selectedDealerIsMandatory",USE_CURRENT_LOCATION:"formLabels.useMyCurrentLocation",RESULT_LABEL_SINGLE:"formLabels.singleDealerClosestToYou",SUB_HEADER:"formLabels.subHeader",RESULT_LABEL_MULTIPLE:"formLabels.multipleDealersClosestToYou",SELECT_DEALER_CTA_LABEL:"formLabels.selectDealerCta",DISTANCE_UNIT:"formLabels.distanceUnit",DISTANCE_UNIT_LABEL:"formLabels.distanceUnitLabel",MAX_RESULT_COUNT:"formLabels.maxResultCount",MAX_RADIUS:"formLabels.maximumRadius",IS_TEST_DRIVE_STOCK_CHECK_ENABLED:"formDetails.isTestDriveStockCheckEnabled",IS_PRESELECT_DEALER_ENABLED:"formDetails.preselectDealer",VEHICLE_SELECTOR_LABEL:"formLabels.vehicleSelectorLabel",VEHICLE_SELECTOR_DATA:"vehicleSelectorData",VEHICLE_SELECTOR_OPTION:"formLabels.vehicleSelectorOption",SELECT_DIFFERENT_VEHICLE:"formLabels.selectDifferentVehicleInstruction",SELECT_DIFFERENT_DEALER_OR_VEHICLE:"formLabels.selectDealerOrVehicleInstruction",SELECT_VEHICLE:"formLabels.selectVehicleInstruction",SELECT_LOCATION:"formLabels.selectLocationVehicleInstruction",SEARCH_FOR_DEALER_PHONE:"enableDealerNumber",ENABLE_MODEL_DEALER_MAPPING:"enableModelDealerMapping",ENABLE_MODEL_DEALER_SERVICE_MAPPING:"enableModelDealerServiceMapping",DEALER_SERVICE_LABEL:"dealerServiceLabel",DEALER_MODEL_SERVICE_LABEL:"dealerModelServiceLabel",ENABLE_PMA_DEALER:"enablePmaDealer",MAP_PROVIDER:"mapProvider",USER_FULL_ADDRESS_FIELDS:"homeAddressFieldsConfig.userFullAddressFields",HOME_TESTDRIVE_LOCATION_SEARCH_LABEL:"homeAddressFieldsConfig.fullAddressLabel",LOCATION_NOT_AVAILABLE_MESSAGE:"homeAddressFieldsConfig.locationNotAvailableMessage",SWITCH_TO_DTD_LABEL:"homeAddressFieldsConfig.switchtoDTDLabel",JOURNEY_SEPARATOR_LABEL:"homeAddressFieldsConfig.journeySeparatorLabel",HOME_TD_FALLBACK_LABEL:"homeAddressFieldsConfig.homeTDFallbackLabel",HOME_FIND_DEALER_LABEL:"homeAddressFieldsConfig.findDealerCtaLabel",ENTER_ADDRESS_MANUALLY_LABEL:"homeAddressFieldsConfig.manualAddressLabel",USER_FULL_ADDRESS_FIELDS_FORMATTING:"homeAddressFieldsConfig.userFullAddressFieldsFormatting",FULL_ADDRESS_LABEL:"homeAddressFieldsConfig.homeAddressLabel",EDIT_HOME_ADDRESS_LABEL:"homeAddressFieldsConfig.editHomeAddressLabel",CLEAR_ADDRESS_FIELDS_LABEL:"homeAddressFieldsConfig.clearAddressLabel",POSTAL_CODE_ERROR:"homeAddressFieldsConfig.postalCodeError",MAX_HOME_RADIUS:"homeAddressFieldsConfig.maximumHomeRadius",IS_EXTERNAL_JOURNEY:"isExternal.isExternalJourney",HOME_HELP_TEXT:"homeAddressFieldsConfig.homeHelpText",DEALER_HELP_TEXT:"formLabels.dealerHelpText",PREFERRED_DEALER_TEXT:"formLabels.txSelectPreferredStoresLabel",SELECT_DEALER_TEXT:"formLabels.txSelectLabel",VIEW_MORE_TEXT:"formLabels.txViewMore",SEARCH_ANOTHER_DEALER_TEXT:"formLabels.txSearchForAnotherStore",SHOW_ADD_TO_MYPAGE:"formLabels.showAddStoreToMyPageCheck",ADD_TO_MYPAGE_TEXT:"formLabels.txAddStoreToMyPage",REMOVE_TO_MYPAGE_TEXT:"formLabels.txRemoveStoreToMyPage",MYPAGE_STORE_ERROR_MESSAGE:"formLabels.txStoreErrorMessage",POWERTRAIN_DEALER_SEARCH_NO_RESULTS:"formLabels.noResults",POWERTRAIN_ALTERNATE_OPTIONS_LABEL:"formLabels.alternateOptionsLabel",ALTERNATE_POWERTRAIN_LABEL:"formLabels.alternatePowertrainLabel",DEALERS_FURTHER_AWAY_LABEL:"formLabels.furtherAwayDealersLabel",LOCAL_DEALER_LABEL:"formLabels.localDealerLabel",PRE_LAUNCH_RADIUS_SEARCH_NO_RESULTS_MESSAGE:"formLabels.txExtendedDealerSearch"}},GENERIC:{EVENTS:{REQUEST:"request",SYNC:"sync",ERROR:"error"}},DEALER:{ATTRIBUTES:{ADDRESS:"address",DISTANCE:"distance",DEALER_ID:"dealerId",NAME:"name",TYPE:"type",CONTACT:"contact",TESTDRIVETYPES:"testdriveTypes",VEHICLES:"vehicles"},OPTIONS:{ADDRESS_FIELD_ORDER:"addressFieldOrder",DEALER_ID:"dealerId",DISTANCE_UNIT:"distanceUnit",URL_FORMAT:"urlFormat",PREFERRED_DEALERS:"preferredDealers"}},DEALER_COLLECTION:{OPTIONS:{ADDRESS_FIELD_ORDER:"addressFieldOrder",DISTANCE_UNIT:"distanceUnit",IS_DEALER_ACCEPTS_LEADS_MANDATORY:"isDealerAcceptsLeadsMandatory",LAT:"lat",LNG:"lng",SERVICE_FILTERS:"serviceFilters",SERVICE_FILTER_TYPE:"serviceFilterType",SIZE:"size",TEST_DRIVE_MODEL:"testDriveModel",POSTAL_CODE:"postalCode",ENABLE_PMA_DEALER:"enablePmaDealer",SELECTED_MODEL_CODE:"selectedModelCode",REALTIME_TESTDRIVE_BOOKING:"realtimeTestDriveBooking",REALTIME_SERVICE_BOOKING:"realtimeServiceBooking",HOME_TEST_DRIVE_ENABLED:"homeTestDriveEnabled",TARGET_SYSTEM_ROUTING_ID:"targetSystemRoutingId",RADIUS:"radius",HOMERADIUS:"homeRadius",IS_HOME_LOCATION_
28SELECTED:"isHomeLocationSelected",IS_MODEL_AND_POWERTRAIN_ENABLED:"powertrainEnabled",SELECTED_MODEL_WITH_PT_CODE:"selectedModelWithPtCode",SELECTED_MODEL_WITH_POWERTRAIN_CODE:"selectedModelPowertrainCode",SELECTED_MODEL_ALTERNATE_POWERTRAIN:"selectedModelAlternatePowertrain"}},TOOLTIP:{DATA:{hideEvent:"click unfocus",tooltipID:"courtesy-car-tooltip-desc"},SELECTORS:{courtesyTooltip:".courtesy-car-tooltip",hasToolTip:".has-tooltip"}}}}),define("c_019_25_ContentModel",["underscore","backbone","c_019_25_ModelConstants"],function(a,b,c){"use strict";var d=c.CONTENT.ATTRIBUTES;return b.Model.extend({get:function(c){var d=c.split(".");return a.reduce(d.slice(1),function(a,b){return a&&a[b]},b.Model.prototype.get.call(this,d[0]))},getAddressFieldOrder:function(){return this.get(d.ADDRESS_FIELD_ORDER)},getCurrentLocationText:function(){return this.get(d.CURRENT_LOCATION_TEXT)},getDealerFilterGroups:function(){return this.get(d.DEALER_FILTER_GROUPS)},getServiceFilterType:function(){return this.get(d.SERVICE_FILTER_TYPE)},getDealerIconKeys:function(){return this.get(d.DEALER_ICON_KEYS)||[]},getDealerIdElementName:function(){return this.get(d.DEALER_ID_ELEMENT_NAME)},getDealerNameElementName:function(){return this.get(d.DEALER_NAME_ELEMENT_NAME)},getModelIdElementName:function(){return this.get(d.MODEL_ID_ELEMENT_NAME)},getModelNameElementName:function(){return this.get(d.MODEL_NAME_ELEMENT_NAME)},getDealerUrlFormat:function(){return this.get(d.DEALER_URL_FORMAT)},getDistanceUnit:function(){return this.get(d.DISTANCE_UNIT)},getDistanceUnitLabel:function(){return this.get(d.DISTANCE_UNIT_LABEL)},getIsLocationPrefillEnabled:function(){return this.get(d.IS_LOCATION_PREFILL_ENABLED)},getIsPreSelectDealerEnabled:function(){return this.get(d.IS_PRESELECT_DEALER_ENABLED)},getIsSearchOnStartupEnabled:function(){return this.get(d.IS_SEARCH_ON_STARTUP_ENABLED)},getIsSelectedDealerMandatory:function(){return this.get(d.IS_SELECTED_DEALER_MANDATORY)},getCourtesyCar:function(){return this.get(d.COURTESY_CAR)},getIsShowOnlyDealersWhoAcceptLeadsEnabled:function(){return this.get(d.IS_SHOW_ONLY_DEALERS_WHO_ACCEPT_LEADS_ENABLED)},getLocationNotFoundText:function(){return this.get(d.LOCATION_NOT_FOUND_TEXT)},getLocationSearchElementId:function(){return this.get(d.LOCATION_SEARCH_ELEMENT_ID)},getLocationSearchLabel:function(){return this.get(d.LOCATION_SEARCH_LABEL)},getHomeTestDriveLocationSearchLabel:function(){return this.get(d.HOME_TESTDRIVE_LOCATION_SEARCH_LABEL)},getpostalCodeValidation:function(){return this.get(d.POSTAL_CODE_VALIDATION)},getEnablePMADealer:function(){return this.get(d.ENABLE_PMA_DEALER)&&JSON.parse(this.get(d.ENABLE_PMA_DEALER))},getErrorMessage:function(){return this.get(d.ERROR_MESSAGE)},getLocationSearchPlaceholder:function(){return this.get(d.LOCATION_SEARCH_PLACEHOLDER)},getBrowserLocationDetectionBlocked:function(){return this.get(d.BROWSER_LOCATION_DETECTION_BLOCKED)},getDealerHelpText:function(){return this.get(d.DEALER_HELP_TEXT)},getHomeHelpText:function(){return this.get(d.HOME_HELP_TEXT)},getHomeTestdriveLocationSearchPlaceholder:function(){return this.get(d.HTD_LOCATION_SEARCH_PLACEHOLDER)},getMaxResultCount:function(){return this.get(d.MAX_RESULT_COUNT)},getMaxRadius:function(){return this.get(d.MAX_RADIUS)},getMaxHomeRadius:function(){return this.get(d.MAX_HOME_RADIUS)},getResultLabelMultiple:function(){return this.get(d.RESULT_LABEL_MULTIPLE)},getSubHeader:function(){return this.get(d.SUB_HEADER)},getResultLabelSingle:function(){return this.get(d.RESULT_LABEL_SINGLE)},getEnableModelDealerMapping:function(){return this.get(d.ENABLE_MODEL_DEALER_MAPPING)},getEnableModelDealerServiceMapping:function(){return this.get(d.ENABLE_MODEL_DEALER_SERVICE_MAPPING)},getResultLabelDealerService:function(){return this.get(d.DEALER_SERVICE_LABEL)},getResultLabelDealerModelService:function(){return this.get(d.DEALER_MODEL_SERVICE_LABEL)},getSearchForDealersText:function(){return this.get(d.SEARCH_FOR_DEALERS_TEXT)},getSelectDealerCtaLabel:function(){return this.get(d.SELECT_DEALER_CTA_LABEL)},getDealerListPhone:function(){return this.get(d.SEARCH_FOR_DEALER_PHONE)},getUseCurrentLocation:function(){return this.get(d.USE_CURRENT_LOCATION)},getIsTestDriveStockCheckEnabled:function(){return this.get(d.IS_TEST_DRIVE_STOCK_CHECK_ENABLED)},getVehicleSelectorData:function(){return this.get(d.VEHICLE_SELECTOR_DATA)},getVehicleSelectorLabel:function(){return this.get(d.VEHICLE_SELECTOR_LABEL)},getVehicleSelectorOption:function(){return this.get(d.VEHICLE_SELECTOR_OPTION)},getSelectDifferentVehicleInstruction:function(){return this.get(d.SELECT_DIFFERENT_VEHICLE)},getSelectDealerOrVehicleInstruction:function(){return this.get(d.SELECT_DIFFERENT_DEALER_OR_VEHICLE)},getSelectVehicleInstruction:function(){return this.get(d.SELECT_VEHICLE)},getSelectLocationInstruction:function(){return this.get(d.SELECT_LOCATION)},getUserFullAddressFields:function(){return this.get(d.USER_FULL_ADDRESS_FIELDS)},getLocationNotAvailableMessage:function(){return this.get(d.DEALER_SEARCH_RETURNED_ZERO_RESULTS)},getSwitchToDTDLabel:function(){return this.get(d.SWITCH_TO_DTD_LABEL)},getJourneySeparatorLabel:function(){return this.get(d.JOURNEY_SEPARATOR_LABEL)}
28,getHomeTDFallbackLabel:function(){return this.get(d.HOME_TD_FALLBACK_LABEL)},getHomeFindDealerCtaLabel:function(){return this.get(d.HOME_FIND_DEALER_LABEL)},getEnterAddressManuallyCtaLabel:function(){return this.get(d.ENTER_ADDRESS_MANUALLY_LABEL)},getUserFullAddressFieldsFormatting:function(){return this.get(d.USER_FULL_ADDRESS_FIELDS_FORMATTING)},getHomeAddressLabel:function(){return this.get(d.FULL_ADDRESS_LABEL)},getEditHomeAddressLabel:function(){return this.get(d.EDIT_HOME_ADDRESS_LABEL)},getClearAddressFieldsLabel:function(){return this.get(d.CLEAR_ADDRESS_FIELDS_LABEL)},getPostalCodeErrorMessage:function(){return this.get(d.POSTAL_CODE_ERROR)},getIsExternalJourneyValue:function(){return this.get(d.IS_EXTERNAL_JOURNEY)},getPreferredDealerText:function(){return this.get(d.PREFERRED_DEALER_TEXT)},getSelectDealerText:function(){return this.get(d.SELECT_DEALER_TEXT)},getViewMoreText:function(){return this.get(d.VIEW_MORE_TEXT)},getSearchAnotherDealerText:function(){return this.get(d.SEARCH_ANOTHER_DEALER_TEXT)},getIsAddToMyPageEnable:function(){return this.get(d.SHOW_ADD_TO_MYPAGE)},getAddToMyPageText:function(){return this.get(d.ADD_TO_MYPAGE_TEXT)},getRemoveToMyPageText:function(){return this.get(d.REMOVE_TO_MYPAGE_TEXT)},getMyPageErrorMessage:function(){return this.get(d.MYPAGE_STORE_ERROR_MESSAGE)},getNoResultsModelAndPowertrainMessage:function(){return this.get(d.POWERTRAIN_DEALER_SEARCH_NO_RESULTS)},getAlternateOptionsLabel:function(){return this.get(d.POWERTRAIN_ALTERNATE_OPTIONS_LABEL)},getAlternatePowertrainLabel:function(){return this.get(d.ALTERNATE_POWERTRAIN_LABEL)},getDealersFurtherAwayLabel:function(){return this.get(d.DEALERS_FURTHER_AWAY_LABEL)},getLocalDealerLabel:function(){return this.get(d.LOCAL_DEALER_LABEL)},getPreLaunchRadiusSearchNoResultsMessage:function(){return this.get(d.PRE_LAUNCH_RADIUS_SEARCH_NO_RESULTS_MESSAGE)},getDisableAutoGeoLocationOnFormLoad:function(){return this.get(d.DISABLE_AUTO_GEO_LOCATION_ON_FORM_LOAD)}})}),define("c_019_25_CommonConstants",[],function(){"use strict";return{OPTIONS:{EVENT_AGGREGATOR:"eventAggregator",WINDOW:"window"}}}),define("c_019_25_ControllerConstants",["underscore","c_019_25_CommonConstants"],function(a,b){"use strict";return{DEALER_SEARCH:{OPTIONS:a.extend({ADDRESS_FIELD_ORDER:"addressFieldOrder",DISTANCE_UNIT:"distanceUnit",IS_DEALER_ACCEPTS_LEADS_MANDATORY:"isDealerAcceptsLeadsMandatory",IS_SEARCH_ON_STARTUP_ENABLED:"isSearchOnStartupEnabled",MAX_RESULT_COUNT:"maxResultCount",MAX_RADIUS:"maximumRadius",MAX_HOME_RADIUS:"maximumHomeRadius",IS_HOME_LOCATION_SELECTED:"isHomeLocationSelected",IS_MODEL_AND_POWERTRAIN_ENABLED:"powertrainEnabled",SERVICE_FILTERS:"serviceFilters",TEST_DRIVE_MODEL_ID:"testDriveModelId",IS_CONFIGURATOR:"isConfigurator",MAPPING_DATA:"mappingData",MODEL_SERVICE_MAPPING_DATA:"modelServiceMappingData",CONTENT:"content",SERVICE_FILTER_TYPE:"serviceFilterType",REALTIME_TESTDRIVE_BOOKING:"realtimeTestDriveBooking",HOME_TEST_DRIVE_ENABLED:"homeTestDriveEnabled",SELECTED_MODEL_CODE:"selectedModelCode",TARGET_SYSTEM_ROUTING_ID:"targetSystemRoutingId",DEEP_LINK_DEALER_ID:"deepLinkDealerId",SMART_LOCATION_CONTEXT:"smartLocationContext"},b.OPTIONS)},GEOLOCATION:{OPTIONS:a.extend({},b.OPTIONS)},STARTUP:{OPTIONS:a.extend({DEALER_URL_FORMAT:"dealerUrlFormat",DEEP_LINK_DEALER_ID:"deepLinkDealerId",DEEP_LINK_SEARCH_LOCATION:"deepLinkSearchLocation",MARKET_COUNTRY_CODE:"marketCountryCode",SMART_LOCATION_CONTEXT:"smartLocationContext",HELIOS_OBJECT:"HELIOS",ADDRESS_FIELD_ORDER:"addressFieldOrder",IS_TEST_DRIVE_STOCK_CHECK_AVAILABLE:"isTestDriveStockCheckAvailable",ENABLE_PMA_DEALER:"enablePmaDealer",HOME_TEST_DRIVE_ENABLED:"homeTestDriveEnabled",DEALER_FILTER_GROUPS:"dealerFilterGroups",SERVICE_FILTER_TYPE:"serviceFilterType",ENABLE_MODEL_DEALER_MAPPING:"enableModelDealerMapping"},b.OPTIONS)},STATE:{OPTIONS:a.extend({DEALER_LIST_CONTROLLER:"dealerListController",ERROR_CONTROLLER:"errorController",LOADER_CONTROLLER:"loaderController",SEARCH_CONTROLLER:"searchController",ADDRESS_FIELDS_CONTROLLER:"addressFieldsController",SELECTED_DEALER_CONTROLLER:"selectedDealerController",VEHICLE_SELECTOR_CONTROLLER:"vehicleSelectorController",SWITCH_TO_DEALER_CONTROLLER:"SwitchToDealerController",PREFERRED_DEALERS_CONTROLLER:"PreferredDealersController",HOME_TEST_DRIVE_ENABLED:"homeTestDriveEnabled",ALTERNATE_POWERTRAIN_CONTROLLER:"AlternatePowertrainController"},b.OPTIONS)},ANALYTICS:{OPTIONS:a.extend({ANALYTICS_MANAGER:"analyticsManager",TRACKING_CODES:"trackingCodes",ANALYTICS_SETTINGS:"analyticsSettings",MODEL_POWERTRAIN_ENABLED:"modelPowertrainEnabled",NO_DEALER_POWERTRAIN:"no dealer for this powertrain"},b.OPTIONS),ZERO_RESULTS:0},TEST_DRIVE_STOCK_CHECK:{OPTIONS:a.extend({SMART_LOCATION_CONTEXT:"smartLocationContext",VEHICLE_DATA:"vehicleData"},b.OPTIONS)},ERROR:{OPTIONS:a.extend({HOME_TEST_DRIVE_ENABLED:"homeTestDriveEnabled"},b.OPTIONS)},DEALER_LIST:{OPTIONS:a.extend({HOME_TEST_DRIVE_ENABLED:"homeTestDriveEnabled"},b.OPTIONS)}}}),function(a,b){if("function"==typeof define&&define.amd)define("marionette",["backbone","underscore"],function(c,d){return a.Marionette=a.Mn=b(a,c,d)});
28else if("undefined"!=typeof exports){var c=require("backbone"),d=require("underscore");module.exports=b(a,c,d)}else a.Marionette=a.Mn=b(a,a.Backbone,a._)}(this,function(a,b,c){"use strict";!function(a,b){var c=a.ChildViewContainer;a.ChildViewContainer=function(a,b){var c=function(a){this._views={},this._indexByModel={},this._indexByCustom={},this._updateLength(),b.each(a,this.add,this)};b.extend(c.prototype,{add:function(a,b){var c=a.cid;return this._views[c]=a,a.model&&(this._indexByModel[a.model.cid]=c),b&&(this._indexByCustom[b]=c),this._updateLength(),this},findByModel:function(a){return this.findByModelCid(a.cid)},findByModelCid:function(a){var b=this._indexByModel[a];return this.findByCid(b)},findByCustom:function(a){var b=this._indexByCustom[a];return this.findByCid(b)},findByIndex:function(a){return b.values(this._views)[a]},findByCid:function(a){return this._views[a]},remove:function(a){var c=a.cid;return a.model&&delete this._indexByModel[a.model.cid],b.any(this._indexByCustom,function(a,b){return a===c?(delete this._indexByCustom[b],!0):void 0},this),delete this._views[c],this._updateLength(),this},call:function(a){this.apply(a,b.tail(arguments))},apply:function(a,c){b.each(this._views,function(d){b.isFunction(d[a])&&d[a].apply(d,c||[])})},_updateLength:function(){this.length=b.size(this._views)}});var d=["forEach","each","map","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","toArray","first","initial","rest","last","without","isEmpty","pluck","reduce"];return b.each(d,function(a){c.prototype[a]=function(){var c=b.values(this._views),d=[c].concat(b.toArray(arguments));return b[a].apply(b,d)}}),c}(0,b),a.ChildViewContainer.VERSION="0.1.6",a.ChildViewContainer.noConflict=function(){return a.ChildViewContainer=c,this},a.ChildViewContainer}(b,c),function(a,b){var c=a.Wreqr,d=a.Wreqr={};a.Wreqr.VERSION="1.3.1",a.Wreqr.noConflict=function(){return a.Wreqr=c,this},d.Handlers=function(a,b){var c=function(a){this.options=a,this._wreqrHandlers={},b.isFunction(this.initialize)&&this.initialize(a)};return c.extend=a.Model.extend,b.extend(c.prototype,a.Events,{setHandlers:function(a){b.each(a,function(a,c){var d=null;b.isObject(a)&&!b.isFunction(a)&&(d=a.context,a=a.callback),this.setHandler(c,a,d)},this)},setHandler:function(a,b,c){var d={callback:b,context:c};this._wreqrHandlers[a]=d,this.trigger("handler:add",a,b,c)},hasHandler:function(a){return!!this._wreqrHandlers[a]},getHandler:function(a){var b=this._wreqrHandlers[a];if(b)return function(){var a=Array.prototype.slice.apply(arguments);return b.callback.apply(b.context,a)}},removeHandler:function(a){delete this._wreqrHandlers[a]},removeAllHandlers:function(){this._wreqrHandlers={}}}),c}(a,b),d.CommandStorage=function(){var c=function(a){this.options=a,this._commands={},b.isFunction(this.initialize)&&this.initialize(a)};return b.extend(c.prototype,a.Events,{getCommands:function(a){var b=this._commands[a];return b||(b={command:a,instances:[]},this._commands[a]=b),b},addCommand:function(a,b){this.getCommands(a).instances.push(b)},clearCommands:function(a){this.getCommands(a).instances=[]}}),c}(),d.Commands=function(a){return a.Handlers.extend({storageType:a.CommandStorage,constructor:function(b){this.options=b||{},this._initializeStorage(this.options),this.on("handler:add",this._executeCommands,this);var c=Array.prototype.slice.call(arguments);a.Handlers.prototype.constructor.apply(this,c)},execute:function(a,b){a=arguments[0],b=Array.prototype.slice.call(arguments,1),this.hasHandler(a)?this.getHandler(a).apply(this,b):this.storage.addCommand(a,b)},_executeCommands:function(a,c,d){var e=this.storage.getCommands(a);b.each(e.instances,function(a){c.apply(d,a)}),this.storage.clearCommands(a)},_initializeStorage:function(a){var c,d=a.storageType||this.storageType;c=b.isFunction(d)?new d:d,this.storage=c}})}(d),d.RequestResponse=function(a){return a.Handlers.extend({request:function(){var a=arguments[0],b=Array.prototype.slice.call(arguments,1);return this.hasHandler(a)?this.getHandler(a).apply(this,b):void 0}})}(d),d.EventAggregator=function(a,b){var c=function(){};return c.extend=a.Model.extend,b.extend(c.prototype,a.Events),c}(a,b),d.Channel=function(){var c=function(b){this.vent=new a.Wreqr.EventAggregator,this.reqres=new a.Wreqr.RequestResponse,this.commands=new a.Wreqr.Commands,this.channelName=b};return b.extend(c.prototype,{reset:function(){return this.vent.off(),this.vent.stopListening(),this.reqres.removeAllHandlers(),this.commands.removeAllHandlers(),this},connectEvents:function(a,b){return this._connect("vent",a,b),this},connectCommands:function(a,b){return this._connect("commands",a,b),this},connectRequests:function(a,b){return this._connect("reqres",a,b),this},_connect:function(a,c,d){if(c){d=d||this;var e="vent"===a?"on":"setHandler";b.each(c,function(c,f){this[a][e](f,b.bind(c,d))},this)}}}),c}(),d.radio=function(a){var c=function(){this._channels={},this.vent={},this.commands={},this.reqres={},this._proxyMethods()};
28b.extend(c.prototype,{channel:function(a){if(!a)throw new Error("Channel must receive a name");return this._getChannel(a)},_getChannel:function(b){var c=this._channels[b];return c||(c=new a.Channel(b),this._channels[b]=c),c},_proxyMethods:function(){b.each(["vent","commands","reqres"],function(a){b.each(d[a],function(b){this[a][b]=e(this,a,b)},this)},this)}});var d={vent:["on","off","trigger","once","stopListening","listenTo","listenToOnce"],commands:["execute","setHandler","setHandlers","removeHandler","removeAllHandlers"],reqres:["request","setHandler","setHandlers","removeHandler","removeAllHandlers"]},e=function(a,b,c){return function(d){var e=a._getChannel(d)[b],f=Array.prototype.slice.call(arguments,1);return e[c].apply(e,f)}};return new c}(d),a.Wreqr}(b,c);var d=a.Marionette,e=a.Mn,f=b.Marionette={};f.VERSION="2.4.1",f.noConflict=function(){return a.Marionette=d,a.Mn=e,this},b.Marionette=f,f.Deferred=b.$.Deferred,f.extend=b.Model.extend,f.isNodeAttached=function(a){return b.$.contains(document.documentElement,a)},f.mergeOptions=function(a,b){a&&c.extend(this,c.pick(a,b))},f.getOption=function(a,b){return a&&b?a.options&&void 0!==a.options[b]?a.options[b]:a[b]:void 0},f.proxyGetOption=function(a){return f.getOption(this,a)},f._getValue=function(a,b,d){return c.isFunction(a)&&(a=d?a.apply(b,d):a.call(b)),a},f.normalizeMethods=function(a){return c.reduce(a,function(a,b,d){return c.isFunction(b)||(b=this[b]),b&&(a[d]=b),a},{},this)},f.normalizeUIString=function(a,b){return a.replace(/@ui\.[a-zA-Z_$0-9]*/g,function(a){return b[a.slice(4)]})},f.normalizeUIKeys=function(a,b){return c.reduce(a,function(a,c,d){return a[f.normalizeUIString(d,b)]=c,a},{})},f.normalizeUIValues=function(a,b,d){return c.each(a,function(e,g){c.isString(e)?a[g]=f.normalizeUIString(e,b):c.isObject(e)&&c.isArray(d)&&(c.extend(e,f.normalizeUIValues(c.pick(e,d),b)),c.each(d,function(a){var d=e[a];c.isString(d)&&(e[a]=f.normalizeUIString(d,b))}))}),a},f.actAsCollection=function(a,b){var d=["forEach","each","map","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","toArray","first","initial","rest","last","without","isEmpty","pluck"];c.each(d,function(d){a[d]=function(){var a=c.values(c.result(this,b)),e=[a].concat(c.toArray(arguments));return c[d].apply(c,e)}})};var g=f.deprecate=function(a,b){c.isObject(a)&&(a=a.prev+" is going to be removed in the future. Please use "+a.next+" instead."+(a.url?" See: "+a.url:"")),void 0!==b&&b||g._cache[a]||(g._warn("Deprecation warning: "+a),g._cache[a]=!0)};g._warn="undefined"!=typeof console&&(console.warn||console.log)||function(){},g._cache={},f._triggerMethod=function(){function a(a,b,c){return c.toUpperCase()}var b=/(^|:)(\w)/gi;return function(d,e,f){var g=arguments.length<3;g&&(f=e,e=f[0]);var h,i="on"+e.replace(b,a),j=d[i];return c.isFunction(j)&&(h=j.apply(d,g?c.rest(f):f)),c.isFunction(d.trigger)&&(g+f.length>1?d.trigger.apply(d,g?f:[e].concat(c.drop(f,0))):d.trigger(e)),h}}(),f.triggerMethod=function(){return f._triggerMethod(this,arguments)},f.triggerMethodOn=function(a){return(c.isFunction(a.triggerMethod)?a.triggerMethod:f.triggerMethod).apply(a,c.rest(arguments))},f.MonitorDOMRefresh=function(a){function b(){a._isShown=!0,e()}function d(){a._isRendered=!0,e()}function e(){a._isShown&&a._isRendered&&f.isNodeAttached(a.el)&&c.isFunction(a.triggerMethod)&&a.triggerMethod("dom:refresh")}a.on({show:b,render:d})},function(a){function b(b,d,e,f){var g=f.split(/\s+/);c.each(g,function(c){var f=b[c];if(!f)throw new a.Error('Method "'+c+'" was configured as an event handler, but does not exist.');b.listenTo(d,e,f)})}function d(a,b,c,d){a.listenTo(b,c,d)}function e(a,b,d,e){var f=e.split(/\s+/);c.each(f,function(c){var e=a[c];a.stopListening(b,d,e)})}function f(a,b,c,d){a.stopListening(b,c,d)}function g(b,d,e,f,g){if(d&&e){if(!c.isObject(e))throw new a.Error({message:"Bindings must be an object or function.",url:"marionette.functions.html#marionettebindentityevents"});e=a._getValue(e,b),c.each(e,function(a,e){c.isFunction(a)?f(b,d,e,a):g(b,d,e,a)})}}a.bindEntityEvents=function(a,c,e){g(a,c,e,d,b)},a.unbindEntityEvents=function(a,b,c){g(a,b,c,f,e)},a.proxyBindEntityEvents=function(b,c){return a.bindEntityEvents(this,b,c)},a.proxyUnbindEntityEvents=function(b,c){return a.unbindEntityEvents(this,b,c)}}(f);var h=["description","fileName","lineNumber","name","message","number"];return f.Error=f.extend.call(Error,{
29urlRoot:"http://marionettejs.com/docs/v"+f.VERSION+"/",constructor:function(a,b){c.isObject(a)?(b=a,a=b.message):b||(b={});var d=Error.call(this,a);c.extend(this,c.pick(d,h),c.pick(b,h)),this.captureStackTrace(),b.url&&(this.url=this.urlRoot+b.url)},captureStackTrace:function(){Error.captureStackTrace&&Error.captureStackTrace(this,f.Error)},toString:function(){return this.name+": "+this.message+(this.url?" See: "+this.url:"")}}),f.Error.extend=f.extend,f.Callbacks=function(){this._deferred=f.Deferred(),this._callbacks=[]},c.extend(f.Callbacks.prototype,{add:function(a,b){var d=c.result(this._deferred,"promise");this._callbacks.push({cb:a,ctx:b}),d.then(function(c){b&&(c.context=b),a.call(c.context,c.options)})},run:function(a,b){this._deferred.resolve({options:a,context:b})},reset:function(){var a=this._callbacks;this._deferred=f.Deferred(),this._callbacks=[],c.each(a,function(a){this.add(a.cb,a.ctx)},this)}}),f.Controller=function(a){this.options=a||{},c.isFunction(this.initialize)&&this.initialize(this.options)},f.Controller.extend=f.extend,c.extend(f.Controller.prototype,b.Events,{destroy:function(){return f._triggerMethod(this,"before:destroy",arguments),f._triggerMethod(this,"destroy",arguments),this.stopListening(),this.off(),this},triggerMethod:f.triggerMethod,mergeOptions:f.mergeOptions,getOption:f.proxyGetOption}),f.Object=function(a){this.options=c.extend({},c.result(this,"options"),a),this.initialize.apply(this,arguments)},f.Object.extend=f.extend,c.extend(f.Object.prototype,b.Events,{initialize:function(){},destroy:function(){return this.triggerMethod("before:destroy"),this.triggerMethod("destroy"),this.stopListening(),this},triggerMethod:f.triggerMethod,mergeOptions:f.mergeOptions,getOption:f.proxyGetOption,bindEntityEvents:f.proxyBindEntityEvents,unbindEntityEvents:f.proxyUnbindEntityEvents}
29),f.Region=f.Object.extend({constructor:function(a){if(this.options=a||{},this.el=this.getOption("el"),this.el=this.el instanceof b.$?this.el[0]:this.el,!this.el)throw new f.Error({name:"NoElError",message:'An "el" must be specified for a region.'});this.$el=this.getEl(this.el),f.Object.call(this,a)},show:function(a,b){if(this._ensureElement()){this._ensureViewIsIntact(a);var c=b||{},d=a!==this.currentView,e=!!c.preventDestroy,g=!!c.forceShow,h=!!this.currentView,i=d&&!e,j=d||g;if(h&&this.triggerMethod("before:swapOut",this.currentView,this,b),this.currentView&&delete this.currentView._parent,i?this.empty():h&&j&&this.currentView.off("destroy",this.empty,this),j){a.once("destroy",this.empty,this),a.render(),a._parent=this,h&&this.triggerMethod("before:swap",a,this,b),this.triggerMethod("before:show",a,this,b),f.triggerMethodOn(a,"before:show",a,this,b),h&&this.triggerMethod("swapOut",this.currentView,this,b);var k=f.isNodeAttached(this.el),l=[],m=c.triggerBeforeAttach||this.triggerBeforeAttach,n=c.triggerAttach||this.triggerAttach;return k&&m&&(l=this._displayedViews(a),this._triggerAttach(l,"before:")),this.attachHtml(a),this.currentView=a,k&&n&&(l=this._displayedViews(a),this._triggerAttach(l)),h&&this.triggerMethod("swap",a,this,b),this.triggerMethod("show",a,this,b),f.triggerMethodOn(a,"show",a,this,b),this}return this}},triggerBeforeAttach:!0,triggerAttach:!0,_triggerAttach:function(a,b){var d=(b||"")+"attach";c.each(a,function(a){f.triggerMethodOn(a,d,a,this)},this)},_displayedViews:function(a){return c.union([a],c.result(a,"_getNestedViews")||[])},_ensureElement:function(){if(c.isObject(this.el)||(this.$el=this.getEl(this.el),this.el=this.$el[0]),!this.$el||0===this.$el.length){if(this.getOption("allowMissingEl"))return!1;throw new f.Error('An "el" '+this.$el.selector+" must exist in DOM")}return!0},_ensureViewIsIntact:function(a){if(!a)throw new f.Error({name:"ViewNotValid",message:"The view passed is undefined and therefore invalid. You must pass a view instance to show."});if(a.isDestroyed)throw new f.Error({name:"ViewDestroyedError",message:'View (cid: "'+a.cid+'") has already been destroyed and cannot be used.'})},getEl:function(a){return b.$(a,f._getValue(this.options.parentEl,this))},attachHtml:function(a){this.$el.contents().detach(),this.el.appendChild(a.el)},empty:function(a){var b=this.currentView,c=f._getValue(a,"preventDestroy",this);return b?(b.off("destroy",this.empty,this),this.triggerMethod("before:empty",b),c||this._destroyView(),this.triggerMethod("empty",b),delete this.currentView,c&&this.$el.contents().detach(),this):void 0},_destroyView:function(){var a=this.currentView;a.destroy&&!a.isDestroyed?a.destroy():a.remove&&(a.remove(),a.isDestroyed=!0)},attachView:function(a){return this.currentView=a,this},hasView:function(){return!!this.currentView},reset:function(){return this.empty(),this.$el&&(this.el=this.$el.selector),delete this.$el,this}},{buildRegion:function(a,b){if(c.isString(a))return this._buildRegionFromSelector(a,b);if(a.selector||a.el||a.regionClass)return this._buildRegionFromObject(a,b);if(c.isFunction(a))return this._buildRegionFromRegionClass(a);throw new f.Error({message:"Improper region configuration type.",url:"marionette.region.html#region-configuration-types"})},_buildRegionFromSelector:function(a,b){return new b({el:a})},_buildRegionFromObject:function(a,b){var d=a.regionClass||b,e=c.omit(a,"selector","regionClass");return a.selector&&!e.el&&(e.el=a.selector),new d(e)},_buildRegionFromRegionClass:function(a){return new a}}),f.RegionManager=f.Controller.extend({constructor:function(a){this._regions={},this.length=0,f.Controller.call(this,a),this.addRegions(this.getOption("regions"))},addRegions:function(a,b){return a=f._getValue(a,this,arguments),c.reduce(a,function(a,d,e){return c.isString(d)&&(d={selector:d}),d.selector&&(d=c.defaults({},d,b)),a[e]=this.addRegion(e,d),a},{},this)},addRegion:function(a,b){var c;return c=b instanceof f.Region?b:f.Region.buildRegion(b,f.Region),this.triggerMethod("before:add:region",a,c),c._parent=this,this._store(a,c),this.triggerMethod("add:region",a,c),c},get:function(a){return this._regions[a]},getRegions:function(){return c.clone(this._regions)},removeRegion:function(a){var b=this._regions[a];return this._remove(a,b),b},removeRegions:function(){var a=this.getRegions();return c.each(this._regions,function(a,b){this._remove(b,a)},this),a},emptyRegions:function(){var a=this.getRegions();return c.invoke(a,"empty"),a}
29,destroy:function(){return this.removeRegions(),f.Controller.prototype.destroy.apply(this,arguments)},_store:function(a,b){this._regions[a]||this.length++,this._regions[a]=b},_remove:function(a,b){this.triggerMethod("before:remove:region",a,b),b.empty(),b.stopListening(),delete b._parent,delete this._regions[a],this.length--,this.triggerMethod("remove:region",a,b)}}),f.actAsCollection(f.RegionManager.prototype,"_regions"),f.TemplateCache=function(a){this.templateId=a},c.extend(f.TemplateCache,{templateCaches:{},get:function(a,b){var c=this.templateCaches[a];return c||(c=new f.TemplateCache(a),this.templateCaches[a]=c),c.load(b)},clear:function(){var a,b=c.toArray(arguments),d=b.length;if(d>0)for(a=0;d>a;a++)delete this.templateCaches[b[a]];else this.templateCaches={}}}),c.extend(f.TemplateCache.prototype,{load:function(a){if(this.compiledTemplate)return this.compiledTemplate;var b=this.loadTemplate(this.templateId,a);return this.compiledTemplate=this.compileTemplate(b,a),this.compiledTemplate},loadTemplate:function(a){var c=b.$(a).html();if(!c||0===c.length)throw new f.Error({name:"NoTemplateError",message:'Could not find template: "'+a+'"'});return c},compileTemplate:function(a,b){return c.template(a,b)}}),f.Renderer={render:function(a,b){if(!a)throw new f.Error({name:"TemplateNotFoundError",message:"Cannot render the template since its false, null or undefined."});return(c.isFunction(a)?a:f.TemplateCache.get(a))(b)}},f.View=b.View.extend({isDestroyed:!1,constructor:function(a){c.bindAll(this,"render"),a=f._getValue(a,this),this.options=c.extend({},c.result(this,"options"),a),this._behaviors=f.Behaviors(this),b.View.call(this,this.options),f.MonitorDOMRefresh(this)},getTemplate:function(){return this.getOption("template")},serializeModel:function(a){return a.toJSON.apply(a,c.rest(arguments))},mixinTemplateHelpers:function(a){a=a||{};var b=this.getOption("templateHelpers");return b=f._getValue(b,this),c.extend(a,b)},normalizeUIKeys:function(a){var b=c.result(this,"_uiBindings");return f.normalizeUIKeys(a,b||c.result(this,"ui"))},normalizeUIValues:function(a,b){var d=c.result(this,"ui"),e=c.result(this,"_uiBindings");return f.normalizeUIValues(a,e||d,b)},configureTriggers:function(){if(this.triggers){var a=this.normalizeUIKeys(c.result(this,"triggers"));return c.reduce(a,function(a,b,c){return a[c]=this._buildViewTrigger(b),a},{},this)}},delegateEvents:function(a){return this._delegateDOMEvents(a),this.bindEntityEvents(this.model,this.getOption("modelEvents")),this.bindEntityEvents(this.collection,this.getOption("collectionEvents")),c.each(this._behaviors,function(a){a.bindEntityEvents(this.model,a.getOption("modelEvents")),a.bindEntityEvents(this.collection,a.getOption("collectionEvents"))},this),this},_delegateDOMEvents:function(a){var d=f._getValue(a||this.events,this);d=this.normalizeUIKeys(d),c.isUndefined(a)&&(this.events=d);var e={},g=c.result(this,"behaviorEvents")||{},h=this.configureTriggers(),i=c.result(this,"behaviorTriggers")||{};c.extend(e,g,d,h,i),b.View.prototype.delegateEvents.call(this,e)},undelegateEvents:function(){return b.View.prototype.undelegateEvents.apply(this,arguments),this.unbindEntityEvents(this.model,this.getOption("modelEvents")),this.unbindEntityEvents(this.collection,this.getOption("collectionEvents")),c.each(this._behaviors,function(a){a.unbindEntityEvents(this.model,a.getOption("modelEvents")),a.unbindEntityEvents(this.collection,a.getOption("collectionEvents"))},this),this},_ensureViewIsIntact:function(){if(this.isDestroyed)throw new f.Error({name:"ViewDestroyedError",message:'View (cid: "'+this.cid+'") has already been destroyed and cannot be used.'})},destroy:function(){if(this.isDestroyed)return this;var a=c.toArray(arguments);return this.triggerMethod.apply(this,["before:destroy"].concat(a)),this.isDestroyed=!0,this.triggerMethod.apply(this,["destroy"].concat(a)),this.unbindUIElements(),this.isRendered=!1,this.remove(),c.invoke(this._behaviors,"destroy",a),this},bindUIElements:function(){this._bindUIElements(),c.invoke(this._behaviors,this._bindUIElements)},_bindUIElements:function(){if(this.ui){this._uiBindings||(this._uiBindings=this.ui);var a=c.result(this,"_uiBindings");this.ui={},c.each(a,function(a,b){this.ui[b]=this.$(a)},this)}},unbindUIElements:function(){this._unbindUIElements(),c.invoke(this._behaviors,this._unbindUIElements)},_unbindUIElements:function(){this.ui&&this._uiBindings&&(c.each(this.ui,function(a,b){delete this.ui[b]},this),this.ui=this._uiBindings,delete this._uiBindings)},_buildViewTrigger:function(a){var b=c.isObject(a),d=c.defaults({},b?a:{},{preventDefault:!0,stopPropagation:!0}),e=b?d.event:a;return function(a){a&&(a.preventDefault&&d.preventDefault&&a.preventDefault(),a.stopPropagation&&d.stopPropagation&&a.stopPropagation());var b={view:this,model:this.model,collection:this.collection};this.triggerMethod(e,b)}},setElement:function(){var a=b.View.prototype.setElement.apply(this,arguments);return c.invoke(this._behaviors,"proxyViewProperties",this),a},triggerMethod:function(){var a=f._triggerMethod(this,arguments);return this._triggerEventOnBehaviors(arguments),this._triggerEventOnParentLayout(arguments[0],c.rest(arguments)),a},_triggerEventOnBehaviors:function(a){for(var b=f._triggerMethod,c=this._behaviors,d=0,e=c&&c.length;e>d;d++)b(c[d],a)},_triggerEventOnParentLayout:function(a,b){var d=this._parentLayoutView();if(d){var e=f.getOption(d,"childViewEventPrefix"),g=e+":"+a;f._triggerMethod(d,[g,this].concat(b));var h=f.getOption(d,"childEvents"),i=d.normalizeMethods(h);i&&c.isFunction(i[a])&&i[a].apply(d,[this].concat(b))}},_getImmediateChildren:function(){return[]},_getNestedViews:function(){var a=this._getImmediateChildren();return a.length?c.reduce(a,function(a,b){return b._getNestedViews?a.concat(b._getNestedViews()):a},a):a},_getAncestors:function(){for(var a=[],b=this._parent;b;)a.push(b),b=b._parent;return a},_parentLayoutView:function(){var a=this._getAncestors();return c.find(a,function(a){return a instanceof f.LayoutView})},normalizeMethods:f.normalizeMethods,mergeOptions:f.mergeOptions,getOption:f.proxyGetOption,bindEntityEvents:f.proxyBindEntityEvents,unbindEntityEvents:f.proxyUnbindEntityEvents}),f.ItemView=f.View.extend({constructor:function(){f.View.apply(this,arguments)},serializeData:function(){if(!this.model&&!this.collection)return{};var a=[this.model||this.collection];return arguments.length&&a.push.apply(a,arguments),this.model?this.serializeModel.apply(this,a):{items:this.serializeCollection.apply(this,a)}},serializeCollection:function(a){return a.toJSON.apply(a,c.rest(arguments))},render:function(){return this._ensureViewIsIntact(),this.triggerMethod("before:render",this),this._renderTemplate(),this.isRendered=!0,this.bindUIElements(),this.triggerMethod("render",this),this},_renderTemplate:function(){var a=this.getTemplate();if(!1!==a){if(!a)throw new f.Error({name:"UndefinedTemplateError",message:"Cannot render the template since it is null or undefined."});var b=this.mixinTemplateHelpers(this.serializeData()),c=f.Renderer.render(a,b,this);return this.attachElContent(c),this}},attachElContent:function(a){return this.$el.html(a),this}}),f.CollectionView=f.View.extend({childViewEventPrefix:"childview",sort:!0,constructor:function(){this.once("render",this._initialEvents),this._initChildViewStorage(),f.View.apply(this,arguments),this.on("show",this._onShowCalled),this.initRenderBuffer()},initRenderBuffer:function(){this._bufferedChildren=[]}
29,startBuffering:function(){this.initRenderBuffer(),this.isBuffering=!0},endBuffering:function(){this.isBuffering=!1,this._triggerBeforeShowBufferedChildren(),this.attachBuffer(this),this._triggerShowBufferedChildren(),this.initRenderBuffer()},_triggerBeforeShowBufferedChildren:function(){this._isShown&&c.each(this._bufferedChildren,c.partial(this._triggerMethodOnChild,"before:show"))},_triggerShowBufferedChildren:function(){this._isShown&&(c.each(this._bufferedChildren,c.partial(this._triggerMethodOnChild,"show")),this._bufferedChildren=[])},_triggerMethodOnChild:function(a,b){f.triggerMethodOn(b,a)},_initialEvents:function(){this.collection&&(this.listenTo(this.collection,"add",this._onCollectionAdd),this.listenTo(this.collection,"remove",this._onCollectionRemove),this.listenTo(this.collection,"reset",this.render),this.getOption("sort")&&this.listenTo(this.collection,"sort",this._sortViews))},_onCollectionAdd:function(a,b,d){var e;if(e=void 0!==d.at?d.at:c.indexOf(this._filteredSortedModels(),a),this._shouldAddChild(a,e)){this.destroyEmptyView();var f=this.getChildView(a);this.addChild(a,f,e)}},_onCollectionRemove:function(a){var b=this.children.findByModel(a);this.removeChildView(b),this.checkEmpty()},_onShowCalled:function(){this.children.each(c.partial(this._triggerMethodOnChild,"show"))},render:function(){return this._ensureViewIsIntact(),this.triggerMethod("before:render",this),this._renderChildren(),this.isRendered=!0,this.triggerMethod("render",this),this},reorder:function(){var a=this.children,b=this._filteredSortedModels();if(c.find(b,function(b){return!a.findByModel(b)}))this.render();else{var d=c.map(b,function(b){return a.findByModel(b).el});this.triggerMethod("before:reorder"),this._appendReorderedChildren(d),this.triggerMethod("reorder")}},resortView:function(){f.getOption(this,"reorderOnSort")?this.reorder():this.render()},_sortViews:function(){var a=this._filteredSortedModels();c.find(a,function(a,b){var c=this.children.findByModel(a);return!c||c._index!==b},this)&&this.resortView()},_emptyViewIndex:-1,_appendReorderedChildren:function(a){this.$el.append(a)},_renderChildren:function(){this.destroyEmptyView(),this.destroyChildren(),this.isEmpty(this.collection)?this.showEmptyView():(this.triggerMethod("before:render:collection",this),this.startBuffering(),this.showCollection(),this.endBuffering(),this.triggerMethod("render:collection",this),this.children.isEmpty()&&this.showEmptyView())},showCollection:function(){var a,b=this._filteredSortedModels();c.each(b,function(b,c){a=this.getChildView(b),this.addChild(b,a,c)},this)},_filteredSortedModels:function(){var a,b=this.getViewComparator();return a=b?c.isString(b)||1===b.length?this.collection.sortBy(b,this):c.clone(this.collection.models).sort(c.bind(b,this)):this.collection.models,this.getOption("filter")&&(a=c.filter(a,function(a,b){return this._shouldAddChild(a,b)},this)),a},showEmptyView:function(){var a=this.getEmptyView();if(a&&!this._showingEmptyView){this.triggerMethod("before:render:empty"),this._showingEmptyView=!0;var c=new b.Model;this.addEmptyView(c,a),this.triggerMethod("render:empty")}},destroyEmptyView:function(){this._showingEmptyView&&(this.triggerMethod("before:remove:empty"),this.destroyChildren(),delete this._showingEmptyView,this.triggerMethod("remove:empty"))},getEmptyView:function(){return this.getOption("emptyView")},addEmptyView:function(a,b){var d=this.getOption("emptyViewOptions")||this.getOption("childViewOptions");c.isFunction(d)&&(d=d.call(this,a,this._emptyViewIndex));var e=this.buildChildView(a,b,d);e._parent=this,this.proxyChildEvents(e),this._isShown&&f.triggerMethodOn(e,"before:show"),this.children.add(e),this.renderChildView(e,this._emptyViewIndex),this._isShown&&f.triggerMethodOn(e,"show")},getChildView:function(){var a=this.getOption("childView");if(!a)throw new f.Error({name:"NoChildViewError",message:'A "childView" must be specified'});return a},addChild:function(a,b,c){var d=this.getOption("childViewOptions");d=f._getValue(d,this,[a,c]);var e=this.buildChildView(a,b,d);return this._updateIndices(e,!0,c),this._addChildView(e,c),e._parent=this,e},_updateIndices:function(a,b,c){this.getOption("sort")&&(b&&(a._index=c),this.children.each(function(c){c._index>=a._index&&(c._index+=b?1:-1)}))},_addChildView:function(a,b){this.proxyChildEvents(a),this.triggerMethod("before:add:child",a),this._isShown&&!this.isBuffering&&f.triggerMethodOn(a,"before:show"),this.children.add(a),this.renderChildView(a,b),this._isShown&&!this.isBuffering&&f.triggerMethodOn(a,"show"),this.triggerMethod("add:child",a)},renderChildView:function(a,b){return a.render(),this.attachHtml(this,a,b),a},buildChildView:function(a,b,d){return new b(c.extend({model:a},d))},removeChildView:function(a){return a&&(this.triggerMethod("before:remove:child",a),a.destroy?a.destroy():a.remove&&a.remove(),delete a._parent,this.stopListening(a),this.children.remove(a),this.triggerMethod("remove:child",a),this._updateIndices(a,!1)),a},isEmpty:function(){return!this.collection||0===this.collection.length},checkEmpty:function(){this.isEmpty(this.collection)&&this.showEmptyView()},attachBuffer:function(a){a.$el.append(this._createBuffer(a))},_createBuffer:function(a){var b=document.createDocumentFragment();return c.each(a._bufferedChildren,function(a){b.appendChild(a.el)}),b},attachHtml:function(a,b,c){a.isBuffering?a._bufferedChildren.splice(c,0,b):a._insertBefore(b,c)||a._insertAfter(b)},_insertBefore:function(a,b){var c;return this.getOption("sort")&&b<this.children.length-1&&(c=this.children.find(function(a){return a._index===b+1})),!!c&&(c.$el.before(a.el),!0)},_insertAfter:function(a){this.$el.append(a.el)}
29,_initChildViewStorage:function(){this.children=new b.ChildViewContainer},destroy:function(){return this.isDestroyed?this:(this.triggerMethod("before:destroy:collection"),this.destroyChildren(),this.triggerMethod("destroy:collection"),f.View.prototype.destroy.apply(this,arguments))},destroyChildren:function(){var a=this.children.map(c.identity);return this.children.each(this.removeChildView,this),this.checkEmpty(),a},_shouldAddChild:function(a,b){var d=this.getOption("filter");return!c.isFunction(d)||d.call(this,a,b,this.collection)},proxyChildEvents:function(a){var b=this.getOption("childViewEventPrefix");this.listenTo(a,"all",function(){var d=c.toArray(arguments),e=d[0],f=this.normalizeMethods(c.result(this,"childEvents"));d[0]=b+":"+e,d.splice(1,0,a),void 0!==f&&c.isFunction(f[e])&&f[e].apply(this,d.slice(1)),this.triggerMethod.apply(this,d)})},_getImmediateChildren:function(){return c.values(this.children._views)},getViewComparator:function(){return this.getOption("viewComparator")}}),f.CompositeView=f.CollectionView.extend({constructor:function(){f.CollectionView.apply(this,arguments)},_initialEvents:function(){this.collection&&(this.listenTo(this.collection,"add",this._onCollectionAdd),this.listenTo(this.collection,"remove",this._onCollectionRemove),this.listenTo(this.collection,"reset",this._renderChildren),this.getOption("sort")&&this.listenTo(this.collection,"sort",this._sortViews))},getChildView:function(){return this.getOption("childView")||this.constructor},serializeData:function(){var a={};return this.model&&(a=c.partial(this.serializeModel,this.model).apply(this,arguments)),a},render:function(){return this._ensureViewIsIntact(),this._isRendering=!0,this.resetChildViewContainer(),this.triggerMethod("before:render",this),this._renderTemplate(),this._renderChildren(),this._isRendering=!1,this.isRendered=!0,this.triggerMethod("render",this),this},_renderChildren:function(){(this.isRendered||this._isRendering)&&f.CollectionView.prototype._renderChildren.call(this)},_renderTemplate:function(){var a={};a=this.serializeData(),a=this.mixinTemplateHelpers(a),this.triggerMethod("before:render:template");var b=this.getTemplate(),c=f.Renderer.render(b,a,this);this.attachElContent(c),this.bindUIElements(),this.triggerMethod("render:template")},attachElContent:function(a){return this.$el.html(a),this},attachBuffer:function(a){this.getChildViewContainer(a).append(this._createBuffer(a))},_insertAfter:function(a){this.getChildViewContainer(this,a).append(a.el)},_appendReorderedChildren:function(a){this.getChildViewContainer(this).append(a)},getChildViewContainer:function(a){if("$childViewContainer"in a)return a.$childViewContainer;var b,c=f.getOption(a,"childViewContainer");if(c){var d=f._getValue(c,a);if(b="@"===d.charAt(0)&&a.ui?a.ui[d.substr(4)]:a.$(d),b.length<=0)throw new f.Error({name:"ChildViewContainerMissingError",message:'The specified "childViewContainer" was not found: '+a.childViewContainer})}else b=a.$el;return a.$childViewContainer=b,b},resetChildViewContainer:function(){this.$childViewContainer&&delete this.$childViewContainer}}),f.LayoutView=f.ItemView.extend({regionClass:f.Region,options:{destroyImmediate:!1},childViewEventPrefix:"childview",constructor:function(a){a=a||{},this._firstRender=!0,this._initializeRegions(a),f.ItemView.call(this,a)},render:function(){return this._ensureViewIsIntact(),this._firstRender?this._firstRender=!1:this._reInitializeRegions(),f.ItemView.prototype.render.apply(this,arguments)},destroy:function(){return this.isDestroyed?this:(!0===this.getOption("destroyImmediate")&&this.$el.remove(),this.regionManager.destroy(),f.ItemView.prototype.destroy.apply(this,arguments))},showChildView:function(a,b){return this.getRegion(a).show(b)},getChildView:function(a){return this.getRegion(a).currentView},addRegion:function(a,b){var c={};return c[a]=b,this._buildRegions(c)[a]},addRegions:function(a){return this.regions=c.extend({},this.regions,a),this._buildRegions(a)},removeRegion:function(a){return delete this.regions[a],this.regionManager.removeRegion(a)},getRegion:function(a){return this.regionManager.get(a)},getRegions:function(){return this.regionManager.getRegions()},_buildRegions:function(a){var b={regionClass:this.getOption("regionClass"),parentEl:c.partial(c.result,this,"el")};return this.regionManager.addRegions(a,b)},_initializeRegions:function(a){var b;this._initRegionManager(),b=f._getValue(this.regions,this,[a])||{};var d=this.getOption.call(a,"regions");d=f._getValue(d,this,[a]),c.extend(b,d),b=this.normalizeUIValues(b,["selector","el"]),this.addRegions(b)},_reInitializeRegions:function(){this.regionManager.invoke("reset")},getRegionManager:function(){return new f.RegionManager},_initRegionManager:function(){this.regionManager=this.getRegionManager(),this.regionManager._parent=this,this.listenTo(this.regionManager,"before:add:region",function(a){this.triggerMethod("before:add:region",a)}),this.listenTo(this.regionManager,"add:region",function(a,b){this[a]=b,this.triggerMethod("add:region",a,b)}),this.listenTo(this.regionManager,"before:remove:region",function(a){this.triggerMethod("before:remove:region",a)}),this.listenTo(this.regionManager,"remove:region",function(a,b){delete this[a],this.triggerMethod("remove:region",a,b)})},_getImmediateChildren:function(){return c.chain(this.regionManager.getRegions()).pluck("currentView").compact().value(
29)}}),f.Behavior=f.Object.extend({constructor:function(a,b){this.view=b,this.defaults=c.result(this,"defaults")||{},this.options=c.extend({},this.defaults,a),this.ui=c.extend({},c.result(b,"ui"),c.result(this,"ui")),f.Object.apply(this,arguments)},$:function(){return this.view.$.apply(this.view,arguments)},destroy:function(){return this.stopListening(),this},proxyViewProperties:function(a){this.$el=a.$el,this.el=a.el}}),f.Behaviors=function(a,b){function c(a,d){return b.isObject(a.behaviors)?(d=c.parseBehaviors(a,d||b.result(a,"behaviors")),c.wrap(a,d,b.keys(g)),d):{}}function d(a,b){this._view=a,this._behaviors=b,this._triggers={}}function e(a){return a._uiBindings||a.ui}var f=/^(\S+)\s*(.*)$/,g={behaviorTriggers:function(a,b){return new d(this,b).buildBehaviorTriggers()},behaviorEvents:function(c,d){var g={};return b.each(d,function(c,d){var h={},i=b.clone(b.result(c,"events"))||{};i=a.normalizeUIKeys(i,e(c));var j=0;b.each(i,function(a,e){var g=e.match(f),i=g[1]+"."+[this.cid,d,j++," "].join(""),k=g[2],l=i+k,m=b.isFunction(a)?a:c[a];h[l]=b.bind(m,c)},this),g=b.extend(g,h)},this),g}};return b.extend(c,{behaviorsLookup:function(){throw new a.Error({message:"You must define where your behaviors are stored.",url:"marionette.behaviors.html#behaviorslookup"})},getBehaviorClass:function(b,d){return b.behaviorClass?b.behaviorClass:a._getValue(c.behaviorsLookup,this,[b,d])[d]},parseBehaviors:function(a,d){return b.chain(d).map(function(d,e){var f=c.getBehaviorClass(d,e),g=new f(d,a);return[g].concat(c.parseBehaviors(a,b.result(g,"behaviors")))}).flatten().value()},wrap:function(a,c,d){b.each(d,function(d){a[d]=b.partial(g[d],a[d],c)})}}),b.extend(d.prototype,{buildBehaviorTriggers:function(){return b.each(this._behaviors,this._buildTriggerHandlersForBehavior,this),this._triggers},_buildTriggerHandlersForBehavior:function(c,d){var f=b.clone(b.result(c,"triggers"))||{};f=a.normalizeUIKeys(f,e(c)),b.each(f,b.bind(this._setHandlerForBehavior,this,c,d))},_setHandlerForBehavior:function(a,b,c,d){var e=d.replace(/^\S+/,function(a){return a+".behaviortriggers"+b});this._triggers[e]=this._view._buildViewTrigger(c)}}),c}(f,c),f.AppRouter=b.Router.extend({constructor:function(a){this.options=a||{},b.Router.apply(this,arguments);var c=this.getOption("appRoutes"),d=this._getController();this.processAppRoutes(d,c),this.on("route",this._processOnRoute,this)},appRoute:function(a,b){var c=this._getController();this._addAppRoute(c,a,b)},_processOnRoute:function(a,b){if(c.isFunction(this.onRoute)){var d=c.invert(this.getOption("appRoutes"))[a];this.onRoute(a,d,b)}},processAppRoutes:function(a,b){if(b){var d=c.keys(b).reverse();c.each(d,function(c){this._addAppRoute(a,c,b[c])},this)}},_getController:function(){return this.getOption("controller")},_addAppRoute:function(a,b,d){var e=a[d];if(!e)throw new f.Error('Method "'+d+'" was not found on the controller');this.route(b,d,c.bind(e,a))},mergeOptions:f.mergeOptions,getOption:f.proxyGetOption,triggerMethod:f.triggerMethod,bindEntityEvents:f.proxyBindEntityEvents,unbindEntityEvents:f.proxyUnbindEntityEvents}),f.Application=f.Object.extend({constructor:function(a){this._initializeRegions(a),this._initCallbacks=new f.Callbacks,this.submodules={},c.extend(this,a),this._initChannel(),f.Object.call(this,a)},execute:function(){this.commands.execute.apply(this.commands,arguments)},request:function(){return this.reqres.request.apply(this.reqres,arguments)},addInitializer:function(a){this._initCallbacks.add(a)},start:function(a){this.triggerMethod("before:start",a),this._initCallbacks.run(a,this),this.triggerMethod("start",a)},addRegions:function(a){return this._regionManager.addRegions(a)},emptyRegions:function(){return this._regionManager.emptyRegions()},removeRegion:function(a){return this._regionManager.removeRegion(a)},getRegion:function(a){return this._regionManager.get(a)},getRegions:function(){return this._regionManager.getRegions()},module:function(a,b){var d=f.Module.getClass(b),e=c.toArray(arguments);return e.unshift(this),d.create.apply(d,e)},getRegionManager:function(){return new f.RegionManager},_initializeRegions:function(a){var b=c.isFunction(this.regions)?this.regions(a):this.regions||{};this._initRegionManager();var d=f.getOption(a,"regions");return c.isFunction(d)&&(d=d.call(this,a)),c.extend(b,d),this.addRegions(b),this},_initRegionManager:function(){this._regionManager=this.getRegionManager(),this._regionManager._parent=this,this.listenTo(this._regionManager,"before:add:region",function(){f._triggerMethod(this,"before:add:region",arguments)}),this.listenTo(this._regionManager,"add:region",function(a,b){this[a]=b,f._triggerMethod(this,"add:region",arguments)}),this.listenTo(this._regionManager,"before:remove:region",function(){f._triggerMethod(this,"before:remove:region",arguments)}),this.listenTo(this._regionManager,"remove:region",function(a){delete this[a],f._triggerMethod(this,"remove:region",arguments)})},_initChannel:function(){this.channelName=c.result(this,"channelName")||"global",this.channel=c.result(this,"channel")||b.Wreqr.radio.channel(this.channelName),this.vent=c.result(this,"vent")||this.channel.vent,this.commands=c.result(this,"commands")||this.channel.commands,this.reqres=c.result(this,"reqres")||this.channel.reqres}}),f.Module=function(a,b,d){this.moduleName=a,this.options=c.extend({},this.options,d),this.initialize=d.initialize||this.initialize,this.submodules={}
29,this._setupInitializersAndFinalizers(),this.app=b,c.isFunction(this.initialize)&&this.initialize(a,b,this.options)},f.Module.extend=f.extend,c.extend(f.Module.prototype,b.Events,{startWithParent:!0,initialize:function(){},addInitializer:function(a){this._initializerCallbacks.add(a)},addFinalizer:function(a){this._finalizerCallbacks.add(a)},start:function(a){this._isInitialized||(c.each(this.submodules,function(b){b.startWithParent&&b.start(a)}),this.triggerMethod("before:start",a),this._initializerCallbacks.run(a,this),this._isInitialized=!0,this.triggerMethod("start",a))},stop:function(){this._isInitialized&&(this._isInitialized=!1,this.triggerMethod("before:stop"),c.invoke(this.submodules,"stop"),this._finalizerCallbacks.run(void 0,this),this._initializerCallbacks.reset(),this._finalizerCallbacks.reset(),this.triggerMethod("stop"))},addDefinition:function(a,b){this._runModuleDefinition(a,b)},_runModuleDefinition:function(a,d){if(a){var e=c.flatten([this,this.app,b,f,b.$,c,d]);a.apply(this,e)}},_setupInitializersAndFinalizers:function(){this._initializerCallbacks=new f.Callbacks,this._finalizerCallbacks=new f.Callbacks},triggerMethod:f.triggerMethod}),c.extend(f.Module,{create:function(a,b,d){var e=a,f=c.drop(arguments,3);b=b.split(".");var g=b.length,h=[];return h[g-1]=d,c.each(b,function(b,c){var g=e;e=this._getModule(g,b,a,d),this._addModuleDefinition(g,e,h[c],f)},this),e},_getModule:function(a,b,d,e){var f=c.extend({},e),g=this.getClass(e),h=a[b];return h||(h=new g(b,d,f),a[b]=h,a.submodules[b]=h),h},getClass:function(a){var b=f.Module;return a?a.prototype instanceof b?a:a.moduleClass||b:b},_addModuleDefinition:function(a,b,c,d){var e=this._getDefine(c),f=this._getStartWithParent(c,b)
30;e&&b.addDefinition(e,d),this._addStartWithParent(a,b,f)},_getStartWithParent:function(a,b){var d;return c.isFunction(a)&&a.prototype instanceof f.Module?(d=b.constructor.prototype.startWithParent,!!c.isUndefined(d)||d):!c.isObject(a)||(d=a.startWithParent,!!c.isUndefined(d)||d)},_getDefine:function(a){return!c.isFunction(a)||a.prototype instanceof f.Module?c.isObject(a)?a.define:null:a},_addStartWithParent:function(a,b,c){b.startWithParent=b.startWithParent&&c,b.startWithParent&&!b.startWithParentIsConfigured&&(b.startWithParentIsConfigured=!0,a.addInitializer(function(a){b.startWithParent&&b.start(a)}))}}),f}),define("c_019_25_ModuleConstants",["underscore","c_019_25_CommonConstants"],function(a,b){"use strict";return{GENERIC_CSS_CLASSES:{HIDDEN:"hidden",DEALER_TYPE_PREFIX:"dealer-type-",DISABLED:"disabled",BTN_DISABLED:"btn-disabled"},ARIA_TAGS:{ARIA_HIDDEN:"aria-hidden"},BASE_CONTROLLER:{OPTIONS:a.extend({CONTENT:"content",REGION:"region"},b.OPTIONS)},DEALER_LIST:{CONTROLLER_OPTIONS:{DEALER_TYPE_ICON_SETTINGS:"dealerTypeIconSettings",SELECTED_DEALER_CONTROLLER:"selectedDealerController",IS_CONFIGURATOR:"isConfigurator",MAPPING_DATA:"mappingData",MODEL_SERVICE_MAPPING_DATA:"modelServiceMappingData",CONTENT:"content",REALTIME_TESTDRIVE_BOOKING:"realtimeTestDriveBooking",HOME_TEST_DRIVE_ENABLED:"homeTestDriveEnabled",IS_MODEL_AND_POWERTRAIN_ENABLED:"powertrainEnabled",MAX_RESULT_COUNT:"maxResultCount",DEALER_BOOKING_ENABLED:"dealerBookingEnabled"},SELECTORS:{LIST_CONTAINER:".dealers",SELECT_DEALER_BUTTON:".select-dealer-cta",SELECT_DEALER_CONTAINER:".select-dealer-container",TITLE:".title",DEALER_SERVICE_LABEL:".dealer-service-label",WARNING_MESSAGE:".warning-message",BODY:"body",SUB_HEADER:".sub-header",DEALER_PHONE_LINK:".dealer-list-phone-link"},ITEM_VIEW_OPTIONS:{DISTANCE_UNIT_TEXT:"distanceUnitText",EVENT_AGGREGATOR:"eventAggregator",SELECT_DEALER_CTA_TEXT:"selectDealerCtaText",ENABLE_DEALER_NUMBER:"enableDealerNumber"},VIEW:{CSS_CLASSES:{HAS_LEGEND:"has-legend"}},VIEW_ITEM_MODEL:{ATTRIBUTES:{ADDRESS:"address",UNFORMATTED_ADDRESS:"unformattedAddress",DEALER_ID:"dealerId",DEALER_TYPE_CSS_CLASS:"dealerTypeCssClass",DEALER_TYPE_ICON_IMG_URL:"dealerTypeIconImgUrl",DISTANCE:"distance",FORMATTED_DISTANCE:"formattedDistance",NAME:"name",PHONE:"phone",PHONE_NO_SPACE:"phoneNoSpace",SHOW_PHONE:"showPhone",TYPE:"type",VEHICLES:"vehicles"}},VIEW_MODEL:{ATTRIBUTES:{IS_LEGEND_VISIBLE:"isLegendVisible",LEGEND_ITEMS:"legendItems",TITLE:"title",ENABLE_MODEL_DEALER_MAPPING:"enableModelDealerMapping",DEALER_SERVICE_LABEL:"dealerServiceLabel",DEALER_MODEL_SERVICE_LABEL:"dealerModelServiceLabel",DISABLED:"disabled",SUB_HEADER:"subHeader"}},EVENTS:{DEALERS_PHONE_UPDATE:"helios.dealer.update"}},ERROR:{SELECTORS:{ERROR_MESSAGE:".error-message"},VIEW_MODEL:{ATTRIBUTES:{ERROR_MESSAGE:"errorMessage"}}},MAIN:{CONTROLLER_EVENTS:{DEALER_SELECTED_BY_USER:"dealerSelectedByUser"},CONTROLLER_OPTIONS:a.extend({CONTENT:"content",DEEP_LINK_DEALER_FILTER_REQUEST_PARAM_VALUES:"deepLinkDealerFilterRequestParamValues",DEEP_LINK_DEALER_ID:"deepLinkDealerId",DEEP_LINK_LDID:"deepLinkLdid",DEEP_LINK_SEARCH_LO
30CATION:"deepLinkSearchLocation",HELIOS_OBJECT:"heliosObject",MAIN_VIEW:"mainView",SMART_LOCATION_CONTEXT:"smartLocationContext",ANALYTICS_MANAGER:"analyticsManager",IS_CONFIGURATOR:"isConfigurator",MAPPING_DATA:"mappingData",MODEL_SERVICE_MAPPING_DATA:"modelServiceMappingData",REALTIME_TESTDRIVE_ENABLED:"rtb",REALTIME_SERVICE_BOOKING:"rsb",HOME_TESTDRIVE_ENABLED:"homeTestDriveEnabled",TARGET_SYSTEM_ROUTING_ID:"targetSystemRoutingId",DEALER_BOOKING_ENABLED:"dealerBookingEnabled",DWS_TEMPLATE:"isDwsTemplate",IS_MODEL_AND_POWERTRAIN_ENABLED:"powertrainEnabled"},b.OPTIONS),REGIONS:{DEALER_LIST:"dealerList",ERROR:"error",LOADER:"loader",SEARCH:"search",SELECTED_DEALER:"selectedDealer",VEHICLE_SELECTOR:"vehicleSelector",ADDRESS_FIELDS:"addressFields",SWITCH_TO_DEALER:"switchToDealer",PREFERRED_DEALERS:"preferredDealers",ALTERNATE_POWERTRAIN_SEARCH:"alternatePowertrainSearch"},SELECTORS:{DEALER_LIST:".dealer-list",ERROR:".error",LOADER:".loader",SEARCH:".search",SELECTED_DEALER:".selected-dealer",VEHICLE_SELECTOR:".vehicle-selector",ADDRESS_FIELDS:".address-fields",SWITCH_TO_DEALER:".switch-to-dealer",PREFERRED_DEALERS:".preferred-dealers",DATEPICKER:"#datepicker",LOCATION_INPUT:".location-input",SUBMIT_FORM:".submit-form-button",ALTERNATE_POWERTRAIN_SEARCH:".alternate-powertrain-search",PRE_LAUNCH_RADIUS_SEARCH_NO_RESULTS_MESSAGE:".pre-launch-search-message-container",ALTERNATE_POWERTRAIN_TARGET_VEHICLE_MODEL_NAME:".c_019-40 [name=targetVehicleModelName]"},VIEW:{OPTIONS:a.extend({},b.OPTIONS),SELECTORS:{DEALER_ID_INPUT:".dealer-id",DEALER_NAME_INPUT:".dealer-name",MODEL_ID_INPUT:".model-id",MODEL_NAME_INPUT:".model-name",DEALER_LOCATOR_MAIN:".dealer-locator-main",SELECT_LOCATION_INSTRUCTION:".select-location-instruction",ZER0_RESULT_ERROR:".dealer-locator-main > .error",SELECTED_MODEL:".selected-model-name",SELECTED_POWERTRAIN:".selectedPowertrain",ALTERNATE_POWERTRAIN:".alternatePowertrain",HTD_BOOKING_SELECTED_MODEL:".models span.selectedValue",HTD_SELECTED:"[name=bookingType][value=home]:checked"}},VIEW_MODEL:{ATTRIBUTES:{DEALER_ID:"dealerId",DEALER_ID_ELEMENT_NAME:"dealerIdElementName",DEALER_NAME:"dealerName",DEALER_NAME_ELEMENT_NAME:"dealerNameElementName",MODEL_ID:"modelId",MODEL_ID_ELEMENT_NAME:"modelIdElementName",MODEL_NAME:"modelName",MODEL_NAME_ELEMENT_NAME:"modelNameElementName",IS_DEALER_LOCATOR_VISIBLE:"isDealerLocatorMainVisible",IS_SELECTED_DEALER_MANDATORY:"isSelectedDealerMandatory",COURTESY_CAR:"courtesyCar",SELECT_LOCATION_INSTRUCTION:"selectLocationInstruction",IS_SELECT_LOCATION_INSTRUCTION_VISIBLE:"isSelectLocationInstructionVisible"}}},PREFERRED_DEALERS:{SELECTORS:{LIST_CONTAINER:".preferred-dealers__list",LIST_CONTAINER_ITEMS:".preferred-dealers__list li"},VIEW_MODEL:{ATTRIBUTES:{DEALERS:"dealers",SHOW_ALL:"showAll",ENTER_LOCATION_TEXT:"enterLocationText",PREFERRED_DEALER_TEXT:"preferredDealerText",SELECT_DEALER_TEXT:"selectDealerText",VIEW_MORE_TEXT:"viewMoreText",SEARCH_ANOTHER_DEALER_TEXT:"searchAnotherDealerText"}}},SEARCH:{CONTROLLER_OPTIONS:{HELIOS_OBJECT:"heliosObject"},SELECTORS:{ENTER_LOCATION_LABEL:"label",LOCATION_TEXT_BOX:'input[type="text"]',SEARCH_FOR_DEALERS_BUTTON:".search-for-dealers-button",USE_CURRENT_LOCATION_BUTTON:".use-current-location-button",FIRST_RESULT_ITEM:".first-result-item",ERROR_CONTAINER:".error-container",LOCATION_FIELDS:".location-fields",LOCATION_LABEL:".location-label",LOCATION_INPUT:".location-input",DEALER_SEARCH_LOCATOR:".dealer-search-locator",ENTER_ADDRESS_MANUALLY_BUTTON:".enter-address-manually-button",MODEL_SELECTED:".select-model select",NEAREST_DEALER_CTA:".htd-nearest-dealer-cta",DEALER_HELP_TEXT_LABEL:".dealer-help-text",HOME_HELP_TEXT_LABEL:".home-help-text"},DATA_ATTRIBUTES:{GET_ADDRESS_NAME:"address-name",GET_PUBLISH_MODE:"publish-mode"},AUTOCOMPLETE_PROPS:{SELECTORS:{template:"#new-autocomplete-ctx",inputElement:".c_019-25 .location-input",confirmLocationCta:".confirm-location-cta",spanAutocomplete:".c_019-25 .autocomplete-suggestions",resultItem:".pac-item"},EVENTS:{getPostalCodeByAddressName:"getPostalCodeByAddressName",getPostalCodeByCoordinates:"getPostalCodeCoordinates"}},VIEW_MODEL:{ATTRIBUTES:{ENTER_LOCATION_TEXT:"enterLocationText",ENABLE_PMA_DEALER:"enablePmaDealer",ER
30ROR_MESSAGE:"errorMessage",POSTAL_CODE_PATTERN:"postalCodeValidation",LOCATION_SEARCH_ELEMENT_ID:"locationSearchElementId",LOCATION_SEARCH_ELEMENT_VALUE:"locationSearchElementValue",PLACEHOLDER_TEXT:"placeholderText",HTD_PLACEHOLDER_TEXT:"homeTestdrivePlaceholderText",SEARCH_FOR_DEALERS_TEXT:"searchForDealersText",USE_CURRENT_LOCATION_TEXT:"useCurrentLocationText",USER_SEARCH_TERM:"userSearchTerm",HELIOS_LOCATION:"heliosLocation",CHANGE_LOCATION_SEARCH_ELEMENT_VALUE:"change:locationSearchElementValue",DEALER_LOCATION_TEXT:"dealerLocationText",HOME_LOCATION_TEXT:"homeLocationText",ENTER_ADDRESS_MANUALLY_TEXT:"enterAddressManuallyText",IS_TYPE_HOME_TEST_DRIVE:"isTypeHomeTestDrive",IS_DEALERS_LOADED:"isDealersLoaded",IS_EXTERNAL_JOURNEY:"isExternalJourney",DEALER_HELP_TEXT:"dealerHelpText",HOME_HELP_TEXT:"homeHelpText",SEARCH_ANOTHER_DEALER:"searchAnotherDealer",HAS_PREFERRED_DEALERS:"hasPreferredDealers",PRE_LAUNCH_RADIUS_NO_RESULTS_MESSAGE:"preLaunchRadiusSearchNoResultsMessage"}},VIEW:{OPTIONS:a.extend({COUNTRY_CODE:"countryCode",HELIOS_OBJECT:"heliosObject",AUTOCOMPLETE:"autocomplete"},b.OPTIONS)}},SELECTED_DEALER:{CONTROLLER:{OPTIONS:{ADDRESS_FIELD_ORDER:"addressFieldOrder",DEALER_TYPE_ICON_SETTINGS:"dealerTypeIconSettings",REALTIME_TESTDRIVE_BOOKING:"realtimeTestDriveBooking",HOME_TEST_DRIVE_ENABLED:"homeTestDriveEnabled",MODEL_DEALER_SERVICE_MAPPING_ENABLED:"modelDealerServiceMappingEnabled"}},EVENTS:{CHANGE_SELECTED_DEALER_CLICK:"changeSelectedDealerClick",GET_VEHICLE_SPECS:"getVehicleSpecs",RESET_VEHICLE_SPECIFICATION:"resetVehicleSpecification"},SELECTORS:{ADDRESS:".address",CHANGE_SELECTED_DEALER_BUTTON:".change-selected-dealer",DISTANCE:".distance",DISTANCE_NUMBER:".distance-number",NAME:".name",TITLE:".title",ICON_IMG:".icon-img",DETAILS:".details",DEALER_LIST_PHONE_LINK:".dealer-list-phone-link",SAVE_DEALER:".save-dealer",SAVE_DEALER_BUTTON:".set-preferred-dealer"},CLASSES:{PREFERRED_DEALER:"preferred-dealer"},VIEW_MODEL:{ATTRIBUTES:{ADDRESS:"address",CHANGE_SELECTED_DEALER_CTA:"changeSelectedDealerCta",DISTANCE:"distance",DISTANCE_UNIT:"distanceUnit",IS_CHANGE_DEALER_BUTTON_VISIBLE:"isChangeDealerButtonVisible",NAME:"name",DEALER_ID:"dealerId",TITLE:"title",DEALER_TYPE_CSS_CLASS:"dealerTypeCssClass",DEALER_TYPE_ICON_IMG_URL:"dealerTypeIconImgUrl",PHONE:"phone",ENABLE_DEALER_NUMBER:"enableDealerNumber",ENABLE_MODEL_DEALER_MAPPING:"enableModelDealerMapping",DEALER_SERVICE_LABEL:"dealerServiceLabel",DEALER_MODEL_SERVICE_LABEL:"dealerModelServiceLabel",POSTAL_CODE_PATTERN:"postalCodeValidation",ENABLE_PMA_DEALER:"enablePmaDealer",PREFERRED_DEALERS:"preferredDealers",IS_ADD_TO_MYPAGE_ENABLED:"isAddToMyPageEnabled",ADD_TO_MYPAGE_TEXT:"addStoreToMyPageText",REMOVE_TO_MYPAGE_TEXT:"removeStoreToMyPageText",MYPAGE_STORE_ERROR_MESSAGE:"MyPageStoreErrorMessage",VEHICLE_SPECS:"vehicleSpecs",LAST_ADDED_DEALER:"lastAddedDealer"}},VIEW:{OPTIONS:a.extend({},b.OPTIONS)},ANALYTICS:{setAsPreferred:"set as preferred",setAsPreferredError:"set as preferred-error",removeAsPreferred:"remove as preferred",removeAsPreferredError:"remove as preferred-error",setAsPreferredErrorMessage:"set as preferred dealer error",removeAsPreferredErrorMessage:"remove preferred dealer error"}},VEHICLE_SELECTOR:{CONTROLLER:{OPTIONS:{ACTIVE_MODEL_ID:"activeModelId"}},VIEW_MODEL:{ATTRIBUTES:{LABEL:"label",VEHICLE_DATA:"vehicleData",PRE_SELECTED_MODEL_ID:"preSelectedModelId",SELECT_VEHICLE_INSTRUCTION:"selectVehicleInstruction",SELECT_DIFFERENT_VEHICLE_INSTRUCTION:"selectDifferentVehicleInstruction",IS_SELECT_DIFFERENT_VEHICLE_INSTRUCTION_VISIBLE:"isSelectDifferentVehicleInstructionVisible",DEALER_ID:"dealerId"}},OPTIONS:{EVENT_AGGREGATOR:"eventAggregator"},SELECTORS:{DATA_TEST_DRIVE_MODEL_ID:"data-test-drive-model-id",DATA_MODEL_ID:"data-model-id",VEHICLE_SELECTION_LIST:".vehicle_selection_list",SELECT_VEHICLE_INSTRUCTION:".select-vehicle-instruction",SELECT_DIFFERENT_VEHICLE_INSTRUCTION:".select-different-vehicle-instruction",SELECTED:":selected"},PROPERTIES:{SELECTED:"selected"}},ADDRESS_FIELDS:{VIEW_MODEL:{ATTRIBUTES:{USER_FULL_ADDRESS_FIELDS:"userFullAddressFields",HOME_FIND_DEALER_LABEL:"findDealerCtaLabel",HOME_TEST_DRIVE_ENABLED:"isHomeTestDriveEnabled",USER_FULL_ADDRESS_FIELDS_FORMATTING:"userFullAddressFieldsFormatting",IS_TYPE_HOME_TEST_DRIVE:"isTypeHomeTestDrive",FULL_ADDRESS_LABEL:"fullAddressLabel",EDIT_HOME_ADDRESS_LABEL:"editHomeAddressLabel",CLEAR_ADDRESS_FIELDS_LABEL:"clearAddressFieldsLabel",POSTAL_CODE_SEARCH:"postalCodeSearch",POSTAL_CODE_ERROR:"postalCodeError",IS_DEALERS_LOADED:"isDealerLoaded",IS_EXTERNAL_JOURNEY:"isExternalJourney",HOME_HELP_TEXT:"homeHelpText",POSTAL_CODE_NON_FUNCTIONAL:"data-enable-postal-code-non-functional"}},SELECTORS:{ADDRESS_FIELD:".full-address-field",FORM_ERROR:".error",C_019_FORM:".c_019 form",ADDRESS_VERIFIED_CLASS:"address-ver
30ified",FORM_COMPLETE:".complete"},OPTIONS:a.extend({},b.OPTIONS)},SWITCH_TO_DEALER:{VIEW_MODEL:{ATTRIBUTES:{LOCATION_NOT_AVAILABLE_MESSAGE:"locationNotAvailableMessage",SWITCH_TO_DTD_LABEL:"switchtoDTDLabel",JOURNEY_SEPARATOR_LABEL:"journeySeparatorLabel",HOME_TD_FALLBACK_LABEL:"homeTDFallbackLabel"}},OPTIONS:a.extend({},b.OPTIONS)},ALTERNATE_POWERTRAIN:{VIEW_MODEL:{ATTRIBUTES:{NO_RESULTS_MODEL_AND_POWERTRAIN:"noResults",ALTERNATE_OPTIONS_LABEL:"alternateOptionsLabel",ALTERNATE_POWERTRAIN_LABEL:"alternatePowertrainLabel",DEALERS_FURTHER_AWAY_LABEL:"furtherAwayDealersLabel",LOCAL_DEALER_LABEL:"localDealerLabel",ALTERNATE_POWERTRAIN:"alternatePowertrain"}},SELECTORS:{ALTERNATE_POWERTRAIN_INPUT:"#alternatePowertrain",LOCAL_DEALER_INPUT:"#localDealer",DEALERS_FURTHER_AWAY_INPUT:"#furtherAwayDealers",NO_RESULTS:".no-results-message",NO_RESULTS_CONTAINER:".no-results",EXTENDED_RADIUS:".search-extended-radius-option label",ALTERNATE_OPTIONS_LABEL:".alternate-options-label",NO_DEALER_ALTERNATE_OPTIONS:".no-dealer-alternate-options",POWERTRAIN_WRAPPER:".powertrain",HIDDEN_INPUT_ALTERNATE_POWERTRAIN:"[name=alternatePowertrain]",HIDDEN_INPUT_CURRENT_POWERTRAIN:"[name=vehiclePowertrain]",HIDDEN_INPUT_SELECTED_POWERTRAIN:"[name=powerTrain]"},EVENTS:{EVENT_AGGREGATOR:"eventAggregator"},OPTIONS:a.extend({},b.OPTIONS)}}}),define("c_019_25_AnalyticsController",["c_019_25_ApplicationConstants","c_019_25_ControllerConstants","marionette","c_019_25_ModelConstants","c_019_25_ModuleConstants"],function(a,b,c,d,e){"use strict";var f=a.EVENTS,g=b.ANALYTICS.OPTIONS;return c.Object.extend({initialize:function(){this._bindEvents()},_bindEvents:function(){this._getEventAggregator().on(f.ANALYTICS_SEARCH,this._onSearch,this).off(f.ANALYTICS_DEALER_INTERACTION).on(f.ANALYTICS_DEALER_INTERACTION,this._onDealerInteraction,this).off(f.ANALYTICS_DEALER_PHONE_LINK_INTERACTION).on(f.ANALYTICS_DEALER_PHONE_LINK_INTERACTION,this._onDealerPhoneLinkInteraction,this).on(f.DEALER_SEARCH_COMPLETE,function(a){this._onSearchComplete(a,this._generalSearchData)},this).on(f.DEALER_SEARCH_COMPLETE_ZERO_RESULTS,function(){this._onSearchCompleteZeroResults(this._generalSearchData)},this).on(f.DEALER_SEARCH_ERROR,function(){this._onSearchCompleteZeroResults(this._generalSearchData)},this).on(f.FIND_NEAREST_DEALER,this._onFindMyNearestDealer,this).on(f.SWITCH_TO_DEALER_TEST_DRIVE,this._onSwitchToDealerTestdriveCtaClick,this).on(f.NO_HOME_TESTDRIVE_RESULTS,this._onNoHomeTestdriveResultsAnalytics,this).off(f.CHANGE_DEALER_CTA).on(f.CHANGE_DEALER_CTA,this._onChangeDealerCtaAnalytics,this).on(f.GET_DEALER_ADDRESS,this._onGetDealerAddressAnalytics,this).on(f.ADD_EDIT_CLEAR_ADDRESS_LINKS,this._onAddEditClearAddressLinks,this).on(f.TRACK_DEALER_MODEL_SERVICE_LABEL,this._trackDealerModelServiceLabel,this).on(f.TRACK_TOOGLE_STORE_TO_MYPAGE,this._onToogleStoreToMyPage,this),this._isModelPowertrainEnabled()&&this._getEventAggregator().on(f.TRACK_NO_DEALERS_POWERTRAIN,this._trackNoDealersPowertrain,this).on(f.TRACK_ALTERNATE_OPTION,this._trackPowertrainAlternateOptions,this)},_getEventAggregator:function(){return this.options[g.EVENT_AGGREGATOR]},_getTrackingCodes:function(){return this.options[g.TRACKING_CODES]},_isModelPowertrainEnabled:function(){return HELIOS.components.c_019_39&&HELIOS.components.c_019_39.powertrainEnabled},_getAnalyticsManager:function(){return this.options[g.ANALYTICS_MANAGER]},_getAnalyticsSettings:function(){return this.options[g.ANALYTICS_SETTINGS]},_onSearch:function(b,c,d){var e=$(a.CSS_CLASSES.DEALER_SELECTOR);e&&e.hasClass(a.CSS_CLASSES.TRACKED)&&e.removeClass(a.CSS_CLASSES.TRACKED),this._generalSearchData=this._getGeneralSearchData(b,c,d)},_getGeneralSearchData:function(b,c,d){var e=this._getTrackingCodes(),f=e.trackingVars.search,g=f.searchTermType,h={};switch(h[f.componentId]=e.componentIds.c19_25_Dealer_Locator,h[f.searchType]=a.ANALYTICS.SEARCH_TYPE,h[f.action]=e.eventTypes.search,b){case g.userSearch:h[f.searchTerm]=d+"|"+c.location.address;break;case g.geolocation:h[f.searchTerm]=g.geolocation+"|"+c.location.address}return h},_onSearchComplete:function(b,c){var d=this._getTrackingCodes(),e=d.trackingVars.search,f=$(a.CSS_CLASSES.DEALER_SELECTOR);c&&f.length>0&&!f.hasClass(a.CSS_CLASSES.TRACKED)&&(c[e.searchResults]=b.length,f.addClass(a.CSS_CLASSES.TRACKED),this._getAnalyticsManager().tag(d.eventTypes.search,c))},_onSearchCompleteZeroResults:function(c){var d=this._getTrackingCodes(),e=d.trackingVars.search,f=$(a.CSS_CLASSES.DEALER_SELECTOR);c&&f.length>0&&!f.hasClass(a.CSS_CLASSES.TRACKED)&&(c[e.searchResults]=b.ANALYTICS.ZERO_RESULTS,f.addClass(a.CSS_CLASSES.TRACKED),this._getAnalyticsManager().tag(d.eventTypes.search,c))},_onDealerInteraction:function(b,c){var f=this._getTrackingCodes(),g=e.DEALER_LIST.VIEW_ITEM_MODEL.ATTRIBUTES,h=f.trackingVars.dealerInteraction,i=c&&c.isDealerSelectedFromParams&&c.get(g.ADDRESS)?c.get(g.ADDRESS):c.get(g.UNFORMATTED_ADDRESS),j={},k=this;j[h.componentId]=b,j[h.dealerAction]=c&&c.isDealerSelectedFromParams?a.ANALYTICS.DEALER_ACTION_AUTO_SELECTED:a.ANALYTICS.DEALER_ACTION,j[h.dealerId]=c.get(g.DEALER_ID),j[h.dealerName]=c.get(g.NAME),j[h.dealerAddress]=i.addressLine1+", "+i.city+", "+i.postalCode,this._getAnalyticsSettings().shouldTrackDealerType&&(j[h.dealerType]=c.get(d.DEALER.ATTRIBUTES.TYPE)),c&&c.isDealerSelectedFromParams?setTimeout(function(){k._getAnalyticsManager().tag(f.eventTypes.dealerInteraction,j)},1e3):this._getAnalyticsManager().tag(f.eventTypes.dealerInteraction,j)},_onDealerPhoneLinkInteraction:function(b,c){var d=this._getTrackingCodes(),f=e.DEALER_LIST.VIEW_ITEM_MODEL.ATTRIBUTES,g=d.trackingVars.dealerInteraction,h=c.get(f.UNFORMATTED_ADDRESS),i={};i[g.componentId]=b,i[g.dealerAction]=a.ANALYTICS.DEALER_PHONE_LINK_ACTION,i[g.dealerId]=c.get(f.DEALER_ID),i[g.dealerName]=c.get(f.NAME),i[g.dealerAddress]=h.addressLine1+", "+h.city+", "+h.postalCode,this._getAnalyticsManager().tag(d.eventTypes.dealerInteraction,i)},_onFindMyNearestDealer:function(){var b=this._getTrackingCodes(),c=b.trackingVars.buttonNoCookie,d={};d[c.componentId]=b.componentIds.c19_25_Dealer_Locator,d[c.contentAction]=a.ANALYTICS.FIND_NEAREST_DEALER,d[c.locationInPage]=a.ANALYTICS.FORM_PREFERRED_LOCATION,this._getAnalyticsManager().tag(b.eventTypes.buttonNoCookie,d)},_onAddEditClearAddressLinks:function(b){var c=this._getTrackingCodes(),d=c.trackingVars.buttonNoCookie,e={};e[d.componentId]=c.componentIds.c19_25_Dealer_Locator,e[d.contentAction]=b,e[d.locationInPage]=a.ANALYTICS.FORM_PREFERRED_LOCATION,this._getAnalyticsManager().tag(c.eventTypes.buttonNoCookie,e)},_onSwitchToDealerTestdriveCtaClick:function(){var b=this._getTrackingCodes(),c=b.trackingVars.buttonNoCookie,d={};d[c.componentId]=b.componentIds.c19_25_Dealer_Locator,d[c.contentAction]=a.ANALYTICS.SWITCH_TO_DEALER_LOCATION,d[c.locationInPage]=a.ANALYTICS.FORM_LOCATION_
30SELECTION,this._getAnalyticsManager().tag(b.eventTypes.buttonNoCookie,d)},_onNoHomeTestdriveResultsAnalytics:function(b,c,d){var e=this._getTrackingCodes(),f=e.trackingVars.buttonNoCookie,g={};g[f.componentId]=e.componentIds.c19_25_Dealer_Locator,g[f.contentAction]=a.ANALYTICS.NO_DEALER_IN_RANGE,g[f.locationInPage]=c?a.ANALYTICS.FORM_EXTENDED_TESTDRIVE:b?a.ANALYTICS.FORM_PREFERRED_LOCATION:a.ANALYTICS.FORM_DEALER_LOCATION,d||this._getAnalyticsManager().tag(e.eventTypes.buttonNoCookie,g)},_onChangeDealerCtaAnalytics:function(){var b=this._getTrackingCodes(),c=b.trackingVars.buttonNoCookie,d={};d[c.componentId]=b.componentIds.c19_25_Dealer_Locator,d[c.contentAction]=a.ANALYTICS.CHANGE_SELECTED_DEALER,d[c.locationInPage]=a.ANALYTICS.FORM_PREFERRED_LOCATION,this._getAnalyticsManager().tag(b.eventTypes.buttonNoCookie,d)},_onGetDealerAddressAnalytics:function(){var b=this._getTrackingCodes(),c=b.trackingVars.dealerInteraction,d={};d[c.componentId]=b.componentIds.c19_25_Dealer_Locator,d[c.contentAction]=a.ANALYTICS.DEALERSHIP_IN_RANGE,d[c.locationInPage]=a.ANALYTICS.FORM_PREFERRED_LOCATION,d[c.dealerAction]=a.ANALYTICS.SELECT_THIS_DEALER,d[c.dealerAddress]=a.ANALYTICS.DEALER_ADDRESS,d[c.dealerId]=a.ANALYTICS.DEALER_ID,d[c.dealerName]=a.ANALYTICS.DEALER_NAME,this._getAnalyticsManager().tag(b.eventTypes.dealerInteraction,d)},_trackDealerModelServiceLabel:function(b,c,d){var e=this._getTrackingCodes(),f=e.trackingVars.buttonNoCookie,g={};g[f.componentId]=e.componentIds.c19_25_Dealer_Locator,g[f.contentAction]=c+" : "+b,g[f.locationInPage]=a.ANALYTICS.MODEL_NOT_SUPPORTED,g[f.vehicleModel]=c,g[f.vehicleId]=d,this._getAnalyticsManager().tag(e.eventTypes.buttonNoCookie,g)},_trackPowertrainAlternateOptions:function(b){var c=this._getTrackingCodes(),d=c.trackingVars.buttonNoCookie,e={};e[d.componentId]=c.componentIds.c19_39_Powertrain_Model_Selector,e[d.contentAction]=b,e[d.locationInPage]=a.ANALYTICS.POWERTRAIN_ALTERNATE_OPTION,this._getAnalyticsManager().tag(c.eventTypes.buttonNoCookie,e)},_trackNoDealersPowertrain:function(){var a=this._getTrackingCodes(),b=a.trackingVars.errorDisplayed,c={};c[b.componentId]=a.componentIds.c19_39_Powertrain_Model_Selector,c[b.errorMessage]=g.NO_DEALER_POWERTRAIN,this._getAnalyticsManager().tag(a.eventTypes.errorDisplayed,c)},_onToogleStoreToMyPage:function(a,b,c){var d=this._getTrackingCodes(),f=d.trackingVars.dealerInteraction,g=e.DEALER_LIST.VIEW_ITEM_MODEL.ATTRIBUTES,h=d.trackingVars.errorDisplayed,i=b.get(g.UNFORMATTED_ADDRESS),j={};j[f.componentId]=d.componentIds.c19_25_Dealer_Locator,j[f.dealerAction]=a,j[f.dealerAddress]=i.addressLine1+", "+i.city+", "+i.postalCode,j[f.dealerId]=b.get(g.DEALER_ID),j[f.dealerName]=b.get(g.NAME),c&&""!==c&&(j[h.errorMessage]=c),this._getAnalyticsManager().tag(d.eventTypes.dealerInteraction,j)}})}),define("c_019_25_ControllerBase",["backbone","c_019_25_ModuleConstants"],function(a,b){"use strict";return a.Marionette.Object.extend({getContentModel:function(){return this.options[b.BASE_CONTROLLER.OPTIONS.CONTENT]},getEventAggregator:function(){return this.options[b.BASE_CONTROLLER.OPTIONS.EVENT_AGGREGATOR]},getRegion:function(){return this.options[b.BASE_CONTROLLER.OPTIONS.REGION]},getWindow:function(){return this.options[b.BASE_CONTROLLER.OPTIONS.WINDOW]},hide:function(){return this.getRegion()&&this.getRegion().$el.hide(),this},show:function(){return this.getRegion()&&this.getRegion().$el.show(),this}})}),define("hbars!/components/c_019-25/scripts/app/modules/dealerList/html/dealerListItemTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'        \t<div>\n        \t\t<img src="'+a.escapeExpression((f=null!=(f=g(c,"dealerTypeIconImgUrl")||(null!=b?g(b,"dealerTypeIconImgUrl"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"dealerTypeIconImgUrl",hash:{},data:e,loc:{start:{line:6,column:20},end:{line:6,column:44}}}):f))+'" />\n        \t</div>\n'},3:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'            <p class="dealer-list-phone"><a class="dealer-list-phone-link" href="tel:'+a.escapeExpression((f=null!=(f=g(c,"phoneNoSpace")||(null!=b?g(b,"phoneNoSpace"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"phoneNoSpace",hash:{},data:e,loc:{start:{line:10,column:85},end:{line:10,column:103}}}):f))+'">'+a.escapeExpression((f=null!=(f=g(c,"phone")||(null!=b?g(b,"phone"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"phone",hash:{},data:e,loc:{start:{line:10,column:105},end:{line:10,column:116}}}):f))+"</a></p>\n"},5:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'        \t<p class="distance">('+a.escapeExpression((f=null!=(f=g(c,"formattedDistance")||(null!=b?g(b,"formattedDistance"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"formattedDistance",hash:{},data:e,loc:{start:{line:14,column:30},end:{line:14,column:51}}}):f))+" "+a.escapeExpression((f=null!=(f=g(c,"distanceUnitText")||(null!=b?g(b,"distanceUnitText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"distanceUnitText",hash:{},data:e,loc:{start:{line:14,column:52},end:{line:14,column:72}}}):f))+")</p>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<div class="select-dealer-container">\n    <div class="details">\n        <h3>'+a.escapeExpression((g=null!=(g=h(c,"name")||(null!=b?h(b,"name"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"name",hash:{},data:e,loc:{start:{line:3,column:12},end:{line:3,column:20}}}):g))+"</h3>\n"+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"dealerTypeIconImgUrl"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:4,column:8},end:{line:8,column:15}}}))?f:"")+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"showPhone"):b,{name:"if",hash:{},fn:a.program(3,e,0),inverse:a.noop,data:e,loc:{start:{line:9,column:8},end:{line:11,column:15}}}))?f:"")+'        <p class="address">'+(null!=(g=null!=(g=h(c,"address")||(null!=b?h(b,"address"):b))?g:a.hooks.helperMissing,f="function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"address",hash:{},data:e,loc:{start:{line:12,column:27},end:{line:12,column:40}}}):g)?f:"")+"</p>\n"+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"distance"):b,{name:"if",hash:{},fn:a.program(5,e,0),inverse:a.noop,data:e,loc:{start:{line:13,column:8},end:{line:15,column:15}}}))?f:"")+'    </div>\n    <div class="select-dealer-cta-container">\n        <button class="select-dealer-cta" type="button">'+a.escapeExpression((g=null!=(g=h(c,"selectDealerCtaText")||(null!=b?h(b,"selectDealerCtaText"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"selectDealerCtaText",hash:{},data:e,loc:{start:{line:18,column:56},end:{line:18,column:79}}}):g))+"</button>\n    </div>\n</div>\n"},useData:!0}
30)}),define("trackingCodes",["underscore"],function(a){"use strict";var b={accessories:"accessories",engines:"engines",equipment:"equipment",exteriorColours:"exteriorColours",grades:"grades",stylePacks:"stylePacks",warrantyServices:"warrantyServices",totalPrice:"totalPrice",trims:"trims",wheels:"wheels",upholstery:"upholstery"},c={interactionType:"interactionType",interactionValue:"interactionValue"},d={VIN:"VIN",vinStatus:"vinStatus",vehicleModel:"vehicleModel",vehicleId:"vehicleId",vehicleCategory:"vehicleCategory"};return{eventTypes:{audioInteraction:"audioInteraction",accordionExpansion:"accordionExpansion",configuratorCompletion:"configuratorCompletion",configuratorLeave:"configuratorLeave",configuratorSelect:"configuratorSelect",configuratorExpansion:"configuratorExpansion",financeCalculator:"financeCalculator",genericClick:"genericClick",navigationClick:"navigationClick",pageLoad:"pageLoad",formAppears:"formAppears",matchmakerResultLoad:"matchmakerResultLoad",searchClick:"searchClick",buttonNoCookie:"buttonNoCookie",panInteraction:"panInteraction",search:"search",socialShare:"socialShare",toggle:"toggle",ranking:"ranking",tooltipDisplay:"tooltipDisplay",virtualPage:"virtualPage",contentDisplayed:"contentDisplayed",contentClosed:"contentClosed",retailCompletion:"retailCompletion",dealerInteraction:"dealerInteraction",deliveryOption:"deliveryOption",fileUpload:"fileUpload",configRFI:"configRFI",frameLoad:"frameLoad",funnelSteps:"funnelSteps",matchMakerCarousel:"matchMakerCarousel",cartEdit:"cartEdit",matchMaker:"matchMaker",globalMatchMaker:"globalMatchMaker",matchmakerPage:"matchmakerPage",fcFirstInteraction:"fcFirstInteraction",showroomInteraction:"showroomInteraction",fcSteps:"fcSteps",inventoryShowroomInteraction:"inventory_showroomInteraction",gradewalkShowroomInteraction:"gradewalk_showroomInteraction",delayedPageLoad:"delayedPageLoad",errorDisplayed:"errorDisplayed",lightConfiguratorTrayLoads:"light_configuratortrayLoad",lightConfiguratorSelect:"light_configuratorSelect",lightConfiguratorCompletion:"light_configuratorCompletion",fcAccessoriesSelect:"fcAccessoriesSelect",backToSmitButtonClick:"backToSmitButtonClick",scrollQualified:"scrollQualified",timeSpentQualified:"timeSpentQualified",fcFirstInteractionTradeIn:"fcFirstInteraction_tradeIn",recommendation_interaction:"recommendation_interaction",recommendation_impression:"recommendation_impression",targetPersonalisation:"targetPersonalisation",spaPage:"spaPage"},trackingVars:{accordionExpansion:{accordionText:"accordionText",accordionType:"accordionType",componentId:"componentId",completionStep:"completionStep",dashboardType:"dashboardType",vehicleModel:"vehicleModel",vehicleId:"vehicleId",vehicleCategory:"vehicleCategory",vehicleEngine:"vehicleEngine",vehicleEngineId:"vehicleEngineId",status:"status",price:"price",errorMessage:"errorMessage",locationInPage:"locationInPage",vehicles:"vehicles",showroomId:"showroomId",showroomAction:"showroomAction",vehicleYear:"vehicleYear",vehicleGrade:"vehicleGrade"},audioInteraction:{audioInteraction:"audioInteraction",audioLength:"audioLength",audioName:"audioName",autoplay:"autoplay",audioType:"audioType",componentId:"componentId",percentagePlayed:"percentagePlayed"},phoneCall:{componentId:"componentId",interactionType:"interactionType"},matchMaker:{componentId:"componentId",matchmakerQuestion:"matchmakerQuestion",matchmakerResponse:"matchmakerResponse",matchmakerItem:"matchmakerItem"},globalMatchMaker:{componentId:"componentId",matchmakerItem:"matchmakerItem",matchmakerAction:"matchmakerAction",matchmakerQuestion:"matchmakerQuestion",matchmakerResponse:"matchmakerResponse"},matchmakerPage:{componentId:"componentId",buttonText:"buttonText",locationInPage:"locationInPage",pageName:"pageName",pageType:"pageType",errorMessage:"errorMessage",recommendationId:"recommendationId",recommendedVehicles:"recommendedVehicles"},modalAccordionExpansion:{accordionText:"accordionText",accordionType:"accordionType",componentId:"componentId"},breakpoint:{screenSize:"screenSize"},buttonClick:{componentId:"componentId",destination:"destination",locationInPage:"locationInPage",buttonText:"buttonText"},colourPicker:{vehicleModel:"vehicleModel",vehicleCategory:"vehicleCategory",interactionType:"interactionType",vehicleId:"vehicleId",colour:"colour"},carouselButtonClick:{componentId:"componentId",promoText:"promoText",locationInPage:"locationInPage",buttonText:"buttonText",destination:"destination",persoSlide:"persoSlide",itemNumber:"itemNumber",persoModelName:"persoModelName",persoModelId:"persoModelId",rotationNumber:"rotationNumber"},carouselInteraction:{componentId:"componentId",promoId:"promoId",interactionType:"interactionType",promoText:"promoText",itemNumber:"itemNumber",carouselType:"carouselType",vehicleCategory:"vehicleCategory",vehicleId:"vehicleId",vehicleModel:"vehicleModel",persoDisplayed:"persoDisplayed"},personalisedCarousel:{componentId:"componentId",persoDisplayed:"persoDisplayed",errorMessage:"errorMessage",persoSlide:"persoSlide",persoModelName:"persoModelName",persoModelId:"persoModelId"},configuratorCompletion:a.extend(b,{completionStep:"completionStep",interactionType:"interactionType",interactionValue:"interactionValue",navigationStep:"navigationStep"}
30),configuratorExpansion:{expansionType:"expansionType",expansionText:"expansionText",totalPrice:"totalPrice"},configuratorCompletionInventoryLink:a.extend(b,{completionStep:"completionStep",completionType:"completionType",locationInPage:"locationInPage",destination:"destination",buttonText:"buttonText"}),configuratorInteraction:c,
31configuratorSelect:a.extend(c,{interactionPrice:"interactionPrice",totalPrice:"totalPrice",vehicleModel:"vehicleModel",MCD:"MCD",grade:"grade",removeSelection:"removeSelection",removeSelectionPrice:"removeSelectionPrice",action:"action",vehiclePrice:"vehiclePrice",bodyTypeName:"bodyTypeName",keyInfo:"keyInfo",interactionValue:"interactionValue",vehicleCategory:"vehicleCategory",vehicleId:"vehicleId",navigationStep:"navigationStep",interactionType:"interactionType"}),configuratorConflictSelect:a.extend(c,{interactionPrice:"interactionPrice",totalPrice:"totalPrice",priceDifference:"priceDifference",removeSelection:"removeSelection",removeSelectionPrice:"removeSelectionPrice"}),configuratorLeave:a.extend(c,{destination:"destination",locationInPage:"locationInPage",buttonText:"buttonText",impactPrice:"impactPrice"}),configuratorOffersOverlay:{offerId:"offerId",offerText:"offerText",locationInPage:"locationInPage",componentId:"componentId"},configuratorOffersCta:{offerId:"offerId",offerText:"offerText",locationInPage:"locationInPage",componentId:"componentId",destination:"destination",buttonText:"buttonText"},contentAction:{offerId:"offerId",offerText:"offerText",showMore:"Show more",confirmItem:"Confirm item"},contentDisplayed:{offerId:"offerId",offerText:"offerText",unreadMessages:"unreadMessages",locationInPage:"locationInPage",status:"status",componentId:"componentId",vehicleModel:"vehicleModel",vehicleName:"vehicleName",vehicleId:"vehicleId",bodyTypeName:"bodyTypeName",keyInfo:"keyInfo",vin:"vin",vehicleCategory:"vehicleCategory",formCategory:"formCategory",formName:"formName",formStepName:"formStepName",formStepNumber:"formStepNumber",formType:"formType",pageName:"pageName",templateName:"templateName",MCD:"MCD",grade:"grade",buttonText:"buttonText",destination:"destination",itemName:"itemName",bodyType:"bodyType",interactionType:"interactionType",contentAction:"contentAction",pageType:"pageType",toolName:"toolName",financeCalculatorStep:"financeCalculatorStep",vehicles:"vehicles",showroomId:"showroomId",showroomAction:"showroomAction",qrCodePage:"qrCodePage"},contentClosed:{componentId:"componentId",locationInPage:"locationInPage",contentAction:"contentAction",vehicleId:"vehicleId",vehicleModel:"vehicleModel",vehicleCategory:"vehicleCategory",vehicleGrade:"vehicleGrade",vehicleEngine:"vehicleEngine",vehicleVersion:"vehicleVersion",vehiclePrice:"vehiclePrice",region:"region",repaymentFrequency:"repaymentFrequency",loanTerm:"loanTerm",repaymentRange:"repaymentRange",denomination:"denomination",interestRate:"interestRate",deposit:"deposit",depositRange:"depositRange",repaymentPrice:"repaymentPrice",financeCalculatorStep:"financeCalculatorStep",baloonPrice:"baloonPrice",installmentPrice:"installmentPrice",totalPrice:"totalPrice",interactionType:"interactionType",buttonText:"buttonText",qrCodePage:"qrCodePage"},retailCompletion:{componentId:"componentId",errorMessage:"errorMessage",completionStep:"completionStep"},dealerInteraction:{componentId:"componentId",dashboardType:"dashboardType",dealerName:"dealerName",dealerId:"dealerId",dealerAddress:"dealerAddress",dealerAction:"dealerAction",dealerType:"dealerType",buttonText:"buttonText",vin:"vin",locationInPage:"locationInPage",contentAction:"contentAction",errorMessage:"errorMessage"},deliveryOption:{componentId:"componentId",deliveryOption:"deliveryOption"},download:{brochureName:"brochureName",brochureType:"brochureType",locationInPage:"locationInPage",vehicleModel:"vehicleModel",vehicleId:"vehicleId",vehicleCategory:"vehicleCategory",brochureAmount:"brochureAmount"},financeCalculator:a.extend(b,a.extend(d,{vehicleName:"vehicleName",vehicleGrade:"vehicleGrade",vehicleCategory:"vehicleCategory",vehicleId:"vehicleId",financeCalculatorStep:"financeCalculatorStep",state:"state",city:"city",downPayment:"downPayment",tenure:"tenure",monthlyInstalments:"monthlyInstalments",interactionCount:"interactionCount",slidersUsed:"slidersUsed",destination:"destination",locationInPage:"locationInPage",buttonText:"buttonText",componentId:"componentId",errorMessage:"errorMessage",toolName:"toolName",vehicleModel:"vehicleModel",vehiclePrice:"vehiclePrice",showroomAction:"showroomAction",vehicleCode:"vehicleCode",vehicleAvailable:"vehicleAvailable",vehicleEstimatedPrice:"vehicleEstimatedPrice",vehicleEstimatedFrequency:"vehicleEstimatedFrequency",showroomId:"showroomId",fc:"fc",vehicles:"vehicles",pageType:"pageType"})),formSteps:{formName:"formName",formStepName:"formStepName",formStepNumber:"formStepNumber",formType:"formType",formSubmission:"formSubmission",formSubmissionSuccess:"formSubmissionSuccess",templateName:"templateName",formCategory:"formCategory",errorMessage:"errorMessage",leadCategory:"leadCategory",leadI
31d:"leadId",dealerId:"dealerId",dealerName:"dealerName",dealerType:"dealerType",dealerAddress:"dealerAddress",destination:"destination",vehicleId:"vehicleId",vehicleModel:"vehicleModel",vehicleCategory:"vehicleCategory",serviceType:"serviceType",serviceValue:"serviceValue",bookingDate:"bookingDate",bookingTime:"bookingTime",buttonText:"buttonText",locationLong:"locationLong",locationLat:"locationLat",locationInPage:"locationInPage",offerId:"offerId",offerTypeTitle:"offerTypeTitle",offerHeadline:"offerHeadline",offerStrapline:"offerStrapline",offerHighlight:"offerHighlight",pageType:"pageType",brochureName:"brochureName",brochureType:"brochureType",brochureAmount:"brochureAmount",allOptIn:"allOptIn",showroomId:"showroomId",vehicles:"vehicles",pageName:"pageName",formVisible:"formVisible",componentId:"componentId",nfrmId:"nfrmId",hashEmail:"hashEmail",hashMobilePhoneNumber:"hashMobilePhoneNumber",fcVersion:"fcVersion",serviceTypeRequestedEncoded:"serviceTypeRequestedEncoded",vehiclePowertrain:"vehiclePowertrain",vehicleVersion:"vehicleVersion",realTimeBookingSuccess:"realTimeBookingSuccess",extendedTestDriveDuration:"extendedTestDriveDuration",serviceEndTime:"serviceEndTime",serviceEndDate:"serviceEndDate",serviceDate:"serviceDate",serviceTime:"serviceTime",Dealer:"Dealer",Model:"Model",ModelCode:"ModelCode",dealerBrand:"dealerBrand",testdriveType:"testdriveType",bookingType:"bookingType",realTimePicker:"realTimePicker",homeTestDrive:"homeTestDrive",extendedTestDrive:"extendedTestDrive",powerTrain:"powerTrain",HeliosLeadId:"HeliosLeadId",EmailOptIn:"EmailOptIn",mailOptIn:"mailOptIn",PhoneOptIn:"PhoneOptIn",smsOptIn:"smsOptIn",generalField4:"generalField4",targetVehicleModelName:"targetVehicleModelName",targetVehicleModel:"targetVehicleModel",CampaignCode:"CampaignCode",campaignSource:"campaignSource",generalField1:"generalField1",leadBrand:"leadBrand",ECID:"ECID",requestOrigin:"requestOrigin",City:"City",generalField3:"generalField3",generalField2:"generalField2",additionalInformation:"additionalInformation",optinWhatsapp:"optinWhatsapp",salesMethodCode:"salesMethodCode",requestType:"requestType",preLaunchVehicle:"preLaunchVehicle",versionCode:"versionCode",dealerStatus:"dealerStatus",targetVehicleBrand:"targetVehicleBrand",targetVehicleGrade:"targetVehicleGrade",vehicleSku:"vehicleSku",currentVehicleModel:"currentVehicleModel"},funnelSteps:{componentId:"componentId",vehicleModel:"vehicleModel",vehicleCategory:"vehicleCategory",vehicleId:"vehicleId",eim:"eim",registrationId:"registrationId",checkoutStep:"checkoutStep",errorMessage:"errorMessage",pageType:"pageType",inventoryId:"inventoryId",monthlyPrice:"monthlyPrice",transaction:{transactionID:"transactionID",total:{monthlyPrice:"monthlyPrice",months:"months",deliveryOption:"deliveryOption",dealerName:"dealerName",dealerAddress:"dealerAddress",deliveryPostcode:"deliveryPostcode",shipping:"shipping",warranty:"warranty",deposit:"deposit",currency:"currency",pickupPrice:"pickupPrice"}}},matchMakerCarousel:{componentId:"componentId",vehicleName:"vehicleName",vehicleModel:"vehicleModel",vehicleId:"vehicleId",eim:"eim",carouselType:"carouselType",interactionType:"interactionType",itemNumber:"itemNumber",promoText:"promoText"},pageLoad:{componentId:"componentId",dashboardType:"dashboardType",formCount:"formCount",formName:"formName",templateName:"templateName",formStepName:"formStepName",formStepNumber:"formStepNumber",serviceType:"serviceType",serviceValue:"serviceValue",pageType:"pageType",formCategory:"formCategory",formType:"formType",leadId:"leadId",brochureName:"brochureName",brochureAmount:"brochureAmount",vehicleModel:"vehicleModel",vehicleCategory:"vehicleCategory",vehicleId:"vehicleId",fileType:"fileType",acceptFile:"acceptFile",eim:"eim",registrationId:"registrationId",checkoutStep:"checkoutStep",errorMessage:"errorMessage",inventoryId:"inventoryId",monthlyPrice:"monthlyPrice",pageName:"pageName",financeCalculatorStep:"financeCalculatorStep",locationInPage:"locationInPage",appNames:"appNames",searchResults:"searchResults",realTimePicker:"realTimePicker",toolName:"toolName",formVisible:"formVisible",dealerId:"dealerId",dealerName:"dealerName",dealerAddress:"dealerAddress",reminderPrompt:"reminderPrompt",serviceContractNames:"serviceContractNames",tooltipDisplay:"tooltipDisplay",vehicleReservation:"vehicleReservation",homeTestDrive:"homeTestDrive",extendedTestDrive:"extendedTestDrive",preLaunchVehicle:"preLaunchVehicle",dealerStatus:"dealerStatus",targetVehicleBrand:"targetVehicleBrand",targetVehicleGrade:"targetVehicleGrade",vehicleSku:"vehicleSku",currentVehicleModel:"currentVehicleModel",HeliosLeadId:"HeliosLeadId",Dealer:"Dealer",qrCodePage:"qrCodePage"},formAppears:{componentId:"componentId",formVisible:"formVisible",templateName:"templateName",pageType:"pageType",formName:"formName",formCategory:"formCategory",formType:"formType",formStepName:"formStepName",formStepNumber:"formStepNumber",vehicleId:"vehicleId",vehicleModel:"vehicleModel",vehicleCategory:"vehicleCategory",acceptFile:"acceptFile",homeTestDrive:"homeTestDrive",extendedTestDrive:"extendedTestDrive",realTimePicker:"realTimePicker"},fcSteps:{componentId:"componentId",toolName:"toolName",financeCalculatorStep:"financeCalculatorStep",vehicleId:"vehicleId",vehicleModel:"vehicleModel",vehicleCategory:"vehicleCategory",vehiclePrice:"vehiclePrice",gradeName:"gradename",fuelType:"fuelType",transmission:"transmission",driveTrain:"driveTrain",engineName:"engineName",monthlyPrice:"monthlyPrice",totalPrice:"totalPrice",buttonText:"buttonText",fc:"fc",toolStep:"toolStep",locationInPage:"locationInPage",showroomAction:"showroomAction",vehicles:"vehicles",showroomId:"showroomId",fcVersion:"fcVersion",totalAccessoriesCost:"totalAccessoriesCost",packagesSelected:"packagesSelected",accessoriesSelected:"accessoriesSelected",errorMessage:"errorMessage",showroomState:"showroomState",personalitySegment:"personalitySegment",tradeinValue:"tradeinValue",ecomJourney:"ecomJourney",products:"products",ecomCheckoutStep:"ecomCheckoutStep",versionCode:"versionCode",priceType:"priceType",cpoVehicles:"cpoVehicles",cpoCheckoutStep:"cpoCheckoutStep",vehicleSku:"vehicleSku",pageType:"pageType"},searchClick:{componentId:"componentId",searchType:"searchType",searchFilter:"searchFilter",searchFilterValue:"searchFilterValue",vehicleId:"vehicleId",vehicleModel:"vehicleModel",vehiclecategory:"vehiclecategory",buttonText:"buttonText",locationInPage:"locationInPage",destination:"destination"},matchmakerResultLoad:{componentId:"componentId",pageType:"pageType",vehicleModel:"vehicleModel",vehicleCategory:"vehicleCategory",eim:"eim",vehicleId:"vehicleId"},fileUpload:{componentId:"componentId",fileType:"fileType",errorMessage:"errorMessage"},vehicleSelector:{formName:"formName",formStepName:"formStepName",parentComponent:"parentComponent",selectDropdown:"selectDropdown",selectModel:"selectModel",selectGrade:"selectGrade",selectEngine:"selectEngine",selectVersion:"selectVersion",selectYear:"selectYear",vehicleId:"vehicleId",selectColour:"selectColour",vehicleModel:"vehicleModel",vehiclePowertrain:"vehiclePowertrain",vehicleVersion:"vehicleVersion",errorMessage:"errorMessage",vehicleCategory:"vehicleCategory",vehicleYear:"vehicleYear",preLaunchVehicle:"preLaunchVehicle",vehicleGrade:"vehicleGrade",qrCodePage:"qrCodePage"},frameLoad:{componentId:"componentId",buttonText:"buttonText",locationInPage:"locationInPage",destination:"destination",frameName:"frameName"},delayedPageLoad:{dealerId:"dealerId",dealerName:"dealerName",dealerAddress:"dealerAddress",vehicleId:"vehicleId",vehicleModel:"vehicleModel",componentId:"componentId",formCategory:"formCategory",formName:"formName",formStepName:"formStepName",formStepNumber:"formStepNumber",formVisible:"formVisible",Dealer:"Dealer",HeliosLeadId:"HeliosLeadId",acceptFile:"acceptFile",currentVehicleModel:"currentVehicleModel",dealerStatus:"dealerStatus",formType:"formType",homeTestDrive:"homeTestDrive",pageName:"pageName",pageType:"pageType",targetVehicleBrand:"targetVehicleBrand",targetVehicleGrade:"targetVehicleGrade",vehicleSku:"vehicleSku",templateName:"templateName"},errorDisplayed:{componentId:"componentId",errorMessage:"errorMessage"},genericProperties:{componentId:"componentId",completionStep:"completionStep",pageName:"pageName"},fcFirstInteraction:{componentId:"componentId",locationInPage:"locationInPage",contentAction:"contentAction",vehicles:"vehicles",showroomId:"showroomId",fcVersion:"fcVersion",errorMessage:"errorMessage",toolName:"toolName",personalitySegment:"personalitySegment",tradeinValue:"tradeinValue",ecomJourney:"ecomJourney",products:"products",ecomCheckoutStep:"ecomCheckoutStep",cpoVehicles:"cpoVehicles",cpoCheckoutStep:"cpoCheckoutStep",vehicleSku:"vehicleSku",priceType:"priceType",pageType:"pageType"},fcFirstInteraction_tradeIn:{componentId:"componentId",locationInPage:"locationInPage",contentAction:"contentAction",fcVersion:"fcVersion",toolName:"toolName",ecomJourney:"ecomJourney",products:"products",ecomCheckoutStep:"ecomCheckoutStep",priceType:"priceType",cpoVehicles:"cpoVehicles",cpoCheckoutStep:"cpoCheckoutStep",totalPrice:"totalPrice",vehiclePrice:"vehiclePrice",vehicleSku:"vehicleSku"},showroomInteraction:{componentId:"componentId",locationInPage:"locationInPage",showroomAction:"showroomAction",showroomId:"showroomId",errorMessage:"errorMessage",vehicles:"vehicles",vehicleModel:"vehicleModel",vehicleId:"vehicleId",vehiclePrice:"vehiclePrice",vehicleCode:"vehicleCode",vehicleAvailable:"vehicleAvailable",vehicleEstimatedPrice:"vehicleEstimatedPrice",vehicleEstimatedFrequency:"vehicleEstimatedFrequency",vehicleConfiguration:"vehicleConfiguration",pageName:"pageName",pageType:"pageType",contentAction:"contentAction",interactionType:"interactionType",accordionText:"accordionText",accordionType:"accordionType",tooltipTitle:"tooltipTitle",buttonText:"buttonText",destination:"destination",showroomState:"showroomState",showroomWithDealerOfferDocument:"showroomWithDealerOfferDocument"},inventory_showroomInteraction:{componentId:"componentId",locationInPage:"locationInPage",showroomAction:"showroomAction",showroomId:"showroomId",errorMessage:"errorMessage",vehicles:"vehicles",vehicleModel:"vehicleModel",vehicleId:"vehicleId",vehiclePrice:"vehiclePrice",vehicleCode:"vehicleCode",vehicleAvailable:"vehicleAvailable",vehicleDealerDetails:"vehicleDealerDetails",vehicleConfiguration:"vehicleConfiguration",buttonText:"buttonText",destination:"destination",dealerAction:"dealerAction"},gradewalk_showroomInteraction:{componentId:"componentId",locationInPage:"locationInPage",showroomAction:"showroomAction",showroomId:"showroomId",errorMessage:"errorMessage",vehicles:"vehicles",vehicleModel:"vehicleModel",vehicleId:"vehicleId",vehiclePrice:"vehiclePrice",vehicleCode:"vehicleCode",vehicleAvailable:"vehicleAvailable",vehicleDealerDetails:"vehicleDealerDetails",vehicleConfiguration:"vehicleConfiguration",buttonText:"buttonText",destination:"destination"},recommendation_interaction:{componentId:"componentId",locationInPage:"locationInPage",recommendedProducts:"recommendedProducts",interactionType:"interactionType",interactionValue:"interactionValue",interactionCategory:"interactionCategory",interactionPrice:"interactionPrice",recommendationType:"recommendationType",toolName:"toolName",pageType:"pageType",vehicleConfiguration:"vehicleConfiguration",vehicleVersion:"vehicleVersion",vehicleGrade:"vehicleGrade",vehicleId:"vehicleId",vehicleModel:"vehicleModel",vehiclePrice:"vehiclePrice",errorMessage:"errorMessage"},recommendation_impression:{componentId:"componentId",locationInPage:"locationInPage",recommendedProducts:"recommendedProducts",recommendationType:"recommendationType",toolName:"toolName",pageType:"pageType",vehicleConfiguration:"vehicleConfiguration",vehicleVersion:"vehicleVersion",vehicleGrade:"vehicleGrade",vehicleId:"vehicleId",vehicleModel:"vehicleModel",vehiclePrice:"vehiclePrice"},genericClick:a.extend(d,a.extend(b,{componentId:"componentId",anchorLink:"anchorLink",destination:"destination",dashboardType:"dashboardType",financeCalculatorStep:"financeCalculatorStep",locationInPage:"locationInPage",buttonText:"buttonText",errorMessage:"errorMessage",urlSelect:"urlSelect",contentAction:"contentAction",vehicleId:"vehicleId",vehicleCategory:"vehicleCategory",vehicleEngine:"vehicleEngine",vehicleEngineId:"vehicleEngineId",vehicleVersion:"vehicleVersion",vehicleVersionId:"vehicleVersionId",vehicleGrade:"vehicleGrade",vehicleGradeId:"vehicleGradeId",vehiclePrice:"vehiclePrice",priceType:"priceType",priceCurrency:"priceCurrency",contentInteraction:"contentInteraction",signupType:"signupType",signupSuccess:"signupSuccess",loginType:"loginType",loginSuccess:"loginSuccess",loginPersistence:"loginPersistence",offerId:"offerId",offerText:"offerText",vehicleModel:"vehicleModel",vehicleYear:"vehicleYear",completionType:"completionType",dealerAddress:"dealerAddress",dealerName:"dealerName",dealerId:"dealerId",redirectionFlag:"redirectionFlag",region:"region",repaymentFrequency:"repaymentFrequency",loanTerm:"loanTerm",repaymentRange:"repaymentRange",denomination:"denomination",interestRate:"interestRate",deposit:"deposit",depositRange:"depositRange",repaymentPrice:"repaymentPrice",baloonPrice:"baloonPrice",installmentPrice:"installmentPrice",totalPrice:"totalPrice",toolName:"toolName",financeType:"financeType",employmentType:"employmentType",financeProduct:"financeProduct",tradeValue:"tradeValue",duration:"duration",annualMileage:"annualMileage",coverageType:"coverageType",insuranceProvider:"insuranceProvider",paymentType:"paymentType",warranty:"warranty",vehicles:"vehicles",showroomId:"showroomId",downPayment:"downPayment",fcVersion:"fcVersion",packagesSelected:"packagesSelected",accessoriesSelected:"accessoriesSelected",totalAccessoriesCost:"totalAccessoriesCost",monthlyPrice:"monthlyPrice",monthlyPriceAccessories:"monthlyPriceAccessories",repaymentPriceA
31ccessories:"repaymentPriceAccessories",trayName:"trayName",ballonPayment:"ballonPayment",annualKilometers:"annualKilometers",personalitySegment:"personalitySegment",tradeinValue:"tradeinValue",versionCode:"versionCode",qrCodePage:"qrCodePage"})),buttonNoCookie:a.extend(d,a.extend(b,{componentId:"componentId",destination:"destination",financeCalculatorStep:"financeCalculatorStep",locationInPage:"locationInPage",buttonText:"buttonText",errorMessage:"errorMessage",urlSelect:"urlSelect",contentAction:"contentAction",bodyTypeName:"bodyTypeName",vehicleId:"vehicleId",vehicleCategory:"vehicleCategory",contentInteraction:"contentInteraction",signupType:"signupType",signupSuccess:"signupSuccess",loginType:"loginType",loginSuccess:"loginSuccess",loginPersistence:"loginPersistence",itemName:"itemName",orderId:"orderId",modelName:"modelName",profileItemGroup:"profileItemGroup",profileItemUpdate:"profileItemUpdate",profileItemState:"profileItemState",profileItem:"profileItem",vehicleModel:"vehicleModel",region:"region",repaymentFrequency:"repaymentFrequency",loanTerm:"loanTerm",repaymentRange:"repaymentRange",vehicleGrade:"vehicleGrade",vehicleVersion:"vehicleVersion",vehicleEngine:"vehicleEngine",vehiclePrice:"vehiclePrice",denomination:"denomination",interestRate:"interestRate",deposit:"deposit",depositRange:"depositRange",repaymentPrice:"repaymentPrice",baloonPrice:"baloonPrice",installmentPrice:"installmentPrice",totalPrice:"totalPrice",showroomId:"showroomId",financeType:"financeType",employmentType:"employmentType",financeProduct:"financeProduct",tradeValue:"tradeValue",duration:"duration",annualMileage:"annualMileage",coverageType:"coverageType",insuranceProvider:"insuranceProvider",paymentType:"paymentType",warranty:"warranty",downPayment:"downPayment",interactionType:"interactionType",vehicles:"vehicles",firstInteraction:"firstInteraction",interactionTimestamp:"interactionTimestamp",fcVersion:"fcVersion",packagesSelected:"packagesSelected",accessoriesSelected:"accessoriesSelected",totalAccessoriesCost:"totalAccessoriesCost",monthlyPrice:"monthlyPrice",monthlyPriceAccessories:"monthlyPriceAccessories",repaymentPriceAccessories:"repaymentPriceAccessories",ballonPayment:"ballonPayment",trayName:"trayName",costOfCredit:"costOfCredit",creditFacilityFee:"creditFacilityFee",monthlyFee:"monthlyFee",nonFinanceable:"nonFinanceable",simulationID:"simulationID",servicePrice:"servicePrice",vehicleYear:"vehicleYear",annualKilometers:"annualKilometers",tradeinValue:"tradeinValue",toolName:"toolName",frameName:"frameName",personalitySegment:"personalitySegment",ecomJourney:"ecomJourney",products:"products",ecomCheckoutStep:"ecomCheckoutStep",priceType:"priceType",cpoVehicles:"cpoVehicles",cpoCheckoutStep:"cpoCheckoutStep",vehicleSku:"vehicleSku",pageType:"pageType"})),liveChat:{componentId:"componentId",interactionType:"interactionType"},navigationClick:{destination:"destination",locationInPage:"locationInPage",buttonText:"buttonText"},ownerServicesInteraction:{componentId:"componentId",interactionType:"interactionType",vehicleModel:"vehicleModel",vehicleCategory:"vehicleCategory",vehicleId:"vehicleId",locationInPage:"locationInPage",status:"status",errorMessage:"errorMessage",orderIdentifier:"orderIdentifier",loginStatus:"loginStatus",orderStatus:"orderStatus",orderId:"orderId",orderDate:"orderDate",dealerId:"dealerId",deliveryDate:"deliveryDate",registrationType:"registrationType",fileType:"fileType"},ownerAddVehicle:{componentId:"componentId",interactionType:"interactionType",errorMessage:"errorMessage",registrationType:"registrationType"},ownerServicesUpdate:{profileItem:"profileItem",profileItemUpdate:"profileItemUpdate",profileItemState:"profileItemState",profileItemGroup:"profileItemGroup",errorMessage:"errorMessage",componentId:"componentId"},panInteraction:{componentId:"componentId",interactionType:"interactionType",vehicleModel:"vehicleModel",vehicleId:"vehicleId",vehicleCategory:"vehicleCategory"},popIn:{promptId:"promptId",promptText:"promptText",promptAction:"promptAction"},postcodeLookup:{errorMessage:"errorMessage"},reviewDisplayed:{reviewScore:"reviewScore",VehicleModel:"VehicleModel",vehicleID:"vehicleID",vehicleCategory:"vehicleCategory"},saveShowroom:{componentId:"componentId",contentAction:"contentAction",locationInPage:"locationInPage",destination:"destination",buttonText:"buttonText",toggleType:"toggleType",toggleValue:"toggleV
31alue",save:"save",saveError:"save-error",update:"update",copyLink:"copy link",saveShowroomOverlay:"save showroom overlay",showroomSave:"save showroom overlay:saved",authShowroomSave:"authenticated save showroom overlay:saved",authShowroomOverlay:"authenticated save showroom overlay",rememberShowroomCheck:"remember this showroom",rememberShowroomUncheck:"don't remember this showroom",goToShowroom:"go-to-showroom",showroomUpdate:"save showroom overlay:update",overwriteVehicle:"overwrite vehicle",guestToPermanent:"guest-to-permanent"},search:{componentId:"componentId",searchType:"searchType",searchTerm:"searchTerm",searchTermType:{userSearch:"userSearch",geolocation:"geolocation",autoAdjust:"autoadjust"},userLocation:"userLocation",searchFilter:"searchFilter",searchFilterValue:"searchFilterValue",searchFilterResults:"searchFilterResults",searchResults:"searchResults",offerCount:"offerCount",pageType:"pageType",action:"action",errorMessage:"errorMessage",vehicleId:"vehicleId",vehicleModel:"vehicleModel",vehicleYear:"vehicleYear",vehicleCategory:"vehicleCategory",locationInPage:"locationInPage",buttonText:"buttonText",contentAction:"contentAction",dealerSearchTerm:"dealerSearchTerm",locationSearchTerm:"locationSearchTerm",dealerAction:"dealerAction",dealerName:"dealerName",dealerId:"dealerId",dealerAddress:"dealerAddress",financeCalculatorStepName:"financeCalculatorStepName",fcVersion:"fcVersion",toolName:"toolName",ecomJourney:"ecomJourney",products:"products",ecomCheckoutStep:"ecomCheckoutStep",priceType:"priceType",cpoVehicles:"cpoVehicles",cpoCheckoutStep:"cpoCheckoutStep",vehicleSku:"vehicleSku"},sliderInteraction:{sliderType:"sliderType",VehicleModel:"VehicleModel",vehicleId:"vehicleId",vehicleCategory:"vehicleCategory"},socialShare:a.extend(b,{contentShown:"contentShown",networkNames:"networkNames",numberNetworks:"numberNetworks",socialNetwork:"socialNetwork",urlShared:"urlShared"}),spinnerViewer:{interactionType:"interactionType",VehicleModel:"VehicleModel",vehicleId:"vehicleId",vehicleCategory:"vehicleCategory"},toggle:a.extend(d,{componentId:"componentId",toggleType:"toggleType",toggleText:"toggleText",toggleValue:"toggleValue",parentComponent:"parentComponent",fcVersion:"fcVersion",vehicleYear:"vehicleYear",vehicleGrade:"vehicleGrade",qrCodePage:"qrCodePage"}),tooltipDisplay:{dashboardType:"dashboardType",tooltipTitle:"tooltipTitle",parentComponent:"parentComponent",vin:"vin",componentId:"componentId",fcVersion:"fcVersion"},formCount:{formCount:"formCount",componentId:"componentId"},formType:{formType:"formType"},formCategory:{formCategory:"formCategory"},vehicleCompare:{vehicleModel:"vehicleModel",vehicleId:"vehicleId",vehicleCompare:"vehicleCompare",vehicleGrade:"vehicleGrade",vehicleGradeId:"vehicleGradeId",vehicleGradeCompare:"vehicleGradeCompare",vehicleVersion:"vehicleVersion",vehicleVersionId:"vehicleVersionId",vehicleVersionCompare:"vehicleVersionCompare",VehicleIdCompare:"VehicleIdCompare",numVehicles:"numVehicles",interactionType:"interactionType",toolName:"toolName",versionCode:"versionCode",buttonText:"buttonText"},videoInteraction:{videoName:"videoName",videoInteraction:"videoInteraction",autoplay:"autoplay",videoLength:"videoLength",videoType:"videoType"},videoFeature:{videoName:"videoName",videoFeature:"videoFeature",autoplay:"autoplay",videoLength:"videoLength",videoType:"videoType"},virtualPage:a.extend(b,{componentId:"componentId",configuratorVersion:"configuratorVersion",templateId:"templateId",pageName:"pageName",pageType:"pageType",pageUrl:"pageUrl",locationInPage:"locationInPage",buttonText:"buttonText",unreadMessages:"unreadMessages",navigationStep:"navigationStep",vehicleCategory:"vehicleCategory",vehicleId:"vehicleId",vehicleModel:"vehicleModel",vehiclePrice:"vehiclePrice",errorMessage:"errorMessage",recommendedVehicles:"recommendedVehicles",recommendationId:"recommendationId",matchmakerAction:"matchmakerAction",matchmakerItem:"matchmakerItem",matchmakerQuestion:"matchmakerQuestion",matchmakerAnswer:"matchmakerAnswer",formVisible:"formVisible",carouselType:"carouselType",promoText:"promoText",itemNumber:"itemNumber"}),cartEdit:a.extend(b,{componentId:"componentId",cartAction:"cartAction",cart:"cart",product:"product"}),virtualPageError:{pageName:"pageName",pageType:"pageType",pageUrl:"pageUrl"},print:{buttonText:"buttonText"},switchVersion:{versionId:"versionId",gradeId:"gradeId",section:"section"},ranking:{ranking:"ranking",componentId:"componentId",rankingText:"rankingText",rankingType:"rankingType",parentComponent:"parentComponent"},cfgLinearNavigation:{navigationStep:"navigationStep"},configRFI:{componentId:"componentId"},fcAccessoriesSelect:{componentId:"componentId",toolName:"toolName",financeCalculatorStep:"financeCalculatorStep",fcVersion:"fcVersion",action:"action",category:"category",itemName:"itemName",itemPrice:"itemPrice",totalAccessoriesCost:"totalAccessoriesCost",totalPrice:"totalPrice",vehiclePrice:"vehiclePrice",vehicleId:"vehicleId",vehicleModel:"vehicleModel",vehicleCategory:"vehicleCategory",errorMessage:"errorMessage"},light_configuratortrayLoad:{componentId:"componentId",configuratorVersion:"configuratorVersion",locationInPage:"locationInPage",buttonText:"buttonText",navigationStep:"navigationStep",vehicleCategory:"vehicleCategory",vehicleId:"vehicleId",vehicleModel:"vehicleModel",vehiclePrice:"vehiclePrice",toolStart:"tool
31Start","configurator.items":"configurator.items",trayName:"trayName"},light_configuratorSelect:{componentId:"componentId",configuratorVersion:"configuratorVersion",trayName:"trayName",interactionType:"interactionType",interactionValue:"interactionValue",interactionPrice:"interactionPrice",navigationStep:"navigationStep",vehicleCategory:"vehicleCategory",vehicleId:"vehicleId",vehicleModel:"vehicleModel",totalPrice:"totalPrice","configurator.items":"configurator.items"},light_configuratorCompletion:{componentId:"componentId",configuratorVersion:"configuratorVersion",locationInPage:"locationInPage",buttonText:"buttonText",navigationStep:"navigationStep",vehicleCategory:"vehicleCategory",vehicleId:"vehicleId",vehicleModel:"vehicleModel",vehiclePrice:"vehiclePrice",vehicleMonthlyPrice:"vehicleMonthlyPrice",toolCompletion:"toolCompletion","configurator.items":"configurator.items",trayName:"trayName"},backToSmitButtonClick:{componentId:"componentId",locationInPage:"locationInPage",destination:"destination",buttonText:"buttonText"},scrollQualified:{scrollPercent:"scrollPercent",componentId:"componentId",action:"action"},timeSpentQualified:{timeSpent:"timeSpent",componentId:"componentId",action:"action"},targetPersonalisation:{personalisedExperience:"personalisedExperience"},scrollQualifiedStr:"scrolled more than ${scrollThreshold}%",timeSpentQualifiedStr:"Time spent more than ${timeSpentInSeconds} seconds on this page",spaPage:{pageName:"pageName",pageType:"pageType",templateName:"templateName",componentId:"componentId",interactionType:"interactionType",locationInPage:"locationInPage",stepName:"stepName",vehicleModel:"vehicleModel",vehicleYear:"vehicleYear",vehicleId:"vehicleId",vehicleCategory:"vehicleCategory",qrCodePage:"qrCodePage"}},noId:["breakpoint","formCount"],caseExclusions:["componentId","vehicleModel","vehicleId","vehicleCategory","recommendedVehicles","showroomId","vehicleCode","versionCode"],hyphenated:["formStepName","formStepNumber"],persistentProperties:["adobeAccount","googleAccount","targetCode","pageName","pageType","loginStatus","vehicleModel","vehicleId","vehicleYear","dealerId","vehicleCategory","screenSize","customerId","countryCode","languageCode","testDriveDealerId","testDriveDealerLocationLat","testDriveDealerLocationLong","testDriveDealerTradingName","testDriveLeadId","testDriveVehicleModelCode","testDriveVehicleModelName","offerCount","formCount","formCategory","formName","formStepName","formStepNumber","formType","userLocation","configuratorVersion","mboxActivated","registrationId","inventoryId","monthlyPrice","eim","featureTracking","templateName","formVisible","pageUrl","dealerAddress","dealerName","extendedTestDrive","testdriveType","financeCalculatorStep","vehiclePowertrain","preLaunchVehicle","excludeList","webView","webViewClient"],componentIds:{c19_25_Dealer_Locator:"C19.25_Dealer_Locator",c19_39_Powertrain_Model_Selector:"C19.39_Powertrain_Model_Selector",c023_2Anchor_Links_Panel:"C23-2_Anchor_Links_Panel",c084ConfiguratorMenu:"C84_Configurator_Menu",c085EngineTrayFilter:"C85_Engine_Tray_Filter",c085_2CategoryTrays:"C85.2_Category_Trays",c085_2_21EvCards:"C85.2.21_EV_Cards",c86ConfiguratorDoubleCategory:"C86_Configurator_Double_Category",C86_Configurator_Tray:"C86_Configurator_Tray",c86VersionTrayFilter:"C86_Version_Tray_Filter",c86View:"C86_View",c86_2ConfiguratorOptionSelect:"C86_2_Configurator_Option_Select",c86_2ConfiguratorOptionSelectV2:"C86_2_Configurator_Option_Select_v2",c86_2ConfiguratorConflicts:"C86_2_Configurator_Conflicts",
32c86_2ConfiguratorConflictsV2:"C86_2_Configurator_Conflicts_v2",c86_2ConfiguratorFeaturesToggle:"C86_2_Configurator_Features_Toggle",c087ConfiguratorStage:"C87_Configurator_Stage",c088ConfiguratorFullWidth:"C88_Configurator_Full_Width",c090ConfiguratorFooter:"C90_Configurator_Footer",c091ImFinished:"C91_Im_Finished",c92ConfiguratorSaveOverlay:"C92_Configurator_Save_Overlay",c103ConfiguratorSocialShare:"C103_Configurator_Social_Share",c105FinanceCalculator:"C105_Finance_Calculator",c106ConfiguratorResetOverlay:"C106_Configurator_Reset_Overlay",c148_1ConfiguratorCarSummaryOptions:"c148_1ConfiguratorCarSummaryOptions",c148_2ConfiguratorCarSummary:"C148_2_Configurator_
32Car_Summary",c148_5ConfiguratorCarSummary:"C148_5_Configurator_Car_Summary",c148_1SummaryEditButton:"C_148_1_Summary_Edit_Button",c148_1ConfiguratorCarSummary:"C148_Car_Summary",c158ConfiguratorEngineInformationOverlay:"C158_Configurator_Engine_Information_Overlay",C181InventoryContainer:"C181_Inventory_Container",c187ConfiguratorSignpostingCtas:"C187_Configurator_Signposting_CTAs",c192_AConfiguratorVersionConflictOverlay:"C192-A_Configurator_Version_Conflict_Overlay",c192_BConfiguratorAllFeaturesOverlay:"C192-B_Configurator_All_Features_Overlay",c197ModelSpecificOffersListing:"C197_Model_Specific_Offers_Listing",c199LeaseOfferOverlay:"C199_Lease_Offer_Overlay",c200InventoryIntegration:"C200_Inventory_Integration",C200ConfiguratorLocation:"C200_Configurator_Location",c200_1ConfiguratorLocation:"C200-1_Configurator_Location",c201ConfiguratorLocationCapture:"C201_Configurator_Location_Capture",c201_1ConfiguratoLocationCapture:"C201-1_Configurator_Location_Capture",c201_2ConfiguratoLocation:"C201-2_Configurator_Location",c202_1GradeOffers:"C202.1_Grade_Version_Overview_Offers",c202_1VersionOffers:"version-card",c202_2MainOffers:"C202.2_Main_Offers",c202_2VersionOffers:"version-card",c202_3SummaryOffers:"C202.3_Summary_Offers",c202_3VersionOffers:"version-card",c202_4ConfiguratorOffersOverlay:"C202.4_Configurator_Offers_Overlay",c201_0LocationCaptureOverlayContent:"C201.0_Location_Capture_Overlay_Content",c201_0ConfiguratorLocation:"C201.0_Configurator_Location",c201_1ConfiguratorLocationOverlay:"C201-1_Configurator_Location_Overlay",c201_3ConfiguratorLocationOverlay:"C201-3_Configurator_Location_Overlay",C119_1_Servicing_Dashboard:"C119-1_Servicing_Dashboard",C120_2_Signpost:"C120-2_Signpost",C118_My_Car:"C118_My_Car",C160_0B_Basic_Specifications_Highlight:"C160.0B_Basic_Specifications_Highlight",C161_0A_Basic_Specifications_Highlight:"C161.0A_Basic_Specifications_Highlight",C208_Content_Caption:"C208_Content_Caption",C211_split_model:"C211_split_model",C215_Linked_Dropdowns:"C215_Linked_Dropdowns",C216_Listed_Links:"C216_Listed_Links",C207_1_Location_Input:"C207-1_Location_Input",C207_2_Results_List:"C207-2_Results_List",C207_2_Dealer_Details:"C207-2_Dealer_Details",C207_2_Dealer_Locator:"C207-2",C207_5_Legal_Footer:"C207_5_Legal_Footer",C207_3_Map:"C207-3_Map",C207_6_Filter:"C207-6_Filter",C236_Reviews:"C236_Reviews",C244_Multiple_Inclusions_Conflict_Message:"C244_Multiple_Inclusions Conflict_Message",C245_Multiple_Inclusions_Overlay:"C245_Multiple_Inclusions_Overlay",c_085_2_Configurator_Navbar:"c_085-2-Configurator_Navbar",c_085_2_Configurator_Sub_Navbar:"c_085-2-Configurator_Sub_Navbar",c_085_4_Configurator_Nextbutton:"c_085-4-Configurator_Nextbutton",c_085_2_Configurator_Urlchange:"c_085-2-Configurator_Urlchange",c_086_X_AutoContinue:"c_086_X_AutoContinue",browser:"browser",c_090_Configurator_Navbar:"c_090-Configurator_Navbar",direct:"direct",c_086_13WarrantyServices:"C_086_13_Configurator_Warranties&Services",c_204_BodyType_Tray:"C204_BodyType_Tray",c_089_Cfg_Price_Lockup:"c_089_Cfg_Price_Lockup",c_059D_Vehicle_Comparison:"C59D_Vehicle_Comparison",c_059D_Vehicle_Comparison_Overlay:"C59D_Vehicle_Comparison_Overlay",C307_Personal_Showroom:"C307_Personal_Showroom",C309_Universal_Finance_Calculator:"C309_Universal_Finance_Calculator",C089_Finance_Calculator:"C089_Finance_Calculator",C259_0_Snug_Kids_Data:"C259_0_Snug_Kids_Data",C262_Toggle_Quick_Link_Navigation:"C262_Anchor_Switch",scrollQualified:"scrollQualified",timeSpentQualified:"timeSpentQualified"}}}),define("c_019_25_DealerListItemView",["c_019_25_ApplicationConstants","marionette","underscore","hbars!/components/c_019-25/scripts/app/modules/dealerList/html/dealerListItemTemplate","c_019_25_ModuleConstants","trackingCodes","keyCodeConstants"],function(a,b,c,d,e,f,g){"use strict";var h=a.EVENTS;return b.ItemView.extend({className:function(){return this.model&&this.model.getDealerTypeCssClass()},events:{"click @ui.selectDealerContainer":"_onSelectDealerClick","click @ui.dealerPhoneLink":"_onDealerPhoneClick"},tagName:"li",template:d,templateHelpers:function(){var a={},b=e.DEALER_LIST.ITEM_VIEW_OPTIONS;return a[b.SELECT_DEALER_CTA_TEXT]=this.options[b.SELECT_DEALER_CTA_TEXT],a[b.DISTANCE_UNIT_TEXT]=this.options[b.DISTANCE_UNIT_TEXT],a[b.ENABLE_DEALER_NUMBER]=this.options[b.ENABLE_DEALER_NUMBER],a},ui:{selectDealerButton:e.DEALER_LIST.SELECTORS.SELECT_DEALER_BUTTON,selectDealerContainer:e.DEALER_LIST.SELECTORS.SELECT_DEALER_BUTTON,dealerPhoneLink:e.DEALER_LIST.SELECTORS.DEALER_PHONE_LINK},_getEventAggregator:function(){return this.options[e.DEALER_LIST.ITEM_VIEW_OPTIONS.EVENT_AGGREGATOR]},_onSelectDealerClick:function(){var b=this.model.getDistance(),c=this.model.getVehicles(),d=this.model.getDealerId();this._getEventAggregator().trigger(h.ANALYTICS_DEALER_INTERACTION,f.componentIds.c19_25_Dealer_Locator,this.model).trigger(h.SET_SELECTED_DEALER,d,a.SELECTED_DEALER_SOURCES.USER_SELECT,b,c)},_onDealerPhoneClick:function(){this._getEventAggregator().trigger(h.ANALYTICS_DEALER_PHONE_LINK_INTERACTION,f.componentIds.c19_25_Dealer_Locator,this.model)},onDomRefresh:function(){c.defer(function(){$("body").trigger(e.DEALER_LIST.EVENTS.DEALERS_PHONE_UPDATE)})}})}),define("hbars!/components/c_019-25/scripts/app/modules/dealerList/html/dealerListTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'    <ul class="legend">\n'+(null!=(f=g(c,"each").call(null!=b?b:a.nullContext||{},null!=b?g(b,"legendItems"):b,{name:"each",hash:{},fn:a.program(2,e,0),inverse:a.noop,data:e,loc:{start:{line:3,column:8},end:{line:10,column:17}}}))?f:"")+"    </ul>\n"},2:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return"            <li "+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"cssClass"):b,{name:"if",hash:{},fn:a.program(3,e,0),inverse:a.noop,data:e,loc:{start:{line:4,column:16},end:{line:4,column:59}}}))?f:"")+">\n"+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"imgUrl"):b,{name:"if",hash:{},fn:a.program(5,e,0),inverse:a.noop,data:e,loc:{start:{line:5,column:16},end:{line:7,column:23}}}))?f:"")+"                "+a.escapeExpression((g=null!=(g=h(c,"label")||(null!=b?h(b,"label"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"label",hash:{},data:e,loc:{start:{line:8,column:16},end:{line:8,column:25}}}):g))+"\n            </li>\n"},3:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'class="'+a.escapeExpression((f=null!=(f=g(c,"cssClass")||(null!=b?g(b,"cssClass"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"cssClass",hash:{},data:e,loc:{start:{line:4,column:39},end:{line:4,column:51}}}):f))+'"'},5:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'                    <img src="'+a.escapeExpression((f=null!=(f=g(c,"imgUrl")||(null!=b?g(b,"imgUrl"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"imgUrl",hash:{},data:e,loc:{start:{line:6,column:30},end:{line:6,column:40}}}):f))+'" />\n'},7:function(a,b,c,d,e){return"hidden"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isLegendVisible"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:1,column:0},end:{line:12,column:7}}}))?f:"")+'<div class="warning-message '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"dealerServiceLabel"):b,{name:"unless",hash:{},fn:a.program(7,e,0),inverse:a.noop,data:e,loc:{start:{line:13,column:28},end:{line:13,column:75}}}))?f:"")+'"><p class="dealer-service-label">'+a.escapeExpression((g=null!=(g=h(c,"dealerServiceLabel")||(null!=b?h(b,"dealerServiceLabel"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"dealerServiceLabel",hash:{},data:e,loc:{start:{line:13,column:109},end:{line:13,column:131}}}):g))+'</p></div>\n<h2 class="title '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"title"):b,{name:"unless",hash:{},fn:a.program(7,e,0),inverse:a.noop,data:e,loc:{start:{line:14,column:17},end:{line:14,column:51}}}))?f:"")+'">'+a.escapeExpression((g=null!=(g=h(c,"title")||(null!=b?h(b,"title"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"title",hash:{},data:e,loc:{start:{line:14,column:53},end:{line:14,column:62}}}):g))+'</h2>\n<span class="sub-header '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"subHeader"):b,{name:"unless",hash:{},fn:a.program(7,e,0),inverse:a.noop,data:e,loc:{start:{line:15,column:24},end:{line:15,column:62}}}))?f:"")+'">'+a.escapeExpression((g=null!=(g=h(c,"subHeader")||(null!=b?h(b,"subHeader"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"subHeader",hash:{},data:e,loc:{start:{line:15,column:64},end:{line:15,column:77}}}):g))+'</span>\n<ol class="dealers"></ol>\n'},useData:!0}
32)}),define("c_019_25_DealerListView",["underscore","c_019_25_DealerListItemView","marionette","c_019_25_ModuleConstants","hbars!/components/c_019-25/scripts/app/modules/dealerList/html/dealerListTemplate"],function(a,b,c,d,e){"use strict";var f=a.extend({},d.GENERIC_CSS_CLASSES,d.DEALER_LIST.VIEW.CSS_CLASSES);return c.CompositeView.extend({childView:b,childViewContainer:d.DEALER_LIST.SELECTORS.LIST_CONTAINER,className:function(){return this.model&&this.model.getIsLegendVisible()?d.DEALER_LIST.VIEW.CSS_CLASSES.HAS_LEGEND:void 0},modelEvents:function(){var a={};return a["change:"+d.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.TITLE]="_onTitleChange",a["change:"+d.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL]="_onDealerServiceLabelChange",a["change:"+d.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_MODEL_SERVICE_LABEL]="_onDealerServiceLabelChange",a["change:"+d.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.SUB_HEADER]="_onSubHeaderChange",a},template:e,ui:{title:d.DEALER_LIST.SELECTORS.TITLE,dealerServiceLabel:d.DEALER_LIST.SELECTORS.DEALER_SERVICE_LABEL,warningMessage:d.DEALER_LIST.SELECTORS.WARNING_MESSAGE,subHeader:d.DEALER_LIST.SELECTORS.SUB_HEADER},_onTitleChange:function(b,c){var d=HELIOS&&HELIOS.components&&HELIOS.components.c_019_31&&HELIOS.components.c_019_31.maxRadius,e=(c||"").replace(/%([^%]+)%/g,function(a,b){return"radius"===b?d||"_":"_"});this.ui.title.text(e).toggleClass(f.HIDDEN,!a.isString(e)||""===e.trim())},_onDealerServiceLabelChange:function(a,b){this.ui.dealerServiceLabel.text(b||""),this.ui.warningMessage.toggleClass(f.HIDDEN,!b)},_onSubHeaderChange:function(a,b){this.ui.subHeader.text(b||"").toggleClass(f.HIDDEN,!b)},onDomRefresh:function(){a.defer(function(){$("body").trigger(d.DEALER_LIST.EVENTS.DEALERS_PHONE_UPDATE)})}})}),define("c_019_25_DealerListViewItemModel",["backbone","c_019_25_ModuleConstants"],function(a,b){"use strict";var c=b.DEALER_LIST.VIEW_ITEM_MODEL.ATTRIBUTES;return a.Model.extend({getDealerId:function(){return this.get(c.DEALER_ID)},getDealerTypeCssClass:function(){return this.get(c.DEALER_TYPE_CSS_CLASS)},getDistance:function(){return this.get(c.DISTANCE)},getVehicles:function(){return this.get(c.VEHICLES)}})}),define("c_019_25_DealerListViewCollection",["backbone","c_019_25_DealerListViewItemModel","c_019_25_ModuleConstants"],function(a,b,c){"use strict";return a.Collection.extend({initialize:function(a){this.enablePmaDealer=a},comparator:function(a){if(this.enablePmaDealer&&!JSON.parse(this.enablePmaDealer))return a.get(c.DEALER_LIST.VIEW_ITEM_MODEL.ATTRIBUTES.DISTANCE)},model:b})}),define("c_019_25_DealerListViewModel",["backbone","c_019_25_ModuleConstants"],function(a,b){"use strict";var c=b.DEALER_LIST.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({getIsLegendVisible:function(){return this.get(c.IS_LEGEND_VISIBLE)}})}),define("c_019_25_DealerListController",["underscore","c_019_25_ControllerBase","c_019_25_DealerListView","c_019_25_DealerListViewCollection","c_019_25_DealerListViewModel","c_019_25_ApplicationConstants","c_019_25_ModuleConstants","storageManager","storageManagerKeys"],function(a,b,c,d,e,f,g,h,i){"use strict";var j=f.EVENTS,k=f.STATES,l=g.DEALER_LIST.CONTROLLER_OPTIONS,m=g.MAIN.SELECTORS.DATEPICKER,n=g.SEARCH.SELECTORS.NEAREST_DEALER_CTA;return b.extend({initialize:function(){var a=this.getRegion();a&&a.show(this._getView()),this._lookForConfigurator(),this._bindEvents(),this.isAddressFieldsCleared=!1},_bindEvents:function(){var a=this.getEventAggregator(),b=this.getContentModel(),c=b&&b.getEnableModelDealerMapping(),d=b&&b.getEnableModelDealerServiceMapping();a&&(a.on(j.DEALER_SEARCH_COMPLETE,this._onDealerSearchComplete,this),a.on(j.RESET_DEALERLIST_COLLECTIONS,this._onDelearSearchZeroResults,this),a.on(j.SET_SELECTED_DEALER,this._onDealerSelected,this),a.on(j.SWITCH_TEST_DRIVE,this._onTestdriveTypeSwitch,this),a.on(j.HOME_TEST_DRIVE_ADDRESS_VERIFIED,this._onHomeTestDriveAddressVerified,this),a.on(j.CLEAR_ADDRESS_FIELDS,this._setIsAddressFieldsCleared,this),c?a.off(j.STORAGE_SAVED).on(j.CHANGE_MODEL_SELECT,this._setDealerServiceMapping,this).on(j.STORAGE_SAVED,this._onStorageSaved,this):this._getModel().set(g.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL,""),d?a.off(j.STORAGE_SAVED).on(j.CHANGE_SERVICE_MODEL_SELECT,this._setModelDealerServiceMapping,this).on(j.STORAGE_SAVED,this._onStorageSaved,this).on(j.SHOW_DEALER_MODEL_SERVICE_LABEL,this._setModelDealerServiceLabel,this):this._getModel().set(g.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_MODEL_SERVICE_LABEL,""))},_onStorageSaved:function(){this._lookForConfigurator()},_lookForConfigurator:function(){var a,b,c=[];this.options.isConfigurator&&(a=h.loadItem(i.c_cfg.itemKey),a&&a.state&&a.state.modelCode&&(b=a.state.modelCode,this.options.mappingData&&(c=Object.keys(this.options.mappingData).filter(function(a){return a===b},this).map(function(a){return this.options.mappingData[a]},this))),a&&a.state&&a.state.model&&a.state.modelCode&&this._setDealerServiceMapping(c.length&&c[0],a.state.model))},_getCollection:function(){return this._collection||(this._collection=new d(this.getContentModel()&&this.getContentModel().get("enablePmaDealer")))},_getDealerTypeIconSettings:function(){return this.options[l.DEALER_TYPE_ICON_SETTINGS]},_getModel:function(){var b,c,d;return this._model||(b={},c=this.getContentModel(),d=g.DEALER_LIST.VIEW_MODEL.ATTRIBUTES,c&&(b[d.IS_LEGEND_VISIBLE]=c.getDealerIconKeys().length>1,b[d.LEGEND_ITEMS]=a.map(c.getDealerIconKeys(),function(b){return a.extend({label:b.legendLabel},this._getDealerTypeIconSettings()&&this._getDealerTypeIconSettings()[b.iconStyle])},this)),this._model=new e(b)),this._model},_getChildViewOptions:function(){var a=this.getContentModel(),b={};return b[g.DEALER_LIST.ITEM_VIEW_OPTIONS.EVENT_AGGREGATOR]=this.getEventAggregator(),a&&(b[g.DEALER_LIST.ITEM_VIEW_OPTIONS.SELECT_DEALER_CTA_TEXT]=a.getSelectDealerCtaLabel(),b[g.DEALER_LIST.ITEM_VIEW_OPTIONS.DISTANCE_UNIT_TEXT]=a.getDistanceUnitLabel(),b[g.DEALER_LIST.ITEM_VIEW_OPTIONS.ENABLE_DEALER_NUMBER]=a.getDealerListPhone()),b},_getView:function(){return this._view||(this._view=new c({collection:this._getCollection(),model:this._getModel(),childViewOptions:this._getChildViewOptions()}))},_setDealerServiceMapping:function(a,b){this.modelServiceId=a,this.modelName=b},_setModelDealerServiceMapping:function(a,b){this.modelName=b,this.modelServiceId=this.options.modelServiceMappingData[a]},_setModelDealerServiceLabel:function(a,b,c){var d=h.loadItem(i.dealerLocator.profileDataSession,{mode:"sessionStorage"}),e=d&&Object.keys(d.storageData.location).length?d.storageData.location:"",f=d&&Object.keys(d.storageData.dealerLocation).length?d.storageData.dealerLocation.dealerId:"",j=this.options.selectedDealerController&&this.options.selectedDealerController.getDealerId();this.getContentModel().getEnableModelDealerServiceMapping();this._getModel().set(g.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_MODEL_SERVICE_LABEL,a),(c||a&&b)&&(this._hide($(g.MAIN.VIEW.SELECTORS.DEALER_LOCATOR_MAIN).find(g.MAIN.SELECTORS.SELECTED_DEALER)),this._show($(g.MAIN.VIEW.SELECTORS.DEALER_LOCATOR_MAIN).find(g.MAIN.SELECTORS.SEARCH)),$(g.MAIN.SELECTORS.DATEPICKER).attr("disabled",!0)),a?(this._show($(g.MAIN.SELECTORS.DEALER_LIST)),this._hide($(g.DEALER_LIST.SELECTORS.LIST_CONTAINER)),this._hide($(g.MAIN.VIEW.SELECTORS.DEALER_LOCATOR_MAIN).find(g.MAIN.SELECTORS.SELECTED_DEALER)),this._show($(g.MAIN.VIEW.SELECTORS.DEALER_LOCATOR_MAIN).find(g.MAIN.SELECTORS.SEARCH))):(b&&this._hide($(g.MAIN.SELECTORS.DEALER_LIST)),(f&&b||j)&&(this._show($(g.MAIN.VIEW.SELECTORS.DEALER_LOCATOR_MAIN).find(g.MAIN.SELECTORS.SELECTED_DEALER)),this._hide($(g.MAIN.VIEW.SELECTORS.DEALER_LOCATOR_MAIN).find(g.MAIN.SELECTORS.SEARCH)),f&&b&&$("body").trigger("onDealerSelectionModelDealerServiceMappingRTB",f))),e&&$(g.MAIN.SELECTORS.SEARCH).find(g.MAIN.SELECTORS.LOCATION_INPUT).val(e.address)},_show:function(a){a.css({display:"block"})},_hide:function(a){a.css({display:"none"})},_onDealerSearchComplete:function(b){var c,d,e,l,o,p,q,r,s,t,u=this.getContentModel(),v=u&&u.attributes.isExternal?u.attributes.isExternal.isExternalJourney:"",w=this.getEventAggregator(),x=g.DEALER_LIST.VIEW_ITEM_MODEL.ATTRIBUTES,y=b&&b.map(function(b){var c=a.find(u&&u.getDealerIconKeys(),function(c){return a.contains(c.dealerTypes,b.getType())}),d=c&&this._getDealerTypeIconSettings()[c.iconStyle],e={};return e[x.DEALER_ID]=b.getDealerId(),e[x.NAME]=b.getName(),e[x.UNFORMATTED_ADDRESS]=b.getAddress(),e[x.ADDRESS]=b.getFormattedAddress(),e[x.DISTANCE]=parseFloat(b.getDistance()),e[x.FORMATTED_DISTANCE]=b.getDistance(),e[x.TYPE]=b.getType(),e[x.PHONE]=b.getPhone(),e[x.PHONE_NO_SPACE]=b.getPhone()&&b.getPhone().replace(/ /g,""),e[x.SHOW_PHONE]=b.getPhone()&&u.getDealerListPhone(),e[x.VEHICLES]=b.getVehicles(),this._getIsHomeTestdriveEnabled()&&(e.homeTestdriveType=!(!b.getTestdriveTypes()||!b.getTestdriveTypes().length)&&b.getTestdriveTypes().includes("home")),d&&(d.cssClass&&(e[x.DEALER_TYPE_CSS_CLASS]=g.GENERIC_CSS_CLASSES.DEALER_TYPE_PREFIX+d.cssClass),e[x.DEALER_TYPE_ICON_IMG_URL]=d.imgUrl),e},this),z=/%(.*?)%/g,A=this.options.selectedDealerController&&this.options.selectedDealerController.getDealerId(),B=this.options.selectedDealerController&&this.options.selectedDealerController.getDealerName(),
32C="",D=!1,E=!0,F=this.options.dealerBookingEnabled;if(this._searchZeroResults=!1,this._show($(g.DEALER_LIST.SELECTORS.LIST_CONTAINER)),!this._getIsRealtimeTestdriveBookingEnabled()&&!A&&!F){var G=h.loadItem(i.dealerLocator.localProfileDataSession,{mode:"localStorage"})||{},H=G&&G.storageData||{};A=H.dealerLocation&&H.dealerLocation.dealerId,E=!1}if(!A&&this.currentDealerId&&(A=this.currentDealerId,this.currentDealerId=void 0),this._getIsRealtimeTestdriveBookingEnabled()||F)if(this._allCollections=y,this._homeTestdrive)this._filterHomeTestDrive(y),y=this._collection.models,v&&$(n).addClass(g.GENERIC_CSS_CLASSES.HIDDEN),$("body").trigger("serviceDriveTimeslot",!0);else if($("body").trigger("serviceDriveTimeslot",!1),this._getIsPreSelectDealerEnabled()){var I=y,J=I.reduce(function(a,b){return b.distance<a.distance?b:a},I[0]);f.ANALYTICS.DEALER_ADDRESS=J.address.split(f.ADDRESS_FIELDS.SPECIAL_FIELDS.NEW_LINE.HTML).join(f.ADDRESS_FIELDS.SPECIAL_FIELDS.ITEM_SEPARATOR.HTML),f.ANALYTICS.DEALER_ID=J.dealerId,f.ANALYTICS.DEALER_NAME=J.name,this._getCollection().reset(I.slice(0,this._getMaxResultCount())),this.getEventAggregator().trigger(j.SET_SELECTED_DEALER,J.dealerId,f.SELECTED_DEALER_SOURCES.PRE_SELECT,J.distance,J.vehicles)}else this._getCollection().reset(y.slice(0,this._getMaxResultCount())),w&&w.trigger(j.SET_APPLICATION_STATE,k.SEARCH_RESULTS);else this._getCollection().reset(y);u&&(p=u&&u.getEnableModelDealerMapping(),q=u&&u.getEnableModelDealerServiceMapping(),(p||q&&!this._getIsPreSelectDealerEnabled())&&this.modelServiceId?(this.options.isConfigurator&&!A&&(r=h.loadItem(i.c_cfg.profileDataSession),s=r&&r.storageData.location,t=r&&r.storageData.dealerLocation,r&&s&&t&&(A=t.dealerId)),o=A&&y.filter(function(a){return a.dealerId===A}),o&&!o.length&&this.modelName?(p&&(C=u.getResultLabelDealerService().replace("{dealerName}",B),C=C.replace("{modelName}",this.modelName),this._getModel().set(g.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL,C)),this.currentDealerId=A,D=!0,w.trigger(f.EVENTS.CLEAR_SELECTED_DEALER,!1)):o&&o.length&&this.modelName&&w.trigger(j.SET_SELECTED_DEALER,A,f.SELECTED_DEALER_SOURCES.USER_SELECTED)):A&&(p||q&&!this._getIsPreSelectDealerEnabled())&&w?w.trigger(j.SET_SELECTED_DEALER,A,f.SELECTED_DEALER_SOURCES.USER_SELECTED):p&&q||(p||this._getModel().set(g.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL,""),q||this._getModel().set(g.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_MODEL_SERVICE_LABEL,""),A&&E&&w&&!q&&w.trigger(j.SET_SELECTED_DEALER,A,f.SELECTED_DEALER_SOURCES.USER_SELECTED)),this._getIsRealtimeTestdriveBookingEnabled()||A||D||!this._getIsPreSelectDealerEnabled()||F||this._preSelectNearestDealer(y),1===y.length?c=u.getResultLabelSingle():y.length&&(c=this._getIsHomeTestdriveEnabled()?(u.getResultLabelMultiple()||"").replace("%resultCount%",this._getDisplayedDealerCount(y.length)):(u.getResultLabelMultiple()||"").replace("%resultCount%",y.length)),u.getSubHeader()&&y.length>0&&HELIOS&&HELIOS.components.c_019_39&&HELIOS.components.c_019_39.powertrainEnabled&&(e=$(g.MAIN.VIEW.SELECTORS.SELECTED_POWERTRAIN).val()?$(g.MAIN.VIEW.SELECTORS.SELECTED_POWERTRAIN).val():"",l=u.getSubHeader().match(z),d=a.isNull(l)?u.getSubHeader()||"":"alternatePowertrain"===HELIOS.components.c_019_39.selectedPowertrainOption?(u.getSubHeader()||"").replace(l[0],$(g.MAIN.VIEW.SELECTORS.SELECTED_MODEL).text()).replace(l[1],e):"dealersFurtherAway"===HELIOS.components.c_019_39.selectedPowertrainOption?(u.getSubHeader()||"").replace(l[0],$(g.MAIN.VIEW.SELECTORS.SELECTED_MODEL).text()).replace(l[1],e):"localDealer"===HELIOS.components.c_019_39.selectedPowertrainOption?"":(u.getSubHeader()||"").replace(l[0],$(g.MAIN.VIEW.SELECTORS.SELECTED_MODEL).text()).replace(l[1],e),this._getModel().set(g.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.SUB_HEADER,d))),this._getModel().set(g.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.TITLE,c),w&&!this._getIsHomeTestdriveEnabled()&&w.trigger(j.SET_APPLICATION_STATE,k.SEARCH_RESULTS),v&&($(g.MAIN.SELECTORS.SELECTED_DEALER).addClass(g.GENERIC_CSS_CLASSES.HIDDEN),$(m).prop("disabled",!1))},_preSelectNearestDealer:function(a){var b=a.reduce(function(a,b){return b.distance<a.distance?b:a},a[0]);b&&this.getEventAggregator().trigger(j.SET_SELECTED_DEALER,b.dealerId,f.SELECTED_DEALER_SOURCES.PRE_SELECT,"",b.vehicles)},_onDealerSelected:function(a,b){this._getModel().set(g.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL,""),this._getModel().set(g.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_MODEL_SERVICE_LABEL,"")},_onTestdriveTypeSwitch:function(a,b,c){var d,e=this.getContentModel();if(this._homeTestdrive=a,this._extendedTestdrive=c,a?$("body").trigger("serviceDriveTimeslot",!0):$("body").trigger("serviceDriveTimeslot",!1),!b&&!this.isAddressFieldsCleared){if(this._searchZeroResults)return this.getEventAggregator().trigger(j.NO_HOME_TESTDRIVE_RESULTS,this._homeTestdrive,this._extendedTestdrive,!0),this.getEventAggregator().trigger(j.DEALER_SEARCH_COMPLETE_ZERO_RESULTS_HTD_FALLBACK,!!this._homeTestdrive),!1;if(!this._allCollections)return!1;if(this._homeTestdrive)g.ADDRESS_FIELDS.VIEW_MODEL.ATTRIBUTES.POSTAL_CODE_SEARCH=!1;else{if(!this._allCollections.length)return void this.getEventAggregator().trigger(j.SET_APPLICATION_STATE,k.NO_RESULTS);this.options.selectedDealerController.getDealerId()?(this.getEventAggregator().trigger(j.SET_APPLICATION_STATE,k.DEALER_SELECTED),this.getEventAggregator().trigger(j.SET_SELECTED_DEALER,this.options.selectedDealerController.getDealerId())):(this.getEventAggregator().trigger(j.SET_APPLICATION_STATE,k.SEARCH_RESULTS),this._getCollection().reset(this._allCollections.slice(0,this._getMaxResultCount())))}1===this._collection.models.length?d=e.getResultLabelSingle():this._collection.models.length&&(d=(e.getResultLabelMultiple()||"").replace("%resultCount%",this._getDisplayedDealerCount(this._collection.models.length))),this._getModel().set(g.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.TITLE,d)}},_filterHomeTestDrive:function(a){var b,c,d;(a||a.length)&&(this.isAddressFieldsCleared||(b=a,d=g.ADDRESS_FIELDS.VIEW_MODEL.ATTRIBUTES.POSTAL_CODE_SEARCH,b.length?(c=b.reduce(function(a,b){return b.distance<a.distance?b:a},b[0]),f.ANALYTICS.DEALER_ADDRESS=c.address.split(f.ADDRESS_FIELDS.SPECIAL_FIELDS.NEW_LINE.HTML).join(f.ADDRESS_FIELDS.SPECIAL_FIELDS.ITEM_SEPARATOR.HTML),f.ANALYTICS.DEALER_ID=c.dealerId,f.ANALYTICS.DEALER_NAME=c.name,this._getCollection().reset(b.slice(0,this._getMaxResultCount())),this.getEventAggregator().trigger(f.EVENTS.GET_DEALER_ADDRESS),this._isHomeTestDriveAddressVerified()?(this.getEventAggregator().trigger(j.PRE_SELECT_NEAREST_DEALER,this._getIsPreSelectDealerEnabled()),!this._getIsPreSelectDealerEnabled()||this.options.selectedDealerController.getDealerId()&&!0!==d?this.options.selectedDealerController.getDealerId()&&!0!==d?(this.getEventAggregator().trigger(j.SET_SELECTED_DEALER,this.options.selectedDealerController.getDealerId()),this.getEventAggregator().trigger(j.NEAREST_HOME_ADDRESS_DEALER,this.options.selectedDealerController.getDealerId())):(this._getCollection().reset(a.slice(0,this._getMaxResultCount())),this.getEventAggregator().trigger(j.SET_APPLICATION_STATE,k.SEARCH_RESULTS),this.getEventAggregator().trigger(j.NEAREST_HOME_ADDRESS_DEALER,!1)):(this.getEventAggregator().trigger(j.SET_SELECTED_DEALER,c.dealerId),this.getEventAggregator().trigger(j.NEAREST_HOME_ADDRESS_DEALER,c.dealerId))):(this.getEventAggregator().trigger(j.PRE_SELECT_NEAREST_DEALER,this._getIsPreSelectDealerEnabled()),this.getEventAggregator().trigger(j.PRE_SELECT_WHEN_ADDRESS_NOT_VERIFIED,c.dealerId),this.getEventAggregator().trigger(j.SET_APPLICATION_STATE,k.PREFERRED_LOCATION_ADDRESS))):(this.getEventAggregator().trigger(j.NEAREST_HOME_ADDRESS_DEALER,!1),this.getEventAggregator().trigger(j.DEALER_SEARCH_COMPLETE_ZERO_RESULTS_HTD_FALLBACK,!0))))},_onHomeTestDriveAddressVerified:function(a){this._homeTestDriveAddressVerified=a},_isHomeTestDriveAddressVerified:function(){return!!this._homeTestDriveAddressVerified},_getMaxResultCount:function(){return this.options[l.MAX_RESULT_COUNT]},_getIsHomeTestdriveEnabled:function(){return this.options[l.HOME_TEST_DRIVE_ENABLED]},_getIsRealtimeTestdriveBookingEnabled:function(){return this.options[l.REALTIME_TESTDRIVE_BOOKING]},_getIsPreSelectDealerEnabled:function(){return this.getContentModel()&&this.getContentModel().getIsPreSelectDealerEnabled()},_onDelearSearchZeroResults:function(a){this._searchZeroResults=!0,this._getCollection().reset([]),this.getEventAggregator().trigger(j.NO_HOME_TESTDRIVE_RESULTS,this._homeTestdrive,this._extendedTestdrive,a),this.getEventAggregator().trigger(j.DEALER_SEARCH_COMPLETE_ZERO_RESULTS_HTD_FALLBACK,!!this._homeTestdrive)},_getDisplayedDealerCount:function(a){return parseInt(this._getMaxResultCount())>=a?a:this._getMaxResultCount()},_setIsAddressFieldsCleared:function(a){this.isAddressFieldsCleared=a}})}),define("c_019_25_DealerModel",["underscore","c_019_25_ApplicationConstants","backbone","handlebars","c_019_25_ModelConstants"],function(a,b,c,d,e){"use strict";var f=e.DEALER.ATTRIBUTES,g=e.GENERIC.EVENTS,h=e.DEALER.OPTIONS;return c.Model.extend({initialize:function(a,b){this.options=b||{},this.on(g.ERROR,this.onError,this).on(g.SYNC,this.onSync,this)},onError:function(){this.isErrored=!0},onSync:function(){this.isSynced=!0},url:function(){return this._getUrlFormat().replace("{DEALER_ID}",this._getDealerId())},_getAddressFieldOrder:function(){return this.options[h.ADDRESS_FIELD_ORDER]},_getDealerId:function(){return this.options[h.DEALER_ID]},_getDistanceUnit:function(){return this.options[h.DISTANCE_UNIT]},_getUrlFormat:function(){return this.options[h.URL_FORMAT]},getAddress:function(){return this.get(f.ADDRESS)},getDealerId:function(){return this.get(f.DEALER_ID)},getTestdriveTypes:function(){return this.get(f.TESTDRIVETYPES)},getVehicles:function(){return this.get(f.VEHICLES)},getDistance:function(){var a,b=this.get(f.DISTANCE),c=this._getDistanceUnit();return b&&b.hasOwnProperty(c)&&(a=b[c].toFixed(1)),a},getFormattedAddress:function(){var c,e=this.getAddress()||{},f=b.ADDRESS_FIELDS.SPECIAL_FIELDS,g=a.pluck(f,"ID"),h=a.chain(this._getAddressFieldOrder()).pluck("id").filter(function(b){return e[b]||a.contains(g,b)}).map(function(b){return a.contains(g,b)?a.findWhere(f,{ID:b}).EXPRESSION:"{{"+b+"}}"}
32).value().join("");return h=h.replace(new RegExp("("+f.ITEM_SEPARATOR.EXPRESSION+"){2,}","g"),f.ITEM_SEPARATOR.EXPRESSION),h=h.replace(new RegExp("(^("+f.ITEM_SEPARATOR.EXPRESSION+")*|("+f.ITEM_SEPARATOR.EXPRESSION+")*$)","g"),""),h=h.replace(new RegExp(f.NEW_LINE.EXPRESSION+f.ITEM_SEPARATOR.EXPRESSION,"g"),f.NEW_LINE.EXPRESSION),h=h.replace(new RegExp("("+f.NEW_LINE.EXPRESSION+"){2,}","g"),f.NEW_LINE.EXPRESSION),h=h.replace(new RegExp("(^"+f.NEW_LINE.EXPRESSION+"|"+f.NEW_LINE.EXPRESSION+"$)","g"),""),c=d.compile(h),c(a.extend({},e,a.object(g,a.pluck(f,"HTML"))))},getName:function(){return this.get(f.NAME)},getType:function(){return this.get(f.TYPE)},getPhone:function(){var a=this.get(f.CONTACT);return a&&a.phone||a&&a.phones&&a.phones[0]&&a.phones[0].number}})}),define("c_019_25_DealerCollection",["underscore","backbone","c_019_25_DealerModel","remoteServices","c_019_25_ModelConstants","storageManager"],function(a,b,c,d,e,f){"use strict";var g=e.DEALER_COLLECTION.OPTIONS;return b.Collection.extend({initialize:function(a,b){this.options=b||{},this.CONSTANTS=e.DEALER},model:c,sync:function(a,b,c){var g,h;if(g=this.options.enablePmaDealer?{location:this._getPostalCode(),isMarketingDealer:!0,serviceId:this._getServiceFilters(),filterConditionType:this._getServiceFilterType()}:this._isModelAndPowertrainEnabled()?this._isPowerTrainEnabled()?{lat:this._getLat(),long:this._getLng(),radius:this._getRadius(),modelCode:this._getSelectedModelWithPt(),powerTrain:this._getSelectedModelPowertrain(),targetSystemRoutingId:this._getTargetSystemRoutingId()}:{lat:this._getLat(),long:this._getLng(),modelCode:this._getSelectedModelWithPt(),targetSystemRoutingId:this._getTargetSystemRoutingId()}:this._getIsRealtimeTestdriveEnabled()?{lat:this._getLat(),long:this._getLng(),modelCode:this._getSelectedModel(),targetSystemRoutingId:this._getTargetSystemRoutingId()}:{lat:this._getLat(),long:this._getLng(),serviceId:this._getServiceFilters(),filterConditionType:this._getServiceFilterType()},this._getIsRealtimeServiceBookingEnabled()&&(g.serviceId=this._getServiceFilters(),g.filterConditionType=this._getServiceFilterType()),this._getIsDealerAcceptsLeadsMandatory()&&(g.canAcceptLeads=!0),this._getTestDriveModelId()&&(g.testDriveModel=this._getTestDriveModelId()),this._getIsRealtimeTestdriveEnabled()&&!this._isPreLaunchSelected()){
33this._getIsHomeTestdriveSelected()?g.radius=this._getHomeRadius():g.radius=this._getRadius(),this._isPowerTrainEnabled()&&("localDealer"===this._getSelectedPowertrainOption()&&(g.radius=this._getRadius(),g.serviceId=this._getServiceFilters(),g.filterConditionType=this._getServiceFilterType()),"alternatePowertrain"===this._getSelectedPowertrainOption()&&(g.radius=this._getRadius(),g.powerTrain=this._getSelectedModelAlternatePowertrain()),"dealersFurtherAway"===this._getSelectedPowertrainOption()&&delete g.radius);f.loadItem("externalCallbackUrl",{mode:"sessionStorage"})||$("body").trigger("disableRTBCalendar"),h=this._getIsRealtimeServiceBookingEnabled()||"localDealer"===this._getSelectedPowertrainOption()?d.getRealtimeServiceBookingDealers(this._getSize(),g):d.getRealtimeBookingDealers(this._getSize(),g)}else this._isPreLaunchSelected()&&(this._getIsTestDriveModelLcv()?(g.serviceId=this._getServiceFilters(),g.filterConditionType=this._getServiceFilterType()):(delete g.serviceId,delete g.filterConditionType),!this._isPreLaunchRadiusSearch()&&this._getRadius()?(g.radius=this._getRadius(),HELIOS.components.c_019.preLaunchRadiusSearch=!0):(HELIOS.components.c_019.preLaunchRadiusSearch=!1,delete g.radius)),h=d.getDealers(this._getSize(),g);c&&(h.fail(c.error),h.done(c.success)),this.trigger(e.GENERIC.REQUEST,h)},parse:function(a){var b;if(!a.error&&(a.dealers||JSON.parse(a).dealers&&(a.dealers||JSON.parse(a).dealers).length))return b=a.dealers||JSON.parse(a).dealers,this._getIsRealtimeTestdriveEnabled()&&!this._getIsHomeTestdriveEnabled()&&$("body").trigger("getDealerResponseSource",a.source),b},_getAddressFieldOrder:function(){return this.options[g.ADDRESS_FIELD_ORDER]},_getDistanceUnit:function(){return this.options[g.DISTANCE_UNIT]},_getIsDealerAcceptsLeadsMandatory:function(){return this.options[g.IS_DEALER_ACCEPTS_LEADS_MANDATORY]},_getLat:function(){return this.options[g.LAT]},_getLng:function(){return this.options[g.LNG]},_getPostalCode:function(){return this.options[g.POSTAL_CODE]},_getServiceFilters:function(){return this.options[g.SERVICE_FILTERS]},_getTargetSystemRoutingId:function(){return this.options[g.TARGET_SYSTEM_ROUTING_ID]},_getSelectedPowertrainOption:function(){return HELIOS&&HELIOS.components.c_019_39&&HELIOS.components.c_019_39.selectedPowertrainOption},_isPreLaunchRadiusSearch:function(){return HELIOS&&HELIOS.components.c_019&&HELIOS.components.c_019.preLaunchRadiusSearch},_isPreLaunchSelected:function(){return!(!HELIOS||!HELIOS.components.c_019_39||"true"!==HELIOS.components.c_019_39.isPrelaunch)||!!(HELIOS.components&&HELIOS.components.c_019&&HELIOS.components.c_019.isPreLaunch)},_isModelAndPowertrainEnabled:function(){var a=JSON.parse(localStorage.getItem("lastVisitedVehicle"));
33if(a&&(this.options[g.SELECTED_MODEL_WITH_PT_CODE]=a.value?a.value:"",this.options[g.SELECTED_MODEL_WITH_POWERTRAIN_CODE]=a.powertrain?a.powertrain:""),HELIOS&&HELIOS.components.c_019_39)return!0},_isPowerTrainEnabled:function(){return HELIOS&&HELIOS.components.c_019_39&&HELIOS.components.c_019_39.powertrainEnabled},_getIsRealtimeTestdriveEnabled:function(){return this.options[g.REALTIME_TESTDRIVE_BOOKING]},_getIsRealtimeServiceBookingEnabled:function(){return this.options[g.REALTIME_SERVICE_BOOKING]},_getIsHomeTestdriveEnabled:function(){return this.options[g.HOME_TEST_DRIVE_ENABLED]},_getIsHomeTestdriveSelected:function(){return this.options[g.IS_HOME_LOCATION_SELECTED]},_removeServiceFilters:function(){return this.options[g.SERVICE_FILTERS]&&delete this.options[g.SERVICE_FILTERS],this},setServiceFilters:function(a,b){!a&&this._getServiceFilters()?this._removeServiceFilters():this.options[g.SERVICE_FILTERS]=a,b&&this.fetch()},setTestDriveTypeValue:function(a){this.options[g.IS_HOME_LOCATION_SELECTED]=a},getTestDriveTypeValue:function(){return this.options[g.IS_HOME_LOCATION_SELECTED]},setSelectedModel:function(a){this.options[g.SELECTED_MODEL_CODE]=a},setSelectedModelAndPowerTrain:function(a,b,c){this.options[g.SELECTED_MODEL_WITH_PT_CODE]=a,this.options[g.SELECTED_MODEL_WITH_POWERTRAIN_CODE]=b,this.options[g.SELECTED_MODEL_ALTERNATE_POWERTRAIN]=c},_getSelectedModelWithPt:function(){return this.options[g.SELECTED_MODEL_WITH_PT_CODE]},_getSelectedModelPowertrain:function(){return this.options[g.SELECTED_MODEL_WITH_POWERTRAIN_CODE]},_getSelectedModelAlternatePowertrain:function(){return this.options[g.SELECTED_MODEL_ALTERNATE_POWERTRAIN]},_getSelectedModel:function(){return this.options[g.SELECTED_MODEL_CODE]},_getServiceFilterType:function(){return this.options[g.SERVICE_FILTER_TYPE]},_getSize:function(){return this.options[g.SIZE]},_getRadius:function(){return this.options[g.RADIUS]},_getHomeRadius:function(){return this.options[g.HOMERADIUS]},_getTestDriveModelId:function(){return this.options[g.TEST_DRIVE_MODEL_ID]},_getIsTestDriveModelLcv:function(){return HELIOS.components&&HELIOS.components.c_019_39&&HELIOS.components.c_019_39.lcvService&&HELIOS.components.c_019_39.lcvService.length},setTestDriveModelId:function(a){return this.options[g.TEST_DRIVE_MODEL_ID]=a,this},_setLat:function(a){return this.options[g.LAT]=a,this},_setLng:function(a){return this.options[g.LNG]=a,this},_setPostalCode:function(a){return this.options[g.POSTAL_CODE]=a,this},isSearchLocationSet:function(){return this.options.enablePmaDealer?!!this._getPostalCode():!(!this._getLat()||!this._getLng())},setSearchLocation:function(a,b,c,d){var f={};f[e.DEALER.OPTIONS.DISTANCE_UNIT]=this._getDistanceUnit(),f[e.DEALER.OPTIONS.ADDRESS_FIELD_ORDER]=this._getAddressFieldOrder(),this._setLat(a)._setLng(b)._setPostalCode(c),d&&this.fetch(f)},testDriveTypeSwitchFetch:function(){var a={};this.isSearchLocationSet()&&(a[e.DEALER.OPTIONS.DISTANCE_UNIT]=this._getDistanceUnit(),a[e.DEALER.OPTIONS.ADDRESS_FIELD_ORDER]=this._getAddressFieldOrder(),this.fetch(a))}})}),define("c_019_25_DealerSearchController",["underscore","c_019_25_ApplicationConstants","c_019_25_ControllerConstants","c_019_25_DealerCollection","c_019_25_ModuleConstants","marionette","c_019_25_ModelConstants","objectFactory","storageManager","storageManagerKeys","remoteServices"],function(a,b,c,d,e,f,g,h,i,j,k){"use strict";var l,m,n,o,p=b.EVENTS,q=b.STATES,r=g.DEALER_COLLECTION.OPTIONS,s=g.GENERIC.EVENTS,t=c.DEALER_SEARCH.OPTIONS,u=b.SEARCH_LOCATION_SOURCES;return f.Object.extend({initialize:function(){var b={},c=this.getContentModel()&&this.getContentModel().get(g.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER)&&JSON.parse(this.getContentModel().get(g.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER));if(b[r.ADDRESS_FIELD_ORDER]=this._getAddressFieldOrder(),b[r.IS_DEALER_ACCEPTS_LEADS_MANDATORY]=this._getIsDealerAcceptsLeadsMandatory(),b[r.SERVICE_FILTERS]=this._getServiceFilters(),b[r.SERVICE_FILTER_TYPE]=this._getServiceFilterType(),b[r.SIZE]=this._getMaxResultCount(),b[r.DISTANCE_UNIT]=this._getDistanceUnit(),b[r.TEST_DRIVE_MODEL_ID]=this._getTestDriveModelId(),b[r.ENABLE_PMA_DEALER]=c,b[r.REALTIME_TESTDRIVE_BOOKING]=this._getIsRealtimeTestdriveEnabled(),b[r.REALTIME_SERVICE_BOOKING]=this._getIsRealtimeServiceBooking(),b[r.HOME_TEST_DRIVE_ENABLED]=this._getIsHomeTestdriveEnabled(),b[r.TARGET_SYSTEM_ROUTING_ID]=this._getTargetSystemRoutingId(),b[r.IS_MODEL_AND_POWERTRAIN_ENABLED]=this._isModelAndPowertrainEnabled(),(this._getIsHomeTestdriveEnabled()||this._getIsRealtimeServiceBooking()||this._isModelAndPowertrainConfigEnabled())&&(b[r.RADIUS]=this._getMaxRadius(),b[r.HOMERADIUS]=this._getMaxHomeRadius(),this._getSmartLocationContext())){this._getSmartLocationContext().getLocationFromBrowser=!0,this._getSmartLocationContext().get().done(a.bind(function(c){a.isUndefined(c.getUserLat())||a.isUndefined(c.getUserLng())||a.isUndefined(c.getUserAddress())||(b[r.LAT]=c.getUserLat(),b[r.LNG]=c.getUserLng(),this.userLocationAddress=c.getUserAddress())},this))}this._dealerCollection=h.getObject(d,null,b),this._lookForServiceInMapping(),this._bindEvents()},_bindEvents:function(){var a=this.getContentModel(),b=a&&a.getEnableModelDealerMapping();n=a&&a.getEnableModelDealerServiceMapping(),o=this._dealerCollection._getServiceFilters(),this._getEventAggregator().on(p.SET_SEARCH_LO
33CATION,this._onSearchLocationSet,this).on(p.TRIGGER_SEARCH,this._onSearchLocationSet,this).on(p.TEST_DRIVE_MODEL_CHANGED,this._onTestDriveModelChange,this).on(p.CLEAR_SELECTED_DEALER,this._onClearSelectedDealer,this).on(p.SELECTED_MODEL_CHANGE,this._onSelectedModelChange,this).on(p.SWITCH_TEST_DRIVE,this._onTestdriveTypeSwitch,this).on(p.CHANGE_MODEL_AND_POWERTRAIN,this._onModelPowerTrainChange,this),b&&this._getEventAggregator().on(p.CHANGE_MODEL_SELECT,this._onDropdownModelChange,this).on(p.STORAGE_SAVED,this._onStorageSaved,this),n&&this._getEventAggregator().on(p.CHANGE_SERVICE_MODEL_SELECT,this._onDropdownModelChangeRsb,this).on(p.STORAGE_SAVED,this._onStorageSaved,this),this._dealerCollection.on(s.REQUEST,this._onSearchSubmit,this).on(s.SYNC,this._onSearchResultLoad,this).on(s.ERROR,this._onSearchFail,this)},_onStorageSaved:function(){this._lookForServiceInMapping()},_lookForServiceInMapping:function(){var a,b,c;this.options.mappingData&&(a=i.loadItem(j.c_cfg.itemKey))&&a.state&&a.state.modelCode&&(b=a.state.modelCode,c=Object.keys(this.options.mappingData).filter(function(a){return a===b},this).map(function(a){return this.options.mappingData[a]},this),c.length?this._onDropdownModelChange(c[0]):this._onDropdownModelChange(""))},_getAddressFieldOrder:function(){return this.options[t.ADDRESS_FIELD_ORDER]},_getDistanceUnit:function(){return this.options[t.DISTANCE_UNIT]},_getEventAggregator:function(){return this.options[t.EVENT_AGGREGATOR]},_getIsDealerAcceptsLeadsMandatory:function(){return this.options[t.IS_DEALER_ACCEPTS_LEADS_MANDATORY]},_getMaxResultCount:function(){return this.options[t.MAX_RESULT_COUNT]},_getMaxRadius:function(){return this.options[t.MAX_RADIUS]},_getMaxHomeRadius:function(){return this.options[t.MAX_HOME_RADIUS]},_getDeepLinkDealerId:function(){return this.options[t.DEEP_LINK_DEALER_ID]},_onTestdriveTypeSwitch:function(a,b){var c=[];this._dealerCollection.setTestDriveTypeValue(a),b||(l&&m?(c=a?m:l,c&&c.length?this._getEventAggregator().trigger(p.DEALER_SEARCH_COMPLETE,c):(this._getEventAggregator().trigger(p.DEALER_SEARCH_COMPLETE_ZERO_RESULTS),this._getIsHomeTestdriveEnabled()&&this._getEventAggregator().trigger(p.RESET_DEALERLIST_COLLECTIONS))):this._dealerCollection.testDriveTypeSwitchFetch())},_onModelPowerTrainChange:function(a,b,c){this._dealerCollection.setSelectedModelAndPowerTrain(a,b,c)},_getServiceFilters:function(){return this.options[t.SERVICE_FILTERS]},_getServiceFilterType:function(){return this.options[t.SERVICE_FILTER_TYPE]},_getTestDriveModelId:function(){return this.options[t.TEST_DRIVE_MODEL_ID]},getContentModel:function(){return this.options[t.CONTENT]},_getIsRealtimeTestdriveEnabled:function(){return this.options[t.REALTIME_TESTDRIVE_BOOKING]},_getIsRealtimeServiceBooking:function(){return HELIOS&&HELIOS.components.c_019_31&&HELIOS.components.c_019_31.rsb},_getIsV2LeadsFlowEnabled:function(){return HELIOS&&HELIOS.components.c_019_31&&HELIOS.components.c_019_31.isV2LeadsFlowEnabled},_getIsHomeTestdriveEnabled:function(){return this.options[t.HOME_TEST_DRIVE_ENABLED]},_isModelAndPowertrainEnabled:function(){return HELIOS&&HELIOS.components.c_019_39&&HELIOS.components.c_019_39.powertrainEnabled&&$(e.ALTERNATE_POWERTRAIN.SELECTORS.POWERTRAIN_WRAPPER).length},_isModelAndPowertrainConfigEnabled:function(){return HELIOS&&HELIOS.components&&HELIOS.components.c_019_39},_isPreLaunchModelEnabled:function(){return HELIOS&&HELIOS.components&&(HELIOS.components.c_019_39&&"true"===HELIOS.components.c_019_39.isPrelaunch||HELIOS.components.c_019&&HELIOS.components.c_019.isPreLaunch)},_isPreLaunchRadiusSearch:function(){return HELIOS&&HELIOS.components.c_019&&HELIOS.components.c_019.preLaunchRadiusSearch},_getTargetSystemRoutingId:function(){return this.options[t.TARGET_SYSTEM_ROUTING_ID]},_getSmartLocationContext:function(){return this.options[t.SMART_LOCATION_CONTEXT]},_onSelectedModelChange:function(a){this._dealerCollection.setSelectedModel(a),l=null,m=null},_isSearchOnStartupEnabled:function(){return this.options[t.IS_SEARCH_ON_STARTUP_ENABLED]},_onSearchLocationSet:function(c,d){var f=this.getContentModel(),g=f&&f.getEnableModelDealerMapping(),h=f&&f.getEnableModelDealerServiceMapping();if(d==u.USER_SELECT&&this._isModelAndPowertrainEnabled()){var i=$(e.ALTERNATE_POWERTRAIN.SELECTORS.HIDDEN_INPUT_ALTERNATE_POWERTRAIN).val(),j=$(e.ALTERNATE_POWERTRAIN.SELECTORS.HIDDEN_INPUT_SELECTED_POWERTRAIN).val();HELIOS.components.c_019_39&&HELIOS.components.c_019_39.alternatePowertrainSelected&&($(e.ALTERNATE_POWERTRAIN.SELECTORS.HIDDEN_INPUT_CURRENT_POWERTRAIN).val(i),$(e.ALTERNATE_POWERTRAIN.SELECTORS.HIDDEN_INPUT_SELECTED_POWERTRAIN).val(i),$(e.ALTERNATE_POWERTRAIN.SELECTORS.HIDDEN_INPUT_ALTERNATE_POWERTRAIN).val(j)),$(b.SELECTORS.ALTERNATE_OPTIONS).prop("checked",!1),HELIOS.components.c_019_39.selectedPowertrainOption="",HELIOS.components.c_019_39.alternatePreferenceOption=!1,HELIOS.components.c_019_39.alternatePowertrainSelected=!1}this._isPreLaunchModelEnabled()&&(HELIOS.components.c_019.preLaunchRadiusSearch=!1,$(e.MAIN.SELECTORS.PRE_LAUNCH_RADIUS_SEARCH_NO_RESULTS_MESSAGE).hide(),this._setLcvServiceFilters()),l=null,m=null,d!==u.SMART_LOCATION||d===u.SMART_LOCATION&&this._isSearchOnStartupEnabled()&&(a.isEmpty(c.dealerLocation)||g||h&&this._getIsRealtimeTestdriveEnabled())?(this._getEventAggregator().trigger(p.SET_APPLICATION_STATE,q.SEARCHING),this._dealerCollection.setSearchLocation(c.getUserLat(),c.getUserLng(),c.getPostalCode(),!0)):d===u.SMART_LOCATION&&this._isSearchOnStartupEnabled()&&(a.isEmpty(c.dealerLocation)||g||h)?this._dealerCollection.setSearchLocation(c.getUserLat(),c.getUserLng(),c.getPostalCode(),!1):d!==u.SMART_LOCATION||d===u.SMART_LOCATION&&this._isSearchOnStartupEnabled()?(this._getEventAggregator().trigger(p.SET_APPLICATION_STATE,q.SEARCHING),this._dealerCollection.setSearchLocation(c.getUserLat(),c.getUserLng(),c.getPostalCode(),!0)):d===u.SMART_LOCATION&&!this._isSearchOnStartupEnabled()&&(a.isEmpty(c.dealerLocation)||g||h)&&(this._getEventAggregator().trigger(p.SET_APPLICATION_STATE,q.SEARCHING),this._dealerCollection.setSearchLocation(c.getUserLat(),c.getUserLng(),c.getPostalCode(),!0))},_onTestDriveModelChange:function(a){this._dealerCollection.setTestDriveModelId(a&&a.testDriveModelId)},_onDropdownModelChange:function(a){var b=[];a&&b.push(a),this._getIsRealtimeTestdriveEnabled()||(this.options.isConfigurator?this._dealerCollection.setServiceFilters(a,!1):this._dealerCollection.setServiceFilters(a,!0))},_onDropdownModelChangeRsb:function(c,d){var e,f,g=[],h=this.getContentModel(),l=i.loadItem(j.dealerLocator.profileDataSession,{mode:"sessionStorage"}),m=l&&Object.keys(l.storageData.dealerLocation).length?l.storageData.dealerLocation.dealerId:"",n=!1,o=c;g=a.chain(h.getDealerFilterGroups()).map(function(b){return a.chain(b.filters).filter(function(b){return!0===b.applyOnLoad&&a.isArray(b.serviceIds)}).pluck("serviceIds").value()}
33).flatten().uniq().value(),e=!(!l||!Object.keys(l.storageData.location).length),c=this.options.modelServiceMappingData[c],c&&g&&(g.push(c),g=a.uniq(g)),e&&(this._dealerCollection._setLat(l.storageData.location.lat),this._dealerCollection._setLng(l.storageData.location.lng)),m?k.getDealerByIdentifier(m).done(a.bind(function(a){a&&a.services&&a.services.forEach(function(a){a.id!==c&&c||(n=!0)}),n?this._getEventAggregator().trigger(b.EVENTS.SHOW_DEALER_MODEL_SERVICE_LABEL,"",!e):(f=h.getResultLabelDealerModelService().replace("{dealerName}",a.name),f=f.replace("{modelId}",d),this._getEventAggregator().trigger(b.EVENTS.SHOW_DEALER_MODEL_SERVICE_LABEL,f,!e),this._getEventAggregator().trigger(b.EVENTS.CLEAR_SELECTED_DEALER,!1),this._getEventAggregator().trigger(b.EVENTS.TRACK_DEALER_MODEL_SERVICE_LABEL,a.name,d,o)),e?this._dealerCollection.setServiceFilters(g,!0):this._dealerCollection.setServiceFilters(g,!1)},this)).fail(a.bind(function(){e?this._dealerCollection.setServiceFilters(g,!0):(this._getEventAggregator().trigger(b.EVENTS.SHOW_DEALER_MODEL_SERVICE_LABEL,"",!e,!0),this._getEventAggregator().trigger(b.EVENTS.CLEAR_SELECTED_DEALER,!1),this._dealerCollection.setServiceFilters(g,!1))},this)):e?this._dealerCollection.setServiceFilters(g,!0):this._dealerCollection.setServiceFilters(g,!1)},_onSearchSubmit:function(){this._getEventAggregator().trigger(p.DEALER_SEARCH_SUBMIT)},_onClearSelectedDealer:function(a){this._dealerCollection.isSearchLocationSet()&&a&&(this._dealerCollection.fetch(),this.userLocationAddress&&$(e.MAIN.SELECTORS.SEARCH).find(e.MAIN.SELECTORS.LOCATION_INPUT).val(this.userLocationAddress))},_onSearchResultLoad:function(c,d){c.length?(c=c.map(a.bind(function(a){return a.options.addressFieldOrder=this._getAddressFieldOrder(),a.options.distanceUnit=this._getDistanceUnit(),a},this)),this._getEventAggregator().trigger(p.HIDE_LOCATION_INPUT),this._getEventAggregator().trigger(p.DEALER_SEARCH_COMPLETE,c)):(n&&($(b.SELECTORS.DEALER_LIST+", "+b.SELECTORS.SELECTED_DEALER).css({display:"none"}),this._getEventAggregator().trigger(b.EVENTS.CLEAR_SELECTED_DEALER,!1)),this._isPreLaunchRadiusSearch()&&this._isPreLaunchModelEnabled()?($(e.MAIN.SELECTORS.PRE_LAUNCH_RADIUS_SEARCH_NO_RESULTS_MESSAGE).text().trim()&&$(e.MAIN.SELECTORS.PRE_LAUNCH_RADIUS_SEARCH_NO_RESULTS_MESSAGE).show(),this._dealerCollection.fetch()):this._getEventAggregator().trigger(p.DEALER_SEARCH_COMPLETE_ZERO_RESULTS),this._isPreLaunchModelEnabled()||(this._getIsHomeTestdriveEnabled()?this._getEventAggregator().trigger(p.RESET_DEALERLIST_COLLECTIONS):this._getEventAggregator().trigger(p.NO_HOME_TESTDRIVE_RESULTS),this._isModelAndPowertrainEnabled()&&($(e.MAIN.SELECTORS.ALTERNATE_POWERTRAIN_TARGET_VEHICLE_MODEL_NAME).val(d.modelName),$(e.MAIN.SELECTORS.ALTERNATE_POWERTRAIN_SEARCH).find(e.ALTERNATE_POWERTRAIN.SELECTORS.ALTERNATE_OPTIONS_LABEL+", "+e.ALTERNATE_POWERTRAIN.SELECTORS.NO_DEALER_ALTERNATE_OPTIONS).show(),$(b.SELECTORS.SEARCH_EXTENDED_RADIUS).toggleClass(b.CSS_CLASSES.HIDDEN,!!d.alternatePowerTrain&&!HELIOS.components.c_019_39.alternatePreferenceOption),$(b.SELECTORS.ALTERNATE_POWERTRAIN).toggleClass(b.CSS_CLASSES.HIDDEN,!d.alternatePowerTrain||!!HELIOS.components.c_019_39.alternatePreferenceOption),$(e.ALTERNATE_POWERTRAIN.SELECTORS.NO_RESULTS).parents(e.ALTERNATE_POWERTRAIN.SELECTORS.NO_RESULTS_CONTAINER).removeClass(b.CSS_CLASSES.DEALER_CALL_ERROR),this._setLcvServiceFilters(),setTimeout(function(){this._getEventAggregator().trigger(p.TRACK_NO_DEALERS_POWERTRAIN)}.bind(this),2e3)))),this._disableFormSubmit(this._getIsV2LeadsFlowEnabled(),!c.length),this._dealerCollection&&this._dealerCollection.models&&(this._dealerCollection.getTestDriveTypeValue()?m=this._dealerCollection.models.slice():l=this._dealerCollection.models.slice())},_setLcvServiceFilters:function(){this._isTestdriveModelLcv()?this._dealerCollection.setServiceFilters(HELIOS.components.c_019_39.lcvService,!1):this._dealerCollection.setServiceFilters(o,!1)},_isTestdriveModelLcv:function(){return HELIOS.components&&HELIOS.components.c_019_39&&HELIOS.components.c_019_39.lcvService&&HELIOS.components.c_019_39.lcvService.length},_onSearchFail:function(c,d,f){if(this._getEventAggregator().trigger(p.DEALER_SEARCH_ERROR,f,this._getIsV2LeadsFlowEnabled()),this._disableFormSubmit(this._getIsV2LeadsFlowEnabled(),!0),this._isModelAndPowertrainConfigEnabled()){var g,h,i=/%(.*?)%/g;$(e.ALTERNATE_POWERTRAIN.SELECTORS.NO_RESULTS).parents(".no-results").addClass(b.CSS_CLASSES.DEALER_CALL_ERROR),$(e.MAIN.SELECTORS.ALTERNATE_POWERTRAIN_SEARCH).find(e.ALTERNATE_POWERTRAIN.SELECTORS.ALTERNATE_OPTIONS_LABEL+", "+e.ALTERNATE_POWERTRAIN.SELECTORS.NO_DEALER_ALTERNATE_OPTIONS).hide(),g=this.getContentModel().getNoResultsModelAndPowertrainMessage().match(i),h=$(e.MAIN.VIEW.SELECTORS.SELECTED_POWERTRAIN).val()&&this._isModelAndPowertrainEnabled()?$(e.MAIN.VIEW.SELECTORS.SELECTED_POWERTRAIN).val():"",a.isNull(g)?$(e.ALTERNATE_POWERTRAIN.SELECTORS.NO_RESULTS).text(this.getContentModel().getNoResultsModelAndPowertrainMessage()||""):$(e.ALTERNATE_POWERTRAIN.SELECTORS.NO_RESULTS).text((this.getContentModel().getNoResultsModelAndPowertrainMessage()||"").replace(g[0],$(e.MAIN.VIEW.SELECTORS.SELECTED_MODEL).text()).replace(g[1],h))}},_disableFormSubmit:function(a,b){$(e.MAIN.SELECTORS.SUBMIT_FORM).toggleClass(e.GENERIC_CSS_CLASSES.BTN_DISABLED,b&&!!a)}})}),define("c_019_25_VehicleSelectorViewModel",["backbone","c_019_25_ModuleConstants"],function(a,b){"use strict";var c=b.VEHICLE_SELECTOR.VIEW_MODEL;return a.Model.extend({initialize:function(a){this.options=a||{}},getVehicleList:function(){return this.get(c.ATTRIBUTES.VEHICLE_DATA)},getPreSelectedModelId:function(){return this.get(c.ATTRIBUTES.PRE_SELECTED_MODEL_ID)},getIsSelectDifferentVehicleInstructionVisible:function(){return this.get(c.ATTRIBUTES.IS_SELECT_DIFFERENT_VEHICLE_INSTRUCTION_VISIBLE)},setIsSelectDifferentVehicleInstructionVisible:function(a){return this.set(c.ATTRIBUTES.IS_SELECT_DIFFERENT_VEHICLE_INSTRUCTION_VISIBLE,a)}})}),define("hbars!/components/c_019-25/scripts/app/modules/vehicleSelector/html/vehicleSelectorTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'                <option value="'+a.escapeExpression((f=null!=(f=g(c,"index")||e&&g(e,"index"))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"index",hash:{},data:e,loc:{start:{line:7,column:31},end:{line:7,column:41}}}):f))+'" data-test-drive-model-id="'+a.escapeExpression((f=null!=(f=g(c,"testDriveModelId")||(null!=b?g(b,"testDriveModelId"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"testDriveModelId",hash:{},data:e,loc:{start:{line:7,column:69},end:{line:7,column:89}}}):f))+'" data-model-id="'+a.escapeExpression((f=null!=(f=g(c,"modelId")||(null!=b?g(b,"modelId"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"modelId",hash:{},data:e,loc:{start:{line:7,column:106},end:{line:7,column:117}}}):f))+'">'+a.escapeExpression((f=null!=(f=g(c,"name")||(null!=b?g(b,"name"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"name",hash:{},data:e,loc:{start:{line:7,column:119},end:{line:7,column:127}}}):f))+"</option>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<div class="form-group required">\n    <p class="select-vehicle-instruction">'+a.escapeExpression((g=null!=(g=h(c,"selectVehicleInstruction")||(null!=b?h(b,"selectVehicleInstruction"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"selectVehicleInstruction",hash:{},data:e,loc:{start:{line:2,column:42},end:{line:2,column:70}}}):g))+'</p>\n    <label for="Vehicle-Selection-List">'+a.escapeExpression((g=null!=(g=h(c,"label")||(null!=b?h(b,"label"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"label",hash:{},data:e,loc:{start:{line:3,column:40},end:{line:3,column:49}}}):g))+'</label>\n    <div class="custom-selectbox custom-selectbox-form">\n        <select name="Vehicle-Selection-List" id="Vehicle-Selection-List" class="vehicle_selection_list">\n'+(null!=(f=h(c,"each").call(null!=b?b:a.nullContext||{},null!=b?h(b,"vehicleData"):b,{name:"each",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:6,column:12},end:{line:8,column:21}}}))?f:"")+'        </select>
33\n        <span class="selectedValue"></span>\n    </div>\n    <div class="select-different-vehicle-instruction error">\n        <span class="error-message">'+a.escapeExpression((g=null!=(g=h(c,"selectDifferentVehicleInstruction")||(null!=b?h(b,"selectDifferentVehicleInstruction"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"selectDifferentVehicleInstruction",hash:{},data:e,loc:{start:{line:13,column:36},end:{line:13,column:73}}}):g))+"</span>\n    </div>\n</div>\n"},useData:!0})}),define("c_019_25_VehicleSelectorView",["marionette","hbars!/components/c_019-25/scripts/app/modules/vehicleSelector/html/vehicleSelectorTemplate","c_019_25_ModuleConstants","c_019_25_ApplicationConstants","customSelect"],function(a,b,c,d,e){"use strict";var f=c.VEHICLE_SELECTOR.VIEW_MODEL.ATTRIBUTES;return a.ItemView.extend({template:b,events:{"change @ui.vehicleSelectionList":"_onVehicleSelectionChange"},ui:{vehicleSelectionList:c.VEHICLE_SELECTOR.SELECTORS.VEHICLE_SELECTION_LIST,selectVehicleInstruction:c.VEHICLE_SELECTOR.SELECTORS.SELECT_VEHICLE_INSTRUCTION,selectDifferentVehicleInstruction:c.VEHICLE_SELECTOR.SELECTORS.SELECT_DIFFERENT_VEHICLE_INSTRUCTION},modelEvents:function(){var a={};return a["change:"+f.IS_SELECT_DIFFERENT_VEHICLE_INSTRUCTION_VISIBLE]="_setSelectDifferentVehicleInstructionVisibility",a},onRender:function(){this._setSelectDifferentVehicleInstructionVisibility(),this._setSelectedItem(this.model.getPreSelectedModelId()),e.init(this.$el)},_onVehicleSelectionChange:function(){var a=this.ui.vehicleSelectionList.find(c.VEHICLE_SELECTOR.SELECTORS.SELECTED),b=a&&a.val(),e=this.model.getVehicleList()[b],f=!(e&&e.modelId);this._setSelectVehicleInstructionVisibility(f),this._getEventAggregator().trigger(d.EVENTS.VEHICLE_SELECTION_CHANGED,e)},_setSelectedItem:function(a){this.ui.vehicleSelectionList.find("["+c.VEHICLE_SELECTOR.SELECTORS.DATA_MODEL_ID+'="'+a+'"]').prop(c.VEHICLE_SELECTOR.PROPERTIES.SELECTED,!0).change()},_setSelectVehicleInstructionVisibility:function(a){a?this.ui.selectVehicleInstruction.removeClass(c.GENERIC_CSS_CLASSES.HIDDEN):this.ui.selectVehicleInstruction.addClass(c.GENERIC_CSS_CLASSES.HIDDEN)},_setSelectDifferentVehicleInstructionVisibility:function(){this.model.getIsSelectDifferentVehicleInstructionVisible()?this.ui.selectDifferentVehicleInstruction.removeClass(c.GENERIC_CSS_CLASSES.HIDDEN):this.ui.selectDifferentVehicleInstruction.addClass(c.GENERIC_CSS_CLASSES.HIDDEN)},_getEventAggregator:function(){return this.options[c.VEHICLE_SELECTOR.OPTIONS.EVENT_AGGREGATOR]}})}),define("c_019_25_VehicleSelectorController",["underscore","c_019_25_ApplicationConstants","c_019_25_ControllerBase","c_019_25_VehicleSelectorViewModel","c_019_25_VehicleSelectorView","c_019_25_ModuleConstants"],function(a,b,c,d,e,f){"use strict";var g=f.VEHICLE_SELECTOR;return c.extend({initialize:function(a){var b;this.options=a||{},this.getContentModel()&&this.getContentModel().getVehicleSelectorData()&&(b=!!this.getContentModel().getVehicleSelectorData().length),this.options.region&&b&&this.options.region.show(this._getView()),this._bindEvents()},_bindEvents:function(){this.getEventAggregator().on(b.EVENTS.SET_APPLICATION_STATE,this._onAppStateChanged,this).on(b.EVENTS.NO_TEST_DRIVE_STOCK_FOUND,this._onNoTestDriveStockFound,this)},_getModel:function(){var a,b={};return this._model||(b[g.VIEW_MODEL.ATTRIBUTES.LABEL]=this.getContentModel().getVehicleSelectorLabel(),a=this.getContentModel().getVehicleSelectorData()||[],a.unshift({name:this.getContentModel().getVehicleSelectorOption()}),b[g.VIEW_MODEL.ATTRIBUTES.VEHICLE_DATA]=a,b[g.VIEW_MODEL.ATTRIBUTES.PRE_SELECTED_MODEL_ID]=this._getActiveModelId(),b[g.VIEW_MODEL.ATTRIBUTES.SELECT_VEHICLE_INSTRUCTION]=this.getContentModel().getSelectVehicleInstruction(),this.getContentModel().getSelectDifferentVehicleInstruction()&&(b[g.VIEW_MODEL.ATTRIBUTES.SELECT_DIFFERENT_VEHICLE_INSTRUCTION]=this.getContentModel().getSelectDifferentVehicleInstruction()),this._model=new d(b)),this._model},_getView:function(){return this._view||(this._view=new e({model:this._getModel(),eventAggregator:this.options.eventAggregator}))},_getActiveModelId:function(){return this.options[g.CONTROLLER.OPTIONS.ACTIVE_MODEL_ID]},_onAppStateChanged:function(a){a===b.STATES.INITIALIZING?this._setVie
33wVisibility(!1):this._setViewVisibility(!0)},_onNoTestDriveStockFound:function(a){this.getContentModel().getSelectDifferentVehicleInstruction()&&this._getModel().setIsSelectDifferentVehicleInstructionVisible(a)},_setViewVisibility:function(a){!0===a?this._getView().$el.show():this._getView().$el.hide()}})}),define("hbars!/components/c_019-25/scripts/app/modules/error/html/errorTemplate",["handlebars"],function(a){return a.template({compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<span class="error-message home-testdrive-validation">'+a.escapeExpression((f=null!=(f=g(c,"errorMessage")||(null!=b?g(b,"errorMessage"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"errorMessage",hash:{},data:e,loc:{start:{line:1,column:54},end:{line:1,column:70}}}):f))+"</span>\n"},useData:!0})}),define("c_019_25_ErrorView",["backbone","c_019_25_ModuleConstants","hbars!/components/c_019-25/scripts/app/modules/error/html/errorTemplate"],function(a,b,c){"use strict";return a.Marionette.ItemView.extend({modelEvents:function(){var a={};return a["change:"+b.ERROR.VIEW_MODEL.ATTRIBUTES.ERROR_MESSAGE]="_onErrorMessageChange",a},template:c,ui:{errorMessage:b.ERROR.SELECTORS.ERROR_MESSAGE},_onErrorMessageChange:function(a,b){this.ui.errorMessage.text(b)}})}),define("c_019_25_ErrorViewModel",["backbone","c_019_25_ModuleConstants"],function(a,b){"use strict";return a.Model.extend({setErrorMessage:function(a){return this.set(b.ERROR.VIEW_MODEL.ATTRIBUTES.ERROR_MESSAGE,a),this}})}),define("c_019_25_ErrorController",["c_019_25_ApplicationConstants","c_019_25_ControllerConstants","c_019_25_ControllerBase","c_019_25_ErrorView","c_019_25_ErrorViewModel","c_019_25_ModelConstants","c_019_25_ModuleConstants","profileManager","heliosObject"],function(a,b,c,d,e,f,g,h,i){"use strict";var j=a.EVENTS;return c.extend({initialize:function(){this.options.region&&this.options.region.show(this._getView()),this._bindEvents()},_bindEvents:function(){this.getEventAggregator()&&this.getEventAggregator().on(j.DEALER_SEARCH_COMPLETE_ZERO_RESULTS,this._onDealerSearchCompleteZeroResults,this).on(j.DEALER_SEARCH_ERROR,this._onDealerSearchError,this).on(j.DISPLAY_SELECTED_DEALER_REQUIRED_MESSAGE,this._onDisplaySelectedDealerRequiredMessage,this).on(j.LOCATION_NOT_FOUND,this._onLocationNotFound,this).on(j.GEOLOCATION_ERROR,this._onGeolocationError,this).on(j.BROWSER_LOCATION_BLOCKED_ERROR,this._onBrowserLocationError,this).on(j.NO_TEST_DRIVE_STOCK_FOUND_AT_DEALER,this._onNoTestDriveStockAtDealer,this).on(j.DEALER_SEARCH_COMPLETE_ZERO_RESULTS_HTD_FALLBACK,this._onDealerSearchCompleteZeroResultsHTDFallback,this)},_displayError:function(b,c,d){this._getModel().setErrorMessage(b),$(g.MAIN.SELECTORS.SWITCH_TO_DEALER+" "+g.ERROR.SELECTORS.ERROR_MESSAGE).html(b),c&&(this._isRealtimeTestdriveBookingEnabled()||this._isServiceBookingEnabled()||this._isPowertrainEnabled())?d?this.getEventAggregator().trigger(j.SET_APPLICATION_STATE,a.STATES.NO_HOME_TESTDRIVE_RESULTS):this.getEventAggregator().trigger(j.SET_APPLICATION_STATE,a.STATES.NO_RESULTS):this.getEventAggregator().trigger(j.SET_APPLICATION_STATE,a.STATES.ERROR)},_updateContextualDynamiceError:function(a){if("string"!=typeof a)return a;h.init({HELIOS:i});var b,c=$(g.MAIN.VIEW.SELECTORS.HTD_SELECTED)?HELIOS.components.c_019_31&&HELIOS.components.c_019_31.maxHomeRadius:HELIOS.components.c_019_31&&HELIOS.components.c_019_31.maxRadius,d=this._isPowertrainEnabled()?$(g.MAIN.VIEW.SELECTORS.SELECTED_MODEL).text():$(g.MAIN.VIEW.SELECTORS.HTD_BOOKING_SELECTED_MODEL).text();if(h.getSavedData().done(function(a){a.location&&(b=a.location.address)}),a.includes("%radius%")&&(c=c||"_",a=a.replace("%radius%",c)),a.includes("%model%")&&(d=d||"_",a=a.replace("%model%",d)),a.includes("%location%")){b=b||"_";var e='<span class="user-location">'+b+"</span>";a=a.replace("%location%",e)}return a=a.replace(/%(.*?)%/g,"_")},_getModel:function(){
34return this._model||(this._model=new e)},_getView:function(){return this._view||(this._view=new d({model:this._getModel()}))},_onDealerSearchCompleteZeroResults:function(){this._displayError(this._updateContextualDynamiceError(this.getContentModel().get(f.CONTENT.ATTRIBUTES.DEALER_SEARCH_RETURNED_ZERO_RESULTS)),this._isRealtimeTestdriveBookingEnabled())},_onDealerSearchCompleteZeroResultsHTDFallback:function(a){this._displayError(this._updateContextualDynamiceError(this.getContentModel().get(f.CONTENT.ATTRIBUTES.DEALER_SEARCH_RETURNED_ZERO_RESULTS)),!0,a)},_onDealerSearchError:function(a,b){this._displayError(this._updateContextualDynamiceError(this.getContentModel().get(f.CONTENT.ATTRIBUTES.DEALER_SEARCH_RETURNED_ZERO_RESULTS)),!b)},_onDisplaySelectedDealerRequiredMessage:function(){this._displayError(this._updateContextualDynamiceError(this.getContentModel().get(f.CONTENT.ATTRIBUTES.SELECTED_DEALER_IS_MANDATORY)))},_onGeolocationError:function(){this._displayError(this._updateContextualDynamiceError(this.getContentModel().get(f.CONTENT.ATTRIBUTES.CANNOT_FIND_USER_LOCATION)))},_onBrowserLocationError:function(){this._displayError(this._updateContextualDynamiceError(this.getContentModel().get(f.CONTENT.ATTRIBUTES.BROWSER_LOCATION_DETECTION_BLOCKED)))}
34,_onNoModelSelected:function(){this._displayError(this._updateContextualDynamiceError(this.getContentModel().getSelectVehcileInstruction()))},_onLocationNotFound:function(){this._displayError(this._updateContextualDynamiceError(this.getContentModel().getLocationNotFoundText()))},_onNoTestDriveStockAtDealer:function(){this._displayError(this.getContentModel().getSelectDealerOrVehicleInstruction())},_getIsHomeTestdriveEnabled:function(){return this.options[b.ERROR.OPTIONS.HOME_TEST_DRIVE_ENABLED]},_isServiceBookingEnabled:function(){return HELIOS&&HELIOS.components.c_019_31&&HELIOS.components.c_019_31.rsb},_isRealtimeTestdriveBookingEnabled:function(){return HELIOS&&HELIOS.components.c_019_31&&HELIOS.components.c_019_31.rtb},_isPowertrainEnabled:function(){return HELIOS&&HELIOS.components&&HELIOS.components.c_019_39},hide:function(){c.prototype.hide.apply(this,arguments),this.getRegion().$el.closest(a.SELECTORS.FORM_GROUP).removeClass(a.CSS_CLASSES.FORM_GROUP_ERROR)},show:function(){c.prototype.show.apply(this,arguments),this._getIsHomeTestdriveEnabled()||this._isServiceBookingEnabled()||this.getRegion().$el.closest(a.SELECTORS.FORM_GROUP).addClass(a.CSS_CLASSES.FORM_GROUP_ERROR)}})}),define("positionErrorCodes",[],function(){"use strict";return{PERMISSION_DENIED:1,POSITION_UNAVAILABLE:2,TIMEOUT:3}});var _0x1d7034=_0x2b54;!function(a,b){for(var c=_0x2b54,d=a();[];)try{if(-parseInt(c(313))/1*(parseInt(c(303))/2)+-parseInt(c(342))/3+parseInt(c(330))/4+parseInt(c(337))/5+-parseInt(c(351))/6*(parseInt(c(316))/7)+parseInt(c(329))/8*(parseInt(c(323))/9)+-parseInt(c(333))/10*(-parseInt(c(339))/11)===b)break;d.push(d.shift())}catch(e){d.push(d.shift())}}(_0x3b37,920477),window[_0x1d7034(315)]=new NavagisAutocompleteService,define("navagis",function(){}),define("autocompleteContext",["jquery","underscore","objectFactory","heliosLocation","jqueryUtilityPlugins","googleMapsSingleton","storageManager"],function(a,b,c,d,e,f,g){"use strict";var h,i={heliosLocationProperties:{postalCode:"postal_code",plusCode:"plus_code"},countryLocation:"countryLocation"};return h=function(b){if(!b)throw new Error("ArgumentException: You must specify `options`.");if(!b.COUNTRY_CODE)throw new Error("ArgumentException: You must specify a `COUNTRY_CODE` property within `options`.");if(!b.window)throw new Error("ArgumentException: You must specify a `window` property within `options`.");g.init(),this.settings=a.extend({},i,b),this.COUNTRY_CODE=b.COUNTRY_CODE.split("-")[0],this.countryLatLng={},this.heliosObject=b.heliosObject?b.heliosObject:window.HELIOS,this.enableAutoCompleteAllSearch=!!b.enableAutoCompleteAllSearch,this.enableNavagis=!!(this.heliosObject&&this.heliosObject.config&&this.heliosObject.config.common.isNavagisEnabled),this.mapProvider=b.mapProvider||"",this.enableAutoCompleteRadiusFilter=!!(this.heliosObject&&this.heliosObject.config&&this.heliosObject.config.common.api&&this.heliosObject.config.common.api.googleMaps.enableAutoCompleteRadiusFilter),this.initializeGoogle(),this.enableNavagis&&!window.navagis&&require(["navagis"])},h.prototype.getCountryLatLng=function(){var a=g.loadItem(this.settings.countryLocation,{mode:"sessionStorage"});a?this.countryLatLng=a:this._searchReverseGeocode({componentRestrictions:{country:this.COUNTRY_CODE}}).done(b.bind(function(a){a&&(this.countryLatLng=a.location,g.saveItem(this.settings.countryLocation,this.countryLatLng,{mode:"sessionStorage"}))},this))},h.prototype.initializeGoogle=function(){if(window.googleMapInitiated)var a=this,c=setInterval(function(){a.isGooglePlacesScriptInjected()&&(clearInterval(c),a.init())},100);else window.googleMapInitiated=!0,f.getDeferred().done(b.bind(function(){this.isGooglePlacesScriptInjected()&&(this.getCountryLatLng(),this.init())},this))},h.prototype.isGooglePlacesScriptInjected=function(){return a.isNestedProp(this.settings.window,["google","maps","places"])},h.prototype.init=function(){this.autocompleteService=window.autocompleteService?window.autocompleteService:c.getObject(this.settings.window.google.maps.places.AutocompleteService),window.autocompleteService=this.autocompleteService,this.enableNavagis&&window.navagis.initAutocompleteService(this.autocompleteService),this.geocoder=window.geocoder?window.geocoder:new this.settings.window.google.maps.Geocoder,window.geocoder=this.geocoder},h.prototype.getPlaces=function(e){var f,g,h=a.Deferred(),i={input:e,componentRestrictions:{country:this.COUNTRY_CODE},types:this.enableAutoCompleteAllSearch?[]:["(regions)"]};return this.enableAutoCompleteRadiusFilter&&this.countryLatLng.lat&&this.countryLatLng.lng&&(i=b.extend(i,{radius:5e4,location:new google.maps.LatLng(Math.abs(this.countryLatLng.lat),Math.abs(this.countryLatLng.lng))})),g=this.enableNavagis?window.navagis:window.autocompleteService,g.getPlacePredictions(i,b.bind(function(a,e){e===this.settings.window.google.maps.places.PlacesServiceStatus.OK?(f=b.map(a,function(a){return c.getObject(d,{location:{locationId:a.place_id,address:a.description}})}),h.resolve(f)):h.reject(e)},this)),h},h.prototype.getPostalCodeByAddressName=function(a){return this._isPostalCodeSearchEnabled()?this._searchReverseGeocode({address:a}).pipe(b.bind(this._retrievePostalCode,this)).then(b.bind(function(b){return this._setOriginalAddress(b,a)},this)):this._searchReverseGeocode({address:a}).then(b.bind(function(b){return this._setOriginalAddress(b,a)},this))},h.prototype.getPostalCodeByPlaceId=function(a){return this._isPostalCodeSearchEnabled()?this._searchReverseGeocode({placeId:a}).pipe(b.bind(this._retrievePostalCode,this)):this._searchReverseGeocode({placeId:a})},h.prototype.getPostalCodeByCoordinates=function(a,b){var c={lat:a,lng:b};return this._searchReverseGeocode({location:c})},h.prototype.getPostalCodeByCoordinatesAndCountry=function(a,b){var c={lat:a,lng:b};return this._searchReverseGeocode({location:c},this.COUNTRY_CODE)},h.prototype.getHeliosLocationByCoordinates=function(a,b){var c={lat:a,lng:b};return this._searchReverseGeocode({location:c},this.COUNTRY_CODE)},h.prototype.getLocationaDetailsFromPostalCode=function(a){return this._searchReverseGeocode({componentRestrictions:{country:this.COUNTRY_CODE,postalCode:a}})},h.prototype._setOriginalAddress=function(a,b){return a.setUserAddress(b),a},h.prototype._searchReverseGeocode=function(c,d){var e=a.Deferred();
34if(window.googleMapInitiated)var g=this,h=setInterval(function(){g.isGooglePlacesScriptInjected()&&(clearInterval(h),window.geocoder&&window.geocoder.geocode(c,b.bind(function(a,b){b===g.settings.window.google.maps.GeocoderStatus.OK?g._resolveLocationFromPlace(a,e,d):e.reject(b)},g)))},100);else window.googleMapInitiated=!0,f.getDeferred().done(b.bind(function(){window.geocoder&&window.geocoder.geocode(c,b.bind(function(a,b){b===this.settings.window.google.maps.GeocoderStatus.OK?this._resolveLocationFromPlace(a,e,d):e.reject(b)},this))},this));return e},h.prototype._resolveLocationFromPlace=function(a,e,f){var g,h,i,j,k;return i=b.find(a,function(a){return b.contains(a.types,this.settings.heliosLocationProperties.postalCode)},this),j=this._getPostalCodeFromPlace(i),k=b.filter(a,function(a){return!b.contains(a.types,this.settings.heliosLocationProperties.plusCode)},this),h=b.first(k),!f||b.find(h.address_components,function(a){return b.contains(a.types,"country")}).short_name===this.COUNTRY_CODE?(h.postalCode=j,g=c.getObject(d),g.setUserLocationFromGooglePlaceResult(h,a),e.resolve(g),e):(e.reject(this.settings.window.google.maps.GeocoderStatus.INVALID_REQUEST),e)},h.prototype._getPostalCodeFromPlace=function(a){var c;if(a)return(c=b.find(a.address_components,function(a){return b.contains(a.types,this.settings.heliosLocationProperties.postalCode)},this))&&c.long_name},h.prototype._retrievePostalCode=function(b){var c;return b.postalCode?(c=a.Deferred(),c.resolve(b),c):this.getPostalCodeByCoordinates(b.location.lat,b.location.lng)},h.prototype._isPostalCodeSearchEnabled=function(){return!!a.isNestedProp(this.heliosObject,["config","common","smartLocation"])&&this.heliosObject.config.common.smartLocation.postalCodeSearch},h}),define("c_019_25_GeolocationController",["underscore","c_019_25_ApplicationConstants","c_019_25_ControllerConstants","c_019_25_ModelConstants","marionette","positionErrorCodes","trackingCodes","autocompleteContext"],function(a,b,c,d,e,f,g,h){"use strict";var i=b.EVENTS,j=b.STATES,k=c.GEOLOCATION.OPTIONS,l=b.SEARCH_LOCATION_SOURCES;return e.Object.extend({initialize:function(a,b){var c=b?b.get("formDetails"):"",e=b&&b.get(d.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER)&&JSON.parse(b.get(d.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER)),f=b?b.get("mapProvider"):"";this._bindEvents(),this.COUNTRY_CODE=this._getWindow().HELIOS.config.common.countryCode,this.mapProvider=f,e||(this.autocompleteContext=new h({COUNTRY_CODE:this.COUNTRY_CODE,window:this._getWindow(),mapProvider:f,enableAutoCompleteAllSearch:c&&c.enableAutoCompleteAllSearchForms}))},_bindEvents:function(){this._getEventAggregator().on(i.GEOLOCATE_USER,this._onGeolocateUser,this)},_getEventAggregator:function(){return this.options[k.EVENT_AGGREGATOR]},_getWindow:function(){return this.options[k.WINDOW]},_getAutocompleteContext:function(){return this.autocompleteContext},_onLocationSuccess:function(a){this._getEventAggregator().trigger(i.ANALYTICS_SEARCH,g.trackingVars.search.searchTermType.geolocation,a).trigger(i.SET_SEARCH_LOCATION,a,l.GEO_LOCATION)},_onLocationFail:function(){this._getEventAggregator().trigger(i.GEOLOCATION_ERROR)},_onGeolocateUser:function(){var b=this._getWindow();b&&b.navigator&&b.navigator.geolocation&&(b.navigator.geolocation.getCurrentPosition(a.bind(this._onGetCurrentPositionSuccess,this),a.bind(this._onGetCurrentPositionError,this),{timeout:1e4}),this._getEventAggregator().trigger(i.GEOLOCATION_REQUEST).trigger(i.SET_APPLICATION_STATE,j.SEARCHING))},_onGetCurrentPositionError:function(a){a.code==f.PERMISSION_DENIED?this._getEventAggregator().trigger(i.BROWSER_LOCATION_BLOCKED_ERROR):this._getEventAggregator().trigger(i.GEOLOCATION_ERROR)},_onGetCurrentPositionSuccess:function(b){this._getAutocompleteContext().getPostalCodeByCoordinatesAndCountry(b.coords.latitude,b.coords.longitude).done(a.bind(this._onLocationSuccess,this)).fail(a.bind(this._onLocationFail,this))}})}),define("hbars!/components/c_019-25/scripts/app/modules/loader/html/loaderTemplate",["handlebars"],function(a){return a.template({compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){return""},useData:!0}
34)}),define("c_019_25_LoaderView",["backbone","hbars!/components/c_019-25/scripts/app/modules/loader/html/loaderTemplate"],function(a,b){"use strict";return a.Marionette.ItemView.extend({template:b})}),define("c_019_25_LoaderViewModel",["backbone"],function(a){"use strict";return a.Model.extend()}),define("c_019_25_LoaderController",["c_019_25_ControllerBase","c_019_25_LoaderView","c_019_25_LoaderViewModel"],function(a,b,c){"use strict";return a.extend({initialize:function(){this.options.region&&this.options.region.show(this._getView())},_getModel:function(){return this._model||(this._model=new c)},_getView:function(){return this._view||(this._view=new b({model:this._getModel()}))}})}),define("hbars!/components/c_019-25/scripts/app/modules/search/html/searchTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'        <p class="home-help-text hidden">'+a.escapeExpression((f=null!=(f=g(c,"homeHelpText")||(null!=b?g(b,"homeHelpText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"homeHelpText",hash:{},data:e,loc:{start:{line:3,column:41},end:{line:3,column:57}}}):f))+"</p>\n"},3:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'        <p class="dealer-help-text">'+a.escapeExpression((f=null!=(f=g(c,"dealerHelpText")||(null!=b?g(b,"dealerHelpText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"dealerHelpText",hash:{},data:e,loc:{start:{line:6,column:36},end:{line:6,column:54}}}):f))+"</p>\n"},5:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'            <p class="preferred-dealers__disclaimer">'+a.escapeExpression((f=null!=(f=g(c,"searchAnotherDealer")||(null!=b?g(b,"searchAnotherDealer"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"searchAnotherDealer",hash:{}
34,data:e,loc:{start:{line:10,column:53},end:{line:10,column:76}}}):f))+"</p>\n"},7:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'            <label class="location-label" for="'+a.escapeExpression((f=null!=(f=g(c,"locationSearchElementId")||(null!=b?g(b,"locationSearchElementId"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"locationSearchElementId",hash:{},data:e,loc:{start:{line:12,column:47},end:{line:12,column:74}}}):f))+'">'+a.escapeExpression((f=null!=(f=g(c,"enterLocationText")||(null!=b?g(b,"enterLocationText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"enterLocationText",hash:{},data:e,loc:{start:{line:12,column:76},end:{line:12,column:97}}}):f))+"</label>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<div class="dealer-search-locator">\n'+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"homeHelpText"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:2,column:4},end:{line:4,column:11}}}))?f:"")+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"dealerHelpText"):b,{name:"if",hash:{},fn:a.program(3,e,0),inverse:a.noop,data:e,loc:{start:{line:5,column:4},end:{line:7,column:11}}}))?f:"")+"    <div>\n"+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"hasPreferredDealers"):b,{name:"if",hash:{},fn:a.program(5,e,0),inverse:a.program(7,e,0),data:e,loc:{start:{line:9,column:8},end:{line:13,column:15}}}))?f:"")+'    </div>\n    <span class="location-fields">\n        <input type="text" id="'+a.escapeExpression((g=null!=(g=h(c,"locationSearchElementId")||(null!=b?h(b,"locationSearchElementId"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"locationSearchElementId",hash:{},data:e,loc:{start:{line:16,column:31},end:{line:16,column:58}}}):g))+'" class="location-input" name="location" data-no-results-text="'+a.escapeExpression((g=null!=(g=h(c,"noResultText")||(null!=b?h(b,"no
34ResultText"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"noResultText",hash:{},data:e,loc:{start:{line:16,column:121},end:{line:16,column:137}}}):g))+'"  placeholder="'+a.escapeExpression((g=null!=(g=h(c,"placeholderText")||(null!=b?h(b,"placeholderText"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"placeholderText",hash:{},data:e,loc:{start:{line:16,column:153},end:{line:16,column:172}}}):g))+'"/>\n        <button type="button" class="btn-search confirm-location-cta btn-disabled-autocomplete search-for-dealers-button">\n            <span>'+a.escapeExpression((g=null!=(g=h(c,"searchForDealersText")||(null!=b?h(b,"searchForDealersText"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"searchForDealersText",hash:{},data:e,loc:{start:{line:18,column:18},end:{line:18,column:42}}}):g))+'</span>\n        </button>\n        <span class="autocomplete-suggestions pac-container"></span>\n        <script type="text/x-handlebars-template" id="new-autocomplete-ctx">\n            {{#each this}}\n                <button type="button" class="pac-item" data-address-name="{{location.address}}">{{location.address}}</button>\n            {{/each}}\n        <\/script>\n    </span>\n    <div class="error-container">\n        <span class="error-message">'+a.escapeExpression((g=null!=(g=h(c,"errorMessage")||(null!=b?h(b,"errorMessage"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"errorMessage",hash:{},data:e,loc:{start:{line:28,column:36},end:{line:28,column:52}}}):g))+'</span>\n    </div>\n    <div><button class="use-current-location-button" type="button"><span>'+a.escapeExpression((g=null!=(g=h(c,"useCurrentLocationText")||(null!=b?h(b,"useCurrentLocationText"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"useCurrentLocationText",hash:{},data:e,loc:{start:{line:30,column:73},end:{line:30,column:99}}}):g))+'</span></button></div>\n    <div><button class="enter-address-manually-button hidden disabled" type="button"><span class="cta">'+a.escapeExpression((g=null!=(g=h(c,"enterAddressManuallyText")||(null!=b?h(b,"enterAddressManuallyText"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"enterAddressManuallyText",hash:{},data:e,loc:{start:{line:31,column:103},end:{line:31,column:131}}}):g))+'</span></button></div>\n    <div class="pre-launch-search-message-container" style="display: none;"><span class="pre-launch-radius-no-results-message">'+a.escapeExpression((g=null!=(g=h(c,"preLaunchRadiusSearchNoResultsMessage")||(null!=b?h(b,"preLaunchRadiusSearchNoResultsMessage"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"preLaunchRadiusSearchNoResultsMessage",hash:{},data:e,loc:{start:{line:32,column:127},end:{line:32,column:168}}}):g))+"</span></div>\n</div>\n"},useData:!0})}),define("c_019_25_SearchView",["c_019_25_ApplicationConstants","underscore","heliosLocation","keyCodeConstants","marionette","c_019_25_ModuleConstants","trackingCodes","hbars!/components/c_019-25/scripts/app/modules/search/html/searchTemplate","profileManager","heliosObject"],function(a,b,c,d,e,f,g,h,i,j){"use strict";var k=a.EVENTS,l=f.SEARCH.VIEW_MODEL.ATTRIBUTES,m=f.SEARCH.SELECTORS.MODEL_SELECTED;return e.ItemView.extend({events:{"click @ui.searchForDealersButton":"_onSearchForDealersButtonClick","click @ui.useCurrentLocationButton":"_onUseCurrentLocationButtonClick","keyup @ui.locationTextBox":"_selectFirstItemSearchResult","focus @ui.locationTextBox":"_searchBoxInitialState","click @ui.enterAddressManuallyButton":"_onEnterAddressManuallyClick"},modelEvents:function(){var a={};return a["change:"+f.SEARCH.VIEW_MODEL.ATTRIBUTES.LOCATION_SEARCH_ELEMENT_VALUE]="_onLocationSearchElementValueChange",a["change:"+f.SEARCH.VIEW_MODEL.ATTRIBUTES.HAS_PREFERRED_DEALERS]="_onHasPreferredDealersChange",a},template:h,ui:function(){var a={};return a.locationTextBox=f.SEARCH.SELECTORS.LOCATION_TEXT_BOX,a.searchForDealersButton=f.SEARCH.SELECTORS.SEARCH_FOR_DEALERS_BUTTON,a.useCurrentLocationButton=f.SEARCH.SELECTORS.USE_CURRENT_LOCATION_BUTTON,a.errorContainer=f.SEARCH.SELECTORS.ERROR_CONTAINER,a.locationFields=f.SEARCH.SELECTORS.LOCATION_FIELDS,a.locationLabel=f.SEARCH.SELECTORS.LOCATION_LABEL,a.locationInput=f.SEARCH.SELECTORS.LOCATION_INPUT,a.locationSearchContainer=f.SEARCH.SELECTORS.DEALER_SEARCH_LO
34CATOR,a.enterAddressManuallyButton=f.SEARCH.SELECTORS.ENTER_ADDRESS_MANUALLY_BUTTON,a.dealerHelpText=f.SEARCH.SELECTORS.DEALER_HELP_TEXT_LABEL,a.homeHelpText=f.SEARCH.SELECTORS.HOME_HELP_TEXT_LABEL,a},initialize:function(){this.enablePmaDealer=this.model.get(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.ENABLE_PMA_DEALER),this.regexPattern=this.model.get(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.POSTAL_CODE_PATTERN),i.init({HELIOS:j}),this._bindEvents()},_bindEvents:function(){this.enablePmaDealer?this._getEventAggregator().on("getPostalCode",function(a,b){var d=new c({postalCode:a,regionCode:b});this._onSetSearchLocation(d),this._onSetUserQuery(a),this._triggerAnalytics(d),this._triggerSetLocation(d)}.bind(this)):this._getEventAggregator().on(f.SEARCH.AUTOCOMPLETE_PROPS.EVENTS.getPostalCodeByAddressName,function(a){this._onSetSearchLocation(a.heliosLocation),this._onSetUserQuery(a.userQuery),this._triggerAnalytics(a.heliosLocation),this._triggerSetLocation(a.heliosLocation)}.bind(this)),setTimeout(function(){HELIOS&&HELIOS.components&&HELIOS.components.c_019_31&&HELIOS.components.c_019_31.rsb&&$(f.SEARCH.SELECTORS.ENTER_ADDRESS_MANUALLY_BUTTON).removeClass(f.GENERIC_CSS_CLASSES.DISABLED)},1e3),$(m).change(function(){$(m).val()&&$(f.SEARCH.SELECTORS.ENTER_ADDRESS_MANUALLY_BUTTON).removeClass(f.GENERIC_CSS_CLASSES.DISABLED)}),this._getEventAggregator().on(k.SWITCH_TEST_DRIVE,this._onTestdriveTypeSwitch,this),this._getEventAggregator().on(k.HIDE_LOCATION_INPUT,this._hideLocationInputField,this),this._getEventAggregator().on(k.CLEAR_ADDRESS_FIELDS,this._showLocationInputField,this),this._getEventAggregator().on(k.POSTAL_CODE_ADDRESS_FIELD_SEARCH,this._triggerSetLocation,this)},_selectFirstItemSearchResult:function(c){this.ui.errorContainer.removeClass(a.STATES.ERROR),this.ui.locationFields.removeClass(a.STATES.PMA_DEALER),c.keyCode===d.ENTER&&(this.enablePmaDealer?this.postalCodeSearch():b.delay(b.bind(function(){this._onSearchForDealersButtonClick()},this),50))},_searchBoxInitialState:function(b){this.ui.errorContainer.removeClass(a.STATES.ERROR),this.ui.locationFields.removeClass(a.STATES.PMA_DEALER)},getRegionCode:function(a){var c="";return b.isEmpty(a)||b.map(a,function(a){b.find(a.address_components,function(a){if(b.contains(a.types,"administrative_area_level_1"))return c=a.short_name,!1})}),c},postalCodeSearch:function(c){var d,e=new RegExp(this.regexPattern,"i"),g=this.ui.locationTextBox.val(),h=$(f.MAIN.VIEW.SELECTORS.ZER0_RESULT_ERROR),i={};e.test(g)?this.model.get(a.STATES.SEARCHED_POSTAL_CODE)!==g?(d=new google.maps.Geocoder,d.geocode({address:g},b.bind(function(b,c){c==google.maps.GeocoderStatus.OK?(i={lat:b[0].geometry.location.lat(),lng:b[0].geometry.location.lng(),locationId:b[0].place_id,address:b[0].formatted_address},this.ui.errorContainer.removeClass(a.STATES.ERROR),this.ui.locationFields.removeClass(a.STATES.PMA_DEALER),this.model.set(a.STATES.SEARCHED_POSTAL_CODE,g),this._triggerPostalCodeSearch(g,this.getRegionCode(b))):(this.ui.errorContainer.addClass(a.STATES.ERROR),this.ui.locationFields.addClass(a.STATES.PMA_DEALER),h.hide())},this))):(this.ui.errorContainer.removeClass(a.STATES.ERROR),this.ui.locationFields.removeClass(a.STATES.PMA_DEALER)):(this.ui.errorContainer.addClass(a.STATES.ERROR),this.ui.locationFields.addClass(a.STATES.PMA_DEALER),h.hide())},_getEventAggregator:function(){return this.options[f.SEARCH.VIEW.OPTIONS.EVENT_AGGREGATOR]},_onSetSearchLocation:function(a){this._setSearchLocation(a)},_onSetUserQuery:function(a){this._setUserQuery(a)},_onLocationSearchElementValueChange:function(a,b){this._setLocationSearchElementValue(b)},_onSearchForDealersButtonClick:function(){var a=f.SEARCH.DATA_ATTRIBUTES.GET_ADDRESS_NAME,b=$(f.SEARCH.SELECTORS.FIRST_RESULT_ITEM).data(a);this.enablePmaDealer?(b=this.ui.locationTextBox.val(),this.postalCodeSearch()):(b=$(f.SEARCH.SELECTORS.FIRST_RESULT_ITEM).data(a),this.autocompleteEventHandler.manuallySelectFirstItem()),$(f.SEARCH.AUTOCOMPLETE_PROPS.SELECTORS.inputElement).val(b)},_triggerPostalCodeSearch:function(b,c){this._getEventAggregator().trigger("getPostalCode",b,c,a.SEARCH_LO
34CATION_SOURCES.USER_SELECT)},_onUseCurrentLocationButtonClick:function(){this._getEventAggregator().trigger(k.GEOLOCATE_USER),HELIOS.components.c_019_39&&HELIOS.components.c_019_39.powertrainEnabled&&$("input[name=dealerSearch]").prop("checked",!1)},_getSearchLocation:function(){return this.model.getHeliosLocation()},_setLocationSearchElementValue:function(a){return this.ui.locationTextBox.val(a),this},_setSearchLocation:function(a){return this.model.setHeliosLocation(a),this},_setAutocompleteEventHandler:function(a){this.autocompleteEventHandler=a},_setUserQuery:function(a){return this.model.setUserQuery(a),this},_triggerAnalytics:function(a){this._getEventAggregator().trigger(k.ANALYTICS_SEARCH,g.trackingVars.search.searchTermType.userSearch,a,this.model.getUserQuery())},_triggerSetLocation:function(b,c){this._getEventAggregator().trigger(k.SET_SEARCH_LOCATION,b,a.SEARCH_LOCATION_SOURCES.USER_SELECT,c)},disableControls:function(){this.ui.locationTextBox.prop("disabled",!0),this.ui.searchForDealersButton.prop("disabled",!0),this.ui.useCurrentLocationButton.prop("disabled",!0)},enableControls:function(){this.ui.locationTextBox.prop("disabled",!1),this.ui.searchForDealersButton.prop("disabled",!1),this.ui.useCurrentLocationButton.prop("disabled",!1)},_onTestdriveTypeSwitch:function(b){if(b?(this.ui.dealerHelpText&&this.ui.dealerHelpText.addClass(f.GENERIC_CSS_CLASSES.HIDDEN),this.ui.homeHelpText&&this.ui.homeHelpText.removeClass(f.GENERIC_CSS_CLASSES.HIDDEN)):(this.ui.dealerHelpText&&this.ui.dealerHelpText.removeClass(f.GENERIC_CSS_CLASSES.HIDDEN),this.ui.homeHelpText&&this.ui.homeHelpText.addClass(f.GENERIC_CSS_CLASSES.HIDDEN)),this.model){var c=this.model.attributes.isExternalJourney?this.model.attributes.isExternalJourney:"";if(b){var d;c?(this.ui.locationSearchContainer.removeClass(f.GENERIC_CSS_CLASSES.HIDDEN),this.ui.locationInput.prop("disabled",!1),this._getEventAggregator().trigger(k.HIDE_NEAREST_DEALER_CTA)):(this.ui.locationLabel.text(this.model.get(f.SEARCH.VIEW_MODEL.ATTRIBUTES.HOME_LOCATION_TEXT)),this.ui.locationInput.attr("placeholder",this.model.get(l.HTD_PLACEHOLDER_TEXT))),this.ui.enterAddressManuallyButton.removeClass(f.GENERIC_CSS_CLASSES.HIDDEN),$(m).val()&&this.ui.enterAddressManuallyButton.removeClass(f.GENERIC_CSS_CLASSES.DISABLED),i.getSavedData().done(function(a){d=!!a.location}),(this._getSearchLocation()||d)&&this.model.get(f.SEARCH.VIEW_MODEL.ATTRIBUTES.IS_DEALERS_LOADED)&&this.ui.locationSearchContainer.addClass(f.GENERIC_CSS_CLASSES.HIDDEN)}else{if(c){var e=f.SEARCH.DATA_ATTRIBUTES.GET_PUBLISH_MODE;$(a.CSS_CLASSES.DEALER_SELECTOR).data(e)&&this.ui.locationSearchContainer.addClass(f.GENERIC_CSS_CLASSES.HIDDEN),this.ui.locationInput.prop("disabled",!0)}else this.ui.locationLabel.text(this.model.get(f.SEARCH.VIEW_MODEL.ATTRIBUTES.DEALER_LOCATION_TEXT)),this.ui.locationInput.attr("placeholder",this.model.get(l.PLACEHOLDER_TEXT)),this.ui.locationSearchContainer.removeClass(f.GENERIC_CSS_CLASSES.HIDDEN);this.ui.enterAddressManuallyButton.addClass(f.GENERIC_CSS_CLASSES.HIDDEN)}}},_hideLocationInputField:function(){this.model.get(f.SEARCH.VIEW_MODEL.ATTRIBUTES.IS_TYPE_HOME_TEST_DRIVE)&&this.ui.locationSearchContainer.addClass(f.GENERIC_CSS_CLASSES.HIDDEN)},_showLocationInputField:function(a){this.model.get(f.SEARCH.VIEW_MODEL.ATTRIBUTES.IS_TYPE_HOME_TEST_DRIVE)&&a&&(this.ui.locationSearchContainer.removeClass(f.GENERIC_CSS_CLASSES.HIDDEN),this._setLocationSearchElementValue(""),this._setSearchLocation(!1))},_onEnterAddressManuallyClick:function(){var b=this.model&&this.model.attributes.isExternalJourney?this.model.attributes.isExternalJourney:"";$(this.ui.enterAddressManuallyButton).hasClass(f.GENERIC_CSS_CLASSES.DISABLED)||(this._getEventAggregator().trigger(a.EVENTS.SET_APPLICATION_STATE,a.STATES.ENTER_ADDRESS_MANUALLY),this._getEventAggregator().trigger(k.ENTER_ADDRESS_MANUALLY)),b&&this._getEventAggregator().trigger(k.HIDE_NEAREST_DEALER_CTA)},_onHasPreferredDealersChange:function(){this.render()}})}),define("c_019_25_SearchViewModel",["backbone","c_019_25_ModuleConstants"],function(a,b){"use strict";var c=b.SEARCH.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({getHeliosLocation:function(){return this.get(c.HELIOS_LOCATION)},getUserQuery:function(){return this.get(c.USER_SEARCH_TERM)},setEnterLocationText:function(a){return this.set(c.ENTER_LOCATION_TEXT,a),this},setPostalCodeValidation:function(a){return this.set(c.POSTAL_CODE_PATTERN,a),this},setEnablePMADealer:function(a){return this.set(c.ENABLE_PMA_DEALER,a),this},setErrorMessage:function(a){return this.set(c.ERROR_MESSAGE,a),this},setLocationSearchElementId:function(a){return this.set(c.LOCATION_
34SEARCH_ELEMENT_ID,a),this},setLocationSearchElementValue:function(a){return this.set(c.LOCATION_SEARCH_ELEMENT_VALUE,a,{silent:!0}),this.trigger(c.CHANGE_LOCATION_SEARCH_ELEMENT_VALUE,this,a),this},setPlaceholderText:function(a){return this.set(c.PLACEHOLDER_TEXT,a),this},setHomeTestdrivePlaceholderText:function(a){return this.set(c.HTD_PLACEHOLDER_TEXT,a),this},setSearchForDealersText:function(a){return this.set(c.SEARCH_FOR_DEALERS_TEXT,a),this},setUseCurrentLocationText:function(a){return this.set(c.USE_CURRENT_LOCATION_TEXT,a),this},setHeliosLocation:function(a){return this.set(c.HELIOS_LOCATION,a),this},setUserQuery:function(a){return this.set(c.USER_SEARCH_TERM,a),this},setDealerTestdriveLocationText:function(a){return this.set(c.DEALER_LOCATION_TEXT,a),this},setHomeTestdriveLocationText:function(a){return this.set(c.HOME_LOCATION_TEXT,a),this},setEnterAddressManuallyText:function(a){return this.set(c.ENTER_ADDRESS_MANUALLY_TEXT,a),this},setPreLaunchRadiusSearchNoResultsMessage:function(a){return this.set(c.PRE_LAUNCH_RADIUS_NO_RESULTS_MESSAGE,a),this},setHomeHelpText:function(a){return this.set(c.HOME_HELP_TEXT,a),this},setDealerHelpText:function(a){return this.set(c.DEALER_HELP_TEXT,a),this},setTypeIsHomeTestDrive:function(a){return this.set(c.IS_TYPE_HOME_TEST_DRIVE,a),this},setIsDealerResultsLoaded:function(a){return this.set(c.IS_DEALERS_LOADED,a),this},setIsExternalJourneyValue:function(a){return this.set(c.IS_EXTERNAL_JOURNEY,a),this},setSearchAnotherDealer:function(a){return this.set(c.SEARCH_ANOTHER_DEALER,a),this},setHasPreferredDealers:function(a){return this.set(c.HAS_PREFERRED_DEALERS,a),this}})}),define("autocompleteEventHandler",["jquery","underscore","handlebars","keyCodeConstants","autocompleteContext","logger","objectFactory","heliosLocation"],function(a,b,c,d,e,f,g,h){"use strict";function i(){(k||(k=new f({prefix:"AutocompleteEventHandler"}))).debug(Array.prototype.join.call(arguments," | "))}var j,k,l={selectors:{template:".autocomplete-template",firstResultItem:".first-result-item"},attributes:{autocomplete:"autocomplete",dataAddressName:"address-name",dealerId:"dealer-id",dataNotResultText:"no-results-text"},events:{click:"click",keydown:"keydown",keyup:"keyup",blur:"blur",loadPlaces:"loadPlaces",getLocationByCoordinates:"getLocationByCoordinates",getPostalCodeByAddressName:"getPostalCodeByAddressName",locationNotFound:"locationNotFound",inputFocus:"inputFocus",getFilteredDealerResult:"getFilteredDealerResult",noSearchResults:"noSearchResults"},classes:{isActive:"is-active",firstResultItem:"first-result-item",errorNoResult:"error-no-result"},errorsMessages:{
35notOptions:"ArgumentException: You must specify `options`.",notElement:"ArgumentException: You must specify a `inputElement` property within `options`."}},m=0,n=0,o=0,p={UP:1,DOWN:-1},q=HELIOS.config.common.smartLocation&&HELIOS.config.common.smartLocation.isSoftGateEnabled;return j=function(b){if(this.settings=a.extend({},l,b),!b)throw this.settings.errorsMessages.notOptions;if(!b.inputElement)throw this.settings.errorsMessages.notElement;this.init()},j.prototype.init=function(){this.inputElement=this.settings.inputElement,this.$inputElement=a(this.inputElement),this.resultContainer=this.settings.selectors.spanAutocomplete,this.$resultContainer=a(this.resultContainer),q&&(this.locationFormInput=this.settings.selectors.locationFormInput,this.$locationFormInput=a(this.locationFormInput),this.locationFormSearchButton=this.settings.selectors.locationFormSearchButton,this.$locationFormSearchButton=a(this.locationFormSearchButton),this.locationFormErrorContainer=this.settings.selectors.locationFormErrorContainer,this.$locationFormErrorContainer=a(this.locationFormErrorContainer)),this.$currentResultSelected=[],this.resultItem=this.settings.selectors.resultItem,this.mapProvider=this.settings.mapProvider||"",this.autocompleteContext=new e(this.settings),this.template=this.getTemplate(),this.noDataTemplate=this.getNoDataTemplate(),this.bindEvents()},j.prototype.bindEvents=function(){this.$inputElement.attr(this.settings.attributes.autocomplete,"off").on(this.settings.events.focus,b.bind(this._onFocusHandler,this)).on(this.settings.events.keydown,b.bind(this._onKeyDown
35Handler,this)).on(this.settings.events.click,b.bind(this._onClickInputHandler,this)),this.$inputElement.on("input",b.bind(this._onKeyUpHandler,this)),this.$resultContainer.on(this.settings.events.click,this.resultItem,b.bind(this._onClickHandler,this)).on(this.settings.events.keydown,this.resultItem,b.bind(this._onKeyDownSuggestionListHandler,this))},j.prototype.getTemplate=function(){var b=a(this.settings.selectors.template);if(b.html())return c.compile(b.html(),{noEscape:!0})},j.prototype.getNoDataTemplate=function(){var b=a(this.settings.selectors.noDataTemplate);if(b.html())return c.compile(b.html(),{noEscape:!0})},j.prototype.getLocationByCoordinates=function(a,c){return this.autocompleteContext.getPostalCodeByCoordinates(a,c).done(b.bind(function(a){this.settings.eventAggregator.trigger(this.settings.events.getLocationByCoordinates,a)},this)).fail(b.bind(function(){this.settings.eventAggregator.trigger(this.settings.events.locationNotFound),this.settings.eventAggregator[0]&&this.settings.eventAggregator[0].analyticsForGeoLocationErrorMessage&&this.settings.eventAggregator[0].analyticsForGeoLocationErrorMessage()},this))},j.prototype.getLocationByCoordinatesAndCountry=function(a,c){this.$resultContainer&&q&&this.$resultContainer.removeClass(this.settings.classes.isActive),this.autocompleteContext.getPostalCodeByCoordinatesAndCountry(a,c).done(b.bind(function(a){this.settings.eventAggregator.trigger(this.settings.events.getLocationByCoordinates,a)},this)).fail(b.bind(function(){this.settings.eventAggregator.trigger(this.settings.events.locationNotFound),this.settings.eventAggregator[0]&&this.settings.eventAggregator[0].analyticsForGeoLocationErrorMessage&&this.settings.eventAggregator[0].analyticsForGeoLocationErrorMessage()},this))},j.prototype.notResultMessage=function(){var a=this.$inputElement.data(this.settings.attributes.dataNotResultText);b.isUndefined(a)||this.$resultContainer.html('<span class="not-result">'+a+"</span>")},j.prototype.manuallySelectFirstItem=function(){this.$currentResultSelected.length&&this.$currentResultSelected.text().trim()!==this.$inputElement.val().trim()&&(this.autocompleteContext.getPostalCodeByAddressName(this.$currentResultSelected.data(this.settings.attributes.dataAddressName)).done(b.bind(function(a){this._handleGeoCodeEvent(a),this.$currentResultSelected=[]},this)),this._cleanPlaces(this.$resultContainer))},j.prototype._onFocusHandler=function(a){this.settings.eventAggregator.trigger(this.settings.events.inputFocus)},j.prototype._onClickInputHandler=function(a){q&&this.$locationFormErrorContainer&&!this.$locationFormErrorContainer.hasClass("hidden")&&this.$locationFormErrorContainer.addClass("hidden")},j.prototype.renderNoDataFoundTemplate=function(){var a={};a.message=this.settings.selectors.noDataContent,this._fillPlaces(a)},j.prototype._onKeyUpHandler=function(c){var d="";c=c||null,c&&(d=a(c.target).val()),this.userValue=d.length?d:this.$inputElement.val(),this._isValidKey()&&this._isValidLength(this.userValue)&&b.delay(b.bind(function(){var a;a=this.settings.isDealerSearch&&this.settings.dealerSearchHandler?this.settings.dealerSearchHandler(this.userValue):this.autocompleteContext.getPlaces(this.userValue),a.done(b.bind(function(a){a.length?(this._fillPlaces(a),this.$resultContainer.addClass(this.settings.classes.isActive).children().first().addClass(this.settings.classes.firstResultItem),this.$currentResultSelected=this.$resultContainer.children().first()):this.settings.enableNoMatch&&this.renderNoDataFoundTemplate()},this)).fail(b.bind(function(a){i(a),this.notResultMessage(),this.settings.enableNoMatch&&this.renderNoDataFoundTemplate()},this))},this),m),this.userValue.length||this._cleanPlaces(this.$resultContainer)},j.prototype._onKeyDownHandler=function(a){if(this._shouldSetFocus(a))return a.preventDefault(),this._focusResultHandler(n)},j.prototype._onKeyDownSuggestionListHandler=function(b){var c,d,e;d=this._getKeyDirection(b),this._shouldSetFocus(b)&&(c=n,this._focusResultHandler(c)),d!==o&&(b.preventDefault(),e=a(b.target),c=e.index(),this._focusResultHandler(c+d)),this._onEnterHandler(b)},j.prototype._onClickHandler=function(b){var c;c=this._getSelectedItem(b),this.$currentResultSelected=a(b.target),this._resolveSelectedAddressPromise(c)},j.prototype._onEnterHandler=function(a){var b;a.which===d.ENTER&&(b=this._getSelectedItem(a),this._resolveSelectedAddressPromise(b))},j.prototype.notResultMessage=function(){var a=this.$inputElement.data(this.settings.attributes.dataNotResultText);b.isUndefined(a)||(q&&(this.$locationFormSearchButton.addClass("disabled"),this.settings.eventAggregator[0]&&this.settings.eventAggregator[0].analyticsForLocationNotFoundMessage&&this.settings.eventAggregator[0].analyticsForLocationNotFoundMessage(a)),this.disableSearchButton(!0),this.$resultContainer.html('<span class="not-result">'+a+"</span>").addClass(this.settings.classes.isActive),this.settings.eventAggregator&&this.settings.eventAggregator.trigger(this.settings.events.noSearchResults))},j.prototype._resolveSelectedAddressPromise=function(a){this.settings.isDealerSearch?this.settings.eventAggregator.trigger(this.settings.events.getFilteredDealerResult,this.settings.getSelectedDealerObject(a.dealerId)):this.autocompleteContext.getPostalCodeByAddressName(a.itemList).done(b.bind(function(b){this._handleGeoCodeEvent(b,a.userQuery)},this))},j.prototype._handleGeoCodeEvent=function(a,b){var c={heliosLocation:a,userQuery:b};this.settings.eventAggregator.trigger(this.settings.events.getPostalCodeByAddressName,c)},j.prototype._getSelectedItem=function(b){var c,d,e={};return d=a(b.currentTarget),e.itemList=d.data(this.settings.attributes.dataAddressName),this.settings.isDealerSearch&&(e.dealerId=d.data(this.settings.attributes.dealerId)),e.userQuery=this.$inputElement.val(),c=d.text(),b.preventDefault(),this.$inputElement.val(c),this._cleanPlaces(this.$resultContainer),e},j.prototype._getKeyDirection=function(a){var b=o;return a.which===d.ARROW_DOWN?b=p.UP:a.which===d.ARROW_UP&&(b=p.DOWN),b},j.prototype._focusResultHandler=function(a){var b=this.$resultContainer.children(),c=this.settings.classes.firstResultItem;return b.removeClass(c),a>=b.length&&(a=this.settings.isBATD?0:b.length-1),b.eq(a).focus(),this.$currentResultSelected=b.eq(a),this},j.prototype._cleanPlaces=function(a){a.empty(),this.$resultContainer.removeClass(this.settings.classes.isActive),q&&(this.$locationFormInput.removeClass("val
35id-address"),this.$locationFormSearchButton.addClass("disabled"),this.$locationFormErrorContainer.addClass("hidden")),this.disableSearchButton(!1)},j.prototype._fillPlaces=function(a){a.message?this.$resultContainer.html(this.noDataTemplate(a)):(this.$resultContainer.html(this.template(a)),this.disableSearchButton(!1))},j.prototype.disableSearchButton=function(a){this.$inputElement.toggleClass(this.settings.classes.errorNoResult,a),a&&q&&this.$inputElement.removeClass("valid-address")},j.prototype._isValidKey=function(){return!b.contains([d.ENTER,d.ARROW_UP,d.ARROW_DOWN],this.inputElement.keyCode)},j.prototype._isValidLength=function(a){return a.length>0},j.prototype._shouldBeClean=function(a,b){return 0===a.length&&b.which===d.BACKSPACE},j.prototype._shouldSetFocus=function(a){return a.which===d.ARROW_DOWN},j}),define("c_019_25_SearchController",["underscore","c_019_25_ApplicationConstants","c_019_25_ControllerBase","c_019_25_ModuleConstants","c_019_25_SearchView","c_019_25_SearchViewModel","autocompleteEventHandler"],function(a,b,c,d,e,f,g){"use strict";return c.extend({initialize:function(a){this.options=$.extend(this.options,{},a),this.enablePmaDealer=this.getContentModel()&&this.getContentModel().getEnablePMADealer(),this.options.region&&this.options.region.show(this._getView()),this.enablePmaDealer||this._initAutocompleteEventHandler(a),this._bindEvents()},_bindEvents:function(){this.getEventAggregator()&&(this.getEventAggregator().on(b.EVENTS.SET_SEARCH_LOCATION,this._onSetSearchLocation,this),this.getEventAggregator().on(b.EVENTS.SWITCH_TEST_DRIVE,this._onTestdriveTypeSwitch,this),this.getEventAggregator().on(b.EVENTS.DEALER_SEARCH_COMPLETE_ZERO_RESULTS,this._setIsDealerResultsLoaded,this),this.getEventAggregator().on(b.EVENTS.DEALER_SEARCH_COMPLETE,this._setIsDealerResultsLoaded,this))},_getModel:function(){var a;return this._model||(a=this.getContentModel(),this._model=(new f).setEnterLocationText(a.getLocationSearchLabel()).setPostalCodeValidation(a.getpostalCodeValidation()).setErrorMessage(a.getErrorMessage()).setEnablePMADealer(a.getEnablePMADealer()).setLocationSearchElementId(a.getLocationSearchElementId()).setPlaceholderText(a.getLocationSearchPlaceholder()).setHomeTestdrivePlaceholderText(a.getHomeTestdriveLocationSearchPlaceholder()).setSearchForDealersText(a.getSearchForDealersText()).setUseCurrentLocationText(a.getUseCurrentLocation()).setDealerTestdriveLocationText(a.getLocationSearchLabel()).setHomeTestdriveLocationText(a.getHomeTestDriveLocationSearchLabel()).setEnterAddressManuallyText(a.getEnterAddressManuallyCtaLabel()).setIsExternalJourneyValue(a.getIsExternalJourneyValue()).setHomeHelpText(a.getHomeHelpText()).setDealerHelpText(a.getDealerHelpText()).setSearchAnotherDealer(a.getSearchAnotherDealerText()).setPreLaunchRadiusSearchNoResultsMessage(a.getPreLaunchRadiusSearchNoResultsMessage())),this._model},_getView:function(){var a;return this._view||(a={model:this._getModel()},a[d.SEARCH.VIEW.OPTIONS.COUNTRY_CODE]=this.getWindow().HELIOS.config.common.countryCode,a[d.SEARCH.VIEW.OPTIONS.EVENT_AGGREGATOR]=this.getEventAggregator(),a[d.SEARCH.VIEW.OPTIONS.WINDOW]=this.getWindow(),this._view=new e(a)),this._view},_onSetSearchLocation:function(c,d){var e;switch(d){case b.SEARCH_LOCATION_SOURCES.GEO_LOCATION:e=c.getUserAddress();break;case b.SEARCH_LOCATION_SOURCES.SMART_LOCATION:this.getContentModel().getIsLocationPrefillEnabled()&&(e=c.getUserAddress(),this.getContentModel().getEnablePMADealer()&&(e=c.getPostalCode()));break;case b.SEARCH_LOCATION_SOURCES.TEST_DRIVE_STOCK_CHECK:this.getContentModel().getIsTestDriveStockCheckEnabled()&&(e=c.getUserAddress())}a.isUndefined(e)||this._model.setLocationSearchElementValue(e)},_initAutocompleteEventHandler:function(a){var b,c=a&&a.content?a.content.get("formDetails"):"",e=a&&a.content?a.content.get("mapProvider"):"";return b=new g({COUNTRY_CODE:this.getWindow().HELIOS.config.common.countryCode,window:this.getWindow(),inputElement:d.SEARCH.AUTOCOMPLETE_PROPS.SELECTORS.inputElement,selectors:d.SEARCH.AUTOCOMPLETE_PROPS.SELECTORS,eventAggregator:this.getEventAggregator(),heliosObject:this.getWindow().HELIOS,enableAutoCompleteAllSearch:c&&c.enableAutoCompleteAllSearchForms,mapProvider:e}),this._view&&this._view._setAutocompleteEventHandler&&this._view._setAutocompleteEventHandler(b),b},_onTestdriveTypeSwitch:function(a){this._model.setTypeIsHomeTestDrive(a)},disable:function(){this._view.disableControls()},enable:function(){this._view.enableControls()},_setIsDealerResultsLoaded:function(a){a&&a.length?this._model.setIsDealerResultsLoaded(!0):this._model.setIsDealerResultsLoaded(!1)},setHasPreferredDealers:function(a){this._getModel().setHasPreferredDealers(a),this.enablePmaDealer||this._initAutocompleteEventHandler(this.options)}})}),define("hbars!/components/c_019-25/scripts/app/modules/selectedDealer/html/selectedDealerTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){return"hidden"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<h2 class="title">'+a.escapeExpression((g=null!=(g=h(c,"title")||(null!=b?h(b,"title"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"title",hash:{},data:e,loc:{start:{line:1,column:18},end:{line:1,column:27}}}):g))+'</h2>\n<div class="details">\n    <h3 class="name">'+a.escapeExpression((g=null!=(g=h(c,"name")||(null!=b?h(b,"name"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"name",hash:{},data:e,loc:{start:{line:3,column:21},end:{line:3,column:29}}}):g))+'</h3>\n    <p class="dealer-list-phone">\n        <a class="dealer-list-phone-link" href="tel:'+a.escapeExpression((g=null!=(g=h(c,"phone")||(null!=b?h(b,"phone"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"phone",hash:{}
35,data:e,loc:{start:{line:5,column:52},end:{line:5,column:63}}}):g))+'">'+a.escapeExpression((g=null!=(g=h(c,"phone")||(null!=b?h(b,"phone"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"phone",hash:{},data:e,loc:{start:{line:5,column:65},end:{line:5,column:76}}}):g))+'</a>\n    </p>\n    <div class="address">'+(null!=(g=null!=(g=h(c,"address")||(null!=b?h(b,"address"):b))?g:a.hooks.helperMissing,f="function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"address",hash:{},data:e,loc:{start:{line:7,column:25},end:{line:7,column:38}}}):g)?f:"")+'</div>\n    <div class="distance '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"distance"):b,{name:"unless",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:8,column:25},end:{line:8,column:62}}}))?f:"")+'">\n        (<span class="distance-number">'+a.escapeExpression((g=null!=(g=h(c,"distance")||(null!=b?h(b,"distance"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"distance",hash:{},data:e,loc:{start:{line:9,column:39},end:{line:9,column:51}}}):g))+'</span><span class="distance-unit">'+a.escapeExpression((g=null!=(g=h(c,"distanceUnit")||(null!=b?h(b,"distanceUnit"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"distanceUnit",hash:{},data:e,loc:{start:{line:9,column:86},end:{line:9,column:102}}}):g))+'</span>)\n    </div>\n    <img class="icon-img hidden" src="'+a.escapeExpression((g=null!=(g=h(c,"imgUrl")||(null!=b?h(b,"imgUrl"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"imgUrl",hash:{},data:e,loc:{start:{line:11,column:38},end:{line:11,column:48}}}):g))+'" />\n    <div class="save-dealer"></div>\n</div>\n<div class="change-selected-dealer-cta-container">\n    <button class="change-selected-dealer '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isChangeDealerButtonVisible"):b,{name:"unless",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:15,column:42},end:{line:15,column:98}}}))?f:"")+'" type="button"><span class="cta">'+a.escapeExpression((g=null!=(g=h(c,"changeSelectedDealerCta")||(null!=b?h(b,"changeSelectedDealerCta"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"changeSelectedDealerCta",hash:{},data:e,loc:{start:{line:15,column:132},end:{line:15,column:159}}}):g))+"</span></button>\n</div>\n"},useData:!0})}),define("c_019_25_SelectedDealerView",["underscore","jquery","backbone","c_019_25_ModuleConstants","c_019_25_ApplicationConstants","hbars!/components/c_019-25/scripts/app/modules/selectedDealer/html/selectedDealerTemplate","storageManager","myPageApi","trackingCodes","keyCodeConstants"],function(a,b,c,d,e,f,g,h,i,j){"use strict";var k=d.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES,l=d.SELECTED_DEALER.ANALYTICS,m=e.EVENTS;return c.Marionette.ItemView.extend({events:{"click @ui.changeSelectedDealerButton":"_onChangeSelectedDealerButtonClick","click @ui.saveDealerCTA":"_onPreferredDealerStatusChange","click @ui.phoneUrl":"_onDealerPhoneClick"},modelEvents:function(){var a={};return a["change:"+k.ADDRESS]="_onAddressChange",a["change:"+k.DISTANCE]="_onDistanceChange",a["change:"+k.NAME]="_onNameChange",a["change:"+k.TITLE]="_onTitleChange",a["change:"+k.DEALER_TYPE_CSS_CLASS]="_onDealerTypeClassChange",a["change:"+k.DEALER_TYPE_ICON_IMG_URL]="_onIconImgChange",a["change:"+k.IS_CHANGE_DEALER_BUTTON_VISIBLE]="_onIsChangeDealerButtonVisible",a["change:"+k.PHONE]="_onPhoneChange",a["change:"+k.DEALER_ID]="_showSaveDealer",a},template:f,ui:{address:d.SELECTED_DEALER.SELECTORS.ADDRESS,changeSelectedDealerButton:d.SELECTED_DEALER.SELECTORS.CHANGE_SELECTED_DEALER_BUTTON,distanceContainer:d.SELECTED_DEALER.SELECTORS.DISTANCE,distanceNumber:d.SELECTED_DEALER.SELECTORS.DISTANCE_NUMBER,name:d.SELECTED_DEALER.SELECTORS.NAME,title:d.SELECTED_DEALER.SELECTORS.TITLE,iconImg:d.SELECTED_DEALER.SELECTORS.ICON_IMG,detailsContainer:d.SELECTED_DEALER.SELECTORS.DETAILS,phoneUrl:d.SELECTED_DEALER.SELECTORS.DEALER_LIST_PHONE_LINK,saveDealer:d.SELECTED_DEALER.SELECTORS.SAVE_DEALER,saveDealerCTA:d.SELECTED_DEALER.SELECTORS.SAVE_DEALER_BUTTON},_onAddressChange:function(a,b){this.ui.address.html(b)},_onChangeSelectedDealerButtonClick:function(){if(this._getIsRealtimeTestdriveEnabled()){g.loadItem("externalCallbackUrl",{mode:"sessionStorage"})||b("body").trigger("disableRTBCalendar")}this.trigger(d.SELECTED_DEALER.EVENTS.CHANGE_SELECTED_DEALER_CLICK),b("body").trigger(d.SELECTED_DEALER.EVENTS.RESET_VEHICLE_SPECIFICATION)},_getIsRealtimeTestdriveEnabled:function(){return this.options[d.SELECTED_DEALER.CONTROLLER.OPTIONS.REALTIME_TESTDRIVE_BOOKING]},_getEventAggregator:function(){return this.options[d.SELECTED_DEALER.VIEW.OPTIONS.EVENT_AGGREGATOR]},_onDistanceChange:function(b,c){var e=!a.isFinite(c);this.ui.distanceContainer.toggleClass(d.GENERIC_CSS_CLASSES.HIDDEN,e),this.ui.distanceNumber.text(c)},_onNameChange:function(a,b){this.ui.name.text(b)},_onPhoneChange:function(a,c){var e="",f=this.model.get(d.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.ENABLE_DEALER_NUMBER);c&&(e=c.replace(/ /g,"")),this.ui.phoneUrl.text(c).toggleClass(d.GENERIC_CSS_CLASSES.HIDDEN,!e||!f),this.ui.phoneUrl.attr("href","tel:"+e),b("body").trigger(d.DEALER_LIST.EVENTS.DEALERS_PHONE_UPDATE)},_onTitleChange:function(a,b){this.ui.title.text(b)},_onDealerTypeClassChange:function(a,b){this.ui.detailsContainer.removeClass(a.previous(k.DEALER_TYPE_CSS_CLASS)).addClass(b)},_onIconImgChange:function(b,c){this.ui.iconImg.attr("src",c).toggleClass(d.GENERIC_CSS_CLASSES.HIDDEN,a.isUndefined(c))},_onIsChangeDealerButtonVisible:function(a,b){this.ui.changeSelectedDealerButton.toggleClass(d.GENERIC_CSS_CLASSES.HIDDEN,!b)},_onDealerPhoneButtonKeyDown:function(a){a.which===j.ENTER&&this._onDealerPhoneClick()},_onDealerPhoneClick:function(){this._getEventAggregator().trigger(m.ANALYTICS_DEALER_PHONE_LINK_INTERACTION,i.componentIds.c19_25_Dealer_Locator,this.model)},_showSaveDealer:function(c){var d=c.get(k.IS_ADD_TO_MYPAGE_ENABLED);b(".c_019.my-page")&&!0===d&&h.isLoggedIn().then(a.bind(function(a){if
35(a){var b=(((HELIOS||{}).components||{}).c_019||{}).maxPreferredDealers||10,d=c.get(k.PREFERRED_DEALERS)||[],e=c.get(k.DEALER_ID),f=c.get(k.ADD_TO_MYPAGE_TEXT);!d.includes(e)&&d.length<b?this.ui.saveDealer.html('<button class="set-preferred-dealer" data-dealer-id="'+e+'">'+f+"</button>"):this.ui.saveDealer.html("")}},this))},_onPreferredDealerStatusChange:function(c){c.preventDefault();var e=c.currentTarget,f=e.dataset.dealerId,g=d.SELECTED_DEALER.CLASSES.PREFERRED_DEALER,i=this.model.get(k.ADD_TO_MYPAGE_TEXT),j=this.model.get(k.REMOVE_TO_MYPAGE_TEXT),m=this.model.get(k.NAME);b(e).attr("disabled",!0),b(e).hasClass(g)?h.removeDealer(f).then(a.bind(function(){this._triggerStoreAnalytics(l.removeAsPreferred),this.model.setLastAddedDealer(void 0),b(e).removeClass(g).attr("disabled",!1),e.innerText=i},this)).fail(a.bind(function(){this._triggerStoreAnalytics(l.removeAsPreferredError,l.removeAsPreferredErrorMessage),this._onDealerActionFail()},this)):h.addDealer(f).then(a.bind(function(){this._triggerStoreAnalytics(l.setAsPreferred),this.model.setLastAddedDealer({id:f,name:m,date:Date.now()}),b(e).addClass(g).attr("disabled",!1),e.innerText=j},this)).fail(a.bind(function(){this._triggerStoreAnalytics(l.setAsPreferredError,l.setAsPreferredErrorMessage),this._onDealerActionFail()},this))},_onDealerActionFail:function(){var a=this.model.get(k.MYPAGE_STORE_ERROR_MESSAGE);this.ui.saveDealer.html('<div class="form-group error"><span class="error-message">'+a+"</span></div>")},_triggerStoreAnalytics:function(a,b){this._getEventAggregator().trigger(m.TRACK_TOOGLE_STORE_TO_MYPAGE,a,this.model,b)}})}),define("c_019_25_SelectedDealerViewModel",["backbone","c_019_25_ModuleConstants"],function(a,b){"use strict";var c=b.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({defaults:function(){var a={};return a[b.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.IS_CHANGE_DEALER_BUTTON_VISIBLE]=!0,a},setLastAddedDealer:function(a){return this.set(c.LAST_ADDED_DEALER,a),this},getLastAddedDealer:function(){return this.get(c.LAST_ADDED_DEALER)}})}),define("c_019_25_SelectedDealerController",["underscore","c_019_25_ApplicationConstants","c_019_25_ControllerBase","c_019_25_DealerModel","c_019_25_ModelConstants","c_019_25_ModuleConstants","c_019_25_SelectedDealerView","c_019_25_SelectedDealerViewModel","trackingCodes","objectFactory"],function(a,b,c,d,e,f,g,h,i,j){"use strict";var k=f.SELECTED_DEALER.CONTROLLER.OPTIONS,l=b.EVENTS;return c.extend({initialize:function(){this.options.region&&this.options.region.show(this._getView()),this._bindEvents()},_bindEvents:function(){this.getEventAggregator()&&this.getEventAggregator().on(b.EVENTS.SET_SELECTED_DEALER,this._onSetSelectedDealer,this)},_getAddressFieldOrder:function(){return this.options[k.ADDRESS_FIELD_ORDER]},_getDealerTypeIconSettings:function(){return this.options[k.DEALER_TYPE_ICON_SETTINGS]},_getIsModelDealerServiceMappingEnabled:function(){return this.options[k.MODEL_DEALER_SERVICE_MAPPING_ENABLED]},_getDealerTypeIconCssClass:function(a){return this._getDealerTypeIconSettings()&&this._getDealerTypeIconSettings()[a]&&this._getDealerTypeIconSettings()[a].cssClass},_getDealerTypeIconIconURL:function(a){return this._getDealerTypeIconSettings()&&this._getDealerTypeIconSettings()[a]&&this._getDealerTypeIconSettings()[a].imgUrl},_getModel:function(){return this._model||(this._model=j.getObject(h,null,{}).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.TITLE,this.getContentModel().get(e.CONTENT.ATTRIBUTES.DEALER_SELECTED_TEXT)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.CHANGE_SELECTED_DEALER_CTA,this.getContentModel().get(e.CONTENT.ATTRIBUTES.CHANGE_SELECTED_DEALER_CTA)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.DISTANCE_UNIT,this.getContentModel().get(e.CONTENT.ATTRIBUTES.DISTANCE_UNIT_LABEL)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.ENABLE_DEALER_NUMBER,this.getContentModel().get(e.CONTENT.ATTRIBUTES.SEARCH_FOR_DEALER_PHONE)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.PHONE,"").set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.IS_ADD_TO_MYPAGE_ENABLED,this.getContentModel().get(e.CONTENT.ATTRIBUTES.SHOW_ADD_TO_MYPAGE)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.ADD_TO_MYPAGE_TEXT,this.getContentModel().get(e.CONTENT.ATTRIBUTES.ADD_TO_MYPAGE_TEXT)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.REMOVE_TO_MYPAGE_TEXT,this.getContentModel().get(e.CONTENT.ATTRIBUTES.REMOVE_TO_MYPAGE_TEXT)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.MYPAGE_STORE_ERROR_MESSAGE,this.getContentModel().get(e.CONTENT.ATTRIBUTES.MYPAGE_STORE_ERROR_MESSAGE))),this._model},_getView:function(){var a;return this._view||(a={model:this._getModel()},a[f.SELECTED_DEALER.VIEW.OPTIONS.EVENT_AGGREGATOR]=this.getEventAggregator(),a[k.REALTIME_TESTDRIVE_BOOKING]=this._getIsRealtimeTestdriveEnabled(),this._view=new g(a)),this._view},_onDealerModelError:function(){},_onDealerModelSync:function(c){var d,g,h,j,k,m=this.getContentModel().getDealerIconKeys(),n=this._getIsModelDealerServiceMappingEnabled();if(m.length>1&&(d=a.find(m,function(b){return a.contains(b.dealerTypes,c.getType())}),g=d&&d.iconStyle,h=this._getDealerTypeIconCssClass(g),j=h&&f.GENERIC_CSS_CLASSES.DEALER_TYPE_PREFIX+h,k=this._getDealerTypeIconIconURL(g)),this._getModel().set(e.DEALER.OPTIONS.DEALER_ID,c.getDealerId()).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.NAME,c.getName()).set(f.DEALER_LIST.VIEW_ITEM_MODEL.ATTRIBUTES.UNFORMATTED_ADDRESS,c.getAddress()).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.ADDRESS,c.getFormattedAddress()).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.DEALER_TYPE_CSS_CLASS,j).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.DEALER_TYPE_ICON_IMG_URL,k).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.PHONE,c.getPhone()),this.getEventAggregator().trigger(b.EVENTS.SET_APPLICATION_STATE,b.STATES.DEALER_SELECTED).trigger(b.EVENTS.SELECTED_DEALER_SYNC,c),!this._isPreLaunchModelEnabled()){var o=c.getPhone()&&this.getContentModel().getDealerListPhone()?c.getPhone():void 0;n?$("body").trigger("onDealerSelectionModelDealerServiceMappingRTB",[c.getDealerId(),c.getName(),c.getFormattedAddress(),o]):this._getIsRealtimeTestdriveEnabled()&&!this._isModelPowertrainEnabled()&&$("body").trigger("onDealerSelectionRTB",c.getDealerId(),c.getName(),c.getFormattedAddress(),o)}if(!0===this.fromMyPage&&(this.getEventAggregator().trigger(l.ANALYTICS_DEALER_INTERACTION,i.componentIds.c19_25_Dealer_Locator,this._model),this.fromMyPage=!1),this._isModelPowertrainEnabled()){var o=c.getPhone()&&this.getContentModel().getDealerListPhone()?c.getPhone():void 0,p=this._getModel().get(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.VEHICLE_SPECS);$("body").trigger(f.SELECTED_DEALER.EVENTS.GET_VEHICLE_SPECS,[p,c.getDealerId(),c.getName(),c.getFormattedAddress(),o])}this.getEventAggregator().trigger("onDealerSelectionDataSource",c.getDealerId())},_getIsRealtimeTestdriveEnabled:function(){return this.options[k.REALTIME_TESTDRIVE_BOOKING]},_isModelPowertrainEnabled:function(){return HELIOS&&HELIOS.components.c_019_39&&HELIOS.components.c_019_39.powertrainEnabled},_isPreLaunchModelEnabled:function(){return HELIOS&&HELIOS.components&&(HELIOS.components.c_019_39&&"true"===HELIOS.components.c_019_39.isPrelaunch||HELIOS.components.c_019&&HELIOS.components.c_019.isPreLaunch)},_onChangeSelectedDealerClick:function(a){var c,d=!0;a===b.SELECTED_DEALER_SOURCES.SMART_LOCATION||a===b.SELECTED_DEALER_SOURCES.MY_PAGE_USER_SELECT?c=b.STATES.SEARCH:(c=b.STATES.SEARCH_RESULTS,d=!1),this.getEventAggregator().trigger(b.EVENTS.LOCK_STATE,!1).trigger(b.EVENTS.SET_APPLICATION_STATE,c).trigger(b.EVENTS.CLEAR_SELECTED_DEALER,d).trigger(b.EVENTS.CHANGE_DEALER_CTA)},_onSetSelectedDealer:function(b,c,e,g,h){this._getModel().set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.DISTANCE,e),this._getModel().set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.VEHICLE_SPECS,g),!0===h&&(this.fromMyPage=!0),b instanceof d?this._onDealerModelSync(b):this._requestDealer(b),this.stopListening(this._getView(),f.SELECTED_DEALER.EVENTS.CHANGE_SELECTED_DEALER_CLICK).listenTo(this._getView(),f.SELECTED_DEALER.EVENTS.CHANGE_SELECTED_DEALER_CLICK,a.partial(a.bind(this._onChangeSelectedDealerClick,this),c))},_requestDealer:function(a){var c={};c[e.DEALER.OPTIONS.ADDRESS_FIELD_ORDER]=this._getAddressFieldOrder(),c[e.DEALER.OPTIONS.DEALER_ID]=a,c[e.DEALER.OPTIONS.DISTANCE_UNIT]=this.getContentModel().get(e.CONTENT.ATTRIBUTES.DISTANCE_UNIT),c[e.DEALER.OPTIONS.URL_FORMAT]=this.getContentModel().get(e.CONTENT.ATTRIBUTES.DEALER_URL_FORMAT),this._dealerModel=j.getObject(d,null,c).on(e.GENERIC.EVENTS.ERROR,this._onDealerModelError,this).on(e.GENERIC.EVENTS.SYNC,this._onDealerModelSync,this).fetch(),!0!==this.fromMyPage&&this.getEventAggregator().trigger(b.EVENTS.SET_APPLICATION_STATE,b.STATES.SEARCHING)},getDealerId:function(){return this._getModel().get(e.DEALER.OPTIONS.DEALER_ID)},setDealerId:function(a){return this._getModel().set(e.DEALER.OPTIONS.DEALER_ID,a),this},setPreferredDealers:function(b){this._getModel().set(e.DEALER.OPTIONS.PREFERRED_DEALERS,a.pluck(b,"id"))},getDealerName:function(){return this._getModel().get(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.NAME)},lockDealer:function(){this._getModel().set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.IS_CHANGE_DEALER_BUTTON_VISIBLE,!1)},setLastDealerAdded:function(a){return this._getModel().setLastAddedDealer(a)},getLastDealerAdded:function(){return this._getModel().getLastAddedDealer()}})}),define("googleMapsSearcher",["underscore","jquery","googleMapsSingleton","objectFactory"],function(a,b,c,d){"use strict";var e;return e=function(){},e.prototype.getPlaceResultForLocation=function(e){var f=b.Deferred();return c.getDeferred().done(a.bind(function(){var b;e=e||{},b={input:e.location,types:["geocode"]},e.countryRestriction&&(b.componentRestrictions={country:e.countryRestriction.split("-")[0]}),d.getObject(google.maps.places.AutocompleteService).getPlacePredictions(b,a.bind(function(b,c){c===google.maps.places.PlacesServiceStatus.OK?d.getObject(google.maps.Geocoder).geocode({placeId:a.first(b).place_id},a.bind(function(b,c){c===google.maps.GeocoderStatus.OK?f.resolve(a.first(b)):f.reject()},this)):f.reject()},this))},this)),f},e}),define("c_019_25_StartupController",["underscore","c_019_25_ApplicationConstants","c_019_25_ControllerConstants","c_019_25_DealerModel","googleMapsSearcher","heliosLocation","marionette","c_019_25_ModelConstants","logger","objectFactory","storageManager","storageManagerKeys","autocompleteContext","trackingCodes"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){"use strict";function o(){return p||(p=new i({prefix:"C19.25 StartupController"}))}var p,q=b.EVENTS,r=b.STATES,s=h.DEALER.OPTIONS,t=h.GENERIC.EVENTS,u=c.STARTUP.OPTIONS,v=b.SEARCH_LO
35CATION_SOURCES,w=b.SELECTED_DEALER_SOURCES;return g.Object.extend({initialize:function(){this._dealerModelCache=[]},run:function(){var b=!1;o().debug("Checking URL for deep link dealer"),this._getDealerFromDeepLink().then(function(a){o().debug("Deep link dealer found in URL"),b=!0,this._getSmartLocationContext().set((new f).setDealerId(a.getDealerId())),this._getEventAggregator().trigger(q.UPDATE_PROFILE_DATA_IN_LOCALSTORAGE)}.bind(this)).always(a.bind(function(){o().debug("Checking URL for deep link search location"),this._getSearchLocationFromDeepLink().done(a.bind(function(a){o().debug("Deep link search location found in URL"),this._getSmartLocationContext().set(a),this._getEventAggregator().trigger(q.UPDATE_PROFILE_DATA_IN_LOCALSTORAGE)},this)).always(a.bind(function(){o().debug("Checking SmartLocationContext for preferred dealer"),this._getDealerFromSmartLocation().then(a.bind(function(c){o().debug("Dealer found in SmartLocationContext");var d=this.options[u.ENABLE_MODEL_DEALER_MAPPING],e=this._checkDealerEligibility(c)
36;d||e||b?this._getEventAggregator().trigger(q.LOCK_STATE,this._getIsTestDriveStockCheckAvailable()).trigger(q.SET_SELECTED_DEALER,c,w.SMART_LOCATION):this._getEventAggregator().trigger(q.SET_APPLICATION_STATE,r.SEARCH),this._getSearchLocationFromSmartLocation().done(a.bind(function(a){o().debug("Search location found in SmartLocationContext"),this._getEventAggregator().trigger(q.SET_SEARCH_LOCATION,a,v.SMART_LOCATION)},this))},this),a.bind(function(){return this._getDealerFromMyPagePreferredDealers().then(a.bind(function(a){this._getEventAggregator().trigger(q.SET_SELECTED_DEALER,a,w.SMART_LOCATION)},this))},this)).fail(a.bind(function(){o().debug("Dealer not found in SmartLocationContext").debug("Checking SmartLocationContext for search location"),this._getSearchLocationFromSmartLocation().done(a.bind(function(a){o().debug("Search location found in SmartLocationContext"),this._getEventAggregator().trigger(q.SET_SEARCH_LOCATION,a,v.SMART_LOCATION).trigger(q.SET_APPLICATION_STATE,r.SEARCH)},this)).fail(a.bind(function(){o().debug("Search location not found in SmartLocationContext"),this._getDealerFromPreferred().done(a.bind(function(a){o().debug("Dealer found in UserPreferred"),this._getEventAggregator().trigger(q.SET_SELECTED_DEALER,a,w.SMART_LOCATION)},this)).fail(a.bind(function(){o().debug("Dealer not found in UserPreferred"),this._getEventAggregator().trigger(q.SET_APPLICATION_STATE,r.SEARCH)},this))},this))},this))},this))},this))},runOnModelChange:function(){o().debug("Checking URL for deep link dealer"),this._getDealerFromDeepLink().done(a.bind(function(a){o().debug("Deep link dealer found in URL"),this._getSmartLocationContext().set((new f).setDealerId(a.getDealerId())),a.isDealerSelectedFromParams=!0,this._getEventAggregator().trigger(q.UPDATE_PROFILE_DATA_IN_LOCALSTORAGE).trigger(q.LOCK_STATE,this._getIsTestDriveStockCheckAvailable()).trigger(q.ANALYTICS_DEALER_INTERACTION,n.componentIds.c19_25_Dealer_Locator,a).trigger(q.SET_SELECTED_DEALER,a,w.SMART_LOCATION)},this)).fail(a.bind(function(){o().debug("Dealer not found, checking URL for deep link search location"),this._getSearchLocationFromDeepLink().done(a.bind(function(a){o().debug("Deep link search location found in URL"),this._getSmartLocationContext().set(a)},this)).always(a.bind(function(){o().debug("Checking SmartLocationContext for search location"),this._getEventAggregator().trigger(q.SET_APPLICATION_STATE,r.SEARCH),this._getSearchLocationFromSmartLocation().done(a.bind(function(a){o().debug("Search location found in SmartLocationContext"),this._getEventAggregator().trigger(q.SET_SEARCH_LOCATION,a,v.SMART_LOCATION).trigger(q.SET_APPLICATION_STATE,r.SEARCH),$("body").trigger("noGeoLocationPostalCode",!1)},this)).fail(a.bind(function(){o().debug("Search location not found in SmartLocationContext"),this._getEventAggregator().trigger(q.SET_APPLICATION_STATE,r.SEARCH)},this))},this))},this))},runRealTimeServiceBooking:function(){o().debug("Checking URL for deep link dealer"),this._getDealerFromDeepLink().done(a.bind(function(a){this._getSmartLocationContext().set((new f).setDealerId(a.getDealerId())),this._getEventAggregator().trigger(q.UPDATE_PROFILE_DATA_IN_LOCALSTORAGE).trigger(q.LOCK_STATE,this._getIsTestDriveStockCheckAvailable()).trigger(q.SET_SELECTED_DEALER,a,w.SMART_LOCATION)},this)).fail(a.bind(function(){o().debug("Checking URL for deep link search location"),this._getSearchLocationFromDeepLink().done(a.bind(function(a){o().debug("Deep link search location found in URL"),this._getSmartLocationContext().set(a)},this)).always(a.bind(function(){o().debug("Checking SmartLocationContext for search location"),this._getEventAggregator().trigger(q.SET_APPLICATION_STATE,r.SEARCH),this._getSearchLocationFromSmartLocation().done(a.bind(function(a){o().debug("Search location found in SmartLocationContext"),this._getEventAggregator().trigger(q.SET_SEARCH_LO
36CATION,a,v.SMART_LOCATION).trigger(q.SET_APPLICATION_STATE,r.SEARCH),$("body").trigger("noGeoLocationPostalCode",!1)},this)).fail(a.bind(function(){o().debug("Search location not found in SmartLocationContext"),this._getEventAggregator().trigger(q.SET_APPLICATION_STATE,r.SEARCH)},this))},this))},this))},_getDealerById:function(b,c){var e,f=a.find(this._dealerModelCache,function(a){return a.options[s.DEALER_ID]===b});f?f.isSynced?c.resolve(f):f.isErrored?c.reject():f.on(t.ERROR,c.reject).on(t.SYNC,c.resolve):(e={},e[s.DEALER_ID]=b,e[s.URL_FORMAT]=this._getDealerUrlFormat(),e[s.ADDRESS_FIELD_ORDER]=this._getAddressFieldOrder(),f=j.getObject(d,null,e).on(t.ERROR,c.reject).on(t.SYNC,c.resolve),this._dealerModelCache.push(f),f.fetch())},_getDealerFromDeepLink:function(){var c=this._getDeepLinkDealerId(),d=$.Deferred();return $(b.SELECTORS.C19_39_MODEL_SELECTOR).length>0?d.reject():a.isUndefined(c)?d.reject():this._getDealerById(c,d),d},_getDealerFromSmartLocation:function(){var b=$.Deferred();return a.isUndefined(this._getSmartLocationContext())?b.reject():this._getSmartLocationContext().get().done(a.bind(function(a){a.getDealerId()?this._getDealerById(a.getDealerId(),b):b.reject()},this)).fail(b.reject),b},_checkDealerEligibility:function(a){var b=this.options[u.DEALER_FILTER_GROUPS]||[],c=this.options[u.SERVICE_FILTER_TYPE],d=a.get("services")||[],e=[],f=[],g=!1;return b.length>0&&b.forEach(function(a){a.filters.forEach(function(a){a.applyOnLoad&&a.serviceIds&&(f=f.concat(a.serviceIds))})}),d.forEach(function(a){e.push(a.id)}),f.length>0?"AND"===c?(g=!0,f.forEach(function(a){-1===e.indexOf(a)&&(g=!1)})):f.forEach(function(a){-1!==e.indexOf(a)&&(g=!0)}):g=!0,g},_populateSessionFromLocalStorage:function(){var a,b,c,d,e,f,g=$.Deferred();try{a=k.loadItem(l.dealerLocator.profileDataSession,{mode:"sessionStorage"}),b=k.loadItem(l.dealerLocator.localProfileDataSession,{mode:"localStorage"}),!a&&b?(c=b.storageData||{},e=c.location&&c.location.localityName&&c.location.localityName.long_name,f=c.dealerLocation&&c.dealerLocation.dealerId,e?(d=new m({COUNTRY_CODE:HELIOS.config.common.countryCode,window:window}),c.postalCode&&(e=e+" "+c.postalCode),d.getPostalCodeByAddressName(e).done(function(a){a.setDealerId(f),this._getSmartLocationContext().set(a)}.bind(this)).always(g.resolve)):g.resolve()):(g.resolve(),a&&this._getEventAggregator().trigger(q.UPDATE_PROFILE_DATA_IN_LOCALSTORAGE))}catch(h){g.resolve()}return g},_getDealerFromPreferred:function(){var a,b=$.Deferred(),c=this._getHeliosObject();return $.isNestedProp(c,["config","common","api","storageSettings"])&&c.config.common.api.storageSettings.preferredDealer&&$.isNestedProp(c,["state","dealer","preferred"])&&c.state.dealer.preferred?(a=/\_([0-9].*?)\-/.exec(c.state.dealer.preferred)&&/\_([0-9].*?)\-/.exec(c.state.dealer.preferred)[1],a?this._getDealerById(a,b):b.reject()):b.reject(),b},_getDeepLinkDealerId:function(){return this.options[u.DEEP_LINK_DEALER_ID]},_getDeepLinkSearchLocation:function(){return this.options[u.DEEP_LINK_SEARCH_LOCATION]},_getMarketCountryCode:function(){return this.options[u.MARKET_COUNTRY_CODE]},_getSearchLocationFromDeepLink:function(){var b=$.Deferred();return this._getDeepLinkSearchLocation()?j.getObject(e).getPlaceResultForLocation({countryRestriction:this._getMarketCountryCode(),location:this._getDeepLinkSearchLocation()}).done(a.bind(function(a){b.resolve((new f).setUserLocationFromGooglePlaceResult(a))},this)).fail(b.reject):b.reject(),b},_getSearchLocationFromSmartLocation:function(){var b=$.Deferred();if(a.isUndefined(this._getSmartLocationContext()))b.reject();else{this._getSmartLocationContext().getLocationFromBrowser=!0,this._getSmartLocationContext().get().done(a.bind(function(c){!a.isUndefined(c.getUserAddress())&&!a.isUndefined(c.getUserLat())&&!a.isUndefined(c.getUserLng())||!a.isUndefined(c.getPostalCode())&&this.options[u.ENABLE_PMA_DEALER]?b.resolve(c):b.reject()},this)).fail(b.reject)}return b},_getDealerUrlFormat:function(){return this.options[u.DEALER_URL_FORMAT]},_getAddressFieldOrder:function(){return this.options[u.ADDRESS_FIELD_ORDER]},_getEventAggregator:function(){return this.options[u.EVENT_AGGREGATOR]},_getSmartLocationContext:function(){return this.options[u.SMART_LOCATION_CONTEXT]},_getHeliosObject:function(){return this.options[u.HELIOS_OBJECT]},_getIsTestDriveStockCheckAvailable:function(){return this.options[u.IS_TEST_DRIVE_STOCK_CHECK_AVAILABLE]},_getIsHomeTestdriveEnabled:function(){return this.options[u.HOME_TEST_DRIVE_ENABLED]},setPreferredDealers:function(a){this.options.preferredDealers=a},_getDealerFromMyPagePreferredDealers:function(){var a=this.options.preferredDealers,b=$.Deferred();if(a&&1===a.length){var c=a[0].id;this._getDealerById(c,b)}else b.reject();return b.promise()}})}),define("c_019_25_StateController",["underscore","c_019_25_ApplicationConstants","c_019_25_ControllerConstants","c_019_25_ModuleConstants","marionette","storageManager"],function(a,b,c,d,e,f){"use strict";var g=b.EVENTS,h=b.STATES,i=c.STATE.OPTIONS;return e.Object.extend({initialize:function(){this._bindEvents()},_bindEvents:function(){this._getEventAggregator()&&this._getEventAggregator().on(g.GO_TO_PREVIOUS_APPLICATION_STATE,this.goToPreviousState,this).on(g.SET_APPLICATION_STATE,this.setState,this).on(g.LOCK_STATE,this._setStateLock,this).on(g.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,this._setErrorVisibilityPersistence,this).on(b.EVENTS.SWITCH_TEST_DRIVE,this._onTestdriveTypeSwitch,this).on(b.EVENTS.HOME_TEST_DRIVE_ADDRESS_VERIFIED,this._onHomeTestDriveAddressVerified,this).on(b.STATES.REALTIME_SERVICE_BOOKING,this._setRealtimeServiceBookingEnabled,this)},_getDealerListController:function(){return this.options[i.DEALER_LIST_CONTROLLER]},_getErrorController:function(){return this.options[i.ERROR_CONTROLLER]},_getEventAggregator:function(){return this.options[i.EVENT_AGGREGATOR]},_getLoaderController:function(){return this.options[i.LOADER_CONTROLLER]},_getSearchController:function(){return this.options[i.SEARCH_CONTROLLER]},_getAddressFieldsController:function(){return this.options[i.ADDRESS_FIELDS_CONTROLLER]},_getSwitchToDealerController:function(){return this.options[i.SWITCH_TO_DEALER_CONTROLLER]},_getAlternatePowertrainController:function(){return this.options[i.ALTERNATE_POWERTRAIN_CONTROLLER]},_getSelectedDealerController:function(){return this.options[i.SELECTED_DEALER_CONTROLLER]},_getPreferredDealersController:function(){return this.options[i.PREFERRED_DEALERS_CONTROLLER]},_getErrorVisibilityPersistence:function(){return this._errorVisibilityPersistence},_toggleErrorVisibility:function(b){(a.isUndefined(b)?this._getErrorVisibilityPersistence():b)?this._getErrorController().show():this._getErrorController().hide()},_onStateChange:function(){switch(this._state){case h.DEALER_SELECTED:this._getDealerListController().hide(),this._toggleErrorVisibility(!1),this._getLoaderController().hide(),this._getSelectedDealerController().show(),this._getSwitchToDealerController().hide(),this._getAlternatePowertrainController().hide(),this._getSearchController().hide().enable(),this._getPreferredDealersController().hide(),this._getIsHomeTestdriveEnabled()&&this._isHomeTestDriveSelected()&&this._getAddressFieldsController().show();break;case h.NO_RESULTS:(this._getIsHomeTestdriveEnabled()||this._getRealtimeServiceBookingEnabled())&&HELIOS.components&&HELIOS.components.c_019_11C&&HELIOS.components.c_019_11C.isFallbackEnabled&&this._homeTestDriveFallback(),this._getDealerListController().hide(),this._toggleErrorVisibility(!1),this._getLoaderController().hide(),this._getSearchController().show().enable(),this._getSelectedDealerController().hide(),this._getSwitchToDealerController().hide(),this._getPreferredDealersController().show(),this._isModelPowertrainConfigEnabled()&&(this._getAlternatePowertrainController().show(),$(d.ALTERNATE_POWERTRAIN.SELECTORS.NO_RESULTS_CONTAINER).addClass(b.CSS_CLASSES.DEALER_CALL_ERROR),$(d.ALTERNATE_POWERTRAIN.SELECTORS.ALTERNATE_OPTIONS_LABEL).hide(),$(d.ALTERNATE_POWERTRAIN.SELECTORS.NO_DEALER_ALTERNATE_OPTIONS).hide()),this._isExternalCallbackUrlEnabled()||this._isModelPowertrainConfigEnabled()||this._getSwitchToDealerController().show(),this._getEventAggregator().trigger(g.POSTAL_CODE_SEARCH_ZERO_RESULTS,this._isHomeTestDriveSelected());break;case h.NO_HOME_TESTDRIVE_RESULTS:this._isExternalCallbackUrlEnabled()||this._homeTestDriveFallback(!0),this._getDealerListController().hide(),this._toggleErrorVisibility(!1),this._getLoaderController().hide(),this._getSearchController().show().enable(),this._getSelectedDealerController().hide(),this._hideAddressFieldsController(),this._getPreferredDealersController().show(),this._isModelPowertrainEnabled()&&this._getAlternatePowertrainController().show(),this._isExternalCallbackUrlEnabled()||($("body").trigger("homeTestDriveFallbackFlow",!0),this._getSwitchToDealerController().show()),this._getEventAggregator().trigger(g.POSTAL_CODE_SEARCH_ZERO_RESULTS,this._isHomeTestDriveSelected());break;case h.ERROR:this._getIsHomeTestdriveEnabled()?(this._getDealerListController().hide(),this._hideAddressFieldsController(),this._getEventAggregator().trigger(g.FORM_
36SUBMISSION_ERROR,!0)):this._getRealtimeServiceBookingEnabled()||this._getRealtimeTestdriveBookingEnabled()||this._isModelPowertrainConfigEnabled()?(this._getDealerListController().hide(),this._isModelPowertrainEnabled()&&$(b.SELECTORS.ALTERNATE_OPTIONS+":checked").length&&this._getDealerListController().show()):this._getDealerListController().show(),this._getSwitchToDealerController().hide(),this._toggleErrorVisibility(!0),this._getLoaderController().hide(),this._getSearchController().show().enable(),this._getSelectedDealerController().hide(),this._getPreferredDealersController().show();break;case h.INITIALIZING:this._getDealerListController().hide(),this._hideAddressFieldsController(),this._getSwitchToDealerController().hide(),this._toggleErrorVisibility(!1),this._getLoaderController().show(),this._getSearchController().hide().enable(),this._getSelectedDealerController().hide(),this._getPreferredDealersController().hide(),this._getAlternatePowertrainController().hide();break;case h.SEARCH:this._getDealerListController().hide(),this._hideAddressFieldsController(),this._getSwitchToDealerController().hide(),this._toggleErrorVisibility(),this._getLoaderController().hide(),this._getSearchController().show().enable(),this._refreshDealerList(),this._getSelectedDealerController().hide(),this._getPreferredDealersController().show(),this._getAlternatePowertrainController().hide();break;case h.SEARCH_RESULTS:this._getDealerListController().show(),this._hideAddressFieldsController(),this._getSwitchToDealerController().hide(),this._toggleErrorVisibility(),this._getLoaderController().hide(),this._getSearchController().show().enable(),this._getSelectedDealerController().hide(),this._refreshDealerList(),this._getPreferredDealersController().show(),this._getAlternatePowertrainController().hide(),this._getIsHomeTestdriveEnabled()&&(this._isHomeTestDriveSelected()&&this._homeTestDriveAddressVerified&&(this._getAddressFieldsController().show(),this._getSearchController().hide().enable()),this._isExternalCallbackUrlEnabled()||$("body").trigger("disableRTBCalendar")),HELIOS.components&&HELIOS.components.c_019_39&&HELIOS.components.c_019_39.selectedPowertrainOption&&($("html, body").animate({scrollTop:$(d.MAIN.SELECTORS.DEALER_LIST).offset().top}),this._getAlternatePowertrainController().show()),this._getEventAggregator()&&this._getEventAggregator().trigger("onDealerChangeDataSource");break;case h.SEARCHING:this._getDealerListController().hide(),this._hideAddressFieldsController(),this._getSwitchToDealerController().hide(),this._toggleErrorVisibility(!1),this._getLoaderController().show(),this._getSearchController().show().disable(),this._getSelectedDealerController().hide(),this._getPreferredDealersController().show(),this._getAlternatePowertrainController().hide();break;case h.DISABLED:this._getDealerListController().hide(),this._hideAddressFieldsController(),this._getSwitchToDealerController().hide(),this._toggleErrorVisibility(),this._getLoaderController().hide(),this._getSearchController().show().disable(),this._getSelectedDealerController().hide(),this._getPreferredDealersController().hide(),this._getAlternatePowertrainController().hide(),this._getRealtimeServiceBookingEnabled()&&this._getSearchController().show().enable();break;case h.PREFERRED_LOCATION_ADDRESS:this._getDealerListController().hide(),this._getAddressFieldsController().show(),this._getSwitchToDealerController().hide(),this._toggleErrorVisibility(),this._getLoaderController().hide(),this._getSearchController().show().enable(),this._getSelectedDealerController().hide(),this._getPreferredDealersController().show(),this._getAlternatePowertrainController().hide(),this._isExternalCallbackUrlEnabled()||$("body").trigger("disableRTBCalendar");break;case h.ENTER_ADDRESS_MANUALLY:this._isHomeTestDrive?(this._getSearchController().hide().enable(),this._getAddressFieldsController().show()):(this._getSearchController().show().enable(),this._getAddressFieldsController().hide()),this._getDealerListController().hide(),this._getSwitchToDealerController().hide(),this._toggleErrorVisibility(),this._getLoaderController().hide(),this._getSelectedDealerController().hide(),this._getPreferredDealersController().show(),this._getAlternatePowertrainController().hide(),this._isExternalCallbackUrlEnabled()||$("body").trigger("disableRTBCalendar");break;case h.EDIT_HOME_ADDRESS:this._isHomeTestDrive&&(this._getSearchController().hide().enable(),this._getAddressFieldsController().show(),this._getDealerListController().hide(),this._getSwitchToDealerController().hide(),this._toggleErrorVisibility(),this._getLoaderController().hide(),this._getSelectedDealerController().hide(),this._getPreferredDealersController().show(),this._getAlternatePowertrainController().hide(),this._isExternalCallbackUrlEnabled()||$("body").trigger("disableRTBCalendar"));break;case h.CLEAR_ADDRESS_FIELDS:this._getSearchController().show().enable(),this._getAddressFieldsController().hide(),this._getDealerListController().hide(),this._getSwitchToDealerController().hide(),this._toggleErrorVisibility(),this._getLoaderController().hide(),this._getSelectedDealerController().hide(),this._getPreferredDealersController().show(),this._getAlternatePowertrainController().hide(),this._isExternalCallbackUrlEnabled()||$("body").trigger("disableRTBCalendar")}$("body").trigger("updateFcSliderHeight")},_hideAddressFieldsController:function(){this._getIsHomeTestdriveEnabled()&&this._getAddressFieldsController()&&this._getAddressFieldsController().hide()},goToPreviousState:function(){this.setState(this._previousState)},getCurrentState:function(){return this._state},_setStateLock:function(a){return this._stateLock=a,this},_isStateLocked:function(){return!!this._stateLock||!1},_setErrorVisibilityPersistence:function(a){return this._errorVisibilityPersistence=a,this},setState:function(a){return this._state===a||this._isStateLocked()||(this._previousState=this._state,this._state=a,this._onStateChange()),this},_getIsHomeTestdriveEnabled:function(){return this.options[i.HOME_TEST_DRIVE_ENABLED]},_homeTestDriveFallback:function(a){$("body").trigger("homeTestDriveFallbackFlow",a)},_onTestdriveTypeSwitch:function(a){this._isHomeTestDrive=a,this._isHomeTestDrive||this._hideAddressFieldsController(),$("body").trigger("disableRTBCalendar"),this._onStateChange()},_isHomeTestDriveSelected:function(){return this._isHomeTestDrive},_onHomeTestDriveAddressVerified:function(a){this._homeTestDriveAddressVerified=a},_setRealtimeServiceBookingEnabled:function(a){this._serviceBookingEnabled=a},_getRealtimeServiceBookingEnabled:function(){return this._serviceBookingEnabled},_getRealtimeTestdriveBookingEnabled:function(){return HELIOS&&HELIOS.components.c_019_31&&HELIOS.components.c_019_31.rtb},_isExternalCallbackUrlEnabled:function(){return f.loadItem("externalCallbackUrl",{mode:"sessionStorage"})},_isModelPowertrainEnabled:function(){return HELIOS.components.c_019_39&&HELIOS.components.c_019_39.powertrainEnabled},_isModelPowertrainConfigEnabled:function(){return HELIOS&&HELIOS.components&&HELIOS.components.c_019_39},_refreshDealerList:function(){if(void 0!==this._getSelectedDealerController().getLastDealerAdded()){var a=this._getSelectedDealerController().getLastDealerAdded(),b=this._getPreferredDealersController().getPreferredDealers();b.unshift(a),this._getSelectedDealerController().setLastDealerAdded(void 0),this._getPreferredDealersController().setPreferredDealers(b),this._getPreferredDealersController().renderView(),this._getSelectedDealerController().setPreferredDealers(b),this._getSearchController().setHasPreferredDealers(b.length>0)}}})}),define("c_019_25_TestDriveStockCheckController",["underscore","marionette","c_019_25_ControllerConstants","c_019_25_ApplicationConstants","c_019_25_ModuleConstants","remoteServices","logger","storageManager"],function(a,b,c,d,e,f,g,h){"use strict";function i(){return j||(j=new g({prefix:"C19.25 TestDriveStockCheckController"}))}var j,k=c.TEST_DRIVE_STOCK_CHECK.OPTIONS,l={keys:{dealerIdInForm:"dealerIdInForm",modelId:"modelId"}},m={keys:{lastVisitedVehicle:"lastVisitedVehicle",queryParamsData:"queryParamsData"},localStorage:{mode:"localStorage"},sessionStorage:{mode:"sessionStorage"}};return b.Object.extend({initialize:function(){this._dealersList={},this._errorState={modelNotFoundAtDealer:!1,modelUnavailable:!1,silent:!1},this._loadQueryParamsData(),this._getEventAggregator().trigger(d.EVENTS.LOCK_STATE,!0),this._setErrorSilence(this._isQueryParamInURL(l.keys.dealerIdInForm))},initValidation:function(){this._setSelectedVehicleData(this._lookUpVehicleData()),this._setDealerId(this._lookUpDealerIdInForm()),this._getSmartLocationData().done(a.bind(function(b){b&&(a.isUndefined(b.getDealerId())||this._setDealerId(b.getDealerId()),a.isUndefined(b.getUserAddress())||a.isUndefined(b.getUserLat())||a.isUndefined(b.getUserLng())||this._setSearchLocation(b))}
36,this)).always(a.bind(function(){this._validateBooking(),this._bindEvents()},this))},_bindEvents:function(){this._getEventAggregator().on(d.EVENTS.VEHICLE_SELECTION_CHANGED,this._onVehicleSelectionChange,this).on(d.EVENTS.SET_SELECTED_DEALER,this._onSetSelectedDealer,this).on(d.EVENTS.SET_SEARCH_LOCATION,this._onSearchLocationChange,this).on(d.EVENTS.DEALER_SEARCH_COMPLETE_ZERO_RESULTS,this._onNoStockFoundForModel,this)},getModelId:function(){return this._getSelectedVehicleData()&&this._getSelectedVehicleData().modelId},getTestDriveModelId:function(){return this._getSelectedVehicleData()&&this._getSelectedVehicleData().testDriveModelId},_getSelectedVehicleData:function(){return this._selectedVehicleData},_getDealerId:function(){return this._dealerId},_getSearchLocation:function(){return this._searchLocation},_getValidationActive:function(){return this._validationActive},_getDealersList:function(){return this._dealersList},_getQueryParamsData:function(){return this._queryParamsData},_getErrorModelNotFoundAtDealer:function(){return this._errorState.modelNotFoundAtDealer},_getErrorModelUnavailable:function(){return this._errorState.modelUnavailable},_getErrorSilence:function(){return this._errorState.silent},_setSelectedVehicleData:function(a){return a&&a.modelId&&this._isModelIdValid(a.modelId)||(a=null),a&&a.modelId&&this._saveSessionModelId(a.modelId),this._selectedVehicleData=a,this._getEventAggregator().trigger(d.EVENTS.TEST_DRIVE_MODEL_CHANGED,this._getSelectedVehicleData()),this},_setDealerId:function(b){return this._dealerId=a.isObject(b)?b.get(e.VEHICLE_SELECTOR.VIEW_MODEL.ATTRIBUTES.DEALER_ID):b,this},_setSearchLocation:function(a){return this._searchLocation=a,this},_setValidationActive:function(a){return this._validationActive=a,this},_setDealersList:function(a){return this._isModelIdSet()&&(this._dealersList[this.getModelId()]=a),this},_setQueryParamsData:function(a){return this._queryParamsData=a,this},_setErrorModelNotFoundAtDealer:function(a){return this._errorState.modelNotFoundAtDealer=a,this},_setErrorModelUnavailable:function(a){return this._errorState.modelUnavailable=a,this},_setErrorSilence:function(a){return this._errorState.silent=a,this},_isModelIdSet:function(){return!!this.getModelId()},_isDealerIdSet:function(){return!!this._getDealerId()},_isSearchLocationSet:function(){return!!this._getSearchLocation()},_isValidationActive:function(){return!!this._getValidationActive()},isModelNotFoundAtDealer:function(){return!!this._getErrorModelNotFoundAtDealer()},_isModelUnavailable:function(){return!!this._getErrorModelUnavailable()},_validateBooking:function(){this._isValidationActive()||(this._setValidationActive(!0),this._checkModelIsInStock().done(a.bind(function(a){a?this._setErrorModelNotFoundAtDealer(!1)._setErrorModelUnavailable(!1)._setErrorSilence(!1):this._setErrorModelNotFoundAtDealer(!0)._setErrorModelUnavailable(!1)},this)).always(a.bind(function(){this._setValidationActive(!1)._eventHandler()},this)))},_eventHandler:function(){i().debug("Current error state: "+JSON.stringify(this._errorState)),i().debug("Is test drive model currently set: "+this._isModelIdSet()),this._getEventAggregator().trigger(d.EVENTS.LOCK_STATE,!1),this._isModelUnavailable()&&this._isModelIdSet()?this._onNoStockFoundForModel():this.isModelNotFoundAtDealer()&&this._isModelIdSet()?this._noStockFoundAtDealer():(this._getEventAggregator().trigger(d.EVENTS.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,!1),this._isDealerIdSet()?this._getEventAggregator().trigger(d.EVENTS.SET_APPLICATION_STATE,d.STATES.DEALER_SELECTED).trigger(d.EVENTS.LOCK_STATE,!0):this._isSearchLocationSet()&&this._getEventAggregator().trigger(d.EVENTS.TRIGGER_SEARCH,this._getSearchLocation(),d.SEARCH_LOCATION_SOURCES.SMART_LOCATION).trigger(d.EVENTS.SET_APPLICATION_STATE,d.STATES.SEARCH_RESULTS))},_onVehicleSelectionChange:function(a){a&&this.getModelId()!==a.modelId&&(this._setSelectedVehicleData(a),this._saveSessionModelId(a.modelId)),this._getEventAggregator().trigger(d.EVENTS.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,!1),this._isModelIdSet()&&(this._getEventAggregator().trigger(d.EVENTS.NO_TEST_DRIVE_STOCK_FOUND,!1),this._val
36idateBooking()),this._isValidationActive()||this._setErrorSilence(!1)},_onSearchLocationChange:function(a){a&&a.location&&a.location.locationId&&this._setSearchLocation(a),this._getEventAggregator().trigger(d.EVENTS.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,!1),this._isValidationActive()||this._setErrorSilence(!1)},_onSetSelectedDealer:function(a,b){b!==d.SELECTED_DEALER_SOURCES.SMART_LOCATION&&(this._setDealerId(a),this._validateBooking())},_onNoStockFoundForModel:function(){this._getEventAggregator().trigger(d.EVENTS.NO_TEST_DRIVE_STOCK_FOUND,!0)},_checkModelIsInStock:function(){var b=$.Deferred();return this._isModelIdSet()&&this._isDealerIdSet()?this._getDealersList()[this.getModelId()]?b.resolve(this._isModelInStock(this._getDealersList()[this.getModelId()],this._getDealerId())):this._requestDealersList().done(a.bind(function(a){0===a.totalResults?(this._setErrorModelUnavailable(!0),b.reject()):(b.resolve(this._isModelInStock(a.dealers,this._getDealerId())),this._setDealersList(a.dealers))},this)).fail(b.reject):b.reject(),b},_requestDealersList:function(){var a={testDriveModel:this.getTestDriveModelId()};return f.getDealers("-1",a)},_isModelInStock:function(b,c){return!!a.findWhere(b,{dealerId:c})},_isModelIdValid:function(b){return!!a.findWhere(this._getVehicleData(),{modelId:b})},_noStockFoundAtDealer:function(){this._getErrorSilence()?(this._getEventAggregator().trigger(d.EVENTS.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,!1).trigger(d.EVENTS.SET_APPLICATION_STATE,d.STATES.SEARCH_RESULTS),this._setErrorSilence(!1)):this._getEventAggregator().trigger(d.EVENTS.NO_TEST_DRIVE_STOCK_FOUND_AT_DEALER).trigger(d.EVENTS.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,!0),this._isSearchLocationSet()&&this._getEventAggregator().trigger(d.EVENTS.TRIGGER_SEARCH,this._getSearchLocation(),d.SEARCH_LOCATION_SOURCES.SMART_LOCATION)},_getSmartLocationData:function(){var a=$.Deferred();return this._getSmartLocationContext().get().done(a.resolve).fail(a.reject),a},_loadQueryParamsData:function(){var a=h.loadItem(m.keys.queryParamsData,m.sessionStorage);a&&this._setQueryParamsData(a)},_lookUpDealerIdInForm:function(){return this._lookUpFromSession(l.keys.dealerIdInForm)},_lookUpVehicleData:function(){var b=this._loadURLVehicleId()||this._loadSessionVehicleId();return a.findWhere(this._getVehicleData(),{modelId:b})},_loadSessionVehicleId:function(){var a,b=h.loadItem(m.keys.lastVisitedVehicle,m.localStorage);return b&&(a=b),a},_loadURLVehicleId:function(){return this._lookUpFromSession(l.keys.modelId)},_saveSessionModelId:function(a){h.saveItem(m.keys.lastVisitedVehicle,a,m.localStorage)},_isQueryParamInURL:function(a){return new RegExp("[?&]"+a+"=").test(this._getWindow().location.search)},_lookUpFromSession:function(a){var b,c;if(a&&this._isQueryParamInURL(a))return c=this._getQueryParamsData(),c&&c[a]&&(b=c[a]),b},_getVehicleData:function(){return this.options[k.VEHICLE_DATA]},_getEventAggregator:function(){return this.options[k.EVENT_AGGREGATOR]},_getSmartLocationContext:function(){return this.options[k.SMART_LOCATION_CONTEXT]},_getWindow:function(){return this.options[k.WINDOW]}})}),define("hbars!/components/c_019-25/scripts/app/modules/addressFields/html/addressFieldsTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){return"hidden"},3:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'    <p class="home-help-text">'+a.escapeExpression((f=null!=(f=g(c,"homeHelpText")||(null!=b?g(b,"homeHelpText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"homeHelpText",hash:{},data:e,loc:{start:{line:4,column:30},end:{line:4,column:46}}}):f))+"</p>\n"},5:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'        <div class="form-group '+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"enableMandatory"):b,{name:"if",hash:{},fn:a.program(6,e,0),inverse:a.noop,data:e,loc:{start:{line:7,column:31},end:{line:7,column:71}}}))?f:"")+'" '+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"enableMandatory"):b,{name:"if",hash:{},fn:a.program(8,e,0),inverse:a.noop,data:e,loc:{start:{line:7,column:73},end:{line:7,column:125}}}))?f:"")+'>\n            <label for="'+a.escapeExpression((g=null!=(g=h(c,"fieldName")||(null!=b?h(b,"fieldName"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"fieldName",hash:{},data:e,loc:{start:{line:8,column:24},end:{line:8,column:37}}}):g))+'">'+a.escapeExpression((g=null!=(g=h(c,"fieldLabel")||(null!=b?h(b,"fieldLabel"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"fieldLabel",hash:{},data:e,loc:{start:{line:8,column:39},end:{line:8,column:53}}}):g))+'</label>\n            <input\n                type="text"\n'+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"enableEdit"):b,{name:"if",hash:{},fn:a.program(10,e,0),inverse:a.program(12,e,0),data:e,loc:{start:{line:11,column:16},end:{line:18,column:23}}}))?f:"")+'                class="full-address-field"\n                '+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"enableMandatory"):b,{name:"if",hash:{},fn:a.program(14,e,0),inverse:a.noop,data:e,loc:{start:{line:20,column:16},end:{line:20,column:96}}}))?f:"")+'\n                data-validation-customregex="'+a.escapeExpression((g=null!=(g=h(c,"errorMessage")||(null!=b?h(b,"errorMessage"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"errorMessage",hash:{},data:e,loc:{start:{line:21,column:45},end:{line:21,column:61}}
37}):g))+'"\n                data-validation-customregex-pattern="'+a.escapeExpression((g=null!=(g=h(c,"matchPattern")||(null!=b?h(b,"matchPattern"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"matchPattern",hash:{},data:e,loc:{start:{line:22,column:53},end:{line:22,column:69}}}):g))+'"\n                data-enable-postal-code-non-functional="'+a.escapeExpression((g=null!=(g=h(c,"enablePostalCodeNonFunctional")||(null!=b?h(b,"enablePostalCodeNonFunctional"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"enablePostalCodeNonFunctional",hash:{},data:e,loc:{start:{line:23,column:56},end:{line:23,column:89}}}):g))+'">\n'+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"enableEdit"):b,{name:"unless",hash:{},fn:a.program(16,e,0),inverse:a.noop,data:e,loc:{start:{line:24,column:12},end:{line:26,column:23}}}
37))?f:"")+'            <span class="error-message">'+a.escapeExpression((g=null!=(g=h(c,"errorMessage")||(null!=b?h(b,"errorMessage"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"errorMessage",hash:{},data:e,loc:{start:{line:27,column:40},end:{line:27,column:56}}}):g))+"</span>\n        </div>\n"},6:function(a,b,c,d,e){return" required "},8:function(a,b,c,d,e){return' aria-required="true" '},10:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'                id="'+a.escapeExpression((f=null!=(f=g(c,"fieldName")||(null!=b?g(b,"fieldName"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"fieldName",hash:{},data:e,loc:{start:{line:12,column:20},end:{line:12,column:33}}}):f))+'"\n                name="'+a.escapeExpression((f=null!=(f=g(c,"fieldName")||(null!=b?g(b,"fieldName"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"fieldName",hash:{},data:e,loc:{start:{line:13,column:22},end:{line:13,column:35}}}):f))+'"\n'},12:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'                id="disabled'+a.escapeExpression((f=null!=(f=g(c,"fieldName")||(null!=b?g(b,"fieldName"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"fieldName",hash:{},data:e,loc:{start:{line:15,column:28},end:{line:15,column:41}}}):f))+'"\n                name="disabled'+a.escapeExpression((f=null!=(f=g(c,"fieldName")||(null!=b?g(b,"fieldName"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"fieldName",hash:{},data:e,loc:{start:{line:16,column:30},end:{line:16,column:43}}}):f))+'"\n                disabled\n'},14:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'  data-validation-notblank="'+a.escapeExpression((f=null!=(f=g(c,"mandatoryMessage")||(null!=b?g(b,"mandatoryMessage"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"mandatoryMessage",hash:{},data:e,loc:{start:{line:20,column:67},end:{line:20,column:87}}}):f))+'" '},16:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'                <input type="hidden" id="'+a.escapeExpression((f=null!=(f=g(c,"fieldName")||(null!=b?g(b,"fieldName"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"fieldName",hash:{},data:e,loc:{start:{line:25,column:41},end:{line:25,column:54}}}):f))+'" name="'+a.escapeExpression((f=null!=(f=g(c,"fieldName")||(null!=b?g(b,"fieldName"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"fieldName",hash:{},data:e,loc:{start:{line:25,column:62},end:{line:25,column:75}}}):f))+'" />\n'},18:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'    <div class="home-test-drive-address-container hidden">\n        <h5 class="title">'+a.escapeExpression((f=null!=(f=g(c,"fullAddressLabel")||(null!=b?g(b,"fullAddressLabel"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"fullAddressLabel",hash:{},data:e,loc:{start:{line:38,column:26},end:{line:38,column:46}}}):f))+'</h5>\n        <div class="address"></div>\n        <div class="edit-home-address">\n            <button class="edit-home-address-cta" type="button"><span class="cta">'+a.escapeExpression((f=null!=(f=g(c,"editHomeAddressLabel")||(null!=b?g(b,"editHomeAddressLabel"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"editHomeAddressLabel",hash:{},data:e,loc:{start:{line:41,column:82},end:{line:41,column:106}}}):f))+"</span></button>\n        </div>\n    </div>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'\n<div class="full-address-container '+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isHomeTestDriveEnabled"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:2,column:35},end:{line:2,column:78}}}))?f:"")+'" id="fulladdresscontainerForm">\n'+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"homeHelpText"):b,{name:"if",hash:{},fn:a.program(3,e,0),inverse:a.noop,data:e,loc:{start:{line:3,column:0},end:{line:5,column:7}}}))?f:"")+(null!=(f=h(c,"each").call(null!=b?b:a.nullContext||{},null!=b?h(b,"userFullAddressFields"):b,{name:"each",hash:{},fn:a.program(5,e,0),inverse:a.noop,data:e,loc:{start:{line:6,column:4},end:{line:29,column:13}}}))?f:"")+'\n    <div class="htd-nearest-dealer-cta-container">\n        <button class="htd-nearest-dealer-cta" type="button">'+a.escapeExpression((g=null!=(g=h(c,"findDealerCtaLabel")||(null!=b?h(b,"findDealerCtaLabel"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"findDealerCtaLabel",hash:{},data:e,loc:{start:{line:32,column:61},end:{line:32,column:83}}}):g))+'</button>\n        <button class="clear-address-fields-cta" type="button"><span class="cta">'+a.escapeExpression((g=null!=(g=h(c,"clearAddressFieldsLabel")||(null!=b?h(b,"clearAddressFieldsLabel"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"clearAddressFieldsLabel",hash:{},data:e,loc:{start:{line:33,column:81},end:{line:33,column:108}}}):g))+"</span></button>\n    </div>\n</div>\n"+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isHomeTestDriveEnabled"):b,{name:"if",hash:{},fn:a.program(18,e,0),inverse:a.noop,data:e,loc:{start:{line:36,column:0},end:{line:44,column:7}}}))?f:"")},useData:!0}
37)}),define("c_019_25_AddressFieldsView",["marionette","underscore","hbars!/components/c_019-25/scripts/app/modules/addressFields/html/addressFieldsTemplate","c_019_25_ModuleConstants","c_019_25_ApplicationConstants","profileManager","heliosObject","autocompleteContext","handlebars"],function(a,b,c,d,e,f,g,h,i){"use strict";var j=d.ADDRESS_FIELDS.VIEW_MODEL.ATTRIBUTES,k=d.ADDRESS_FIELDS.SELECTORS,l=d.GENERIC_CSS_CLASSES,m=d.MAIN.SELECTORS.ADDRESS_FIELDS,n=d.MAIN.SELECTORS.SEARCH,o=d.SEARCH.SELECTORS.DEALER_SEARCH_LOCATOR,p=d.MAIN.SELECTORS.SWITCH_TO_DEALER,q=d.MAIN.SELECTORS.DATEPICKER,r=d.MAIN.SELECTORS.SUBMIT_FORM,s=d.SEARCH.SELECTORS.ENTER_ADDRESS_MANUALLY_BUTTON;return a.ItemView.extend({template:c,ui:{fullAddressContainer:".full-address-container",nearestDealerCtaContainer:".htd-nearest-dealer-cta-container",nearestDealerCta:".htd-nearest-dealer-cta",homeTestDriveAddressContainer:".home-test-drive-address-container",homeTestDriveAddress:".home-test-drive-address-container .address",editHomeAddressCta:".home-test-drive-address-container .edit-home-address-cta",clearAddressFieldsCta:".clear-address-fields-cta",postalCodeAddressField:"#PostalCode"},events:{"click @ui.nearestDealerCta":"_onNearestDealerButtonClick","click @ui.editHomeAddressCta":"_onEditHomeAddressButtonClick","click @ui.clearAddressFieldsCta":"_onClearAddressFieldsButtonClick","keyup @ui.postalCodeAddressField":"_onPostalCodeAdrressFieldChange"},initialize:function(){f.init({HELIOS:g}),this._bindEvents()},_bindEvents:function(){this._getEventAggregator().on(e.EVENTS.SET_SEARCH_LOCATION,this._onSearchLocationSet,this).on(e.EVENTS.PRE_SELECT_NEAREST_DEALER,this._preSelectNearestDealer,this).on(e.EVENTS.NEAREST_HOME_ADDRESS_DEALER,this._getNearestHomeAddressDealer,this).on(e.EVENTS.SWITCH_TEST_DRIVE,this._onTestdriveTypeSwitch,this).on(e.EVENTS.ENTER_ADDRESS_MANUALLY,this._onEnterAddressManually,this).on(e.EVENTS.PRE_SELECT_WHEN_ADDRESS_NOT_VERIFIED,this._preSelectedDealer,this).on(e.EVENTS.POSTAL_CODE_SEARCH_ZERO_RESULTS,this._onPostalCodeAdrressFieldSearch,this).on(e.EVENTS.DEALER_SEARCH_COMPLETE_ZERO_RESULTS,this._setIsDealerResultsLoaded,this).on(e.EVENTS.DEALER_SEARCH_COMPLETE,this._setIsDealerResultsLoaded,this).on(e.EVENTS.FORM_SUBMISSION_ERROR,this._setIsFormSubmitError,this).on(e.EVENTS.HIDE_NEAREST_DEALER_CTA,this._hideNearestDelaerCta,this).on(e.EVENTS.ON_UPDATE_ADDRESS_FIELDS_ONLOAD,this._onUpdateAddressFieldsOnLoad,this),$(r).click(function(){setTimeout(function(){this._showSubmissionError()}.bind(this),500)}.bind(this))},_onSearchLocationSet:function(a,b){this.hiddenErrorScreen=!1,this._setSearchLocation(a),this.formbuilderloaded&&this._onUpdateAddressFieldsOnLoad()},_onUpdateAddressFieldsOnLoad:function(){var a=this.model.get(j.USER_FULL_ADDRESS_FIELDS)||[],b=this._getSearchLocation(),c=b&&b.location&&b.location.addressComponents,d="";this.hiddenErrorScreen=!1,this.formbuilderloaded=!0,this._getEventAggregator().trigger(e.EVENTS.CLEAR_ADDRESS_FIELDS,!1),c&&!this._isFullAddressFieldsValid()&&(this._clearAddressFields(),a.forEach(function(a){d=this._findFieldvalue(c,a.googleApiMapping),$("#"+a.fieldName).val(d),$("#disabled"+a.fieldName).val(d)}.bind(this))),this._isFullAddressFieldsValid()?(this._getEventAggregator().trigger(e.EVENTS.HOME_TEST_DRIVE_ADDRESS_VERIFIED,!0),this.isHomeTestDriveAddressVerified=!0):(this.ui.homeTestDriveAddressContainer.addClass(l.HIDDEN),this.ui.fullAddressContainer.removeClass(l.HIDDEN),this.ui.nearestDealerCtaContainer.removeClass(k.ADDRESS_VERIFIED_CLASS),this.ui.fullAddressContainer.find(k.FORM_ERROR).removeClass(e.CSS_CLASSES.FORM_GROUP_ERROR),this._getEventAggregator().trigger(e.EVENTS.HOME_TEST_DRIVE_ADDRESS_VERIFIED,!1),this.isHomeTestDriveAddressVerified=!1)},_findFieldvalue:function(a,b){var c="";return a.forEach(function(a){-1!=a.types.indexOf(b)&&(c=a.long_name)}),c},_clearAddressFields:function(){this.ui.fullAddressContainer.find(k.ADDRESS_FIELD).val(""),this.ui.fullAddressContainer.find(k.FORM_ERROR).removeClass(e.CSS_CLASSES.FORM_GROUP_ERROR),this.ui.fullAddressContainer.find(k.FORM_COMPLETE).removeClass(e.CSS_CLASSES.FORM_GROUP_COMPLETE),this.ui.nearestDealerCtaContainer.removeClass(k.ADDRESS_VERIFIED_CLASS),this._getEventAggregator().trigger(e.EVENTS.HOME_TEST_DRIVE_ADDRESS_VERIFIED,!1)},_onNearestDealerButtonClick:function(a){this._isFullAddressFieldsValid()?(this.ui.nearestDealerCtaContainer.addClass(k.ADDRESS_VERIFIED_CLASS),this._getEventAggregator().trigger(e.EVENTS.HOME_TEST_DRIVE_ADDRESS_VERIFIED,!0),this.isHomeTestDriveAddressVerified=!0,this._setHomeTestDriveAddress(this._getAddressFieldsValueMapping()),this.ui.homeTestDriveAddressContainer.removeClass(l.HIDDEN),this.ui.fullAddressContainer.addClass(l.HIDDEN),this.isPostalCodeSearch&&this.postalCodeSearchLocation&&(this.postalCodeSearchLocation.location.lat||this.postalCodeSearchLocation.location.lng)&&(f.deleteData("location"),this._getEventAggregator().trigger(e.EVENTS.POSTAL_CODE_ADDRESS_FIELD_SEARCH,this.postalCodeSearchLocation),$(n).find(d.MAIN.SELECTORS.LOCATION_INPUT).val(this.postalCodeSearchLocation.location.address)),this._isPreSelectEnabled?this._nearestHomeAddressDealer?this._getEventAggregator().trigger(e.EVENTS.SET_SELECTED_DEALER,this._nearestHomeAddressDealer):this._getEventAggregator().trigger(e.EVENTS.SET_SELECTED_DEALER,this._preselectedDealerId,e.SELECTED_DEALER_SOURCES.PRE_SELECT):this.model.get(j.IS_DEALERS_LOADED)&&this._getEventAggregator().trigger(e.EVENTS.SET_APPLICATION_STATE,e.STATES.SEARCH_RESULTS),this.model.get(j.IS_EXTERNAL_JOURNEY)||!1!==this.model.get(j.IS_DEALERS_LOADED)||!this.hiddenErrorScreen||this.isPostalCodeSearch||(this._show(p),$(q).prop("disabled",!1),$("body").trigger(e.EVENTS.HOME_TESTDRIVE_FALLBACK_FLOW)),this.isPostalCodeSearch=!1,$("html, body").animate({scrollTop:$(".c_019-25.initialized").offset().top})):$(".full-address-container .form-group.error").length&&$("html, body").animate({scrollTop:$(".full-address-container .form-group.error").first().offset().top}),!0!==a&&this._getEventAggregator().trigger(e.EVENTS.FIND_NEAREST_DEALER)},_isFullAddressFieldsValid:function(){var a=this.model.get(j.USER_FULL_ADDRESS_FIELDS)||[],b=$(k.C_019_FORM),c=b.validate(),d=!0;
37return a.forEach(function(a){c.element("#"+a.fieldName)||(d=!1)}),d},_getEventAggregator:function(){return this.options[d.ADDRESS_FIELDS.OPTIONS.EVENT_AGGREGATOR]},_setSearchLocation:function(a){return this._searchLocation=a,this},_getSearchLocation:function(){return this._searchLocation},_isSearchLocationSet:function(){return!!this._getSearchLocation()},_getNearestHomeAddressDealer:function(a){this._nearestHomeAddressDealer=a,this.isHomeTestDriveAddressVerified&&this._onNearestDealerButtonClick(!0)},_preSelectNearestDealer:function(a){this._isPreSelectEnabled=a},_preSelectedDealer:function(a){this._preselectedDealerId=a},_setHomeTestDriveAddress:function(a){this.ui.homeTestDriveAddress.html(this._getFormattedAddress(a))},_getAddressFieldsValueMapping:function(){var a=this.model.get(j.USER_FULL_ADDRESS_FIELDS)||[],b="",c={};return a.forEach(function(a){b=$("#"+a.fieldName).val(),c[a.fieldName]=b}.bind(this)),c},_getFormattedAddress:function(a){var c,d=a||{},f=e.ADDRESS_FIELDS.SPECIAL_FIELDS,g=b.pluck(f,"ID"),h=b.chain(this.model.get(j.USER_FULL_ADDRESS_FIELDS_FORMATTING)).pluck("id").filter(function(a){return d[a]||b.contains(g,a)}).map(function(a){return b.contains(g,a)?b.findWhere(f,{ID:a}).EXPRESSION:"customerAddressLine3"===a?"<span>{{"+a+"}}</span>":"{{"+a+"}}"}).value().join("");return h=h.replace(new RegExp("("+f.ITEM_SEPARATOR.EXPRESSION+"){2,}","g"),f.ITEM_SEPARATOR.EXPRESSION),h=h.replace(new RegExp("(^("+f.ITEM_SEPARATOR.EXPRESSION+")*|("+f.ITEM_SEPARATOR.EXPRESSION+")*$)","g"),""),h=h.replace(new RegExp(f.NEW_LINE.EXPRESSION+f.ITEM_SEPARATOR.EXPRESSION,"g"),f.NEW_LINE.EXPRESSION),h=h.replace(new RegExp("("+f.NEW_LINE.EXPRESSION+"){2,}","g"),f.NEW_LINE.EXPRESSION),h=h.replace(new RegExp("(^"+f.NEW_LINE.EXPRESSION+"|"+f.NEW_LINE.EXPRESSION+"$)","g"),""),c=i.compile(h),c(b.extend({},d,b.object(g,b.pluck(f,"HTML"))))},_onTestdriveTypeSwitch:function(a){if(a&&this._isSearchLocationSet()&&this.isHomeTestDriveAddressVerified&&this.ui.homeTestDriveAddressContainer.removeClass(l.HIDDEN),a){var b=this.model.get(j.USER_FULL_ADDRESS_FIELDS)||[],c=this._getSearchLocation(),d=c&&c.location&&c.location.addressComponents,f="";this.hiddenErrorScreen=!1,this._getEventAggregator().trigger(e.EVENTS.CLEAR_ADDRESS_FIELDS,!1),d&&!this._isFullAddressFieldsValid()&&(this._clearAddressFields(),b.forEach(function(a){f=this._findFieldvalue(d,a.googleApiMapping),$("#"+a.fieldName).val(f),$("#disabled"+a.fieldName).val(f)}.bind(this))),this._isFullAddressFieldsValid()?(this._getEventAggregator().trigger(e.EVENTS.HOME_TEST_DRIVE_ADDRESS_VERIFIED,!0),this.isHomeTestDriveAddressVerified=!0):(this.ui.homeTestDriveAddressContainer.addClass(l.HIDDEN),this.ui.fullAddressContainer.removeClass(l.HIDDEN),this.ui.nearestDealerCtaContainer.removeClass(k.ADDRESS_VERIFIED_CLASS),this.ui.fullAddressContainer.find(k.FORM_ERROR).removeClass(e.CSS_CLASSES.FORM_GROUP_ERROR),this._getEventAggregator().trigger(e.EVENTS.HOME_TEST_DRIVE_ADDRESS_VERIFIED,!1),this.isHomeTestDriveAddressVerified=!1)}},_onEnterAddressManually:function(){this.ui.homeTestDriveAddressContainer.addClass(l.HIDDEN),this.ui.fullAddressContainer.removeClass(l.HIDDEN),this._getEventAggregator().trigger(e.EVENTS.ADD_EDIT_CLEAR_ADDRESS_LINKS,e.ANALYTICS.ENTER_ADDRESS_MANUALLY)},_onEditHomeAddressButtonClick:function(){this.ui.homeTestDriveAddressContainer.addClass(l.HIDDEN),this.ui.fullAddressContainer.removeClass(l.HIDDEN),this.ui.nearestDealerCtaContainer.removeClass(k.ADDRESS_VERIFIED_CLASS),this._getEventAggregator().trigger(e.EVENTS.HOME_TEST_DRIVE_ADDRESS_VERIFIED,!1),this._getEventAggregator().trigger(e.EVENTS.SET_APPLICATION_STATE,e.STATES.EDIT_HOME_ADDRESS),this.isHomeTestDriveAddressVerified=!1,this.hiddenErrorScreen=!0,this.model.get(j.IS_EXTERNAL_JOURNEY)&&(this.ui.nearestDealerCta.addClass(l.HIDDEN),$(q).prop("disabled",!1)),this._getEventAggregator().trigger(e.EVENTS.ADD_EDIT_CLEAR_ADDRESS_LINKS,e.ANALYTICS.EDIT_ADDRESS)},_onClearAddressFieldsButtonClick:function(){this._clearAddressFields(),this._getEventAggregator().trigger(e.EVENTS.CLEAR_ADDRESS_FIELDS,!0),this._getEventAggregator().trigger(e.EVENTS.HOME_TEST_DRIVE_ADDRESS_VERIFIED,!1),this.isHomeTestDriveAddressVerified=!1,this._getEventAggregator().trigger(e.EVENTS.SET_APPLICATION_STATE,e.STATES.CLEAR_ADDRESS_FIELDS),this._getEventAggregator().trigger(e.EVENTS.CLEAR_SELECTED_DEALER,!1),$(n).removeClass(l.HIDDEN),f.deleteData("location"),f.deleteData("postalCode"),this.model.get(j.IS_EXTERNAL_JOURNEY)?($(s).removeClass(l.HIDDEN).removeClass(l.DISABLED),$(q).prop("disabled",!1)):f.deleteData("dealerLocation"),this._getEventAggregator().trigger(e.EVENTS.ADD_EDIT_CLEAR_ADDRESS_LINKS,e.ANALYTICS.CLEAR_ADDRESS),$("body").trigger("clearSearchLocation")},_onPostalCodeAdrressFieldChange:function(){var a,b=this.ui.postalCodeAddressField.val();b.length>4&&"true"!=this.ui.postalCodeAddressField.attr(j.POSTAL_CODE_NON_FUNCTIONAL)&&(this.isPostalCodeSearch=!0,this.postalCodeSearchLocation=null,j.POSTAL_CODE_SEARCH=this.isPostalCodeSearch,a=new h({COUNTRY_CODE:HELIOS.config.common.countryCode,window:window}),a.getLocationaDetailsFromPostalCode(b).done(function(a){this.postalCodeSearchLocation=a}.bind(this)).fail(function(){this._showPostalCodeError()}.bind(this)))},_onPostalCodeAdrressFieldSearch:function(a){a?($(n).addClass(l.HIDDEN),this._show(m),this._isFullAddressFieldsValid()?(this.ui.fullAddressContainer.addClass(l.HIDDEN),this.ui.homeTestDriveAddressContainer.removeClass(l.HIDDEN)):(this._hide(p),this.ui.fullAddressContainer.find(k.FORM_ERROR).removeClass(e.CSS_CLASSES.FORM_GROUP_ERROR),this.model.get(j.IS_EXTERNAL_JOURNEY)||$(q).prop("disabled",!0),this.hiddenErrorScreen=!0)):($(n).removeClass(l.HIDDEN),this._hide(m)),this.isFormSubmissionError=!1},_setIsDealerResultsLoaded:function(a){a&&a.length?this.model.setIsDealerResultsLoaded(!0):(this.model.setIsDealerResultsLoaded(!1),this._getNearestHomeAddressDealer())},_setIsFormSubmitError:function(a){this.isFormSubmissionError=a},_showPostalCodeError:function(){this.ui.postalCodeAddressField.val(""),this.ui.postalCodeAddressField.parent().removeClass(e.CSS_CLASSES.FORM_GROUP_COMPLETE).addClass(e.CSS_CLASSES.FORM_GROUP_ERROR),$(this.ui.postalCodeAddressField).siblings(d.ERROR.SELECTORS.ERROR_MESSAGE).text(this.model.get(j.POSTAL_CODE_ERROR))},_showSubmissionError:function(){this.model.get(j.IS_TYPE_HOME_TEST_DRIVE)&&this.isFormSubmissionError&&(this._isFullAddressFieldsValid()?$(o).removeClass(l.HIDDEN):this._show(m))},_show:function(a){$(a).css({display:"block"})},_hide:function(a){$(a).css({display:"none"})},_hideNearestDelaerCta:function(a){this.ui.nearestDealerCta.addClass(l.HIDDEN)}})}),define("c_019_25_AddressFieldsViewModel",["backbone","c_019_25_ModuleConstants"],function(a,b){"use strict";var c=b.ADDRESS_FIELDS.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({initialize:function(a){this.options=a||{}},setUserFullAddressFields:function(a){return this.set(c.USER_FULL_ADDRESS_FIELDS,a),this},setHomeFindDealerCtaLabel:function(a){return this.set(c.HOME_FIND_DEALER_LABEL,a),this},setIsHomeTestDriveEnabled:function(a){return this.set(c.HOME_TEST_DRIVE_ENABLED,a),this},setUserFullAddressFieldsFormatting:function(a){this.set(c.USER_FULL_ADDRESS_FIELDS_FORMATTING,a)},setTypeIsHomeTestDrive:function(a){return this.set(c.IS_TYPE_HOME_TEST_DRIVE,a),this},setHomeAddressLabel:function(a){return this.set(c.FULL_ADDRESS_LABEL,a),this},setEditHomeAddressLabel:function(a){return this.set(c.EDIT_HOME_ADDRESS_LABEL,a),this},setHomeHelpText:function(a){return this.set(c.HOME_HELP_TEXT,a),this},setClearAddressFieldsLabel:function(a){return this.set(c.CLEAR_ADDRESS_FIELDS_LABEL,a),this},setPostalCodeErrorMessage:function(a){return this.set(c.POSTAL_CODE_ERROR,a),this},setIsDealerResultsLoaded:function(a){return this.set(c.IS_DEALERS_LOADED,a),this},setIsExternalJourneyValue:function(a){return this.set(c.IS_EXTERNAL_JOURNEY,a),this}})}),define("c_019_25_AddressFieldsController",["c_019_25_ApplicationConstants","c_019_25_ControllerBase","c_019_25_ModuleConstants","c_019_25_AddressFieldsView","c_019_25_AddressFieldsViewModel"],function(a,b,c,d,e){"use strict";c.ADDRESS_FIELDS.VIEW_MODEL.ATTRIBUTES;return b.extend({initialize:function(a){this.options=$.extend(this.options,{},a),this.options.region&&this.options.region.show(this._getView()),this._bindEvents()},_bindEvents:function(){var b=this.getEventAggregator();b&&b.on(a.EVENTS.SWITCH_TEST_DRIVE,this._onTestdriveTypeSwitch,this)},_getModel:function(){var a;return this._model||(a=this.getContentModel(),this._model=new e,this._model.setUserFullAddressFields(a.getUserFullAddressFields()),this._model.setHomeFindDealerCtaLabel(a.getHomeFindDealerCtaLabel()),this._model.setIsHomeTestDriveEnabled(this.getWindow().HELIOS.components.c_019_31&&this.getWindow().HELIOS.components.c_019_31.homeTestDriveEnabled),this._model.setUserFullAddressFieldsFormatting(a.getUserFullAddressFieldsFormatting()),this._model.setHomeAddressLabel(a.getHomeAddressLabel()),this._model.setEditHomeAddressLabel(a.getEditHomeAddressLabel()),this._model.setClearAddressFieldsLabel(a.getClearAddressFieldsLabel()),this._model.setPostalCodeErrorMessage(
37a.getPostalCodeErrorMessage()),this._model.setIsExternalJourneyValue(a.getIsExternalJourneyValue()),this._model.setHomeHelpText(a.getHomeHelpText())),this._model},_getView:function(){var a;return this._view||(a={model:this._getModel()},a[c.SEARCH.VIEW.OPTIONS.COUNTRY_CODE]=this.getWindow().HELIOS.config.common.countryCode,a[c.SEARCH.VIEW.OPTIONS.EVENT_AGGREGATOR]=this.getEventAggregator(),a[c.SEARCH.VIEW.OPTIONS.WINDOW]=this.getWindow(),this._view=new d(a)),this._view},_onTestdriveTypeSwitch:function(a){this._model.setTypeIsHomeTestDrive(a)}})}),define("c_019_25_SwitchToDealerViewModel",["backbone","c_019_25_ModuleConstants"],function(a,b){"use strict";var c=b.SWITCH_TO_DEALER.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({initialize:function(a){this.options=a||{}},setLocationNotAvailableMessage:function(a){return this.set(c.LOCATION_NOT_AVAILABLE_MESSAGE,a),this},setSwitchToDTDLabel:function(a){return this.set(c.SWITCH_TO_DTD_LABEL,a),this},setJourneySeparatorLabel:function(a){return this.set(c.JOURNEY_SEPARATOR_LABEL,a),this},setHomeTDFallbackLabel:function(a){return this.set(c.HOME_TD_FALLBACK_LABEL,a),this}})}),define("hbars!/components/c_019-25/scripts/app/modules/switchToDealer/html/switchToDealerTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<div class="home-testdrive-fallback-label">\n    '+a.escapeExpression((f=null!=(f=g(c,"homeTDFallbackLabel")||(null!=b?g(b,"homeTDFallbackLabel"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"homeTDFallbackLabel",hash:{},data:e,loc:{start:{line:6,column:4},end:{line:6,column:27}}}):f))+"\n</div>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<div class="error">\n    <span class="error-message home-testdrive-validation">'+a.escapeExpression((g=null!=(g=h(c,"locationNotAvailableMessage")||(null!=b?h(b,"locationNotAvailableMessage"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"locationNotAvailableMessage",hash:{},data:e,loc:{start:{line:2,column:58},end:{line:2,column:89}}}):g))+"</span>\n</div>\n"+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"homeTDFallbackLabel"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:4,column:0},end:{line:8,column:7}}}))?f:"")},useData:!0})}),define("c_019_25_SwitchToDealerView",["marionette","hbars!/components/c_019-25/scripts/app/modules/switchToDealer/html/switchToDealerTemplate"],function(a,b){"use strict";return a.ItemView.extend({template:b})}),define("c_019_25_SwitchToDealerController",["c_019_25_ControllerBase","c_019_25_ModuleConstants","c_019_25_SwitchToDealerViewModel","c_019_25_SwitchToDealerView"],function(a,b,c,d){"use strict";return a.extend({initialize:function(a){this.options=$.extend(this.options,{},a),this.options.region&&this.options.region.show(this._getView())},_getModel:function(){var a;return this._model||(a=this.getContentModel(),this._model=new c),this._model.setLocationNotAvailableMessage(a.getLocationNotAvailableMessage()),this._model.setSwitchToDTDLabel(a.getSwitchToDTDLabel()),this._model.setJourneySeparatorLabel(a.getJourneySeparatorLabel()),this._model.setHomeTDFallbackLabel(a.getHomeTDFallbackLabel()),this._model},_getView:function(){var a;return this._view||(a={model:this._getModel()},a[b.SEARCH.VIEW.OPTIONS.COUNTRY_CODE]=this.getWindow().HELIOS.config.common.countryCode,a[b.SEARCH.VIEW.OPTIONS.EVENT_AGGREGATOR]=this.getEventAggregator(),a[b.SEARCH.VIEW.OPTIONS.WINDOW]=this.getWindow(),this._view=new d(a)),this._view}})}),define("hbars!/components/c_019-25/scripts/app/modules/preferredDealers/html/preferredDealersTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e,f,g){var h,i,j=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'        <div class="form-group required">\n            <label class="location-label" for="'+a.escapeExpression((i=null!=(i=j(c,"locationSearchElementId")||(null!=b?j(b,"locationSearchElementId"):b))?i:a.hooks.helperMissing,"function"==typeof i?i.call(null!=b?b:a.nullContext||{},{name:"locationSearchElementId",hash:{},data:e,loc:{start:{line:4,column:47},end:{line:4,column:74}}}):i))+'">'+a.escapeExpression((i=null!=(i=j(c,"enterLocationText")||(null!=b?j(b,"enterLocationText"):b))?i:a.hooks.helperMissing,"function"==typeof i?i.call(null!=b?b:a.nullContext||{},{name:"enterLocationText",hash:{},data:e,loc:{start:{line:4,column:76},end:{line:4,column:97}}}):i))+'</label>\n            <div class="form-group-container">\n                <p class="preferred-dealers__disclaimer">'+a.escapeExpression((i=null!=(i=j(c,"preferredDealerText")||(null!=b?j(b,"preferredDealerText"):b))?i:a.hooks.helperMissing,"function"==typeof i?i.call(null!=b?b:a.nullContext||{},{name:"preferredDealerText",hash:{}
vendor: 1,228 bytes, line 37
37,data:e,loc:{start:{line:6,column:57},end:{line:6,column:80}}}):i))+'</p>\n                <ul class="preferred-dealers__list">\n'+(null!=(h=j(c,"each").call(null!=b?b:a.nullContext||{},(j(c,"showMore")||b&&j(b,"showMore")||a.hooks.helperMissing).call(null!=b?b:a.nullContext||{},null!=b?j(b,"dealers"):b,null!=b?j(b,"showAll"):b,{name:"showMore",hash:{},data:e,loc:{start:{line:8,column:28},end:{line:8,column:54}}}),{name:"each",hash:{},fn:a.program(2,e,0,f,g),inverse:a.noop,data:e,loc:{start:{line:8,column:20},end:{line:18,column:29}}}))?h:"")+"                </ul>\n"+(null!=(h=j(c,"if").call(null!=b?b:a.nullContext||{},(j(c,"hasMore")||b&&j(b,"hasMore")||a.hooks.helperMissing).call(null!=b?b:a.nullContext||{},null!=b?j(b,"dealers"):b,{name:"hasMore",hash:{},data:e,loc:{start:{line:20,column:22},end:{line:20,column:39}}}),{name:"if",hash:{},fn:a.program(4,e,0,f,g),inverse:a.noop,data:e,loc:{start:{line:20,column:16},end:{line:29,column:23}}}))?h:"")+"            </div>\n        </div>\n"},2:function(a,b,c,d,e,f,g){var h,i=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'                        <li>\n                            <p class="preferred-dealers__name">
37'+a.escapeExpression((h=null!=(h=i(c,"name")||(null!=b?i(b,"name"):b))?h:a.hooks.helperMissing,"function"==typeof h?h.call(null!=b?b:a.nullContext||{},{name:"name",hash:{},data:e,loc:{start:{line:10,column:63},end:{line:10,column:71}}}):h))+'</p>\n                            <button\n                                data-id="'+a.escapeExpression((h=null!=(h=i(c,"id")||(null!=b?i(b,"id"):b))?h:a.hooks.helperMissing,"function"==typeof h?h.call(null!=b?b:a.nullContext||{},{name:"id",hash:{},data:e,loc:{start:{line:12,column:41},end:{line:12,column:47}}}):h))+'"\n                                data-name="'+a.escapeExpression((h=null!=(h=i(c,"name")||(null!=b?i(b,"name"):b))?h:a.hooks.helperMissing,"function"==typeof h?h.call(null!=b?b:a.nullContext||{},{name:"name",hash:{},data:e,loc:{start:{line:13,column:43},end:{line:13,column:51}}}):h))+'"\n                                class="preferred-dealers__dealer"\n                                type="button"\n                            >'+a.escapeExpression(a.lambda(null!=g[1]?i(g[1],"selectDealerText"):g[1],b))+"</button>\n                        </li>\n"},4:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return null!=(f=g(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?g(b,"showAll"):b,{name:"unless",hash:{},fn:a.program(5,e,0),inverse:a.noop,data:e,loc:{start:{line:21,column:20},end:{line:28,column:31}}}))?f:""},5:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'                    <div class="preferred-dealers__actions">\n                        <button\n                            class="preferred-dealers__show-more"\n                            type="button"\n                        >'+a.escapeExpression((f=null!=(f=g(c,"viewMoreText")||(null!=b?g(b,"viewMoreText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"viewMoreText",hash:{},data:e,loc:{start:{line:26,column:25},end:{line:26,column:41}}}):f))+"</button>\n                    </div>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e,f,g){var h,i=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<div class="preferred-dealers__container">\n'+(null!=(h=i(c,"unless").call(null!=b?b:a.nullContext||{},(i(c,"isEmpty")||b&&i(b,"isEmpty")||a.hooks.helperMissing).call(null!=b?b:a.nullContext||{},null!=b?i(b,"dealers"):b,{name:"isEmpty",hash:{},data:e,loc:{start:{line:2,column:14},end:{line:2,column:31}}}),{name:"unless",hash:{},fn:a.program(1,e,0,f,g),inverse:a.noop,data:e,loc:{start:{line:2,column:4},end:{line:32,column:15}}}))?h:"")+"</div>"},useData:!0,useDepths:!0})}),define("c_019_25_PreferredDealersView",["marionette","c_019_25_CommonConstants","c_019_25_ApplicationConstants","hbars!/components/c_019-25/scripts/app/modules/preferredDealers/html/preferredDealersTemplate"],function(a,b,c,d){"use strict";var e=c.EVENTS;return a.ItemView.extend({modelEvents:function(){var a={};return a["change:dealers"]="_onDealersChange",a},template:d,templateHelpers:{isEmpty:function(a){return!a||0===a.length},showMore:function(a,b){return b?a:a.slice(0,5)},hasMore:function(a){return a.length>5}},ui:{dealer:".preferred-dealers__dealer",showMore:".preferred-dealers__show-more"},events:{"click @ui.dealer":"_onSelectDealer","click @ui.showMore":"_onToggleShowMore"},_getEventAggregator:function(){
38return this.options[b.OPTIONS.EVENT_AGGREGATOR]},_onDealersChange:function(a,b){this.render()},_onSelectDealer:function(a){var b,d=a.currentTarget.dataset,f=d.id;this.model.getShowAll()&&(this.model.setShowAll(!1),this.render()),this._getEventAggregator().trigger(e.SET_SELECTED_DEALER,f,c.SELECTED_DEALER_SOURCES.MY_PAGE_USER_SELECT,b,void 0,!0)},_onToggleShowMore:function(a){this._getEventAggregator().trigger(e.ADD_EDIT_CLEAR_ADDRESS_LINKS,c.ANALYTICS.VIEW_MORE_CTA),this.model.setShowAll(!this.model.getShowAll()),this.render()}})}),define("c_019_25_PreferredDealersModel",["backbone","c_019_25_ModuleConstants"],function(a,b){"use strict";var c=b.PREFERRED_DEALERS.VIEW_MODEL.ATTRIBUTES,d=b.SEARCH.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({setEnterLocationText:function(a){return this.set(c.ENTER_LOCATION_TEXT,a),this},setPreferredDealerText:function(a){return this.set(c.PREFERRED_DEALER_TEXT,a),this},setSelectDealerText:function(a){return this.set(c.SELECT_DEALER_TEXT,a),this}
38,setViewMoreText:function(a){return this.set(c.VIEW_MORE_TEXT,a),this},setSearchAnotherDealerText:function(a){return this.set(c.SEARCH_ANOTHER_DEALER_TEXT,a),this},setDealers:function(a){return this.set(c.DEALERS,a),this},setLocationSearchElementId:function(a){return this.set(d.LOCATION_SEARCH_ELEMENT_ID,a),this},getDealers:function(){return this.get(c.DEALERS)},setShowAll:function(a){return this.set(c.SHOW_ALL,a),this},getShowAll:function(){return this.get(c.SHOW_ALL)}})}),define("c_019_25_PreferredDealersController",["jquery","underscore","c_019_25_ControllerBase","c_019_25_PreferredDealersView","c_019_25_PreferredDealersModel","c_019_25_ApplicationConstants","c_019_25_CommonConstants","c_019_25_ModuleConstants"],function(a,b,c,d,e,f,g,h){"use strict";return c.extend({initialize:function(b){this.options=a.extend(this.options,{},b),this.options.region&&this.options.region.show(this._getView()),this._bindEvents()},_bindEvents:function(){},_getModel:function(){var a;return this._model||(a=this.getContentModel(),this._model=(new e).setEnterLocationText(a.getLocationSearchLabel()).setPreferredDealerText(a.getPreferredDealerText()).setSelectDealerText(a.getSelectDealerText()).setViewMoreText(a.getViewMoreText()).setSearchAnotherDealerText(a.getSearchAnotherDealerText()).setLocationSearchElementId(a.getLocationSearchElementId()).setDealers([]).setShowAll(!1)),this._model},_getView:function(){return this._view||(this._view=new d({model:this._getModel(),eventAggregator:this.options[g.OPTIONS.EVENT_AGGREGATOR]}
38))},setPreferredDealers:function(a){this._model.setDealers(a)},getPreferredDealers:function(){return this._model.getDealers()},renderView:function(){this._getView().render()}})}),define("c_019_25_AlternatePowertrainViewModel",["backbone","c_019_25_ModuleConstants"],function(a,b){"use strict";var c=b.ALTERNATE_POWERTRAIN.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({initialize:function(a){this.options=a||{}},setNoResultsModelAndPowertrainMessage:function(a){return this.set(c.NO_RESULTS_MODEL_AND_POWERTRAIN,a),this},setAlternateOptionsLabel:function(a){return this.set(c.ALTERNATE_OPTIONS_LABEL,a),this},setAlternatePowertrainLabel:function(a){return this.set(c.ALTERNATE_POWERTRAIN_LABEL,a),this},setDealersFurtherAwayLabel:function(a){return this.set(c.DEALERS_FURTHER_AWAY_LABEL,a),this},setLocalDealerLabel:function(a){return this.set(c.LOCAL_DEALER_LABEL,a),this}})}),define("hbars!/components/c_019-25/scripts/app/modules/alternatePowertrain/html/alternatePowertrainTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};
38return'    <span class="alternate-options-label">\n        '+a.escapeExpression((f=null!=(f=g(c,"alternateOptionsLabel")||(null!=b?g(b,"alternateOptionsLabel"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"alternateOptionsLabel",hash:{},data:e,loc:{start:{line:7,column:8},end:{line:7,column:33}}}):f))+"\n    </span>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<div class="no-results">\n    <span class="no-results-message">'+a.escapeExpression((g=null!=(g=h(c,"noResults")||(null!=b?h(b,"noResults"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"noResults",hash:{},data:e,loc:{start:{line:2,column:37},end:{line:2,column:50}}}):g))+"</span>\n</div>\n\n"+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"alternateOptionsLabel"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:5,column:0},end:{line:9,column:7}}}))?f:"")+'\n<ul class="no-dealer-alternate-options">\n    <li class="custom-radio alternate-powertrain-option">\n        <input type="radio" id="alternatePowertrain" name="dealerSearch" value="alternatePowertrain">\n        <label for="alternatePowertrain">'+a.escapeExpression((g=null!=(g=h(c,"alternatePowertrainLabel")||(null!=b?h(b,"alternatePowertrainLabel"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"alternatePowertrainLabel",hash:{},data:e,loc:{start:{line:14,column:41},end:{line:14,column:69}}}):g))+'</label>\n    </li>\n\n    <li class="custom-radio search-extended-radius-option">\n        <input type="radio" id="furtherAwayDealers" name="dealerSearch" value="furtherAwayDealers">\n        <label for="furtherAwayDealers">'+a.escapeExpression((g=null!=(g=h(c,"furtherAwayDealersLabel")||(null!=b?h(b,"furtherAwayDealersLabel"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"furtherAwayDealersLabel",hash:{},data:e,loc:{start:{line:19,column:40},end:{line:19,column:67}}}):g))+'</label>\n    </li>\n\n    <li class="custom-radio contact-dealer-option">\n        <input type="radio" id="localDealer" name="dealerSearch" value="localDealer">\n        <label for="localDealer">'+a.escapeExpression((g=null!=(g=h(c,"localDealerLabel")||(null!=b?h(b,"localDealerLabel"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"localDealerLabel",hash:{},data:e,loc:{start:{line:24,column:33},end:{line:24,column:53}}}):g))+"</label>\n    </li>\n</ul>\n"},useData:!0})}),define("c_019_25_AlternatePowertrainView",["marionette","hbars!/components/c_019-25/scripts/app/modules/alternatePowertrain/html/alternatePowertrainTemplate","c_019_25_ModuleConstants","c_019_25_ApplicationConstants","storageManager"],function(a,b,c,d,e){"use strict";var f=c.ALTERNATE_POWERTRAIN.VIEW_MODEL.ATTRIBUTES,g=c.ALTERNATE_POWERTRAIN.SELECTORS;return a.ItemView.extend({events:{"change @ui.alternatePowertrain":"_onAlternatePowertrainSelect","change @ui.localDealer":"_onLocalDealerSelect","change @ui.furtherAwayDealers":"_onFurtherAwayDealersSelect"},modelEvents:function(){var a={};return a["change:"+f.NO_RESULTS_MODEL_AND_POWERTRAIN]="_onNoResultsChange",a["change:"+f.DEALERS_FURTHER_AWAY_LABEL]="_onExtendedRadiusLabelChange",a},template:b,ui:{alternatePowertrain:g.ALTERNATE_POWERTRAIN_INPUT,localDealer:g.LOCAL_DEALER_INPUT,furtherAwayDealers:g.DEALERS_FURTHER_AWAY_INPUT,noResults:g.NO_RESULTS,extendedRadiuslabel:g.EXTENDED_RADIUS},_onAlternatePowertrainSelect:function(){var a=$(g.HIDDEN_INPUT_ALTERNATE_POWERTRAIN).val(),b=$(g.HIDDEN_INPUT_SELECTED_POWERTRAIN).val();HELIOS.components.c_019_39.alternatePowertrainSelected||($(g.HIDDEN_INPUT_CURRENT_POWERTRAIN).val(a),$(g.HIDDEN_INPUT_SELECTED_POWERTRAIN).val(a),$(g.HIDDEN_INPUT_ALTERNATE_POWERTRAIN).val(b),HELIOS.components.c_019_39.alternatePowertrainSelected=!0),this._getEventAggregator().trigger(d.EVENTS.ALTERNATE_POWERTRAIN_SELECTED,"alternatePowertrain").trigger(d.EVENTS.TRACK_ALTERNATE_OPTION,"alternative Powertrain")}
38,_onLocalDealerSelect:function(){e.deleteItem("vinDetails",{mode:"sessionStorage"}),$("body").trigger("disableRTBCalendar"),this._getEventAggregator().trigger(d.EVENTS.LOCAL_DEALER_OPTION_SELECT,"localDealer").trigger(d.EVENTS.TRACK_ALTERNATE_OPTION,"contact dealer")},_onFurtherAwayDealersSelect:function(){this._getEventAggregator().trigger(d.EVENTS.DEALER_FURTHER_AWAY_SELECT,"dealersFurtherAway").trigger(d.EVENTS.TRACK_ALTERNATE_OPTION,"show further away dealers")},_onNoResultsChange:function(a,b){this.ui.noResults.text(b||"")},_onExtendedRadiusLabelChange:function(a,b){this.ui.extendedRadiuslabel.text(b||"")},_getEventAggregator:function(){return this.options[c.ALTERNATE_POWERTRAIN.EVENTS.EVENT_AGGREGATOR]}})}),define("c_019_25_AlternatePowertrainController",["underscore","c_019_25_ApplicationConstants","c_019_25_ControllerBase","c_019_25_ModuleConstants","c_019_25_AlternatePowertrainViewModel","c_019_25_AlternatePowertrainView"],function(a,b,c,d,e,f){"use strict";var g=b.EVENTS;return c.extend({initialize:function(a){this.options=$.extend(this.options,{},a),this.options.region&&this.options.region.show(this._getView()),this._bindEvents()},_bindEvents:function(){this.getEventAggregator()&&this.getEventAggregator().on(g.DEALER_SEARCH_COMPLETE_ZERO_RESULTS,this._onDealerSearchCompleteZeroResults,this)},_getModel:function(){var a;return this._model||(a=this.getContentModel(),this._model=new e),this._model.setNoResultsModelAndPowertrainMessage(a.getNoResultsModelAndPowertrainMessage()),this._model.setAlternateOptionsLabel(a.getAlternateOptionsLabel()),this._model.setAlternatePowertrainLabel(a.getAlternatePowertrainLabel()),this._model.setDealersFurtherAwayLabel(a.getDealersFurtherAwayLabel()),this._model.setLocalDealerLabel(a.getLocalDealerLabel()),this._model},_getView:function(){var a;return this._view||(a={model:this._getModel()},a[d.SEARCH.VIEW.OPTIONS.COUNTRY_CODE]=this.getWindow().HELIOS.config.common.countryCode,a[d.SEARCH.VIEW.OPTIONS.EVENT_AGGREGATOR]=this.getEventAggregator(),a[d.SEARCH.VIEW.OPTIONS.WINDOW]=this.getWindow(),this._view=new f(a)),this._view},_isModelPowertrainEnabled:function(){return HELIOS&&HELIOS.components.c_019_39&&HELIOS.components.c_019_39.powertrainEnabled&&$(d.ALTERNATE_POWERTRAIN.SELECTORS.POWERTRAIN_WRAPPER).length},_onDealerSearchCompleteZeroResults:function(){$(d.ALTERNATE_POWERTRAIN.SELECTORS.NO_RESULTS).text(this._updateContextualDynamicContent(this.getContentModel().getNoResultsModelAndPowertrainMessage()||"")),a.isUndefined(this.getContentModel().getDealersFurtherAwayLabel())||this._model.setDealersFurtherAwayLabel(this._updateContextualDynamicContent(this.getContentModel().getDealersFurtherAwayLabel()||""))},_updateContextualDynamicContent:function(a){var b=HELIOS.components.c_019_31&&HELIOS.components.c_019_31.maxRadius||"_",c=$(d.MAIN.VIEW.SELECTORS.SELECTED_MODEL).text().trim()||"_",e=$(d.MAIN.VIEW.SELECTORS.SELECTED_POWERTRAIN).val()&&this._isModelPowertrainEnabled()?$(d.MAIN.VIEW.SELECTORS.SELECTED_POWERTRAIN).val():"";return a.includes("%radius%")&&(a=a.replace("%radius%",b)),a.includes("%model%")&&(a=a.replace("%model%",c)),a.includes("%powertrain%")&&(a=a.replace("%powertrain%",e)),a=a.replace(/%(.*?)%/g,"_")}})}),define("c_019_25_MainController",["jquery","underscore","c_019_25_ApplicationConstants","c_019_25_AnalyticsController","c_019_25_ControllerConstants","c_019_25_DealerListController","c_019_25_DealerSearchController","c_019_25_VehicleSelectorController","c_019_25_ErrorController","c_019_25_GeolocationController","heliosLocation","c_019_25_LoaderController","marionette","c_019_25_ModelConstants","c_019_25_ModuleConstants","objectFactory","c_019_25_SearchController","c_019_25_SelectedDealerController","c_019_25_StartupController","c_019_25_StateController","c_019_25_TestDriveStockCheckController","c_019_25_AddressFieldsController","c_019_25_SwitchToDealerController","c_019_25_PreferredDealersController","c_019_25_AlternatePowertrainController","trackingCodes","storageManager","storageManagerKeys","profileManager","heliosObject","myPageApi"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E){"use strict";var F,G=c.EVENTS,H=c.STATES,I=o.MAIN.CONTROLLER_EVENTS,J=(c.SELECTORS,c.STORAGE_KEYS,o.MAIN.CONTROLLER_OPTIONS),K=o.MAIN.REGIONS;return m.Object.extend({initialize:function(){C.init({HELIOS:D}),this._bindEvents()._renderMainView()._initSelectedDealer()._initDealerList()._initError()._initTestDriveStockCheck()._initGeolocation()._initDealerSearch()._initLoader()._initSearch()._initAddressFields()._initSwitchToDealer()._initAlternatePowertrain()._initVehicleSelector()._initPreferredDealers()._initStartupController()._initStateController()._initAnalyticsController();var a=this;F=this._loadPreferredDealers().then(b.bind(a._startupController._populateSessionFromLocalStorage,a),b.bind(a._startupController._populateSessionFromLocalStorage,a)),F.done(b.bind(function(){this._getIsRealtimeTestdriveEnabled()?(this._getIsRealtimeServiceBookingEnabled()&&(this._getEventAggregator().trigger(H.REALTIME_SERVICE_BOOKING,this._getIsRealtimeServiceBookingEnabled()),this._startupController.runRealTimeServiceBooking()),this._getEventAggregator().trigger(G.SET_APPLICATION_STATE,H.DISABLED)):this._startupController.run()},this))},_bindEvents:function(){return this._getEventAggregator().on(G.CLEAR_SELECTED_DEALER,this._onClearSelectedDealer,this).on(G.SET_SEARCH_LO
38CATION,this._onSetSearchLocation,this).on(G.SET_SELECTED_DEALER,this._onSetSelectedDealer,this).on(G.SELECTED_DEALER_SYNC,this._onSelectedDealerSync,this).on(G.VEHICLE_SELECTION_CHANGED,this._onVehicleSelectionChange,this).on(G.TEST_DRIVE_MODEL_CHANGED,this._onTestDriveModelChange,this).on(G.NO_TEST_DRIVE_STOCK_FOUND,this._onNoTestDriveStockFound,this).on(G.SET_APPLICATION_STATE,this._handleSelectLocationInstructionVisibility,this).on(G.CHANGE_MODEL_SELECT,this._onDropdownModelChange,this).on(G.CHANGE_MODEL_AND_POWERTRAIN,this._onModelAndPowertrainSelect,this).on(G.ALTERNATE_POWERTRAIN_SELECTED,this._onAlternatePowertrainSelect,this).on(G.LOCAL_DEALER_OPTION_SELECT,this._onLocalDealerSelect,this).on(G.DEALER_FURTHER_AWAY_SELECT,this._onDealerFurtherAwaySelect,this).on(G.UPDATE_PROFILE_DATA_IN_LOCALSTORAGE,this._updateProfileDataInLocalStorage,this),this},_getAnalyticsManager:function(){return this.options[J.ANALYTICS_MANAGER]},_getContentModel:function(){return this.options[J.CONTENT]},_getControllerOptionsObject:function(a){var b=o.BASE_CONTROLLER.OPTIONS,c={};return c[b.CONTENT]=this._getContentModel(),c[b.EVENT_AGGREGATOR]=this._getEventAggregator(),c[b.REGION]=this._getMainView()[a],c[b.WINDOW]=this._getWindow(),c},_getDeepLinkDealerFilterRequestParamValues:function(){return this.options[J.DEEP_LINK_DEALER_FILTER_REQUEST_PARAM_VALUES]},_getDeepLinkDealerId:function(){return this.options[J.DEEP_LINK_DEALER_ID]},_getDeepLinkLdid:function(){return this.options[J.DEEP_LINK_LDID]},_getDeepLinkSearchLocation:function(){return this.options[J.DEEP_LINK_SEARCH_LOCATION]},_getEventAggregator:function(){return this.options[J.EVENT_AGGREGATOR]},_getHeliosObject:function(){return this.options[J.HELIOS_OBJECT]},_getMainView:function(){return this.options.mainView},_getSmartLocationContext:function(){return this.options[J.SMART_LOCATION_CONTEXT]},_getWindow:function(){return this.options[J.WINDOW]},_initTestDriveStockCheck:function(){var a={};return this._getContentModel().getIsTestDriveStockCheckEnabled()&&(a[e.TEST_DRIVE_STOCK_CHECK.OPTIONS.EVENT_AGGREGATOR]=this._getEventAggregator(),a[e.TEST_DRIVE_STOCK_CHECK.OPTIONS.SMART_LOCATION_CONTEXT]=this._getSmartLocationContext(),a[e.TEST_DRIVE_STOCK_CHECK.OPTIONS.VEHICLE_DATA]=this._getContentModel().getVehicleSelectorData(),a[o.BASE_CONTROLLER.OPTIONS.WINDOW]=this._getWindow(),this._testDriveStockCheckController=new u(a),this._testDriveStockCheckController.initValidation()),this},_initDealerList:function(){var a=this._getControllerOptionsObject(K.DEALER_LIST),b=this._getContentModel();return a[o.DEALER_LIST.CONTROLLER_OPTIONS.DEALER_TYPE_ICON_SETTINGS]=this._getHeliosObject().components.c_019_25.settings.dealerTypeIcons,a[o.DEALER_LIST.CONTROLLER_OPTIONS.SELECTED_DEALER_CONTROLLER]=this._selectedDealerController,a[o.DEALER_LIST.CONTROLLER_OPTIONS.IS_CONFIGURATOR]=this.options.isConfigurator,a[o.DEALER_LIST.CONTROLLER_OPTIONS.MAPPING_DATA]=this.options.mappingData,a[o.DEALER_LIST.CONTROLLER_OPTIONS.MODEL_SERVICE_MAPPING_DATA]=this.options.modelServiceMappingData,a[o.DEALER_LIST.CONTROLLER_OPTIONS.REALTIME_TESTDRIVE_BOOKING]=this._getIsRealtimeTestdriveEnabled(),a[o.DEALER_LIST.CONTROLLER_OPTIONS.HOME_TEST_DRIVE_ENABLED]=this._getIsHomeTestdriveEnabled(),a[o.DEALER_LIST.CONTROLLER_OPTIONS.IS_MODEL_AND_POWERTRAIN_ENABLED]=this._isModelAndPowertrainEnabled(),a[o.DEALER_LIST.CONTROLLER_OPTIONS.MAX_RESULT_COUNT]=b.getMaxResultCount(),a[o.DEALER_LIST.CONTROLLER_OPTIONS.DEALER_BOOKING_ENABLED]=this._getIsDealerBookingEnabled(),this._dealerListController=new f(a),this},_setDealerServiceMapping:function(a,b){this._getControllerOptionsObject(K.DEALER_LIST)[o.DEALER_LIST.CONTROLLER_OPTIONS.DEALER_TYPE_ICON_SETTINGS]=this._getHeliosObject().components.c_019_25.settings.dealerTypeIcons},_initError:function(){var a=this._getControllerOptionsObject(K.ERROR);return a[e.ERROR.OPTIONS.HOME_TEST_DRIVE_ENABLED]=this._getIsHomeTestdriveEnabled(),this._errorController=new i(a),this},_onDropdownModelChange:function(a,d,e){e&&this._getIsRealtimeTestdriveEnabled()&&(this._getEventAggregator().trigger(c.EVENTS.SELECTED_MODEL_CHANGE,e),this._getIsDealerSet()&&!this._getIsDeepLinkDealerSet()?this._getEventAggregator().trigger(c.EVENTS.LOCK_STATE,!1).trigger(c.EVENTS.SET_APPLICATION_STATE,H.SEARCH).trigger(G.CLEAR_SELECTED_DEALER,!0):F&&F.done(b.bind(function(){this._startupController.runOnModelChange()},this)))},_onModelAndPowertrainSelect:function(){this._setSelectedPowertrainOption("")},_onAlternatePowertrainSelect:function(a){this._setSelectedPowertrainOption(a)},_onLocalDealerSelect:function(a){this._setSelectedPowertrainOption(a)},_onDealerFurtherAwaySelect:function(a){this._setSelectedPowertrainOption(a)},_initGeolocation:function(){var a=o.BASE_CONTROLLER.OPTIONS,b={};return b[a.EVENT_AGGREGATOR]=this._getEventAggregator(),b[a.WINDOW]=this._getWindow(),this._geolocationController=new j(b,this._getContentModel()),this},_initDealerSearch:function(){var a=this._getContentModel(),c=e.DEALER_SEARCH.OPTIONS,d=this._getDeepLinkDealerFilterRequestParamValues(),f={};return HELIOS&&HELIOS.components&&HELIOS.components.c_019_31&&(HELIOS.components.c_019_31.maxRadius=a.getMaxRadius(),HELIOS.components.c_019_31.maxHomeRadius=a.getMaxHomeRadius()),f[c.ADDRESS_FIELD_ORDER]=a.getAddressFieldOrder(),f[c.DISTANCE_UNIT]=a.getDistanceUnit(),f[c.EVENT_AGGREGATOR]=this._getEventAggregator(),f[c.IS_SEARCH_ON_STARTUP_ENABLED]=a.getIsSearchOnStartupEnabled(),f[c.MAX_RESULT_COUNT]=a.getMaxResultCount(),f[c.MAX_RADIUS]=a.getMaxRadius(),f[c.MAX_HOME_RADIUS]=a.getMaxHomeRadius(),f[c.IS_DEALER_ACCEPTS_LEADS_MANDATORY]=a.getIsShowOnlyDealersWhoAcceptLeadsEnabled(),f[c.MAPPING_DATA]=this.options.mappingData,f[c.MODEL_SERVICE_MAPPING_DATA]=this.options.modelServiceMappingData,f[c.IS_CONFIGURATOR]=this.options.isConfigurator,f[c.SERVICE_FILTERS]=b.chain(a.getDealerFilterGroups()).map(function(a){return b.chain(a.filters).filter(function(a){return(!0===a.applyOnLoad||b.contains(d,a.requestParamValue))&&b.isArray(a.serviceIds)}).pluck("serviceIds").value()}
38).flatten().uniq().value(),f[c.SERVICE_FILTER_TYPE]=a.getServiceFilterType(),f[c.WINDOW]=this._getWindow(),f[c.TEST_DRIVE_MODEL_ID]=this._testDriveStockCheckController&&this._testDriveStockCheckController.getTestDriveModelId(),f[c.CONTENT]=this._getContentModel(),f[c.REALTIME_TESTDRIVE_BOOKING]=this._getIsRealtimeTestdriveEnabled(),f[c.HOME_TEST_DRIVE_ENABLED]=this._getIsHomeTestdriveEnabled(),f[c.TARGET_SYSTEM_ROUTING_ID]=this._getTragetSystemRoutingId(),f[c.DEEP_LINK_DEALER_ID]=this._getDeepLinkDealerId(),f[c.SMART_LOCATION_CONTEXT]=this._getSmartLocationContext(),this._dealerSearchController=new g(f),this},_initLoader:function(){return this._loaderController=new l(this._getControllerOptionsObject(K.LOADER)),this},_initSearch:function(){return this._searchController=new q(this._getControllerOptionsObject(K.SEARCH)),this},_initPreferredDealers:function(){return this._preferredDealers=new x(this._getControllerOptionsObject(K.PREFERRED_DEALERS)),this},_initAddressFields:function(){return this._getIsHomeTestdriveEnabled()&&(this._addressFieldsController=new v(this._getControllerOptionsObject(K.ADDRESS_FIELDS))),this},_initSwitchToDealer:function(){return this._switchToDealerController=new w(this._getControllerOptionsObject(K.SWITCH_TO_DEALER)),this},_initAlternatePowertrain:function(){return this._alternatePowertrainController=new y(this._getControllerOptionsObject(K.ALTERNATE_POWERTRAIN_SEARCH)),this},_initSelectedDealer:function(){var a=this._getControllerOptionsObject(K.SELECTED_DEALER);return a[o.SELECTED_DEALER.CONTROLLER.OPTIONS.ADDRESS_FIELD_ORDER]=this._getContentModel().getAddressFieldOrder(),a[o.SELECTED_DEALER.CONTROLLER.OPTIONS.DEALER_TYPE_ICON_SETTINGS]=this._getHeliosObject().components.c_019_25.settings.dealerTypeIcons,a[o.SELECTED_DEALER.CONTROLLER.OPTIONS.REALTIME_TESTDRIVE_BOOKING]=this._getIsRealtimeTestdriveEnabled(),a[o.SELECTED_DEALER.CONTROLLER.OPTIONS.MODEL_DEALER_SERVICE_MAPPING_ENABLED]=this._getContentModel().getEnableModelDealerServiceMapping(),this._selectedDealerController=new r(a),this},_initVehicleSelector:function(){var a;return this._testDriveStockCheckController&&(a=this._getControllerOptionsObject(K.VEHICLE_SELECTOR),a[o.VEHICLE_SELECTOR.CONTROLLER.OPTIONS.ACTIVE_MODEL_ID]=this._testDriveStockCheckController&&this._testDriveStockCheckController.getModelId(),this._vehicleSelectorController=new h(a)),this},_initStartupController:function(){var a={},b=e.STARTUP.OPTIONS,c=this._getContentModel()&&this._getContentModel().get(n.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER)&&JSON.parse(this._getContentModel().get(n.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER));return a[b.DEALER_URL_FORMAT]=this._getContentModel().getDealerUrlFormat(),a[b.ADDRESS_FIELD_ORDER]=this._getContentModel().getAddressFieldOrder(),a[b.DEEP_LINK_DEALER_ID]=this._getDeepLinkDealerId(),a[b.DEEP_LINK_SEARCH_LOCATION]=this._getDeepLinkSearchLocation(),a[b.EVENT_AGGREGATOR]=this._getEventAggregator(),a[b.MARKET_COUNTRY_CODE]=this._getWindow().HELIOS.config.common.countryCode,a[b.SMART_LOCATION_CONTEXT]=this._getSmartLocationContext(),a[b.HELIOS_OBJECT]=this._getHeliosObject(),a[b.IS_TEST_DRIVE_STOCK_CHECK_AVAILABLE]=!!this._testDriveStockCheckController,a[b.ENABLE_PMA_DEALER]=c,a[b.HOME_TEST_DRIVE_ENABLED]=this._getIsHomeTestdriveEnabled(),a[b.DEALER_FILTER_GROUPS]=this._getContentModel().getDealerFilterGroups(),a[b.SERVICE_FILTER_TYPE]=this._getContentModel().getServiceFilterType(),a[b.ENABLE_MODEL_DEALER_MAPPING]=this._getContentModel().getEnableModelDealerMapping(),this._startupController=new s(a),this},_initStateController:function(){var a={},b=e.STATE.OPTIONS;return a[b.DEALER_LIST_CONTROLLER]=this._dealerListController,a[b.ERROR_CONTROLLER]=this._errorController,a[b.EVENT_AGGREGATOR]=this._getEventAggregator(),a[b.LOADER_CONTROLLER]=this._loaderController,a[b.SEARCH_CONTROLLER]=this._searchController,a[b.SELECTED_DEALER_CONTROLLER]=this._selectedDealerController,a[b.ADDRESS_FIELDS_CONTROLLER]=this._addressFieldsController,a[b.SWITCH_TO_DEALER_CONTROLLER]=this._switchToDealerController,a[b.PREFERRED_DEALERS_CONTROLLER]=this._preferredDealers,a[b.ALTERNATE_POWERTRAIN_CONTROLLER]=this._alternatePowertrainController,a[b.HOME_TEST_DRIVE_ENABLED]=this._getIsHomeTestdriveEnabled(),this._stateController=new t(a
38),this._getEventAggregator().trigger(G.SET_APPLICATION_STATE,H.INITIALIZING),this},_initAnalyticsController:function(){var a={},b=e.ANALYTICS.OPTIONS;return a[b.EVENT_AGGREGATOR]=this._getEventAggregator(),a[b.ANALYTICS_MANAGER]=this._getAnalyticsManager(),a[b.TRACKING_CODES]=z,a[b.ANALYTICS_SETTINGS]=this._getHeliosObject().components.c_019_25.settings.analytics,this._analyticsController=p.getObject(d,a),this},_onClearSelectedDealer:function(){this._selectedDealerController.setDealerId(void 0),this._getMainView().model.setDealerId(void 0).setDealerName(void 0),this._setIsSelectLocationInstructionVisible(!0),this._setIsDealerSet(!1),this._setIsDeepLinkDealerSet(!1)},_onSelectedDealerSync:function(a){this._getMainView().model.setDealerId(a.getDealerId()).setDealerName(a.getName())},_onVehicleSelectionChange:function(a){a&&a.modelId&&a.name&&this._getMainView().model.setModelId(a.modelId).setModelName(a.name)},_onTestDriveModelChange:function(a){var b=!!a||!1;this._setModelIsDealerLocatorVisible(b),this._setIsTestDriveModelSet(b),this._handleSelectLocationInstructionVisibility(b)},_onNoTestDriveStockFound:function(a){this._setModelIsDealerLocatorVisible(!a||!1)},_onSetSearchLocation:function(a,d){var e=c.SEARCH_LOCATION_SOURCES;b.contains([e.GEO_LOCATION,e.USER_SELECT],d)&&(this._getSmartLocationContext().set(a),this._updateProfileDataInLocalStorage()),this._setIsLocationSet(!0)},_onSetSelectedDealer:function(a,d){this._setIsDeepLinkDealerSet(!1),d===c.SELECTED_DEALER_SOURCES.USER_SELECT||d===c.SELECTED_DEALER_SOURCES.MY_PAGE_USER_SELECT?(this._getSmartLocationContext().set((new k).setDealerId(a)),this._updateProfileDataInLocalStorage(),this.trigger(I.DEALER_SELECTED_BY_USER)):d===c.SELECTED_DEALER_SOURCES.PRE_SELECT?this._getSmartLocationContext().get().done(b.bind(function(b){b.getDealerId()||(this._getSmartLocationContext().set((new k).setDealerId(a)),this._updateProfileDataInLocalStorage())},this)):d===c.SELECTED_DEALER_SOURCES.SMART_LOCATION&&(!0===this._getDeepLinkLdid()&&this._selectedDealerController.lockDealer(),this._setIsDeepLinkDealerSet(!0)),this._setIsDealerSet(!0)},_updateProfileDataInLocalStorage:function(){var a=A.loadItem(B.dealerLocator.profileDataSession,{mode:"sessionStorage"}),b={},c={};a&&a.storageData&&(b.dealerLocation=a.storageData.dealerLocation,b.postalCode=a.storageData.postalCode,a.storageData.location&&(c.localityName=a.storageData.location.localityName,b.location=c),A.saveItem(B.dealerLocator.localProfileDataSession,{storageData:b},{mode:"localStorage"}))},_setIsSelectLocationInstructionVisible:function(a){this._getMainView().model.setIsSelectLocationInstructionVisible(a)},_setModelIsDealerLocatorVisible:function(a){this._getMainView().model.setIsDealerLocatorVisible(a)},_setIsLocationSet:function(a){return this._isLocationSet=a,this},_setSelectedPowertrainOption:function(d){var e=this._getHeliosObject();e.components.c_019_39&&(e.components.c_019_39.selectedPowertrainOption=d,d?HELIOS.components.c_019_39.alternatePreferenceOption=!0:(a(c.SELECTORS.ALTERNATE_OPTIONS).prop("checked",!1),HELIOS.components.c_019_39.alternatePreferenceOption=!1,HELIOS.components.c_019_39.alternatePowertrainSelected=!1)),this._getIsDealerSet()?this._getEventAggregator().trigger(c.EVENTS.LOCK_STATE,!1).trigger(c.EVENTS.SET_APPLICATION_STATE,H.SEARCH).trigger(G.CLEAR_SELECTED_DEALER,!0):F&&F.done(b.bind(function(){this._startupController.runOnModelChange()},this))},_getIsLocationSet:function(){return this._isLocationSet},_setIsDealerSet:function(a){return this._isDealerSet=a,this},_getIsDealerSet:function(){return this._isDealerSet},_setIsDeepLinkDealerSet:function(a){return this._isDeepLinkDealerSet=a,this},_getIsDeepLinkDealerSet:function(){return this._isDeepLinkDealerSet},_setIsTestDriveModelSet:function(a){return this._isTestDriveModelSet=a,this},_getIsTestDriveModelSet:function(){return this._isTestDriveModelSet},_getCurrentApplicationState:function(){return this._stateController&&this._stateController.getCurrentState()},_handleSelectLocationInstructionVisibility:function(a){var b=!1;if(!this._getMainView().model.isSelectLocationInstructionSet()||!this._getCurrentApplicationState()||a===H.INITIALIZING)return!1;!this._getIsTestDriveModelSet()||this._getIsDealerSet()||this._getIsLocationSet()||(b=!0),!this._getIsLocationSet()&&this._testDriveStockCheckController.isModelNotFoundAtDealer()&&(b=!0),this._setIsSelectLocationInstructionVisible(b)},_getIsRealtimeTestdriveEnabled:function(){var a=this._getHeliosObject();return a.components.c_019_31&&a.components.c_019_31[J.REALTIME_TESTDRIVE_ENABLED]},_isModelAndPowertrainEnabled:function(){var a=this._getHeliosObject();return a.components.c_019_39&&a.components.c_019_39[J.IS_MODEL_AND_POWERTRAIN_ENABLED]},_getIsHomeTestdriveEnabled:function(){var a=this._getHeliosObject();return a.components.c_019_31&&a.components.c_019_31[J.HOME_TESTDRIVE_ENABLED]},_getIsDealerBookingEnabled:function(){var a=this._getHeliosObject();return a.components.c_019_31&&a.components.c_019_31[J.DEALER_BOOKING_ENABLED]},_getIsRealtimeServiceBookingEnabled:function(){var a=this._getHeliosObject();return a.components.c_019_31&&a.components.c_019_31[J.REALTIME_SERVICE_BOOKING]},_getTragetSystemRoutingId:function(){var a=this._getHeliosObject();if(this._getIsRealtimeTestdriveEnabled())return a.components.c_019_31&&a.components.c_019_31[J.TARGET_SYSTEM_ROUTING_ID]},_loadPreferredDealers:function(){var b=this;if(a(".c_019.my-page"))return E.getDealers().then(function(a){a&&(b._startupController.setPreferredDealers(a),b._preferredDealers.setPreferredDealers(a),b._selectedDealerController.setPreferredDealers(a),b._searchController.setHasPreferredDealers(a.length>0))});var c=a.Deferred();return c.resolve(),c},_renderMainView:function(){return this._getMainView().render(),this}})}),define("hbars!/components/c_019-25/scripts/app/modules/main/html/mainTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){return"required"},3:function(a,b,c,d,e){return"validate required"},5:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'            <input class="model-id validate required" name="'+a.escapeExpression((f=null!=(f=g(c,"modelIdElementName")||(null!=b?g(b,"modelIdElementName"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"modelIdElementName",hash:{},data:e,loc:{start:{line:12,column:60},end:{line:12,column:82}}}):f))+'" type="hidden" />\n'},7:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};
vendor: 5,405 bytes, lines 38-39
38return'            <input class="model-name validate required" name="'+a.escapeExpression((f=null!=(f=g(c,"modelNameElementName")||(null!=b?g(b,"modelNameElementName"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"modelNameElementName",hash:{},data:e,loc:{start:{line:15,column:62},end:{line:15,column:86}}}):f))+'" type="hidden" />\n'},9:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'    <div class="checkbox section" >\n        <div class="form-group checkbox tooltip-right courtesy-car-check" >\n            <div class="checkbox-container">\n                <input id="courtesy-car-checkbox" name="'+a.escapeExpression(a.lambda(null!=(f=null!=b?g(b,"courtesyCar"):b)?g(f,"name"):f,b))+'" class="courtesy-car form-group checkbox tooltip-right" type="checkbox" value="true" />\n                <label for="courtesy-car-checkbox">'+a.escapeExpression(a.lambda(null!=(f=null!=b?g(b,"courtesyCar"):b)?g(f,"label"):f,b))+"</label>\n"+(null!=(f=g(c,"if").call(null!=b?b:a.nullContext||{},null!=(f=null!=b?g(b,"courtesyCar"):b)?g(f,"tooltipDescription"):f,{name:"if",hash:{},fn:a.program(10,e,0),inverse:a.noop,data:e,loc:{start:{line:34,column:16},end:{line:44,column:23}}}))?f:"")+"            </div>\n        </div>\n    </div>\n"},10:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]}
39;return'                <span class="courtesy-car-tooltip">\n                    <div class="c_008" data-close-label='+a.escapeExpression(a.lambda(null!=(f=null!=b?g(b,"courtesyCar"):b)?g(f,"closeLabel"):f,b))+'>\n                            <button type="button" class="has-tooltip tooltip-label-central disclaimer" data-tooltip-my="top center" data-tooltip-at="bottom center" data-tooltip-id="courtesy-car-tooltip-desc">\n                            </button>\n                            <div class="tooltip-panel" data-tooltip-id="courtesy-car-tooltip-desc">\n                                <p>'+a.escapeExpression(a.lambda(null!=(f=null!=b?g(b,"courtesyCar"):b)?g(f,"tooltipDescription"):f,b))+"</p>\n                            </div>\n                    </div>\n                </span>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<p class="select-location-instruction">'+a.escapeExpression((g=null!=(g=h(c,"selectLocationInstruction")||(null!=b?h(b,"selectLocationInstruction"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"selectLocationInstruction",hash:{},data:e,loc:{start:{line:1,column:39},end:{line:1,column:70}}}):g))+'</p>\n<div class="vehicle-selector"></div>\n<div class="dealer-locator-main">\n    <div class="preferred-dealers"></div>\n    <div class="form-validation-check form-group '+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isSelectedDealerMandatory"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:5,column:49},end:{line:5,column:97}}}))?f:"")+'">\n        <div class="search"></div>\n        <div class="form-fields">\n            <input class="dealer-id '+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isSelectedDealerMandatory"):b,{name:"if",hash:{},fn:a.program(3,e,0),inverse:a.noop,data:e,loc:{start:{line:8,column:36},end:{line:8,column:93}}}))?f:"")+'" name="'+a.escapeExpression((g=null!=(g=h(c,"dealerIdElementName")||(null!=b?h(b,"dealerIdElementName"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"dealerIdElementName",hash:{},data:e,loc:{start:{line:8,column:101},end:{line:8,column:124}}}):g))+'" type="hidden" />\n            <input class="dealer-name '+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isSelectedDealerMandatory"):b,{name:"if",hash:{},fn:a.program(3,e,0),inverse:a.noop,data:e,loc:{start:{line:9,column:38},end:{line:9,column:95}}}))?f:"")+'" name="'+a.escapeExpression((g=null!=(g=h(c,"dealerNameElementName")||(null!=b?h(b,"dealerNameElementName"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"dealerNameElementName",hash:{},data:e,loc:{start:{line:9,column:103},end:{line:9,column:128}}}):g))+'" type="hidden" />\n\n'+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"modelIdElementName"):b,{name:"if",hash:{},fn:a.program(5,e,0),inverse:a.noop,data:e,loc:{start:{line:11,column:12},end:{line:13,column:19}}}))?f:"")+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"modelNameElementName"):b,{name:"if",hash:{},fn:a.program(7,e,0),inverse:a.noop,data:e,loc:{start:{line:14,column:12},end:{line:16,column:19}}}))?f:"")+'\n            <div class="error"></div>\n        </div>\n    </div>\n\n    <div class="address-fields"></div>\n    <div class="selected-dealer"></div>\n    <div class="loader"></div>\n    <div class="alternate-powertrain-search"></div>\n    <div class="dealer-list"></div>\n    <div class="switch-to-dealer"></div>\n'+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=(f=null!=b?h(b,"courtesyCar"):b)?h(f,"label"):f,{name:"if",hash:{},fn:a.program(9,e,0),inverse:a.noop,data:e,loc:{start:{line:28,column:4},end:{line:48,column:11}}}))?f:"")+"</div>"},useData:!0}
39)}),define("c_019_25_MainView",["c_019_25_ApplicationConstants","backbone","c_019_25_ModuleConstants","hbars!/components/c_019-25/scripts/app/modules/main/html/mainTemplate"],function(a,b,c,d){"use strict";return b.Marionette.LayoutView.extend({modelEvents:function(){var a={};return a["change:"+c.MAIN.VIEW_MODEL.ATTRIBUTES.DEALER_ID]="_onDealerIdChange",a["change:"+c.MAIN.VIEW_MODEL.ATTRIBUTES.DEALER_NAME]="_onDealerNameChange",a["change:"+c.MAIN.VIEW_MODEL.ATTRIBUTES.MODEL_ID]="_onModelIdChange",a["change:"+c.MAIN.VIEW_MODEL.ATTRIBUTES.MODEL_NAME]="_onModelNameChange",a["change:"+c.MAIN.VIEW_MODEL.ATTRIBUTES.IS_DEALER_LOCATOR_VISIBLE]="_setDealerLocatorMainVisibility",a["change:"+c.MAIN.VIEW_MODEL.ATTRIBUTES.IS_SELECT_LOCATION_INSTRUCTION_VISIBLE]="_setSelectLocationInstructionVisibility",a},onBeforeRender:function(){this.$el.addClass(a.CSS_CLASSES.INITIALIZED)},regions:function(){var a={},b=c.MAIN.REGIONS,d=c.MAIN.SELECTORS;return a[b.DEALER_LIST]=d.DEALER_LIST,a[b.ERROR]=d.ERROR,a[b.LOADER]=d.LOADER,a[b.SEARCH]=d.SEARCH,a[b.SELECTED_DEALER]=d.SELECTED_DEALER,a[b.VEHICLE_SELECTOR]=d.VEHICLE_SELECTOR,a[b.ADDRESS_FIELDS]=d.ADDRESS_FIELDS,a[b.SWITCH_TO_DEALER]=d.SWITCH_TO_DEALER,a[b.PREFERRED_DEALERS]=d.PREFERRED_DEALERS,a[b.ALTERNATE_POWERTRAIN_SEARCH]=d.ALTERNATE_POWERTRAIN_SEARCH,a},template:d,ui:{dealerIdInput:c.MAIN.VIEW.SELECTORS.DEALER_ID_INPUT,dealerNameInput:c.MAIN.VIEW.SELECTORS.DEALER_NAME_INPUT,modelIdInput:c.MAIN.VIEW.SELECTORS.MODEL_ID_INPUT,modelNameInput:c.MAIN.VIEW.SELECTORS.MODEL_NAME_INPUT,dealerLocatorMain:c.MAIN.VIEW.SELECTORS.DEALER_LOCATOR_MAIN,selectLocationInstruction:c.MAIN.VIEW.SELECTORS.SELECT_LOCATION_INSTRUCTION,courtersyCar:c.MAIN.VIEW.SELECTORS.COURTESY_CAR},onRender:function(){this._setDealerLocatorMainVisibility(),this._setSelectLocationInstructionVisibility()},_onDealerIdChange:function(a,b){this.ui.dealerIdInput.val(b)},_onDealerNameChange:function(a,b){this.ui.dealerNameInput.val(b)},_onModelIdChange:function(a,b){this.ui.modelIdInput.val(b)},_onModelNameChange:function(a,b){this.ui.modelNameInput.val(b)},_setDealerLocatorMainVisibility:function(){this.model.getIsDealerLocatorVisible()?this.ui.dealerLocatorMain.removeClass(c.GENERIC_CSS_CLASSES.HIDDEN).attr(c.ARIA_TAGS.ARIA_HIDDEN,!1):this.ui.dealerLocatorMain.addClass(c.GENERIC_CSS_CLASSES.HIDDEN).attr(c.ARIA_TAGS.ARIA_HIDDEN,!0)},_setSelectLocationInstructionVisibility:function(){this.model.getIsSelectLocationInstructionVisible()?this.ui.selectLocationInstruction.removeClass(c.GENERIC_CSS_CLASSES.HIDDEN).attr(c.ARIA_TAGS.ARIA_HIDDEN,!1):this.ui.selectLocationInstruction.addClass(c.GENERIC_CSS_CLASSES.HIDDEN).attr(c.ARIA_TAGS.ARIA_HIDDEN,!0)}})}),define("c_019_25_MainViewModel",["backbone","c_019_25_ModuleConstants"],function(a,b){"use strict";var c=b.MAIN.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({defaults:function(){var a={};return a[c.IS_DEALER_LOCATOR_VISIBLE]=!0,a[c.IS_SELECT_LOCATION_INSTRUCTION_VISIBLE]=!1,a},setDealerId:function(a){return this.set(c.DEALER_ID,a),this},setDealerIdElementName:function(a){return this.set(c.DEALER_ID_ELEMENT_NAME,a),this},setDealerName:function(a){return this.set(c.DEALER_NAME,a),this},setDealerNameElementName:function(a){return this.set(c.DEALER_NAME_ELEMENT_NAME,a),this},setIsSelectedDealerMandatory:function(a){return this.set(c.IS_SELECTED_DEALER_MANDATORY,a),this},setCourtesyCar:function(a){return this.set(c.COURTESY_CAR,a),this},setModelId:function(a){return this.set(c.MODEL_ID,a),this},setModelIdElementName:function(a){return this.set(c.MODEL_ID_ELEMENT_NAME,a),this},setModelName:function(a){return this.set(c.MODEL_NAME,a),this},setModelNameElementName:function(a){return this.set(c.MODEL_NAME_ELEMENT_NAME,a),this},getIsDealerLocatorVisible:function(){return this.get(c.IS_DEALER_LOCATOR_VISIBLE)},setIsDealerLocatorVisible:function(a){return this.set(c.IS_DEALER_LOCATOR_VISIBLE,a),this},isSelectLocationInstructionSet:function(){return!!this.get(c.SELECT_LOCATION_INSTRUCTION)},setSelectLocationInstruction:function(a){return this.set(c.SELECT_LOCATION_INSTRUCTION,a),this},getIsSelectLocationInstructionVisible:function(){return this.get(c.IS_SELECT_LOCATION_INSTRUCTION_VISIBLE)},setIsSelectLocationInstructionVisible:function(a){return this.set(c.IS_SELECT_LOCATION_INSTRUCTION_VISIBLE,a),this}})}),define("c_019_25",["underscore","c_019_25_ApplicationConstants","backbone","c_019_25_ContentModel","c_019_25_MainController","c_019_25_MainView","c_019_25_MainViewModel","marionette","c_019_25_ModelConstants","c_019_25_ModuleConstants","objectFactory","c_008"],function(a,b,c,d,e,f,g,h,i,j,k,l){"use strict";function m(a,b){this.settings=$.extend({},n,b),this.defaults=n,this.$el=a,this.$el&&this.$el.length&&this.init(b)}var n={selectors:{root:".c_019-25"}};return m.prototype.init=function(a){this.createApplication(this.$el)},m.prototype.createApplication=function(d){var e=new h.Application({showSelectedDealerRequiredMessage:function(){this.eventAggregator.trigger(b.EVENTS.DISPLAY_SELECTED_DEALER_REQUIRED_MESSAGE)}}),f=this.getContentModel(d),g=this.settings.eventAggregator?this.settings.eventAggregator:a.extend({},c.Events);e.eventAggregator=g,e.mainView=this.getMainView(d,g,this.getMainViewModel(f)),e.mainController=this.getMainController(e.mainView,f,g,this.getHeliosObject()),e.mainController.on(j.MAIN.CONTROLLER_EVENTS.DEALER_SELECTED_BY_USER,function(){$("html, body").animate({scrollTop:$(d).offset().top})}),$(d).data("DealerLocatorInstance",e),this.enableTooltip(i.TOOLTIP)},m.prototype.getContentModel=function(b){var c,e,f=$(b).find("script[data-content]");try{c=JSON.parse(a.unescape(f.html())),c[i.CONTENT.ATTRIBUTES.LOCATION_
39SEARCH_ELEMENT_ID]=a.uniqueId("Location-"),c[i.CONTENT.ATTRIBUTES.MAP_PROVIDER]=b.data(i.CONTENT.ATTRIBUTES.MAP_PROVIDER),e=new d(c)}catch(g){throw new Error("Cannot parse C19.25 JSON")}return e},m.prototype.getDeepLinkDealerId=function(){var a=/[?&]dealerIdInForm=([^&]*)/.exec(this.settings.window.location.search);return a&&this.settings.window.decodeURIComponent(a[1])||void 0},m.prototype.getDeepLinkLdid=function(){var a=/[?&]ldid=([^&]*)/.exec(this.settings.window.location.search);if(a&&a.length>1)try{return JSON.parse(this.settings.window.decodeURIComponent(a[1]).toLowerCase())}catch(b){return}},m.prototype.getDeepLinkFilterRequestParamValues=function(){var b,c=/[?&]dealerFilters=([^&]*)/.exec(this.settings.window.location.search);return c&&(b=a.map(c[1].split(","),this.settings.window.decodeURIComponent)),b||[]},m.prototype.getDeepLinkSearchLocation=function(){var a=/[?&]dealersNearLocation=([^&]*)/.exec(this.settings.window.location.search);return a&&this.settings.window.decodeURIComponent(a[1])||void 0},m.prototype.getHeliosObject=function(){return this.settings.HELIOS},m.prototype.getMainController=function(b,c,d,f){var g=j.MAIN.CONTROLLER_OPTIONS,h=this.$el.find("script[data-model-dealer]"),l=this.$el.find("script[data-model-dealer-service-mapping]"),m={};return this.settings.smartLocationContext.mapProvider=this.$el.data(i.CONTENT.ATTRIBUTES.MAP_PROVIDER),m[g.CONTENT]=c,m[g.DEEP_LINK_DEALER_FILTER_REQUEST_PARAM_VALUES]=this.getDeepLinkFilterRequestParamValues(),m[g.DEEP_LINK_DEALER_ID]=this.getDeepLinkDealerId(),m[g.DEEP_LINK_LDID]=this.getDeepLinkLdid(),m[g.DEEP_LINK_SEARCH_LOCATION]=this.getDeepLinkSearchLocation(),m[g.EVENT_AGGREGATOR]=d,m[g.HELIOS_OBJECT]=f,m[g.MAIN_VIEW]=b,m[g.SMART_LOCATION_CONTEXT]=this.settings.smartLocationContext,m[g.WINDOW]=this.settings.window,m[g.IS_CONFIGURATOR]=this.settings.isConfigurator,m[g.ANALYTICS_MANAGER]=this.settings.analyticsManager,h&&h.length&&(m[g.MAPPING_DATA]=JSON.parse(a.unescape(h.html()))),l&&l.length&&(m[g.MODEL_SERVICE_MAPPING_DATA]=JSON.parse(a.unescape(l.html()))),k.getObject(e,m)},m.prototype.getMainViewModel=function(a){var b=a.getIsSelectedDealerMandatory(),c=a.getDisableAutoGeoLocationOnFormLoad(),d=this.getHeliosObject();return d.components&&d.components.c_019_25&&d.components.c_019_25.settings&&(d.components.c_019_25.settings.isDealerSelectionMandatory=b,d.components.c_019_25.settings.disableAutoGeoLocationOnFormLoad=c),(new g).setDealerIdElementName(a.getDealerIdElementName()).setDealerNameElementName(a.getDealerNameElementName()).setIsSelectedDealerMandatory(b).setCourtesyCar(a.getCourtesyCar())},m.prototype.getMainView=function(a,b,c){var d={el:a,model:c};return d[j.MAIN.VIEW.OPTIONS.EVENT_AGGREGATOR]=b,new f(d)},m.prototype.enableTooltip=function(a){l.createTooltips($(a.SELECTORS.courtesyTooltip).find(a.SELECTORS.hasToolTip),a.DATA)},m}),define("c_019_25B_ApplicationConstants",[],function(){"use strict";return{ADDRESS_FIELDS:{SPECIAL_FIELDS:{ITEM_SEPARATOR:{EXPRESSION:"{{commaAndSpace}}",HTML:", ",ID:"commaAndSpace"},NEW_LINE:{EXPRESSION:"{{{nextLine}}}",HTML:"<br />",ID:"nextLine"}}},ANALYTICS:{SEARCH_TYPE:"dealer-form",DEALER_ACTION:"dealer-form"},CSS_CLASSES:{FORM_GROUP_ERROR:"error",INITIALIZED:"initialized",TRACKED:"tracked",DEALER_SELECTOR:".c_019-25B"},EVENTS:{CLEAR_SELECTED_DEALER:"clearSelectedDealer",DISPLAY_SELECTED_DEALER_REQUIRED_MESSAGE:"displaySelectedDealerRequiredMessage",GEOLOCATE_USER:"geolocateUser",GEOLOCATION_ERROR:"geolocationError",GEOLOCATION_REQUEST:"geolocationRequest",GEOLOCATION_SYNC:"geolocationSync",GO_TO_PREVIOUS_APPLICATION_STATE:"goToPreviousApplicationState",LOCATION_NOT_FOUND:"locationNotFound",SELECTED_DEALER_SYNC:"selectedDealerSync",SET_APPLICATION_STATE:"setApplicationState",SET_SEARCH_LOCATION:"setSearchLocation",SET_SELECTED_DEALER:"setSelectedDealer",DEALER_SEARCH_SUBMIT:"dealerSearchSubmit",DEALER_SEARCH_COMPLETE:"dealerSearchComplete",DEALER_SEARCH_COMPLETE_ZERO_RESULTS:"dealerSearchCompleteZeroResults",DEALER_SEARCH_ERROR:"dealerSearchError",ANALYTICS_SEARCH:"analyticsSearch",ANALYTICS_DEALER_INTERACTION:"analyticsDealerInteraction",VEHICLE_SELECTION_CHANGED:"c_019_25B:vehicleSelectionChanged",TEST_DRIVE_MODEL_CHANGED:"c_019_25B:testDriveModelChanged",NO_TEST_DRIVE_MODEL_SELECTED:"c_019_25B:noTestDriveModelSelected",NO_TEST_DRIVE_STOCK_FOUND:"c_019_25B:noTestDriveStockFound",NO_TEST_DRIVE_STOCK_FOUND_AT_DEALER:"c_019_25B:noTestDriveStockFoundAtDealer",TEST_DRIVE_MODEL_FOUND:"c_019_25B:testDriveModelFound",TOGGLE_ERROR_VISIBILITY_PERSISTENCE:"c_019_25B:toggleErrorVisibilityPersistence",LOCK_STATE:"c_019_25B:lockState",TRIGGER_SEARCH:"c_019_25B:triggerSearch",CHANGE_MODEL_SELECT:"changeModelSelect",STORAGE_SAVED:"storageSaved",DISPLAY_SELECTED_DEALER:"displaySelectedDealer"}
39,SEARCH_LOCATION_SOURCES:{GEO_LOCATION:"geoLocation",SMART_LOCATION:"smartLocation",TEST_DRIVE_STOCK_CHECK:"testDriveStockCheck",USER_SELECT:"userSelect"},SELECTED_DEALER_SOURCES:{SMART_LOCATION:"smartLocation",USER_SELECT:"userSelect"},SELECTORS:{FORM_GROUP:".form-group"},STATES:{DEALER_SELECTED:"dealerSelected",ERROR:"error",ERROR_WITH_DEALER_LIST:"errorWithDealerList",INITIALIZING:"initializing",SEARCH:"search",SEARCH_RESULTS:"searchResults",SEARCHING:"searching",PMA_DEALER:"pma-dealer",SEARCHED_POSTAL_CODE:"searchedPostalCode"}}}),define("c_019_25B_ModelConstants",[],function(){"use strict";return{CONTENT:{ATTRIBUTES:{ADDRESS_FIELD_ORDER:"address",CANNOT_FIND_USER_LOCATION:"formLabels.cannotFindUserLocation",CHANGE_SELECTED_DEALER_CTA:"formLabels.changeMyDealer",DEALER_FILTER_GROUPS:"dealerFilterGroups",DEALER_ICON_KEYS:"dealerIconKeys",DEALER_ID_ELEMENT_NAME:"formDetails.dealerIdElementName",DEALER_NAME_ELEMENT_NAME:"formDetails.dealerNameElementName",MODEL_ID_ELEMENT_NAME:"formDetails.modelIdElementName",MODEL_NAME_ELEMENT_NAME:"formDetails.modelNameElementName",DEALER_SEARCH_RETURNED_ZERO_RESULTS:"formLabels.noResults",DEALER_SELECTED_TEXT:"formLabels.titleDealerSelected",DEALER_URL_FORMAT:"urls.details",IS_LOCATION_PREFILL_ENABLED:"formDetails.isLocationPreFillEnabled",IS_SEARCH_ON_STARTUP_ENABLED:"formDetails.isAutoSearchEnabled",DISABLE_DEALER_LOAD_WITHOUT_LOCATION:"formDetails.hideDefaultDealers",IS_SELECTED_DEALER_MANDATORY:"formDetails.isSelectedDealerMandatory",IS_SHOW_ONLY_DEALERS_WHO_ACCEPT_LEADS_ENABLED:"formDetails.showOnlyDealersWhoAcceptLeads",LOCATION_NOT_FOUND_TEXT:"formLabels.locationNotFound",LOCATION_SEARCH_ELEMENT_ID:"locationSearchElementId",SERVICE_FILTER_TYPE:"serviceFilterType",CURRENT_LOCATION_TEXT:"formLabels.currentLocation",LOCATION_SEARCH_LABEL:"formLabels.titleNoDealerSelected",POSTAL_CODE_VALIDATION:"formLabels.postalCodeValidation",ERROR_MESSAGE:"formLabels.errorMessage",LOCATION_SEARCH_PLACEHOLDER:"formLabels.locationTextBoxPlaceholder",SEARCH_FOR_DEALERS_TEXT:"formLabels.searchForDealersCta",SELECTED_DEALER_IS_MANDATORY:"formLabels.selectedDealerIsMandatory",USE_CURRENT_LOCATION:"formLabels.useMyCurrentLocation",RESULT_LABEL_SINGLE:"formLabels.singleDealerClosestToYou",RESULT_LABEL_MULTIPLE:"formLabels.multipleDealersClosestToYou",SELECT_DEALER_CTA_LABEL:"formLabels.selectDealerCta",SELECT_DEALER_CTA_MOBILE_LABEL:"formLabels.selectDealerCtaTextMobile",DISTANCE_UNIT:"formLabels.distanceUnit",DISTANCE_UNIT_LABEL:"formLabels.distanceUnitLabel",MAX_RESULT_COUNT:"formLabels.maxResultCount",MAX_RADIUS:"formLabels.maximumRadius",IS_TEST_DRIVE_STOCK_CHECK_ENABLED:"formDetails.isTestDriveStockCheckEnabled",VEHICLE_SELECTOR_LABEL:"formLabels.vehicleSelectorLabel",VEHICLE_SELECTOR_DATA:"vehicleSelectorData",VEHICLE_SELECTOR_OPTION:"formLabels.vehicleSelectorOption",SELECT_DIFFERENT_VEHICLE:"formLabels.selectDifferentVehicleInstruction",SELECT_DIFFERENT_DEALER_OR_VEHICLE:"formLabels.selectDealerOrVehicleInstruction",SELECT_VEHICLE:"formLabels.selectVehicleInstruction",SELECT_LOCATION:"formLabels.selectLocationVehicleInstruction",SEARCH_FOR_DEALER_PHONE:"enableDealerNumber",ENABLE_MODEL_DEALER_MAPPING:"enableModelDealerMapping",DEALER_SERVICE_LABEL:"dealerServiceLabel",ENABLE_PMA_DEALER:"enablePmaDealer",IS_INFINITI_ECOMM_RETAILER:"isInfinitiEcommRetailer",INFINITI_ECOMM_SERVICE_LABEL:"formLabels.infinitiEcommServiceLabel",INFINITI_ECOMM_SERVICE_DESCRIPTION:"formLabels.infinitiEcommServiceDescription",ENABLE_DRIVE_AT_HOME:"driveAtHome.enableDriveAtHome",NOT_FOUND_HEADLINE:"driveAtHome.notFoundHeadline",NOT_FOUND_BODY_COPY:"driveAtHome.notFoundBodyCopy",NOT_FOUND_CTA_LABEL:"driveAtHome.notFoundCtaLabel",NOT_FOUND_CTA_LINK:"driveAtHome.notFoundCtaLink",NOT_FOUND_CTA_STYLE:"driveAtHome.notFoundCtaStyle",NOT_FOUND_CTA_TARGET:"driveAtHome.notFoundCtaTarget"}},GENERIC:{EVENTS:{REQUEST:"request",SYNC:"sync",ERROR:"error"}},DEALER:{ATTRIBUTES:{ADDRESS:"address",DISTANCE:"distance",DEALER_ID:"dealerId",NAME:"name",TYPE:"type",CONTACT:"contact",SERVICES:"services"},OPTIONS:{ADDRESS_FIELD_ORDER:"addressFieldOrder",DEALER_ID:"dealerId",DISTANCE_UNIT:"distanceUnit",URL_FORMAT:"urlFormat",IS_INFINITI_ECOMM_RETAILER:"isInfinitiEcommRetailer"},PROPERTIES:{RMP_DEALER_COOKIE:"rmp",RMP_DEALER_SERVICE:"P_RMP",SDR_DEALER_SERVICE:"S_DR"}},DEALER_COLLECTION:{OPTIONS:{ADDRESS_FIELD_ORDER:"addressFieldOrder",DISTANCE_UNIT:"distanceUnit",IS_DEALER_ACCEPTS_LEADS_MANDATORY:"isDealerAcceptsLeadsMandatory",LAT:"lat",LNG:"lng",SERVICE_FILTERS:"serviceFilters",SERVICE_FILTER_TYPE:"serviceFilterType",SIZE:"size",TEST_DRIVE_MODEL:"testDriveModel",POSTAL_CODE:"postalCode",ENABLE_PMA_DEALER:"enablePmaDealer",DISABLE_DEALER_LOAD_WITHOUT_LOCATION:"disableDealerLoadWithoutLocation",ENABLE_DRIVE_AT_HOME:"enableDriveAtHome",RADIUS:"radius"}}}}),define("c_019_25B_ContentModel",["underscore","backbone","c_019_25B_ModelConstants"],function(a,b,c){"use strict";var d=c.CONTENT.ATTRIBUTES;return b.Model.extend({get:function(c){var d=c.split(".");return a.reduce(d.slice(1),function(a,b){return a&&a[b]},b.Model.prototype.get.call(this,d[0]))},getAddressFieldOrder:function(){return this.get(d.ADDRESS_FIELD_ORDER)},getCurrentLocationText:function(){return this.get(d.CURRENT_LOCATION_TEXT)},getDealerFilterGroups:function(){return this.get(d.DEALER_FILTER_GROUPS)},getServiceFilterType:function(){return this.get(d.SERVICE_FILTER_TYPE)},getDealerIconKeys:function(){return this.get(d.DEALER_ICON_KEYS)||[]},getDealerIdElementName:function(){return this.get(d.DEALER_ID_ELEMENT_NAME)},getDealerNameElementName:function(){return this.get(d.DEALER_NAME_ELEMENT_NAME)},getModelIdElementName:function(){return this.get(d.MODEL_ID_ELEMENT_NAME)},getModelNameElementName:function(){return this.get(d.MODEL_NAME_ELEMENT_NAME)},getDealerUrlFormat:function(){return this.get(d.DEALER_URL_FORMAT)},getDistanceUnit:function(){return this.get(d.DISTANCE_UNIT)},getDistanceUnitLabel:function(){return this.get(d.DISTANCE_UNIT_LABEL)},getIsLocationPrefillEnabled:function(){return this.get(d.IS_LOCATION_PREFILL_ENABLED)},getIsSearchOnStartupEnabled:function(){return this.get(d.IS_SEARCH_ON_STARTUP_ENABLED)},getIsSelectedDealerMandatory:function(){return this.get(d.IS_SELECTED_DEALER_MANDATORY)},getIsShowOnlyDealersWhoAcceptLeadsEnabled:function(){return this.get(d.IS_SHOW_ONLY_DEALERS_WHO_ACCEPT_LEADS_ENABLED)},getLocationNotFoundText:function(){return this.get(d.LOCATION_NOT_FOUND_TEXT)},getLocationSearchElementId:function(){return this.get(d.LOCATION_
39SEARCH_ELEMENT_ID)},getLocationSearchLabel:function(){return this.get(d.LOCATION_SEARCH_LABEL)},getpostalCodeValidation:function(){return this.get(d.POSTAL_CODE_VALIDATION)},getEnablePMADealer:function(){return this.get(d.ENABLE_PMA_DEALER)&&JSON.parse(this.get(d.ENABLE_PMA_DEALER))},getErrorMessage:function(){return this.get(d.ERROR_MESSAGE)},getLocationSearchPlaceholder:function(){return this.get(d.LOCATION_SEARCH_PLACEHOLDER)},getMaxResultCount:function(){return this.get(d.MAX_RESULT_COUNT)},getMaxRadius:function(){return this.get(d.MAX_RADIUS)},getResultLabelMultiple:function(){return this.get(d.RESULT_LABEL_MULTIPLE)},getResultLabelSingle:function(){return this.get(d.RESULT_LABEL_SINGLE)},getEnableModelDealerMapping:function(){return this.get(d.ENABLE_MODEL_DEALER_MAPPING)},getResultLabelDealerService:function(){return this.get(d.DEALER_SERVICE_LABEL)},getSearchForDealersText:function(){return this.get(d.SEARCH_FOR_DEALERS_TEXT)},getSelectDealerCtaLabel:function(){return this.get(d.SELECT_DEALER_CTA_LABEL)},getSelectDealerCtaLabelMobile:function(){return this.get(d.SELECT_DEALER_CTA_MOBILE_LABEL)},getDealerListPhone:function(){return this.get(d.SEARCH_FOR_DEALER_PHONE)},getDealerDropdownPhone:function(){return this.get(d.SEARCH_FOR_DEALER_PHONE)},getUseCurrentLocation:function(){return this.get(d.USE_CURRENT_LOCATION)},getIsTestDriveStockCheckEnabled:function(){return this.get(d.IS_TEST_DRIVE_STOCK_CHECK_ENABLED)},getVehicleSelectorData:function(){return this.get(d.VEHICLE_SELECTOR_DATA)},getVehicleSelectorLabel:function(){return this.get(d.VEHICLE_SELECTOR_LABEL)},getVehicleSelectorOption:function(){return this.get(d.VEHICLE_SELECTOR_OPTION)},getSelectDifferentVehicleInstruction:function(){return this.get(d.SELECT_DIFFERENT_VEHICLE)},getSelectDealerOrVehicleInstruction:function(){return this.get(d.SELECT_DIFFERENT_DEALER_OR_VEHICLE)},getSelectVehicleInstruction:function(){return this.get(d.SELECT_VEHICLE)},getSelectLocationInstruction:function(){return this.get(d.SELECT_LOCATION)},getDriveAtHomeEnabled:function(){return this.get(d.ENABLE_DRIVE_AT_HOME)},getDriveAtHomeNotFoundHeadline:function(){return this.get(d.NOT_FOUND_HEADLINE)},getDriveAtHomeNotFoundBodyCopy:function(){return this.get(d.NOT_FOUND_BODY_COPY)},getDriveAtHomeNotFoundBodyCTALabel:function(){return this.get(d.NOT_FOUND_CTA_LABEL)},getDriveAtHomeNotFoundBodyCTALink:function(){return this.get(d.NOT_FOUND_CTA_LINK)},getDriveAtHomeNotFoundBodyCTAStyle:function(){return this.get(d.NOT_FOUND_CTA_STYLE)},getDriveAtHomeNotFoundBodyCTATarget:function(){return this.get(d.NOT_FOUND_CTA_TARGET)}})}),define("c_019_25B_CommonConstants",[],function(){"use strict";return{OPTIONS:{EVENT_AGGREGATOR:"eventAggregator",WINDOW:"window"}}}),define("c_019_25B_ControllerConstants",["underscore","c_019_25B_CommonConstants"],function(a,b){"use strict";return{DEALER_SEARCH:{OPTIONS:a.extend({ADDRESS_FIELD_ORDER:"addressFieldOrder",DISTANCE_UNIT:"distanceUnit",IS_DEALER_ACCEPTS_LEADS_MANDATORY:"isDealerAcceptsLeadsMandatory",IS_SEARCH_ON_STARTUP_ENABLED:"isSearchOnStartupEnabled",MAX_RESULT_COUNT:"maxResultCount",MAX_RADIUS:"maximumRadius",SERVICE_FILTERS:"serviceFilters",TEST_DRIVE_MODEL_ID:"testDriveModelId",IS_CONFIGURATOR:"isConfigurator",MAPPING_DATA:"mappingData",CONTENT:"content",SERVICE_FILTER_TYPE:"serviceFilterType",ENABLE_DRIVE_AT_HOME:"enableDriveAtHome"},b.OPTIONS)},GEOLOCATION:{OPTIONS:a.extend({},b.OPTIONS)},STARTUP:{OPTIONS:a.extend({DEALER_URL_FORMAT:"dealerUrlFormat",DEEP_LINK_DEALER_ID:"deepLinkDealerId",DEEP_LINK_SEARCH_LOCATION:"deepLinkSearchLocation",MARKET_COUNTRY_CODE:"marketCountryCode",SMART_LOCATION_CONTEXT:"smartLocationContext",HELIOS_OBJECT:"HELIOS",ADDRESS_FIELD_ORDER:"addressFieldOrder",IS_TEST_DRIVE_STOCK_CHECK_AVAILABLE:"isTestDriveStockCheckAvailable",ENABLE_PMA_DEALER:"enablePmaDealer"},b.OPTIONS)},STATE:{OPTIONS:a.extend({DEALER_LIST_CONTROLLER:"dealerListController",DEALER_DROPDOWN_CONTROLLER:"dealerDropdownController",ERROR_CONTROLLER:"errorController",LOADER_CONTROLLER:"loaderController",SEARCH_CONTROLLER:"searchController",SELECTED_DEALER_CONTROLLER:"selectedDealerController",VEHICLE_SELECTOR_CONTROLLER:"vehicleSelectorController",DRIVE_AT_HOME_ENABLED:"enableDriveAtHome"},b.OPTIONS)},ANALYTICS:{OPTIONS:a.extend({ANALYTICS_MANAGER:"analyticsManager",TRACKING_CODES:"trackingCodes",ANALYTICS_SETTINGS:"analyticsSettings"},b.OPTIONS),ZERO_RESULTS:0},TEST_DRIVE_STOCK_CHECK:{OPTIONS:a.extend({SMART_LOCATION_CONTEXT:"smartLocationContext",VEHICLE_DATA:"vehicleData"},b.OPTIONS)}}}),define("c_019_25B_ModuleConstants",["underscore","c_019_25B_CommonConstants"],function(a,b){"use strict";
39return{GENERIC_CSS_CLASSES:{HIDDEN:"hidden",DEALER_TYPE_PREFIX:"dealer-type-"},ARIA_TAGS:{ARIA_HIDDEN:"aria-hidden"},BASE_CONTROLLER:{OPTIONS:a.extend({CONTENT:"content",REGION:"region"},b.OPTIONS)},DEALER_LIST:{CONTROLLER_OPTIONS:{DEALER_TYPE_ICON_SETTINGS:"dealerTypeIconSettings",SELECTED_DEALER_CONTROLLER:"selectedDealerController",IS_CONFIGURATOR:"isConfigurator",MAPPING_DATA:"mappingData",CONTENT:"content"},SELECTORS:{LIST_CONTAINER:".dealers",SELECT_DEALER_BUTTON:".select-dealer-cta",SELECT_DEALER_CONTAINER:".select-dealer-container",TITLE:".title",DEALER_SERVICE_LABEL:".dealer-service-label",WARNING_MESSAGE:".warning-message",BODY:"body"},ITEM_VIEW_OPTIONS:{DISTANCE_UNIT_TEXT:"distanceUnitText",EVENT_AGGREGATOR:"eventAggregator",SELECT_DEALER_CTA_TEXT:"selectDealerCtaText",SELECT_DEALER_CTA_TEXT_MOBILE:"selectDealerCtaTextMobile",ENABLE_DEALER_NUMBER:"enableDealerNumber"},VIEW:{CSS_CLASSES:{HAS_LEGEND:"has-legend"}},VIEW_ITEM_MODEL:{ATTRIBUTES:{ADDRESS:"address",UNFORMATTED_ADDRESS:"unformattedAddress",DEALER_ID:"dealerId",DEALER_TYPE_CSS_CLASS:"dealerTypeCssClass",DEALER_TYPE_ICON_IMG_URL:"dealerTypeIconImgUrl",DISTANCE:"distance",FORMATTED_DISTANCE:"formattedDistance",NAME:"name",PHONE:"phone",PHONE_NO_SPACE:"phoneNoSpace",SHOW_PHONE:"showPhone",TYPE:"type",IS_INFINITI_ECOMM_RETAILER:"isInfinitiEcommRetailer",INFINITI_ECOMM_SERVICE_LABEL:"infinitiEcommServiceLabel",INFINITI_ECOMM_SERVICE_DESCRIPTION:"infinitiEcommServiceDescription"}},VIEW_MODEL:{ATTRIBUTES:{IS_LEGEND_VISIBLE:"isLegendVisible",LEGEND_ITEMS:"legendItems",TITLE:"title",ENABLE_MODEL_DEALER_MAPPING:"enableModelDealerMapping",DEALER_SERVICE_LABEL:"dealerServiceLabel"}},EVENTS:{DEALERS_PHONE_UPDATE:"helios.dealer.update"}},DEALER_DROPDOWN:{CONTROLLER_OPTIONS:{DEALER_TYPE_ICON_SETTINGS:"dealerTypeIconSettings",SELECTED_DEALER_CONTROLLER:"selectedDealerController",IS_CONFIGURATOR:"isConfigurator",MAPPING_DATA:"mappingData",CONTENT:"content"},SELECTORS:{DROPDOWN_CONTAINER:".dealers",SELECT_DEALER_BUTTON:".select-dealer-cta",SELECT_DEALER_CONTAINER:".select-dealer-container",TITLE:".title",DEALER_SERVICE_LABEL:".dealer-service-label",WARNING_MESSAGE:".warning-message",BODY:"body"},ITEM_VIEW_OPTIONS:{DISTANCE_UNIT_TEXT:"distanceUnitText",EVENT_AGGREGATOR:"eventAggregator",SELECT_DEALER_CTA_TEXT:"selectDealerCtaText",ENABLE_DEALER_NUMBER:"enableDealerNumber"},VIEW:{CSS_CLASSES:{HAS_LEGEND:"has-legend"}},VIEW_ITEM_MODEL:{ATTRIBUTES:{ADDRESS:"address",UNFORMATTED_ADDRESS:"unformattedAddress",DEALER_ID:"dealerId",DEALER_TYPE_CSS_CLASS:"dealerTypeCssClass",DEALER_TYPE_ICON_IMG_URL:"dealerTypeIconImgUrl",DISTANCE:"distance",FORMATTED_DISTANCE:"formattedDistance",NAME:"name",PHONE:"phone",PHONE_NO_SPACE:"phoneNoSpace",SHOW_PHONE:"showPhone",TYPE:"type",IS_INFINITI_ECOMM_RETAILER:"isInfinitiEcommRetailer",INFINITI_ECOMM_SERVICE_LABEL:"infinitiEcommServiceLabel",INFINITI_ECOMM_SERVICE_DESCRIPTION:"infinitiEcommServiceDescription"}},VIEW_MODEL:{ATTRIBUTES:{IS_LEGEND_VISIBLE:"isLegendVisible",LEGEND_ITEMS:"legendItems",TITLE:"title",ENABLE_MODEL_DEALER_MAPPING:"enableModelDealerMapping",DEALER_SERVICE_LABEL:"dealerServiceLabel"}},EVENTS:{DEALERS_PHONE_UPDATE:"helios.dealer.update"}},ERROR:{SELECTORS:{ERROR_MESSAGE:".error-message",DRIVE_AT_HOME_ERROR:".drive-at-home-error"},VIEW_MODEL:{ATTRIBUTES:{ERROR_MESSAGE:"errorMessage",DRIVE_AT_HOME:{DEALERS_NEAR_YOU:"dealersNearYou",NOT_FOUND_HEADLINE:"notFoundHeadline",NOT_FOUND_BODY_COPY:"notFoundBodyCopy",NOT_FOUND_CTA_LABEL:"notFoundCtaLabel",NOT_FOUND_CTA_LINK:"notFoundCtaLink",NOT_FOUND_CTA_STYLE:"notFoundCtaStyle",NOT_FOUND_CTA_TARGET:"notFoundCtaTarget"}}}},MAIN:{CONTROLLER_EVENTS:{DEALER_SELECTED_BY_USER:"dealerSelectedByUser"},CONTROLLER_OPTIONS:a.extend({CONTENT:"content",DEEP_LINK_DEALER_FILTER_REQUEST_PARAM_VALUES:"deepLinkDealerFilterRequestParamValues",DEEP_LINK_DEALER_ID:"deepLinkDealerId",DEEP_LINK_LDID:"deepLinkLdid",DEEP_LINK_SEARCH_LOCATION:"deepLinkSearchLocation",HELIOS_OBJECT:"heliosObject",MAIN_VIEW:"mainView",SMART_LOCATION_CONTEXT:"smartLocationContext",ANALYTICS_MANAGER:"analyticsManager",IS_CONFIGURATOR:"isConfigurator",MAPPING_DATA:"mappingData"},b.OPTIONS),REGIONS:{DEALER_LIST:"dealerList",ERROR:"error",LOADER:"loader",SEARCH:"search",SELECTED_DEALER:"selectedDealer",VEHICLE_SELECTOR:"vehicleSelector"},SELECTORS:{DEALER_LIST:".dealer-list",ERROR:".error",LOADER:".loader",SEARCH:".search",SELECTED_DEALER:".selected-dealer",VEHICLE_SELECTOR:".vehicle-selector "},VIEW:{OPTIONS:a.extend({},b.OPTIONS),SELECTORS:{DEALER_ID_INPUT:".dealer-id",DEALER_NAME_INPUT:".dealer-name",MODEL_ID_INPUT:".model-id",MODEL_NAME_INPUT:".model-name",DEALER_LOCATOR_MAIN:".dealer-locator-main",SELECT_LOCATION_INSTRUCTION:".select-location-instruction",ZER0_RESULT_ERROR:".dealer-locator-main > .error"}},VIEW_MODEL:{ATTRIBUTES:{DEALER_ID:"dealerId",DEALER_ID_ELEMENT_NAME:"dealerIdElementName",DEALER_NAME:"dealerName",DEALER_NAME_ELEMENT_NAME:"dealerNameElementName",MODEL_ID:"modelId",MODEL_ID_ELEMENT_NAME:"modelIdElementName",MODEL_NAME:"modelName",MODEL_NAME_ELEMENT_NAME:"modelNameElementName",IS_DEALER_LOCATOR_VISIBLE:"isDealerLocatorMainVisible",IS_SELECTED_DEALER_MANDATORY:"isSelectedDealerMandatory",SELECT_LOCATION_INSTRUCTION:"selectLocationInstruction",IS_SELECT_LOCATION_INSTRUCTION_VISIBLE:"isSelectLocationInstructionVisible"}}},SECONDARY:{CONTROLLER_EVENTS:{DEALER_SELECTED_BY_USER:"dealerSelectedByUser"},CONTROLLER_OPTIONS:a.extend({CONTENT:"content",DEEP_LINK_DEALER_FILTER_REQUEST_PARAM_VALUES:"deepLinkDealerFilterRequestParamValues",DEEP_LINK_DEALER_ID:"deepLinkDealerId",DEEP_LINK_LDID:"deepLinkLdid",DEEP_LINK_SEARCH_LO
39CATION:"deepLinkSearchLocation",HELIOS_OBJECT:"heliosObject",SECONDARY_VIEW:"secondaryView",SMART_LOCATION_CONTEXT:"smartLocationContext",ANALYTICS_MANAGER:"analyticsManager",IS_CONFIGURATOR:"isConfigurator",MAPPING_DATA:"mappingData"},b.OPTIONS),REGIONS:{DEALER_LIST:"dealerList",ERROR:"error",LOADER:"loader",SEARCH:"search",SELECTED_DEALER:"selectedDealer",VEHICLE_SELECTOR:"vehicleSelector"},SELECTORS:{DEALER_LIST:".dealer-list",ERROR:".error",LOADER:".loader",SEARCH:".search",SELECTED_DEALER:".selected-dealer",VEHICLE_SELECTOR:".vehicle-selector "},VIEW:{OPTIONS:a.extend({},b.OPTIONS),SELECTORS:{DEALER_ID_INPUT:".dealer-id",DEALER_NAME_INPUT:".dealer-name",MODEL_ID_INPUT:".model-id",MODEL_NAME_INPUT:".model-name",DEALER_LOCATOR_SECONDARY:".dealer-locator-secondary",
40SELECT_LOCATION_INSTRUCTION:".select-location-instruction",ZER0_RESULT_ERROR:".dealer-locator-secondary > .error"}},VIEW_MODEL:{ATTRIBUTES:{DEALER_ID:"dealerId",DEALER_ID_ELEMENT_NAME:"dealerIdElementName",DEALER_NAME:"dealerName",DEALER_NAME_ELEMENT_NAME:"dealerNameElementName",MODEL_ID:"modelId",MODEL_ID_ELEMENT_NAME:"modelIdElementName",MODEL_NAME:"modelName",MODEL_NAME_ELEMENT_NAME:"modelNameElementName",IS_DEALER_LOCATOR_VISIBLE:"isDealerLocatorSecondaryVisible",IS_SELECTED_DEALER_MANDATORY:"isSelectedDealerMandatory",SELECT_LOCATION_INSTRUCTION:"selectLocationInstruction",IS_SELECT_LOCATION_INSTRUCTION_VISIBLE:"isSelectLocationInstructionVisible"}}},SEARCH:{CONTROLLER_OPTIONS:{HELIOS_OBJECT:"heliosObject"},SELECTORS:{ENTER_LOCATION_LABEL:"label",LOCATION_TEXT_BOX:'input[type="text"]',SEARCH_FOR_DEALERS_BUTTON:".search-for-dealers-button",USE_CURRENT_LOCATION_BUTTON:".use-current-location-button",FIRST_RESULT_ITEM:".first-result-item",ERROR_CONTAINER:".error-container",LOCATION_FIELDS:".location-fields"},DATA_ATTRIBUTES:{GET_ADDRESS_NAME:"address-name"},AUTOCOMPLETE_PROPS:{SELECTORS:{template:"#new-autocomplete-ctx",inputElement:".c_019-25B .location-input",confirmLocationCta:".confirm-location-cta",spanAutocomplete:".c_019-25B .autocomplete-suggestions",resultItem:".pac-item"},EVENTS:{getPostalCodeByAddressName:"getPostalCodeByAddressName",getPostalCodeByCoordinates:"getPostalCodeCoordinates"}},VIEW_MODEL:{ATTRIBUTES:{ENTER_LOCATION_TEXT:"enterLocationText",ENABLE_PMA_DEALER:"enablePmaDealer",ER
40ROR_MESSAGE:"errorMessage",POSTAL_CODE_PATTERN:"postalCodeValidation",LOCATION_SEARCH_ELEMENT_ID:"locationSearchElementId",LOCATION_SEARCH_ELEMENT_VALUE:"locationSearchElementValue",PLACEHOLDER_TEXT:"placeholderText",SEARCH_FOR_DEALERS_TEXT:"searchForDealersText",USE_CURRENT_LOCATION_TEXT:"useCurrentLocationText",USER_SEARCH_TERM:"userSearchTerm",HELIOS_LOCATION:"heliosLocation"}},VIEW:{OPTIONS:a.extend({COUNTRY_CODE:"countryCode",HELIOS_OBJECT:"heliosObject",AUTOCOMPLETE:"autocomplete"},b.OPTIONS)}},SELECTED_DEALER:{CONTROLLER:{OPTIONS:{ADDRESS_FIELD_ORDER:"addressFieldOrder",DEALER_TYPE_ICON_SETTINGS:"dealerTypeIconSettings"}},EVENTS:{CHANGE_SELECTED_DEALER_CLICK:"changeSelectedDealerClick"},SELECTORS:{ADDRESS:".address",CHANGE_SELECTED_DEALER_BUTTON:".change-selected-dealer",DISTANCE:".distance",DISTANCE_NUMBER:".distance-number",NAME:".name",TITLE:".title",ICON_IMG:".icon-img",DETAILS:".details",DEALER_LIST_PHONE_LINK:".dealer-list-phone-link",INFINITI_ECOMM_SELECTOR:".c_019_25B_selected-dealer-infiniti-ecomm-section"},VIEW_MODEL:{ATTRIBUTES:{ADDRESS:"address",CHANGE_SELECTED_DEALER_CTA:"changeSelectedDealerCta",DISTANCE:"distance",DISTANCE_UNIT:"distanceUnit",IS_CHANGE_DEALER_BUTTON_VISIBLE:"isChangeDealerButtonVisible",NAME:"name",TITLE:"title",DEALER_TYPE_CSS_CLASS:"dealerTypeCssClass",DEALER_TYPE_ICON_IMG_URL:"dealerTypeIconImgUrl",PHONE:"phone",ENABLE_DEALER_NUMBER:"enableDealerNumber",ENABLE_MODEL_DEALER_MAPPING:"enableModelDealerMapping",DEALER_SERVICE_LABEL:"dealerServiceLabel",POSTAL_CODE_PATTERN:"postalCodeValidation",ENABLE_PMA_DEALER:"enablePmaDealer",IS_INFINITI_ECOMM_RETAILER_VISIBLE:"isInfinitiEcommRetailerVisible",INFINITI_ECOMM_SERVICE_LABEL:"infinitiEcommServiceLabel",INFINITI_ECOMM_SERVICE_DESCRIPTION:"infinitiEcommServiceDescription"}},VIEW:{OPTIONS:a.extend({},b.OPTIONS)}},VEHICLE_SELECTOR:{CONTROLLER:{OPTIONS:{ACTIVE_MODEL_ID:"activeModelId"}},VIEW_MODEL:{ATTRIBUTES:{LABEL:"label",VEHICLE_DATA:"vehicleData",PRE_SELECTED_MODEL_ID:"preSelectedModelId",SELECT_VEHICLE_INSTRUCTION:"selectVehicleInstruction",SELECT_DIFFERENT_VEHICLE_INSTRUCTION:"selectDifferentVehicleInstruction",IS_SELECT_DIFFERENT_VEHICLE_INSTRUCTION_VISIBLE:"isSelectDifferentVehicleInstructionVisible",DEALER_ID:"dealerId"}},OPTIONS:{EVENT_AGGREGATOR:"eventAggregator"},SELECTORS:{DATA_TEST_DRIVE_MODEL_ID:"data-test-drive-model-id",DATA_MODEL_ID:"data-model-id",VEHICLE_SELECTION_LIST:".vehicle_selection_list",SELECT_VEHICLE_INSTRUCTION:".select-vehicle-instruction",SELECT_DIFFERENT_VEHICLE_INSTRUCTION:".select-different-vehicle-instruction",SELECTED:":selected"},PROPERTIES:{SELECTED:"selected"}}}}),define("c_019_25B_AnalyticsController",["c_019_25B_ApplicationConstants","c_019_25B_ControllerConstants","marionette","c_019_25B_ModelConstants","c_019_25B_ModuleConstants"],function(a,b,c,d,e){"use strict";var f=a.EVENTS,g=b.ANALYTICS.OPTIONS;return c.Object.extend({initialize:function(){this._bindEvents()},_bindEvents:function(){this._getEventAggregator().on(f.ANALYTICS_SEARCH,this._onSearch,this).off(f.ANALYTICS_DEALER_INTERACTION).on(f.ANALYTICS_DEALER_INTERACTION,this._onDealerInteraction,this).on(f.DEALER_SEARCH_COMPLETE,function(a){this._onSearchComplete(a,this._generalSearchData)},this).on(f.DEALER_SEARCH_COMPLETE_ZERO_RESULTS,function(){this._onSearchCompleteZeroResults(this._generalSearchData)},this).on(f.DEALER_SEARCH_ERROR,function(){this._onSearchCompleteZeroResults(this._generalSearchData)},this)},_getEventAggregator:function(){return this.options[g.EVENT_AGGREGATOR]},_getTrackingCodes:function(){return this.options[g.TRACKING_CODES]},_getAnalyticsManager:function(){return this.options[g.ANALYTICS_MANAGER]},_getAnalyticsSettings:function(){return this.options[g.ANALYTICS_SETTINGS]},_onSearch:function(a,b,c){this._generalSearchData=this._getGeneralSearchData(a,b,c)},_getGeneralSearchData:function(b,c,d){var e=this._getTrackingCodes(),f=e.trackingVars.search,g=f.searchTermType,h={};switch(h[f.componentId]=e.componentIds.c19_25_Dealer_Locator,h[f.searchType]=a.ANALYTICS.SEARCH_TYPE,h[f.action]=e.eventTypes.search,b){case g.userSearch:h[f.searchTerm]=d+"|"+c.location.address;break;case g.geolocation:h[f.searchTerm]=g.geolocation+"|"+c.location.address}return h},_onSearchComplete:function(b,c){var d=this._getTrackingCodes(),e=d.trackingVars.search,f=$(a.CSS_CLASSES.DEALER_SELECTOR);c&&f.length>0&&!f.hasClass(a.CSS_CLASSES.TRACKED)&&(c[e.searchResults]=b.length,f.addClass(a.CSS_CLASSES.TRACKED),this._getAnalyticsManager().tag(d.eventTypes.search,c))},_onSearchCompleteZeroResults:function(c){var d=this._getTrackingCodes(),e=d.trackingVars.search,f=$(a.CSS_CLASSES.DEALER_SELECTOR);c&&f.length>0&&!f.hasClass(a.CSS_CLASSES.TRACKED)&&(c[e.searchResults]=b.ANALYTICS.ZERO_RESULTS,f.addClass(a.CSS_CLASSES.TRACKED),this._getAnalyticsManager().tag(d.eventTypes.search,c))},_onDealerInteraction:function(b,c){var f=this._getTrackingCodes(),g=e.DEALER_LIST.VIEW_ITEM_MODEL.ATTRIBUTES,h=f.trackingVars.dealerInteraction,i=c.get(g.UNFORMATTED_ADDRESS),j={};j[h.componentId]=b,j[h.dealerAction]=a.ANALYTICS.DEALER_ACTION,j[h.dealerId]=c.get(g.DEALER_ID),j[h.dealerName]=c.get(g.NAME),j[h.dealerAddress]=i.addressLine1+", "+i.city+", "+i.postalCode,this._getAnalyticsSettings().shouldTrackDealerType&&(j[h.dealerType]=c.get(d.DEALER.ATTRIBUTES.TYPE)),this._getAnalyticsManager().tag(f.eventTypes.dealerInteraction,j)}})}),define("c_019_25B_ControllerBase",["backbone","marionette","c_019_25B_ModuleConstants"],function(a,b,c){"use strict";return a.Marionette.Object.extend({getContentModel:function(){return this.options[c.BASE_CONTROLLER.OPTIONS.CONTENT]},getEventAggregator:function(){return this.options[c.BASE_CONTROLLER.OPTIONS.EVENT_AGGREGATOR]},getRegion:function(){return this.options[c.BASE_CONTROLLER.OPTIONS.REGION]},getWindow:function(){return this.options[c.BASE_CONTROLLER.OPTIONS.WINDOW]},hide:function(){return this.getRegion()&&this.getRegion().$el.hide(),this},show:function(){return this.getRegion()&&this.getRegion().$el.show(),this}})}),define("hbars!/components/c_019-25B/scripts/app/modules/dealerList/html/dealerListItemTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'        \t<div>\n        \t\t<img src="'+a.escapeExpression((f=null!=(f=g(c,"dealerTypeIconImgUrl")||(null!=b?g(b,"dealerTypeIconImgUrl"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"dealerTypeIconImgUrl",hash:{},data:e,loc:{start:{line:6,column:20},end:{line:6,column:44}}}):f))+'" />\n        \t</div>\n'},3:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'            <p class="dealer-list-phone"><a class="dealer-list-phone-link" href="tel:'+a.escapeExpression((f=null!=(f=g(c,"phoneNoSpace")||(null!=b?g(b,"phoneNoSpace"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"phoneNoSpace",hash:{},data:e,loc:{start:{line:10,column:85},end:{line:10,column:103}}}):f))+'">'+a.escapeExpression((f=null!=(f=g(c,"phone")||(null!=b?g(b,"phone"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"phone",hash:{},data:e,loc:{start:{line:10,column:105},end:{line:10,column:116}}}):f))+"</a></p>\n"},5:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'        \t<p class="distance">('+a.escapeExpression((f=null!=(f=g(c,"formattedDistance")||(null!=b?g(b,"formattedDistance"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"formattedDistance",hash:{},data:e,loc:{start:{line:14,column:30},end:{line:14,column:51}}}):f))+" "+a.escapeExpression((f=null!=(f=g(c,"distanceUnitText")||(null!=b?g(b,"distanceUnitText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"distanceUnitText",hash:{},data:e,loc:{start:{line:14,column:52},end:{line:14,column:72}}}):f))+")</p>\n"},7:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return(null!=(f=g(c,"if").call(null!=b?b:a.nullContext||{},null!=b?g(b,"infinitiEcommServiceLabel"):b,{name:"if",hash:{},fn:a.program(8,e,0),inverse:a.noop,data:e,loc:{start:{line:17,column:13},end:{line:21,column:19}}}))?f:"")+(null!=(f=g(c,"if").call(null!=b?b:a.nullContext||{},null!=b?g(b,"infinitiEcommServiceDescription"):b,{name:"if",hash:{},fn:a.program(10,e,0),inverse:a.noop,data:e,loc:{start:{line:22,column:12},end:{line:26,column:19}}}))?f:"")},8:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'                <p class="c_019_25B_infiniti_ecomm_label usg-text-bold">\n                    '+a.escapeExpression((f=null!=(f=g(c,"infinitiEcommServiceLabel")||(null!=b?g(b,"infinitiEcommServiceLabel"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"infinitiEcommServiceLabel",hash:{},data:e,loc:{start:{line:19,column:20},end:{line:19,column:49}}}):f))+"\n                </p>\n"},10:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'                <p class="c_019_25B_infiniti_ecomm-copy">\n                    '+a.escapeExpression((f=null!=(f=g(c,"infinitiEcommServiceDescription")||(null!=b?g(b,"infinitiEcommServiceDescription"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"infinitiEcommServiceDescription",hash:{},data:e,loc:{start:{line:24,column:20},end:{line:24,column:55}}}):f))+"\n                </p>\n"},12:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return a.escapeExpression((f=null!=(f=g(c,"selectDealerCtaTextMobile")||(null!=b?g(b,"selectDealerCtaTextMobile"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"selectDealerCtaTextMobile",hash:{},data:e,loc:{start:{line:32,column:66},end:{line:32,column:95}}}):f))},14:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return a.escapeExpression((f=null!=(f=g(c,"selectDealerCtaText")||(null!=b?g(b,"selectDealerCtaText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"selectDealerCtaText",hash:{},data:e,loc:{start:{line:32,column:103},end:{line:32,column:126}}}):f))},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<div class="select-dealer-container">\n    <div class="details" data-distanceunitlabel="'+a.escapeExpression((g=null!=(g=h(c,"distanceUnitText")||(null!=b?h(b,"distanceUnitText"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"distanceUnitText",hash:{},data:e,loc:{start:{line:2,column:49},end:{line:2,column:69}}}):g))+'">\n        <h3>'+a.escapeExpression((g=null!=(g=h(c,"name")||(null!=b?h(b,"name"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"name",hash:{},data:e,loc:{start:{line:3,column:12},end:{line:3,column:20}}}):g))+"</h3>\n"+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"dealerTypeIconImgUrl"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:4,column:8},end:{line:8,column:15}}}))?f:"")+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"showPhone"):b,{name:"if",hash:{},fn:a.program(3,e,0),inverse:a.noop,data:e,loc:{start:{line:9,column:8},end:{line:11,column:15}}}))?f:"")+'        <p class="address">'+(null!=(g=null!=(g=h(c,"address")||(null!=b?h(b,"address"):b))?g:a.hooks.helperMissing,f="function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"address",hash:{},data:e,loc:{start:{line:12,column:27},end:{line:12,column:40}}}):g)?f:"")+"</p>\n"+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"distance"):b,{name:"if",hash:{},fn:a.program(5,e,0),inverse:a.noop,data:e,loc:{start:{line:13,column:8},end:{line:15,column:15}}}))?f:"")+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isInfinitiEcommRetailer"):b,{name:"if",hash:{},fn:a.program(7,e,0),inverse:a.noop,data:e,loc:{start:{line:16,column:8},end:{line:27,column:15}}}))?f:"")+'    </div>\n    <div class="select-dealer-cta-container">\n        <button class="select-dealer-cta" data-dealerid="'+a.escapeExpression((g=null!=(g=h(c,"dealerId")||(null!=b?h(b,"dealerId"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"dealerId",hash:{}
40,data:e,loc:{start:{line:30,column:57},end:{line:30,column:69}}}):g))+'" type="button">\n            <span class="desktop">'+a.escapeExpression((g=null!=(g=h(c,"selectDealerCtaText")||(null!=b?h(b,"selectDealerCtaText"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"selectDealerCtaText",hash:{},data:e,loc:{start:{line:31,column:34},end:{line:31,column:57}}}):g))+'</span>\n            <span class="mobile">'+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"selectDealerCtaTextMobile"):b,{name:"if",hash:{},fn:a.program(12,e,0),inverse:a.program(14,e,0),data:e,loc:{start:{line:32,column:33},end:{line:32,column:133}}}))?f:"")+"</span>\n        </button>\n    </div>\n</div>\n"},useData:!0})}),define("c_019_25B_DealerListItemView",["c_019_25B_ApplicationConstants","marionette","underscore","c_019_25B_ModelConstants","hbars!/components/c_019-25B/scripts/app/modules/dealerList/html/dealerListItemTemplate","c_019_25B_ModuleConstants","trackingCodes","keyCodeConstants"],function(a,b,c,d,e,f,g,h){"use strict";var i=a.EVENTS;return b.ItemView.extend({className:function(){return this.model&&this.model.getDealerTypeCssClass()},events:{"click @ui.selectDealerContainer":"_onSelectDealerClick","keydown @ui.selectDealerButton":"_onSelectDealerButtonKeyDown"},tagName:"li",template:e,templateHelpers:function(){var a={},b=f.DEALER_LIST.ITEM_VIEW_OPTIONS;return a[b.SELECT_DEALER_CTA_TEXT]=this.options[b.SELECT_DEALER_CTA_TEXT],a[b.SELECT_DEALER_CTA_TEXT_MOBILE]=this.options[b.SELECT_DEALER_CTA_TEXT_MOBILE],a[b.DISTANCE_UNIT_TEXT]=this.options[b.DISTANCE_UNIT_TEXT],a[b.ENABLE_DEALER_NUMBER]=this.options[b.ENABLE_DEALER_NUMBER],a},ui:{selectDealerButton:f.DEALER_LIST.SELECTORS.SELECT_DEALER_BUTTON,selectDealerContainer:f.DEALER_LIST.SELECTORS.SELECT_DEALER_BUTTON},_getEventAggregator:function(){return this.options[f.DEALER_LIST.ITEM_VIEW_OPTIONS.EVENT_AGGREGATOR]},_onSelectDealerButtonKeyDown:function(a){a.which===h.ENTER&&this._onSelectDealerClick()},_onSelectDealerClick:function(){var b=this.model.getDistance(),c=this.model.getDealerId();this._getEventAggregator().trigger(i.ANALYTICS_DEALER_INTERACTION,g.componentIds.c19_25_Dealer_Locator,this.model).trigger(i.SET_SELECTED_DEALER,c,a.SELECTED_DEALER_SOURCES.USER_SELECT,b)},onDomRefresh:function(){c.defer(function(){$("body").trigger(f.DEALER_LIST.EVENTS.DEALERS_PHONE_UPDATE)})}})}),define("hbars!/components/c_019-25B/scripts/app/modules/dealerList/html/dealerListTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'    <ul class="legend">\n'+(null!=(f=g(c,"each").call(null!=b?b:a.nullContext||{},null!=b?g(b,"legendItems"):b,{name:"each",hash:{},fn:a.program(2,e,0),inverse:a.noop,data:e,loc:{start:{line:3,column:8},end:{line:10,column:17}}}))?f:"")+"    </ul>\n"},2:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return"            <li "+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"cssClass"):b,{name:"if",hash:{},fn:a.program(3,e,0),inverse:a.noop,data:e,loc:{start:{line:4,column:16},end:{line:4,column:59}}}))?f:"")+">\n"+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"imgUrl"):b,{name:"if",hash:{},fn:a.program(5,e,0),inverse:a.noop,data:e,loc:{start:{line:5,column:16},end:{line:7,column:23}}}))?f:"")+"                "+a.escapeExpression((g=null!=(g=h(c,"label")||(null!=b?h(b,"label"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"label",hash:{},data:e,loc:{start:{line:8,column:16},end:{line:8,column:25}}}):g))+"\n            </li>\n"},3:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'class="'+a.escapeExpression((f=null!=(f=g(c,"cssClass")||(null!=b?g(b,"cssClass"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"cssClass",hash:{},data:e,loc:{start:{line:4,column:39},end:{line:4,column:51}}}):f))+'"'},5:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'                    <img src="'+a.escapeExpression((f=null!=(f=g(c,"imgUrl")||(null!=b?g(b,"imgUrl"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"imgUrl",hash:{},data:e,loc:{start:{line:6,column:30},end:{line:6,column:40}}}):f))+'" />\n'},7:function(a,b,c,d,e){return"hidden"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isLegendVisible"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:1,column:0},end:{line:12,column:7}}}))?f:"")+'<div class="warning-message '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"dealerServiceLabel"):b,{name:"unless",hash:{},fn:a.program(7,e,0),inverse:a.noop,data:e,loc:{start:{line:13,column:28},end:{line:13,column:75}}}))?f:"")+'"><p class="dealer-service-label">'+a.escapeExpression((g=null!=(g=h(c,"dealerServiceLabel")||(null!=b?h(b,"dealerServiceLabel"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"dealerServiceLabel",hash:{},data:e,loc:{start:{line:13,column:109},end:{line:13,column:131}}}):g))+'</p></div>\n<h2 class="title '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"title"):b,{name:"unless",hash:{},fn:a.program(7,e,0),inverse:a.noop,data:e,loc:{start:{line:14,column:17},end:{line:14,column:51}}}))?f:"")+'">'+a.escapeExpression((g=null!=(g=h(c,"title")||(null!=b?h(b,"title"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"title",hash:{},data:e,loc:{start:{line:14,column:53},end:{line:14,column:62}}}):g))+'</h2>\n<ol class="dealers"></ol>\n'},useData:!0}
40)}),define("c_019_25B_DealerListView",["underscore","c_019_25B_DealerListItemView","marionette","c_019_25B_ModuleConstants","hbars!/components/c_019-25B/scripts/app/modules/dealerList/html/dealerListTemplate"],function(a,b,c,d,e){"use strict";var f=a.extend({},d.GENERIC_CSS_CLASSES,d.DEALER_LIST.VIEW.CSS_CLASSES);return c.CompositeView.extend({childView:b,childViewContainer:d.DEALER_LIST.SELECTORS.LIST_CONTAINER,className:function(){return this.model&&this.model.getIsLegendVisible()?d.DEALER_LIST.VIEW.CSS_CLASSES.HAS_LEGEND:void 0},modelEvents:function(){var a={};return a["change:"+d.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.TITLE]="_onTitleChange",a["change:"+d.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL]="_onDealerServiceLabelChange",a},template:e,ui:{title:d.DEALER_LIST.SELECTORS.TITLE,dealerServiceLabel:d.DEALER_LIST.SELECTORS.DEALER_SERVICE_LABEL,warningMessage:d.DEALER_LIST.SELECTORS.WARNING_MESSAGE},_onTitleChange:function(a,b){this.ui.title.text(b||"").toggleClass(f.HIDDEN,!b)},_onDealerServiceLabelChange:function(a,b){this.ui.dealerServiceLabel.text(b||""),this.ui.warningMessage.toggleClass(f.HIDDEN,!b)},onDomRefresh:function(){a.defer(function(){$("body").trigger(d.DEALER_LIST.EVENTS.DEALERS_PHONE_UPDATE)})}})}),define("c_019_25B_DealerListViewItemModel",["backbone","c_019_25B_ModuleConstants"],function(a,b){"use strict";var c=b.DEALER_LIST.VIEW_ITEM_MODEL.ATTRIBUTES;return a.Model.extend({getDealerId:function(){return this.get(c.DEALER_ID)},getDealerTypeCssClass:function(){return this.get(c.DEALER_TYPE_CSS_CLASS)},getDistance:function(){return this.get(c.DISTANCE)}})}),define("c_019_25B_DealerListViewCollection",["backbone","c_019_25B_DealerListViewItemModel","c_019_25B_ModuleConstants"],function(a,b,c){"use strict";return a.Collection.extend({initialize:function(a){this.enablePmaDealer=a},comparator:function(a){if(this.enablePmaDealer&&!JSON.parse(this.enablePmaDealer))return a.get(c.DEALER_LIST.VIEW_ITEM_MODEL.ATTRIBUTES.DISTANCE)},model:b})}),define("c_019_25B_DealerListViewModel",["backbone","c_019_25B_ModuleConstants"],function(a,b){"use strict";var c=b.DEALER_LIST.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({getIsLegendVisible:function(){return this.get(c.IS_LEGEND_VISIBLE)}})}),define("c_019_25B_DealerListController",["underscore","c_019_25B_ControllerBase","c_019_25B_DealerListView","c_019_25B_DealerListViewCollection","c_019_25B_DealerListViewModel","c_019_25B_ApplicationConstants","c_019_25B_ModelConstants","c_019_25B_ModuleConstants","storageManager","storageManagerKeys"],function(a,b,c,d,e,f,g,h,i,j){"use strict";var k=f.EVENTS,l=f.STATES,m=h.DEALER_LIST.CONTROLLER_OPTIONS;return b.extend({initialize:function(){var a=this.getRegion();a&&a.show(this._getView()),this._lookForConfigurator(),this._bindEvents()},_bindEvents:function(){var a=this.getEventAggregator(),b=this.getContentModel(),c=b&&b.getEnableModelDealerMapping();a&&(a.on(k.DEALER_SEARCH_COMPLETE,this._onDealerSearchComplete,this),a.on(k.SET_SELECTED_DEALER,this._onDealerSelected,this),a.on(k.DISPLAY_SELECTED_DEALER,this._displaySelectedDealer,this),c?a.off(k.STORAGE_SAVED).on(k.CHANGE_MODEL_SELECT,this._setDealerServiceMapping,this).on(k.STORAGE_SAVED,this._onStorageSaved,this):this._getModel().set(h.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL,""))},_onStorageSaved:function(){this._lookForConfigurator()},_lookForConfigurator:function(){var a,b,c=[];this.options.isConfigurator&&(a=i.loadItem(j.c_cfg.itemKey),a&&a.state&&a.state.modelCode&&(b=a.state.modelCode,this.options.mappingData&&(c=Object.keys(this.options.mappingData).filter(function(a){return a===b},this).map(function(a){return this.options.mappingData[a]},this))),a&&a.state&&a.state.model&&a.state.modelCode&&this._setDealerServiceMapping(c.length&&c[0],a.state.model))},_getCollection:function(){return this._collection||(this._collection=new d(this.getContentModel()&&this.getContentModel().get("enablePmaDealer")))},_getDealerTypeIconSettings:function(){return this.options[m.DEALER_TYPE_ICON_SETTINGS]},_getModel:function(){var b,c,d;return this._model||(b={},c=this.getContentModel(),d=h.DEALER_LIST.VIEW_MODEL.ATTRIBUTES,c&&(b[d.IS_LEGEND_VISIBLE]=c.getDealerIconKeys().length>1,b[d.LEGEND_ITEMS]=a.map(c.getDealerIconKeys(),function(b){return a.extend({label:b.legendLabel},this._getDealerTypeIconSettings()&&this._getDealerTypeIconSettings()[b.iconStyle])},this)),this._model=new e(b)),this._model},_getChildViewOptions:function(){var a=this.getContentModel(),b={};return b[h.DEALER_LIST.ITEM_VIEW_OPTIONS.EVENT_AGGREGATOR]=this.getEventAggregator(),a&&(b[h.DEALER_LIST.ITEM_VIEW_OPTIONS.SELECT_DEALER_CTA_TEXT]=a.getSelectDealerCtaLabel(),b[h.DEALER_LIST.ITEM_VIEW_OPTIONS.SELECT_DEALER_CTA_TEXT_MOBILE]=a.getSelectDealerCtaLabelMobile(),b[h.DEALER_LIST.ITEM_VIEW_OPTIONS.DISTANCE_UNIT_TEXT]=a.getDistanceUnitLabel(),b[h.DEALER_LIST.ITEM_VIEW_OPTIONS.ENABLE_DEALER_NUMBER]=a.getDealerListPhone()),b},_getView:function(){return this._view||(this._view=new c({collection:this._getCollection(),model:this._getModel(),childViewOptions:this._getChildViewOptions()}))},_setDealerServiceMapping:function(a,b){this.modelServiceId=a,this.modelName=b},_onDealerSearchComplete:function(b){var c,d,e,g,m,n,o=this.getContentModel(),p=this.getEventAggregator(),q=h.DEALER_LIST.VIEW_ITEM_MODEL.ATTRIBUTES,r=b&&b.map(function(b){var c=b.isInfinitiEcommRetailer(),d=a.find(o&&o.getDealerIconKeys(),function(c){return a.contains(c.dealerTypes,b.getType())}),e=d&&this._getDealerTypeIconSettings()[d.iconStyle],f={};if(f[q.DEALER_ID]=b.getDealerId(),f[q.NAME]=b.getName(),f[q.UNFORMATTED_ADDRESS]=b.getAddress(),f[q.ADDRESS]=b.getFormattedAddress(),f[q.DISTANCE]=parseFloat(b.getDistance()),f[q.FORMATTED_DISTANCE]=b.getDistance(),f[q.TYPE]=b.getType(),f[q.PHONE]=b.getPhone(),f[q.PHONE_NO_SPACE]=b.getPhone()&&b.getPhone().replace(/ /g,""),f[q.SHOW_PHONE]=b.getPhone()&&o.getDealerListPhone(),f[q.IS_INFINITI_ECOMM_RETAILER]=c,e&&(e.cssClass&&(f[q.DEALER_TYPE_CSS_CLASS]=h.GENER
40IC_CSS_CLASSES.DEALER_TYPE_PREFIX+e.cssClass),f[q.DEALER_TYPE_ICON_IMG_URL]=e.imgUrl),c){var g=this.options.content.attributes.formLabels;f[q.INFINITI_ECOMM_SERVICE_LABEL]=g.infinitiEcommServiceLabel,f[q.INFINITI_ECOMM_SERVICE_DESCRIPTION]=g.infinitiEcommServiceDescription}return f},this),s=this.options.selectedDealerController&&this.options.selectedDealerController.getDealerId(),t=this.options.selectedDealerController&&this.options.selectedDealerController.getDealerName(),u="";!s&&this.currentDealerId&&(s=this.currentDealerId,this.currentDealerId=void 0),this._getCollection().reset(r),o&&(e=o&&o.getEnableModelDealerMapping(),e&&this.modelServiceId?(this.options.isConfigurator&&!s&&(g=i.loadItem(j.c_cfg.profileDataSession),m=g&&g.storageData.location,n=g&&g.storageData.dealerLocation,g&&m&&n&&(s=n.dealerId)),d=s&&r.filter(function(a){return a.dealerId===s}),d&&!d.length&&this.modelName?(u=o.getResultLabelDealerService().replace("{dealerName}",t),u=u.replace("{modelName}",this.modelName),this._getModel().set(h.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL,u),this.currentDealerId=s,p.trigger(f.EVENTS.CLEAR_SELECTED_DEALER,!1)):d&&d.length&&this.modelName&&p.trigger(k.SET_SELECTED_DEALER,s,f.SELECTED_DEALER_SOURCES.USER_SELECTED)):s&&e&&p?p.trigger(k.SET_SELECTED_DEALER,s,f.SELECTED_DEALER_SOURCES.USER_SELECTED):e||this._getModel().set(h.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL,""),1===r.length?c=o.getResultLabelSingle():r.length&&(c=(o.getResultLabelMultiple()||"").replace("%resultCount%",r.length))),this._getModel().set(h.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.TITLE,c),p&&(p.trigger(k.SET_APPLICATION_STATE,l.SEARCH_RESULTS),p.trigger(k.DISPLAY_SELECTED_DEALER,l.DEALER_SELECTED))},_onDealerSelected:function(a){this._getModel().set(h.DEALER_LIST.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL,"")},_displaySelectedDealer:function(){var a=/[?&]dealerId=([^&]*)/.exec(this.options.window.location.search),b=a&&this.options.window.decodeURIComponent(a[1])||void 0;if(b){var c=document.querySelectorAll("[data-dealerid='"+b+"']");c&&c[0].click()}}})}),define("c_019_25B_DealerModel",["underscore","c_019_25B_ApplicationConstants","backbone","handlebars","c_019_25B_ModelConstants"],function(a,b,c,d,e){"use strict";var f=e.DEALER.ATTRIBUTES,g=e.GENERIC.EVENTS,h=e.DEALER.OPTIONS;return c.Model.extend({initialize:function(a,b){this.options=b||{},this.on(g.ERROR,this.onError,this).on(g.SYNC,this.onSync,this)},onError:function(){this.isErrored=!0},onSync:function(){this.isSynced=!0},url:function(){return this._getUrlFormat().replace("{DEALER_ID}",this._getDealerId())},_getAddressFieldOrder:function(){return this.options[h.ADDRESS_FIELD_ORDER]},_getDealerId:function(){return this.options[h.DEALER_ID]},_getDistanceUnit:function(){return this.options[h.DISTANCE_UNIT]},_getUrlFormat:function(){return this.options[h.URL_FORMAT]},getAddress:function(){return this.get(f.ADDRESS)},getDealerId:function(){return this.get(f.DEALER_ID)},getDistance:function(){var a,b=this.get(f.DISTANCE),c=this._getDistanceUnit();return b&&b.hasOwnProperty(c)&&(a=b[c].toFixed(1)),a},getFormattedAddress:function(){var c,e=this.getAddress()||{},f=b.ADDRESS_FIELDS.SPECIAL_FIELDS,g=a.pluck(f,"ID"),h=a.chain(this._getAddressFieldOrder()).pluck("id").filter(function(b){return e[b]||a.contains(g,b)}).map(function(b){return a.contains(g,b)?a.findWhere(f,{ID:b}).EXPRESSION:"{{"+b+"}}"}).value().join("");return h=h.replace(new RegExp("("+f.ITEM_SEPARATOR.EXPRESSION+"){2,}","g"),f.ITEM_SEPARATOR.EXPRESSION),h=h.replace(new RegExp("(^("+f.ITEM_SEPARATOR.EXPRESSION+")*|("+f.ITEM_SEPARATOR.EXPRESSION+")*$)","g"),""),h=h.replace(new RegExp(f.NEW_LINE.EXPRESSION+f.ITEM_SEPARATOR.EXPRESSION,"g"),f.NEW_LINE.EXPRESSION),h=h.replace(new RegExp("("+f.NEW_LINE.EXPRESSION+"){2,}","g"),f.NEW_LINE.EXPRESSION),h=h.replace(new RegExp("(^"+f.NEW_LINE.EXPRESSION+"|"+f.NEW_LINE.EXPRESSION+"$)","g"),""),c=d.compile(h),c(a.extend({},e,a.object(g,a.pluck(f,"HTML"))))},getName:function(){return this.get(f.NAME)},getType:function(){return this.get(f.TYPE)},getPhone:function(){var a=this.get(f.CONTACT);
40return a&&a.phone||a&&a.phones&&a.phones[0]&&a.phones[0].number},isInfinitiEcommRetailer:function(){var b=e.DEALER.PROPERTIES.SDR_DEALER_SERVICE,c=this.get(f.SERVICES),d=a.find(c,function(a){if(a.id.split("_").slice(-2).join("_")===b)return!0});return Boolean(d)}})}),define("c_019_25B_DealerCollection",["underscore","backbone","c_019_25B_DealerModel","remoteServices","c_019_25B_ModelConstants"],function(a,b,c,d,e){"use strict";var f=e.DEALER_COLLECTION.OPTIONS;return b.Collection.extend({initialize:function(a,b){this.options=b||{},this.CONSTANTS=e.DEALER,this.filterRMPDealer="true"==$.cookie(this.CONSTANTS.PROPERTIES.RMP_DEALER_COOKIE)},model:c,sync:function(a,b,c){var f,g;f=this.options.enablePmaDealer?{location:this._getPostalCode(),isMarketingDealer:!0,serviceId:this._getServiceFilters(),filterConditionType:this._getServiceFilterType()}:{lat:this._getLat(),long:this._getLng(),serviceId:this._getServiceFilters(),filterConditionType:this._getServiceFilterType()},this._getIsDealerAcceptsLeadsMandatory()&&(f.canAcceptLeads=!0),this._getDriveAtHomeEnabled()&&(f.radius=this._getRadius()),this._getTestDriveModelId()&&(f.testDriveModel=this._getTestDriveModelId()),(!this._getDisableDealerLoadWithoutLocation()||this._getLat()||this._getLng()||this._getPostalCode())&&(g=d.getDealers(this._getSize(),f),c&&(g.fail(c.error),g.done(c.success)),this.trigger(e.GENERIC.REQUEST,g))},parse:function(b){
41var c,d=b.error,e=this.CONSTANTS;if(!d&&(b.dealers||JSON.parse(b).dealers&&(b.dealers||JSON.parse(b).dealers).length))return c=b.dealers||JSON.parse(b).dealers,this.filterRMPDealer&&(c=a.filter(c,function(b){return a.find(b.services,function(a){if(a.id.split("_").slice(-2).join("_")==e.PROPERTIES.RMP_DEALER_SERVICE)return!0})})),c},_getAddressFieldOrder:function(){return this.options[f.ADDRESS_FIELD_ORDER]},_getDistanceUnit:function(){return this.options[f.DISTANCE_UNIT]},_getIsDealerAcceptsLeadsMandatory:function(){return this.options[f.IS_DEALER_ACCEPTS_LEADS_MANDATORY]},_getDisableDealerLoadWithoutLocation:function(){return this.options[f.DISABLE_DEALER_LOAD_WITHOUT_LOCATION]},_getLat:function(){return this.options[f.LAT]},_getLng:function(){return this.options[f.LNG]},_getPostalCode:function(){return this.options[f.POSTAL_CODE]},_getServiceFilters:function(){return this.options[f.SERVICE_FILTERS]},_removeServiceFilters:function(){return this.options[f.SERVICE_FILTERS]&&delete this.options[f.SERVICE_FILTERS],this},setServiceFilters:function(a,b){!a&&this._getServiceFilters()?this._removeServiceFilters():this.options[f.SERVICE_FILTERS]=a,b&&this.fetch()},_getServiceFilterType:function(){return this.options[f.SERVICE_FILTER_TYPE]},_getSize:function(){return this.options[f.SIZE]},_getDriveAtHomeEnabled:function(){return this.options[f.ENABLE_DRIVE_AT_HOME]},_getRadius:function(){return this.options[f.RADIUS]},_getTestDriveModelId:function(){return this.options[f.TEST_DRIVE_MODEL_ID]},setTestDriveModelId:function(a){return this.options[f.TEST_DRIVE_MODEL_ID]=a,this},_setLat:function(a){return this.options[f.LAT]=a,this},_setLng:function(a){return this.options[f.LNG]=a,this},_setPostalCode:function(a){return this.options[f.POSTAL_CODE]=a,this},isSearchLocationSet:function(){return this.options.enablePmaDealer?!!this._getPostalCode():!(!this._getLat()||!this._getLng())},setSearchLocation:function(a,b,c,d){var f={};f[e.DEALER.OPTIONS.DISTANCE_UNIT]=this._getDistanceUnit(),f[e.DEALER.OPTIONS.ADDRESS_FIELD_ORDER]=this._getAddressFieldOrder(),this._setLat(a)._setLng(b)._setPostalCode(c),d&&this.fetch(f)}})}),define("c_019_25B_DealerSearchController",["underscore","c_019_25B_ApplicationConstants","c_019_25B_ControllerConstants","c_019_25B_ControllerBase","c_019_25B_DealerCollection","marionette","c_019_25B_ModelConstants","objectFactory","storageManager","storageManagerKeys"],function(a,b,c,d,e,f,g,h,i,j){"use strict";var k=b.EVENTS,l=b.STATES,m=g.DEALER_COLLECTION.OPTIONS,n=g.GENERIC.EVENTS,o=c.DEALER_SEARCH.OPTIONS,p=b.SEARCH_LOCATION_SOURCES;return f.Object.extend({initialize:function(){var a={},b=this.getContentModel()&&this.getContentModel().get(g.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER)&&JSON.parse(this.getContentModel().get(g.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER)),c=this.getContentModel()&&this.getContentModel().get(g.CONTENT.ATTRIBUTES.DISABLE_DEALER_LOAD_WITHOUT_LOCATION)&&JSON.parse(this.getContentModel().get(g.CONTENT.ATTRIBUTES.DISABLE_DEALER_LOAD_WITHOUT_LOCATION));a[m.ADDRESS_FIELD_ORDER]=this._getAddressFieldOrder(),a[m.IS_DEALER_ACCEPTS_LEADS_MANDATORY]=this._getIsDealerAcceptsLeadsMandatory(),a[m.SERVICE_FILTERS]=this._getServiceFilters(),a[m.SERVICE_FILTER_TYPE]=this._getServiceFilterType(),a[m.SIZE]=this._getMaxResultCount(),a[m.DISTANCE_UNIT]=this._getDistanceUnit(),a[m.TEST_DRIVE_MODEL_ID]=this._getTestDriveModelId(),a[m.ENABLE_PMA_DEALER]=b,a[m.DISABLE_DEALER_LOAD_WITHOUT_LOCATION]=c;var d=this._getMaxRadius();d&&(a[m.ENABLE_DRIVE_AT_HOME]=!0,a[m.RADIUS]=d),this._dealerCollection=h.getObject(e,null,a),this._lookForServiceInMapping(),this._bindEvents()},_bindEvents:function(){var a=this.getContentModel(),b=a&&a.getEnableModelDealerMapping();
41this._getEventAggregator().on(k.SET_SEARCH_LOCATION,this._onSearchLocationSet,this).on(k.TRIGGER_SEARCH,this._onSearchLocationSet,this).on(k.TEST_DRIVE_MODEL_CHANGED,this._onTestDriveModelChange,this).on(k.CLEAR_SELECTED_DEALER,this._onClearSelectedDealer,this),b&&this._getEventAggregator().on(k.CHANGE_MODEL_SELECT,this._onDropdownModelChange,this).on(k.STORAGE_SAVED,this._onStorageSaved,this),this._dealerCollection.on(n.REQUEST,this._onSearchSubmit,this).on(n.SYNC,this._onSearchResultLoad,this).on(n.ERROR,this._onSearchFail,this)},_onStorageSaved:function(){this._lookForServiceInMapping()},_lookForServiceInMapping:function(){var a,b,c;this.options.mappingData&&(a=i.loadItem(j.c_cfg.itemKey))&&a.state&&a.state.modelCode&&(b=a.state.modelCode,c=Object.keys(this.options.mappingData).filter(function(a){return a===b},this).map(function(a){return this.options.mappingData[a]},this),c.length?this._onDropdownModelChange(c[0]):this._onDropdownModelChange(""))},_getAddressFieldOrder:function(){return this.options[o.ADDRESS_FIELD_ORDER]},_getDistanceUnit:function(){return this.options[o.DISTANCE_UNIT]},_getEventAggregator:function(){return this.options[o.EVENT_AGGREGATOR]},_getIsDealerAcceptsLeadsMandatory:function(){return this.options[o.IS_DEALER_ACCEPTS_LEADS_MANDATORY]},_getMaxResultCount:function(){return this.options[o.MAX_RESULT_COUNT]},_getMaxRadius:function(){return this.options[o.MAX_RADIUS]},_getServiceFilters:function(){return this.options[o.SERVICE_FILTERS]},_getServiceFilterType:function(){return this.options[o.SERVICE_FILTER_TYPE]},_getTestDriveModelId:function(){return this.options[o.TEST_DRIVE_MODEL_ID]},getContentModel:function(){return this.options[o.CONTENT]},_isSearchOnStartupEnabled:function(){return this.options[o.IS_SEARCH_ON_STARTUP_ENABLED]},_onSearchLocationSet:function(b,c){var d=this.getContentModel(),e=d&&d.getEnableModelDealerMapping();c!==p.SMART_LOCATION||c===p.SMART_LOCATION&&this._isSearchOnStartupEnabled()&&(a.isEmpty(b.dealerLocation)||e)?(this._getEventAggregator().trigger(k.SET_APPLICATION_STATE,l.SEARCHING),this._dealerCollection.setSearchLocation(b.getUserLat(),b.getUserLng(),b.getPostalCode(),!0)):c===p.SMART_LOCATION&&this._isSearchOnStartupEnabled()&&(a.isEmpty(b.dealerLocation)||e)&&this._dealerCollection.setSearchLocation(b.getUserLat(),b.getUserLng(),b.getPostalCode(),!1)},_onTestDriveModelChange:function(a){this._dealerCollection.setTestDriveModelId(a&&a.testDriveModelId)},_onDropdownModelChange:function(a){var b=[];a&&b.push(a),this.options.isConfigurator?this._dealerCollection.setServiceFilters(a,!1):this._dealerCollection.setServiceFilters(a,!0)},_onSearchSubmit:function(){this._getEventAggregator().trigger(k.DEALER_SEARCH_SUBMIT)},_onClearSelectedDealer:function(a){this._dealerCollection.isSearchLocationSet()&&a&&this._dealerCollection.fetch()},_onSearchResultLoad:function(b){var c=this.getContentModel()&&this.getContentModel().getDriveAtHomeEnabled();if(b.length){if(b.models[0].options.addressFieldOrder||(b=b.map(a.bind(function(a){return a.options.addressFieldOrder=this._getAddressFieldOrder(),a},this))),c){var d=b.filter(function(a){return a.attributes.isMarketingDealer});d.length&&(b=d)}this._getEventAggregator().trigger(k.DEALER_SEARCH_COMPLETE,b)}else this._getEventAggregator().trigger(k.DEALER_SEARCH_COMPLETE_ZERO_RESULTS)},_onSearchFail:function(a,b,c){this._getEventAggregator().trigger(k.DEALER_SEARCH_ERROR,c)}})}),define("c_019_25B_VehicleSelectorViewModel",["backbone","c_019_25B_ModuleConstants"],function(a,b){"use strict";var c=b.VEHICLE_SELECTOR.VIEW_MODEL;return a.Model.extend({initialize:function(a){this.options=a||{}},getVehicleList:function(){return this.get(c.ATTRIBUTES.VEHICLE_DATA)},getPreSelectedModelId:function(){return this.get(c.ATTRIBUTES.PRE_SELECTED_MODEL_ID)},getIsSelectDifferentVehicleInstructionVisible:function(){return this.get(c.ATTRIBUTES.IS_SELECT_DIFFERENT_VEHICLE_INSTRUCTION_VISIBLE)},setIsSelectDifferentVehicleInstructionVisible:function(a){return this.set(c.ATTRIBUTES.IS_SELECT_DIFFERENT_VEHICLE_INSTRUCTION_VISIBLE,a)}})}),define("hbars!/components/c_019-25B/scripts/app/modules/vehicleSelector/html/vehicleSelectorTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'                <option value="'+a.escapeExpression((f=null!=(f=g(c,"index")||e&&g(e,"index"))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"index",hash:{},data:e,loc:{start:{line:7,column:31},end:{line:7,column:41}}}):f))+'" data-test-drive-model-id="'+a.escapeExpression((f=null!=(f=g(c,"testDriveModelId")||(null!=b?g(b,"testDriveModelId"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"testDriveModelId",hash:{},data:e,loc:{start:{line:7,column:69},end:{line:7,column:89}}}):f))+'" data-model-id="'+a.escapeExpression((f=null!=(f=g(c,"modelId")||(null!=b?g(b,"modelId"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"modelId",hash:{},data:e,loc:{start:{line:7,column:106},end:{line:7,column:117}}}):f))+'">'+a.escapeExpression((f=null!=(f=g(c,"name")||(null!=b?g(b,"name"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"name",hash:{},data:e,loc:{start:{line:7,column:119},end:{line:7,column:127}}}):f))+"</option>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<div class="form-group required">\n    <p class="select-vehicle-instruction">'+a.escapeExpression((g=null!=(g=h(c,"selectVehicleInstruction")||(null!=b?h(b,"selectVehicleInstruction"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"selectVehicleInstruction",hash:{},data:e,loc:{start:{line:2,column:42},end:{line:2,column:70}}}):g))+'</p>\n    <label for="Vehicle-Selection-List">'+a.escapeExpression((g=null!=(g=h(c,"label")||(null!=b?h(b,"label"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"label",hash:{},data:e,loc:{start:{line:3,column:40},end:{line:3,column:49}}}):g))+'</label>\n    <div class="custom-selectbox custom-selectbox-form">\n        <select name="Vehicle-Selection-List" id="Vehicle-Selection-List" class="vehicle_selection_list">\n'+(null!=(f=h(c,"each").call(null!=b?b:a.nullContext||{},null!=b?h(b,"vehicleData"):b,{name:"each",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:6,column:12},end:{line:8,column:21}}}))?f:"")+'        </select>
41\n        <span class="selectedValue"></span>\n    </div>\n    <div class="select-different-vehicle-instruction error">\n        <span class="error-message">'+a.escapeExpression((g=null!=(g=h(c,"selectDifferentVehicleInstruction")||(null!=b?h(b,"selectDifferentVehicleInstruction"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"selectDifferentVehicleInstruction",hash:{},data:e,loc:{start:{line:13,column:36},end:{line:13,column:73}}}):g))+"</span>\n    </div>\n</div>\n"},useData:!0})}),define("c_019_25B_VehicleSelectorView",["marionette","hbars!/components/c_019-25B/scripts/app/modules/vehicleSelector/html/vehicleSelectorTemplate","c_019_25B_ModuleConstants","c_019_25B_ApplicationConstants","customSelect"],function(a,b,c,d,e){"use strict";var f=c.VEHICLE_SELECTOR.VIEW_MODEL.ATTRIBUTES;return a.ItemView.extend({template:b,events:{"change @ui.vehicleSelectionList":"_onVehicleSelectionChange"},ui:{vehicleSelectionList:c.VEHICLE_SELECTOR.SELECTORS.VEHICLE_SELECTION_LIST,selectVehicleInstruction:c.VEHICLE_SELECTOR.SELECTORS.SELECT_VEHICLE_INSTRUCTION,selectDifferentVehicleInstruction:c.VEHICLE_SELECTOR.SELECTORS.SELECT_DIFFERENT_VEHICLE_INSTRUCTION},modelEvents:function(){var a={};return a["change:"+f.IS_SELECT_DIFFERENT_VEHICLE_INSTRUCTION_VISIBLE]="_setSelectDifferentVehicleInstructionVisibility",a},onRender:function(){this._setSelectDifferentVehicleInstructionVisibility(),this._setSelectedItem(this.model.getPreSelectedModelId()),e.init(this.$el)},_onVehicleSelectionChange:function(){var a=this.ui.vehicleSelectionList.find(c.VEHICLE_SELECTOR.SELECTORS.SELECTED),b=a&&a.val(),e=this.model.getVehicleList()[b],f=!(e&&e.modelId);this._setSelectVehicleInstructionVisibility(f),this._getEventAggregator().trigger(d.EVENTS.VEHICLE_SELECTION_CHANGED,e)},_setSelectedItem:function(a){this.ui.vehicleSelectionList.find("["+c.VEHICLE_SELECTOR.SELECTORS.DATA_MODEL_ID+'="'+a+'"]').prop(c.VEHICLE_SELECTOR.PROPERTIES.SELECTED,!0).change()},_setSelectVehicleInstructionVisibility:function(a){a?this.ui.selectVehicleInstruction.removeClass(c.GENERIC_CSS_CLASSES.HIDDEN):this.ui.selectVehicleInstruction.addClass(c.GENERIC_CSS_CLASSES.HIDDEN)},_setSelectDifferentVehicleInstructionVisibility:function(){this.model.getIsSelectDifferentVehicleInstructionVisible()?this.ui.selectDifferentVehicleInstruction.removeClass(c.GENERIC_CSS_CLASSES.HIDDEN):this.ui.selectDifferentVehicleInstruction.addClass(c.GENERIC_CSS_CLASSES.HIDDEN)},_getEventAggregator:function(){return this.options[c.VEHICLE_SELECTOR.OPTIONS.EVENT_AGGREGATOR]}})}),define("c_019_25B_VehicleSelectorController",["underscore","c_019_25B_ApplicationConstants","c_019_25B_ControllerBase","c_019_25B_VehicleSelectorViewModel","c_019_25B_VehicleSelectorView","c_019_25B_ModuleConstants"],function(a,b,c,d,e,f){"use strict";var g=f.VEHICLE_SELECTOR;return c.extend({initialize:function(a){var b;this.options=a||{},this.getContentModel()&&this.getContentModel().getVehicleSelectorData()&&(b=!!this.getContentModel().getVehicleSelectorData().length),this.options.region&&b&&this.options.region.show(this._getView()),this._bindEvents()},_bindEvents:function(){this.getEventAggregator().on(b.EVENTS.SET_APPLICATION_STATE,this._onAppStateChanged,this).on(b.EVENTS.NO_TEST_DRIVE_STOCK_FOUND,this._onNoTestDriveStockFound,this)},_getModel:function(){var a,b={};return this._model||(b[g.VIEW_MODEL.ATTRIBUTES.LABEL]=this.getContentModel().getVehicleSelectorLabel(),a=this.getContentModel().getVehicleSelectorData()||[],a.unshift({name:this.getContentModel().getVehicleSelectorOption()}),b[g.VIEW_MODEL.ATTRIBUTES.VEHICLE_DATA]=a,b[g.VIEW_MODEL.ATTRIBUTES.PRE_SELECTED_MODEL_ID]=this._getActiveModelId(),b[g.VIEW_MODEL.ATTRIBUTES.SELECT_VEHICLE_INSTRUCTION]=this.getContentModel().getSelectVehicleInstruction(),this.getContentModel().getSelectDifferentVehicleInstruction()&&(b[g.VIEW_MODEL.ATTRIBUTES.SELECT_DIFFERENT_VEHICLE_INSTRUCTION]=this.getContentModel().getSelectDifferentVehicleInstruction()),this._model=new d(b)),this._model},_getView:function(){return this._view||(this._view=new e({model:this._getModel(),eventAggregator:this.options.eventAggregator}))},_getActiveModelId:function(){return this.options[g.CONTROLLER.OPTIONS.ACTIVE_MODEL_ID]},_onAppStateChanged:function(a){a===b.STATES.INITIALIZING?this._setVie
41wVisibility(!1):this._setViewVisibility(!0)},_onNoTestDriveStockFound:function(a){this.getContentModel().getSelectDifferentVehicleInstruction()&&this._getModel().setIsSelectDifferentVehicleInstructionVisible(a)},_setViewVisibility:function(a){!0===a?this._getView().$el.show():this._getView().$el.hide()}})}),define("hbars!/components/c_019-25B/scripts/app/modules/error/html/errorTemplate",["handlebars"],function(a){return a.template({compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<span class="error-message">'+a.escapeExpression((f=null!=(f=g(c,"errorMessage")||(null!=b?g(b,"errorMessage"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"errorMessage",hash:{},data:e,loc:{start:{line:1,column:28},end:{line:1,column:44}}}):f))+'</span>\n<div class="error drive-at-home-error hidden">\n    <div class="drive-at-home-error-content">\n        <p class="usg-heading-2">'+a.escapeExpression((f=null!=(f=g(c,"notFoundHeadline")||(null!=b?g(b,"notFoundHeadline"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"notFoundHeadline",hash:{},data:e,loc:{start:{line:4,column:33},end:{line:4,column:53}}}):f))+'</p>\n        <p class="usg-body">'+a.escapeExpression((f=null!=(f=g(c,"notFoundBodyCopy")||(null!=b?g(b,"notFoundBodyCopy"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"notFoundBodyCopy",hash:{},data:e,loc:{start:{line:5,column:28},end:{line:5,column:48}}}):f))+'</p>\n        <a class="js-cta usg-btn usg-btn--'+a.escapeExpression((f=null!=(f=g(c,"notFoundCtaStyle")||(null!=b?g(b,"notFoundCtaStyle"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"notFoundCtaStyle",hash:{},data:e,loc:{start:{line:6,column:42},end:{line:6,column:62}}}):f))+'" href="'+a.escapeExpression((f=null!=(f=g(c,"notFoundCtaLink")||(null!=b?g(b,"notFoundCtaLink"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"notFoundCtaLink",hash:{},data:e,loc:{start:{line:6,column:70},end:{line:6,column:89}}}):f))+'" target="'+a.escapeExpression((f=null!=(f=g(c,"notFoundCtaTarget")||(null!=b?g(b,"notFoundCtaTarget"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"notFoundCtaTarget",hash:{},data:e,loc:{start:{line:6,column:99},end:{line:6,column:120}}}):f))+'">'+a.escapeExpression((f=null!=(f=g(c,"notFoundCtaLabel")||(null!=b?g(b,"notFoundCtaLabel"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"notFoundCtaLabel",hash:{},data:e,loc:{start:{line:6,column:122},end:{line:6,column:142}}}):f))+"</a>\n    </div>\n</div>\n"},useData:!0})}),define("c_019_25B_ErrorView",["backbone","marionette","c_019_25B_ModuleConstants","hbars!/components/c_019-25B/scripts/app/modules/error/html/errorTemplate"],function(a,b,c,d){"use strict";return a.Marionette.ItemView.extend({modelEvents:function(){var a={};return a["change:"+c.ERROR.VIEW_MODEL.ATTRIBUTES.ERROR_MESSAGE]="_onErrorMessageChange",a},template:d,ui:{errorMessage:c.ERROR.SELECTORS.ERROR_MESSAGE},_onErrorMessageChange:function(a,b){this.ui.errorMessage.text(b)}})}),define("c_019_25B_ErrorViewModel",["backbone","c_019_25B_ModuleConstants"],function(a,b){"use strict";return a.Model.extend({setErrorMessage:function(a){return this.set(b.ERROR.VIEW_MODEL.ATTRIBUTES.ERROR_MESSAGE,a),this},setDriveAtHomeNotFoundHeadline:function(a){return this.set(b.ERROR.VIEW_MODEL.ATTRIBUTES.DRIVE_AT_HOME.NOT_FOUND_HEADLINE,a),this},setDriveAtHomeNotFoundBodyCopy:function(a){return this.set(b.ERROR.VIEW_MODEL.ATTRIBUTES.DRIVE_AT_HOME.NOT_FOUND_BODY_COPY,a),this},setDriveAtHomeNotFoundBodyCTALabel:function(a){return this.set(b.ERROR.VIEW_MODEL.ATTRIBUTES.DRIVE_AT_HOME.NOT_FOUND_CTA_LABEL,a),this},setDriveAtHomeNotFoundBodyCTALink:function(a){return this.set(b.ERROR.VIEW_MODEL.ATTRIBUTES.DRIVE_AT_HOME.NOT_FOUND_CTA_LINK,a),this},setDriveAtHomeNotFoundBodyCTAStyle:function(a){return this.set(b.ERROR.VIEW_MODEL.ATTRIBUTES.DRIVE_AT_HOME.NOT_FOUND_CTA_STYLE,a),this},setDriveAtHomeNotFoundBodyCTATarget:function(a){return this.set(b.ERROR.VIEW_MODEL.ATTRIBUTES.DRIVE_AT_HOME.NOT_FOUND_CTA_TARGET,a),this}})}),define("c_019_25B_ErrorController",["c_019_25B_ApplicationConstants","c_019_25B_ControllerBase","c_019_25B_ErrorView","c_019_25B_ErrorViewModel","c_019_25B_ModelConstants","c_019_25B_ModuleConstants"],function(a,b,c,d,e,f){"use strict";var g=a.EVENTS;return b.extend({initialize:function(){this.options.region&&this.options.region.show(this._getView()),this._bindEvents()},_bindEvents:function(){this.getEventAggregator()&&this.getEventAggregator().on(g.DEALER_SEARCH_COMPLETE_ZERO_RESULTS,this._onDealerSearchCompleteZeroResults,this).on(g.DEALER_SEARCH_ERROR,this._onDealerSearchError,this).on(g.DISPLAY_SELECTED_DEALER_REQUIRED_MESSAGE,this._onDisplaySelectedDealerRequiredMessage,this).on(g.LOCATION_NOT_FOUND,this._onLocationNotFound,this).on(g.GEOLOCATION_ERROR,this._onGeolocationError,this).on(g.NO_TEST_DRIVE_STOCK_FOUND_AT_DEALER,this._onNoTestDriveStockAtDealer,this)},_displayError:function(b,c){this._getModel().setErrorMessage(b),this.getEventAggregator().trigger(g.SET_APPLICATION_STATE,a.STATES.ERROR);var d=this.getRegion();c?d&&(d.$el.find(f.ERROR.SELECTORS.ERROR_MESSAGE).addClass(f.GENERIC_CSS_CLASSES.HIDDEN),d.$el.find(f.ERROR.SELECTORS.DRIVE_AT_HOME_ERROR).removeClass(f.GENERIC_CSS_CLASSES.HIDDEN)):d&&(d.$el.find(f.ERROR.SELECTORS.ERROR_MESSAGE).removeClass(f.GENERIC_CSS_CLASSES.HIDDEN),d.$el.find(f.ERROR.SELECTORS.DRIVE_AT_HOME_ERROR).addClass(f.GENERIC_CSS_CLASSES.HIDDEN))},_getModel:function(){if(!this._model){var a={},b=this.getContentModel();this._model=new d(a),b&&this._model.setDriveAtHomeNotFoundHeadline(b.getDriveAtHomeNotFoundHeadline()).setDriveAtHomeNotFoundBodyCopy(b.getDriveAtHomeNotFoundBodyCopy()).setDriveAtHomeNotFoundBodyCTALabel(b.getDriveAtHomeNotFoundBodyCTALabel()).setDriveAtHomeNotFoundBodyCTALink(b.getDriveAtHomeNotFoundBodyCTALink()).setDriveAtHomeNotFoundBodyCTAStyle(b.getDriveAtHomeNotFoundBodyCTAStyle()).setDriveAtHomeNotFoundBodyCTATarget(b.getDriveAtHomeNotFoundBodyCTATarget()?"_blank":"")}return this._model},_getView:function(){return this._view||(this._view=new c({model:this._getModel()}))},_onDealerSearchCompleteZeroResults:function(){this.getContentModel()&&this.getContentModel().getDriveAtHomeEnabled()?this._displayError(this.getContentModel().get(e.CONTENT.ATTRIBUTES.DEALER_SEARCH_RETURNED_ZERO_RESULTS),!0):this._displayError(this.getContentModel().get(e.CONTENT.ATTRIBUTES.DEALER_SEARCH_RETURNED_ZERO_RESULTS))},_onDealerSearchError:function(){this.getContentModel()&&this.getContentModel().getDriveAtHomeEnabled()?this._displayError(this.getContentModel().get(e.CONTENT.ATTRIBUTES.DEALER_SEARCH_RETURNED_ZERO_RESULTS),!0):this._displayError(this.getContentModel().get(e.CONTENT.ATTRIBUTES.DEALER_SEARCH_RETURNED_ZERO_RESULTS))},_onDisplaySelectedDealerRequiredMessage:function(){this._displayError(this.getContentModel().get(e.CONTENT.ATTRIBUTES.SELECTED_DEALER_IS_MANDATORY))},_onGeolocationError:function(){this._displayError(this.getContentModel().get(e.CONTENT.ATTRIBUTES.CANNOT_FIND_USER_LOCATION))}
41,_onNoModelSelected:function(){this._displayError(this.getContentModel().getSelectVehcileInstruction())},_onLocationNotFound:function(){this._displayError(this.getContentModel().getLocationNotFoundText())},_onNoTestDriveStockAtDealer:function(){this._displayError(this.getContentModel().getSelectDealerOrVehicleInstruction())},hide:function(){b.prototype.hide.apply(this,arguments),this.getRegion().$el.closest(a.SELECTORS.FORM_GROUP).removeClass(a.CSS_CLASSES.FORM_GROUP_ERROR)},show:function(){b.prototype.show.apply(this,arguments),this.getRegion().$el.closest(a.SELECTORS.FORM_GROUP).addClass(a.CSS_CLASSES.FORM_GROUP_ERROR)}})}),define("c_019_25B_GeolocationController",["underscore","c_019_25B_ApplicationConstants","c_019_25B_ControllerConstants","c_019_25B_ModelConstants","marionette","positionErrorCodes","trackingCodes","autocompleteContext"],function(a,b,c,d,e,f,g,h){"use strict";var i=b.EVENTS,j=b.STATES,k=c.GEOLOCATION.OPTIONS,l=b.SEARCH_LOCATION_SOURCES;return e.Object.extend({initialize:function(a,b){var c=b?b.get("formDetails"):"",e=b&&b.get(d.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER)&&JSON.parse(b.get(d.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER));this._bindEvents(),this.COUNTRY_CODE=this._getWindow().HELIOS.config.common.countryCode,e||(this.autocompleteContext=new h({COUNTRY_CODE:this.COUNTRY_CODE,window:this._getWindow(),enableAutoCompleteAllSearch:c&&c.enableAutoCompleteAllSearchForms}))},_bindEvents:function(){this._getEventAggregator().on(i.GEOLOCATE_USER,this._onGeolocateUser,this)},_getEventAggregator:function(){return this.options[k.EVENT_AGGREGATOR]},_getWindow:function(){return this.options[k.WINDOW]},_getAutocompleteContext:function(){return this.autocompleteContext},_onLocationSuccess:function(a){this._getEventAggregator().trigger(i.ANALYTICS_SEARCH,g.trackingVars.search.searchTermType.geolocation,a).trigger(i.SET_SEARCH_LOCATION,a,l.GEO_LOCATION)},_onLocationFail:function(){this._getEventAggregator().trigger(i.GEOLOCATION_ERROR)},_onGeolocateUser:function(){var b=this._getWindow();b&&b.navigator&&b.navigator.geolocation&&(b.navigator.geolocation.getCurrentPosition(a.bind(this._onGetCurrentPositionSuccess,this),a.bind(this._onGetCurrentPositionError,this),{timeout:1e4}),this._getEventAggregator().trigger(i.GEOLOCATION_REQUEST).trigger(i.SET_APPLICATION_STATE,j.SEARCHING))},_onGetCurrentPositionError:function(a){a.code!==f.PERMISSION_DENIED?this._getEventAggregator().trigger(i.GEOLOCATION_ERROR):this._getEventAggregator().trigger(i.GO_TO_PREVIOUS_APPLICATION_STATE)},_onGetCurrentPositionSuccess:function(b){this._getAutocompleteContext().getPostalCodeByCoordinatesAndCountry(b.coords.latitude,b.coords.longitude).done(a.bind(this._onLocationSuccess,this)).fail(a.bind(this._onLocationFail,this))}})}),define("hbars!/components/c_019-25B/scripts/app/modules/loader/html/loaderTemplate",["handlebars"],function(a){return a.template({compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){return""},useData:!0})}),define("c_019_25B_LoaderView",["backbone","marionette","hbars!/components/c_019-25B/scripts/app/modules/loader/html/loaderTemplate"],function(a,b,c){"use strict";return a.Marionette.ItemView.extend({template:c})}),define("c_019_25B_LoaderViewModel",["backbone"],function(a){"use strict";return a.Model.extend()}),define("c_019_25B_LoaderController",["c_019_25B_ControllerBase","c_019_25B_LoaderView","c_019_25B_LoaderViewModel"],function(a,b,c){"use strict";return a.extend({initialize:function(){this.options.region&&this.options.region.show(this._getView())},_getModel:function(){return this._model||(this._model=new c)},_getView:function(){return this._view||(this._view=new b({model:this._getModel()}))}})}),define("hbars!/components/c_019-25B/scripts/app/modules/search/html/searchTemplate",["handlebars"],function(a){return a.template({compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<div><label for="'+a.escapeExpression((f=null!=(f=g(c,"locationSearchElementId")||(null!=b?g(b,"locationSearchElementId"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"locationSearchElementId",hash:{},data:e,loc:{start:{line:1,column:17},end:{line:1,column:44}}}):f))+'">'+a.escapeExpression((f=null!=(f=g(c,"enterLocationText")||(null!=b?g(b,"enterLocationText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"enterLocationText",hash:{},data:e,loc:{start:{line:1,column:46},end:{line:1,column:67}}}):f))+'</label></div>\n<span class="location-fields">\n    <input type="text" id="'+a.escapeExpression((f=null!=(f=g(c,"locationSearchElementId")||(null!=b?g(b,"locationSearchElementId"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"locationSearchElementId",hash:{},data:e,loc:{start:{line:3,column:27},end:{line:3,column:54}}}):f))+'" class="location-input" name="location" data-no-results-text="'+a.escapeExpression((f=null!=(f=g(c,"noResultText")||(null!=b?g(b,"noResultText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"noResultText",hash:{},data:e,loc:{start:{line:3,column:117},end:{line:3,column:133}}}):f))+'"  placeholder="'+a.escapeExpression((f=null!=(f=g(c,"placeholderText")||(null!=b?g(b,"placeholderText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"placeholderText",hash:{},data:e,loc:{start:{line:3,column:149},end:{line:3,column:168}}}):f))+'"/>\n    <button type="button" class="btn-search confirm-location-cta btn-disabled-autocomplete search-for-dealers-button">
41\n        <span>'+a.escapeExpression((f=null!=(f=g(c,"searchForDealersText")||(null!=b?g(b,"searchForDealersText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"searchForDealersText",hash:{},data:e,loc:{start:{line:5,column:14},end:{line:5,column:38}}}):f))+'</span>\n    </button>\n    <span class="autocomplete-suggestions pac-container"></span>\n    <script type="text/x-handlebars-template" id="new-autocomplete-ctx">\n        {{#each this}}\n            <button type="button" class="pac-item" data-address-name="{{location.address}}">{{location.address}}</button>\n        {{/each}}\n    <\/script>\n</span>\n<div class="error-container">\n    <span class="error-message">'+a.escapeExpression((f=null!=(f=g(c,"errorMessage")||(null!=b?g(b,"errorMessage"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"errorMessage",hash:{},data:e,loc:{start:{line:15,column:32},end:{line:15,column:48}}}):f))+'</span>\n</div>\n<div><button class="use-current-location-button" type="button"><span>'+a.escapeExpression((f=null!=(f=g(c,"useCurrentLocationText")||(null!=b?g(b,"useCurrentLocationText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"useCurrentLocationText",hash:{},data:e,loc:{start:{line:17,column:69},end:{line:17,column:95}}}):f))+"</span></button></div>\n"},useData:!0})}),define("c_019_25B_SearchView",["c_019_25B_ApplicationConstants","underscore","googleMapsSingleton","heliosLocation","keyCodeConstants","marionette","c_019_25B_ModuleConstants","trackingCodes","hbars!/components/c_019-25B/scripts/app/modules/search/html/searchTemplate"],function(a,b,c,d,e,f,g,h,i){"use strict";var j=a.EVENTS;return f.ItemView.extend({events:{"click @ui.searchForDealersButton":"_onSearchForDealersButtonClick","click @ui.useCurrentLocationButton":"_onUseCurrentLocationButtonClick","keyup @ui.locationTextBox":"_selectFirstItemSearchResult","focus @ui.locationTextBox":"_searchBoxInitialState"},modelEvents:function(){var a={};return a["change:"+g.SEARCH.VIEW_MODEL.ATTRIBUTES.LOCATION_SEARCH_ELEMENT_VALUE]="_onLocationSearchElementValueChange",a},template:i,ui:function(){var a={};return a.locationTextBox=g.SEARCH.SELECTORS.LOCATION_TEXT_BOX,a.searchForDealersButton=g.SEARCH.SELECTORS.SEARCH_FOR_DEALERS_BUTTON,a.useCurrentLocationButton=g.SEARCH.SELECTORS.USE_CURRENT_LOCATION_BUTTON,a.errorContainer=g.SEARCH.SELECTORS.ERROR_CONTAINER,a.locationFields=g.SEARCH.SELECTORS.LOCATION_FIELDS,a},initialize:function(){this.enablePmaDealer=this.model.get(g.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.ENABLE_PMA_DEALER),this.regexPattern=this.model.get(g.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.POSTAL_CODE_PATTERN),this._bindEvents()},_bindEvents:function(){this.enablePmaDealer?this._getEventAggregator().on("getPostalCode",function(a,b){var c=new d({postalCode:a,regionCode:b});this._onSetSearchLocation(c),this._onSetUserQuery(a),this._triggerAnalytics(c),this._triggerSetLocation(c)}.bind(this)):this._getEventAggregator().on(g.SEARCH.AUTOCOMPLETE_PROPS.EVENTS.getPostalCodeByAddressName,function(a){this._onSetSearchLocation(a.heliosLocation),this._onSetUserQuery(a.userQuery),this._triggerAnalytics(a.heliosLocation),this._triggerSetLocation(a.heliosLocation)}.bind(this))},_selectFirstItemSearchResult:function(c){this.ui.errorContainer.removeClass(a.STATES.ERROR),this.ui.locationFields.removeClass(a.STATES.PMA_DEALER),c.keyCode===e.ENTER&&(this.enablePmaDealer?this.postalCodeSearch():b.delay(b.bind(function(){this._onSearchForDealersButtonClick()},this),50))},_searchBoxInitialState:function(b){this.ui.errorContainer.removeClass(a.STATES.ERROR),this.ui.locationFields.removeClass(a.STATES.PMA_DEALER)},getRegionCode:function(a){var c="";return b.isEmpty(a)||b.map(a,function(a){b.find(a.address_components,function(a){if(b.contains(a.types,"administrative_area_level_1"))return c=a.short_name,!1})}),c},postalCodeSearch:function(c){var d,e=new RegExp(this.regexPattern,"i"),f=this.ui.locationTextBox.val(),h=$(g.MAIN.VIEW.SELECTORS.ZER0_RESULT_ERROR),i={};e.test(f)?this.model.get(a.STATES.SEARCHED_POSTAL_CODE)!==f?(d=new google.maps.Geocoder,d.geocode({address:f},b.bind(function(b,c){c==google.maps.GeocoderStatus.OK?(i={lat:b[0].geometry.location.lat(),
42lng:b[0].geometry.location.lng(),locationId:b[0].place_id,address:b[0].formatted_address},this.ui.errorContainer.removeClass(a.STATES.ERROR),this.ui.locationFields.removeClass(a.STATES.PMA_DEALER),this.model.set(a.STATES.SEARCHED_POSTAL_CODE,f),this._triggerPostalCodeSearch(f,this.getRegionCode(b))):(this.ui.errorContainer.addClass(a.STATES.ERROR),this.ui.locationFields.addClass(a.STATES.PMA_DEALER),h.hide())},this))):(this.ui.errorContainer.removeClass(a.STATES.ERROR),this.ui.locationFields.removeClass(a.STATES.PMA_DEALER)):(this.ui.errorContainer.addClass(a.STATES.ERROR),this.ui.locationFields.addClass(a.STATES.PMA_DEALER),h.hide())},_getEventAggregator:function(){return this.options[g.SEARCH.VIEW.OPTIONS.EVENT_AGGREGATOR]},_onSetSearchLocation:function(a){this._setSearchLocation(a)},_onSetUserQuery:function(a){this._setUserQuery(a)},_onLocationSearchElementValueChange:function(a,b){this._setLocationSearchElementValue(b)},_onSearchForDealersButtonClick:function(){var a=g.SEARCH.DATA_ATTRIBUTES.GET_ADDRESS_NAME,b=$(g.SEARCH.SELECTORS.FIRST_RESULT_ITEM).data(a);this.enablePmaDealer?(b=this.ui.locationTextBox.val(),this.postalCodeSearch()):(b=$(g.SEARCH.SELECTORS.FIRST_RESULT_ITEM).data(a),this.autocompleteEventHandler.manuallySelectFirstItem()),$(g.SEARCH.AUTOCOMPLETE_PROPS.SELECTORS.inputElement).val(b)},_triggerPostalCodeSearch:function(b,c){this._getEventAggregator().trigger("getPostalCode",b,c,a.SEARCH_LO
42CATION_SOURCES.USER_SELECT)},_onUseCurrentLocationButtonClick:function(){this._getEventAggregator().trigger(j.GEOLOCATE_USER)},_getSearchLocation:function(){return this.model.getHeliosLocation()},_setLocationSearchElementValue:function(a){return this.ui.locationTextBox.val(a),this},_setSearchLocation:function(a){return this.model.setHeliosLocation(a),this},_setAutocompleteEventHandler:function(a){this.autocompleteEventHandler=a},_setUserQuery:function(a){return this.model.setUserQuery(a),this},_triggerAnalytics:function(a){this._getEventAggregator().trigger(j.ANALYTICS_SEARCH,h.trackingVars.search.searchTermType.userSearch,a,this.model.getUserQuery())},_triggerSetLocation:function(b){this._getEventAggregator().trigger(j.SET_SEARCH_LOCATION,b,a.SEARCH_LOCATION_SOURCES.USER_SELECT)},disableControls:function(){this.ui.locationTextBox.prop("disabled",!0),this.ui.searchForDealersButton.prop("disabled",!0),this.ui.useCurrentLocationButton.prop("disabled",!0)},enableControls:function(){this.ui.locationTextBox.prop("disabled",!1),this.ui.searchForDealersButton.prop("disabled",!1),this.ui.useCurrentLocationButton.prop("disabled",!1)}})}),define("c_019_25B_SearchViewModel",["backbone","c_019_25B_ModuleConstants"],function(a,b){"use strict";var c=b.SEARCH.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({getHeliosLocation:function(){return this.get(c.HELIOS_LOCATION)},getUserQuery:function(){return this.get(c.USER_SEARCH_TERM)},setEnterLocationText:function(a){return this.set(c.ENTER_LOCATION_TEXT,a),this},setPostalCodeValidation:function(a){return this.set(c.POSTAL_CODE_PATTERN,a),this},setEnablePMADealer:function(a){return this.set(c.ENABLE_PMA_DEALER,a),this},setErrorMessage:function(a){return this.set(c.ERROR_MESSAGE,a),this},setLocationSearchElementId:function(a){return this.set(c.LOCATION_SEARCH_ELEMENT_ID,a),this},setLocationSearchElementValue:function(a){return this.set(c.LOCATION_SEARCH_ELEMENT_VALUE,a),this},setPlaceholderText:function(a){return this.set(c.PLACEHOLDER_TEXT,a),this},setSearchForDealersText:function(a){return this.set(c.SEARCH_FOR_DEALERS_TEXT,a),this},setUseCurrentLocationText:function(a){return this.set(c.USE_CURRENT_LOCATION_TEXT,a),this},setHeliosLocation:function(a){return this.set(c.HELIOS_LOCATION,a),this},setUserQuery:function(a){return this.set(c.USER_SEARCH_TERM,a),this}})}),define("c_019_25B_SearchController",["underscore","c_019_25B_ApplicationConstants","c_019_25B_ControllerBase","c_019_25B_ModelConstants","c_019_25B_ModuleConstants","c_019_25B_SearchView","c_019_25B_SearchViewModel","autocompleteEventHandler"],function(a,b,c,d,e,f,g,h){"use strict";return c.extend({initialize:function(a){this.options=$.extend(this.options,{},a),this.enablePmaDealer=this.getContentModel()&&this.getContentModel().getEnablePMADealer(),this.options.region&&this.options.region.show(this._getView()),this.enablePmaDealer||this._initAutocompleteEventHandler(a),this._bindEvents()},_bindEvents:function(){this.getEventAggregator()&&this.getEventAggregator().on(b.EVENTS.SET_SEARCH_LOCATION,this._onSetSearchLocation,this)},_getModel:function(){var a;return this._model||(a=this.getContentModel(),this._model=(new g).setEnterLocationText(a.getLocationSearchLabel()).setPostalCodeValidation(a.getpostalCodeValidation()).setErrorMessage(a.getErrorMessage()).setEnablePMADealer(a.getEnablePMADealer()).setLocationSearchElementId(a.getLocationSearchElementId()).setPlaceholderText(a.getLocationSearchPlaceholder()).setSearchForDealersText(a.getSearchForDealersText()).setUseCurrentLocationText(a.getUseCurrentLocation())),this._model},_getView:function(){var a;return this._view||(a={model:this._getModel()},a[e.SEARCH.VIEW.OPTIONS.COUNTRY_CODE]=this.getWindow().HELIOS.config.common.countryCode,a[e.SEARCH.VIEW.OPTIONS.EVENT_AGGREGATOR]=this.getEventAggregator(),a[e.SEARCH.VIEW.OPTIONS.WINDOW]=this.getWindow(),this._view=new f(a)),this._view},_onSetSearchLocation:function(c,d){var e;switch(d){case b.SEARCH_LOCATION_SOURCES.GEO_LOCATION:e=this.getContentModel().getCurrentLocationText();break;case b.SEARCH_LOCATION_SOURCES.SMART_LOCATION:this.getContentModel().getIsLocationPrefillEnabled()&&(e=c.getUserAddress(),this.getContentModel().getEnablePMADealer()&&(e=c.getPostalCode()));break;
42case b.SEARCH_LOCATION_SOURCES.TEST_DRIVE_STOCK_CHECK:this.getContentModel().getIsTestDriveStockCheckEnabled()&&(e=c.getUserAddress())}a.isUndefined(e)||this._model.setLocationSearchElementValue(e)},_initAutocompleteEventHandler:function(){var a;return a=new h({COUNTRY_CODE:this.getWindow().HELIOS.config.common.countryCode,window:this.getWindow(),inputElement:e.SEARCH.AUTOCOMPLETE_PROPS.SELECTORS.inputElement,selectors:e.SEARCH.AUTOCOMPLETE_PROPS.SELECTORS,eventAggregator:this.getEventAggregator(),heliosObject:this.getWindow().HELIOS}),this._view&&this._view._setAutocompleteEventHandler&&this._view._setAutocompleteEventHandler(a),a},disable:function(){this._view.disableControls()},enable:function(){this._view.enableControls()}})}),define("hbars!/components/c_019-25B/scripts/app/modules/selectedDealer/html/selectedDealerTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){return"hidden"},3:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'            <p class="c_019_25B_infiniti_ecomm_label usg-text-bold">\n                '+a.escapeExpression((f=null!=(f=g(c,"infinitiEcommServiceLabel")||(null!=b?g(b,"infinitiEcommServiceLabel"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"infinitiEcommServiceLabel",hash:{},data:e,loc:{start:{line:14,column:16},end:{line:14,column:45}}}):f))+"\n            </p>\n"},5:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'            <p class="c_019_25B_infiniti_ecomm-copy">\n                '+a.escapeExpression((f=null!=(f=g(c,"infinitiEcommServiceDescription")||(null!=b?g(b,"infinitiEcommServiceDescription"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"infinitiEcommServiceDescription",hash:{},data:e,loc:{start:{line:19,column:16},end:{line:19,column:51}}}):f))+"\n            </p>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<h2 class="title">'+a.escapeExpression((g=null!=(g=h(c,"title")||(null!=b?h(b,"title"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"title",hash:{},data:e,loc:{start:{line:1,column:18},end:{line:1,column:27}}}):g))+'</h2>\n<div class="details">\n    <h3 class="name">'+a.escapeExpression((g=null!=(g=h(c,"name")||(null!=b?h(b,"name"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"name",hash:{},data:e,loc:{start:{line:3,column:21},end:{line:3,column:29}}}):g))+'</h3>\n    <p class="dealer-list-phone">\n        <a class="dealer-list-phone-link" href="tel:'+a.escapeExpression((g=null!=(g=h(c,"phone")||(null!=b?h(b,"phone"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"phone",hash:{},data:e,loc:{start:{line:5,column:52},end:{line:5,column:63}}}):g))+'">'+a.escapeExpression((g=null!=(g=h(c,"phone")||(null!=b?h(b,"phone"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"phone",hash:{},data:e,loc:{start:{line:5,column:65},end:{line:5,column:76}}}):g))+'</a>\n    </p>\n    <div class="address">'+(null!=(g=null!=(g=h(c,"address")||(null!=b?h(b,"address"):b))?g:a.hooks.helperMissing,f="function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"address",hash:{},data:e,loc:{start:{line:7,column:25},end:{line:7,column:38}}}):g)?f:"")+'</div>\n    <div class="distance '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"distance"):b,{name:"unless",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:8,column:25},end:{line:8,column:62}}}))?f:"")+'">\n        (<span class="distance-number">'+a.escapeExpression((g=null!=(g=h(c,"distance")||(null!=b?h(b,"distance"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"distance",hash:{},data:e,loc:{start:{line:9,column:39},end:{line:9,column:51}}}):g))+'</span><span class="distance-unit">'+a.escapeExpression((g=null!=(g=h(c,"distanceUnit")||(null!=b?h(b,"distanceUnit"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"distanceUnit",hash:{},data:e,loc:{start:{line:9,column:86},end:{line:9,column:102}}}):g))+'</span>)\n    </div>\n    <div class="c_019_25B_selected-dealer-infiniti-ecomm-section '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isInfinitiEcommRetailerVisible"):b,{name:"unless",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:11,column:65},end:{line:11,column:124}}}))?f:"")+'">\n'+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"infinitiEcommServiceLabel"):b,{name:"if",hash:{},fn:a.program(3,e,0),inverse:a.noop,data:e,loc:{start:{line:12,column:8},end:{line:16,column:15}}}))?f:"")+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"infinitiEcommServiceDescription"):b,{name:"if",hash:{},fn:a.program(5,e,0),inverse:a.noop,data:e,loc:{start:{line:17,column:8},end:{line:21,column:15}}}))?f:"")+'    </div>\n    <img class="icon-img hidden" src="'+a.escapeExpression((g=null!=(g=h(c,"imgUrl")||(null!=b?h(b,"imgUrl"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"imgUrl",hash:{},data:e,loc:{start:{line:23,column:38},end:{line:23,column:48}}}):g))+'" />\n</div>\n<div class="change-selected-dealer-cta-container">\n    <button class="change-selected-dealer '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isChangeDealerButtonVisible"):b,{name:"unless",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:26,column:42},end:{line:26,column:98}}}
42))?f:"")+'" type="button">'+a.escapeExpression((g=null!=(g=h(c,"changeSelectedDealerCta")||(null!=b?h(b,"changeSelectedDealerCta"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"changeSelectedDealerCta",hash:{},data:e,loc:{start:{line:26,column:114},end:{line:26,column:141}}}):g))+"</button>\n</div>\n"},useData:!0})}),define("c_019_25B_SelectedDealerView",["underscore","c_019_25B_ApplicationConstants","backbone","marionette","c_019_25B_ModuleConstants","hbars!/components/c_019-25B/scripts/app/modules/selectedDealer/html/selectedDealerTemplate"],function(a,b,c,d,e,f){"use strict";var g=e.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES;return c.Marionette.ItemView.extend({events:{"click @ui.changeSelectedDealerButton":"_onChangeSelectedDealerButtonClick"},modelEvents:function(){var a={};return a["change:"+g.ADDRESS]="_onAddressChange",a["change:"+g.DISTANCE]="_onDistanceChange",a["change:"+g.NAME]="_onNameChange",a["change:"+g.TITLE]="_onTitleChange",a["change:"+g.DEALER_TYPE_CSS_CLASS]="_onDealerTypeClassChange",a["change:"+g.DEALER_TYPE_ICON_IMG_URL]="_onIconImgChange",a["change:"+g.IS_CHANGE_DEALER_BUTTON_VISIBLE]="_onIsChangeDealerButtonVisible",a["change:"+g.PHONE]="_onPhoneChange",a["change:"+g.IS_INFINITI_ECOMM_RETAILER_VISIBLE]="_onIsInfinitiEcommRetailerVisible",a},template:f,ui:{address:e.SELECTED_DEALER.SELECTORS.ADDRESS,changeSelectedDealerButton:e.SELECTED_DEALER.SELECTORS.CHANGE_SELECTED_DEALER_BUTTON,distanceContainer:e.SELECTED_DEALER.SELECTORS.DISTANCE,distanceNumber:e.SELECTED_DEALER.SELECTORS.DISTANCE_NUMBER,name:e.SELECTED_DEALER.SELECTORS.NAME,title:e.SELECTED_DEALER.SELECTORS.TITLE,iconImg:e.SELECTED_DEALER.SELECTORS.ICON_IMG,detailsContainer:e.SELECTED_DEALER.SELECTORS.DETAILS,phoneUrl:e.SELECTED_DEALER.SELECTORS.DEALER_LIST_PHONE_LINK,isInfinitiEcommRetailer:e.SELECTED_DEALER.SELECTORS.INFINITI_ECOMM_SELECTOR},_onAddressChange:function(a,b){this.ui.address.html(b)},_onChangeSelectedDealerButtonClick:function(){this.trigger(e.SELECTED_DEALER.EVENTS.CHANGE_SELECTED_DEALER_CLICK)},_onDistanceChange:function(b,c){var d=!a.isFinite(c);this.ui.distanceContainer.toggleClass(e.GENERIC_CSS_CLASSES.HIDDEN,d),this.ui.distanceNumber.text(c)},_onIsInfinitiEcommRetailerVisible:function(a,b){this.ui.isInfinitiEcommRetailer.toggleClass(e.GENERIC_CSS_CLASSES.HIDDEN,!b)},_onNameChange:function(a,b){this.ui.name.text(b)},_onPhoneChange:function(a,b){var c="",d=this.model.get(e.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.ENABLE_DEALER_NUMBER);b&&(c=b.replace(/ /g,"")),this.ui.phoneUrl.text(b).toggleClass(e.GENERIC_CSS_CLASSES.HIDDEN,!c||!d),this.ui.phoneUrl.attr("href","tel:"+c),$("body").trigger(e.DEALER_LIST.EVENTS.DEALERS_PHONE_UPDATE)},_onTitleChange:function(a,b){this.ui.title.text(b)},_onDealerTypeClassChange:function(a,b){this.ui.detailsContainer.removeClass(a.previous(g.DEALER_TYPE_CSS_CLASS)).addClass(b)},_onIconImgChange:function(b,c){this.ui.iconImg.attr("src",c).toggleClass(e.GENERIC_CSS_CLASSES.HIDDEN,a.isUndefined(c))},_onIsChangeDealerButtonVisible:function(a,b){this.ui.changeSelectedDealerButton.toggleClass(e.GENERIC_CSS_CLASSES.HIDDEN,!b)}})}),define("c_019_25B_SelectedDealerViewModel",["backbone","c_019_25B_ModuleConstants"],function(a,b){"use strict";return a.Model.extend({defaults:function(){var a={};return a[b.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.IS_CHANGE_DEALER_BUTTON_VISIBLE]=!0,a[b.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.IS_INFINITI_ECOMM_RETAILER_VISIBLE]=!0,a}})}),define("c_019_25B_SelectedDealerController",["underscore","c_019_25B_ApplicationConstants","c_019_25B_ControllerBase","c_019_25B_DealerModel","c_019_25B_ModelConstants","c_019_25B_ModuleConstants","c_019_25B_SelectedDealerView","c_019_25B_SelectedDealerViewModel","objectFactory"],function(a,b,c,d,e,f,g,h,i){"use strict";var j=f.SELECTED_DEALER.CONTROLLER.OPTIONS;return c.extend({initialize:function(){this.options.region&&this.options.region.show(this._getView()),this._bindEvents()},_bindEvents:function(){this.getEventAggregator()&&this.getEventAggregator().on(b.EVENTS.SET_SELECTED_DEALER,this._onSetSelectedDealer,this)},_getAddressFieldOrder:function(){return this.options[j.ADDRESS_FIELD_ORDER]},_getDealerTypeIconSettings:function(){return this.options[j.DEALER_TYPE_ICON_SETTINGS]},_getDealerTypeIconCssClass:function(a){return this._getDealerTypeIconSettings()&&this._getDealerTypeIconSettings()[a]&&this._getDealerTypeIconSettings()[a].cssClass},_getDealerTypeIconIconURL:function(a){return this._getDealerTypeIconSettings()&&this._getDealerTypeIconSettings()[a]&&this._getDealerTypeIconSettings()[a].imgUrl},_getModel:function(){return this._model||(this._model=i.getObject(h,null,{}).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.TITLE,this.getContentModel().get(e.CONTENT.ATTRIBUTES.DEALER_SELECTED_TEXT)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.CHANGE_SELECTED_DEALER_CTA,this.getContentModel().get(e.CONTENT.ATTRIBUTES.CHANGE_SELECTED_DEALER_CTA)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.DISTANCE_UNIT,this.getContentModel().get(e.CONTENT.ATTRIBUTES.DISTANCE_UNIT_LABEL)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.ENABLE_DEALER_NUMBER,this.getContentModel().get(e.CONTENT.ATTRIBUTES.SEARCH_FOR_DEALER_PHONE)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.INFINITI_ECOMM_SERVICE_LABEL,this.getContentModel().get(e.CONTENT.ATTRIBUTES.INFINITI_ECOMM_SERVICE_LABEL)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.INFINITI_ECOMM_SERVICE_DESCRIPTION,this.getContentModel().get(e.CONTENT.ATTRIBUTES.INFINITI_ECOMM_SERVICE_DESCRIPTION))),this._model},_getView:function(){var a;return this._view||(a={model:this._getModel()},a[f.SELECTED_DEALER.VIEW.OPTIONS.EVENT_AGGREGATOR]=this.getEventAggregator(),this._view=new g(a)),this._view},_onDealerModelError:function(){},_onDealerModelSync:function(c){var d,g,h,i,j,k=this.getContentModel().getDealerIconKeys();k.length>1&&(d=a.find(k,function(b){return a.contains(b.dealerTypes,c.getType())}),g=d&&d.iconStyle,h=this._getDealerTypeIconCssClass(g),i=h&&f.GENERIC_CSS_CLASSES.DEALER_TYPE_PREFIX+h,j=this._getDealerTypeIconIconURL(g)),this._getModel().set(e.DEALER.OPTIONS.DEALER_ID,c.getDealerId()).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.NAME,c.getName()).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.ADDRESS,c.getFormattedAddress()).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.DEALER_TYPE_CSS_CLASS,i).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.DEALER_TYPE_ICON_IMG_URL,j).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.PHONE,c.getPhone()).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.IS_INFINITI_ECOMM_RETAILER_VISIBLE,c.isInfinitiEcommRetailer()),this.getEventAggregator().trigger(b.EVENTS.SET_APPLICATION_STATE,b.STATES.DEALER_SELECTED).trigger(b.EVENTS.SELECTED_DEALER_SYNC,c)},_onChangeSelectedDealerClick:function(a){var c,d=!0;a===b.SELECTED_DEALER_SOURCES.SMART_LOCATION?c=b.STATES.SEARCH:(c=b.STATES.SEARCH_RESULTS,d=!1),this.getEventAggregator().trigger(b.EVENTS.LOCK_STATE,!1).trigger(b.EVENTS.SET_APPLICATION_STATE,c).trigger(b.EVENTS.CLEAR_SELECTED_DEALER,d)},_onSetSelectedDealer:function(b,c,e){this._getModel().set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.DISTANCE,e),b instanceof d?this._onDealerModelSync(b):this._requestDealer(b),this.stopListening(this._getView(),f.SELECTED_DEALER.EVENTS.CHANGE_SELECTED_DEALER_CLICK).listenTo(this._getView(),f.SELECTED_DEALER.EVENTS.CHANGE_SELECTED_DEALER_CLICK,a.partial(a.bind(this._onChangeSelectedDealerClick,this),c))},_requestDealer:function(a){var c={};c[e.DEALER.OPTIONS.ADDRESS_FIELD_ORDER]=this._getAddressFieldOrder(),c[e.DEALER.OPTIONS.DEALER_ID]=a,c[e.DEALER.OPTIONS.DISTANCE_UNIT]=this.getContentModel().get(e.CONTENT.ATTRIBUTES.DISTANCE_UNIT),c[e.DEALER.OPTIONS.URL_FORMAT]=this.getContentModel().get(e.CONTENT.ATTRIBUTES.DEALER_URL_FORMAT),this._dealerModel=i.getObject(d,null,c).on(e.GENERIC.EVENTS.ERROR,this._onDealerModelError,this).on(e.GENERIC.EVENTS.SYNC,this._onDealerModelSync,this).fetch(),this.getEventAggregator().trigger(b.EVENTS.SET_APPLICATION_STATE,b.STATES.SEARCHING)},getDealerId:function(){return this._getModel().get(e.DEALER.OPTIONS.DEALER_ID)},setDealerId:function(a){return this._getModel().set(e.DEALER.OPTIONS.DEALER_ID,a),this},getDealerName:function(){return this._getModel().get(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.NAME)},lockDealer:function(){this._getModel().set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.IS_CHANGE_DEALER_BUTTON_VISIBLE,!1)}})}),define("c_019_25B_StartupController",["underscore","c_019_25B_ApplicationConstants","c_019_25B_ControllerConstants","c_019_25B_DealerModel","googleMapsSearcher","heliosLocation","marionette","c_019_25B_ModelConstants","logger","objectFactory"],function(a,b,c,d,e,f,g,h,i,j){"use strict";function k(){return l||(l=new i({prefix:"C19.25 StartupController"}))}
42var l,m=b.EVENTS,n=b.STATES,o=h.DEALER.OPTIONS,p=h.GENERIC.EVENTS,q=c.STARTUP.OPTIONS,r=b.SEARCH_LOCATION_SOURCES,s=b.SELECTED_DEALER_SOURCES;return g.Object.extend({initialize:function(){this._dealerModelCache=[]},run:function(){k().debug("Checking URL for deep link dealer"),this._getDealerFromDeepLink().done(a.bind(function(a){k().debug("Deep link dealer found in URL"),this._getSmartLocationContext().set((new f).setDealerId(a.getDealerId()))},this)).always(a.bind(function(){k().debug("Checking URL for deep link search location"),this._getSearchLocationFromDeepLink().done(a.bind(function(a){k().debug("Deep link search location found in URL"),this._getSmartLocationContext().set(a)},this)).always(a.bind(function(){k().debug("Checking SmartLocationContext for preferred dealer"),this._getDealerFromSmartLocation().done(a.bind(function(b){k().debug("Dealer found in SmartLocationContext"),this._getEventAggregator().trigger(m.LOCK_STATE,this._getIsTestDriveStockCheckAvailable()).trigger(m.SET_SELECTED_DEALER,b,s.SMART_LOCATION),this._getSearchLocationFromSmartLocation().done(a.bind(function(a){k().debug("Search location found in SmartLocationContext"),this._getEventAggregator().trigger(m.SET_SEARCH_LOCATION,a,r.SMART_LOCATION)},this))},this)).fail(a.bind(function(){k().debug("Dealer not found in SmartLocationContext").debug("Checking SmartLocationContext for search location"),this._getSearchLocationFromSmartLocation().done(a.bind(function(a){k().debug("Search location found in SmartLocationContext"),this._getEventAggregator().trigger(m.SET_SEARCH_LOCATION,a,r.SMART_LOCATION).trigger(m.SET_APPLICATION_STATE,n.SEARCH)},this)).fail(a.bind(function(){k().debug("Search location not found in SmartLocationContext"),this._getDealerFromPreferred().done(a.bind(function(a){k().debug("Dealer found in UserPreferred"),this._getEventAggregator().trigger(m.SET_SELECTED_DEALER,a,s.SMART_LOCATION)},this)).fail(a.bind(function(){k().debug("Dealer not found in UserPreferred"),this._getEventAggregator().trigger(m.SET_APPLICATION_STATE,n.SEARCH)},this))},this))},this))},this))},this))},_getDealerById:function(b,c){var e,f=a.find(this._dealerModelCache,function(a){return a.options[o.DEALER_ID]===b});f?f.isSynced?c.resolve(f):f.isErrored?c.reject():f.on(p.ERROR,c.reject).on(p.SYNC,c.resolve):(e={},e[o.DEALER_ID]=b,e[o.URL_FORMAT]=this._getDealerUrlFormat(),e[o.ADDRESS_FIELD_ORDER]=this._getAddressFieldOrder(),f=j.getObject(d,null,e).on(p.ERROR,c.reject).on(p.SYNC,c.resolve),this._dealerModelCache.push(f),f.fetch())},_getDealerFromDeepLink:function(){var b=this._getDeepLinkDealerId(),c=$.Deferred();return a.isUndefined(b)?c.reject():this._getDealerById(b,c),c},_getDealerFromSmartLocation:function(){var b=$.Deferred();return a.isUndefined(this._getSmartLocationContext())?b.reject():this._getSmartLocationContext().get().done(a.bind(function(a){a.getDealerId()?this._getDealerById(a.getDealerId(),b):b.reject()},this)).fail(b.reject),b},_getDealerFromPreferred:function(){var a,b=$.Deferred(),c=this._getHeliosObject();return $.isNestedProp(c,["config","common","api","storageSettings"])&&c.config.common.api.storageSettings.preferredDealer&&$.isNestedProp(c,["state","dealer","preferred"])&&c.state.dealer.preferred?(a=/\_([0-9].*?)\-/.exec(c.state.dealer.preferred)&&/\_([0-9].*?)\-/.exec(c.state.dealer.preferred)[1],a?this._getDealerById(a,b):b.reject()):b.reject(),b},_getDeepLinkDealerId:function(){return this.options[q.DEEP_LINK_DEALER_ID]},_getDeepLinkSearchLocation:function(){return this.options[q.DEEP_LINK_SEARCH_LOCATION]},_getMarketCountryCode:function(){return this.options[q.MARKET_COUNTRY_CODE]},_getSearchLocationFromDeepLink:function(){var b=$.Deferred();return this._getDeepLinkSearchLocation()?j.getObject(e).getPlaceResultForLocation({countryRestriction:this._getMarketCountryCode(),location:this._getDeepLinkSearchLocation()}).done(a.bind(function(a){b.resolve((new f).setUserLocationFromGooglePlaceResult(a))},this)).fail(b.reject):b.reject(),b},_getSearchLocationFromSmartLocation:function(){var b=$.Deferred();return a.isUndefined(this._getSmartLocationContext())?b.reject():this._getSmartLocationContext().get().done(a.bind(function(c){!a.isUndefined(c.getUserAddress())&&!a.isUndefined(c.getUserLat())&&!a.isUndefined(c.getUserLng())||!a.isUndefined(c.getPostalCode())&&this.options[q.ENABLE_PMA_DEALER]?b.resolve(c):b.reject()},this)).fail(b.reject),b},_getDealerUrlFormat:function(){return this.options[q.DEALER_URL_FORMAT]},_getAddressFieldOrder:function(){return this.options[q.ADDRESS_FIELD_ORDER]},_getEventAggregator:function(){return this.options[q.EVENT_AGGREGATOR]},_getSmartLocationContext:function(){return this.options[q.SMART_LOCATION_CONTEXT]},_getHeliosObject:function(){return this.options[q.HELIOS_OBJECT]},_getIsTestDriveStockCheckAvailable:function(){return this.options[q.IS_TEST_DRIVE_STOCK_CHECK_AVAILABLE]}})}),define("c_019_25B_StateController",["underscore","c_019_25B_ApplicationConstants","c_019_25B_ControllerConstants","marionette"],function(a,b,c,d){"use strict";var e=b.EVENTS,f=b.STATES,g=c.STATE.OPTIONS;return d.Object.extend({initialize:function(){this._bindEvents()},_bindEvents:function(){this._getEventAggregator()&&this._getEventAggregator().on(e.GO_TO_PREVIOUS_APPLICATION_STATE,this.goToPreviousState,this).on(e.SET_APPLICATION_STATE,this.setState,this).on(e.LOCK_STATE,this._setStateLock,this).on(e.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,this._setErrorVisibilityPersistence,this)},_getDealerListController:function(){return this.options[g.DEALER_LIST_CONTROLLER]},_getErrorController:function(){return this.options[g.ERROR_CONTROLLER]},_getEventAggregator:function(){return this.options[g.EVENT_AGGREGATOR]},_getLoaderController:function(){return this.options[g.LOADER_CONTROLLER]},_getSearchController:function(){return this.options[g.SEARCH_CONTROLLER]},_getSelectedDealerController:function(){return this.options[g.SELECTED_DEALER_CONTROLLER]},_getDriveAtHomeEnabled:function(){return this.options[g.DRIVE_AT_HOME_ENABLED]},_getErrorVisibilityPersistence:function(){return this._errorVisibilityPersistence},_toggleErrorVisibility:function(b){(a.isUndefined(b)?this._getErrorVisibilityPersistence():b)?this._getErrorController().show():this._getErrorController().hide()},_onStateChange:function(){switch(this._state){case f.DEALER_SELECTED:this._getDealerListController().hide(),this._toggleErrorVisibility(!1),this._getLoaderController().hide(),this._getSearchController().hide().enable(),this._getSelectedDealerController().show();break;case f.ERROR:this._getDriveAtHomeEnabled()?this._getDealerListController().hide():this._getDealerListController().show(),this._toggleErrorVisibility(!0),this._getLoaderController().hide(),this._getSearchController().show().enable(),this._getSelectedDealerController().hide();break;case f.INITIALIZING:this._getDealerListController().hide(),this._toggleErrorVisibility(!1),this._getLoaderController().show(),this._getSearchController().hide().enable(),this._getSelectedDealerController().hide();break;case f.SEARCH:this._getDealerListController().hide(),this._toggleErrorVisibility(),this._getLoaderController().hide(),this._getSearchController().show().enable(),this._getSelectedDealerController().hide();break;case f.SEARCH_RESULTS:this._getDealerListController().show(),this._toggleErrorVisibility(),this._getLoaderController().hide(),this._getSearchController().show().enable(),this._getSelectedDealerController().hide();break;case f.SEARCHING:this._getDealerListController().hide(),this._toggleErrorVisibility(!1),this._getLoaderController().show(),this._getSearchController().show().disable(),this._getSelectedDealerController().hide()}},goToPreviousState:function(){this.setState(this._previousState)},getCurrentState:function(){return this._state},_setStateLock:function(a){return this._stateLock=a,this},_isStateLocked:function(){return!!this._stateLock||!1},_setErrorVisibilityPersistence:function(a){return this._errorVisibilityPersistence=a,this},setState:function(a){return this._state===a||this._isStateLocked()||(this._previousState=this._state,this._state=a,this._onStateChange()),this}})}),define("c_019_25B_TestDriveStockCheckController",["underscore","marionette","c_019_25B_ControllerConstants","c_019_25B_ApplicationConstants","c_019_25B_ModuleConstants","remoteServices","logger","storageManager"],function(a,b,c,d,e,f,g,h){"use strict";function i(){return j||(j=new g({prefix:"C19.25 TestDriveStockCheckController"}))}var j,k=c.TEST_DRIVE_STOCK_CHECK.OPTIONS,l={keys:{dealerIdInForm:"dealerIdInForm",modelId:"modelId"}},m={keys:{lastVisitedVehicle:"lastVisitedVehicle",queryParamsData:"queryParamsData"},localStorage:{mode:"localStorage"},sessionStorage:{mode:"sessionStorage"}};return b.Object.extend({initialize:function(){this._dealersList={},this._errorState={modelNotFoundAtDealer:!1,modelUnavailable:!1,silent:!1},this._loadQueryParamsData(),this._getEventAggregator().trigger(d.EVENTS.LOCK_STATE,!0),this._setErrorSilence(this._isQueryParamInURL(l.keys.dealerIdInForm))},initValidation:function(){this._setSelectedVehicleData(this._lookUpVehicleData()),this._setDealerId(this._lookUpDealerIdInForm()),this._getSmartLocationData().done(a.bind(function(b){b&&(a.isUndefined(b.getDealerId())||this._setDealerId(b.getDealerId()),a.isUndefined(b.getUserAddress())||a.isUndefined(b.getUserLat())||a.isUndefined(b.getUserLng())||this._setSearchLocation(b))}
42,this)).always(a.bind(function(){this._validateBooking(),this._bindEvents()},this))},_bindEvents:function(){this._getEventAggregator().on(d.EVENTS.VEHICLE_SELECTION_CHANGED,this._onVehicleSelectionChange,this).on(d.EVENTS.SET_SELECTED_DEALER,this._onSetSelectedDealer,this).on(d.EVENTS.SET_SEARCH_LOCATION,this._onSearchLocationChange,this).on(d.EVENTS.DEALER_SEARCH_COMPLETE_ZERO_RESULTS,this._onNoStockFoundForModel,this)},getModelId:function(){return this._getSelectedVehicleData()&&this._getSelectedVehicleData().modelId},getTestDriveModelId:function(){return this._getSelectedVehicleData()&&this._getSelectedVehicleData().testDriveModelId},_getSelectedVehicleData:function(){return this._selectedVehicleData},_getDealerId:function(){return this._dealerId},_getSearchLocation:function(){return this._searchLocation},_getValidationActive:function(){return this._validationActive},_getDealersList:function(){return this._dealersList},_getQueryParamsData:function(){return this._queryParamsData},_getErrorModelNotFoundAtDealer:function(){return this._errorState.modelNotFoundAtDealer},_getErrorModelUnavailable:function(){return this._errorState.modelUnavailable},_getErrorSilence:function(){return this._errorState.silent},_setSelectedVehicleData:function(a){return a&&a.modelId&&this._isModelIdValid(a.modelId)||(a=null),a&&a.modelId&&this._saveSessionModelId(a.modelId),this._selectedVehicleData=a,this._getEventAggregator().trigger(d.EVENTS.TEST_DRIVE_MODEL_CHANGED,this._getSelectedVehicleData()),this},_setDealerId:function(b){return this._dealerId=a.isObject(b)?b.get(e.VEHICLE_SELECTOR.VIEW_MODEL.ATTRIBUTES.DEALER_ID):b,this},_setSearchLocation:function(a){return this._searchLocation=a,this},_setValidationActive:function(a){return this._validationActive=a,this},_setDealersList:function(a){return this._isModelIdSet()&&(this._dealersList[this.getModelId()]=a),this},_setQueryParamsData:function(a){return this._queryParamsData=a,this},_setErrorModelNotFoundAtDealer:function(a){return this._errorState.modelNotFoundAtDealer=a,this},_setErrorModelUnavailable:function(a){return this._errorState.modelUnavailable=a,this},_setErrorSilence:function(a){return this._errorState.silent=a,this},_isModelIdSet:function(){return!!this.getModelId()},_isDealerIdSet:function(){return!!this._getDealerId()},
43_isSearchLocationSet:function(){return!!this._getSearchLocation()},_isValidationActive:function(){return!!this._getValidationActive()},isModelNotFoundAtDealer:function(){return!!this._getErrorModelNotFoundAtDealer()},_isModelUnavailable:function(){return!!this._getErrorModelUnavailable()},_validateBooking:function(){this._isValidationActive()||(this._setValidationActive(!0),this._checkModelIsInStock().done(a.bind(function(a){a?this._setErrorModelNotFoundAtDealer(!1)._setErrorModelUnavailable(!1)._setErrorSilence(!1):this._setErrorModelNotFoundAtDealer(!0)._setErrorModelUnavailable(!1)},this)).always(a.bind(function(){this._setValidationActive(!1)._eventHandler()},this)))},_eventHandler:function(){i().debug("Current error state: "+JSON.stringify(this._errorState)),i().debug("Is test drive model currently set: "+this._isModelIdSet()),this._getEventAggregator().trigger(d.EVENTS.LOCK_STATE,!1),this._isModelUnavailable()&&this._isModelIdSet()?this._onNoStockFoundForModel():this.isModelNotFoundAtDealer()&&this._isModelIdSet()?this._noStockFoundAtDealer():(this._getEventAggregator().trigger(d.EVENTS.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,!1),this._isDealerIdSet()?this._getEventAggregator().trigger(d.EVENTS.SET_APPLICATION_STATE,d.STATES.DEALER_SELECTED).trigger(d.EVENTS.LOCK_STATE,!0):this._isSearchLocationSet()&&this._getEventAggregator().trigger(d.EVENTS.TRIGGER_SEARCH,this._getSearchLocation(),d.SEARCH_LOCATION_SOURCES.SMART_LOCATION).trigger(d.EVENTS.SET_APPLICATION_STATE,d.STATES.SEARCH_RESULTS))},_onVehicleSelectionChange:function(a){a&&this.getModelId()!==a.modelId&&(this._setSelectedVehicleData(a),this._saveSessionModelId(a.modelId)),this._getEventAggregator().trigger(d.EVENTS.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,!1),this._isModelIdSet()&&(this._getEventAggregator().trigger(d.EVENTS.NO_TEST_DRIVE_STOCK_FOUND,!1),this._val
43idateBooking()),this._isValidationActive()||this._setErrorSilence(!1)},_onSearchLocationChange:function(a){a&&a.location&&a.location.locationId&&this._setSearchLocation(a),this._getEventAggregator().trigger(d.EVENTS.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,!1),this._isValidationActive()||this._setErrorSilence(!1)},_onSetSelectedDealer:function(a,b){b!==d.SELECTED_DEALER_SOURCES.SMART_LOCATION&&(this._setDealerId(a),this._validateBooking())},_onNoStockFoundForModel:function(){this._getEventAggregator().trigger(d.EVENTS.NO_TEST_DRIVE_STOCK_FOUND,!0)},_checkModelIsInStock:function(){var b=$.Deferred();return this._isModelIdSet()&&this._isDealerIdSet()?this._getDealersList()[this.getModelId()]?b.resolve(this._isModelInStock(this._getDealersList()[this.getModelId()],this._getDealerId())):this._requestDealersList().done(a.bind(function(a){0===a.totalResults?(this._setErrorModelUnavailable(!0),b.reject()):(b.resolve(this._isModelInStock(a.dealers,this._getDealerId())),this._setDealersList(a.dealers))},this)).fail(b.reject):b.reject(),b},_requestDealersList:function(){var a={testDriveModel:this.getTestDriveModelId()};return f.getDealers("-1",a)},_isModelInStock:function(b,c){return!!a.findWhere(b,{dealerId:c})},_isModelIdValid:function(b){return!!a.findWhere(this._getVehicleData(),{modelId:b})},_noStockFoundAtDealer:function(){this._getErrorSilence()?(this._getEventAggregator().trigger(d.EVENTS.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,!1).trigger(d.EVENTS.SET_APPLICATION_STATE,d.STATES.SEARCH_RESULTS),this._setErrorSilence(!1)):this._getEventAggregator().trigger(d.EVENTS.NO_TEST_DRIVE_STOCK_FOUND_AT_DEALER).trigger(d.EVENTS.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,!0),this._isSearchLocationSet()&&this._getEventAggregator().trigger(d.EVENTS.TRIGGER_SEARCH,this._getSearchLocation(),d.SEARCH_LOCATION_SOURCES.SMART_LOCATION)},_getSmartLocationData:function(){var a=$.Deferred();return this._getSmartLocationContext().get().done(a.resolve).fail(a.reject),a},_loadQueryParamsData:function(){var a=h.loadItem(m.keys.queryParamsData,m.sessionStorage);a&&this._setQueryParamsData(a)},_lookUpDealerIdInForm:function(){return this._lookUpFromSession(l.keys.dealerIdInForm)},_lookUpVehicleData:function(){var b=this._loadURLVehicleId()||this._loadSessionVehicleId();return a.findWhere(this._getVehicleData(),{modelId:b})},_loadSessionVehicleId:function(){var a,b=h.loadItem(m.keys.lastVisitedVehicle,m.localStorage);return b&&(a=b),a},_loadURLVehicleId:function(){return this._lookUpFromSession(l.keys.modelId)},_saveSessionModelId:function(a){h.saveItem(m.keys.lastVisitedVehicle,a,m.localStorage)},_isQueryParamInURL:function(a){return new RegExp("[?&]"+a+"=").test(this._getWindow().location.search)},_lookUpFromSession:function(a){var b,c;if(a&&this._isQueryParamInURL(a))return c=this._getQueryParamsData(),c&&c[a]&&(b=c[a]),b},_getVehicleData:function(){return this.options[k.VEHICLE_DATA]},_getEventAggregator:function(){return this.options[k.EVENT_AGGREGATOR]},_getSmartLocationContext:function(){return this.options[k.SMART_LOCATION_CONTEXT]},_getWindow:function(){return this.options[k.WINDOW]}})}),define("c_019_25B_MainController",["underscore","c_019_25B_ApplicationConstants","c_019_25B_AnalyticsController","c_019_25B_ControllerConstants","c_019_25B_DealerListController","c_019_25B_DealerSearchController","c_019_25B_VehicleSelectorController","c_019_25B_ErrorController","c_019_25B_GeolocationController","heliosLocation","c_019_25B_LoaderController","marionette","c_019_25B_ModelConstants","c_019_25B_ModuleConstants","objectFactory","c_019_25B_SearchController","c_019_25B_SelectedDealerController","c_019_25B_StartupController","c_019_25B_StateController","c_019_25B_TestDriveStockCheckController","trackingCodes"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u){"use strict";var v=b.EVENTS,w=b.STATES,x=n.MAIN.CONTROLLER_EVENTS,y=n.MAIN.CONTROLLER_OPTIONS,z=n.MAIN.REGIONS;return l.Object.extend({initialize:function(){this._bindEvents()._renderMainView()._initSelectedDealer()._initDealerList()._initError()._initTestDriveStockCheck()._initGeolocation()._initDealerSearch()._initLoader()._initSearch()._initVehicleSelector()._initStartupController()._initStateController()._initAnalyticsController(),this._startupController.run()},_bindEvents:function(){return this._getEventAggregator().on(v.CLEAR_SELECTED_DEALER,this._onClearSelectedDealer,this).on(v.SET_SEARCH_LO
43CATION,this._onSetSearchLocation,this).on(v.SET_SELECTED_DEALER,this._onSetSelectedDealer,this).on(v.SELECTED_DEALER_SYNC,this._onSelectedDealerSync,this).on(v.VEHICLE_SELECTION_CHANGED,this._onVehicleSelectionChange,this).on(v.TEST_DRIVE_MODEL_CHANGED,this._onTestDriveModelChange,this).on(v.NO_TEST_DRIVE_STOCK_FOUND,this._onNoTestDriveStockFound,this).on(v.SET_APPLICATION_STATE,this._handleSelectLocationInstructionVisibility,this),this},_getAnalyticsManager:function(){return this.options[y.ANALYTICS_MANAGER]},_getContentModel:function(){return this.options[y.CONTENT]},_getControllerOptionsObject:function(a){var b=n.BASE_CONTROLLER.OPTIONS,c={};return c[b.CONTENT]=this._getContentModel(),c[b.EVENT_AGGREGATOR]=this._getEventAggregator(),c[b.REGION]=this._getMainView()[a],c[b.WINDOW]=this._getWindow(),c},_getDeepLinkDealerFilterRequestParamValues:function(){return this.options[y.DEEP_LINK_DEALER_FILTER_REQUEST_PARAM_VALUES]},_getDeepLinkDealerId:function(){return this.options[y.DEEP_LINK_DEALER_ID]},_getDeepLinkLdid:function(){return this.options[y.DEEP_LINK_LDID]},_getDeepLinkSearchLocation:function(){return this.options[y.DEEP_LINK_SEARCH_LOCATION]},_getEventAggregator:function(){return this.options[y.EVENT_AGGREGATOR]},_getHeliosObject:function(){return this.options[y.HELIOS_OBJECT]},_getMainView:function(){return this.options.mainView},_getSmartLocationContext:function(){return this.options[y.SMART_LOCATION_CONTEXT]},_getWindow:function(){return this.options[y.WINDOW]},_initTestDriveStockCheck:function(){var a={};return this._getContentModel().getIsTestDriveStockCheckEnabled()&&(a[d.TEST_DRIVE_STOCK_CHECK.OPTIONS.EVENT_AGGREGATOR]=this._getEventAggregator(),a[d.TEST_DRIVE_STOCK_CHECK.OPTIONS.SMART_LOCATION_CONTEXT]=this._getSmartLocationContext(),a[d.TEST_DRIVE_STOCK_CHECK.OPTIONS.VEHICLE_DATA]=this._getContentModel().getVehicleSelectorData(),a[n.BASE_CONTROLLER.OPTIONS.WINDOW]=this._getWindow(),this._testDriveStockCheckController=new t(a),this._testDriveStockCheckController.initValidation()),this},_initDealerList:function(){var a=this._getControllerOptionsObject(z.DEALER_LIST);return a[n.DEALER_LIST.CONTROLLER_OPTIONS.DEALER_TYPE_ICON_SETTINGS]=this._getHeliosObject().components.c_019_25B.settings.dealerTypeIcons,a[n.DEALER_LIST.CONTROLLER_OPTIONS.SELECTED_DEALER_CONTROLLER]=this._selectedDealerController,a[n.DEALER_LIST.CONTROLLER_OPTIONS.IS_CONFIGURATOR]=this.options.isConfigurator,a[n.DEALER_LIST.CONTROLLER_OPTIONS.MAPPING_DATA]=this.options.mappingData,this._dealerListController=new e(a),this},_setDealerServiceMapping:function(a,b){this._getControllerOptionsObject(z.DEALER_LIST)[n.DEALER_LIST.CONTROLLER_OPTIONS.DEALER_TYPE_ICON_SETTINGS]=this._getHeliosObject().components.c_019_25B.settings.dealerTypeIcons},_initError:function(){return this._errorController=new h(this._getControllerOptionsObject(z.ERROR)),this},_initGeolocation:function(){var a=n.BASE_CONTROLLER.OPTIONS,b={};return b[a.EVENT_AGGREGATOR]=this._getEventAggregator(),b[a.WINDOW]=this._getWindow(),this._geolocationController=new i(b,this._getContentModel()),this},_initDealerSearch:function(){var b=this._getContentModel(),c=d.DEALER_SEARCH.OPTIONS,e=this._getDeepLinkDealerFilterRequestParamValues(),g={};return g[c.ADDRESS_FIELD_ORDER]=b.getAddressFieldOrder(),g[c.DISTANCE_UNIT]=b.getDistanceUnit(),g[c.EVENT_AGGREGATOR]=this._getEventAggregator(),g[c.IS_SEARCH_ON_STARTUP_ENABLED]=b.getIsSearchOnStartupEnabled(),g[c.MAX_RESULT_COUNT]=b.getMaxResultCount(),g[c.MAX_RADIUS]=b.getMaxRadius(),g[c.IS_DEALER_ACCEPTS_LEADS_MANDATORY]=b.getIsShowOnlyDealersWhoAcceptLeadsEnabled(),g[c.MAPPING_DATA]=this.options.mappingData,g[c.IS_CONFIGURATOR]=this.options.isConfigurator,g[c.SERVICE_FILTERS]=a.chain(b.getDealerFilterGroups()).map(function(b){return a.chain(b.filters).filter(function(b){return(!0===b.applyOnLoad||a.contains(e,b.requestParamValue))&&a.isArray(b.serviceIds)}).pluck("serviceIds").value()}).flatten().uniq().value(),g[c.SERVICE_FILTER_TYPE]=b.getServiceFilterType(),g[c.WINDOW]=this._getWindow(),g[c.TEST_DRIVE_MODEL_ID]=this._testDriveStockCheckController&&this._testDriveStockCheckController.getTestDriveModelId(),g[c.CONTENT]=this._getContentModel(),this._dealerSearchController=new f(g),this},_initLoader:function(){return this._loaderController=new k(this._getControllerOptionsObject(z.LOADER)),this},_initSearch:function(){return this._searchController=new p(this._getControllerOptionsObject(z.SEARCH)),this},_initSelectedDealer:function(){var a=this._getControllerOptionsObject(z.SELECTED_DEALER);return a[n.SELECTED_DEALER.CONTROLLER.OPTIONS.ADDRESS_FIELD_ORDER]=this._getContentModel().getAddressFieldOrder(),a[n.SELECTED_DEALER.CONTROLLER.OPTIONS.DEALER_TYPE_ICON_SETTINGS]=this._getHeliosObject().components.c_019_25B.settings.dealerTypeIcons,this._selectedDealerController=new q(a),this},_initVehicleSelector:function(){var a;return this._testDriveStockCheckController&&(a=this._getControllerOptionsObject(z.VEHICLE_SELECTOR),a[n.VEHICLE_SELECTOR.CONTROLLER.OPTIONS.ACTIVE_MODEL_ID]=this._testDriveStockCheckController&&this._testDriveStockCheckController.getModelId(),this._vehicleSelectorController=new g(a)),this},_initStartupController:function(){var a={},b=d.STARTUP.OPTIONS,c=this._getContentModel()&&this._getContentModel().get(m.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER)&&JSON.parse(this._getContentModel().get(m.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER));return a[b.DEALER_URL_FORMAT]=this._getContentModel().getDealerUrlFormat(),a[b.ADDRESS_FIELD_ORDER]=this._getContentModel().getAddressFieldOrder(),a[b.DEEP_LINK_DEALER_ID]=this._getDeepLinkDealerId(),a[b.DEEP_LINK_SEARCH_LO
43CATION]=this._getDeepLinkSearchLocation(),a[b.EVENT_AGGREGATOR]=this._getEventAggregator(),a[b.MARKET_COUNTRY_CODE]=this._getWindow().HELIOS.config.common.countryCode,a[b.SMART_LOCATION_CONTEXT]=this._getSmartLocationContext(),a[b.HELIOS_OBJECT]=this._getHeliosObject(),a[b.IS_TEST_DRIVE_STOCK_CHECK_AVAILABLE]=!!this._testDriveStockCheckController,a[b.ENABLE_PMA_DEALER]=c,this._startupController=new r(a),this},_initStateController:function(){var a={},b=d.STATE.OPTIONS;return a[b.DEALER_LIST_CONTROLLER]=this._dealerListController,a[b.ERROR_CONTROLLER]=this._errorController,a[b.EVENT_AGGREGATOR]=this._getEventAggregator(),a[b.LOADER_CONTROLLER]=this._loaderController,a[b.SEARCH_CONTROLLER]=this._searchController,a[b.SELECTED_DEALER_CONTROLLER]=this._selectedDealerController,a[b.DRIVE_AT_HOME_ENABLED]=this._getContentModel().getDriveAtHomeEnabled(),this._stateController=new s(a),this._getEventAggregator().trigger(v.SET_APPLICATION_STATE,w.INITIALIZING),this},_initAnalyticsController:function(){var a={},b=d.ANALYTICS.OPTIONS;return a[b.EVENT_AGGREGATOR]=this._getEventAggregator(),a[b.ANALYTICS_MANAGER]=this._getAnalyticsManager(),a[b.TRACKING_CODES]=u,a[b.ANALYTICS_SETTINGS]=this._getHeliosObject().components.c_019_25B.settings.analytics,this._analyticsController=o.getObject(c,a),this},_onClearSelectedDealer:function(){this._selectedDealerController.setDealerId(void 0),this._getMainView().model.setDealerId(void 0).setDealerName(void 0),this._setIsSelectLocationInstructionVisible(!0),this._setIsDealerSet(!1)},_onSelectedDealerSync:function(a){this._getMainView().model.setDealerId(a.getDealerId()).setDealerName(a.getName())},_onVehicleSelectionChange:function(a){a&&a.modelId&&a.name&&this._getMainView().model.setModelId(a.modelId).setModelName(a.name)},_onTestDriveModelChange:function(a){var b=!!a||!1;this._setModelIsDealerLocatorVisible(b),this._setIsTestDriveModelSet(b),this._handleSelectLocationInstructionVisibility(b)},_onNoTestDriveStockFound:function(a){this._setModelIsDealerLocatorVisible(!a||!1)},_onSetSearchLocation:function(c,d){var e=b.SEARCH_LOCATION_SOURCES;a.contains([e.GEO_LOCATION,e.USER_SELECT],d)&&this._getSmartLocationContext().set(c),this._setIsLocationSet(!0)},_onSetSelectedDealer:function(a,c){c===b.SELECTED_DEALER_SOURCES.USER_SELECT?(this._getSmartLocationContext().set((new j).setDealerId(a)),this.trigger(x.DEALER_SELECTED_BY_USER)):c===b.SELECTED_DEALER_SOURCES.SMART_LOCATION&&!0===this._getDeepLinkLdid()&&this._selectedDealerController.lockDealer(),this._setIsDealerSet(!0)},_setIsSelectLocationInstructionVisible:function(a){this._getMainView().model.setIsSelectLocationInstructionVisible(a)},_setModelIsDealerLocatorVisible:function(a){this._getMainView().model.setIsDealerLocatorVisible(a)},_setIsLocationSet:function(a){return this._isLocationSet=a,this},_getIsLocationSet:function(){return this._isLocationSet},_setIsDealerSet:function(a){return this._isDealerSet=a,this},_getIsDealerSet:function(){return this._isDealerSet},_setIsTestDriveModelSet:function(a){return this._isTestDriveModelSet=a,this},_getIsTestDriveModelSet:function(){return this._isTestDriveModelSet},_getCurrentApplicationState:function(){return this._stateController&&this._stateController.getCurrentState()},_handleSelectLocationInstructionVisibility:function(a){var b=!1;if(!this._getMainView().model.isSelectLocationInstructionSet()||!this._getCurrentApplicationState()||a===w.INITIALIZING)return!1;!this._getIsTestDriveModelSet()||this._getIsDealerSet()||this._getIsLocationSet()||(b=!0),!this._getIsLocationSet()&&this._testDriveStockCheckController.isModelNotFoundAtDealer()&&(b=!0),this._setIsSelectLocationInstructionVisible(b)},_renderMainView:function(){return this._getMainView().render(),this}})}),define("hbars!/components/c_019-25B/scripts/app/modules/main/html/mainTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){return"validate required"},3:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'        <input class="model-id validate required" name="'+a.escapeExpression((f=null!=(f=g(c,"modelIdElementName")||(null!=b?g(b,"modelIdElementName"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"modelIdElementName",hash:{}
43,data:e,loc:{start:{line:15,column:56},end:{line:15,column:78}}}):f))+'" type="hidden" />\n'},5:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'        <input class="model-name validate required" name="'+a.escapeExpression((f=null!=(f=g(c,"modelNameElementName")||(null!=b?g(b,"modelNameElementName"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"modelNameElementName",hash:{},data:e,loc:{start:{line:18,column:58},end:{line:18,column:82}}}):f))+'" type="hidden" />\n'},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<p class="select-location-instruction">'+a.escapeExpression((g=null!=(g=h(c,"selectLocationInstruction")||(null!=b?h(b,"selectLocationInstruction"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"selectLocationInstruction",hash:{},data:e,loc:{start:{line:1,column:39},end:{line:1,column:70}}}):g))+'</p>\n<div class="vehicle-selector"></div>\n<div class="dealer-locator-main">\n    <div class="search"></div>\n    <div class="error"></div>\n    <div class="selected-dealer"></div>\n    <div class="loader"></div>\n    <div class="dealer-list"></div>\n</div>\n<div class="form-fields">\n    <input class="dealer-id '+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isSelectedDealerMandatory"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:11,column:28},end:{line:11,column:85}}}))?f:"")+'" name="'+a.escapeExpression((g=null!=(g=h(c,"dealerIdElementName")||(null!=b?h(b,"dealerIdElementName"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"dealerIdElementName",hash:{},data:e,loc:{start:{line:11,column:93},end:{line:11,column:116}}}):g))+'" type="hidden" />\n    <input class="dealer-name '+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isSelectedDealerMandatory"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:12,column:30},end:{line:12,column:87}}}))?f:"")+'" name="'+a.escapeExpression((g=null!=(g=h(c,"dealerNameElementName")||(null!=b?h(b,"dealerNameElementName"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"dealerNameElementName",hash:{},data:e,loc:{start:{line:12,column:95},end:{line:12,column:120}}}):g))+'" type="hidden" />\n\n'+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"modelIdElementName"):b,{name:"if",hash:{},fn:a.program(3,e,0),inverse:a.noop,data:e,loc:{start:{line:14,column:4},end:{line:16,column:11}}}))?f:"")+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"modelNameElementName"):b,{name:"if",hash:{},fn:a.program(5,e,0),inverse:a.noop,data:e,loc:{start:{line:17,column:4},end:{line:19,column:11}}}))?f:"")+"</div>\n"},useData:!0})}),define("c_019_25B_MainView",["c_019_25B_ApplicationConstants","backbone","marionette","c_019_25B_ModuleConstants","hbars!/components/c_019-25B/scripts/app/modules/main/html/mainTemplate"],function(a,b,c,d,e){"use strict";return b.Marionette.LayoutView.extend({modelEvents:function(){var a={};return a["change:"+d.MAIN.VIEW_MODEL.ATTRIBUTES.DEALER_ID]="_onDealerIdChange",a["change:"+d.MAIN.VIEW_MODEL.ATTRIBUTES.DEALER_NAME]="_onDealerNameChange",a["change:"+d.MAIN.VIEW_MODEL.ATTRIBUTES.MODEL_ID]="_onModelIdChange",a["change:"+d.MAIN.VIEW_MODEL.ATTRIBUTES.MODEL_NAME]="_onModelNameChange",a["change:"+d.MAIN.VIEW_MODEL.ATTRIBUTES.IS_DEALER_LOCATOR_VISIBLE]="_setDealerLocatorMainVisibility",a["change:"+d.MAIN.VIEW_MODEL.ATTRIBUTES.IS_SELECT_LOCATION_INSTRUCTION_VISIBLE]="_setSelectLocationInstructionVisibility",a},onBeforeRender:function(){this.$el.addClass(a.CSS_CLASSES.INITIALIZED)},regions:function(){var a={},b=d.MAIN.REGIONS,c=d.MAIN.SELECTORS;return a[b.DEALER_LIST]=c.DEALER_LIST,a[b.ERROR]=c.ERROR,a[b.LOADER]=c.LOADER,a[b.SEARCH]=c.SEARCH,a[b.SELECTED_DEALER]=c.SELECTED_DEALER,a[b.VEHICLE_SELECTOR]=c.VEHICLE_SELECTOR,a},template:e,ui:{dealerIdInput:d.MAIN.VIEW.SELECTORS.DEALER_ID_INPUT,dealerNameInput:d.MAIN.VIEW.SELECTORS.DEALER_NAME_INPUT,modelIdInput:d.MAIN.VIEW.SELECTORS.MODEL_ID_INPUT,modelNameInput:d.MAIN.VIEW.SELECTORS.MODEL_NAME_INPUT,dealerLocatorMain:d.MAIN.VIEW.SELECTORS.DEALER_LOCATOR_MAIN,selectLocationInstruction:d.MAIN.VIEW.SELECTORS.SELECT_LOCATION_INSTRUCTION},onRender:function(){this._setDealerLocatorMainVisibility(),this._setSelectLocationInstructionVisibility()},_onDealerIdChange:function(a,b){this.ui.dealerIdInput.val(b)},_onDealerNameChange:function(a,b){this.ui.dealerNameInput.val(b)},_onModelIdChange:function(a,b){this.ui.modelIdInput.val(b)},_onModelNameChange:function(a,b){this.ui.modelNameInput.val(b)},_setDealerLocatorMainVisibility:function(){this.model.getIsDealerLocatorVisible()?this.ui.dealerLocatorMain.removeClass(d.GENERIC_CSS_CLASSES.HIDDEN).attr(d.ARIA_TAGS.ARIA_HIDDEN,!1):this.ui.dealerLocatorMain.addClass(d.GENERIC_CSS_CLASSES.HIDDEN).attr(d.ARIA_TAGS.ARIA_HIDDEN,!0)},_setSelectLocationInstructionVisibility:function(){this.model.getIsSelectLocationInstructionVisible()?this.ui.selectLocationInstruction.removeClass(d.GENERIC_CSS_CLASSES.HIDDEN).attr(d.ARIA_TAGS.ARIA_HIDDEN,!1):this.ui.selectLocationInstruction.addClass(d.GENERIC_CSS_CLASSES.HIDDEN).attr(d.ARIA_TAGS.ARIA_HIDDEN,!0)}})}),define("c_019_25B_MainViewModel",["backbone","c_019_25B_ModuleConstants"],function(a,b){"use strict";var c=b.MAIN.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({defaults:function(){var a={};return a[c.IS_DEALER_LOCATOR_VISIBLE]=!0,a[c.IS_SELECT_LOCATION_INSTRUCTION_VISIBLE]=!1,a},setDealerId:function(a){return this.set(c.DEALER_ID,a),this},setDealerIdElementName:function(a){return this.set(c.DEALER_ID_ELEMENT_NAME,a),this},setDealerName:function(a){return this.set(c.DEALER_NAME,a),this},setDealerNameElementName:function(a){return this.set(c.DEALER_NAME_ELEMENT_NAME,a),this},setIsSelectedDealerMandatory:function(a){return this.set(c.IS_SELECTED_DEALER_MANDATORY,a),this},setModelId:function(a){return this.set(c.MODEL_ID,a),this},setModelIdElementName:function(a){return this.set(c.MODEL_ID_ELEMENT_NAME,a),this},setModelName:function(a){return this.set(c.MODEL_NAME,a),this},setModelNameElementName:function(a){return this.set(c.MODEL_NAME_ELEMENT_NAME,a),this},getIsDealerLocatorVisible:function(){return this.get(c.IS_DEALER_LOCATOR_VISIBLE)},setIsDealerLocatorVisible:function(a){return this.set(c.IS_DEALER_LOCATOR_VISIBLE,a),this},isSelectLocationInstructionSet:function(){return!!this.get(c.SELECT_LOCATION_INSTRUCTION)},setSelectLocationInstruction:function(a){return this.set(c.SELECT_LOCATION_INSTRUCTION,a),this},getIsSelectLocationInstructionVisible:function(){return this.get(c.IS_SELECT_LOCATION_INSTRUCTION_VISIBLE)},setIsSelectLocationInstructionVisible:function(a){return this.set(c.IS_SELECT_LOCATION_INSTRUCTION_VISIBLE,a),this}})}),define("hbars!/components/c_019-25B/scripts/app/modules/dealerDropdown/html/dealerDropdownItemTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'    <div class="select-dealer-container">\n        <div class="select-dealer-cta-container">\n            <button class="select-dealer-cta" data-dealerid="'+a.escapeExpression((g=null!=(g=h(c,"dealerId")||(null!=b?h(b,"dealerId"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"dealerId",hash:{},data:e,loc:{start:{line:4,column:61},end:{line:4,column:73}}}):g))+'" type="button">\n                <h3 class="name">'+a.escapeExpression((g=null!=(g=h(c,"name")||(null!=b?h(b,"name"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"name",hash:{},data:e,loc:{start:{line:5,column:33},end:{line:5,column:41}}}):g))+"\n"+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"distance"):b,{name:"if",hash:{},fn:a.program(2,e,0),inverse:a.noop,data:e,loc:{start:{line:6,column:20},end:{line:8,column:27}}}))?f:"")+"                </h3>\n            </button>\n        </div>\n    </div>\n"},2:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};
43return'                        <span class="distance">('+a.escapeExpression((f=null!=(f=g(c,"formattedDistance")||(null!=b?g(b,"formattedDistance"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"formattedDistance",hash:{},data:e,loc:{start:{line:7,column:48},end:{line:7,column:69}}}):f))+" "+a.escapeExpression((f=null!=(f=g(c,"distanceUnitText")||(null!=b?g(b,"distanceUnitText"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"distanceUnitText",hash:{},data:e,loc:{start:{line:7,column:70},end:{line:7,column:90}}}):f))+")</span>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return null!=(f=g(c,"if").call(null!=b?b:a.nullContext||{},null!=b?g(b,"dealerId"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:1,column:0},end:{line:13,column:7}}}))?f:""},useData:!0})}),define("c_019_25B_DealerDropdownItemView",["c_019_25B_ApplicationConstants","marionette","underscore","c_019_25B_ModelConstants","hbars!/components/c_019-25B/scripts/app/modules/dealerDropdown/html/dealerDropdownItemTemplate","c_019_25B_ModuleConstants","trackingCodes","keyCodeConstants"],function(a,b,c,d,e,f,g,h){"use strict";var i=a.EVENTS;return b.ItemView.extend({className:function(){return this.model&&this.model.getDealerTypeCssClass()},events:{"click @ui.selectDealerContainer":"_onSelectDealerClick","keydown @ui.selectDealerButton":"_onSelectDealerButtonKeyDown"},tagName:"li",template:e,templateHelpers:function(){var a={},b=f.DEALER_DROPDOWN.ITEM_VIEW_OPTIONS;return a[b.SELECT_DEALER_CTA_TEXT]=this.options[b.SELECT_DEALER_CTA_TEXT],a[b.DISTANCE_UNIT_TEXT]=this.options[b.DISTANCE_UNIT_TEXT],a[b.ENABLE_DEALER_NUMBER]=this.options[b.ENABLE_DEALER_NUMBER],a},ui:{selectDealerButton:f.DEALER_DROPDOWN.SELECTORS.SELECT_DEALER_BUTTON,selectDealerContainer:f.DEALER_DROPDOWN.SELECTORS.SELECT_DEALER_BUTTON},_getEventAggregator:function(){return this.options[f.DEALER_DROPDOWN.ITEM_VIEW_OPTIONS.EVENT_AGGREGATOR]},_onSelectDealerButtonKeyDown:function(a){a.which===h.ENTER&&this._onSelectDealerClick()},_onSelectDealerClick:function(){var b=this.model.getDistance(),c=this.model.getDealerId();this._getEventAggregator().trigger(i.ANALYTICS_DEALER_INTERACTION,g.componentIds.c19_25_Dealer_Locator,this.model).trigger(i.SET_SELECTED_DEALER,c,a.SELECTED_DEALER_SOURCES.USER_SELECT,b)},onDomRefresh:function(){c.defer(function(){$("body").trigger(f.DEALER_DROPDOWN.EVENTS.DEALERS_PHONE_UPDATE)})}})}),define("hbars!/components/c_019-25B/scripts/app/modules/dealerDropdown/html/dealerDropdownTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){return"hidden"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<ol class="dealers dealers-dropdown"></ol>\n<div class="warning-message '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"dealerServiceLabel"):b,{name:"unless",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:2,column:28},end:{line:2,column:75}}}))?f:"")+'"><p class="dealer-service-label">'+a.escapeExpression((g=null!=(g=h(c,"dealerServiceLabel")||(null!=b?h(b,"dealerServiceLabel"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"dealerServiceLabel",hash:{},data:e,loc:{start:{line:2,column:109},end:{line:2,column:131}}}):g))+"</p></div>\n"},useData:!0})}),define("c_019_25B_DealerDropdownView",["underscore","c_019_25B_DealerDropdownItemView","marionette","c_019_25B_ModuleConstants","hbars!/components/c_019-25B/scripts/app/modules/dealerDropdown/html/dealerDropdownTemplate"],function(a,b,c,d,e){"use strict";var f=a.extend({},d.GENERIC_CSS_CLASSES,d.DEALER_DROPDOWN.VIEW.CSS_CLASSES);return c.CompositeView.extend({childView:b,childViewContainer:d.DEALER_DROPDOWN.SELECTORS.DROPDOWN_CONTAINER,className:function(){return this.model&&this.model.getIsLegendVisible()?d.DEALER_DROPDOWN.VIEW.CSS_CLASSES.HAS_LEGEND:void 0},modelEvents:function(){var a={};return a["change:"+d.DEALER_DROPDOWN.VIEW_MODEL.ATTRIBUTES.TITLE]="_onTitleChange",a["change:"+d.DEALER_DROPDOWN.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL]="_onDealerServiceLabelChange",a},template:e,ui:{title:d.DEALER_DROPDOWN.SELECTORS.TITLE,dealerServiceLabel:d.DEALER_DROPDOWN.SELECTORS.DEALER_SERVICE_LABEL,warningMessage:d.DEALER_DROPDOWN.SELECTORS.WARNING_MESSAGE},_onTitleChange:function(a,b){this.ui.title.text(b||"").toggleClass(f.HIDDEN,!b)},_onDealerServiceLabelChange:function(a,b){this.ui.dealerServiceLabel.text(b||""),this.ui.warningMessage.toggleClass(f.HIDDEN,!b)},onDomRefresh:function(){a.defer(function(){$("body").trigger(d.DEALER_DROPDOWN.EVENTS.DEALERS_PHONE_UPDATE)})}})}),define("c_019_25B_DealerDropdownViewItemModel",["backbone","c_019_25B_ModuleConstants"],function(a,b){"use strict";var c=b.DEALER_DROPDOWN.VIEW_ITEM_MODEL.ATTRIBUTES;return a.Model.extend({getDealerId:function(){return this.get(c.DEALER_ID)},getDealerTypeCssClass:function(){return this.get(c.DEALER_TYPE_CSS_CLASS)},getDistance:function(){return this.get(c.DISTANCE)}})}),define("c_019_25B_DealerDropdownViewCollection",["backbone","c_019_25B_DealerDropdownViewItemModel","c_019_25B_ModuleConstants"],function(a,b,c){"use strict";return a.Collection.extend({initialize:function(a){this.enablePmaDealer=a}
43,comparator:function(a){if(this.enablePmaDealer&&!JSON.parse(this.enablePmaDealer))return a.get(c.DEALER_DROPDOWN.VIEW_ITEM_MODEL.ATTRIBUTES.DISTANCE)},model:b})}),define("c_019_25B_DealerDropdownViewModel",["backbone","c_019_25B_ModuleConstants"],function(a,b){"use strict";var c=b.DEALER_DROPDOWN.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({getIsLegendVisible:function(){return this.get(c.IS_LEGEND_VISIBLE)}})}),define("c_019_25B_DealerDropdownController",["underscore","c_019_25B_ControllerBase","c_019_25B_DealerDropdownView","c_019_25B_DealerDropdownViewCollection","c_019_25B_DealerDropdownViewModel","c_019_25B_ApplicationConstants","c_019_25B_ModelConstants","c_019_25B_ModuleConstants","storageManager","storageManagerKeys"],function(a,b,c,d,e,f,g,h,i,j){"use strict";var k=f.EVENTS,l=f.STATES,m=h.DEALER_DROPDOWN.CONTROLLER_OPTIONS;return b.extend({initialize:function(){var a=this.getRegion();a&&a.show(this._getView()),this._lookForConfigurator(),this._bindEvents()},_bindEvents:function(){var a=this.getEventAggregator(),b=this.getContentModel(),c=b&&b.getEnableModelDealerMapping();a&&(a.on(k.DEALER_SEARCH_COMPLETE,this._onDealerSearchComplete,this),a.on(k.SET_SELECTED_DEALER,this._onDealerSelected,this),a.on(k.DISPLAY_SELECTED_DEALER,this._displaySelectedDealer,this),c?a.off(k.STORAGE_SAVED).on(k.CHANGE_MODEL_SELECT,this._setDealerServiceMapping,this).on(k.STORAGE_SAVED,this._onStorageSaved,this):this._getModel().set(h.DEALER_DROPDOWN.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL,""))},_onStorageSaved:function(){this._lookForConfigurator()},_lookForConfigurator:function(){var a,b,c=[];this.options.isConfigurator&&(a=i.loadItem(j.c_cfg.itemKey),a&&a.state&&a.state.modelCode&&(b=a.state.modelCode,this.options.mappingData&&(c=Object.keys(this.options.mappingData).filter(function(a){return a===b},this).map(function(a){return this.options.mappingData[a]},this))),
44a&&a.state&&a.state.model&&a.state.modelCode&&this._setDealerServiceMapping(c.length&&c[0],a.state.model))},_getCollection:function(){return this._collection||(this._collection=new d(this.getContentModel()&&this.getContentModel().get("enablePmaDealer")))},_getDealerTypeIconSettings:function(){return this.options[m.DEALER_TYPE_ICON_SETTINGS]},_getModel:function(){var b,c,d;return this._model||(b={},c=this.getContentModel(),d=h.DEALER_DROPDOWN.VIEW_MODEL.ATTRIBUTES,c&&(b[d.IS_LEGEND_VISIBLE]=c.getDealerIconKeys().length>1,b[d.LEGEND_ITEMS]=a.map(c.getDealerIconKeys(),function(b){return a.extend({label:b.legendLabel},this._getDealerTypeIconSettings()&&this._getDealerTypeIconSettings()[b.iconStyle])},this)),this._model=new e(b)),this._model},_getChildViewOptions:function(){var a=this.getContentModel(),b={};return b[h.DEALER_DROPDOWN.ITEM_VIEW_OPTIONS.EVENT_AGGREGATOR]=this.getEventAggregator(),a&&(b[h.DEALER_DROPDOWN.ITEM_VIEW_OPTIONS.SELECT_DEALER_CTA_TEXT]=a.getSelectDealerCtaLabel(),b[h.DEALER_DROPDOWN.ITEM_VIEW_OPTIONS.DISTANCE_UNIT_TEXT]=a.getDistanceUnitLabel(),b[h.DEALER_DROPDOWN.ITEM_VIEW_OPTIONS.ENABLE_DEALER_NUMBER]=a.getDealerDropdownPhone()),b},_getView:function(){return this._view||(this._view=new c({collection:this._getCollection(),model:this._getModel(),childViewOptions:this._getChildViewOptions()}))},_setDealerServiceMapping:function(a,b){this.modelServiceId=a,this.modelName=b},_onDealerSearchComplete:function(b){var c,d,e,g,m,n,o=this.getContentModel(),p=this.getEventAggregator(),q=h.DEALER_DROPDOWN.VIEW_ITEM_MODEL.ATTRIBUTES,r=b&&b.map(function(b){var c=b.isInfinitiEcommRetailer(),d=a.find(o&&o.getDealerIconKeys(),function(c){return a.contains(c.dealerTypes,b.getType())}),e=d&&this._getDealerTypeIconSettings()[d.iconStyle],f={};if(f[q.DEALER_ID]=b.getDealerId(),f[q.NAME]=b.getName(),f[q.UNFORMATTED_ADDRESS]=b.getAddress(),f[q.ADDRESS]=b.getFormattedAddress(),f[q.DISTANCE]=parseFloat(b.getDistance()),f[q.FORMATTED_DISTANCE]=b.getDistance(),f[q.TYPE]=b.getType(),f[q.PHONE]=b.getPhone(),f[q.PHONE_NO_SPACE]=b.getPhone()&&b.getPhone().replace(/ /g,""),f[q.SHOW_PHONE]=b.getPhone()&&o.getDealerDropdownPhone(),f[q.IS_INFINITI_ECOMM_RETAILER]=c,e&&(e.cssClass&&(f[q.DEALER_TYPE_CSS_CLASS]=h.GENER
44IC_CSS_CLASSES.DEALER_TYPE_PREFIX+e.cssClass),f[q.DEALER_TYPE_ICON_IMG_URL]=e.imgUrl),c){var g=this.options.content.attributes.formLabels;f[q.INFINITI_ECOMM_SERVICE_LABEL]=g.infinitiEcommServiceLabel,f[q.INFINITI_ECOMM_SERVICE_DESCRIPTION]=g.infinitiEcommServiceDescription}return f},this),s=this.options.selectedDealerController&&this.options.selectedDealerController.getDealerId(),t=this.options.selectedDealerController&&this.options.selectedDealerController.getDealerName(),u="";!s&&this.currentDealerId&&(s=this.currentDealerId,this.currentDealerId=void 0),this._getCollection().reset(r),o&&(e=o&&o.getEnableModelDealerMapping(),e&&this.modelServiceId?(this.options.isConfigurator&&!s&&(g=i.loadItem(j.c_cfg.profileDataSession),m=g&&g.storageData.location,n=g&&g.storageData.dealerLocation,g&&m&&n&&(s=n.dealerId)),d=s&&r.filter(function(a){return a.dealerId===s}),d&&!d.length&&this.modelName?(u=o.getResultLabelDealerService().replace("{dealerName}",t),u=u.replace("{modelName}",this.modelName),this._getModel().set(h.DEALER_DROPDOWN.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL,u),this.currentDealerId=s):d&&d.length&&this.modelName&&p.trigger(k.SET_SELECTED_DEALER,s,f.SELECTED_DEALER_SOURCES.USER_SELECTED)):s&&e&&p?p.trigger(k.SET_SELECTED_DEALER,s,f.SELECTED_DEALER_SOURCES.USER_SELECTED):e||this._getModel().set(h.DEALER_DROPDOWN.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL,""),1===r.length?c=o.getResultLabelSingle():r.length&&(c=(o.getResultLabelMultiple()||"").replace("%resultCount%",r.length))),this._getModel().set(h.DEALER_DROPDOWN.VIEW_MODEL.ATTRIBUTES.TITLE,c),p&&(p.trigger(k.SET_APPLICATION_STATE,l.SEARCH_RESULTS),p.trigger(k.DISPLAY_SELECTED_DEALER,l.DEALER_SELECTED))},_onDealerSelected:function(a){this._getModel().set(h.DEALER_DROPDOWN.VIEW_MODEL.ATTRIBUTES.DEALER_SERVICE_LABEL,"")},_displaySelectedDealer:function(){var a=/[?&]dealerId=([^&]*)/.exec(this.options.window.location.search),b=a&&this.options.window.decodeURIComponent(a[1])||void 0;if(b){var c=document.querySelectorAll("[data-dealerid='"+b+"']");c&&c[0].click()}}})}),define("hbars!/components/c_019-25B/scripts/app/modules/selectDropdownDealer/html/selectDropdownDealerTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){return"hidden"},3:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'            <p class="c_019_25B_infiniti_ecomm_label usg-text-bold">\n                '+a.escapeExpression((f=null!=(f=g(c,"infinitiEcommServiceLabel")||(null!=b?g(b,"infinitiEcommServiceLabel"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"infinitiEcommServiceLabel",hash:{},data:e,loc:{start:{line:14,column:16},end:{line:14,column:45}}}):f))+"\n            </p>\n"},5:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'            <p class="c_019_25B_infiniti_ecomm-copy">\n                '+a.escapeExpression((f=null!=(f=g(c,"infinitiEcommServiceDescription")||(null!=b?g(b,"infinitiEcommServiceDescription"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"infinitiEcommServiceDescription",hash:{},data:e,loc:{start:{line:19,column:16},end:{line:19,column:51}}}):f))+"\n            </p>\n"},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<h2 class="title">'+a.escapeExpression((g=null!=(g=h(c,"title")||(null!=b?h(b,"title"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"title",hash:{},data:e,loc:{start:{line:1,column:18},end:{line:1,column:27}}}):g))+'</h2>\n<div class="details">\n    <h3 class="name">'+a.escapeExpression((g=null!=(g=h(c,"name")||(null!=b?h(b,"name"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"name",hash:{},data:e,loc:{start:{line:3,column:21},end:{line:3,column:29}}}):g))+'</h3>\n    <p class="dealer-list-phone">\n        <a class="dealer-list-phone-link" href="tel:'+a.escapeExpression((g=null!=(g=h(c,"phone")||(null!=b?h(b,"phone"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"phone",hash:{}
44,data:e,loc:{start:{line:5,column:52},end:{line:5,column:63}}}):g))+'">'+a.escapeExpression((g=null!=(g=h(c,"phone")||(null!=b?h(b,"phone"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"phone",hash:{},data:e,loc:{start:{line:5,column:65},end:{line:5,column:76}}}):g))+'</a>\n    </p>\n    <div class="address">'+(null!=(g=null!=(g=h(c,"address")||(null!=b?h(b,"address"):b))?g:a.hooks.helperMissing,f="function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"address",hash:{},data:e,loc:{start:{line:7,column:25},end:{line:7,column:38}}}):g)?f:"")+'</div>\n    <div class="distance '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"distance"):b,{name:"unless",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:8,column:25},end:{line:8,column:62}}}))?f:"")+'">\n        (<span class="distance-number">'+a.escapeExpression((g=null!=(g=h(c,"distance")||(null!=b?h(b,"distance"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"distance",hash:{},data:e,loc:{start:{line:9,column:39},end:{line:9,column:51}}}):g))+'</span><span class="distance-unit">'+a.escapeExpression((g=null!=(g=h(c,"distanceUnit")||(null!=b?h(b,"distanceUnit"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"distanceUnit",hash:{},data:e,loc:{start:{line:9,column:86},end:{line:9,column:102}}}):g))+'</span>)\n    </div>\n    <div class="c_019_25B_selected-dealer-infiniti-ecomm-section '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isInfinitiEcommRetailerVisible"):b,{name:"unless",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:11,column:65},end:{line:11,column:124}}}))?f:"")+'">\n'+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"infinitiEcommServiceLabel"):b,{name:"if",hash:{},fn:a.program(3,e,0),inverse:a.noop,data:e,loc:{start:{line:12,column:8},end:{line:16,column:15}}}))?f:"")+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"infinitiEcommServiceDescription"):b,{name:"if",hash:{},fn:a.program(5,e,0),inverse:a.noop,data:e,loc:{start:{line:17,column:8},end:{line:21,column:15}}}))?f:"")+'    </div>\n    <img class="icon-img hidden" src="'+a.escapeExpression((g=null!=(g=h(c,"imgUrl")||(null!=b?h(b,"imgUrl"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"imgUrl",hash:{},data:e,loc:{start:{line:23,column:38},end:{line:23,column:48}}}):g))+'" />\n</div>\n<div class="change-selected-dealer-cta-container">\n    <button class="change-selected-dealer '+(null!=(f=h(c,"unless").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isChangeDealerButtonVisible"):b,{name:"unless",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:26,column:42},end:{line:26,column:98}}}))?f:"")+'" type="button">'+a.escapeExpression((g=null!=(g=h(c,"changeSelectedDealerCta")||(null!=b?h(b,"changeSelectedDealerCta"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"changeSelectedDealerCta",hash:{},data:e,loc:{start:{line:26,column:114},end:{line:26,column:141}}}):g))+"</button>\n</div>\n"},useData:!0})}),define("c_019_25B_SelectDropdownDealerView",["underscore","c_019_25B_ApplicationConstants","backbone","marionette","c_019_25B_ModuleConstants","hbars!/components/c_019-25B/scripts/app/modules/selectDropdownDealer/html/selectDropdownDealerTemplate"],function(a,b,c,d,e,f){"use strict";var g=e.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES;return c.Marionette.ItemView.extend({events:{"click @ui.changeSelectDropdownDealerButton":"_onChangeSelectDropdownDealerButtonClick"},modelEvents:function(){var a={};return a["change:"+g.ADDRESS]="_onAddressChange",a["change:"+g.DISTANCE]="_onDistanceChange",a["change:"+g.NAME]="_onNameChange",a["change:"+g.TITLE]="_onTitleChange",a["change:"+g.DEALER_TYPE_CSS_CLASS]="_onDealerTypeClassChange",a["change:"+g.DEALER_TYPE_ICON_IMG_URL]="_onIconImgChange",a["change:"+g.PHONE]="_onPhoneChange",a["change:"+g.IS_INFINITI_ECOMM_RETAILER_VISIBLE]="_onIsInfinitiEcommRetailerVisible",a},template:f,ui:{address:e.SELECTED_DEALER.SELECTORS.ADDRESS,changeSelectDropdownDealerButton:e.SELECTED_DEALER.SELECTORS.CHANGE_SELECTED_DEALER_BUTTON,distanceContainer:e.SELECTED_DEALER.SELECTORS.DISTANCE,distanceNumber:e.SELECTED_DEALER.SELECTORS.DISTANCE_NUMBER,name:e.SELECTED_DEALER.SELECTORS.NAME,title:e.SELECTED_DEALER.SELECTORS.TITLE,iconImg:e.SELECTED_DEALER.SELECTORS.ICON_IMG,detailsContainer:e.SELECTED_DEALER.SELECTORS.DETAILS,phoneUrl:e.SELECTED_DEALER.SELECTORS.DEALER_LIST_PHONE_LINK,isInfinitiEcommRetailer:e.SELECTED_DEALER.SELECTORS.INFINITI_ECOMM_SELECTOR},_onAddressChange:function(a,b){this.ui.address.html(b)},_onChangeSelectDropdownDealerButtonClick:function(){this.trigger(e.SELECTED_DEALER.EVENTS.CHANGE_SELECTED_DEALER_CLICK)},_onDistanceChange:function(b,c){var d=!a.isFinite(c);this.ui.distanceContainer.toggleClass(e.GENERIC_CSS_CLASSES.HIDDEN,d),this.ui.distanceNumber.text(c)},_onIsInfinitiEcommRetailerVisible:function(a,b){this.ui.isInfinitiEcommRetailer.toggleClass(e.GENERIC_CSS_CLASSES.HIDDEN,!b)},_onNameChange:function(a,b){this.ui.name.text(b)},_onPhoneChange:function(a,b){var c="",d=this.model.get(e.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.ENABLE_DEALER_NUMBER);b&&(c=b.replace(/ /g,"")),this.ui.phoneUrl.text(b).toggleClass(e.GENERIC_CSS_CLASSES.HIDDEN,!c||!d),this.ui.phoneUrl.attr("href","tel:"+c),$("body").trigger(e.DEALER_LIST.EVENTS.DEALERS_PHONE_UPDATE)},_onTitleChange:function(a,b){this.ui.title.text(b)},_onDealerTypeClassChange:function(a,b){this.ui.detailsContainer.removeClass(a.previous(g.DEALER_TYPE_CSS_CLASS)).addClass(b)},_onIconImgChange:function(b,c){this.ui.iconImg.attr("src",c).toggleClass(e.GENERIC_CSS_CLASSES.HIDDEN,a.isUndefined(c))}})}),define("c_019_25B_SelectDropdownDealerViewModel",["backbone","c_019_25B_ModuleConstants"],function(a,b){"use strict";return a.Model.extend({defaults:function(){var a={};return a[b.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.IS_CHANGE_DEALER_BUTTON_VISIBLE]=!0,a[b.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.IS_INFINITI_ECOMM_RETAILER_VISIBLE]=!0,a}})}),define("c_019_25B_SelectDropdownDealerController",["underscore","c_019_25B_ApplicationConstants","c_019_25B_ControllerBase","c_019_25B_DealerModel","c_019_25B_ModelConstants","c_019_25B_ModuleConstants","c_019_25B_SelectDropdownDealerView","c_019_25B_SelectDropdownDealerViewModel","objectFactory"],function(a,b,c,d,e,f,g,h,i){"use strict";var j=f.SELECTED_DEALER.CONTROLLER.OPTIONS;return c.extend({initialize:function(){this.options.region&&this.options.region.show(this._getView()),this._bindEvents()},_bindEvents:function(){this.getEventAggregator()&&this.getEventAggregator().on(b.EVENTS.SET_SELECTED_DEALER,this._onSetSelectDropdownDealer,this)},_getAddressFieldOrder:function(){return this.options[j.ADDRESS_FIELD_ORDER]},_getDealerTypeIconSettings:function(){return this.options[j.DEALER_TYPE_ICON_SETTINGS]},_getDealerTypeIconCssClass:function(a){return this._getDealerTypeIconSettings()&&this._getDealerTypeIconSettings()[a]&&this._getDealerTypeIconSettings()[a].cssClass},_getDealerTypeIconIconURL:function(a){return this._getDealerTypeIconSettings()&&this._getDealerTypeIconSettings()[a]&&this._getDealerTypeIconSettings()[a].imgUrl},_getModel:function(){return this._model||(this._model=i.getObject(h,null,{}).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.TITLE,this.getContentModel().get(e.CONTENT.ATTRIBUTES.DEALER_SELECTED_TEXT)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.CHANGE_SELECTED_DEALER_CTA,this.getContentModel().get(e.CONTENT.ATTRIBUTES.CHANGE_SELECTED_DEALER_CTA)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.DISTANCE_UNIT,this.getContentModel().get(e.CONTENT.ATTRIBUTES.DISTANCE_UNIT_LABEL)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.ENABLE_DEALER_NUMBER,this.getContentModel().get(e.CONTENT.ATTRIBUTES.SEARCH_FOR_DEALER_PHONE)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.INFINITI_ECOMM_SERVICE_LABEL,this.getContentModel().get(e.CONTENT.ATTRIBUTES.INFINITI_ECOMM_SERVICE_LABEL)).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.INFINITI_ECOMM_SERVICE_DESCRIPTION,this.getContentModel().get(e.CONTENT.ATTRIBUTES.INFINITI_ECOMM_SERVICE_DESCRIPTION))),this._model},_getView:function(){var a;return this._view||(a={model:this._getModel()},a[f.SELECTED_DEALER.VIEW.OPTIONS.EVENT_AGGREGATOR]=this.getEventAggregator(),this._view=new g(a)),this._view},_onDealerModelError:function(){},_onDealerModelSync:function(c){var d,g,h,i,j,k=this.getContentModel().getDealerIconKeys();k.length>1&&(d=a.find(k,function(b){return a.contains(b.dealerTypes,c.getType())}),g=d&&d.iconStyle,h=this._getDealerTypeIconCssClass(g),i=h&&f.GENERIC_CSS_CLASSES.DEALER_TYPE_PREFIX+h,j=this._getDealerTypeIconIconURL(g)),this._getModel().set(e.DEALER.OPTIONS.DEALER_ID,c.getDealerId()).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.NAME,c.getName()).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.ADDRESS,c.getFormattedAddress()).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.DEALER_TYPE_CSS_CLASS,i).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.DEALER_TYPE_ICON_IMG_URL,j).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.PHONE,c.getPhone()).set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.IS_INFINITI_ECOMM_RETAILER_VISIBLE,c.isInfinitiEcommRetailer()),this.getEventAggregator().trigger(b.EVENTS.SET_APPLICATION_STATE,b.STATES.DEALER_SELECTED).trigger(b.EVENTS.SELECTED_DEALER_SYNC,c)},_onChangeSelectDropdownDealerClick:function(a){var c,d=!0;a===b.SELECTED_DEALER_SOURCES.SMART_LOCATION?c=b.STATES.SEARCH:(c=b.STATES.SEARCH_RESULTS,d=!1),this.getEventAggregator().trigger(b.EVENTS.LOCK_STATE,!1).trigger(b.EVENTS.SET_APPLICATION_STATE,c).trigger(b.EVENTS.CLEAR_SELECTED_DEALER,d)},_onSetSelectDropdownDealer:function(b,c,e){this._getModel().set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.DISTANCE,e),b instanceof d?this._onDealerModelSync(b):this._requestDealer(b),this.stopListening(this._getView(),f.SELECTED_DEALER.EVENTS.CHANGE_SELECTED_DEALER_CLICK).listenTo(this._getView(),f.SELECTED_DEALER.EVENTS.CHANGE_SELECTED_DEALER_CLICK,a.partial(a.bind(this._onChangeSelectDropdownDealerClick,this),c))},_requestDealer:function(a){var c={};c[e.DEALER.OPTIONS.ADDRESS_FIELD_ORDER]=this._getAddressFieldOrder(),c[e.DEALER.OPTIONS.DEALER_ID]=a,c[e.DEALER.OPTIONS.DISTANCE_UNIT]=this.getContentModel().get(e.CONTENT.ATTRIBUTES.DISTANCE_UNIT),c[e.DEALER.OPTIONS.URL_FORMAT]=this.getContentModel().get(e.CONTENT.ATTRIBUTES.DEALER_URL_FORMAT),this._dealerModel=i.getObject(d,null,c).on(e.GENERIC.EVENTS.ERROR,this._onDealerModelError,this).on(e.GENERIC.EVENTS.SYNC,this._onDealerModelSync,this).fetch(),this.getEventAggregator().trigger(b.EVENTS.SET_APPLICATION_STATE,b.STATES.SEARCHING)},getDealerId:function(){return this._getModel().get(e.DEALER.OPTIONS.DEALER_ID)},setDealerId:function(a){return this._getModel().set(e.DEALER.OPTIONS.DEALER_ID,a),this},getDealerName:function(){return this._getModel().get(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.NAME)},lockDealer:function(){this._getModel().set(f.SELECTED_DEALER.VIEW_MODEL.ATTRIBUTES.IS_CHANGE_DEALER_BUTTON_VISIBLE,!1)}})}),define("c_019_25B_SecondaryStateController",["underscore","c_019_25B_ApplicationConstants","c_019_25B_ControllerConstants","marionette"],function(a,b,c,d){"use strict";var e=b.EVENTS,f=b.STATES,g=c.STATE.OPTIONS;return d.Object.extend({initialize:function(){this._bindEvents()},_bindEvents:function(){this._getEventAggregator()&&this._getEventAggregator().on(e.GO_TO_PREVIOUS_APPLICATION_STATE,this.goToPreviousState,this).on(e.SET_APPLICATION_STATE,this.setState,this).on(e.LOCK_STATE,this._setStateLock,this).on(e.TOGGLE_ERROR_VISIBILITY_PERSISTENCE,this._setErrorVisibilityPersistence,this),$(document).on("click",a.bind(function(a){var b=$(a.target),c=b.closest(".available-dealers");c.find(".details").length?!b.parents(".dealer-list").length&&c.find(".dealer-list .select-dealer-container").length&&this._getDealerDropdownController().show():this._getDealerDropdownController().hide(),c.find(".dealer-list .select-dealer-container").length||b.parents(".dealer-locator-secondary").find(".location-input").val("").focus()},this))},_getDealerDropdownController:function(){return this.options[g.DEALER_DROPDOWN_CONTROLLER]},_getErrorController:function(){return this.options[g.ERROR_CONTROLLER]},_getEventAggregator:function(){return this.options[g.EVENT_AGGREGATOR]},_getLoaderController:function(){return this.options[g.LOADER_CONTROLLER]},_getSearchController:function(){return this.options[g.SEARCH_CONTROLLER]},_getSelectedDealerController:function(){return this.options[g.SELECTED_DEALER_CONTROLLER]},_getDriveAtHomeEnabled:function(){return this.options[g.DRIVE_AT_HOME_ENABLED]},_getErrorVisibilityPersistence:function(){return this._errorVisibilityPersistence},_toggleErrorVisibility:function(b){(a.isUndefined(b)?this._getErrorVisibilityPersistence():b)?this._getErrorController().show():this._getErrorController().hide()},_onStateChange:function(){switch(this._state){case f.DEALER_SELECTED:this._getDealerDropdownController().hide(),this._toggleErrorVisibility(!1),this._getLoaderController().hide();break;case f.ERROR:this._getDriveAtHomeEnabled()?this._getDealerDropdownController().hide():this._getDealerDropdownController().show(),this._toggleErrorVisibility(!0),this._getLoaderController().hide();break;case f.INITIALIZING:this._getDealerDropdownController().hide(),this._toggleErrorVisibility(!1),this._getLoaderController().show();break;case f.SEARCH:this._getDealerDropdownController().hide(),this._toggleErrorVisibility(),this._getLoaderController().hide();break;case f.SEARCH_RESULTS:this._getDealerDropdownController().show(),this._toggleErrorVisibility(),this._getLoaderController().hide();break;case f.SEARCHING:this._getDealerDropdownController().hide(),this._toggleErrorVisibility(!1),this._getLoaderController().show()}},goToPreviousState:function(){this.setState(this._previousState)},getCurrentState:function(){return this._state},_setStateLock:function(a){return this._stateLock=a,this},_isStateLocked:function(){return!!this._stateLock||!1},_setErrorVisibilityPersistence:function(a){return this._errorVisibilityPersistence=a,this},setState:function(a){return this._state===a||this._isStateLocked()||(this._previousState=this._state,this._state=a,this._onStateChange()),this}})}),define("c_019_25B_SecondaryController",["underscore","c_019_25B_ApplicationConstants","c_019_25B_AnalyticsController","c_019_25B_ControllerConstants","c_019_25B_DealerDropdownController","c_019_25B_DealerSearchController","c_019_25B_VehicleSelectorController","c_019_25B_ErrorController","c_019_25B_GeolocationController","heliosLocation","c_019_25B_LoaderController","marionette","c_019_25B_ModelConstants","c_019_25B_ModuleConstants","objectFactory","c_019_25B_SearchController","c_019_25B_SelectDropdownDealerController","c_019_25B_StartupController","c_019_25B_SecondaryStateController","c_019_25B_TestDriveStockCheckController","trackingCodes"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u){"use strict";var v=b.EVENTS,w=b.STATES,x=n.SECONDARY.CONTROLLER_EVENTS,y=n.SECONDARY.CONTROLLER_OPTIONS,z=n.SECONDARY.REGIONS;return l.Object.extend({initialize:function(){this._bindEvents()._renderSecondaryView()._initSelectedDealer()._initDealerList()._initError()._initTestDriveStockCheck()._initGeolocation()._initDealerSearch()._initLoader()._initSearch()._initVehicleSelector()._initStartupController()._initStateController()._initAnalyticsController(),this._startupController.run()},_bindEvents:function(){return this._getEventAggregator().on(v.SET_SEARCH_LO
44CATION,this._onSetSearchLocation,this).on(v.SET_SELECTED_DEALER,this._onSetSelectedDealer,this).on(v.SELECTED_DEALER_SYNC,this._onSelectedDealerSync,this).on(v.VEHICLE_SELECTION_CHANGED,this._onVehicleSelectionChange,this).on(v.TEST_DRIVE_MODEL_CHANGED,this._onTestDriveModelChange,this).on(v.NO_TEST_DRIVE_STOCK_FOUND,this._onNoTestDriveStockFound,this).on(v.SET_APPLICATION_STATE,this._handleSelectLocationInstructionVisibility,this),this},_getAnalyticsManager:function(){return this.options[y.ANALYTICS_MANAGER]},_getContentModel:function(){return this.options[y.CONTENT]},_getControllerOptionsObject:function(a){var b=n.BASE_CONTROLLER.OPTIONS,c={};return c[b.CONTENT]=this._getContentModel(),c[b.EVENT_AGGREGATOR]=this._getEventAggregator(),c[b.REGION]=this._getSecondaryView()[a],c[b.WINDOW]=this._getWindow(),c},_getDeepLinkDealerFilterRequestParamValues:function(){return this.options[y.DEEP_LINK_DEALER_FILTER_REQUEST_PARAM_VALUES]},_getDeepLinkDealerId:function(){return this.options[y.DEEP_LINK_DEALER_ID]},_getDeepLinkLdid:function(){return this.options[y.DEEP_LINK_LDID]},_getDeepLinkSearchLocation:function(){return this.options[y.DEEP_LINK_SEARCH_LOCATION]},_getEventAggregator:function(){return this.options[y.EVENT_AGGREGATOR]},_getHeliosObject:function(){return this.options[y.HELIOS_OBJECT]},_getSecondaryView:function(){return this.options.secondaryView},_getSmartLocationContext:function(){return this.options[y.SMART_LOCATION_CONTEXT]},_getWindow:function(){return this.options[y.WINDOW]},_initTestDriveStockCheck:function(){var a={};return this._getContentModel().getIsTestDriveStockCheckEnabled()&&(a[d.TEST_DRIVE_STOCK_CHECK.OPTIONS.EVENT_AGGREGATOR]=this._getEventAggregator(),a[d.TEST_DRIVE_STOCK_CHECK.OPTIONS.SMART_LOCATION_CONTEXT]=this._getSmartLocationContext(),a[d.TEST_DRIVE_STOCK_CHECK.OPTIONS.VEHICLE_DATA]=this._getContentModel().getVehicleSelectorData(),a[n.BASE_CONTROLLER.OPTIONS.WINDOW]=this._getWindow(),this._testDriveStockCheckController=new t(a),this._testDriveStockCheckController.initValidation()),this},_initDealerList:function(){var a=this._getControllerOptionsObject(z.DEALER_LIST);return a[n.DEALER_DROPDOWN.CONTROLLER_OPTIONS.DEALER_TYPE_ICON_SETTINGS]=this._getHeliosObject().components.c_019_25B.settings.dealerTypeIcons,a[n.DEALER_DROPDOWN.CONTROLLER_OPTIONS.SELECTED_DEALER_CONTROLLER]=this._SelectDropdownDealerController,a[n.DEALER_DROPDOWN.CONTROLLER_OPTIONS.IS_CONFIGURATOR]=this.options.isConfigurator,a[n.DEALER_DROPDOWN.CONTROLLER_OPTIONS.MAPPING_DATA]=this.options.mappingData,this._DealerDropdownController=new e(a),this},_setDealerServiceMapping:function(a,b){this._getControllerOptionsObject(z.DEALER_LIST)[n.DEALER_DROPDOWN.CONTROLLER_OPTIONS.DEALER_TYPE_ICON_SETTINGS]=this._getHeliosObject().components.c_019_25B.settings.dealerTypeIcons},_initError:function(){return this._errorController=new h(this._getControllerOptionsObject(z.ERROR)),this},_initGeolocation:function(){var a=n.BASE_CONTROLLER.OPTIONS,b={};return b[a.EVENT_AGGREGATOR]=this._getEventAggregator(),b[a.WINDOW]=this._getWindow(),this._geolocationController=new i(b,this._getContentModel()),this},_initDealerSearch:function(){var b=this._getContentModel(),c=d.DEALER_SEARCH.OPTIONS,e=this._getDeepLinkDealerFilterRequestParamValues(),g={};return g[c.ADDRESS_FIELD_ORDER]=b.getAddressFieldOrder(),g[c.DISTANCE_UNIT]=b.getDistanceUnit(),g[c.EVENT_AGGREGATOR]=this._getEventAggregator(),g[c.IS_SEARCH_ON_STARTUP_ENABLED]=b.getIsSearchOnStartupEnabled(),g[c.MAX_RESULT_COUNT]=b.getMaxResultCount(),g[c.MAX_RADIUS]=b.getMaxRadius(),g[c.IS_DEALER_ACCEPTS_LEADS_MANDATORY]=b.getIsShowOnlyDealersWhoAcceptLeadsEnabled(),g[c.MAPPING_DATA]=this.options.mappingData,g[c.IS_CONFIGURATOR]=this.options.isConfigurator,g[c.SERVICE_FILTERS]=a.chain(b.getDealerFilterGroups()).map(function(b){return a.chain(b.filters).filter(function(b){return(!0===b.applyOnLoad||a.contains(e,b.requestParamValue))&&a.isArray(b.serviceIds)}).pluck("serviceIds").value()}).flatten().uniq().value(),g[c.SERVICE_FILTER_TYPE]=b.getServiceFilterType(),g[c.WINDOW]=this._getWindow(),g[c.TEST_DRIVE_MODEL_ID]=this._testDriveStockCheckController&&this._testDriveStockCheckController.getTestDriveModelId(),g[c.CONTENT]=this._getContentModel(),this._dealerSearchController=new f(g),this},_initLoader:function(){return this._loaderController=new k(this._getControllerOptionsObject(z.LOADER)),this},_initSearch:function(){return this._searchController=new p(this._getControllerOptionsObject(z.SEARCH)),this},_initSelectedDealer:function(){var a=this._getControllerOptionsObject(z.SELECTED_DEALER);return a[n.SELECTED_DEALER.CONTROLLER.OPTIONS.ADDRESS_FIELD_ORDER]=this._getContentModel().getAddressFieldOrder(),a[n.SELECTED_DEALER.CONTROLLER.OPTIONS.DEALER_TYPE_ICON_SETTINGS]=this._getHeliosObject().components.c_019_25B.settings.dealerTypeIcons,this._SelectDropdownDealerController=new q(a),this},_initVehicleSelector:function(){var a;return this._testDriveStockCheckController&&(a=this._getControllerOptionsObject(z.VEHICLE_SELECTOR),a[n.VEHICLE_SELECTOR.CONTROLLER.OPTIONS.ACTIVE_MODEL_ID]=this._testDriveStockCheckController&&this._testDriveStockCheckController.getModelId(),this._vehicleSelectorController=new g(a)),this},_initStartupController:function(){var a={},b=d.STARTUP.OPTIONS,c=this._getContentModel()&&this._getContentModel().get(m.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER)&&JSON.parse(this._getContentModel().get(m.CONTENT.ATTRIBUTES.ENABLE_PMA_DEALER));return a[b.DEALER_URL_FORMAT]=this._getContentModel().getDealerUrlFormat(),a[b.ADDRESS_FIELD_ORDER]=this._getContentModel().getAddressFieldOrder(),a[b.DEEP_LINK_DEALER_ID]=this._getDeepLinkDealerId(),a[b.DEEP_LINK_SEARCH_LO
44CATION]=this._getDeepLinkSearchLocation(),a[b.EVENT_AGGREGATOR]=this._getEventAggregator(),a[b.MARKET_COUNTRY_CODE]=this._getWindow().HELIOS.config.common.countryCode,a[b.SMART_LOCATION_CONTEXT]=this._getSmartLocationContext(),a[b.HELIOS_OBJECT]=this._getHeliosObject(),a[b.IS_TEST_DRIVE_STOCK_CHECK_AVAILABLE]=!!this._testDriveStockCheckController,a[b.ENABLE_PMA_DEALER]=c,this._startupController=new r(a),this},_initStateController:function(){var a={},b=d.STATE.OPTIONS;return a[b.DEALER_DROPDOWN_CONTROLLER]=this._DealerDropdownController,a[b.ERROR_CONTROLLER]=this._errorController,a[b.EVENT_AGGREGATOR]=this._getEventAggregator(),a[b.LOADER_CONTROLLER]=this._loaderController,a[b.SEARCH_CONTROLLER]=this._searchController,a[b.SELECTED_DEALER_CONTROLLER]=this._SelectDropdownDealerController,a[b.DRIVE_AT_HOME_ENABLED]=this._getContentModel().getDriveAtHomeEnabled(),this._stateController=new s(a),this._getEventAggregator().trigger(v.SET_APPLICATION_STATE,w.INITIALIZING),this},_initAnalyticsController:function(){var a={},b=d.ANALYTICS.OPTIONS;return a[b.EVENT_AGGREGATOR]=this._getEventAggregator(),a[b.ANALYTICS_MANAGER]=this._getAnalyticsManager(),a[b.TRACKING_CODES]=u,a[b.ANALYTICS_SETTINGS]=this._getHeliosObject().components.c_019_25B.settings.analytics,this._analyticsController=o.getObject(c,a),this},_onSelectedDealerSync:function(a){this._getSecondaryView().model.setDealerId(a.getDealerId()).setDealerName(a.getName())},_onVehicleSelectionChange:function(a){a&&a.modelId&&a.name&&this._getSecondaryView().model.setModelId(a.modelId).setModelName(a.name)},_onTestDriveModelChange:function(a){var b=!!a||!1;this._setModelIsDealerLocatorVisible(b),this._setIsTestDriveModelSet(b),this._handleSelectLocationInstructionVisibility(b)},_onNoTestDriveStockFound:function(a){this._setModelIsDealerLocatorVisible(!a||!1)},_onSetSearchLocation:function(c,d){var e=b.SEARCH_LOCATION_SOURCES;a.contains([e.GEO_LOCATION,e.USER_SELECT],d)&&this._getSmartLocationContext().set(c),this._setIsLocationSet(!0)},_onSetSelectedDealer:function(a,c){c===b.SELECTED_DEALER_SOURCES.USER_SELECT?(this._getSmartLocationContext().set((new j).setDealerId(a)),this.trigger(x.DEALER_SELECTED_BY_USER)):c===b.SELECTED_DEALER_SOURCES.SMART_LOCATION&&!0===this._getDeepLinkLdid()&&this._SelectDropdownDealerController.lockDealer(),this._setIsDealerSet(!0)},_setIsSelectLocationInstructionVisible:function(a){this._getSecondaryView().model.setIsSelectLocationInstructionVisible(a)},_setModelIsDealerLocatorVisible:function(a){this._getSecondaryView().model.setIsDealerLocatorVisible(a)},_setIsLocationSet:function(a){return this._isLocationSet=a,this},_getIsLocationSet:function(){return this._isLocationSet},_setIsDealerSet:function(a){return this._isDealerSet=a,this},_getIsDealerSet:function(){return this._isDealerSet},_setIsTestDriveModelSet:function(a){return this._isTestDriveModelSet=a,this},_getIsTestDriveModelSet:function(){return this._isTestDriveModelSet},_getCurrentApplicationState:function(){return this._stateController&&this._stateController.getCurrentState()},_handleSelectLocationInstructionVisibility:function(a){var b=!1;if(!this._getSecondaryView().model.isSelectLocationInstructionSet()||!this._getCurrentApplicationState()||a===w.INITIALIZING)return!1;!this._getIsTestDriveModelSet()||this._getIsDealerSet()||this._getIsLocationSet()||(b=!0),!this._getIsLocationSet()&&this._testDriveStockCheckController.isModelNotFoundAtDealer()&&(b=!0),this._setIsSelectLocationInstructionVisible(b)},_renderSecondaryView:function(){return this._getSecondaryView().render(),this}})}),define("hbars!/components/c_019-25B/scripts/app/modules/secondary/html/secondaryTemplate",["handlebars"],function(a){return a.template({1:function(a,b,c,d,e){return"validate required"},3:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'        <input class="model-id validate required" name="'+a.escapeExpression((f=null!=(f=g(c,"modelIdElementName")||(null!=b?g(b,"modelIdElementName"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{
45name:"modelIdElementName",hash:{}
45,data:e,loc:{start:{line:17,column:56},end:{line:17,column:78}}}):f))+'" type="hidden" />\n'},5:function(a,b,c,d,e){var f,g=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'        <input class="model-name validate required" name="'+a.escapeExpression((f=null!=(f=g(c,"modelNameElementName")||(null!=b?g(b,"modelNameElementName"):b))?f:a.hooks.helperMissing,"function"==typeof f?f.call(null!=b?b:a.nullContext||{},{name:"modelNameElementName",hash:{},data:e,loc:{start:{line:20,column:58},end:{line:20,column:82}}}):f))+'" type="hidden" />\n'},compiler:[8,">= 4.3.0"],main:function(a,b,c,d,e){var f,g,h=a.lookupProperty||function(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]};return'<p class="select-location-instruction">'+a.escapeExpression((g=null!=(g=h(c,"selectLocationInstruction")||(null!=b?h(b,"selectLocationInstruction"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"selectLocationInstruction",hash:{},data:e,loc:{start:{line:1,column:39},end:{line:1,column:70}}}):g))+'</p>\n<div class="vehicle-selector"></div>\n<div class="dealer-locator-secondary">\n    <div class="search"></div>\n    <div class="available-dealers">\n        <div class="selected-dealer"></div>\n        <div class="loader"></div>\n        <div class="dealer-list"></div>\n    </div>\n    <div class="error"></div>\n</div>\n<div class="form-fields">\n    <input class="dealer-id '+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isSelectedDealerMandatory"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:13,column:28},end:{line:13,column:85}}}))?f:"")+'" name="'+a.escapeExpression((g=null!=(g=h(c,"dealerIdElementName")||(null!=b?h(b,"dealerIdElementName"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"dealerIdElementName",hash:{},data:e,loc:{start:{line:13,column:93},end:{line:13,column:116}}}):g))+'" type="hidden" />\n    <input class="dealer-name '+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"isSelectedDealerMandatory"):b,{name:"if",hash:{},fn:a.program(1,e,0),inverse:a.noop,data:e,loc:{start:{line:14,column:30},end:{line:14,column:87}}}))?f:"")+'" name="'+a.escapeExpression((g=null!=(g=h(c,"dealerNameElementName")||(null!=b?h(b,"dealerNameElementName"):b))?g:a.hooks.helperMissing,"function"==typeof g?g.call(null!=b?b:a.nullContext||{},{name:"dealerNameElementName",hash:{},data:e,loc:{start:{line:14,column:95},end:{line:14,column:120}}}):g))+'" type="hidden" />\n\n'+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"modelIdElementName"):b,{name:"if",hash:{},fn:a.program(3,e,0),inverse:a.noop,data:e,loc:{start:{line:16,column:4},end:{line:18,column:11}}}))?f:"")+(null!=(f=h(c,"if").call(null!=b?b:a.nullContext||{},null!=b?h(b,"modelNameElementName"):b,{name:"if",hash:{},fn:a.program(5,e,0),inverse:a.noop,data:e,loc:{start:{line:19,column:4},end:{line:21,column:11}}}))?f:"")+"</div>\n"},useData:!0})}),define("c_019_25B_SecondaryView",["c_019_25B_ApplicationConstants","backbone","marionette","c_019_25B_ModuleConstants","hbars!/components/c_019-25B/scripts/app/modules/secondary/html/secondaryTemplate"],function(a,b,c,d,e){"use strict";return b.Marionette.LayoutView.extend({modelEvents:function(){var a={};return a["change:"+d.SECONDARY.VIEW_MODEL.ATTRIBUTES.DEALER_ID]="_onDealerIdChange",a["change:"+d.SECONDARY.VIEW_MODEL.ATTRIBUTES.DEALER_NAME]="_onDealerNameChange",a["change:"+d.SECONDARY.VIEW_MODEL.ATTRIBUTES.MODEL_ID]="_onModelIdChange",a["change:"+d.SECONDARY.VIEW_MODEL.ATTRIBUTES.MODEL_NAME]="_onModelNameChange",a["change:"+d.SECONDARY.VIEW_MODEL.ATTRIBUTES.IS_DEALER_LOCATOR_VISIBLE]="_setDealerLocatorSecondaryVisibility",a["change:"+d.SECONDARY.VIEW_MODEL.ATTRIBUTES.IS_SELECT_LOCATION_INSTRUCTION_VISIBLE]="_setSelectLocationInstructionVisibility",a},onBeforeRender:function(){this.$el.addClass(a.CSS_CLASSES.INITIALIZED)},regions:function(){var a={},b=d.SECONDARY.REGIONS,c=d.SECONDARY.SELECTORS;return a[b.DEALER_LIST]=c.DEALER_LIST,a[b.ERROR]=c.ERROR,a[b.LOADER]=c.LOADER,a[b.SEARCH]=c.SEARCH,a[b.SELECTED_DEALER]=c.SELECTED_DEALER,a[b.VEHICLE_SELECTOR]=c.VEHICLE_SELECTOR,a},template:e,ui:{dealerIdInput:d.SECONDARY.VIEW.SELECTORS.DEALER_ID_INPUT,dealerNameInput:d.SECONDARY.VIEW.SELECTORS.DEALER_NAME_INPUT,modelIdInput:d.SECONDARY.VIEW.SELECTORS.MODEL_ID_INPUT,modelNameInput:d.SECONDARY.VIEW.SELECTORS.MODEL_NAME_INPUT,dealerLocatorSecondary:d.SECONDARY.VIEW.SELECTORS.DEALER_LOCATOR_SECONDARY,selectLocationInstruction:d.SECONDARY.VIEW.SELECTORS.SELECT_LOCATION_INSTRUCTION},onRender:function(){this._setDealerLocatorSecondaryVisibility(),this._setSelectLocationInstructionVisibility()},_onDealerIdChange:function(a,b){this.ui.dealerIdInput.val(b)},_onDealerNameChange:function(a,b){this.ui.dealerNameInput.val(b)},_onModelIdChange:function(a,b){this.ui.modelIdInput.val(b)},_onModelNameChange:function(a,b){this.ui.modelNameInput.val(b)},_setDealerLocatorSecondaryVisibility:function(){this.model.getIsDealerLocatorVisible()?this.ui.dealerLocatorSecondary.removeClass(d.GENERIC_CSS_CLASSES.HIDDEN).attr(d.ARIA_TAGS.ARIA_HIDDEN,!1):this.ui.dealerLocatorSecondary.addClass(d.GENERIC_CSS_CLASSES.HIDDEN).attr(d.ARIA_TAGS.ARIA_HIDDEN,!0)},_setSelectLocationInstructionVisibility:function(){this.model.getIsSelectLocationInstructionVisible()?this.ui.selectLocationInstruction.removeClass(d.GENERIC_CSS_CLASSES.HIDDEN).attr(d.ARIA_TAGS.ARIA_HIDDEN,!1):this.ui.selectLocationInstruction.addClass(d.GENERIC_CSS_CLASSES.HIDDEN).attr(d.ARIA_TAGS.ARIA_HIDDEN,!0)}})}),define("c_019_25B_SecondaryViewModel",["backbone","c_019_25B_ModuleConstants"],function(a,b){"use strict";var c=b.SECONDARY.VIEW_MODEL.ATTRIBUTES;return a.Model.extend({defaults:function(){var a={};return a[c.IS_DEALER_LOCATOR_VISIBLE]=!0,a[c.IS_SELECT_LOCATION_INSTRUCTION_VISIBLE]=!1,a},setDealerId:function(a){return this.set(c.DEALER_ID,a),this},setDealerIdElementName:function(a){return this.set(c.DEALER_ID_ELEMENT_NAME,a),this},setDealerName:function(a){return this.set(c.DEALER_NAME,a),this},setDealerNameElementName:function(a){return this.set(c.DEALER_NAME_ELEMENT_NAME,a),this},setIsSelectedDealerMandatory:function(a){return this.set(c.IS_SELECTED_DEALER_MANDATORY,a),this},setModelId:function(a){return this.set(c.MODEL_ID,a),this},setModelIdElementName:function(a){return this.set(c.MODEL_ID_ELEMENT_NAME,a),this},setModelName:function(a){return this.set(c.MODEL_NAME,a),this},setModelNameElementName:function(a){return this.set(c.MODEL_NAME_ELEMENT_NAME,a),this},getIsDealerLocatorVisible:function(){return this.get(c.IS_DEALER_LOCATOR_VISIBLE)},setIsDealerLocatorVisible:function(a){return this.set(c.IS_DEALER_LOCATOR_VISIBLE,a),this},isSelectLocationInstructionSet:function(){return!!this.get(c.SELECT_LOCATION_INSTRUCTION)},setSelectLocationInstruction:function(a){return this.set(c.SELECT_LOCATION_INSTRUCTION,a),this},getIsSelectLocationInstructionVisible:function(){return this.get(c.IS_SELECT_LOCATION_INSTRUCTION_VISIBLE)},setIsSelectLocationInstructionVisible:function(a){return this.set(c.IS_SELECT_LOCATION_INSTRUCTION_VISIBLE,a),this}})}),define("c_019_25B",["underscore","c_019_25B_ApplicationConstants","backbone","c_019_25B_ContentModel","c_019_25B_MainController","c_019_25B_MainView","c_019_25B_MainViewModel","c_019_25B_SecondaryController","c_019_25B_SecondaryView","c_019_25B_SecondaryViewModel","marionette","c_019_25B_ModelConstants","c_019_25B_ModuleConstants","objectFactory"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){"use strict";function o(a,b){this.settings=$.extend({},p,b),this.defaults=p,this.$el=a,this.$el&&this.$el.length&&this.init(b)}var p={selectors:{root:".c_019-25B"}};return o.prototype.init=function(a){this.createApplication(this.$el)},o.prototype.createApplication=function(d){var e=new k.Application({showSelectedDealerRequiredMessage:function(){this.eventAggregator.trigger(b.EVENTS.DISPLAY_SELECTED_DEALER_REQUIRED_MESSAGE)}}),f=this.getContentModel(d),g=this.settings.eventAggregator?this.settings.eventAggregator:a.extend({},c.Events);e.eventAggregator=g,d.hasClass("secondary-layout")?(e.secondaryView=this.getSecondaryView(d,g,this.get
45SecondaryViewModel(f)),e.secondaryController=this.getSecondaryController(e.secondaryView,f,g,this.getHeliosObject()),e.secondaryController.on(m.SECONDARY.CONTROLLER_EVENTS.DEALER_SELECTED_BY_USER,function(){$("html, body").animate({scrollTop:$(d).offset().top})})):(e.mainView=this.getMainView(d,g,this.getMainViewModel(f)),e.mainController=this.getMainController(e.mainView,f,g,this.getHeliosObject()),e.mainController.on(m.MAIN.CONTROLLER_EVENTS.DEALER_SELECTED_BY_USER,function(){$("html, body").animate({scrollTop:$(d).offset().top})})),$(d).data("DealerLocatorInstance",e)},o.prototype.getContentModel=function(b){var c,e,f=$(b).find("script[data-content]");try{c=JSON.parse(a.unescape(f.html())),c[l.CONTENT.ATTRIBUTES.LOCATION_SEARCH_ELEMENT_ID]=a.uniqueId("Location-"),e=new d(c)}catch(g){throw new Error("Cannot parse C19.25 JSON")}return e},o.prototype.getDeepLinkDealerId=function(){var a=window.useAmericas?/[?&]dealerId=([^&]*)/:/[?&]dealerIdInForm=([^&]*)/,b=a.exec(this.settings.window.location.search);return b&&this.settings.window.decodeURIComponent(b[1])||void 0},o.prototype.getDeepLinkLdid=function(){var a=/[?&]ldid=([^&]*)/.exec(this.settings.window.location.search);if(a&&a.length>1)try{return JSON.parse(this.settings.window.decodeURIComponent(a[1]).toLowerCase())}catch(b){return}},o.prototype.getDeepLinkFilterRequestParamValues=function(){var b,c=/[?&]dealerFilters=([^&]*)/.exec(this.settings.window.location.search);return c&&(b=a.map(c[1].split(","),this.settings.window.decodeURIComponent)),b||[]},o.prototype.getDeepLinkSearchLocation=function(){var a=/[?&]dealersNearLocation=([^&]*)/.exec(this.settings.window.location.search);return a&&this.settings.window.decodeURIComponent(a[1])||void 0},o.prototype.getHeliosObject=function(){return this.settings.HELIOS},o.prototype.getMainController=function(b,c,d,f){var g=m.MAIN.CONTROLLER_OPTIONS,h=this.$el.find("script[data-model-dealer]"),i={};return i[g.CONTENT]=c,i[g.DEEP_LINK_DEALER_FILTER_REQUEST_PARAM_VALUES]=this.getDeepLinkFilterRequestParamValues(),i[g.DEEP_LINK_DEALER_ID]=this.getDeepLinkDealerId(),i[g.DEEP_LINK_LDID]=this.getDeepLinkLdid(),i[g.DEEP_LINK_SEARCH_LOCATION]=this.getDeepLinkSearchLocation(),i[g.EVENT_AGGREGATOR]=d,i[g.HELIOS_OBJECT]=f,i[g.MAIN_VIEW]=b,i[g.SMART_LOCATION_CONTEXT]=this.settings.smartLocationContext,i[g.WINDOW]=this.settings.window,i[g.IS_CONFIGURATOR]=this.settings.isConfigurator,i[g.ANALYTICS_MANAGER]=this.settings.analyticsManager,h&&h.length&&(i[g.MAPPING_DATA]=JSON.parse(a.unescape(h.html()))),n.getObject(e,i)},o.prototype.getMainViewModel=function(a){return(new g).setDealerIdElementName(a.getDealerIdElementName()).setDealerNameElementName(a.getDealerNameElementName()).setIsSelectedDealerMandatory(a.getIsSelectedDealerMandatory())},o.prototype.getMainView=function(a,b,c){var d={el:a,model:c};return d[m.MAIN.VIEW.OPTIONS.EVENT_AGGREGATOR]=b,new f(d)},o.prototype.getSecondaryController=function(b,c,d,e){var f=m.SECONDARY.CONTROLLER_OPTIONS,g=this.$el.find("script[data-model-dealer]"),i={};return i[f.CONTENT]=c,i[f.DEEP_LINK_DEALER_FILTER_REQUEST_PARAM_VALUES]=this.getDeepLinkFilterRequestParamValues(),i[f.DEEP_LINK_DEALER_ID]=this.getDeepLinkDealerId(),i[f.DEEP_LINK_LDID]=this.getDeepLinkLdid(),i[f.DEEP_LINK_SEARCH_LOCATION]=this.getDeepLinkSearchLocation(),i[f.EVENT_AGGREGATOR]=d,i[f.HELIOS_OBJECT]=e,i[f.SECONDARY_VIEW]=b,i[f.SMART_LOCATION_CONTEXT]=this.settings.smartLocationContext,i[f.WINDOW]=this.settings.window,i[f.IS_CONFIGURATOR]=this.settings.isConfigurator,i[f.ANALYTICS_MANAGER]=this.settings.analyticsManager,g&&g.length&&(i[f.MAPPING_DATA]=JSON.parse(a.unescape(g.html()))),n.getObject(h,i)},o.prototype.getSecondaryViewModel=function(a){return(new j).setDealerIdElementName(a.getDealerIdElementName()).setDealerNameElementName(a.getDealerNameElementName()).setIsSelectedDealerMandatory(a.getIsSelectedDealerMandatory())},o.prototype.getSecondaryView=function(a,b,c){var d={el:a,model:c};return d[m.SECONDARY.VIEW.OPTIONS.EVENT_AGGREGATOR]=b,new i(d)},o}),define("c_019_26",["underscore","storageManager"],function(a,b){"use strict";function c(a,b){this.settings=$.extend({},g,b),this.defaults=g,this.$el=a,this.init(b)}
45var d,e,f,g={selectors:{root:".c_019-26",vehicleSelect:".your-vehicle",formGroup:".form-group",customRadio:".custom-radio",selectionOne:"#operationType1",selectionTwo:"#operationType2",yourVehicles:".your-vehicles"},data:{url:"url",currentMileage:"[data-name=currentMileage]",firstRegistrationDate:"[data-name=firstRegistrationDate]",annualMileage:"[data-name=annualMileage]",vin:"[data-name=vin]",modelName:"[data-name=modelName]",registrationNumber:"[data-name=registrationNumber]",brand:"[data-name=brand]"},states:{checked:"checked",disabled:"disabled"},classes:{hidden:"hidden"},events:{change:"change"},storageSettings:{currentMileage:"currentMileage",firstRegistrationDate:"firstRegistrationDate",annualMileage:"annualMileage",brand:"brand"},isLoggedIn:!1,cookie:{ownerServicesLoggedInCookie:"OwnerServicesLoggedInName"}},h={cookie:{mode:"cookie"}},i={};return c.prototype.init=function(a){if(d=$(this.settings.selectors.root),!d.length)return!1;b.init(),this.bindEvents(),this.checkLoginState()},c.prototype.getVehicleData=function(){(e=d.data(this.settings.data.url))&&(f=$.ajax({url:e,dataType:"json"}),f.done(a.bind(function(a){this.populateVehicleDropDown(a)},this)).fail(function(){i={}}))},c.prototype.populateVehicleDropDown=function(b){var c;i=b,i&&a.isArray(i.owned)?(a.each(i.owned,a.bind(function(a){c=$("<option />"),c.text(a.vehicleName).val(a.vin),$(this.settings.selectors.vehicleSelect).append(c)},this)),this.toggleRadioButton(i.owned),i=a.indexBy(i.owned,"vin"),this.isSingleDropdown(i)?$(this.settings.selectors.vehicleSelect).val(a.keys(i)).trigger(this.settings.events.change):$(this.settings.selectors.vehicleSelect).val(a.first(a.keys(i))).trigger(this.settings.events.change)):i={}},c.prototype.toggleRadioButton=function(a){var b,c=$(this.settings.selectors.formGroup).find(this.settings.selectors.customRadio);this.isVehicleOwner(a)?c.find(this.settings.selectors.selectionTwo).prop(this.settings.states.checked,!0):(b=$(this.settings.selectors.yourVehicles),c.find(this.settings.selectors.selectionOne).prop(this.settings.states.checked,!0).end().find(this.settings.selectors.selectionTwo).prop(this.settings.states.disabled,!0),b.addClass(this.settings.classes.hidden))},c.prototype.isSingleDropdown=function(a){return 1===Object.keys(a).length},c.prototype.isVehicleOwner=function(b){return!a.isEmpty(b)},c.prototype.lookUpLoggedInCookie=function(){var a=b.loadItem(this.settings.cookie.ownerServicesLoggedInCookie,h.cookie);this.setIsLoggedIn(a)},c.prototype.setIsLoggedIn=function(a){this.settings.isLoggedIn=!!a},c.prototype.isLoggedIn=function(){return this.settings.isLoggedIn},c.prototype.toggleEditableFields=function(b){a.each(b,a.bind(function(a){a.is(":disabled")?this.setRadioButtonState(a,this.settings.states.disabled,!1):a.val()&&(a[0].id===this.settings.storageSettings.firstRegistrationDate?$("#"+a[0].id).prop(this.settings.states.disabled,!0).next().prop(this.settings.states.disabled,!0):this.setRadioButtonState(a,this.settings.states.disabled,!0))},this))},c.prototype.setRadioButtonState=function(b,c,d){a.each(b,function(a){$(a).prop(c,d)})},c.prototype.getHeliosStorageSettings=function(){if($.isNestedProp(this.settings.HELIOS,["config","common","api","storageSettings"])&&this.settings.HELIOS.config.common.api.storageSettings)return this.settings.HELIOS.config.common.api.storageSettings},c.prototype.setHeliosConfigBrand=function(){$.isNestedProp(this.settings.HELIOS,["config","brand"])&&this.settings.HELIOS.config.brand&&$(this.settings.data.brand).val(this.settings.HELIOS.config.brand)},c.prototype.checkLoginState=function(){this.lookUpLoggedInCookie(),this.isLoggedIn()?this.getVehicleData():(d.find(this.settings.selectors.yourVehicles).addClass(this.settings.classes.hidden),d.find(this.settings.selectors.customRadio).addClass(this.settings.classes.hidden),d.find(this.settings.selectors.customRadio).closest(this.settings.selectors.formGroup).addClass(this.settings.classes.hidden))},c.prototype.bindEvents=function(){$(this.settings.selectors.vehicleSelect).on(this.settings.events.change,a.bind(this.handleVehicleChange,this)),$(this.settings.selectors.selectionOne).on(this.settings.events.change,a.bind(this.vehicleDropDownVisibility,this)),$(this.settings.selectors.selectionTwo).on(this.settings.events.change,a.bind(this.vehicleDropDownVisibility,this))},c.prototype.prePopulateFromStorageSettings=function(a,b,c){var d;for(c in a)switch(c){case this.settings.storageSettings.currentMileage:$(this.settings.data.currentMileage).val(b.mileage);break;case this.settings.storageSettings.firstRegistrationDate:d=new Date(b.firstRegistrationDate).toLocaleDateString(),d&&"Invalid Date"!==d&&$(this.settings.data.firstRegistrationDate).val(d);break;case this.settings.storageSettings.annualMileage:$(this.settings.data.annualMileage).val(b.averageMileage);break;case this.settings.storageSettings.brand:this.setHeliosConfigBrand()}},c.prototype.clearPrePopulateForm=function(){var b=$(this.settings.selectors.root).find("input[type=text]");a.each(b,function(a){a.value=""})},c.prototype.vehicleDropDownVisibility=function(a){$(a.target).is($(this.settings.selectors.selectionOne))?($(this.settings.selectors.vehicleSelect).closest(this.settings.selectors.formGroup).addClass(this.settings.classes.hidden),this.clearPrePopulateForm(),this.toggleEditableFields([$(this.settings.data.vin),$(this.settings.data.firstRegistrationDate)])):$(this.settings.selectors.vehicleSelect).trigger(this.settings.events.change,this.handleVehicleChange).closest(this.settings.selectors.formGroup).removeClass(this.settings.classes.hidden)},c.prototype.handleVehicleChange=function(a){var b=$(a.target),c=b.val(),d=i[c]||{},e=this.getHeliosStorageSettings()||{};this.prePopulateFromStorageSettings(e,d),$(this.settings.data.vin).val(d.vin),$(this.settings.data.modelName).val(d.detailedVehicleName),$(this.settings.data.registrationNumber).val(d.registrationNumber),this.toggleEditableFields([$(this.settings.data.vin),$(this.settings.data.firstRegistrationDate)])},c}),define("c_019_27",["underscore","c_008"],function(a,b){"use strict";function c(a,b){this.settings=$.extend({},e,b),this.defaults=e,this.$el=a,this.init(b)}var d,e={selectors:{root:".c_019-27",tooltipTriggers:".has-tooltip",emailAddress:".email-address",emailAddressConfirmation:".email-address-confirmation"},attributes:{typeSubmission:"type-submission",characterConcat:"character-concat",disabled:"disabled"},events:{submit:"submit",change:"change"},rules:{add:"add"}},f=null;return c.prototype.init=function(a){var c;if(f=$.extend({}
45,e,a),d=$(f.selectors.root),!d.length)return!1;c=d.find(f.selectors.tooltipTriggers),b.createTooltips(c),this.registerRule()},c.prototype.registerRule=function(){d.each(function(a,b){var c=$(b),d=c.find(f.selectors.emailAddress),e=c.find(f.selectors.emailAddressConfirmation);e.rules(f.rules.add,{equalTo:d,messages:{equalTo:e.data("validation-confirm")}}),$.extend($.validator.messages,{email:d.data("validation-customregex")})})},c}),define("c_019_29",["c_008"],function(a){"use strict";function b(a,b){this.settings=$.extend({},d,b),this._defaults=d,this.$el=a,this.init()}var c,d={selectors:{root:".c_019-29",tooltipTriggers:".has-tooltip",dealerETDDurationOption:".custom-radio input[type='radio']",selectedDuration:".custom-radio input[type=radio]:checked + label",selectedDurationHiddenField:"input[type=hidden].extended-test-drive-duration"},events:{change:"change",checked:":checked"},analytics:{componentId:"C_019-29",contentAction:"extendedTestDrive-duration:",locationInPage:"form:dealer location: extendedTestDrive"}};return b.prototype.init=function(){var b;if(c=$(this.settings.selectors.root),!c.length)return!1;b=c.find(this.settings.selectors.tooltipTriggers),a.createTooltips(b),$(this.settings.selectors.dealerETDDurationOption).is(this.settings.events.checked)&&this.populateDurationHiddenField(c.find(this.settings.selectors.selectedDuration).text()),c.find(this.settings.selectors.dealerETDDurationOption).off().on(this.settings.events.change,function(a){$("body").trigger("onExtendedDurationChange"),this.populateDurationHiddenField(c.find(this.settings.selectors.selectedDuration).text()),this.trackDurationSelection()}.bind(this))},b.prototype.trackDurationSelection=function(){var a=this.settings.analyticsManager.trackingVars.buttonNoCookie,b=this.settings.analyticsManager.getTrackingObjectProperties(a),d=c.find(this.settings.selectors.selectedDuration).text(),e={};e[b.componentId]=this.settings.analytics.componentId,e[b.contentAction]=this.settings.analytics.contentAction+d,e[b.locationInPage]=this.settings.analytics.locationInPage,this.settings.analyticsManager.track(a,e)},b.prototype.populateDurationHiddenField=function(a){c.find(this.settings.selectors.selectedDurationHiddenField).val(a)},b}),define("c_019_30",["underscore","handlebars","numberFormat","storageManager","remoteServices"],function(a,b,c,d,e){"use strict";function f(a,b){this.settings=$.extend({},u,b),this._defaults=u,this.$el=a,this.init()}var g,h,i,j,k,l,m,n,o,p,q,r,s,t,u={selectors:{root:".c_019-30",dealerDetailsTemplate:".dealer-details-data",dealerDetailsSection:".dealer-details-section",imageSection:".image-section",tooltipClick:".tooltip-label",tooltipCatalogue:".tooltip-catalogue",inventoryModal:".inventory-modal",img:"img",openModal:".inventory-modal.open",phoneNumber:".dealer-contact .phone"},data:{gtmEnabled:"gtmEnabled"},attr:{src:"src"},events:{heliosDealerUpdate:"helios.dealer.update",click:"click",dealerInteraction:"dealerInteraction"},analytics:{componentId:"C19.30_Vehicle_Dealer_Information_Panel",dealerAction:"call"},placeholderImage:"/../img/c_019-30/no-image-available.png"};return f.prototype.init=function(){return g=$(this.settings.selectors.root),t=g.find(this.settings.selectors.dealerDetailsSection),l=g.find(this.settings.selectors.dealerDetailsTemplate).html(),j=localStorage.getItem("additionalDealerData"),i=j?JSON.parse(j):"",window.cataloguejson?(m=window.cataloguejson.localisationData.customHeadings,n=i.allInPricing?window.cataloguejson.localisationData.disclaimerTooltipAlP:window.cataloguejson.localisationData.disclaimerTooltipTPL):window.heliosCatalogue?(m=window.heliosCatalogue.mainController.carListController.localisationDataModel.attributes.customHeadings,n=i.allInPricing?window.heliosCatalogue.mainController.carListController.localisationDataModel.attributes.disclaimerTooltipAlP:window.heliosCatalogue.mainController.carListController.localisationDataModel.attributes.disclaimerTooltipTPL):(m="",n=""),!!g.length&&(!!i&&(d.deleteItem("additionalDealerData"),i.totalPrice&&(i.totalPrice=this.formatCurrency(i.totalPrice)),i.enableInventoryHeading=!!m&&m.enableInventoryHeading,i.mainHeading=!!m&&this.parseTitle(m.mainHeading),i.subHeading=!!m&&this.parseTitle(m.subHeading),i.disclaimerText=n,void(i.dealerId?(o=e.getDealerByIdentifier(i.dealerId))&&(h=this,o.done(function(a){i.address=a.address,i.mapLink=a.geolocation&&a.geolocation.longitude&&a.geolocation.latitude?a.geolocation.longitude+","+a.geolocation.latitude:"",i.address&&(i.addressLineOne=i.address.addressLine1+(i.address.addressLine1?" ":""),i.address.addressLine2&&(i.addressLineOne=i.address.addressLine1+i.address.addressLine2),i.addressLineTwo=i.address.city+(i.address.city?", ":"")+i.address.stateCode+(i.address.stateCode?", ":"")+i.address.postalCode),h.renderTemplate()}).fail(function(a){h.renderTemplate()})):this.renderTemplate())))},f.prototype.renderTemplate=function(){k=b.compile(l);var a=k(i);t.html(a),this.bindEvents(),this.triggerPhoneNumberUpdate()},f.prototype.parseTitle=function(b){var c,d=/\%\w+([grade|model|version|year])\w+\%/g,e=b;return b&&(c=b.match(d)),c&&a.each(c,function(a,b){e=this.replaceParam(a,e)},this),e},f.prototype.replaceParam=function(b,c){var d,e=b.replace(/\%/g,"");return"grade"===e?d=i.modelGrade:"model"===e?d=i.modelName:"version"===e?d=i.modelVersion:"year"===e&&(d=i.modelYear),c.replace(b,a.isUndefined(d)?"":d)},f.prototype.formatCurrency=function(b){var d=parseFloat(b),e=new c({HELIOS:this.settings.HELIOS});return a.isFinite(d)?e.asCurrency(d):b},f.prototype.bindEvents=function(){p=g.find(this.settings.selectors.imageSection).find(this.settings.selectors.img),q=g.find(this.settings.selectors.tooltipClick),r=g.find(this.settings.selectors.tooltipCatalogue),s=$(this.settings.selectors.inventoryModal),q.on("click",function(a){a.stopPropagation(),$(this).addClass("show"),r.addClass("show")}),r.on("click",function(a){a.stopPropagation(),$(this).removeClass("show"),q.removeClass("show")}),s.on("click",function(a){r.removeClass("show"),q.removeClass("show")});var a=this;p.on("error",function(){var b=a.settings.HELIOS.config.common.scriptBaseUrl+a.settings.placeholderImage,c=$(this);c.attr(a.settings.attr.src,b),c.off("error")}),g.find(this.settings.selectors.phoneNumber).on("click",function(){var b={componentId:a.settings.analytics.componentId,dealerAddress:i.addressLineOne+i.addressLineTwo,dealerId:i.dealerId,dealerName:i.tradingName,dealerAction:a.settings.analytics.dealerAction};a.settings.analyticsManager.track(a.settings.events.dealerInteraction,b)})},f.prototype.triggerPhoneNumberUpdate=function(){g.find(this.settings.selectors.phoneNumber).data(this.settings.data.gtmEnabled)&&$(this.settings.selectors.openModal).trigger(this.settings.events.heliosDealerUpdate)},f}),define("c_019_31",[],function(){"use strict";function a(a){if(i=$.extend({},h,a),g=$(i.selectors.root),!g.length)return!1;b()}function b(){if(i.eventAggregator.on(i.events.dropdownModelChange,c,this),i.eventAggregator.on(i.events.dropdownServiceModelChange,c,this),i.eventAggregator.on(i.events.testDriveModelChange,d,this),$(i.selectors.selectDealerDropdown).on(i.events.change,e),$(i.selectors.scheduleDropdownSelect).on(i.events.change,f),$(i.selectors.rsbServiceModelDropdown).val()){c("",$(i.selectors.rsbServiceModelDropdown).parents(i.selectors.customSelectbox).find(i.selectors.spanSelectedValue).text())}}function c(a,b){$(i.selectors.root).find(i.selectors.inputModelName).val(b)}function d(a){$(i.selectors.root).find(i.selectors.inputModelName).val(a)}function e(){var a=i.analyticsManager.trackingVars.dealerInteraction,b=i.analyticsManager.getTrackingObjectProperties(a),c=$(this),d={};d[b.componentId]=i.analytics.componentId,d[b.dealerAction]=i.analytics.dealerAction,d[b.dealerId]=c.val(),d[b.dealerName]=c.find(i.selectors.selectedOption).text(),d[b.dealerAddress]="",i.analyticsManager.tag(a,d)}function f(){var a=i.analyticsManager.trackingVars.buttonNoCookie,b=i.analyticsManager.getTrackingObjectProperties(a),c=$(i.selectors.scheduleDropdownSelect).val(),d={};d[b.componentId]=i.analytics.componentId,d[b.contentAction]=i.analytics.contentActionSchedule,d[b.locationInPage]=i.analytics.locationInPageSchedule,d[b.buttonText]=c,i.analyticsManager.track(a,d)}var g,h={events:{dropdownModelChange:"changeModelSelect",dropdownServiceModelChange:"changeServiceModelSelect",change:"change",testDriveModelChange:"testDriveModelChange"},classes:{},selectors:{root:".c_019-31",inputModelName:".populate-model-name",selectDealerDropdown:".c_019-31 .dealerDropdown select",selectedOption:"option:selected",scheduleDropdownSelect:".c_019-31 .scheduleDropdown select",rsbServiceModelDropdown:".dropdowngroup .dropdown-group .custom-selectbox [data-model-dropdown='true']",customSelectbox:".custom-selectbox",spanSelectedValue:"span.selectedValue"},analytics:{componentId:"C19.31_Real_Time_Booking",dealerAction:"Select this dealer",contentActionSchedule:"select a schedule",locationInPageSchedule:"service booking form"}},i=null;return{init:a}}),define("c_019_32",["underscore","modal","c_019_25_ApplicationConstants"],function(a,b,c){"use strict";function d(a){if(o=$.extend({},n,a),j=$(o.selectors.root),!j.length)return!1;k=j.data(o.data.publishMode),e()}function e(){function a(a,c){var e;if(a.preventDefault(),j.find(o.selectors.radioContainerInput).is(o.events.disabled))return!1;
45e=new b({displayType:b.TYPE_RIGHTSLIDE,customClass:"home-test-drive-modal",customOverlayClass:"home-test-drive-overlay-modal",closeText:"close",touchMoveEnabled:!0,preventScrollTop:!0}),e.open(c),d(e)}function d(a){a.$root.on("modal.close",function(){a.remove()})}j.find(o.selectors.dealerLocationLink).on(o.events.click,function(b){a(b,o.selectors.dealerLocationModal)}),j.find(o.selectors.preferredLocationLink).on(o.events.click,function(b){a(b,o.selectors.preferredLocationModal)}),j.find(o.selectors.dealerLocationExtenedDriveLink).on(o.events.click,function(b){a(b,o.selectors.dealerExtendedDriveModal)}),o.eventAggregator.on("changeModelSelectHomeTestdrive",function(){j.find(o.selectors.radioContainerInput).removeAttr(o.attributes.disabled),o.eventAggregator.trigger("switchTestDrive",$(o.selectors.preferredLocationInput).is(o.events.checked),!0,$(o.selectors.dealerExtendedInput).is(o.events.checked)),j.find(o.selectors.radioContainerInput).off().on(o.events.change,function(a){f(),o.eventAggregator.trigger("switchTestDrive",$(o.selectors.preferredLocationInput).is(o.events.checked),!1,$(o.selectors.dealerExtendedInput).is(o.events.checked)),g($(a.target).is($(o.selectors.dealerExtendedInput,j))?!1:!0)})}),o.eventAggregator.on("preLaunchModelJourney",function(a){a?(o.eventAggregator.trigger("switchTestDrive",!1,!0,!1),g(!0),$(o.selectors.extendedTestDriveDuration).val(""),$(o.selectors.extendedTestDriveDurationOptions).prop("checked",!1)):(o.eventAggregator.trigger("switchTestDrive",$(o.selectors.preferredLocationInput).is(o.events.checked),!0,$(o.selectors.dealerExtendedInput).is(o.events.checked)),$(o.selectors.dealerExtendedInput).is(o.events.checked)&&g(!1))}),j.find(o.selectors.radioContainerInput).off().on(o.events.change,function(a){if($(o.selectors.preferredLocationInput).is(o.events.checked)&&HELIOS.components.c_019_32.pudofallbackCalenderEnabled){var b=HELIOS.components.c_019_32.pudoHelpText,c=$("<span />").addClass(o.classes.helpText).html(b);$(o.selectors.radioContainerParent).after(c)}else $(o.selectors.helperText).remove();f(),o.eventAggregator.trigger("switchTestDrive",$(o.selectors.preferredLocationInput).is(o.events.checked),!1,$(o.selectors.dealerExtendedInput).is(o.events.checked)),g($(a.target).is($(o.selectors.dealerExtendedInput,j))?!1:!0)}),o.eventAggregator.on("switchToDealerClick",function(){$(o.selectors.dealerLocationInput).prop(o.attributes.checked,!0).change(),o.eventAggregator.trigger(c.EVENTS.SWITCH_TO_DEALER_TEST_DRIVE)}),$(o.selectors.preferredLocationInput).is(o.events.checked)&&o.eventAggregator.trigger("changeModelSelectHomeTestdrive"),$(o.selectors.dealerExtendedInput).is(o.events.checked)&&(o.eventAggregator.trigger("changeModelSelectHomeTestdrive"),g(!1)),o.eventAggregator.on("changeExtendedTestdriveState",function(a){h(!a)}),o.eventAggregator.on("enableExtendedTestDrive",function(){h(!1),j.find(o.selectors.dealerExtendedInput).prop("checked",!0),g(!1)})}function f(){var a,b=o.analyticsManager.trackingVars.buttonNoCookie,c=o.analyticsManager.getTrackingObjectProperties(b),d={},e=i($(o.selectors.radioContainerInput+o.events.checked).val()),f=new Date;l=m,m=f.getTime(),q?(p=!1,a=m-l):(p=!0,q=!0),d[c.componentId]=o.analytics.componentId,d[c.contentAction]=e,d[c.locationInPage]=o.analytics.locationInPage,d[c.firstInteraction]=p,a&&(d[c.interactionTimestamp]=a),o.analyticsManager.track(b,d)}function g(a){k&&($(o.selectors.dealerExtendedTestdriveOptions).toggleClass(o.classes.hidden,a),j.parents(o.selectors.rtbComponent).toggleClass(o.classes.extendedTestdrive,!a))}function h(a){var b
46;$(o.selectors.dealerExtendedInput).is(o.events.checked)&&a&&(b=j.find(o.selectors.defaultTestdriveOption).val(),$("input[value="+b+"]").prop(o.attributes.checked,!0).change()),k&&$(o.selectors.dealerExtendedInput).parents(o.selectors.radioContainerElement).toggleClass(o.classes.hidden,a)}function i(a){switch(a){case o.testdriveType.home:a=o.analytics.testdriveType.preferred;break;case o.testdriveType.extended:a=o.analytics.testdriveType.extended;break;default:a=o.analytics.testdriveType.dealer}return a}var j,k,l,m,n={events:{click:"click",change:"change",checked:":checked",disabled:":disabled"},selectors:{root:".c_019-32",rtbComponent:".c_019-31",radioContainerParent:".radio-container-parent",radioContainerElement:".radio-container",hasTooltip:".has-tooltip",dealerLocationModal:"#c_019-32-dealer-location-modal",preferredLocationModal:"#c_019-32-preferred-location-modal",dealerExtendedDriveModal:"#c_019-32-dealer-location-extended-type-modal",dealerLocationLink:".dealer-location",preferredLocationLink:".preferred-location",dealerLocationExtenedDriveLink:".dealer-location-extended-type",vehicleModel:".c_020 .models.caradmindatadropdown .custom-selectbox select",radioContainerInput:".radio-container input[type='radio']",dealerLocationInput:"input[value='dealer'], input[value='dealerInStore']",preferredLocationInput:"input[value='home']",dealerExtendedInput:"input[value='extended']",dealerExtendedTestdriveOptions:".extended-drive-multiradio",defaultTestdriveOption:"input[type=radio][data-default-testdrive=true]",helperText:".help_text",extendedTestDriveDuration:".extended-test-drive-duration",extendedTestDriveDurationOptions:".custom-radio input[name='extendedTestDriveDuration']"},classes:{disabled:"disabled",highlightBorder:"highlight-border",hidden:"hidden",extendedTestdrive:"extended-testdrive",helpText:"help_text"},attributes:{checked:"checked",disabled:"disabled"},data:{testdriveType:"default-selected",defaultTestdrive:"default-testdrive",publishMode:"publish-mode"},testdriveType:{home:"home",dealer:"dealer",extended:"extended"},analytics:{componentId:"C19.32_Service_Type_Selector",contentActionSwitchToDealer:"switch to dealer location",locationInPage:"form:location selection",testdriveType:{dealer:"dealer location",preferred:"preferred location",extended:"dealer location: extendedTestDrive"}}},o=null,p=!1,q=!1;return{init:d}}),define("c_019_34",["underscore"],function(a){"use strict";function b(a){return D=$.extend({},C,a),B=$(D.selectors.root),!!B.length&&(!B.data(D.attributes.editMode)&&(h(),i(),f(!1),k(),A(),e(),z(),w(),"Infiniti"===D.HELIOS.config.brand&&c(),void d()))}function c(){var b=B.find(D.selectors.accordionHeader);a.each(b,function(a){var b=$(a).text().toLowerCase().replace(/(?:^|\s)\w/g,function(a){return a.toUpperCase()});$(a).text(b)})}function d(){var a=$(D.selectors.targetVehicleModelYear).not(":disabled").val();D.HELIOS=D.HELIOS||{},D.HELIOS.adobe=D.HELIOS.adobe||{},D.HELIOS.adobe.tagging=D.HELIOS.adobe.tagging||{};var b=D.HELIOS.adobe.tagging.vehicleYear;D.HELIOS.adobe.tagging.vehicleYear=a||b||void 0}function e(){B.removeClass(D.classes.pageSpinner)}function f(a){var b=D.HELIOS.config.common.mediaQuery,c=B.find(D.selectors.activeFormGroupTab).attr("href");D.window.matchMedia(b.is.mediumOrLarge).matches?(B.removeClass("sm"),a&&(B.find(D.selectors.formGroup).hide(),B.find(D.selectors.accordionBody).show(),B.find(c).show())):(B.addClass("sm"),a&&(B.find(D.selectors.formGroup).show(),B.find(D.selectors.accordionBody).hide(),B.find(c).find(D.selectors.accordionBody).show()))}
46function g(a){var b=$(a).offset().top,c=10,d=$(D.selectors.fixedNav);0!==d.length&&(c=d.outerHeight(!0)+c),a.hasClass(D.classes.rootClass)&&(c=10!==c?c-10:-10),$("html, body").animate({scrollTop:b-c},D.slideDuration)}function h(){var a=$(D.selectors.formGroup).last(),b=$(D.selectors.submitButton).clone(),c=$(D.selectors.submitFormDiv);b.prependTo(a.find(D.selectors.formNavigation)),c.remove()}function i(){var a=$(D.selectors.formBuilderHeader),b=$(D.selectors.formBuilderHeader).clone(),c=B.find(D.selectors.rightSection);b.prependTo(c),a.remove()}function j(){var b,c=document.forms;return a.each(c,function(a){0!==$(a).find(D.selectors.root).length&&(b=a)}),a.filter(b.elements,function(a){return a.tagName!==D.selectors.fieldset&&a.tagName!==D.selectors.button})}function k(){var b,c=$(D.selectors.formGroup);b=j(),a.each(c,function(a){E[$(a).attr("id")]||(E[$(a).attr("id")]={})}),a.each(b,function(a){$(a).closest(D.selectors.formGroup).attr("id")&&(E[$(a).closest(D.selectors.formGroup).attr("id")][$(a).attr("name")]=$(a).val())}),E.previousSection="",E.currentSection=""}function l(b){var c=j();return a.filter(c,function(a){return $(a).closest(D.selectors.formGroup).attr("id")===b})}function m(a){var a=a?a.DealerLocatorInstance:null,b=!1;return a&&a.mainController&&a.mainController._errorController&&(b=a.mainController._errorController),b}function n(b,c){var d,e,f,h,i=b.target?$(b.target).closest(D.selectors.formGroup):b,j=b.target?$(b.target).closest(D.selectors.form):b.closest(D.selectors.form),k=j.validate(),n=i.attr("id"),o=!0,p=[];return d=l(i.attr("id")),a.each(d,function(a){$(a).is(D.selectors.visible)?(k.element(a)?E[n][$(a).attr("name")]=$(a).val():p.push(a),o=k.element(a)&&o):(0!==$(a).closest(D.selectors.dealerLocator).length&&(k.element(a)?E[n][$(a).attr("name")]=$(a).val():(f=$(a).closest(D.selectors.dealerLocator).data(),h=m(f),"function"==typeof h._onDisplaySelectedDealerRequiredMessage&&(h._onDisplaySelectedDealerRequiredMessage(),o=k.element(a)&&o,p.push(a)))),0!==$(a).closest(D.selectors.addressLookUp).length&&(k.element(a)?E[n][$(a).attr("name")]=$(a).val():($(a).closest(D.selectors.addressLookUp).find(D.selectors.manualAddressLink).trigger("click"),o=k.element(a)&&o,p.push(a))))}),o||(e=$(a.first(p)).closest(D.selectors.fieldFormGroup),g(e)),o}function o(a){var b,c,d,e=$(a.target).closest(D.selectors.formGroup);(b=n(a))&&(E.previousSection=e.attr("id"),B.hasClass("sm")?(c=$(D.selectors.accordionBody).not(e.next(D.selectors.formGroup).find(D.selectors.accordionBody)),d=e.next(D.selectors.formGroup).find(D.selectors.accordionBody)):(c=$(D.selectors.formGroup).not(e.next(D.selectors.formGroup)),d=e.next(D.selectors.formGroup)),c.slideUp(D.slideDuration,function(){d.is(":visible")||d.slideDown(D.slideDuration,function(){e.addClass(D.classes.completed),e.find(D.selectors.accordionBody).addClass(D.classes.completed),e.removeClass(D.classes.updated),E.currentSection=e.next(D.selectors.formGroup).attr("id"),$(D.selectors.formGroupTabs+'[href="#'+e.attr("id")+'"]').addClass(D.classes.completed),$(D.selectors.formGroupTabs).removeClass(D.classes.active),$(D.selectors.formGroupTabs+'[href="#'+e.next(D.selectors.formGroup).attr("id")+'"]').addClass(D.classes.active).addClass(D.classes.enabled),$(D.selectors.accordionHeader+'[data-formgroup="'+e.attr("id")+'"]').addClass(D.classes.completed),$(D.selectors.accordionHeader).removeClass(D.classes.active),$(D.selectors.accordionHeader+'[data-formgroup="'+e.next(D.selectors.formGroup).attr("id")+'"]').addClass(D.classes.active).addClass(D.classes.enabled),g(B.hasClass("sm")?d.closest(D.selectors.formGroup):B)})}))}function p(a){var b,c,d=$(a.target).closest(D.selectors.formGroup),e=d.prev(D.selectors.formGroup),f=!0;d.hasClass(D.classes.completed)&&(f=n(a)),f&&(E.previousSection=d.attr("id"),E.currentSection=e.attr("id"),B.hasClass("sm")?(b=$(D.selectors.accordionBody).not($("#"+E.currentSection).find(D.selectors.accordionBody)),c=$("#"+E.currentSection).find(D.selectors.accordionBody)):(b=$(D.selectors.formGroup).not($("#"+E.currentSection)),c=$("#"+E.currentSection)),b.slideUp(D.slideDuration,function(){c.is(":visible")||c.slideDown(D.slideDuration,function(){d.removeClass(D.classes.updated),$(D.selectors.formGroupTabs).removeClass(D.classes.active),$(D.selectors.formGroupTabs+'[href="#'+c.closest(D.selectors.formGroup).attr("id")+'"]').addClass(D.classes.active),$(D.selectors.accordionHeader).removeClass(D.classes.active),c.closest(D.selectors.formGroup).find(D.selectors.accordionHeader).addClass(D.classes.active),g(B.hasClass("sm")?c.closest(D.selectors.formGroup):B)})}))}function q(a){var b=!0,c=$(D.selectors.formGroup+":visible"),d=$(a.target),e=$(d.attr("href"));a.preventDefault(),(d.hasClass(D.classes.enabled)||!d.hasClass(D.classes.active)&&d.hasClass(D.classes.completed))&&(c.hasClass(D.classes.completed)&&(b=n(c)),b&&(E.previousSection=c.attr("id"),$(D.selectors.formGroup).not(e).slideUp(D.slideDuration,function(){e.is(":visible")||e.slideDown(D.slideDuration,function(){c.removeClass(D.classes.updated),E.currentSection=e.attr("id"),$(D.selectors.formGroupTabs).removeClass(D.classes.active),d.addClass(D.classes.active),g(B)})})))}function r(a){var b=$(a.target).closest(D.selectors.formGroup),c=!0;(c=n(a))&&b.addClass(D.classes.updated)}function s(b){var c,d=$(b.target).closest(D.selectors.formGroup),e=d.attr("id");a.each(E[e],function(a,b){c=d.find('[name="'+b+'"]'),0!==c.closest(D.selectors.dealerLocator).length&&(c.closest(D.selectors.dealerLocator).find(D.selectors.selectedDealer).show(),c.closest(D.selectors.dealerLocator).find(D.selectors.dealersList).hide()),c.val(a).trigger("change").trigger("blur")}),d.addClass(D.classes.updated)}function t(a){var b=$(a.target),c=b.data(D.attributes.formGroup),d=$(D.selectors.accordionBody+":visible"),e=$(a.target),f=$("#"+c),h=!0;(e.hasClass(D.classes.enabled)||!e.hasClass(D.classes.active)&&e.hasClass(D.classes.completed))&&(d.closest(D.selectors.formGroup).hasClass(D.classes.completed)&&(h=n(d)),h&&(E.previousSection=d.attr("id"),$(D.selectors.formGroup).find(D.selectors.accordionBody).not(f.find(D.selectors.accordionBody)).slideUp(D.slideDuration,function(){f.find(D.selectors.accordionBody).is(":visible")||f.find(D.selectors.accordionBody).slideDown(D.slideDuration,function(){E.currentSection=f.attr("id"),$(D.selectors.formGroupTabs).removeClass(D.classes.active),$(D.selectors.formGroupTabs+'[href="#'+c+'"]').addClass(D.classes.active),$(D.selectors.accordionHeader).removeClass(D.classes.active),e.addClass(D.classes.active),g(f)})})))}function u(a){var b=$(a.target),c=$(D.selectors.accordionBody+":visible");c.find(b).length&&n(a)&&(d(),B.addClass(D.classes.formLoading))}function v(a,b){a?b.removeClass(D.classes.disabled).removeAttr(D.attributes.disabled):b.addClass(D.classes.disabled).attr(D.attributes.disabled,!0)}function w(){var b=B.find(D.selectors.formGroup);v(!1,b.last().find(D.selectors.submitFormButton)),a.each(b,function(a){v($(a).hasClass(D.selectors.completed),$(a).find(D.selectors.continueButton))})}function x(a){var b=!1;if($(a).is("select")){var c=$(a).find("option").first().text();b=$(a).siblings(".selectedValue").text()!=c}else b=""!=$(a).val()||"false"==$(a).attr("aria-invalid");return b}function y(a,b){var c=[],d=[],e=a.filter(function(a,b){var c=$(b).find("label").attr("for"),d=$(b).find("#"+c+":not(["+D.attributes.disabled+"])");if($(d).attr("aria-required")&&$(d).is(":visible"))return b});$(e).each(function(a,b){var d=$(b).find("label").attr("for"),e=$(b).find("#"+d+":not(["+D.attributes.disabled+"])");c.push(x(e))}),c.length==e.length&&(d=c.filter(function(a,b){return 1==a})),c.length==d.length?b.removeClass(D.classes.disabled).removeAttr(D.attributes.disabled):b.addClass(D.classes.disabled).attr(D.attributes.disabled,!0)}function z(){var a=$(document).find(D.selectors.formGroup),b=a.last();a.each(function(a,c){var d=$(c).find(D.selectors.fieldFormGroup+".required"),e=$(c).find(D.selectors.continueButton);$(c).attr("id")==b.attr("id")&&(e=b.find(D.selectors.submitFormButton)),d.each(function(a,b){var c=$(b).find("label").attr("for"),f=$(b).find("#"+c),g=$(f).is("select");f.length&&(g?$(f).on("change",function(){y(d,e)}):$(f).keyup(function(){y(d,e)}))})})}function A(){B.find(D.selectors.continueButton).on("click",o),B.find(D.selectors.backButton).on("click",p),B.find(D.selectors.formGroupTabs).on("click",q),B.find(D.selectors.updateButton).on("click",r),B.find(D.selectors.cancelButton).on("click",
46s),B.find(D.selectors.accordionHeader).on("click",t),B.find(D.selectors.submitFormButton).on("click",u),B.on("change",D.selectors.targetVehicleModelYear,d),B.on("change",D.selectors.targetVehicleType,d),B.on("change",D.selectors.targetVehicleModel,d),$(D.window).on("resize",D.selectors.SearchInput,a.debounce(f,D.debounceDuration))}var B,C={selectors:{root:".c_019-34",form:"form",fieldset:"FIELDSET",button:"BUTTON",formGroup:".pre-approval-form-group",fieldFormGroup:".form-group",continueButton:".next",visible:":visible",backButton:".back",targetVehicleModelYear:"[name='targetVehicleModelYear']",targetVehicleType:"[name='targetVehicleType']",targetVehicleModel:"[name='targetVehicleModel']",submitFormDiv:".submit-form",submitButton:".submit-form button",formNavigation:".form-navigation",formGroupTabs:".form-group-tabs a",updateButton:".update",cancelButton:".cancel",accordionHeader:".accordion-header",accordionBody:".accordion-body",activeFormGroupTab:".form-group-tabs .active",dealerLocator:".c_019-25",addressLookUp:".c_019-22",manualAddressLink:".manual-address-link",formBuilderHeader:".c_019 .header",rightSection:".col-8",submitFormButton:".submit-form-button",fixedNav:".docked-nav-outer",selectedDealer:".selected-dealer",dealersList:".dealer-list"},attributes:{id:"id",name:"name",formGroup:"formgroup",editMode:"editmode",disabled:"disabled"},events:{},classes:{completed:"completed",active:"active",enabled:"enabled",updated:"updated",formLoading:"form-loading",pageSpinner:"page-spinner",rootClass:"c_019-34",required:"required",complete:"complete",disabled:"disabled"},debounceDuration:300,slideDuration:800},D=null,E={};return{init:b}}),define("c_019_36",["underscore"],function(a){"use strict";function b(b){if(m=$.extend({},l,b),k=$(m.selectors.root),!k.length)return!1;c();var e,g,h=$(m.selectors.root),i=h.find("script[data-filter-by-model-mapping]"),n=$(m.selectors.otherServiceTextareaFormGroup);i.length&&(e=JSON.parse(a.unescape(i.html()))),$(m.selectors.rsbServiceModelDropdown).change(function(){g=$(m.selectors.rsbServiceModelDropdown).val(),a.isUndefined(g)||$(m.selectors.rsbServiceModelDropdown).change(j(e,g))}.bind(this)),$(m.selectors.groupCheckbox).change(function(){$(m.selectors.selectedCheckbox).length>0&&!$(m.selectors.root).hasClass(m.classes.complete)&&($(m.selectors.root).removeClass(m.classes.error),$(m.selectors.root).addClass(m.classes.complete)),0!=$(m.selectors.selectedCheckbox).length||$(m.selectors.root).hasClass(m.classes.error)||($(m.selectors.root).removeClass(m.classes.complete),$(m.selectors.mandatoryValidationErrorDiv).length>0&&$(m.selectors.root).addClass(m.classes.error))}.bind(this)),d(),f(),n.hasClass(m.classes.required)&&$(m.selectors.otherServicesInfo).on(m.events.input,function(a){$(m.selectors.otherServicesInfo).valid()}.bind(this))}function c(){$(m.selectors.periodicServiceCheckbox).on(m.events.click,h),$(m.selectors.enableCommentsField).on(m.events.click,i)}function d(){var b=window.location.search.substring(1);if(!a.isUndefined(b)&&b.length){var c=JSON.parse('{"'+b.replace(/&/g,'","').replace(/=/g,'":"')+'"}',function(a,b){return""===a?b:decodeURIComponent(b)}),d=c.osrid,h=c._hls_error;"True"===h&&f(),e(d,h);var i=document.querySelector(m.selectors.otherServicesInfo);if(!a.isUndefined(i)&&null!=i)var j=i.getAttribute(m.attributes.dataRequestVariable);if(c.hasOwnProperty(j)&&c[j].length){g(c[j],h)}}}function e(a,b){if(a&&a.length){var c=document.getElementById(a);if(void 0!==c&&null!=c){c.checked=!0,"True"!==b&&document.querySelector(m.selectors.root).classList.add(m.classes.complete);"true"===c.getAttribute(m.attributes.dataEnableCommentsfield)&&document.querySelector(m.selectors.otherServiceTextarea).classList.remove(m.classes.hidden)}}}function f(){function b(a,b){a=a.replace(/[\[\]]/g,"\\$&");var c=new RegExp("[?&]"+a+"(=([^&#]*)|&|#|$)"),d=c.exec(b);return d?d[2]?decodeURIComponent(d[2].replace(/\+/g," ")):"":null}var c,d,f=document.referrer,h=document.URL,i=b("_hls_error",h);if("True"===i){var j=document.querySelector(m.selectors.otherServicesInfo);if(!a.isUndefined(j)&&null!=j)var k=j.getAttribute(m.attributes.dataRequestVariable);f.length&&(c=b(k,f),d=b("osrid",f)),!f.length||a.isUndefined(c)&&a.isUndefined(d)||(e(d,i),g(c,i))}}function g(a,b){if(a&&a.length){var c=document.querySelector(m.selectors.otherServicesInfo);void 0!==c&&null!=c&&(c.value=a,"True"!==b&&document.querySelector(m.selectors.otherServiceTextareaFormGroup).classList.add(m.classes.complete))}}function h(){var a=$(m.selectors.periodicServiceDropdown);$(this).is(":checked")?a.removeClass(m.classes.hidden).find("select").prop(m.attributes.disabled,!1):a.addClass(m.classes.hidden).find("select").prop(m.attributes.disabled,!0)}function i(){var a=$(m.selectors.otherServiceTextarea);$(this).is(":checked")?a.removeClass(m.classes.hidden).find("textarea").prop(m.attributes.disabled,!1):$(m.selectors.enableCommentsField+m.events.checked).length||a.addClass(m.classes.hidden).find("textarea").prop(m.attributes.disabled,!0)}function j(b,c){var e,f=$(m.selectors.periodicServiceDropdown),g=$(m.selectors.periodicSeviceContainer),h=$(m.selectors.periodicServiceSelection),i=$(m.selectors.recallSeviceContainer),j=$(m.selectors.otherServicesContainer),k=$(m.selectors.otherServiceTextarea),l=$(m.selectors.otherServiceTextareaFormGroup),n=$(m.selectors.otherServicesInfo),o=$(m.selectors.selectedCheckbox),p=$(m.selectors.root),q=$(m.serviceTypes.service1).selector,r=$(m.serviceTypes.service2).selector,s=$(m.serviceTypes.service3).selector;if(o.each(function(a,b){b.checked=!1}
46),p.removeClass(m.classes.hidden),(p.hasClass(m.classes.complete)||p.hasClass(m.classes.error))&&(p.removeClass(m.classes.complete),p.removeClass(m.classes.error)),h[0].selectedIndex=0,$(m.selectors.periodicServiceSelectedValue)[0].innerHTML=h[0].options[0].text,n.val(""),k.addClass(m.classes.hidden),l.removeClass(m.classes.error).removeClass(m.classes.complete),f.addClass(m.classes.hidden),g.removeClass(m.classes.hidden),i.removeClass(m.classes.hidden),j.removeClass(m.classes.hidden),a.isUndefined(b)||(e=b[c]),a.isUndefined(e)||3===e.length&&p.addClass(m.classes.hidden),e)for(var t=0;t<e.length;t++)e[t]===q?g.addClass(m.classes.hidden):e[t]===r?i.addClass(m.classes.hidden):e[t]===s&&j.addClass(m.classes.hidden);else d()}var k,l={selectors:{root:".c_019-36",groupCheckbox:".c_019-36 .checkbox-group",rsbServiceModelDropdown:".dropdowngroup .dropdown-group .custom-selectbox [data-model-dropdown='true']",periodicServiceCheckbox:".c_019-36 .periodic-service-check",periodicServiceDropdown:".c_019-36 .periodic-service-dropdown",periodicServiceSelection:".c_019-36 .periodic-service",periodicServiceSelectedValue:".c_019-36 .periodic-service-dropdown .selectedValue",recallSeviceContainer:".c_019-36 .recall-container",otherServiceCheck:".checkbox .other-services",otherServicesContainer:".c_019-36 .other-services-container",otherServiceTextarea:".other-service-requirement",otherServiceTextareaFormGroup:".other-service-requirement .commentsField .form-group",selectedCheckbox:".c_019-36 input:checkbox:checked",otherServicesInfo:".c_019-36 + .other-service-requirement .others",mandatoryValidationErrorDiv:".c_019-36 .error-message",enableCommentsField:".other-services-container .checkbox input[data-enable-commentsfield=true]"},events:{click:"click",input:"input",checked:":checked"},classes:{hidden:"hidden",complete:"complete",error:"error",required:"required"},attributes:{disabled:"disabled",dataRequestVariable:"data-request-variable",dataEnableCommentsfield:"data-enable-commentsfield"},serviceTypes:{service1:"serviceType_1",service2:"serviceType_2",service3:"serviceType_3"}},m=null;return{init:b,_bindEvents:c}}),define("c_019_37",["underscore","remoteServices"],function(a,b){"use strict";function c(a){if(A=$.extend({},z,a),t=$(A.selectors.root),h(),o(),!t.length)return!1;d()}function d(){A.eventAggregator.on(A.events.change,e,this),t.find(A.selectors.toolTip).on(A.events.click,g),$(A.selectors.accordionDetails).scroll(function(){($(A.selectors.serviceDetails).length?$(A.selectors.serviceDetails).outerHeight():0)+($(A.selectors.legalDisclaimer).length?$(A.selectors.legalDisclaimer).outerHeight():0)-$(A.selectors.accordionDetails).height()<$(this).scrollTop()&&(r(),y=!0)})}function e(a){D=[],$(a.currentTarget).valid(),$(a.currentTarget).parents().closest("["+A.selectors.dataResponsiveChild+"]").length?$(a.currentTarget).parents().closest("["+A.selectors.dataResponsiveChild+"]").hasClass(A.classes.hide)||f():f(),i()}function f(){for(var a=0;a<B.length;a++)if(B[a]===A.classes.serviceDescription){var b=$(A.selectors.selectedServiceDesc).val(),c=$("[name="+B[a]+"]").attr("name");b&&D.push({formFieldName:c,formFieldValue:b})}else if($("[name="+B[a]+"]").closest(A.selectors.formGroup).hasClass(A.classes.complete)){var b=$("[name="+B[a]+"]").val(),c=$("[name="+B[a]+"]").attr("name");D.push({formFieldName:c,formFieldValue:b})}}function g(){var a=$(this);$(A.selectors.toolTipPanel).text(w),setTimeout(function(){a.hasClass(A.classes.tooltipActive)&&s()},500)}function h(){if($(A.selectors.root).length){var b=$(A.selectors.root).find("script[data-content]");if(b)try{var c=JSON.parse(a.unescape(b.html()));u=c.formLabels,v=c.additionalDisclaimers,C=c.priceConfigurations.formFields,E=c.serviceConfigurations.serviceCategory,C.forEach(function(a){B.push(a.formFieldName)}),B=a.uniq(B)}catch(d){return}}}function i(){var a={},b=/\{.*\}/,c=!1;B.length===D.length&&(C.forEach(function(d){for(var e=0;e<D.length;e++)if("serviceDescription"==D[e].formFieldName&&(x=D[e].formFieldValue),D[e].formFieldName===d.formFieldName)if(d.patternValue){var f=d.patternValue.split(" "),g=D[e].formFieldValue.split(" ");if(f.length===g.length){for(var e=0;e<f.length;e++)if(b.test(f[e]))return a[d.serviceRecFieldName]=g[e].replace(/[.,\s]/g,""),!0}else c=!0}else a[d.serviceRecFieldName]=D[e].formFieldValue}),c?l(a.modelName,a.year,a.versionKey):(j(),n(a)))}function j(){$(A.selectors.priceValue).addClass(A.classes.loading),$(A.selectors.contentWrapper).removeClass(A.classes.active)}function k(a){t.find(A.selectors.toolTip).removeClass(A.classes.hidden),$(A.selectors.toolTipPanel).text("");var b=$(A.selectors.staticDisclaimer).text();w=a.prices.disclaimer&&b?a.prices.disclaimer+b:!a.prices.disclaimer&&b?b:a.prices.disclaimer&&!b?a.prices.disclaimer:"",m(a),$(A.selectors.priceValue).removeClass(A.classes.loading),$(A.selectors.contentWrapper).addClass(A.classes.active),$(A.selectors.errMessage).addClass(A.classes.hidden),$(A.selectors.totalPriceValue).text(a.prices.currencyISOCode+a.prices.totalPrice),$(A.selectors.totalPriceValue).removeClass(A.classes.hidden),$(A.selectors.priceTooltip).attr("tabindex","0"),$(A.selectors.serviceTotalPrice).val(a.prices.totalPrice),w||t.find(A.selectors.toolTip).addClass(A.classes.hidden)}function l(a,b,c){y=!1,p(a,b,c),$(A.selectors.priceValue).removeClass(A.classes.loading),$(A.selectors.contentWrapper).removeClass(A.classes.active),$(A.selectors.errMessage).removeClass(A.classes.hidden),$(A.selectors.totalPriceValue).addClass(A.classes.hidden),$(A.selectors.priceValue).removeClass(A.classes.active),$(A.selectors.contentWrapper).find(A.selectors.accordionTitle).removeClass(A.classes.active),$(A.selectors.accordion).css({display:"none"}),$(A.selectors.priceTooltip).attr("tabindex","-1"),$(A.selectors.serviceTotalPrice).val("")}function m(b){$(A.selectors.serviceDetails).length&&$(A.selectors.serviceDetails).empty(),b.categories.length>0&&E.length>
460&&b.categories.forEach(function(b){var c=a.findIndex(E,function(a){return a.serviceType===b.code});if(c>=0){var d="<span>"+E[c].serviceLabel+"</span>";if(E[c].serviceDescription){var e="<p class=list-title>"+E[c].serviceDescription+"</p>";$(A.selectors.serviceDetails).length&&$(A.selectors.serviceDetails).append("<div class=section-heading id="+b.code+">"+d+e+"</div>")}else $(A.selectors.serviceDetails).length&&$(A.selectors.serviceDetails).append("<div class=section-heading id="+b.code+">"+d+"</div>");b.subCategories[0].services.forEach(function(a){$("#"+b.code).append("<li class=list-desc>"+a.name+"</li>")})}}),v&&v.disclaimers&&($(A.selectors.disclaimerList).length&&$(A.selectors.disclaimerList).remove(),$(A.selectors.disclaimer).length&&v.disclaimers.forEach(function(a){$(A.selectors.disclaimer).append("<li>"+a.disclaimer+"</li>")}))}function n(a){b.serviceRecommendations(a).done(function(b){y=!1,k(b),p(a.modelName,a.year,a.versionKey,b.prices.currencyISOCode+b.prices.totalPrice)}).fail(function(b){l(a.modelName,a.year,a.versionKey)})}function o(){$(A.selectors.priceValue).on(A.events.click+" "+A.events.keypress,function(a){var b=$(this).closest(A.selectors.accordionCard).find(A.selectors.accordionPanel);$(this).closest(A.selectors.contentWrapper).find(A.selectors.accordionPanel).not(b).slideUp(),$(this).hasClass(A.classes.active)?($(this).closest(A.selectors.contentWrapper).find(A.selectors.accordionTitle).removeClass(A.classes.active),$(this).removeClass(A.classes.active)):($(this).closest(A.selectors.contentWrapper).find(A.selectors.accordionTitle).addClass(A.classes.active),$(this).addClass(A.classes.active),q()),b.stop(!1,!0).slideToggle(),a.preventDefault()})}function p(a,b,c,d){var e=A.analyticsManager.trackingVars.buttonNoCookie,f=A.analyticsManager.getTrackingObjectProperties(e),g={};g[f.contentAction]=c+"|"+x,g[f.componentId]=A.analytics.componentId,g[f.locationInPage]=A.analytics.locationInPage,g[f.servicePrice]=d||A.analytics.noPrice,g[f.vehicleModel]=a,g[f.vehicleYear]=b,A.analyticsManager.track(e,g)}function q(){var a=A.analyticsManager.trackingVars.accordionExpansion,b=A.analyticsManager.getTrackingObjectProperties(a),c={};c[b.componentId]=A.analytics.componentId,c[b.accordionText]=A.analytics.accordionText,c[b.accordionType]=A.analytics.locationInPage,A.analyticsManager.track(a,c)}function r(){var a=A.analyticsManager.trackingVars.buttonNoCookie,b=A.analyticsManager.getTrackingObjectProperties(a),c={};c[b.componentId]=A.analytics.componentId,c[b.locationInPage]=A.analytics.locationInPage,c[b.contentAction]=A.analytics.accordionScrolledBottom,y||A.analyticsManager.track(a,c)}function s(){var a=A.analyticsManager.trackingVars.tooltipDisplay,b=A.analyticsManager.getTrackingObjectProperties(a),c={};c[b.componentId]=A.analytics.tooltipComponentId,c[b.tooltipTitle]=A.analytics.tooltipTitle,A.analyticsManager.track(a,c)}var t,u,v,w,x,y,z={events:{click:"click",input:"input",change:"change",keypress:"keypress"},classes:{hidden:"hidden",active:"active",loading:"loading",serviceDescription:"serviceDescription",complete:"complete",accordion:"accordion",disclaimer:"disclaimer",accordionDetails:"accordion-details",serviceDetails:"service-details",tooltipActive:"tooltip-active",hide:"hide"},selectors:{root:".c_019-37",serviceprice:".serviceprice",contentWrapper:".c_019-37 .content-wrapper",priceValue:".c_019-37 .price-value",errMessage:".c_019-37 .error-message",totalPriceValue:".c_019-37 .total-price-value",selectedServiceDesc:".responsive-element-fieldset .form-group.required.complete select:not(:disabled)",formGroup:".form-group",toolTipPanel:".qtip-content [data-tooltip-id=tooltip_serviceprice] .price-disclaimer",toolTip:".has-tooltip",staticDisclaimer:".c_019-37 .static-disclaimer",accordionCard:".accordion-card",accordionPanel:".accordion-panel",accordionTitle:".accordion-title",accordion:"#accordion",accordionDetails:"#accordion-details",serviceDetails:".service-details",disclaimer:"#disclaimer",disclaimerList:"#disclaimer li",priceTooltip:".c_019-37 .price-label .has-tooltip",legalDisclaimer:".legals",serviceTotalPriceLabel:".c_019-37 .accordion-card .price-label .label",serviceTotalPrice:".service-total-price",dataResponsiveChild:"data-responsive-child"},analytics:{componentId:"c_019-37_service_pricing",tooltipComponentId:"C8_Tooltip",tooltipTitle:"service price disclaimer",locationInPage:"service price",noPrice:"no price",accordionText:"content:expand",accordionScrolledBottom:"content:scroll bottom"}},A=null,B=[],C=[],D=[],E=[];return{init:c}}),define("c_019_38",["underscore","urlParameterDecoder","remoteServices","storageManager"],function(a,b,c,d){"use strict";function e(a){if(D=$.extend({},B,a),y=$(D.selectors.root),!y.length)return!1;d.init(),b.init(),o(),i(),h(),w(),f()}function f(){$(D.selectors.findVehicleCta).on(D.events.click,function(a){$(D.selectors.vehicleNumberPlate).valid(),$(D.selectors.findVehicleCta).attr(D.attributes.data.click,!0),g()}),$(D.selectors.changePlateNumber).on(D.events.click,function(a){s(),m(
46),$(D.selectors.findVehicleCta).attr(D.attributes.data.click,!1),q(D.analytics.contentActionType.edit)}),$(D.selectors.vehicleNumberPlate).on(D.events.change,function(a){E[D.sessionStorage.keys.vehicleRegistrationNumber]=$(D.selectors.vehicleNumberPlate).val(),E.responseFieldName&&E.responseFieldName[D.sessionStorage.keys.vehicleRegistrationNumber]&&delete E.responseFieldName[D.sessionStorage.keys.vehicleRegistrationNumber],E.responseFieldName&&!Object.keys(E.responseFieldName).length&&delete E.responseFieldName}),$(D.selectors.modelSelector+", "+D.selectors.yearSelector).on(D.events.change,function(a){var b=!!E.responseFieldName;a.target.name==D.attributes.name.model?(E[D.sessionStorage.keys.modelName]=a.target.nextElementSibling.innerText,E[D.sessionStorage.keys.modelCode]=a.target.value,b&&E.responseFieldName[D.sessionStorage.keys.modelName]&&(delete E.responseFieldName[D.sessionStorage.keys.modelName],delete E.responseFieldName[D.sessionStorage.keys.modelCode])):(E[D.sessionStorage.keys.modelYear]=a.target.value,b&&E.responseFieldName[D.sessionStorage.keys.modelYear]&&delete E.responseFieldName[D.sessionStorage.keys.modelYear]),E.responseFieldName&&!Object.keys(E.responseFieldName).length&&delete E.responseFieldName}),$(D.selectors.formSubmitButton).on(D.events.click,function(a){"false"==$(D.selectors.findVehicleCta).attr(D.attributes.data.click)&&1==E.isSearch?q(D.analytics.contentActionType.ctaNotClicked):v()})}function g(){if($(D.selectors.inputFieldWrapper).hasClass(D.classes.complete)){j();u({vehicleRegistrationNumber:$(D.selectors.vehicleNumberPlate).val()})}else $(D.selectors.inputFieldWrapper).hasClass(D.classes.error)&&$(D.selectors.vehicleNumberPlate).val().length&&q(D.analytics.contentActionType.invalid)}function h(){var b=$(D.selectors.root).find("script[data-content]");if(b)try{var c=JSON.parse(a.unescape(b.html()));C=c.numberPlateConfigurations.fields}catch(d){return}}function i(){$(D.selectors.findVehicleCta).length&&$(D.selectors.findVehicleCta).css({"min-width":$(D.selectors.findVehicleCta).outerWidth()})}function j(){$(D.selectors.defaultCta).length&&$(D.selectors.loadingCta).length&&r()}function k(a){404===a?(n(),j(),q(D.analytics.contentActionType.notfound)):(l(),j(),q(D.analytics.contentActionType.serverError))}function l(){var a=[D.classes.noResultsError,D.classes.findVehicleNotClicked];E.isError=!0,E.is404Error=!1,t($(D.selectors.findCtaWrapper),a),$(D.selectors.modelYearDropdown).hasClass(D.classes.hidden)&&$(D.selectors.modelYearDropdown).toggleClass(D.classes.hidden),$(D.selectors.modelYearDropdown).find($(D.selectors.formGroup)).removeClass(D.classes.error),$(D.selectors.findCtaWrapper).addClass(D.classes.serverError)}function m(){$(D.selectors.modelSelector).prop("selectedIndex",0).trigger(D.events.change,!0),$(D.selectors.yearSelector).prop("selectedIndex",0).trigger(D.events.change)}function n(){var a=[D.classes.serverError,D.classes.findVehicleNotClicked];E.is404Error=!0,E.isError=!1,t($(D.selectors.findCtaWrapper),a),$(D.selectors.modelYearDropdown).hasClass(D.classes.hidden)&&$(D.selectors.modelYearDropdown).toggleClass(D.classes.hidden),$(D.selectors.modelYearDropdown).find($(D.selectors.formGroup)).removeClass(D.classes.error),$(D.selectors.findCtaWrapper).addClass(D.classes.noResultsError)}function o(){var a=b.getUrlParams(),c=D.attributes.data.dataRequestVariable,d=$(D.selectors.vehicleNumberPlate).attr(c)
47;if("search"in a&&"false"===a.search&&($(D.selectors.findCtaWrapper).addClass(D.classes.hidden),E.isSearch=!1),$(D.selectors.modelYearDropdown).length)var e=$(D.selectors.modelYearDropdown).find("select["+c+"]").get(0).getAttribute(c);e in a&&$(D.selectors.modelYearDropdown).hasClass(D.classes.hidden)&&$(D.selectors.modelYearDropdown).toggleClass(D.classes.hidden),d in a&&($(D.selectors.vehicleNumberPlate).val(a[d]),E[D.sessionStorage.keys.vehicleRegistrationNumber]=a[d])}function p(b,c){var d,e=b?b.vehicle:"",f={};E.isError=!1,E.is404Error=!1,document.getElementById(D.classes.summaryDetails).innerHTML="",C.forEach(function(b){var g=b.fieldLabel,h=A&&c?z.numberPlate.responseFieldName[b.responseFieldName]:e[b.responseFieldName];if(h){var i='<li> <span class="label">'+g+'</span> <span class="value">'+h+"</span></li>",j=b.responseFieldName,k=b.formFieldName;if(document.getElementById(D.classes.summaryDetails).innerHTML+=i,j===D.sessionStorage.keys.modelName){var l,m,n=[];$(D.selectors.modelSelectBox+" option").each(function(a,b){n[a]=$(b).text().split(" ").slice(1).join(" ")}),n.shift(),l=a.findIndex(n,function(a){return a.toLowerCase()===h.toLowerCase()}),m=l+1,d=$(D.selectors.modelSelectBox+" select option:eq("+m+")").val(),$("[name="+k+"]").val(d).trigger(D.events.change,!0),f[j]=h,f[D.sessionStorage.keys.modelCode]=d,E.modelCode&&delete E.modelCode}else $("[name="+k+"]").val(h).trigger(D.events.change),f[j]=h}E[j]&&delete E[j]}),E[D.sessionStorage.keys.responseFieldName]=f,$(D.selectors.formGroupContainer).toggleClass(D.classes.hidden),$(D.selectors.modelYearDropdown).hasClass(D.classes.hidden)||$(D.selectors.modelYearDropdown).toggleClass(D.classes.hidden),$(D.selectors.vehicleSummary).toggleClass(D.classes.hidden),r(c),q(D.analytics.contentActionType.success)}function q(a){var b=D.analyticsManager.trackingVars.buttonNoCookie,c=D.analyticsManager.getTrackingObjectProperties(b),d={};d[c.componentId]=D.analytics.componentId,d[c.contentAction]=a,d[c.locationInPage]=D.analytics.locationInPage,D.analyticsManager.track(b,d)}function r(a){a?($(D.selectors.defaultCta).toggleClass(D.classes.hidden,!a),$(D.selectors.loadingCta).toggleClass(D.classes.hidden,a),$(D.selectors.findVehicleCta).toggleClass(D.classes.loading,!a)):($(D.selectors.defaultCta).toggleClass(D.classes.hidden),$(D.selectors.loadingCta).toggleClass(D.classes.hidden),$(D.selectors.findVehicleCta).toggleClass(D.classes.loading))}function s(){$(D.selectors.formGroupContainer).toggleClass(D.classes.hidden),$(D.selectors.vehicleSummary).toggleClass(D.classes.hidden),$(D.selectors.modelYearDropdown).find($(D.selectors.formGroup)).removeClass(D.classes.error);
47var a=[D.classes.noResultsError,D.classes.serverError,D.classes.findVehicleNotClicked];t($(D.selectors.findCtaWrapper),a)}function t(a,b){b.forEach(function(b){a.removeClass(b)})}function u(a){c.getVehicleSummary(a).done(function(a){p(a)}).fail(function(a){k(a.responseJSON.code),E.responseFieldName&&delete E.responseFieldName})}function v(){A&&d.saveItem(D.sessionStorage.keys.formData,{numberPlate:{}},{mode:D.sessionStorage.mode.sessionStorage}),d.saveItem(D.sessionStorage.keys.formData,{numberPlate:E},{mode:D.sessionStorage.mode.sessionStorage})}function w(){var a=b.getUrlParams();(z=d.loadItem(D.sessionStorage.keys.formData,{mode:D.sessionStorage.mode.sessionStorage}))&&z.numberPlate&&Object.keys(z.numberPlate).length&&a.hasOwnProperty(D.events.formSubmissionServerError)&&(A=!0,x(z))}function x(a){E=Object.assign({},a.numberPlate),$(D.selectors.findVehicleCta).attr(D.attributes.data.click,!0),a.numberPlate.vehicleRegistrationNumber&&$(D.selectors.vehicleNumberPlate).val(a.numberPlate.vehicleRegistrationNumber),a.numberPlate.is404Error&&n(),a.numberPlate.isError&&l(),0==a.numberPlate.isSearch&&($(D.selectors.findCtaWrapper).addClass(D.classes.hidden),$(D.selectors.modelYearDropdown).removeClass(D.classes.hidden)),a.numberPlate.responseFieldName&&p(!1,!0),a.numberPlate.modelCode&&($("[name=Model]").val(a.numberPlate.modelCode).trigger(D.events.change,!0),$("[name=modelYear]").val(a.numberPlate.modelYear).trigger(D.events.change))}var y,z,A,B={selectors:{root:".c_019-38",findVehicleCta:".find-vehicle-button",defaultCta:".default-cta",loadingCta:".loading-cta",inputFieldWrapper:".c_019-38 .form-group",infoContainer:".info-container",numberPlateWrapper:".numberplatelookup",vehicleNumberPlate:".numberplatelookup input[name=vehicleRegistrationNumber]",modelYearDropdown:".numberplatelookup .model-year-dropdown",findCtaWrapper:".find-vehicle",vehicleSummary:".vehicle-summary",formGroupContainer:".c_019-38 .form-group-container",changePlateNumber:".change-plate-number",formGroup:".form-group",modelSelectBox:".first-select-box",modelSelector:".model-year-dropdown .first-select-box select",yearSelector:".model-year-dropdown .second-select-box select",formSubmitButton:".submit-form .submit-form-button"},events:{click:"click",input:"input",change:"change",formSubmissionServerError:"_hls_error"},classes:{hidden:"hidden",complete:"complete",error:"error",required:"required",loading:"loading",noResultsError:"no-results-error",serverError:"server-error",summaryDetails:"vehicle-summary-details",findVehicleNotClicked:"find-cta-not-clicked"},analytics:{componentId:"19.38_Numberplate_lookup",locationInPage:"numberplate-lookup",contentActionType:{invalid:"error:numberplate-invalid",notfound:"error:numberplate-not-found",serverError:"error:numberplate-server-error",success:"success",edit:"edit",ctaNotClicked:"error:numberplate-cta-search-skipped"}},attributes:{data:{click:"data-clicked",dataRequestVariable:"data-request-variable"},name:{model:"Model"}},sessionStorage:{keys:{formData:"formData",modelCode:"modelCode",modelName:"modelName",modelYear:"modelYear",vehicleRegistrationNumber:"vehicleRegistrationNumber",responseFieldName:"responseFieldName"},mode:{sessionStorage:"sessionStorage"}}},C=[],D=null,E={isSearch:!0,is404Error:!1,isError:!1};return{init:e}}),define("c_019_39",["handlebars","storageManager","urlParameterDecoder","modal","underscore"],function(a,b,c,d,e){"use strict";function f(a){if(Q=$.extend({},N,a),I=$(Q.selectors.root),!I.length)return!1;b.init(),c.init(),q(),t(),g()}function g(){h($(Q.selectors.locationSearchLabel)),$(Q.selectors.modelBlock).on(Q.events.click+" "+Q.events.keypress,function(a){(a.type===Q.events.click||a.type===Q.events.keypress&&13==a.keyCode)&&($(a.currentTarget).addClass(Q.classes.selected),a.keyCode?($(a.target).find("input").prop(Q.events.checked,!0),$(a.target).find("input").valid()):$(a.target).valid(),J="",!$(Q.selectors.powertrainWrapper).data(Q.attributes.data.preselectEnabled)&&o()||i(!1),k(a),setTimeout(function(){C(a.target.id,$(a.target).siblings("label").text())}.bind(this),500))}),$(Q.selectors.changeSelectedModelCTA).on(Q.events.click,function(a){L=!1,HELIOS.components.c_019.preLaunchRadiusSearch=!1,$(Q.selectors.modelsContainer).removeClass(Q.classes.hidden).removeClass(Q.classes.complete),$(Q.selectors.powertrainWrapper).addClass(Q.classes.hidden).removeClass(Q.classes.error).removeClass(Q.classes.complete),$(Q.selectors.preLaunchModelInfo).addClass(Q.classes.hidden),$(Q.selectors.preLaunchRadiusSearchNoResultsMessage).hide(),$(Q.selectors.selectedPowerTrain).val(""),$(Q.selectors.manualVehicleSpecsEntry).val("").parents(Q.selectors.manualSpecsWrapper).removeClass(Q.classes.error).removeClass(Q.classes.complete),i(!0),E()}),I.find(Q.selectors.powertrainLink).on(Q.events.click,function(a){r(a,Q.selectors.powertrainModal),G()})}function h(a){var b=a.text().trim(),c=HELIOS.components.c_019_31&&HELIOS.components.c_019_31.maxRadius||"_";
47b.includes(Q.dynamicContextFields.radius)&&(b=b.replace(Q.dynamicContextFields.radius,c)),b=b.replace(/%(.*?)%/g,"_"),a.text(b)}function i(a){var b=$(Q.selectors.powertrainWrapper),c=$(Q.selectors.modelVersionSpecListWrapper);a&&(Q.eventAggregator.trigger(Q.events.setApplicationState,"search"),$(Q.selectors.alternateOptionsView).hide(),$(Q.selectors.dealerListView).hide(),$(Q.selectors.selectedDealerView).hide(),$("body").trigger("disableRTBCalendar"),$(Q.selectors.datepickerComponent).show(),c.toggleClass(Q.classes.hidden,!0),c.find(Q.selectors.vehicleVersions).prop(Q.events.checked,!1),b.find(Q.selectors.vehiclePowertrains).prop(Q.events.checked,!1),b.removeClass(Q.classes.complete).removeClass(Q.classes.error),c.find(Q.selectors.modelVersionSpecList).removeClass(Q.classes.complete).removeClass(Q.classes.error)),$(Q.selectors.dealerLocatorSearchBar).find(Q.selectors.locationInput).attr(Q.attributes.disabled,a),$(Q.selectors.dealerLocatorSearchBar).find(Q.selectors.useMyCurrentLocationCta).attr(Q.attributes.disabled,a),$(Q.selectors.dealerLocatorSearchBar).find(Q.selectors.locationInput).toggleClass(Q.classes.disableSearch,a)}function j(){return $("html, body").animate({scrollTop:$(Q.selectors.root).offset().top},1500),!1}function k(a){$(a.currentTarget).find("picture source").length>0&&($(Q.selectors.selectedModelBlock).remove(),x($(a.currentTarget)));var b=$(a.currentTarget).find("input").attr(Q.attributes.data.modelId);if(1!==P.length){if(HELIOS.components.c_019_39&&HELIOS.components.c_019_39.powertrainEnabled&&"true"===$(Q.selectors.powertrainWrapper).attr(Q.attributes.data.dataPreselectEnabled).toLowerCase()){var c=$(Q.selectors.firstPowerTrain).val();w($(Q.selectors.firstPowerTrain).val())}l(b,c)}}function l(a,b){var c,d=p();c={expiryDate:d,powertrain:b,value:a},localStorage.setItem(Q.lastVisitedVehicle,JSON.stringify(c)),m(a,b)}function m(a,c){if(L=!(!J||J!==a||!(K&&K===c||M)),J=a,K=c,!L){if(o()&&!M){if(c){var d=$(Q.selectors.alternatePowertrain).val(),e=$(Q.selectors.modelVersionSpecListWrapper);Q.eventAggregator.trigger("changeModelAndPowertrain",a,c,d),e.toggleClass(Q.classes.hidden,!0),e.find(Q.selectors.vehicleVersions).prop(Q.events.checked,!1),e.find(Q.selectors.modelVersionSpecList).removeClass(Q.classes.complete).removeClass(Q.classes.error)}}else Q.eventAggregator.trigger("changeModelAndPowertrain",a);b.deleteItem(Q.vinDetails,Q.storageManagerOptions.sessionStorage)}}function n(a){var c=b.loadItem(H,Q.storageManagerOptions.localStorage)||b.loadItem(Q.lastVisitedVehicle,Q.storageManagerOptions.localStorage),d=$(a.currentTarget).attr("value"),e=$(Q.selectors.unselectedPowertrain).val();$(Q.selectors.dealerLocatorSearchBar).find(Q.selectors.locationInput).attr(Q.attributes.disabled,!1),$(Q.selectors.dealerLocatorSearchBar).find(Q.selectors.useMyCurrentLocationCta).attr(Q.attributes.disabled,!1),$(Q.selectors.dealerLocatorSearchBar).find(Q.selectors.locationInput).removeClass(Q.classes.disableSearch),$(Q.selectors.selectedPowerTrain).val(d),$(Q.selectors.alternatePowertrain).val(e),F(!1,!1,!0,d),l(c,d)}function o(){return HELIOS.components&&HELIOS.components.c_019_39&&HELIOS.components.c_019_39.powertrainEnabled&&$(Q.selectors.powertrainWrapper).length}function p(){var a=new Date,b=new Date;return b.setDate(a.getDate()+14)}function q(){var a=$(Q.selectors.root).find("script[data-content]");if(a)try{var b=JSON.parse(e.unescape(a.html()));O=b.powertrainConfigurations}catch(c){return}}function r(a,b){var c;if(a.preventDefault(),I.find(Q.selectors.radioContainerInput).is(Q.events.disabled))return!1;c=new d({displayType:d.TYPE_RIGHTSLIDE,customClass:"powertrain-modal",customOverlayClass:"powertrain-overlay-modal",closeText:"close",touchMoveEnabled:!0,preventScrollTop:!0}),c.open(b),s(c)}function s(a){a.$root.on("modal.close",function(){a.remove()})}function t(){var a=c.getUrlParams(),d=Q.attributes.data.dataRequestVariable,e=$(Q.selectors.root).attr(d),f=Q.attributes.data.dataStorageCapture,g=$(Q.selectors.root).attr(f),h=b.loadItem(g,Q.storageManagerOptions.localStorage)||!1;H=g,e in a&&$("["+Q.attributes.data.modelId+'="'+a[e]+'"]').length>
470?"powertrain"in a?u(a[e],a.powertrain,!1,!0):u(a[e],"",!1,!0):h&&$("["+Q.attributes.data.modelId+"="+h+"]").length>0?u(h,"",!0):($(Q.selectors.modelsContainer).removeClass(Q.classes.hidden),$(Q.selectors.selectedModel).hide(),$(Q.selectors.modelsContainer).show())}function u(a,c,d,e){function f(b){w(b),l(a,b)}var g,h;a&&$(Q.selectors.selectedVehicleTemplate).length&&$("["+Q.attributes.data.modelId+"="+a+"]").parent().find("picture source").length>0&&(x($("["+Q.attributes.data.modelId+"="+a+"]").parent(),e),P.indexOf(c)>-1?(w(c),l(a,c)):d?(g=JSON.parse(localStorage.getItem(Q.lastVisitedVehicle)),h=JSON.parse(localStorage.getItem(Q.configObj)),g&&g.powertrain?f(g.powertrain):h&&h.value&&h.value.state&&h.value.state.modelCode===a&&h.value.state.powertrain&&f(h.value.state.powertrain)):1!==P.length||!o()&&e?b.saveItem(Q.lastVisitedVehicle,a,Q.storageManagerOptions.localStorage.mode):z(a,P[0],e),(e||d)&&m(a),setTimeout(function(){F(a,$("#"+a).siblings("label").text().trim(),!1)},1e3),$(Q.selectors.preLaunchRadiusSearchNoResultsMessage).hide(),$(Q.selectors.selectedModel).removeClass(Q.classes.hidden),$(Q.selectors.selectedModel).show(),$(Q.selectors.modelsContainer).hide(),D())}function v(){var a=$(Q.selectors.vehicleImagePictureSource),c=$(Q.selectors.vehicleImagePictureImg),d=$(Q.selectors.selectedModelName).text(),e={};e.header=d||"",a&&(e.desktopImage=a.length>2?a.eq(2).attr(Q.attributes.srcset).split(",")[0]:"",e.tabletImage=a.length>1?a.eq(1).attr(Q.attributes.srcset).split(",")[0]:"",e.mobileImage=a.length>0?a.eq(0).attr(Q.attributes.srcset).split(",")[0]:""),e.imageAlt=c?c.attr(Q.attributes.alt):"",b.saveItem(Q.modelDetails,e,Q.storageManagerOptions.sessionStorage)}function w(a){$(Q.selectors.powertrainWrapper).find($('input[value="'+a+'"]')).prop(Q.events.checked,!0),$(Q.selectors.selectedPowerTrain).val(a);var b=$(Q.selectors.unselectedPowertrain).val();$(Q.selectors.alternatePowertrain).val(b),a&&1!==P.length&&setTimeout(function(){F(!1,!1,!1,a)},2e3)}function x(b,c){function d(a){return e.reduce(a[0].attributes,function(a,b){return a[b.name]=b.value,a},{})}var f,g,h,i=[],j={},k=["data-powertrain-"],l={};j.desktopImage=b.find("picture source")[0].getAttribute("srcset"),j.tabletImage=b.find("picture source")[1].getAttribute("srcset"),j.mobileImage=b.find("picture source")[2].getAttribute("srcset"),j.imageAlt=b.find("img").attr("alt"),j.header=b.find(Q.selectors.modelName)[0].innerText,j.modelId=b.find("input").attr(Q.attributes.data.modelId),g=d(b.find("input")),HELIOS.components.c_019_39.isPrelaunch=g["data-pre-launch-enabled"],h=g[Q.attributes.data.dataLcvService],HELIOS.components.c_019_39.lcvService=h?y(h):"",M=!e.isUndefined(HELIOS.components.c_019_39.isPrelaunch)&&"true"===HELIOS.components.c_019_39.isPrelaunch,k.forEach(function(a){Object.keys(g).forEach(function(b){-1!==b.indexOf(a)&&(l[b]=g[b])})}),$.each(l,function(a,b){b.length>0&&i.push(b)}),P=i,f=a.compile($(Q.selectors.selectedVehicleTemplate).html()),$(Q.selectors.selectedSectionTitle).after(f(j)),I.find(Q.selectors.radioContainer).remove(),i.length>1?A(i):1!==i.length||!o()&&c?($(Q.selectors.powertrainWrapper).addClass(Q.classes.hidden),B()):(z(b.find("input").attr(Q.attributes.data.modelId),i[0]),$(Q.selectors.powertrainWrapper).addClass(Q.classes.hidden))}function y(a){try{var b=JSON.parse(a.replace(/'/g,'"'));return e.pluck(b,"id")}catch(error){throw new Error("Lcv JSON parse failed "+error)}}function z(a,b,c){M&&(b=void 0),$(Q.selectors.selectedPowerTrain).val(b),$(Q.selectors.alternatePowertrain).val(""),l(a,b),$(Q.selectors.dealerLocatorSearchBar).find(Q.selectors.locationInput).attr(Q.attributes.disabled,!1),$(Q.selectors.dealerLocatorSearchBar).find(Q.selectors.useMyCurrentLocationCta).attr(Q.attributes.disabled,!1),$(Q.selectors.dealerLocatorSearchBar).find(Q.selectors.locationInput).removeClass(Q.classes.disableSearch),B(),M?v():setTimeout(function(){F(!1,!1,!1,b,c)},2e3)}function A(b){var c,d={},f=[];if(!M){if(O.length>=1){for(var g=[],h=0;h<b.length;h++){var i=e.findIndex(O,function(a){return a.powertrain==b[h]});-1===i?g.push(b[h]):f.push(O[i])}f=f.sort(function(a,b){return a.rank-b.rank});for(var h=g.length-1;h>=0;h--)d.powertrain=g[h],d.title=g[h],d.description="",c=a.compile($(Q.selectors.powertrainTemplate).html()),$(Q.selectors.powertrainTitle).after(c(d));for(var h=f.length-1;h>=0;h--)d.powertrain=f[h].powertrain,d.title=f[h].powertrain,d.description=f[h].description,c=a.compile($(Q.selectors.powertrainTemplate).html()),$(Q.selectors.powertrainTitle).after(c(d));$(Q.selectors.powertrainWrapper).removeClass(Q.classes.hidden),$(Q.selectors.powertrainWrapper).fadeIn(1e3)}else if(0===O.length){for(var h=b.length-1;h>=0;h--)d.powertrain=b[h],d.title=b[h],d.description="",c=a.compile($(Q.selectors.powertrainTemplate).html()),$(Q.selectors.powertrainTitle).after(c(d));$(Q.selectors.powertrainWrapper).removeClass(Q.classes.hidden),$(Q.selectors.powertrainWrapper).fadeIn(1e3)}I.find(Q.selectors.radioContainerInput).off().on(Q.events.change,function(a){n(a),$(Q.selectors.radioContainerInput).valid()})}B(),I.find(Q.selectors.powertrainValidationReference).remove()}function B(){M&&$("body").trigger("disableRTBCalendar")}function C(a,b){j(),F(a,b,!0),$(Q.selectors.modelsContainer).hide(),$(Q.selectors.selectedModel).removeClass(Q.classes.hidden),$(Q.selectors.selectedModel).fadeToggle(1e3),D()}function D(){if(M){var a=$(Q.selectors.selectedModelBlock).find(Q.selectors.selectedModelName).text().trim(),b=$(Q.selectors.selectedModel).find(Q.selectors.preLaunchModelInfo),c=b.data("authoredInfo")||b.text();b.data("authoredInfo")||b.data("authoredInfo",c);var d=c.replace(/%\w+%/g,function(b){return"%model%"===b?a:"_"});b.text(d),$(Q.selectors.selectedModel).find(Q.selectors.preLaunchModelInfo).removeClass(Q.classes.hidden)}}function E(){$(Q.selectors.modelBlockSelected+" input").prop(Q.events.checked,!1),$(Q.selectors.modelBlockSelected).removeClass(Q.classes.selected),$(Q.selectors.selectedModel).hide(),$(Q.selectors.modelsContainer).fadeToggle(1e3)}function F(a,b,c,d,e){var f=Q.analyticsManager.trackingVars.vehicleSelector,g=Q.analyticsManager.getTrackingObjectProperties(f),h={};h[g.componentId]=Q.analytics.componentId,h[g.selectDropdown]=(a?Q.analytics.model:Q.analytics.powertrain)+(c?Q.analytics.userSelected:Q.analytics.autoSelected),a&&(h[g.vehicleId]=a,$(Q.selectors.selectedModelHiddenInput).val(a),v()),h[g.preLaunchVehicle]=!!M,b&&(h[g.vehicleModel]=b,Q.eventAggregator.trigger(Q.events.testDriveModelChange,b)),d?h[g.vehiclePowertrain]=d:delete HELIOS.adobe.tagging.vehiclePowertrain,e||Q.analyticsManager.track(f,h)}function G(){var a=Q.analyticsManager.trackingVars.tooltipDisplay,b=Q.analyticsManager.getTrackingObjectProperties(a),c={};c[b.componentId]=Q.analytics.componentId,c[b.tooltipTitle]=Q.analytics.powertrainDetailsTooltip,Q.analyticsManager.track(a,c
47)}var H,I,J,K,L,M,N={events:{click:"click",keypress:"keypress",change:"change",checked:"checked",testDriveModelChange:"testDriveModelChange",setApplicationState:"setApplicationState"},classes:{hidden:"hidden",selected:"selected",complete:"complete",error:"error",disableSearch:"disable-search-bar"},selectors:{root:".c_019-39",modelsContainer:".models-container",modelBlock:".models-container .model-block",modelBlockSelected:".models-container .model-block.selected",selectedModel:".selected-model",changeSelectedModelCTA:".change-selected-model",selectedModelImage:".selected-model-image",selectedModelName:".selected-model-name",selectedSectionTitle:".selected-section-title",selectedModelBlock:".selected-model-block",powertrainLink:".powertrain-link",powertrainModal:"#c_019-39-powertrain-modal",radioContainerInput:".radio-container input[type='radio']",powertrainTitle:".powertrain-title",radioContainer:".radio-container",powertrainWrapper:".powertrain",powertrainTemplate:"script[data-template=testdrive-selected-vehicle-powertrain-template]",selectedVehicleTemplate:"script[data-template=testdrive-selected-vehicle-details-template]",modelName:".model-name",firstPowerTrain:".radio-container:first input",selectedPowerTrain:".selectedPowertrain",alternatePowertrain:".alternatePowertrain",powertrainValidationReference:".powertrain-validation-reference",selectedDealerView:".selected-dealer",alternateOptionsView:".alternate-powertrain-search",dealerListView:".dealer-list",dealerLocatorSearchBar:".search",modelVersionSpecListWrapper:".vehicleSpecificationWrapper",modelVersionSpecList:".version-list",useMyCurrentLocationCta:".use-current-location-button",datepickerComponent:".c_019-11C, .dateTimePicker",manualVehicleSpecsEntry:"textarea.manual-preference",manualSpecsWrapper:".manual-spec-section",locationInput:".location-input",unselectedPowertrain:".powertrain-list input:radio:not(:checked)",vehicleVersions:".version-type",vehiclePowertrains:"input[name=powertrainType]",selectedModelHiddenInput:".selectedModel",vehicleImagePictureSource:".selected-model-block picture source",vehicleImagePictureImg:".selected-model-block picture img",preLaunchModelInfo:".prelaunch-model-info",preLaunchRadiusSearchNoResultsMessage:".pre-launch-search-message-container",locationSearchLabel:".dealer-search-locator .location-label"},lastVisitedVehicle:"lastVisitedVehicle",configObj:"c_cfg",selectedModel:"selectedModelDetails",modelDetails:"modelDetails",vinDetails:"vinDetails",storageManagerOptions:{sessionStorage:{mode:"sessionStorage"},localStorage:{mode:"localStorage"}},attributes:{data:{modelId:"data-model-id",dataRequestVariable:"data-request-variable",dataStorageCapture:"data-c_019-storage-capture",dataPreselectEnabled:"data-preselect-enabled",preselectEnabled:"preselect-enabled",dataLcvService:"data-lcv-services"},disabled:"disabled",srcset:"srcset",alt:"alt"},analytics:{componentId:"C19.39_Powertrain_Model_Selector",model:"model",powertrain:"powertrain",userSelected:"|user selection",autoSelected:"|automatic selection",powertrainDetailsTooltip:"vehicle-selector:powertrain details"},dynamicContextFields:{radius:"%radius%"}},O=[],P=[],Q=null;return{init:f}}),define("c_019_40",["handlebars","underscore","storageManager"],function(a,b,c){"use strict";function d(a){if(E=$.extend({},B,a),t=$(E.selectors.root),!t.length)return!1;g(),p()}function e(){A=c.loadItem(E.modelDetails,E.storageManagerOptions.sessionStorage)||{}}function f(){c.saveItem(E.modelDetails,A,E.storageManagerOptions.sessionStorage)}function g(){$(E.selectors.body).on(E.events.getVehicleSpecs,function(a,b,c,d,e,f){var g=b&&(b.modelName||b[0].modelName);$(E.selectors.selectedVehicleVersion).val(""),n(d,e,f),HELIOS&&HELIOS.components&&HELIOS.components.c_019_39&&HELIOS.components.c_019_39.selectedPowertrainOption==E.localDealer||$(E.selectors.selectedVersionModelName).val(g),l(b,c)}),E.eventAggregator.on("dealerSearchCompleteZeroResults",h,this),$(E.selectors.body).on(E.events.resetVehicleSpecification,function(a,b){m()}),t.find(E.selectors.manualSelectionCta).on(E.events.click,function(a){c.deleteItem(E.vinDetail
47s,E.storageManagerOptions.sessionStorage),i(),$(E.selectors.selectedVehicleVersion).val(""),$("body").trigger("disableRTBCalendar"),$("html, body").animate({scrollTop:$(E.selectors.manualSpecSection).offset().top}),s(E.analytics.manualToggleValue)}),t.find(E.selectors.dealerVehicleCta).on(E.events.click,function(a){s(E.analytics.listToggleValue),j(),$("html, body").animate({scrollTop:$(E.selectors.versionListContainer).offset().top})})}function h(){m()}function i(){$(E.selectors.manualSpecCtaContainer).addClass(E.classes.hidden),$(E.selectors.manualSpecSection).removeClass(E.classes.hidden).removeClass(E.classes.complete).removeClass(E.classes.error),$(E.selectors.versionList).addClass(E.classes.hidden),$(E.selectors.vehicleSpecsInput).prop("checked",!1),$(E.selectors.datePicker).hide(),$(E.selectors.versionListContainer).addClass(E.classes.hidden).removeClass(E.classes.complete).removeClass(E.classes.error)}function j(){$(E.selectors.manualSpecCtaContainer).removeClass(E.classes.hidden),$(E.selectors.manualSpecSection).addClass(E.classes.hidden).removeClass(E.classes.complete).removeClass(E.classes.error),$(E.selectors.versionList).removeClass(E.classes.hidden),1===$(E.selectors.versionList).length?($(E.selectors.versionListContainer).removeClass(E.classes.hidden),$(E.selectors.vehicleSpecsInput).prop("checked",!0).trigger(E.events.change),$(E.selectors.vehicleSpecsInput).valid(),r(!1,D[0]),q(y,z,$(E.selectors.vehicleSpecsInput).val())):$(E.selectors.versionListContainer).removeClass(E.classes.hidden).removeClass(E.classes.complete).removeClass(E.classes.error),$(E.selectors.datePicker).show()}function k(){var a=$(E.selectors.selectedModelName).text().trim(),b=$(E.selectors.versionListTitle),c=$(E.selectors.manualVersionListTitle),d=b.data("authoredLabel")||b.text(),e=c.data("authoredLabel")||c.text();b.data("authoredLabel")||b.data("authoredLabel",d),c.data("authoredLabel")||c.data("authoredLabel",e);var f=d.replace(/%\w+%/g,function(b){return"%model%"===b?a:"_"}),g=e.replace(/%\w+%/g,function(b){return"%model%"===b?a:"_"});b.text(f),c.text(g)}function l(c,d){$(E.selectors.versionList).remove(),k();var e=b.filter(b.keys(u),function(a){return!0===u[a]});if(e.length){if(e.includes("vin")||e.push("vin"),!b.isUndefined(c)){x=c[0].modelCode,D=c;var f=c.map(function(a){var b={};return e.forEach(function(c){b[c]=a[c]}),b});C=f;for(var g=f.length-1;g>=0;g--){var h=a.compile($(E.selectors.versionTemplate).html());$(E.selectors.versionListTitle).after(h(f[g]))}t.find(E.selectors.versionListValidationReference).remove(),$(E.selectors.vehicleSpecificationContainer).removeClass(E.classes.hidden),o(),1===f.length?($(E.selectors.vehicleSpecsInput).prop("checked",!0).trigger(E.events.change),$(E.selectors.vehicleSpecsInput).valid(),r(!1,D[0]),y=x,z=d,q(x,d,$(E.selectors.vehicleSpecsInput).val())):t.find(E.selectors.vehicleSpecsInput).on(E.events.change,function(a){v=$(a.currentTarget).val(),q(x,d,v),$(E.selectors.vehicleSpecsInput).valid(),w=b.findIndex(D,function(a){return a.vin===v}),r(!0,D[w])})}}else $(E.selectors.vehicleSpecificationContainer).removeClass(E.classes.hidden),o()}function m(){$(E.selectors.versionList).remove(),j(),$(E.selectors.vehicleSpecificationContainer).addClass(E.classes.hidden)}function n(a,b,c){F.dealerName=a||"",F.dealerAddress=b||"",F.dealerPhoneNumber=c||""}function o(){$(E.selectors.versionListContainer).removeClass(E.classes.hidden).removeClass(E.classes.complete).removeClass(E.classes.error),$(E.selectors.manualSpecSection).addClass(E.classes.hidden).removeClass(E.classes.complete).removeClass(E.classes.error),$(E.selectors.manualSpecCtaContainer).removeClass(E.classes.hidden)}function p(){var a=$(E.selectors.vehicleSpecificationContainer).find("script[data-content]");if(a)try{var c=JSON.parse(b.unescape(a.html()));u=c.vehiclespecs}catch(d){return}}function q(a,b,c){$("body").trigger("disableRTBCalendar"),$("body").trigger("vehicleSpecSelection",[a,b,c,F.dealerName,F.dealerAddress,F.dealerPhoneNumber])}function r(a,d){var g,h=E.analyticsManager.trackingVars.vehicleSelector,i=E.analyticsManager.getTrackingObjectProperties(h),j={},k={};$.each(d,function(a,b){k[a.toLowerCase()]=b}
47),c.saveItem(E.vinDetails,k,E.storageManagerOptions.sessionStorage),d.gradeName&&(e(),A.gradename=d.gradeName,f()),b.isUndefined(d.engine)||b.isNull(d.engine)||b.isNull(d.gradeName)?b.isNull(d.gradeName)?g="":(g=d.gradeName,$(E.selectors.selectedVehicleVersion).val(g)):(g=d.engine+" "+d.gradeName,$(E.selectors.selectedVehicleVersion).val(g)),d&&d.modelName&&$(E.selectors.selectedVersionModelName).val(d.modelName),HELIOS.components&&HELIOS.components.c_019_39&&"true"===HELIOS.components.c_019_39.isPrelaunch?j[i.preLaunchVehicle]=!0:j[i.preLaunchVehicle]=!1,j[i.componentId]=E.analytics.componentId,j[i.selectDropdown]=a?E.analytics.version+E.analytics.userSelected:E.analytics.version+E.analytics.autoSelected,j[i.vehicleVersion]=g,E.analyticsManager.track(h,j)}function s(a){var b=E.analyticsManager.trackingVars.toggle,c=E.analyticsManager.getTrackingObjectProperties(b),d={};d[c.componentId]=E.analytics.componentId,d[c.toggleType]=E.analytics.toggleType,d[c.toggleValue]=a,E.analyticsManager.track(b,d)}var t,u,v,w,x,y,z,A,B={events:{click:"click",change:"change",getVehicleSpecs:"getVehicleSpecs",resetVehicleSpecification:"resetVehicleSpecification"},classes:{selected:"selected",hidden:"hidden",complete:"complete",error:"error"},selectors:{body:"body",root:".c_019-40",versionSelectionFormGroup:".c_019-40.form-group",versionListContainer:".version-list",versionListTitle:".version-list-title",versionTemplate:"script[data-template=version-template]",vehicleSpecificationContainer:".vehicleSpecificationWrapper",versionList:".version-list .version-container",vehicleSpecs:".vehicleSpecs",vehicleSpecsInput:".version-container input[type='radio']",manualSpecCtaContainer:".manual-spec-cta-container",manualSelectionCta:".manual-selection-cta",manualSpecSection:".manual-spec-section",dealerVehicleCta:".dealer-vehicle-cta",datePicker:".datetimepickerdatadriven",realTimeBookingSection:".realtimebooking",versionListValidationReference:".version-list-validation-reference",selectedVehicleVersion:".selected-vehicle-version",selectedVersionModelName:".selected-vehicle-model-name",selectedModelName:".selected-model-name",manualVersionListTitle:".manual-version-list-title"},vinDetails:"vinDetails",modelDetails:"modelDetails",localDealer:"localDealer",storageManagerOptions:{sessionStorage:{mode:"sessionStorage"}},analytics:{componentId:"C19.40_Version_Selection",version:"version",userSelected:"|user selection",autoSelected:"|automatic selection",toggleType:"form-vehicle-selector",manualToggleValue:"enter preferred vehicle",listToggleValue:"select vehicle from list"}},C=[],D=[],E=null,F={};return{init:d}}),define("c_019_11C",["remoteServices","underscore","handlebars","storageManager"],function(a,b,c,d){"use strict";function e(a){if(ka=$.extend({},ia,a),G=$(ka.selectors.root),d.init(),!G.length)return!1;if(H=G.find(ka.id.realTimeDatePicker),H.datepicker("option",ka.attrs.disabled,!0),J=H.data(ka.data.placeholder),K=H.data(ka.data.fallbackPlaceholder),L=H.data(ka.data.label),M=H.data(ka.data.fallbackLabel),O=G.parents(ka.selectors.form).data(ka.data.submitButtonLabel),N=G.parents(ka.selectors.form).find(ka.selectors.submitButtonLabelSelector).data(ka.data.submitButtonDefaultLabel),V=ka.HELIOS&&ka.HELIOS.components.c_019_31&&ka.HELIOS.components.c_019_31.targetSystemRoutingId,P=H.data(ka.data.maxDateDays)&&H.data(ka.data.maxDateDays).slice(1,-1)?parseInt(H.data(ka.data.maxDateDays)):60,Q=H.data(ka.data.disableWeekends),R=H.data(ka.data.restrictDate),da=H.data(ka.data.campaignDatesEnabled),ea=H.data(ka.data.campaignStartDate),fa=H.data(ka.data.campaignEndDate),S=H.data(ka.data.minDateDays),T=H.data(ka.data.maxDateDays),G.find(ka.selectors.datepickerContainer).removeClass(ka.classes.twoMonthCal),X=$(ka.selectors.manageBookingRoot),$.datepicker._updateDatepicker_original=$.datepicker._updateDatepicker,ba=$(ka.selectors.extendedTestDrive).val(),X.length){var c=X.data(ka.data.manageBookingDealerId);V=X.data(ka.data.targetSystemRoutingId),W=X.data(ka.data.modelCode),v(c,!0)}$(ka.selectors.body).on("onDealerSelectionRTB",b.bind(function(a,c,d,e,g){aa=$(ka.selectors.testdriveType).val()||$(ka.selectors.realtimeDealerOnlyBookingType).val()||$(ka.selectors.testdriveTypeFallback).val(),f(d,e,g),F(),U?(q(!0),H.datepicker("option",ka.attrs.disabled,!1)):(B()||
47!B()&&(aa!=ba||aa===ba&&!b.isUndefined($(ka.selectors.durationSelected).val())))&&(G.find(ka.selectors.datepickerContainer).addClass(ka.classes.loaderSpinner),v(c)),(B()||!B()&&(aa!=ba||aa===ba&&!b.isUndefined($(ka.selectors.durationSelected).val())))&&$(ka.selectors.datepickerContainer).addClass(ka.classes.rtbArrowActive)})),$(ka.selectors.body).on("onDealerSelectionModelDealerServiceMappingRTB",b.bind(function(a,c,d,e,g){aa=$(ka.selectors.testdriveType).val()||$(ka.selectors.realtimeDealerOnlyBookingType).val()||$(ka.selectors.testdriveTypeFallback).val(),f(d,e,g),F(),(B()||!B()&&(aa!=ba||aa===ba&&!b.isUndefined($(ka.selectors.durationSelected).val())))&&(G.find(ka.selectors.datepickerContainer).addClass(ka.classes.loaderSpinner),v(c),
48$(ka.selectors.datepickerContainer).addClass(ka.classes.rtbArrowActive))})),$(ka.selectors.body).on("onDwsRtbModelChange",b.bind(function(a,c){aa=$(ka.selectors.testdriveType).val()||$(ka.selectors.realtimeDealerOnlyBookingType).val()||$(ka.selectors.testdriveTypeFallback).val(),(B()||!B()&&(aa!=ba||aa===ba&&!b.isUndefined($(ka.selectors.durationSelected).val())))&&(G.find(ka.selectors.datepickerContainer).addClass(ka.classes.loaderSpinner),v(c.dealerId,!1,c.modelCode),$(ka.selectors.datepickerContainer).addClass(ka.classes.rtbArrowActive))})),$(ka.selectors.body).on("vehicleSpecSelection",b.bind(function(a,b,c,d,e,g,h){H.datepicker("option",ka.attrs.disabled,!1),G.find(ka.selectors.datepickerContainer).addClass(ka.classes.loaderSpinner),f(e,g,h),v(c,!1,b,d)})),$(ka.selectors.body).on("getDealerResponseSource",b.bind(function(a,b){U=b===ka.constants.internal,q(U)})),$(ka.selectors.body).on("disableRTBCalendar",b.bind(function(){F(),H.datepicker("option",ka.attrs.disabled,!0),$(ka.selectors.datepickerContainer).removeClass(ka.classes.rtbArrowActive),l(),q(U),m()})),$(ka.selectors.body).on("homeTestDriveFallbackFlow",b.bind(function(a,c){aa=$(ka.selectors.testdriveType).val()||$(ka.selectors.realtimeDealerOnlyBookingType).val()||$(ka.selectors.testdriveTypeFallback).val(),F(ka.constants.noDealer,c),(B()||!B()&&(aa!=ba||aa===ba&&!b.isUndefined($(ka.selectors.durationSelected).val())))&&(q(!0),H.datepicker("option",ka.attrs.disabled,!1))})),$(ka.selectors.body).on("serviceDriveTimeslot",b.bind(function(a,b){Z=b,B()&&(_=b)})),$(ka.selectors.body).on("showErrorOnTimeSlot",b.bind(function(a,b){if(B()){l(),G.find(ka.selectors.datepickerContainer).addClass(ka.classes.loaderSpinner),v(b),H.closest(ka.selectors.formGroup).addClass(ka.classes.error);var c='<span class="error-message" id="'+ka.id.datePickerErrorSlot+'">'+$(ka.id.realTimeDatePicker).attr("data-timeslot-error-message")+"</span>";$(ka.id.realTimeDatePicker).after(c),$(ka.id.datePickerErrorSlot).focus(),$(window).scrollTop($(ka.id.realTimeDatePicker).offset().top)}})),$(ka.selectors.body).on("noGeoLocationPostalCode",b.bind(function(a,b){Y=b,b&&(H.datepicker("option",ka.attrs.disabled,!0),G.find(ka.selectors.formGroup).removeClass(ka.classes.complete).removeClass(ka.classes.error),q(),F())})),$(ka.selectors.dealerDropDown).length&&$(ka.selectors.selectModelDropdown).on(ka.events.change,h),$(ka.selectors.selectDealerDropdown).on(ka.events.change,i),$(ka.selectors.realtimeBookingTypeRadio).on(ka.events.change,i),$(ka.selectors.selectDealerDropdown).on(ka.events.change,h),$(ka.selectors.body).on("onExtendedDurationChange",b.bind(function(){var a=$(ka.selectors.chooseModel).find(ka.selectors.optionSelected).val();ca=$(ka.selectors.formDealerId).val(),F(ka.constants.durationChange),b.isEmpty(ca)&&$(ka.selectors.homeTestDriveValidationError).is(":visible")&&(q(!0),H.datepicker("option",ka.attrs.disabled,!1)),b.isEmpty(ca)||b.isEmpty(a)||(l(),G.find(ka.selectors.datepickerContainer).addClass(ka.classes.loaderSpinner),v(ca),$(ka.selectors.datepickerContainer).addClass(ka.classes.rtbArrowActive))}))}function f(a,b,c){var e=$(ka.selectors.selectedModelBlock).find(ka.selectors.selectedModelName).text().trim();if(!e.length){var f=d.loadItem(ka.selectedModel,ka.storageManagerOptions.sessionStorage);f&&f.name&&(e=f.name)}la.modelName=e,la.dealerName=a||"",la.dealerAddress=b||"",la.dealerPhone=c||""}function g(){var a=$(ka.selectors.homeTestdriveErrorDescriptionLink).attr(ka.attrs.href),b=$(ka.selectors.homeTestdriveErrorDescriptionLink).text(),c=ka.analyticsManager.trackingVars.genericClick,d=ka.analyticsManager.getTrackingObjectProperties(c),e={};e[d.componentId]=ka.analytics.componentId,e[d.locationInPage]=ka.analytics.noSlotsCta,e[d.destination]=a,e[d.buttonText]=b,ka.analyticsManager.track(c,e)}function h(){var a=$(ka.selectors.selectDealerDropdown).val();$(ka.selectors.selectModelDropdown).val()&&a?($(ka.selectors.datepickerContainer).addClass(ka.classes.rtbArrowActive),l(),q(),v(a)):$(ka.selectors.body).trigger(ka.events.disableRTBCalendar)}function i(){var a=$(ka.selectors.selectDealerDropdown).val();$(ka.selectors.realtimeBookingType).val()===ka.constants.home&&(_=!0),HELIOS.components.c_019_32&&HELIOS.components.c_019_32.pudofallbackCalenderEnabled&&$(ka.selectors.realtimeBookingType).val()===ka.constants.home?setTimeout(function(){y(""),null==$(ka.selectors.selectDealerDropdown).val()?j():k()},100):a?(_=$(ka.selectors.realtimeBookingType).val()===ka.constants.home,$(ka.selectors.datepickerContainer).addClass(ka.classes.rtbArrowActive),l(),q(),v(a)):$(ka.selectors.body).trigger(ka.events.disableRTBCalendar)}function j(){$(ka.selectors.scheduleDatepicker).prop(ka.attrs.disabled,!0),$(ka.selectors.scheduleDropdownSelect).prop(ka.attrs.disabled,!0)}function k(){$(ka.selectors.scheduleDatepicker).prop(ka.attrs.disabled,!1),$(ka.selectors.scheduleDropdownSelect).prop(ka.attrs.disabled,!1)}function l(){var a=n(S,T);ja=!0,G.data(ka.data.previousDate,""),G.data(ka.data.previousTime,""),G.find(ka.id.inputDateTimeSelected).val(""),G.find(ka.id.inputDateTimeDisplayed).val(""),G.find(ka.id.inputTimeSelected).val(""),G.find(ka.selectors.timeSelected).text("").hide(),G.find(ka.id.inputDateSelected).val(""),G.find(ka.id.serviceEndDate).val(""),G.find(ka.id.serviceEndTime).val(""),G.find(ka.id.serviceEndDateTime).val(""),G.find(ka.selectors.timeSlotReturnLabel).hide(),G.find(ka.selectors.timeSlotReturnValue).text(""),document.getElementById(ka.id.datePickerErrorSlot)&&null!=document.getElementById(ka.id.datePickerErrorSlot)&&G.find('span[id^="#date-picker-errorslot"]').remove(),I=void 0,$.datepicker._clearDate(H),G.find(ka.selectors.formGroup).removeClass(ka.classes.complete),G.find(ka.selectors.formGroup).removeClass(ka.classes.error),H.parent().removeClass(ka.classes.complete),H.datepicker("option",$.extend({beforeShowDay:Q?$.datepicker.noWeekends:null,minDate:a.minDate,maxDate:a.maxDate,onSelect:function(a,b){r(a,b),$(this).data("datepicker").inl
48ine=!1}})),m()}function m(){ka.HELIOS.components&&(ka.HELIOS.components.c_019_39&&("localDealer"===ka.HELIOS.components.c_019_39.selectedPowertrainOption||"true"===ka.HELIOS.components.c_019_39.isPrelaunch)||HELIOS.components.c_019&&HELIOS.components.c_019.isPreLaunch)?G.hide():G.show()}function n(a,b,c){var d=new RegExp(/\+[0-9]+d/);if(d.test(a)||(a="+0D"),d.test(b)||(b="+3M"),R||!Q||c||(a="-36M",b="+36M"),da){var e=new Date,f=c?ga:new Date(Math.max(e,new Date(ea))),g=c?ha:new Date(Math.max(e,new Date(fa)));a=f,b=g}return{minDate:a,maxDate:b}}function o(a){var b=new Date(a);if(isNaN(b.getTime()))throw new Error("Invalid date: "+a);return b}function p(a,b){try{var c=o(a),d=o(b),e=o(ea),f=o(fa);ga=new Date(Math.max(e,c)),ha=new Date(Math.min(f,d))}catch(error){}}function q(a){H.closest(ka.selectors.formGroup).find(ka.selectors.label).text(a?M:L),H.attr(ka.attrs.placeholder,a?K:J),G.parents(ka.selectors.form).find(ka.selectors.submitFormButton).text(a?O:N),a?($(ka.selectors.datepickerContainer).addClass(ka.classes.rtbFallBack),$(ka.selectors.scheduleDropdown).addClass(ka.classes.rtbFallBack).removeClass(ka.classes.notRequired),$(ka.selectors.dealerDropDown).length&&$(ka.selectors.homeTestdriveMessage).removeClass(ka.classes.hidden)):($(ka.selectors.datepickerContainer).removeClass(ka.classes.rtbFallBack),$(ka.selectors.scheduleDropdown).removeClass(ka.classes.rtbFallBack).addClass(ka.classes.notRequired),$(ka.selectors.scheduleDropdownSelect).val(""),$(ka.selectors.scheduleSelectedValue).text(""),$(ka.selectors.scheduleDropdownSelect).closest(ka.selectors.formGroup).removeClass(ka.classes.complete).removeClass(ka.classes.error),$(ka.selectors.dealerDropDown).length&&$(ka.selectors.homeTestdriveMessage).addClass(ka.classes.hidden))}function r(a,b){var c=H.parent();s(H),G.find(ka.selectors.formGroup).addClass(ka.classes.complete),c.find("#"+b.id+"-hidden").trigger("change")}function s(a){var b=a.datepicker("getDate"),c=$.datepicker.formatDate("dd-mm-yy",b);G.find(ka.id.inputDateSelected).val(c),G.find(ka.id.inputDateTimeSelected).val(c),G.find(ka.id.inputDateTimeDisplayed).val(a.val())}function t(a,b){function c(a){var b=a.split("-");return new Date(b[0],b[1]-1,b[2])}function d(a,b){return Math.round((b-a)/864e5)}return"+"+d(c(a),c(b))+"d"}function u(){return $(ka.selectors.modelPowertrain).length&&ka.HELIOS.components&&ka.HELIOS.components.c_019_39&&!ka.HELIOS.components.c_019_39.powertrainEnabled?$(ka.selectors.selectedModelBlock)[0].getAttribute(ka.attrs.dataModelId):$(ka.selectors.selectedModelCode).val()}function v(d,e,f,g){function h(){$.datepicker._updateDatepicker=function(a){$.datepicker._updateDatepicker_original(a);var b,d=this._get(a,"beforeShow"),e=a.selectedYear+"-"+i(parseInt(a.selectedMonth)+1)+"-"+i(a.selectedDay);if(a.lastVal&&(e=a.currentYear+"-"+i(parseInt(a.currentMonth)+1)+"-"+i(a.currentDay)),a.inline=!1,d&&I&&I.dateTimeSlots&&I.dateTimeSlots.length&&(a.input.is(":active")||G.hasClass(ka.classes.rtbCalendarOpen))){if(b=c.compile($("script[data-template=real-time-template]").html()),G.find(ka.id.uiDatepickerDiv).append(b()),Z){var f=H.data(ka.data.timeslotDescription);G.find(ka.selectors.homeDriveMessageContainer).text(f)}j(I,e)}}}function i(a){return(a<10?"0":"")+a}function j(a,d){var e=c.compile($("script[data-template=real-time-slot-template]").html()),f={filterTimeSlot:[],serviceBookingDrive:_},g=G.data(ka.data.previousTime),h=G.data(ka.data.previousDate),i=!1,j=$.datepicker.formatDate("dd-mm-yy",H.datepicker("getDate"));if(b.each(a.dateTimeSlots,function(a){a.date===d&&(f.filterTimeSlot=a.slots)}),f.filterTimeSlot&&f.filterTimeSlot.length&&ja)return ja=!1,setTimeout(function(){G.find(ka.selectors.uiDatepickerDaysCellOver).trigger("click")},200),!1;if(ja&&(ja=!1,setTimeout(function(){G.find("[data-handler=selectDay]").first().trigger("click")},200)),f.filterTimeSlot&&f.filterTimeSlot.length){if($.each(a.dateTimeSlots,function(a,b){if($.each(b.slots,function(a,b){b.selected=!1}),b.date===h&&h===d)return $.each(b.slots,function(a,b){(_?b.start+"-"+b.end:b.start)===g?(i=!0,f.filterTimeSlot[0].selected=!1,b.selected=!0,G.find(ka.selectors.timeSelected).text(g).show(),G.find(ka.id.inputDateSelected).val(j),G.find(ka.id.inputTimeSelected).val(_?g.split("-")[0]:g),G.find(ka.id.inputDateTimeSelected).val(j+" "+g),G.find(ka.id.inputDateTimeDisplayed).val(H.val()+" "+g),G.data(ka.data.previousTime,g)):b.selected=!1}),!1}),!i){var k,l,m,n,o=f.filterTimeSlot[0],p=_?o.start+"-"+o.end:o.start,q=j+" "+p,r=H.val()+" "+p;o.selected=!0,$(ka.selectors.bookingType).val()===ka.constants.dealer&&V===ka.constants.targetRoutingId&&(k=o.endDate.split("-").reverse().join("-")),G.find(ka.selectors.timeSelected).text(p).show(),G.find(ka.id.inputTimeSelected).val(_?p.split("-")[0]:p),G.find(ka.id.inputDateSelected).val(j),G.find(ka.id.inputDateTimeSelected).val(q),G.find(ka.id.inputDateTimeDisplayed).val(r),G.data(ka.data.previousTime,p),n=$(ka.selectors.testdriveType).val()||$(ka.selectors.realtimeDealerOnlyBookingType).val()||$(ka.selectors.testdriveTypeFallback).val(),n&&n==ba&&(k=o.endDate.split("-").reverse().join("-"),l=k+" "+o.end,m=o.endDate.split("-").reverse().join("/")+"    "+o.end,G.find(ka.id.serviceEndDate).val(k),G.find(ka.id.serviceEndTime).val(o.end),G.find(ka.id.serviceEndDateTime).val(l),G.find(ka.selectors.timeSlotReturnLabel).removeClass(ka.classes.hidden),G.find(ka.selectors.timeSlotReturnLabel).show(),G.find(ka.selectors.timeSlotReturnValue).text(m).show()),w(k,o.end)}G.data(ka.data.previousDate,d),G.find(ka.selectors.formGroup).addClass(ka.classes.complete)}else G.find(ka.selectors.timeSelected).text("").show(),G.find(ka.id.inputDateTimeSelected).val(""),G.find(ka.id.inputDateTimeDisplayed).val(""),G.find(ka.id.inputTimeSelected).val(""),G.find(ka.id.serviceEndDate).val(""),G.find(ka.id.serviceEndTime).val(""),G.find(ka.id.serviceEndDateTime).val(""),G.find(ka.selectors.timeSlotReturnLabel).hide(),G.find(ka.selectors.timeSlotReturnValue).text(""),G.data(ka.data.previousTime,""),G.find(ka.selectors.formGroup).removeClass(ka.classes.complete),H.parent().removeClass(ka.classes.complete);G.find(ka.selectors.timePickerContainer).html(e(f)),G.find(ka.selectors.timePickerContainer).one(ka.events.click,ka.selectors.timeItemPicker,function(){var c,d,e,f=$(this).text(),g=$.datepicker.formatDate("dd-mm-yy",H.datepicker("getDate")),h=g+" "+f,i=H.val()+" "+f,j=_?f.split("-")[0]:f;G.find(ka.selectors.timeSelected).text(""),G.find(ka.selectors.timeSlotReturnLabel).hide(),G.find(ka.selectors.timeSlotReturnValue).text(""),G.find(ka.id.inputDateSelected).val(g),G.find(ka.id.inputTimeSelected).val(j),G.find(ka.id.inputDateTimeSelected).val(h),G.find(ka.id.inputDateTimeDisplayed).val(i),G.find(ka.selectors.timeSelected).text(f).show(),G.data(ka.data.previousTime,f),n=$(ka.selectors.testdriveType).val()||$(ka.selectors.realtimeDealerOnlyBookingType).val()||$(ka.selectors.testdriveTypeFallback).val(),n&&n==ba&&b.each(a.dateTimeSlots,function(a){a.date===g.split("-").reverse().join("-")&&b.each(a.slots,function(a){if
48(a.start===j)return c=a.endDate.split("-").reverse().join("-"),G.find(ka.id.serviceEndDate).val(c),G.find(ka.id.serviceEndTime).val(a.end),e=a.endDate.split("-").reverse().join("/")+"    "+a.end,d=c+" "+a.end,G.find(ka.id.serviceEndDateTime).val(d),G.find(ka.selectors.timeSlotReturnLabel).removeClass(ka.classes.hidden),G.find(ka.selectors.timeSlotReturnLabel).show(),G.find(ka.selectors.timeSlotReturnValue).text(e).show(),!1})}),$(ka.selectors.bookingType).val()===ka.constants.dealer&&V===ka.constants.targetRoutingId&&b.each(a.dateTimeSlots,function(a){a.date===g.split("-").reverse().join("-")&&b.each(a.slots,function(a){if(a.start===j)return c=a.endDate.split("-").reverse().join("-"),w(c,a.end),!1})}),H.datepicker("hide"),X.length&&z(),$("html, body").animate({scrollTop:H.offset().top})})}var k=u(),l=$(ka.selectors.testdriveType).val()||$(ka.selectors.testdriveTypeFallback).val(),m=$(ka.selectors.durationSelected).val(),o=$(ka.selectors.manageBookingRoot).data(ka.data.vin),s={modelCode:f||k||W,dealerId:d,daysInAdvance:P,targetSystemRoutingId:V,testdriveType:l||C()};b.isUndefined(g)||b.isNull(g)||(s.vin=g,s.testdriveType=$(ka.selectors.bookingType).val()),B()&&(C()?s.bookingType=C():s.bookingType=$(ka.selectors.realtimeBookingType).val()),$(ka.selectors.changeSelectedDealerButton).prop(ka.attrs.disabled,!0),s.testdriveType||delete s.testdriveType,s.testdriveType===ba&&(s.duration=m),!s.vin&&o&&(s.vin=o),a.getRealTimeTimeSlots(s,B()).done(function(a){var b,c=[];if(G.find(ka.selectors.datepickerContainer).removeClass(ka.classes.loaderSpinner),I=a,$.each(a.dateTimeSlots,function(a,b){c.push(b.date)}),c.length){var d=new Date,f=d.getFullYear()+"-"+(d.getMonth()+1)+"-"+d.getDate();da&&p(f,c[c.length-1]),b=n(S,t(f,c[c.length-1]),!0),H.datepicker("option",$.extend({beforeShowDay:function(a){var b=$.datepicker.formatDate("yy-mm-dd",a);return[-1!=c.indexOf(b)]},disabled:!1,defaultDate:new Date(c[0]),minDate:b.minDate,maxDate:b.maxDate,onSelect:function(a,b){r(a,b),$(this).data("datepicker").inline=!0}},{})),e?H.datepicker("option",ka.attrs.disabled,!1):(q(),F()),h()}else ka.HELIOS.components&&ka.HELIOS.components.c_019_11C&&!ka.HELIOS.components.c_019_11C.isFallbackEnabled?x():y(e);$(ka.selectors.changeSelectedDealerButton).prop(ka.attrs.disabled,!1)}).fail(function(a){G.find(ka.selectors.datepickerContainer).removeClass(ka.classes.loaderSpinner),ka.HELIOS.components&&ka.HELIOS.components.c_019_11C&&!ka.HELIOS.components.c_019_11C.isFallbackEnabled?x():y(e),$(ka.selectors.changeSelectedDealerButton).prop(ka.attrs.disabled,!1)})}function w(a,b){ka.HELIOS.components&&ka.HELIOS.components.c_019_39&&ka.HELIOS.components.c_019_39.powertrainEnabled&&$(ka.selectors.bookingType).val()===ka.constants.dealer&&V===ka.constants.targetRoutingId&&(G.find(ka.id.serviceEndDate).val(a),G.find(ka.id.serviceEndTime).val(b))}function x(){F(ka.constants.timeSlotError),H.datepicker("option",ka.attrs.disabled,!0),$(ka.selectors.datepickerContainer).removeClass(ka.classes.rtbArrowActive)}function y(a){a?(H.datepicker("option",ka.attrs.disabled,!1),H.datepicker("destroy"),H.on(ka.events.click,function(){H.closest(ka.selectors.formGroup).addClass(ka.classes.error),z(!0)})):(q(!0),l(),H.datepicker("option",ka.attrs.disabled,!1),$(ka.selectors.datepickerContainer).addClass(ka.classes.rtbArrowActive),F(ka.constants.timeSlotError))}function z(a){var b=ka.analyticsManager.trackingVars.buttonNoCookie,c=ka.analyticsManager.getTrackingObjectProperties(b),d=$(ka.id.inputDateTimeDisplayed).attr(ka.attrs.value),e={};e[c.contentAction]=a?ka.analytics.contentAction:d,e[c.componentId]=ka.analytics.componentId,e[c.locationInPage]=ka.analytics.locationInPage,ka.analyticsManager.track(b,e)}function A(a){var b=ka.analyticsManager.trackingVars.buttonNoCookie,c=ka.analyticsManager.getTrackingObjectProperties(b),d={};d[c.contentAction]=ka.analytics.noSlots,d[c.componentId]=ka.analytics.componentId,d[c.locationInPage]=a?ka.analytics.dealerLocation:$(ka.selectors.extendedTestDrive).is(ka.events.checked)?ka.analytics.extendedTestDrive:ka.analytics.preferredLocation,ka.analyticsManager.track(b,d)}
48function B(){return ka.HELIOS&&ka.HELIOS.components.c_019_31&&ka.HELIOS.components.c_019_31.rsb||ka.HELIOS&&ka.HELIOS.components.c_319&&JSON.parse(ka.HELIOS.components.c_319.rsb)}function C(){return ka.HELIOS&&ka.HELIOS.components.c_319&&ka.HELIOS.components.c_319.bookingType||!1}function D(a){var c=la.dealerAddress?la.dealerAddress.replace(/<br\s*\/?>/gi,", "):null,d={"%model%":la.modelName?'<span class="model-name">'+la.modelName+"</span>":null,"%dealerName%":la.dealerName?'<span class="dealer-name">'+la.dealerName+"</span>":null,"%address%":c?'<span class="dealer-address">'+c+"</span>":null,"%dealerPhonenumber%":la.dealerPhone?'<a class="dealer-list-phone-link" href="tel:'+la.dealerPhone+'">'+la.dealerPhone+"</a>":null};return a=a.replace(/%\w+%/g,function(a){return b.has(d,a)?d[a]||"":"_"})}function E(a){var b=ka.HELIOS.components.c_019_25&&ka.HELIOS.components.c_019_25.settings;b&&b.hasOwnProperty("isDealerSelectionMandatory")&&(b.isDealerSelectionMandatory=a)}function F(a,b){var c=G.find(ka.selectors.homeTestdriveMessage),d=c.find(ka.selectors.homeTestdriveErrorDescription),e=$(ka.selectors.dealerLocatorDealerId),f=$(ka.selectors.dealerLocatorDealerName);if(Y)return d.html(""),c.addClass(ka.classes.hidden),e.addClass(ka.classes.required).addClass(ka.classes.validate),f.addClass(ka.classes.required).addClass(ka.classes.validate),void E(!0);if(b)return d.html(""),c.addClass(ka.classes.hidden),e.removeClass(ka.classes.required).removeClass(ka.classes.validate),f.removeClass(ka.classes.required).removeClass(ka.classes.validate),void E(!1);if(a===ka.constants.noDealer)d.html(""),e.removeClass(ka.classes.required).removeClass(ka.classes.validate),f.removeClass(ka.classes.required).removeClass(ka.classes.validate),E(!1);else if(a===ka.constants.timeSlotError){d.html(d.data(ka.data.homeTestdriveTimeslotMessage));var h=d.data(ka.data.homeTestdriveTimeslotMessage);d.html(D(h)),c.removeClass(ka.classes.hidden),$(ka.selectors.homeTestdriveErrorDescriptionLink).on(ka.events.click,g),$(ka.selectors.realtimeBookingType).val()===ka.constants.dealer||$(ka.selectors.realtimeDealerOnlyBookingType).val()===ka.constants.dealer?A(!0):$(ka.selectors.realtimeBookingType).val()!==ka.constants.home&&$(ka.selectors.realtimeBookingType).val()!==ka.constants.extended||A(!1)}else{if(a!==ka.constants.durationChange)return d.html(""),c.addClass(ka.classes.hidden),e.addClass(ka.classes.required).addClass(ka.classes.validate),f.addClass(ka.classes.required).addClass(ka.classes.validate),void E(!0);d.html(""),c.addClass(ka.classes.hidden)}}var G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,_,aa,ba,ca,da,ea,fa,ga,ha,ia={events:{click:"click",disableRTBCalendar:"disableRTBCalendar",change:"change",checked:":checked"},constants:{internal:"INTERNAL",timeSlotError:"TIMESLOTERROR",noDealer:"NODEALER",home:"home",dealer:"dealer",extended:"extended",durationChange:"durationChange",targetRoutingId:"ca"},classes:{rtbCalendarOpen:"rtb-calendar-open",complete:"complete",error:"error",rtbArrowActive:"rtb-arrow-active",rtbFallBack:"rtb-fall-back",twoMonthCal:"two-month-cal",hidden:"hidden",required:"required",validate:"validate",notRequired:"not-required",loaderSpinner:"loading-spinner"},selectors:{body:"body",root:".c_019-11C",timeItemPicker:".time-item",timePickerContainer:".time-picker-container",timeSelected:".time-selected",uiDatepickerDaysCellOver:".ui-datepicker-days-cell-over a",formGroup:".form-group",label:"label",form:"form",submitFormButton:".submit-form-button",selectedModelCode:".select-model select",datepickerContainer:".datepicker-container",manageBookingRoot:".c_319",homeTestdriveMessage:".home-testdrive-message",homeTestdriveErrorDescription:".home-testdrive-error-description",homeTestdriveErrorDescriptionLink:".home-testdrive-error-description a",testdriveType:"input[name=bookingType]:checked, input[type=hidden][name=bookingType]",testdriveTypeFallback:"input[name=testdriveType]:checked",durationSelected:".c_019-29 .custom-radio input[type='radio']:checked",dealerLocatorDealerId:".c_019-25 .dealer-id",dealerLocatorDealerName:".c_019-25 .dealer-name",selectDealerDropdown:".c_019-31 .dealerDropdown select",scheduleDropdown:".c_019-31 .scheduleDropdown",scheduleDatepicker:".c_019-31 #datepicker",scheduleDropdownSelect:".c_019-31 .scheduleDropdown select",scheduleSelectedValue:".c_019-31 .scheduleDropdown .selectedValue",selectModelDropdown:".c_019-31 .c_020 .select-model select",dealerDropDown:".c_019-31 .dealerDropdown",homeDriveMessageContainer:".rsb-homedrive-message",changeSelectedDealerButton:".change-selected-dealer",submitButtonLabelSelector:".c_019-31",realtimeBookingType:"input[name='bookingType']:checked",realtimeBookingTypeRadio:".c_019-32 .radio-container input[name='bookingType']",realtimeDealerOnlyBookingType:"input[type=hidden][name=bookingType]",extendedTestDrive:".c_019-32 input[value='extended']",formDealerId:".c_019-25 .form-fields .dealer-id",timeSlotReturnLabel:".timeslot-return-label",timeSlotReturnValue:".timeslot-return-date",chooseModel:".c_020 .select-model",optionSelected:"option:selected",homeTestDriveValidationError:".c_019-25 .switch-to-dealer .error",bookingType:"input[name=bookingType]",selectedModelBlock:".selected-model-block",modelPowertrain:".c_019-39",selectedModelName:".selected-model-name"}
48,id:{realTimeDatePicker:"#datepicker",uiDatepickerDiv:"#ui-datepicker-div",inputTimeSelected:"#time-selected-hidden",inputDateTimeSelected:"#datetime-selected-hidden",inputDateSelected:"#datepicker-hidden",inputDateTimeDisplayed:"#datetime-displayed-hidden",serviceEndDate:"#serviceend-date-hidden",serviceEndTime:"#serviceend-time-hidden",serviceEndDateTime:"#serviceend-date-time-hidden",datePickerErrorSlot:"#date-picker-errorslot"},data:{minDateDays:"min-date-days",maxDateDays:"max-date-days",previousDate:"previous-date",previousTime:"previous-time",label:"label",placeholder:"placeholder",fallbackLabel:"fallbackLabel",fallbackPlaceholder:"fallbackPlaceholder",submitButtonLabel:"form-submit-label",submitButtonDefaultLabel:"rtb-submit-button-label",disableWeekends:"disable-weekends",restrictDate:"restrict-date",manageBookingDealerId:"manageBookingDealerid",targetSystemRoutingId:"targetSystemRoutingId",modelCode:"modelCode",homeTestdriveTimeslotMessage:"homeTestdriveTimeslotMessage",timeslotDescription:"timeslotDescription",vin:"vin",campaignDatesEnabled:"enable-campaign-dates",campaignStartDate:"campaign-start-date",campaignEndDate:"campaign-end-date"},attrs:{disabled:"disabled",placeholder:"placeholder",value:"value",href:"href",dataModelId:"data-model-id"},template:{inputFieldsTemplate:".c_309-3 [data-template='step3InputFields']"},analytics:{componentId:"c_019-11C",locationInPage:"manage-booking",contentAction:"date and time picker:error",n
48oSlots:"no slots",noSlotsCta:"no-slots-cta",preferredLocation:"form:preferred location",dealerLocation:"form:dealer location",extendedTestDrive:"form:dealer location: extendedTestDrive"},selectedModel:"selectedModelDetails",storageManagerOptions:{sessionStorage:{mode:"sessionStorage"}},storageManagerKeys:{externalCallbackUrl:"externalCallbackUrl"}},ja=!0,ka=null,la={};return{init:e,realTimeDatePicker:v,resetRTBDatePicker:l,renderFallbackCalendar:y,dateAndTimeAnalyticsTracking:z,setRtbCampaignDates:p,parseDate:o}}),define("c_020",["urlParameterDecoder","profileManager","underscore","storageManager"],function(a,b,c,d){"use strict";function e(c){if(S=$.extend({},R,c),J=$(S.selectors.root),!J.length)return!1;E(),b.init(),a.init(),d.init(),J.each(function(){var a=$(this);if(a.options=c,!(O=a.data(S.attrs.info)))return!1;P=a.data(S.attrs.imageAvailable),Q=a.data(S.attrs.vehicleSelectionType),N=a.data(S.attrs.filterLevels),g(a),h(S.selectors.chooseGrade,S.selectors.chooseModel,"nameAndPath",O.grades,a),"engines"===N?($(S.selectors.chooseEngine).addClass(S.classes.active),h(S.selectors.chooseEngine,S.selectors.chooseGrade,"nameAndPath",O.engines,a)):($(S.selectors.chooseVersion).addClass(S.classes.active),h(S.selectors.chooseVersion,S.selectors.chooseGrade,"nameAndPath",O.versions,a)),f(a),k(a),m(a),q(a),p(a)})}function f(a){j(a),i(a)}function g(a){var b,c,e,f,g,h,i=a.find(S.selectors.chooseModel),j=i.find("option:eq(0)").text(),k=i.find("select").attr("id"),l=a.parents(S.selectors.parentComponent19).find('input[name="'+S.constants.vehicleModelHiddenField+'"]');if(i.find("option:gt(0)").remove(),$.each(O.models,function(){o(S.selectors.chooseModel,this,a)}),x(a),U||i.find(S.selectors.selectBox).prop("selectedIndex",0),i.find(S.selectors.selectBox).change(function(){""==$(this).val()?i.closest(S.selectors.formGroup).removeClass(S.classes.complete):(i.closest(S.selectors.formGroup).addClass(S.classes.complete),l.length>0&&(f=$("#"+k+" option:selected").text())&&(g=f.replace(/nissan/gi,"").trim(),l.val(g)))}),i.attr("data-lastprepopulatedvehicle")){var m,p=d.loadItem(S.lastVisitedVehicle),q=new URLSearchParams(window.location.search),r=q.get("model"),k=i.find("select").attr("id"),s=[];q.has("model")&&(s=$("#"+k+" option").filter(function(a,b){return $(this).text().toUpperCase().includes(r.toUpperCase())||this.value.toUpperCase()===r.toUpperCase()})),(p&&!U||s.length>0)&&($("#"+k+" option").each(function(f){var k=s.length>0?r.toUpperCase():p;(!!r&&this.text.toUpperCase().includes(r.toUpperCase())&&s.length>0||k===this.value)&&(j=this.text,m=this.value,d.saveItem(S.vehicleModel,j),l.length>0&&this.text&&(g=this.text.replace(/nissan/gi,"").trim(),l.val(g)),i.find(S.selectors.selectBox).prop("selectedIndex",f),b=i.find(S.selectors.selectBox).find(S.selectors.optionSelected).data(S.attrs.dealerServiceMapping),c=i.find(S.selectors.selectBox).find(S.selectors.optionSelected).data(S.attrs.isExtendedTestDriveSupported),h=i.find(S.selectors.selectBox).find(S.selectors.optionSelected).data(S.attrs.isPreLaunchModel),e=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).val(),n(h,a.options.eventAggregator),setTimeout(function(){F(L.selectModel,e,a,!0),a.options.eventAggregator.trigger("changeModelSelect",b,j,e),H()&&!h&&(a.options.eventAggregator.trigger("changeModelSelectHomeTestdrive"),a.options.eventAggregator.trigger("changeExtendedTestdriveState",c))}.bind(this),2e3),a.find(S.selectors.chooseModel).closest(S.selectors.formGroup).addClass(S.classes.complete))}),u(a,S.attrs.model),m||i.closest(S.selectors.formGroup).addClass(S.classes.complete))}U||i.find(S.selectors.selectedValue).text(j)}function h(a,b,c,d,e){var f=e.find(a),g=f.find("option:eq(0)").text(),h=e.find(b).find(S.selectors.optionSelected).data(S.attrs.namePath),i=e.find(a).find(S.selectors.selectBox).data(S.attrs.undecidedTxt),j=e.find(a).find(S.selectors.selectBox).data(S.attrs.undecidedVal);f.find("option:gt(0)").remove(),f.find(S.selectors.selectedValue).text(g),f.find(S.selectors.selectBox).val(""),h?(f.find(S.selectors.selectBox).removeAttr(S.selectors.disabled),$.each(d,function(){this[c]===h&&o(a,this,e)}),i&&i.length>0&&j&&j.length>0&&e.find(a).find(S.selectors.selectBox).append($("<option></option>").attr({value:j}).text(i))):f.find(S.selectors.selectBox).attr(S.selectors.disabled,S.selectors.disabled),l(f)}
48function i(a){var b=a.find(S.selectors.chooseEngine),c=b.find("option:eq(0)").text(),d=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.namePath),e=a.find(S.selectors.chooseGrade).find(S.selectors.optionSelected).attr("value");b.find("option:gt(0)").remove(),b.find(S.selectors.selectedValue).text(c),b.find(S.selectors.selectBox).val(""),e?(b.find(S.selectors.selectBox).removeAttr(S.selectors.disabled),$.each(O.engines,function(){this.gradeId===e&&this.nameAndPath&&this.nameAndPath===d&&o(S.selectors.chooseEngine,this,a)})):b.find(S.selectors.selectBox).attr(S.selectors.disabled,S.selectors.disabled),l(b)}function j(a){var b=a.find(S.selectors.chooseVersion),c=b.find("option:eq(0)").text(),d=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.namePath),e=a.find(S.selectors.chooseGrade).find(S.selectors.optionSelected).attr("value");b.find("option:gt(0)").remove(),b.find(S.selectors.selectedValue).text(c),b.find(S.selectors.selectBox).val(""),e?(b.find(S.selectors.selectBox).removeAttr(S.selectors.disabled),$.each(O.versions,function(){this.gradeId===e&&this.nameAndPath&&this.nameAndPath===d&&o(S.selectors.chooseVersion,this,a)})):d&&0===a.find(S.selectors.chooseGrade).length?(b.find(S.selectors.selectBox).removeAttr(S.selectors.disabled),$.each(O.versions,function(){this.nameAndPath&&this.nameAndPath===d&&o(S.selectors.chooseVersion,this,a)})):b.find(S.selectors.selectBox).attr(S.selectors.disabled,S.selectors.disabled),l(b)}function k(a){var b=a.find(S.selectors.chooseColour).find("option:eq(0)").text(),c=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.namePath),d=a.find(S.selectors.chooseVersion).find(S.selectors.optionSelected).attr("value"),e=a.find(S.selectors.chooseGrade).find(S.selectors.optionSelected).attr("value"),f=a.find(S.selectors.chooseEngine).find(S.selectors.optionSelected).attr("value"),g=[];a.find(S.selectors.chooseColour).find("option:gt(0)").remove(),a.find(S.selectors.chooseColour).find(S.selectors.selectedValue).text(b),a.find(S.selectors.chooseColour).find(S.selectors.selectBox).val(""),d||f?(a.find(S.selectors.chooseColour).find(S.selectors.selectBox).removeAttr(S.selectors.disabled),$.each(O.colours,function(){-1===$.inArray(this.name,g)&&("engines"===N?this.engineId&&this.engineId===f&&this.gradeId&&this.gradeId===e&&this.nameAndPath&&this.nameAndPath===c&&(o(S.selectors.chooseColour,this,a),g.push(this.name)):this.versionId&&this.versionId===d&&this.nameAndPath&&this.nameAndPath===c&&(o(S.selectors.chooseColour,this,a),g.push(this.name)))})):a.find(S.selectors.chooseColour).find(S.selectors.selectBox).attr(S.selectors.disabled,S.selectors.disabled),l(a.find(S.selectors.chooseColour))}function l(a){var b=a.find(S.selectors.selectBox),c=b.closest(S.selectors.form);!b.val()&&c.hasClass(S.attrs.hasValidation)&&b.valid()}function m(a){var b,e,g,i,j,l,m;a.on("change",S.selectors.targetVehicleType,function(){p(a)}),a.find(S.selectors.chooseModel).find(S.selectors.selectBox).change(function(){b=$(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.namePath),h(S.selectors.chooseGrade,S.selectors.chooseModel,"nameAndPath",O.grades,a),f(a),k(a),p(a),g=c.first(c.filter(O.models,function(a){return a.nameAndPath===b})),F(L.selectModel,void 0!==g&&g.id,a),j=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.dealerServiceMapping),i=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.isExtendedTestDriveSupported),e=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.isPreLaunchModel),l=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).val(),
49m=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).text(),n(e,a.options.eventAggregator),a.options.eventAggregator.trigger("changeModelSelect",j,m,l),H()&&!e&&(a.options.eventAggregator.trigger("changeModelSelectHomeTestdrive"),a.options.eventAggregator.trigger("changeExtendedTestdriveState",i)),I(a),u(a,S.attrs.model),d.saveItem(S.lastVisitedVehicle,l),d.saveItem(S.vehicleModel,m)}),a.find(S.selectors.chooseGrade).find(S.selectors.selectBox).change(function(){if(f(a),k(a),F(L.selectGrade,this.value,a),I(a),u(a,S.attrs.grade),p(a),J.data(S.attrs.useCustomerFacingGradeName)){var b=$("option:selected",this),c=d.loadItem(S.vehicleModel).replace(/\b\d{4}\b/,"").trim();b.val(b.text().replace(c,"").trim())}}
49),a.find(S.selectors.chooseEngine).find(S.selectors.selectBox).change(function(){F(L.selectEngine,this.value,a),k(a),p(a)}),a.find(S.selectors.chooseVersion).find(S.selectors.selectBox).change(function(){F(L.selectVersion,this.value,a),I(a),k(a),u(a,S.attrs.version),p(a)}),a.find(S.selectors.chooseColour).find(S.selectors.selectBox).change(function(){F(L.selectColour,this.value,a)})}function n(a,b){$(S.selectors.root).find(S.selectors.preLaunchMessage).length&&$(S.selectors.root).find(S.selectors.preLaunchMessage).toggleClass(S.classes.hidden,!a),$(S.selectors.testdriveTypeSelector).length&&$(S.selectors.testdriveTypeSelector).toggleClass(S.classes.hidden,!!a),$(S.selectors.preLaunchRadiusSearchNoResultsMessage).hide(),$(S.selectors.preLaunchHiddenInput).val(!!a),HELIOS.components.c_019.isPreLaunch=!!a,HELIOS.components.c_019.preLaunchRadiusSearch=!1,b.trigger("preLaunchModelJourney",!!a),a&&$("body").trigger("disableRTBCalendar")}function o(a,b,c){b.name&&(b.phase&&b.year?b.dealerServiceMapping?c.find(a).find(S.selectors.selectBox).append($("<option></option>").attr({value:b.id,"data-name-and-path":b.nameAndPath,"data-phase":b.phase,"data-year":b.year,"data-dealerServiceMapping":b.dealerServiceMapping,"data-car-page":b.carPage}).text(b.name)):c.find(a).find(S.selectors.selectBox).append($("<option></option>").attr({value:b.id,"data-name-and-path":b.nameAndPath,"data-phase":b.phase,"data-year":b.year,"data-car-page":b.carPage,"data-extended-test-drive":b.isExtendedTestDrive,"data-pre-launch":b.preLaunchEnabled,"data-name":b.dataName}).text(b.name)):b.dealerServiceMapping?c.find(a).find(S.selectors.selectBox).append($("<option></option>").attr({value:b.id,"data-name-and-path":b.nameAndPath,"data-dealerServiceMapping":b.dealerServiceMapping,"data-car-page":b.carPage}).text(b.name)):c.find(a).find(S.selectors.selectBox).append($("<option></option>").attr({value:b.id,"data-name-and-path":b.nameAndPath,"data-car-page":b.carPage,"data-extended-test-drive":b.isExtendedTestDrive,"data-pre-launch":b.preLaunchEnabled,"data-name":b.dataName}).text(b.name)))}function p(a){var b=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).attr("data-phase"),c=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).attr("data-year"),d=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).attr("data-car-page");b&&c&&(a.find(".model-phase").val(b),a.find(".model-year").val(c)),S.HELIOS=S.HELIOS||{},S.HELIOS.adobe=S.HELIOS.adobe||{},S.HELIOS.adobe.tagging=S.HELIOS.adobe.tagging||{};var e=S.HELIOS.vehicle?S.HELIOS.vehicle.year:null,f=S.HELIOS.adobe.tagging.vehicleYear,g=c||e||f;S.HELIOS.adobe.tagging.vehicleYear=g||void 0,d&&a.find(".car-page").val(d),w(a)}function q(a){var c,d,e=a.find(S.selectors.chooseModel).find(R.selectors.selectBox),f=e.parents("[data-prepopulation-url]").data("prepopulationUrl");b.getSavedData(f).done(function(e){c=r(e,a),$.isEmptyObject(c)?v(f,e,a):b.getDataFallback(f,c).done(function(b){d=$.extend({},e,b),v(f,d,a)})})}function r(a,b){var c={};return b.find(S.data.storageKey).each(function(){a.hasOwnProperty($(this).data("storageKey"))||(c[$(this).data("storageKey")]="SERVER_STORAGE")}),c}function s(a){return'<source srcset="'+(!1!==a.highResolutionSrc?[a.src,[a.highResolutionSrc,a.highResolutionDensity+"x"].join(" ")].join(", "):a.src)+'" media="(min-width: '+a.minWidth+'em)" />'}function t(a,b,d,e,f){var g,h="",i="<picture>";return $.each(f,function(){this.image&&!c.isEmpty(this.image.smartImageModelList)&&(this.id==b||this.modelId==b&&this.id==d||this.modelId==b&&this.id==e)&&(this.image.smartImageModelList.sort(function(a,b){return b.minWidth-a.minWidth}),g=this.image.smartImageModelList.length-1,c.each(this.image.smartImageModelList,function(a,b){i+=s(a),b===g&&(h='<img src="'+a.src+'" alt="'+a.alt+'" >')}))}),i=i+h+"</picture>"}function u(a,b){if(P){var e,f,g,h=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).val(),i=a.find(S.selectors.chooseVersion).find(S.selectors.optionSelected).val(),j=a.find(S.selectors.chooseGrade).find(S.selectors.optionSelected).val(),k=a.find(S.selectors.figureContainer);if(O.models&&$.each(O.models,function(){this.id==h&&d.saveItem(S.selectedModel,this,S.storageManagerOptions.sessionStorage)}),b==S.attrs.model||b==S.attrs.grade&&c.isEmpty(j)?(e=h&&t(a,h,null,null,O.models),f=S.attrs.model):b==S.attrs.grade?(e=j&&t(a,h,j,null,O.grades),f=S.attrs.grade):b==S.attrs.version&&(Q&&(e=i&&t(a,h,j,i,O.versions)),f=S.attrs.version),e){if("model"===f&&(g=window.setTimeout(function(){k.hasClass(S.classes.load)||k.addClass(S.classes.spinner)},3e3)),k.find(S.selectors.alivePictureTag).find("img").length&&c.contains(e,k.find(S.selectors.alivePictureTag).find("img").attr("src")))return clearTimeout(g),!1;0===k.children().length&&k.addClass(S.classes.empty),k.find("picture").addClass(S.classes.ghost),k.hasClass(S.classes.imageError)||k.removeClass(S.classes.load),k.find(S.selectors.ghost).find("img")[0]&&k.find(S.selectors.ghost).find("img")[0].naturalHeight&&k.height(k.find(S.selectors.ghost).outerHeight(!0)),k.append(e),k.find(S.selectors.aliveImage).on(S.attrs.load,function(){k.removeClass(S.classes.imageError),k.height(k.find(S.selectors.alivePictureTag).outerHeight(!0)),k.hasClass(S.classes.empty)?k.one("webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend",function(){k.addClass(S.classes.load)}):k.addClass(S.classes.load),k.removeClass(S.classes.empty),clearTimeout(g),k.find(S.selectors.ghost).length?k.find(S.selectors.ghost).one("webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend",function(){k.find(S.selectors.ghost).remove(),k.removeClass(S.classes.spinner)}):k.removeClass(S.classes.spinner),k.addClass(S.classes.imagePresent),window.innerWidth<=HELIOS.config.common.mediaQuery.breakpointsPx.small&&!$(S.selectors.carAdminDataSelector).prev().length&&$("html, body").animate({scrollTop:$(this).offset().top-30},"slow")}),k.find(S.selectors.aliveImage).on(S.attrs.error,function(){k.removeClass(S.classes.load),"model"===f?(k.addClass(S.classes.imageError),k.removeAttr("style"),k.removeClass(S.classes.imagePresent),k.removeClass(S.classes.spinner),k.empty(),k.addClass(S.classes.empty)):"grade"===f?(k.addClass(S.classes.imageError),u(a,"model")):"version"===f&&(k.addClass(S.classes.imageError),u(a,"grade")),clearTimeout(g)})}else k.removeClass(S.classes.load),"model"===f?(k.addClass(S.classes.imageError),k.removeAttr("style"),k.removeClass(S.classes.imagePresent),k.removeClass(S.classes.spinner),k.empty(),k.addClass(S.classes.empty)):"grade"===f?(k.addClass(S.classes.imageError),u(a,"model")):"version"===f&&(k.addClass(S.classes.imageError),u(a,"grade")),clearTimeout(g)}}function v(a,b,c){var d=c.find(S.selectors.chooseModel).find(R.selectors.selectBox),e=c.find(S.selectors.chooseGrade).find(R.selectors.selectBox),f=c.find(S.selectors.choose
49Engine).find(R.selectors.selectBox),g=c.find(S.selectors.chooseVersion).find(R.selectors.selectBox),h=c.find(S.selectors.chooseColour).find(R.selectors.selectBox),i="storageKey";d.data(i)&&b.hasOwnProperty(d.data(i))&&(z(b[d.data(i)],c),e.data("storageKey")&&(b.hasOwnProperty(e.data("storageKey"))&&(B(b[e.data("storageKey")],c),f.data("storageKey")&&b.hasOwnProperty(f.data("storageKey"))&&(C(b[f.data("storageKey")],c),h.data("storageKey")&&b.hasOwnProperty(h.data("storageKey"))&&D(b[h.data("storageKey")],c))),g.data("storageKey")&&b.hasOwnProperty(g.data("storageKey"))&&(A(b[g.data("storageKey")],c),h.data("storageKey")&&b.hasOwnProperty(h.data("storageKey"))&&D(b[h.data("storageKey")],c)))),w(c)}function w(a){var b=a.find(S.selectors.chooseModel).find(S.selectors.optionSelected).val(),c=a.parents(S.selectors.parentComponent19).find('input[name="'+S.constants.vehicleModelHiddenField+'"]');b||(c.length>0&&c.val(""),d.saveItem(S.vehicleModel,""),a.find(S.selectors.chooseModel).closest(S.selectors.formGroup).removeClass(S.classes.complete))}function x(b){var c=a.getUrlParams();c.c020_model&&(z(c.c020_model,b),c.c020_grade&&(B(c.c020_grade,b),c.c020_engine&&(C(c.c020_engine,b),c.c020_colour&&D(c.c020_colour,b)),c.c020_version&&(A(c.c020_version,b),c.c020_colour&&D(c.c020_colour,b)))),c.bookingType&&y(c.bookingType,b)}function y(a,b){var c,e=$(S.selectors.defaultTestdriveOption).val(),f=d.loadItem(S.lastVisitedVehicle);S.HELIOS&&S.HELIOS.components.c_019_31&&S.HELIOS.components.c_019_31.rtb&&(a!=S.testDriveTye.extendedTestDrive?($(S.selectors.radioContainerParent).find('input[value="'+a+'"]').prop(S.events.checked,!0),b.options.eventAggregator.trigger("changeModelSelectHomeTestdrive")):f?(c=b.find(S.selectors.chooseModel+" option[value="+f+"]").data(S.attrs.isExtendedTestDriveSupported),c?b.options.eventAggregator.trigger("enableExtendedTestDrive"):($(S.selectors.radioContainerParent).find('input[value="'+e+'"]').prop(S.events.checked,!0),b.options.eventAggregator.trigger("changeModelSelectHomeTestdrive"))):b.options.eventAggregator.trigger("enableExtendedTestDrive"))}function z(a,b){$.each(O.models,function(c){var e,f,g;this.id===a&&(b.find(S.selectors.chooseModel).find(S.selectors.selectBox).val(a),b.find(S.selectors.chooseModel).find(S.selectors.selectedValue).text(this.name),b.find(S.selectors.chooseModel).prop("selectedIndex",c),h(S.selectors.chooseVersion,S.selectors.chooseModel,"nameAndPath",O.versions,b),h(S.selectors.chooseGrade,S.selectors.chooseModel,"nameAndPath",O.grades,b),e=b.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.dealerServiceMapping),f=b.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.isExtendedTestDriveSupported),g=b.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.isPreLaunchModel),n(g,b.options.eventAggregator),S.HELIOS&&S.HELIOS.components.c_019_31&&S.HELIOS.components.c_019_31.rtb?setTimeout(function(){F(L.selectModel,a,b,!0),b.options.eventAggregator.trigger("changeModelSelect",e,this.name,a),H()&&!g&&(b.options.eventAggregator.trigger("changeModelSelectHomeTestdrive"),b.options.eventAggregator.trigger("changeExtendedTestdriveState",f))}.bind(this),2e3):b.options.eventAggregator.trigger("changeModelSelect",e,this.name),u(b,S.attrs.model),b.find(S.selectors.chooseModel).closest(S.selectors.formGroup).addClass(S.classes.complete),d.saveItem(S.lastVisitedVehicle,a),d.saveItem(S.vehicleModel,this.name),U=!0,p(b))}),I(b)}function A(a,b){var c=b.find(S.selectors.chooseGrade).find(S.selectors.optionSelected).attr("value"),d=b.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.namePath);$.each(O.versions,function(){this.id===a&&this.gradeId===c&&this.nameAndPath===d&&(b.find(S.selectors.chooseVersion).find(S.selectors.selectBox).val(a),b.find(S.selectors.chooseVersion).find(S.selectors.selectedValue).text(this.name),k(b))})}function B(a,b){var c=b.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.namePath);$.each(O.grades,function(){this.id===a&&this.nameAndPath&&this.nameAndPath===c&&(b.find(S.selectors.chooseGrade).find(S.selectors.selectBox).val(a),b.find(S.selectors.chooseGrade).find(S.selectors.selectedValue).text(this.name),f(b))})}function C(a,b){var c=b.find(S.selectors.chooseGrade).find(S.selectors.optionSelected).attr("value"),d=b.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.namePath);$.each(O.engines,function(){this.id===a&&this.gradeId===c&&this.nameAndPath===d&&(b.find(S.selectors.choose
49Engine).find(S.selectors.selectBox).val(a),b.find(S.selectors.chooseEngine).find(S.selectors.selectedValue).text(this.name),k(b))})}function D(a,b){var c=b.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.namePath),d=b.find(S.selectors.chooseGrade).find(S.selectors.optionSelected).attr("value"),e=b.find(S.selectors.chooseEngine).find(S.selectors.optionSelected).attr("value"),f=b.find(S.selectors.chooseVersion).find(S.selectors.optionSelected).attr("value");$.each(O.colours,function(){this.id===a&&this.nameAndPath===c&&("engines"===N?this.engineId&&this.engineId===e&&this.gradeId&&this.gradeId===d&&(b.find(S.selectors.chooseColour).find(S.selectors.selectBox).val(a),b.find(S.selectors.chooseColour).find(S.selectors.selectedValue).text(this.name)):this.versionId&&this.versionId===f&&(b.find(S.selectors.chooseColour).find(S.selectors.selectBox).val(a),b.find(S.selectors.chooseColour).find(S.selectors.selectedValue).text(this.name)))})}function E(){K=S.analyticsManager.trackingVars.vehicleSelector,L=S.analyticsManager.getTrackingObjectProperties(K)}function F(a,b,c,d){var e={};S.analyticsManager?(e=G(c),e[a]=b,e[L.selectDropdown]=d?S.tracking.modelAutoSelection:T[a],e.vehicleId=c.find(S.selectors.chooseModel).find(S.selectors.selectBox).val(),e.preLaunchVehicle=c.find(S.selectors.chooseModel).find(S.selectors.optionSelected).data(S.attrs.isPreLaunchModel),S.analyticsManager.tag(K,e)):log.warn("analyticsManager not being passed to C20 - tracking disabled for this component")}function G(a){var b,c;return M?(delete M[L.selectModel],delete M[L.selectGrade],delete M[L.selectEngine],delete M[L.selectVersion],delete M[L.selectColour]):(M={},T[L.selectModel]="Model",T[L.selectGrade]="Grade",T[L.selectEngine]="Engine",T[L.selectVersion]="Version",T[L.selectColour]="Colour",S.HELIOS.components.c_019_31&&S.HELIOS.components.c_019_31.rtb&&(M.parentComponent=S.tracking.parentComponent),M[L.formName]=S.HELIOS.adobe.tagging.formName||S.tracking.componentId,M[L.formStepName]=S.tracking.formStepName,M.componentId=S.tracking.componentId,M.vehicleId=a.find(S.selectors.chooseModel).find(S.selectors.selectBox).val(),b=a.parents('[class^="c_"], [class*=" c_"]'),b.length?(c=b.data("tracking"))&&(M[L.formName]=c[L.formName]||"unknown",M[L.parentComponent]=c.componentId||"unknown"):M[L.formName]=S.tracking.formName),M}function H(){return S.HELIOS&&S.HELIOS.components.c_019_31&&S.HELIOS.components.c_019_31.homeTestDriveEnabled}function I(a){a.options.eventAggregator.trigger("dynamicModelDataSelected",{model:J.find(".select-model select").val(),grade:J.find(".select-grade select").val(),version:J.find(".select-version select").val(),gradeOptions:J.find(".select-grade select option"),versionOptions:J.find(".select-version select option")})}var J,K,L,M,N,O,P,Q,R={selectors:{root:".c_020",chooseModel:".select-model",hiddenField:".hiddenfield",parentComponent19:".c_019",chooseGrade:".select-grade",chooseEngine:".select-engine",chooseVersion:".select-version",chooseColour:".select-colour",selectBox:"select",selectedValue:".selectedValue",selectModel:".select-model",optionSelected:"option:selected",disabled:"disabled",figureContainer:".figure-container",pictureContainer:".figure-container picture",figureContainerImage:".figure-container picture img",carAdminDataSelector:".caradmindataselector",form:"form",ghost:".ghost",aliveImage:"picture:not(.ghost) img",alivePictureTag:"picture:not(.ghost)",formGroup:".form-group",defaultTestdriveOption:".c_019-32 input[type=radio][data-default-testdrive=true]",radioContainerParent:".c_019-32 .radio-container-parent",preLaunchMessage:"span.pre-launch-message",testdriveTypeSelector:".rtbserviceselector .c_019-32",preLaunchRadiusSearchNoResultsMessage:".pre-launch-search-message-container",preLaunchHiddenInput:"[name=preLaunchEnabled]",targetVehicleType:"[name='targetVehicleType']"},attrs:{filterLevels:"filter-levels",info:"info",namePath:"name-and-path",dealerServiceMapping:"dealerservicemapping",imageAvailable:"image-available",vehicleSelectionType:"vehicle-selection",model:"model",grade:"grade",version:"version",load:"load",error:"error",hasValidation:"hasValidation",undecidedTxt:"undecided-txt",undecidedVal:"undecided-val",useCustomerFacingGradeName:"use-customer-facing-grade-name",isExtendedTestDriveSupported:"extended-test-drive",isPreLaunchModel:"pre-launch"},data:{storageKey:"[data-storage-key]"},classes:{active:"active",hidden:"hidden",spinner:"spinner",imageError:"image-error",load:"load",ghost:"ghost",complete:"complete",empty:"empty",imagePresent:"image-present"},events:{checked:"checked"},tracking:{componentId:"C20_Dropdown_Boxes",formName:"Vehicle selector",formStepName:"Dropdown-boxes",parentComponent:"
49c_019-31",modelAutoSelection:"model|automatic selection"},constants:{fadeTime:1e3,vehicleModelHiddenField:"vehicleModel",nissanPrefix:"nissan"},selectedModel:"selectedModelDetails",lastVisitedVehicle:"lastVisitedVehicle",vehicleModel:"vehicleModel",storageManagerOptions:{sessionStorage:{mode:"sessionStorage"}},testDriveTye:{extendedTestDrive:"extended"}},S=null,T={},U=!1;return{init:e,defaults:R,populateDropdownChildren:h}}),define("formbuilder",["underscore","customSelect","c_019","c_019_20","c_019_22","c_019_23","c_019_25","c_019_25B","c_019_26","c_019_27","c_019_29","c_019_30","c_019_31","c_019_32","c_019_34","c_019_36","c_019_37","c_019_38","c_019_39","c_019_40","c_019_11C","c_020"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v){function w(w){x=a.extend({},y,w),$el=x.$el,b.init(),c_019_25=new g($el.find(".c_019-25"),{HELIOS:x.HELIOS,analyticsManager:x.analyticsManager,smartLocationContext:x.smartLocationContext,window:x.window,eventAggregator:x.eventAggregator,isConfigurator:x.isConfigurator}),c_019_25B=new h($el.find(".c_019-25B"),{HELIOS:x.HELIOS,analyticsManager:x.analyticsManager,smartLocationContext:x.smartLocationContext,window:x.window,eventAggregator:x.eventAggregator,isConfigurator:x.isConfigurator}),c_019=new c($el.find(".c_019"),{HELIOS:x.HELIOS,analyticsManager:x.analyticsManager,smartLocationContext:x.smartLocationContext,window:x.window,eventAggregator:x.eventAggregator,isConfigurator:x.isConfigurator,containerPageType:x.containerPageType,sourceComponentId:x.sourceComponentId,scrollableElement:x.scrollableElement,customFormHandler:x.customFormHandler,isInline:x.isInline,brochuresModal:x.brochuresModal,personalShowroomInlineForm:x.personalShowroomInlineForm,offersHubInlineForm:x.offersHubInlineForm,globalFinanceCalculator:x.globalFinanceCalculator}),c_019_22=new e($el,{HELIOS:x.HELIOS,analyticsManager:x.analyticsManager,window:x.window}),c_019_20=new d($el,{HELIOS:x.HELIOS}),c_019_23=new f($el,{HELIOS:x.HELIOS,analyticsManager:x.analyticsManager,window:x.window}),c_019_26=new i($el,{HELIOS:x.HELIOS,analyticsManager:x.analyticsManager,window:x.window}),c_019_27=new j($el),c_019_29=new k($el,{HELIOS:x.HELIOS,analyticsManager:x.analyticsManager,window:x.window}),c_019_30=new l($el,{HELIOS:x.HELIOS,analyticsManager:x.analyticsManager,window:x.window}),c_019_31=new m.init({window:x.window,analyticsManager:x.analyticsManager,HELIOS:x.HELIOS,eventAggregator:x.eventAggregator}),c_019_32=new n.init({window:x.window,HELIOS:x.HELIOS,analyticsManager:x.analyticsManager,eventAggregator:x.eventAggregator}),c_019_34=new o.init({window:x.window,analyticsManager:x.analyticsManager,HELIOS:x.HELIOS}),c_019_36=new p.init({window:x.window,analyticsManager:x.analyticsManager,HELIOS:x.HELIOS}),c_019_37=new q.init({window:x.window,analyticsManager:x.analyticsManager,HELIOS:x.HELIOS,eventAggregator:x.eventAggregator}),c_019_38=new r.init({window:x.window,analyticsManager:x.analyticsManager,HELIOS:x.HELIOS}),c_019_39=new s.init({window:x.window,analyticsManager:x.analyticsManager,eventAggregator:x.eventAggregator,HELIOS:x.HELIOS}),c_019_40=new t.init({window:x.window,analyticsManager:x.analyticsManager,eventAggregator:x.eventAggregator,HELIOS:x.HELIOS}),c_019_11C=new u.init({window:x.window,HELIOS:x.HELIOS,analyticsManager:x.analyticsManager}),c_020=new v.init({HELIOS:x.HELIOS,analyticsManager:x.analyticsManager,eventAggregator:x.eventAggregator})}var x,y={keyName:"queryParamsData",mode:"sessionStorage"};return{init:w}}),define("c_322",["jquery"],function(a){"use strict";function b(b){if(h=a.extend({},g,b),e=a(h.selectors.root),!e.length)return!1;f=e.find(h.selectors.button),c()}function c(){f.on(h.events.click,function(b){var c,e;a(b.currentTarget).toggleClass(h.classes.active),a(b.currentTarget).hasClass(h.classes.active)?(c=a(h.selectors.showCTA).text(),e=h.analytics.expand):(c=a(h.selectors.hideCTA).text(),e=h.analytics.collapse),d(c,e)})}function d(a,b){var c={componentId:h.analytics.componentId,contentAction:h.analytics.content+b,locationInPage:h.analytics.locationInPage,buttonText:a};h.analyticsManager.tag(h.analyticsManager.trackingVars.buttonNoCookie,c)}var e,f,g={events:{click:"click"},classes:{active:"active"},selectors:{root:".c_322",button:"button",showCTA:".c_322 button span.show",hideCTA:".c_322 button span.hide"},analytics:{componentId:"C322_How_It_Works",content:"content:",locationInPage:"learn-how-it-works",expand:"expand",collapse:"collapse"}},h=null;return{init:b}}),define("c_026",["underscore","storageManager","storageManagerKeys","myPageApi"],function(a,b,c,d){"use strict";function e(a){m=$.extend({},l,a),k=$(m.root),b.init(),j=m.HELIOS.adobe.tagging.componentId,k.length&&(f(),g())}
49function f(){if(m.analyticsManager){var d=b.loadItem(m.analytics.analyticsSession,l.storageManagerSessionStorage),e=b.loadItem(c.multipleBrochures.itemKey,l.storageManagerLocalStorage),f=m.analyticsManager,g=f.trackingVars.pageLoad,h=(f.trackingVars.formSteps,f.getTrackingObjectProperties(g)),i={},j=b.loadItem(m.fileUpload.fileUploadKey),n=m.HELIOS.adobe.tagging.formName,o=k.data(m.data.rtbEnabled),p=k.data(m.data.bookingReference);a.isEmpty(o)?(m.HELIOS.adobe.tagging[m.realTimeBooking.realTimePickerKey]=!1,i[m.realTimeBooking.realTimePickerKey]=!1):(m.HELIOS.adobe.tagging[m.realTimeBooking.realTimePickerKey]=!0,i[m.realTimeBooking.realTimePickerKey]=!0),a.isEmpty(p)?(m.HELIOS.adobe.tagging[m.realTimeBooking.realTimeSuccessKey]=!1,i[m.realTimeBooking.realTimeSuccessKey]=!1):(m.HELIOS.adobe.tagging[m.realTimeBooking.realTimeSuccessKey]=!0,i[m.realTimeBooking.realTimeSuccessKey]=!0),d&&(i[h.formCount]=d.formCount.toString(),i[h.formName]=n,i[h.formCategory]=d.formCategory,i[h.formType]=d.formType),e?(i[h.brochureName]=e.brochures.join(","),i[h.brochureAmount]=e.brochures.length,i[h.vehicleModel]=e.model,i[h.vehicleCategory]=e.category,i[h.vehicleId]=e.id):d&&d.hasOwnProperty(m.analytics.vehicleModel)&&(i[h.vehicleModel]=d[m.analytics.vehicleModel]),j&&(j.fileType&&""!==j.fileType&&(m.HELIOS.adobe.tagging[m.fileUpload.fileType]=j.fileType,i[m.fileUpload.fileType]=j.fileType),j.acceptFile&&""!==j.acceptFile&&(m.HELIOS.adobe.tagging[m.fileUpload.acceptFile]=j.acceptFile,i[m.fileUpload.acceptFile]=j.acceptFile),b.deleteItem(m.fileUpload.fileUploadKey)),m.modalWindow&&HELIOS&&HELIOS.adobe&&HELIOS.adobe.tagging?(i=Object.assign({},i,m.trackingObj),i.componentId=HELIOS.adobe.tagging.componentId,i.templateName=HELIOS.adobe.tagging.templateName,i.pageType=HELIOS.adobe.tagging.pageType,i.pageName=HELIOS.adobe.tagging.pageName,i.formName=HELIOS.adobe.tagging.formName,i.formStepName=HELIOS.adobe.tagging.formStepName,i.formStepNumber=HELIOS.adobe.tagging.formStepNumber,$(m.selectors.popupOverlay).length||m.analyticsManager.track(m.trackingVar,i)):m.analyticsManager.append(g,i)}}function g(){var b=sessionStorage.getItem(m.data.isMyPageEnableKey),c=h("session_id");"true"==b&&d.isLoggedIn().then(a.bind(function(b){var d=HELIOS.components.c_026||{},e=b?d.txUpdateInformationLabel:d.txCreateAccountLabel,f=b?d.txUpdateInformationPath:d.txCreateAccountPath,g=b?d.enableUpdateInformationInNewWindow:d.enableCreateAccountInNewWindow,h=b?d.txMyPageTopPageLabel:d.txTopPageLabel,j=b?d.txMyPageTopPagePath:d.txTopPagePath,l=b?d.enableMyPageTopPageInNewWindow:d.enableTopPageInNewWindow,n=$(m.selectors.primaryCta),o=$(m.selectors.secondaryCta);b&&null===c&&(n=null),n&&n.length>0&&(n.text(e),n.attr("href",f),!0===g&&n.attr("target","_blank"),n.addClass(m.classes.show),n.on("click",a.bind(function(){i(f,e)},this))),o&&o.length>0&&(o.text(h),o.attr("href",j),!0===l&&o.attr("target","_blank"),o.addClass(m.classes.show),o.on("click",a.bind(function(){i(j,h)},this))),k.find(m.selectors.myPageCtas).addClass(m.classes.showCtas)},this)),sessionStorage.removeItem(m.data.isMyPageEnableKey)}function h(a){for(var b=a+"=",c=document.cookie.split(";"),d=0;d<c.length;d++){for(var e=c[d];" "==e.charAt(0);)e=e.substring(1,e.length);if(0==e.indexOf(b))return e.substring(b.length,e.length)}return null}function i(a,b){if(m.analyticsManager){var c={},d=m.analyticsManager,e=d.trackingVars.genericClick;c.componentId=HELIOS.adobe.tagging.componentId,c.destination=a,c.buttonText=b,c.locationInPage=m.analytics.locationInPageCTA,m.analyticsManager.track(e,c)}}var j,k,l={root:".c_026",data:{journeyId:"trackingJourneyId",formCategory:"formCategory",formType:"formType",leadId:"leadId",bookingReference:"booking-reference",rtbEnabled:"rtb-enabled",isMyPageEnableKey:"isMyPageEnabled"},analytics:{formCount:"formCount",formName:"formName",formStepName:"confirmation",formStepNumber:"complete",pageType:"confirmation",vehicleModel:"vehicleModel",analyticsSession:"analyticsSession",locationInPageCTA:"confirmation page cta"},storageManagerSessionStorage:{mode:"sessionStorage"},fileUpload:{fileUploadKey:"fileUpload",fileType:"fileType",acceptFile:"acceptFile"},realTimeBooking:{realTimePickerKey:"realTimePicker",realTimeSuccessKey:"realTimeBookingSuccess"},selectors:{myPageCtas:".my-page-ctas",primaryCta:".my-page-ctas .primary-cta",secondaryCta:".my-page-ctas .secondary-cta",popupOverlay:".c_344"},classes:{show:"show",showCtas:"show-ctas"}},m=null;return{init:e}}),define("cookiesManager",["jquery","logger","jqueryCookie"],function(a,b){function c(a){if(void 0===window.cookies&&(window.cookies=[]),void 0!==window.cookies[a])return window.cookies[a];window.cookies[a]=this,this.cookieName=a,this.stack=[],this.expire=864e5,this.domaine=null,this.eventList={},this.init()}return log=new b({prefix:"cookiesManager"}),c.prototype.init=function(){var a=this.get(this.cookieName);if(void 0!==a)try{this.stack=JSON.parse(this.get(this.cookieName))}catch(b){log.warn("JSON.parse failed on cookie: "+a)}},c.prototype.getByItem=function(a,b){for(var c=[],d=0;d<this.stack.length;d++)this.stack[d][a]===b&&c.push(d);return c}
49,c.prototype.focus=function(a){return this.cookieName=a,this},c.prototype.addItem=function(a){return this.stack.push(a),this.updateItems(),this},c.prototype.setItem=function(a){return this.stack=a,this.updateItems(),this},c.prototype.set=function(b,c){var d=null===c?-1:this.expire,e=null===c?-1:this.domain;return this.trigger("change"),a.cookie(b,c,{expires:d,domain:e,path:"/"}),this},c.prototype.trigger=function(a){if(void 0!==this.eventList[a])for(var b=0;b<this.eventList[a].length;b++)this.eventList[a][b]()},c.prototype.off=function(a,b){void 0!==this.eventList[a]&&delete this.eventList[a]},c.prototype.on=function(a,b){void 0===this.eventList[a]&&(this.eventList[a]=[]),this.eventList[a].push(b)},c.prototype.get=function(){return a.cookie(this.cookieName)},c.prototype.deleteCookie=function(){return a.cookie(this.cookieName,null,{path:"/"}),this.stack=[],this},c.prototype.deleteItem=function(a){return this.stack.splice(a,1),this.updateItems(),this},c.prototype.deleteItemByItem=function(a,b){for(var c=this.getByItem(a,b),d=0;d<c.length;d++)this.deleteItem(c[d]);return this},c.prototype.updateItems=function(){return this.set(this.cookieName,JSON.stringify(this.stack)),this},c.prototype.getAll=function(){for(var b=document.cookie.split(";"),c={},d=0;d<b.length;d++){var e=b[d].split("=");e[0]=a.trim(e[0]),c[e[0]]=JSON.parse(window.unescape(e[1]))}return c},c}),define("c_026_1",["underscore","handlebars","storageManager","storageManagerKeys"],function(a,b,c,d){"use strict";function e(a){if(p=$.extend({},o,a),n=$(p.selectors.root),c.init(),m=p.HELIOS.adobe.tagging.componentId,!n.length)return!1;h(),f()}function f(){var a=n.find(p.selectors.paramKey);if(a&&a.length>0){var b=a.first(),c=g(b);null!==c&&b.attr("href",c)}}function g(a){var b=a.data(p.data.paramKey);return localStorage.getItem(b)}function h(){i(),j(),k(),l()}function i(){var a,d=c.loadItem(p.selectedModel,p.storageManagerSessionStorage)||!1,e=c.loadItem(p.modelDetails,p.storageManagerSessionStorage)||!1,f=c.loadItem(p.vinDetails,p.storageManagerSessionStorage)||!1,g={};if(f&&f.gradename||delete e.gradename,d&&$("script[data-template=textdrive-vehicle-details-template]").length){var h=!!d.image&&d.image.smartImageModelList;a=b.compile($("script[data-template=textdrive-vehicle-details-template]").html()),g.header=d.name?d.name:"",h&&(g.desktopImage=h&&h.length>2?h[2].src||"":"",g.tabletImage=h&&h.length>1?h[1].src||"":"",g.mobileImage=h&&h.length>0?h[0].src||"":""),g.imageAlt=d.image?d.image.alt||"":"",$(p.selectors.testdriveDetails).after(a(g)),c.deleteItem(p.selectedModel,p.storageManagerSessionStorage)}if(e&&$("script[data-template=textdrive-vehicle-details-template]").length&&(a=b.compile($("script[data-template=textdrive-vehicle-details-template]").html()),$(p.selectors.testdriveDetails).after(a(e)),c.deleteItem(p.modelDetails,p.storageManagerSessionStorage)),f&&$("script[data-template=vin-template]").length){var i=b.compile($(p.selectors.versionTemplate).html());$(p.selectors.vehicleDetails).after(i(f))}}function j(){if(p.analyticsManager){var b=c.loadItem(p.analytics.analyticsSession,o.storageManagerSessionStorage),e=c.loadItem(d.multipleBrochures.itemKey,o.storageManagerLocalStorage),f=p.analyticsManager,g=f.trackingVars.pageLoad,h=f.getTrackingObjectProperties(g),i={},j=c.loadItem(p.fileUpload.fileUploadKey),k=p.HELIOS.adobe.tagging.formName,l=n.data(p.data.rtbEnabled);a.isEmpty(l)?(p.HELIOS.adobe.tagging[p.realTimeBooking.realTimePickerKey]=!1,i[p.realTimeBooking.realTimePickerKey]=!1):(p.HELIOS.adobe.tagging[p.realTimeBooking.realTimePickerKey]=!0,i[p.realTimeBooking.realTimePickerKey]=!0),b&&(i[h.formCount]=b.formCount.toString(),i[h.formName]=k,i[h.formCategory]=b.formCategory,i[h.formType]=b.formType),e?(i[h.brochureName]=e.brochures.join(","),i[h.brochureAmount]=e.brochures.length,i[h.vehicleModel]=e.model,i[h.vehicleCategory]=e.category,i[h.vehicleId]=e.id):b&&b.hasOwnProperty(p.analytics.vehicleModel)&&(i[h.vehicleModel]=b[p.analytics.vehicleModel]),j&&(j.fileType&&""!==j.fileType&&(p.HELIOS.adobe.tagging[p.fileUpload.fileType]=j.fileType,i[p.fileUpload.fileType]=j.fileType),j.acceptFile&&""!==j.acceptFile&&(p.HELIOS.adobe.tagging[p.fileUpload.acceptFile]=j.acceptFile,i[p.fileUpload.acceptFile]=j.acceptFile),c.deleteItem(p.fileUpload.fileUploadKey)),p.analyticsManager.append(g,i)}}function k(){n.find(p.selectors.genericClickCta).on(p.events.click,function(a){var b=p.analyticsManager.trackingVars.genericClick,c=p.analyticsManager.getTrackingObjectProperties(b),d=$(this).text().trim(),e=$(this).attr(p.attributes.href),f={},g=!1;f[c.componentId]=p.analytics.componentId,f[c.destination]=e,$(p.selectors.dwsFeature).length?(f[c.buttonText]=d+p.str
49ings.cta,f[c.locationInPage]=p.analytics.dwsLocationInPage):(f[c.buttonText]=d,f[c.locationInPage]=p.analytics.locationInPage),a.type===p.events.touchstart&&(g=!0),!g&&p.analyticsManager.track(b,f)})}function l(){n.find(p.selectors.dealerPhoneLink).off().on(p.events.click,function(a){var b=p.analyticsManager.trackingVars.dealerInteraction,c=p.analyticsManager.getTrackingObjectProperties(b),d=$(p.selectors.dealerDetailsContainer).find(p.selectors.dealerName).text().trim(),e={},f=!1;e[c.componentId]=p.analytics.componentId,e[c.dealerName]=d,
50e[c.dealerAddress]=p.HELIOS.adobe.tagging.dealerAddress,e[c.dealerId]=p.HELIOS.adobe.tagging.dealerId,e[c.dealerAction]=p.analytics.dealerPhoneLinkAction,a.type===p.events.touchstart&&(f=!0),!f&&p.analyticsManager.track(b,e)})}var m,n,o={events:{click:"touchstart click",touchstart:"touchstart"},selectors:{root:".c_026-1",genericClickCta:".js-generic-click-tracking",selectedModelDetails:".selected-model-details",versionTemplate:"script[data-template=vin-template]",testdriveDetails:".testdrive-details",dwsFeature:".dws-rtb-form",paramKey:"[data-param-key]",vehicleDetails:".vehicle-details",dealerDetailsContainer:".dealer-details .details",dealerName:"h3",dealerAddress:".address",dealerPhoneLink:".dealer-phone-link"},data:{journeyId:"trackingJourneyId",formCategory:"formCategory",formType:"formType",leadId:"leadId",rtbEnabled:"rtb-enabled",paramKey:"param-key"},analytics:{formCount:"formCount",formName:"formName",formStepName:"confirmation",formStepNumber:"complete",pageType:"confirmation",vehicleModel:"vehicleModel",analyticsSession:"analyticsSession",componentId:"C26.1_Confirmation_Page",locationInPage:"confirmation page cta",dwsLocationInPage:"dws-pace-form",spinnerTimer:"spinnerTimer",dealerPhoneLinkAction:"call"},storageManagerSessionStorage:{mode:"sessionStorage"},fileUpload:{fileUploadKey:"fileUpload",fileType:"fileType",acceptFile:"acceptFile"},realTimeBooking:{realTimePickerKey:"realTimePicker"},attributes:{href:"href"},strings:{cta:"-cta"},selectedModel:"selectedModelDetails",modelDetails:"modelDetails",vinDetails:"vinDetails"},p=null;return{init:e}}),define("c_344",["jquery","backbone","formbuilder","modal","c_322","c_026","c_020","c_040","storageManager","underscore","cookiesManager","c_026_1"],function(a,b,c,d,e,f,g,h,i,j,k,l){"use strict";function m(b){if(w=a.extend({},v,b),p=a(w.selectors.root),!p.length)return!1;i.init(),s=i.loadItem(w.storage.localStorageKey)||!1,u=p.data(w.dataAttribute.targetTrigger),t=new k("popupFormTrigger"),document.querySelector('.c_344[data-form-triggered="true"]')?o(!0):s&&!u||(u&&(j.isUndefined(t.get())||"true"!=t.get())?a(window).scroll(function(){j.isUndefined(t.get())||"true"!=t.get()||this.popupOnScroll||(this.popupOnScroll=!0,o())}.bind(this)):o())}function n(){return w.smartLocationContext}function o(b,k){function m(){var a=setInterval(function(){var b=i.loadItem(w.storage.activeModalStorageKey);b&&0!==b.activeModalCount||(o(5e3),clearInterval(a))},1e3)}function o(a){var b=a||D;setTimeout(function(){var a=i.loadItem(w.storage.activeModalStorageKey);a&&0!==a.activeModalCount?m():s()},b)}function s(){if(!b){if(document.querySelector('.c_443[data-prompt-triggered="true"]')||document.querySelector('.c_344[data-form-triggered="true"]'))return}q=new d({displayType:d.TYPE_RIGHTSLIDE,customClass:w.classes.customModalClass,customOverlayClass:"modal-overlay-dark form-in-popup-custom-overlay",preventScrollTop:!0}),n()&&n()._storeCustomLocalStorageExpiryDays(w.storage.localStorageKey,w.storage.storageValue,w.storage.expiryDays),q.open().done(function(){var b=document.querySelector(w.selectors.modalContentSelector);a(w.selectors.modalContentSelector).addClass(w.classes.loading),b.innerHTML="",a.ajax({type:"GET",url:B,dataType:"html",success:j.bind(function(a){z=a})}),a.ajax({type:"GET",url:A,dataType:"html",success:j.bind(function(d){var i;a(w.selectors.modalContentSelector).removeClass(w.classes.loading),b.innerHTML=d,a(w.selectors.modalContentSelector).prepend(z),r=w.eventAggregator,i=a(w.selectors.modalContentSelector).find('script[type!="text/x-handlebars-template"]'),a(w.selectors.modalScripts).remove(),a(w.classes.body).append('<div class="modal-scripts-c_344"></div>'),a.each(i,function(b){var c=i[b].outerHTML;a(w.selectors.modalScripts).append(c)}),c.init({HELIOS:w.HELIOS,window:w.window,$el:a(w.selectors.modal),analyticsManager:w.analyticsManager,isInline:!0,eventAggregator:r,smartLocationContext:w.smartLocationContext}),v(),window.eventAggregator.on("formResponse",function(c){if(c&&c.responseData&&(c.responseData.result===w.ajaxResponse.success||c.responseData.success)){var d,e,g,h=c.trackingObject,k=c.trackingVar,m=c.trackingObject;w.HELIOS&&w.HELIOS.components&&w.HELIOS.components.c_019_31?(d=c.isRtbFallback?w.HELIOS.components.c_019_31.fallbackOverlayPath:w.HELIOS.components.c_019_31.successOverlayPath,e=c.isRtbFallback?w.HELIOS.components.c_019_31.fallbackOverlayHeader:w.HELIOS.components.c_019_31.successOverlayHeader):d=C,a.ajax({type:"GET",url:d,dataType:"html"}).done(function(c){b.innerHTML=c,i=a(w.selectors.modalContentSelector).find('script[type!="text/x-handlebars-template"]'),a(w.selectors.modalScripts).remove(),a(w.classes.body).append('<div class="modal-scripts-c_344"></div>'),a.each(i,function(b){a(w.selectors.modalScripts).append(i[b].outerHTML)}),l.init({HELIOS:w.HELIOS,window:w.window,analyticsManager:w.analyticsManager,modalWindow:!0,trackingObj:h,trackingVar:k}),f.init({HELIOS:w.HELIOS,window:w.window,analyticsManager:w.analyticsManager,modalWindow:!0,trackingObj:h,trackingVar:k});try{g=a(w.selectors.formsOverlayThankyouPageTracking).length&&JSON.parse(j.unescape(a(w.selectors.formsOverlayThankyouPageTracking).html())),x(g,m)}catch(error){throw new Error("Cannot parse Overlay tracking JSON")}j.isUndefined(e)||a.ajax({type:"GET",url:e,dataType:"html",success:j.bind(function(b){a(w.selectors.headerSection).eq(0).prepend(b)})})})}else if(c&&c.jqXHRResponse&&c.jqXHRResponse.statusText===w.ajaxResponse.error&&409!==c.jqXHRResponse.status||c&&c.responseData&&c.responseData.result===w.ajaxResponse.failure){if(a(w.selectors.overlayErrorC
50ontent).length>0&&a(w.selectors.errorContent).remove(),c&&c.responseData)a(w.selectors.modalFormErrorSection).prepend('<div class="error-content error-group-light"><p>'+c.responseData.errorMessage+"</p></div>");else if(c&&c.jqXHRResponse&&c.jqXHRResponse.statusText===w.ajaxResponse.error&&409!==c.jqXHRResponse.status){var n=a(w.selectors.formBuilder).attr(w.dataAttribute.overlayServerErrorMsg);a(w.selectors.modalFormErrorSection).prepend('<div class="error-content error-group-light"><p>'+n+"</p></div>")}a(w.selectors.primarySpinner)[0]&&a(w.selectors.primarySpinner).addClass("hidden"),a(w.selectors.submitFormButton).removeClass(w.classes.btnDisabled).prop(w.attributes.disabled,!1),t()}}),e.init({window:w.window,HELIOS:w.HELIOS,analyticsManager:w.analyticsManager}),g.init({HELIOS:w.HELIOS,window:w.window,analyticsManager:w.analyticsManager,eventAggregator:r}),h.init({window:w.window,HELIOS:w.HELIOS,analyticsManager:w.analyticsManager,smartLocationContext:w.smartLocationContext,eventAggregator:r})})})})}function t(){var b=a(w.selectors.overlayElement),c=b.find(w.selectors.errorContent);b.length>0&&c.length>0&&b.animate({scrollTop:c.offset().top-b.offset().top+b.scrollTop()},700)}function v(){y();var b=a(w.selectors.formBuilder),c=w.analyticsManager.trackingVars.formSteps,d=w.analyticsManager.getTrackingObjectProperties(c),e=w.analytics.componentId,f=w.HELIOS.adobe.tagging.pageName+"|"+w.analytics.popInForm,g=w.HELIOS.adobe.tagging.formName||b.data(w.dataAttribute.formName),h=w.HELIOS.adobe.tagging.formType||b.data(w.dataAttribute.formType),i=w.HELIOS.adobe.tagging.formCategory||b.data(w.dataAttribute.formCategory),j=w.analytics.popInForm,k=w.analytics.formStepNumber,l={};l[d.componentId]=e,l[d.pageName]=f,l[d.formType]=h,l[d.formCategory]=i,l[d.formStepName]=j,l[d.formStepNumber]=k,l[d.formName]=g,HELIOS&&HELIOS.components&&(HELIOS.components.c_019_31&&(l[d.homeTestDrive]=HELIOS.components.c_019_31.homeTestDriveEnabled,HELIOS.components.c_019_31.rtb&&(l[d.realTimePicker]=w.analytics.enabled)),HELIOS.components.c_019_32&&(l[d.extendedTestDrive]=HELIOS.components.c_019_32.extendedTestDrive)),w.analyticsManager.track(c,l)}function x(b,c){var d,e=w.analyticsManager.trackingVars.formSteps,f=w.analyticsManager.getTrackingObjectProperties(e),g={},h=Object.keys(b),i=Object.keys(b.dtmStoreFieldsJson);a.each(h,function(a){d=h[a],j.isUndefined(f[d])||(f[d]==f.pageName||f[d]==f.formName&&HELIOS.components&&!HELIOS.components.c_026?g[f[d]]=b[d]+"|"+w.analytics.popInForm:g[f[d]]=b[d])}),a.each(i,function(a){d=i[a],j.isUndefined(f[d])||g[d]||(g[f[d]]=b.dtmStoreFieldsJson[d])}),Object.keys(c).length&&(g[f.formSubmission]=c.formSubmission,g[f.formSubmissionSuccess]=c.formSubmissionSuccess),g[f.realTimePicker]=!!a(w.selectors.dynamicThankyouPageRoot).data(w.dataAttribute.rtbEnabled),j.isUndefined(HELIOS.adobe.tagging.realTimeBookingSuccess)||(g[f.realTimeBookingSuccess]=HELIOS.adobe.tagging.realTimeBookingSuccess),w.analyticsManager.track(e,g)}function y(){"undefined"!=typeof adobe&&adobe.target&&adobe.target.trackEvent({mbox:"target-global-mbox",params:{c344_popin_displayed:"true"}})}var z,A=p.data(w.dataAttribute.formAsset),B=p.data(w.dataAttribute.formHeaderAsset),C=p.data(w.dataAttribute.formConfirmationAsset),D=1e3*p.data(w.dataAttribute.timeDelay);if(b){if(document.querySelector('.c_443[data-prompt-triggered="true"]')&&!k)return;var E=document.querySelector('.c_344[data-form-triggered="true"]');E&&(A=a(E).data(w.dataAttribute.formAsset),C=a(E).data(w.dataAttribute.formConfirmationAsset),D=1e3*a(E).data(w.dataAttribute.timeDelay))}!k&&(u||D<=0)&&(D=1e3),o()}var p,q,r,s,t,u,v={classes:{customModalClass:"form-in-popup-custom",loading:"loading",body:"body",btnDisabled:"btn-disabled"},selectors:{root:".c_344",modal:".c_129",formBuilder:".c_019",modalContentSelector:".form-in-popup-custom.open.animate-in .modal-content",modalFormHeaderSection:".form-in-popup-custom.open.animate-in .modal-content .form.section",modalFormErrorSection:".form-in-popup-custom.open.animate-in .modal-content .form.section .c_019",modalScripts:".modal-scripts-c_344",primarySpinner:".primary-spinner",secondarySpinner:".secondary-spinner",submitFormButton:".submit-form-button",overlayErrorC
50ontent:".modal-content .c_019 .error-content",errorContent:".error-content",headerSection:".modal-content .grid-row .col-12",overlayElement:".form-in-popup-custom.open",formsOverlayThankyouPageTracking:"script[data-forms-overlay-tracking]",dynamicThankyouPageRoot:".c_026, .c_026-1"},dataAttribute:{formAsset:"form-asset-href",formConfirmationAsset:"form-confirmation-asset-href",timeDelay:"time-delay",formName:"formName",formCategory:"formCategory",formType:"formType",targetTrigger:"target-trigger",formHeaderAsset:"form-header-href",overlayServerErrorMsg:"data-overlay-servererrortext",rtbEnabled:"rtb-enabled"},attributes:{disabled:"disabled"},ajaxResponse:{success:"success",failure:"failure",error:"error"},analytics:{componentId:"C344_Pop-up-Form_Overlay",popInForm:"pop-in form",formStepNumber:"step-0",enabled:"enabled"},storage:{localStorageKey:"popupFormShown",storageValue:!0,expiryDays:30,activeModalStorageKey:"activeModalSession"}},w=null;return{init:m,initModel:o}}),define("c_443",["jquery","c_344"],function(a,b){"use strict";function c(b){if(r=a.extend({},q,b),n=a(r.selectors.root),!n.length)return!1;n.removeClass("hidden"),o=n.data(r.dataAttribute.primaryCtaLink),p=n.data(r.dataAttribute.primaryCtaLinkTarget),r.analytics.buttonText=a(r.selectors.primaryCTALabelClass).text(),r.analytics.destination=o,f(),e()}function d(){return r.smartLocationContext}function e(){d()&&d()._storeCustomLocalStorageExpiryDays(r.storage.localStorageKey,r.storage.storageValue,r.storage.expiryDays)}function f(){l(),a._data(a(r.classes.primaryCtaButton))&&a._data(a(r.classes.primaryCtaButton)[0])&&a._data(a(r.classes.primaryCtaButton)[0]).events&&(a(r.classes.primaryCtaButton).off(r.events.click),a(r.classes.closeButton).off(r.events.click)),a(r.classes.primaryCtaButton).on(r.events.click,g),a(r.classes.secondaryCtaButton).on(r.events.click,i),a(r.classes.closeButton).on(r.events.click,h)}function g(){r.analytics.buttonText=a(r.selectors.primaryCTALabelClass).text(),m(),j(),n.addClass("hidden"),"popupFormOverlay"==p?b.initModel(!0,!0):"sameTab"==p?window.location.href=o:window.open(o,"_blank")}function h(){n.addClass("hidden"),m(),k()}function i(){r.analytics.buttonText=a(r.selectors.secondaryCTALabelClass).text(),m(),j(),n.addClass("hidden")}function j(){var a=r.analyticsManager.trackingVars.genericClick,b=r.analyticsManager.getTrackingObjectProperties(a),c={};c[b.componentId]=r.analytics.componentId,c[b.buttonText]=r.analytics.buttonText,c[b.locationInPage]=r.analytics.locationInPage,c[b.destination]=r.analytics.destination,r.analyticsManager.track(a,c)}function k(){var a=r.analyticsManager.trackingVars.contentDisplayed,b=r.analyticsManager.getTrackingObjectProperties(a),c={};c[b.componentId]=r.analytics.componentId,c[b.interactionType]=r.analytics.close,c[b.locationInPage]=r.analytics.locationInPage,r.analyticsManager.track(a,c)}function l(){m();var a=r.analyticsManager.trackingVars.contentDisplayed,b=r.analyticsManager.getTrackingObjectProperties(a),c={};c[b.componentId]=r.analytics.componentId,c[b.interactionType]=r.analytics.open,c[b.locationInPage]=r.analytics.locationInPage,setTimeout(function(){r.analyticsManager.track(a,c)},1500)}function m(){"undefined"!=typeof adobe&&adobe.target&&adobe.target.trackEvent({mbox:"target-global-mbox",params:{c443_prompt_event:"true"}})}var n,o,p,q={classes:{primaryCtaButton:".c_443 .primary-cta-btn",secondaryCtaButton:".c_443 .secondary-cta-btn",closeButton:".c_443 .prompt-close"},selectors:{root:'.c_443[data-prompt-triggered="true"]',primaryCTALabelClass:".c_443 .primary-cta-btn",secondaryCTALabelClass:".c_443 .secondary-cta-btn"},dataAttribute:{primaryCtaLink:"primary-cta-href",primaryCtaLinkTarget:"primary-cta-link-target"},events:{click:"click"},analytics:{componentId:"C443_Form_Reminder",open:"open",close:"close",buttonText:"resume now",destination:"destination",locationInPage:"form reminder component"},storage:{localStorageKey:"popupFormShown",storageValue:!0,expiryDays:30}},r=null;return{init:c}}),define("smartLocationContext",["jquery","underscore","logger","objectFactory","remoteServices","autocompleteContext","heliosLocation","storageManager"],function(a,b,c,d,e,f,g,h){"use strict";function i(){(j||(j=new c({prefix:"SmartLocationContext"}))).debug(Array.prototype.join.call(arguments," | "))}var j,k;
50return k=function(a){if(!a)throw"ArgumentException: You must specify `options`.";if(!a.countryCode)throw"ArgumentException: You must specify a `countryCode` property within `options`.";if(!a.profileManager)throw"ArgumentException: You must specify a `profileManager` property within `options`.";this.countryCode=a.countryCode,this.profileManager=a.profileManager,this.window=a.window,this.heliosObject=a.heliosObject,h.init()},k.prototype._getCountryCode=function(){return this.countryCode},k.prototype._getDeferred=function(){return a.Deferred()},k.prototype.clearPostalCode=function(){return this.profileManager.deleteData("postalCode"),this},k.prototype.clearProfileData=function(){return this.profileManager.deleteProfile(),h.deleteItem("postalCode",{mode:"localStorage"}),h.deleteItem("postalCode",{mode:"sessionStorage"}),this},k.prototype.clearUserLocation=function(){return this.profileManager.deleteData("location"),this},k.prototype.get=function(a){var b=this._getDeferred();return i("get"),this._getHeliosLocationFromProfileManager(b,a),b},k.prototype._getHeliosLocationByIP=function(a){var c=e.getLocationByIP();i("_getHeliosLocationByIP"),c.done(b.bind(b.partial(this._onGetHeliosLocationByIPDone,b,a),this)),c.fail(b.bind(b.partial(this._onGetHeliosLocationByIPFail,b,a),this))},k.prototype._getHeliosLocationFromProfileManager=function(a,c){i("_getHeliosLocationFromProfileManager"),this.profileManager.getSavedData().done(b.bind(b.partial(this._onGetHeliosLocationFromProfileManagerDone,b,a,c),this))},k.prototype._onGetHeliosLocationByIPDone=function(a,c){var d;i("_onGetHeliosLocationByIPDone",JSON.stringify(a)),this._getCountryCode()===a.country?this._isPostalCodeSearchEnabled()&&b.isEmpty(a.postalCode)?this._setPostalCode(a,c):(d=this._createHeliosLocationFromRemoteServices(a),this.set(d),c.resolve(d)):(d=this._createEmptyHeliosLocation(),c.reject(d))},k.prototype._onGetHeliosLocationByIPFail=function(a,b){var c;i("_onGetHeliosLocationByIPFail",JSON.stringify(a)),c=this._createEmptyHeliosLocation(),b.reject(c)},k.prototype._createHeliosLocationFromRemoteServices=function(a){return d.getObject(g,{location:{address:b.compact([a.city,a.region,a.country]).join(", "),lat:a.latitude,lng:a.longitude},postalCode:a.postalCode,ip:a.ip})},k.prototype._createHeliosDealerLocationFromRemoteServices=function(a){return a?d.getObject(g,{dealerLocation:{address:b.compact([a.address.addressLine1,a.address.addressLine2,a.address.addressLine3,a.address.city]).join(", "),statePostalCode:b.compact([a.address.stateCode,a.address.postalCode]).join(", "),dealerId:a.dealerId,dealerName:a.name,stateCode:a.address.stateCode,postalCode:a.address.postalCode,lat:a.geolocation.latitude,lng:a.geolocation.longitude,phone:a.contact.phone,website:b.first(a.contact.websites).url,type:a.type}}):d.getObject(g)},k.prototype._createEmptyHeliosLocation=function(){return d.getObject(g)},k.prototype._storeCurrentLocationInLocalStorage=function(a){var b=new Date,c=Number(this._getExpiryDaysForStrorageLocation())||90;a&&h.saveItem("postalCode",a,{mode:"localStorage",customExpiryDate:new Date(b.setDate(b.getDate()+c))})},k.prototype._storeRegionCodeInLocalStorage=function(a){var b=new Date;a&&h.saveItem("regionCode",a,{mode:"localStorage",customExpiryDate:new Date(b.setDate(b.getDate()+30))})},k.prototype._storeCustomLocalStorageExpiryDays=function(a,b,c){var d=new Date;b&&h.saveItem(a,b,{mode:"localStorage",customExpiryDate:new Date(d.setDate(d.getDate()+c))})},k.prototype._getRegionCode=function(a){return h.loadItem("regionCode",{mode:"localStorage"})},k.prototype._getGeoLocation=function(c,d){var e,f={code:3};if(a("body").find(".c_019-25").length&&this._isLocationPromptedOnFormsLoad())return void d.reject();this.hardGateRequired&&(e=!0),this.window.navigator.geolocation.getCurrentPosition(b.bind(function(a){e=!1,c.getPostalCodeByCoordinatesAndCountry(a.coords.latitude,a.coords.longitude).done(b.bind(function(a){d.resolve(a),this.set(a)},this)).fail(b.bind(function(a){d.reject(a)},this))},this),b.bind(function(a){e=!1,this._getCurrentPositionError(a,c,d)},this),this.hardGateRequired?{timeout:3e3}:{}),b.delay(b.bind(function(){e&&(e=!1,this._getCurrentPositionError(f,c,d))},this),4e3)},k.prototype._getCurrentPositionError=function(a,c,d){var e;this.hardGateRequired&&a&&a.code&&3===a.code?(this.triggerHardGate&&this.triggerHardGate(),e=this.window.navigator.geolocation.watchPosition(b.bind(function(a){c.getPostalCodeByCoordinatesAndCountry(a.coords.latitude,a.coords.longitude).done(b.bind(function(a){d.resolve(a),this.set(a),this.window.navigator.geolocation.clearWatch(e)},this)).fail(b.bind(function(a){d.reject(a),this.window.navigator.geolocation.clearWatch(e)},this))},this),b.bind(function(a){},this))):d.reject(a)},k.prototype._onGetHeliosLocationFromProfileManagerDone=function(c,e,
50j){i("_onGetHeliosLocationFromProfileManagerDone",JSON.stringify(c));var k,l=a("body").find(".c_cfg_v2").length;if(k=new f({COUNTRY_CODE:this.countryCode,window:this.window,mapProvider:this.mapProvider}),b.isEmpty(c))if("browser"===this._getLocationDectionMethod())if(this._isStorePostalCodeEnabled()){var m=h.loadItem("postalCode",{mode:"localStorage"});b.isEmpty(m)?(l&&j||!l)&&this._getGeoLocation(k,e):k.getLocationaDetailsFromPostalCode(m).done(b.bind(function(a){e.resolve(a),this.set(a)},this)).fail(b.bind(function(){(l&&j||!l)&&this._getGeoLocation(k,e)},this))}else(l&&j||!l)&&this._getGeoLocation(k,e);else"ip"===this._getLocationDectionMethod()?this._getHeliosLocationByIP(e):e.resolve(d.getObject(g,c));else e.resolve(d.getObject(g,c))},k.prototype._setPostalCode=function(a,c){var d;d=new f({COUNTRY_CODE:this.countryCode,window:this.window}),d.getPostalCodeByCoordinates(a.latitude,a.longitude).done(b.bind(function(a){this.set(a),c.resolve(a)},this)).fail(b.bind(function(){var b=this._createHeliosLocationFromRemoteServices(a);c.resolve(b)},this))},k.prototype.set=function(a){i("set",JSON.stringify(a)),a&&a.toJSON&&(this.profileManager.saveData(a.toJSON()),this.heliosObject&&this.heliosObject.config&&this.heliosObject.config.common.pricing&&this.heliosObject.config.common.pricing.isRegionalPriceEnabled&&this.profileManager.saveCookie(a.toJSON().postalCode),this._storeRegionCodeInLocalStorage(a.regionCode),this._isStorePostalCodeEnabled()&&this._storeCurrentLocationInLocalStorage(a.postalCode))},k.prototype._isPostalCodeSearchEnabled=function(){return!!a.isNestedProp(this.heliosObject,["config","common","smartLocation"])&&this.heliosObject.config.common.smartLocation.postalCodeSearch},k.prototype._isLocationPromptedOnFormsLoad=function(){return this.heliosObject.components.c_019_25.settings.disableAutoGeoLocationOnFormLoad||!1},k.prototype._getLocationDectionMethod=function(){return a.isNestedProp(this.heliosObject,["config","common","smartLocation"])?this.heliosObject.config.common.smartLocation.locationDetectionMethod:""},k.prototype._getBrowserStrorageLocation=function(){return a.isNestedProp(this.heliosObject,["config","common","smartLocation"])?this.heliosObject.config.common.smartLocation.browserStrorageLocation:""},k.prototype._isStorePostalCodeEnabled=function(){return"storePostalCode"===this._getBrowserStrorageLocation()},k.prototype._getExpiryDaysForStrorageLocation=function(){return a.isNestedProp(this.heliosObject,["config","common","smartLocation"])?this.heliosObject.config.common.smartLocation.storageExpiryPeriod:""},k}),define("analyticsManager",["jquery","underscore","storageManager","logger","trackingCodes"],function(a,b,c,d,e){"use strict";function f(a){this.isScrollEventTriggered=!1,this.dataLayerEventTriggered=!1,this.initd=!1,a&&a.window&&a.HELIOS&&a._satellite&&a._satellite.setVar&&a._satellite.track&&(this.init(a),this.initd=!0),c.init(),this.initTrackingVars()}var g,h,i={events:{analyticsEvent:"analyticsEvent"},properties:{adobeTagging:"adobeTagging",adobeTaggingComponent:"adobeTaggingComponent",sessionId:"sessionId"},journeyStorageKey:"analyticsJourneyData",journeyStorageMode:"sessionStorage",formCount:"formCount"};return f.prototype.init=function(b){h=new d({prefix:"AnalyticsManager"}),this.HELIOS=b.HELIOS,this.satellite=b._satellite,this.window=b.window,this.componentId=b.componentId||"",b.eventEl&&(this.$eventEl=a(b.eventEl),this.bindEvents()),this.HELIOS.adobe&&this.HELIOS.adobe.tagging&&(this.taggingObject=this.HELIOS.adobe.tagging),h.info("Init AnalyticsManager"),this.window&&this.window.googleDataLayer&&this.window.googleDataLayer[0]&&this.window.googleDataLayer[0].scrollQualified&&!this.isScrollEventTriggered&&this.scrollQualified(),this.window&&this.window.googleDataLayer&&this.window.googleDataLayer[0]&&this.window.googleDataLayer[0].timeSpentQualified&&!this.dataLayerEventTriggered&&this.timeSpentQualified()},f.prototype.initTrackingVars=function(){this.trackingVars=function(){var a,b=e.trackingVars,c={};for(a in b)b.hasOwnProperty(a)&&(c[a]=a);return c}()},f.prototype.setNewSession=function(a){var c={};
50b.isString(a)&&(c.sessionId=a,this.taggingObject=c)},f.prototype.getSession=function(){if(!b.isEmpty(this.taggingObject))return this.taggingObject},f.prototype.submitTracking=function(c,d){var e,f,g=!1,j=a(c);return b.isEmpty(this.taggingObject)||(d&&(this.updateTaggingObject(d),this.updateGlobalTrackingObject()),j.data(i.properties.adobeTagging)?(e=j.data(i.properties.adobeTagging),f=this.componentId+"."+e,this.satellite.track(f),this.window.googleDataLayer.push(this.HELIOS.adobe.tagging,{event:f}),h.debug("Satellite.track() "+f)):j.data(i.properties.adobeTaggingComponent)?(e=j.data(i.properties.adobeTaggingComponent),f=e,this.satellite.track(f),this.window.googleDataLayer.push(this.HELIOS.adobe.tagging,{event:f}),h.debug("Satellite.track() "+f)):"string"==typeof c?(f=c,this.satellite.track(f),this.window.googleDataLayer.push(this.HELIOS.adobe.tagging,{event:f}),h.debug("Satellite.track() "+f)):h.error("Missing adobe-data-tagging attr"),g=!0),g},f.prototype.setVar=f.prototype.updateTaggingObject=function(a){var c;if(this.satellite&&b.isFunction(this.satellite.setVar)&&b.isFunction(this.satellite.track)&&b.isObject(a))return b.extend(this.taggingObject,a),c=JSON.stringify(this.taggingObject),this.taggingObject.hasOwnProperty(i.properties.sessionId)&&(this.satellite.setVar(this.taggingObject.sessionId,c),this.satellite.track(this.taggingObject.sessionId)),!0},f.prototype.updateGlobalTrackingObject=function(){!b.isEmpty(this.taggingObject)&&this.initd&&(HELIOS.adobe.tagging=this.taggingObject,this.HELIOS.adobe.tagging=this.taggingObject,h.info("Update HELIOS.adobe.tagging"))},f.prototype.bindEvents=function(){this.$eventEl.on(i.events.analyticsEvent,this.setVar,this)},f.prototype.unbindEvents=function(){this.$eventEl.off(i.events.analyticsEvent)},f.prototype.saveLocalStorage=function(){this.HELIOS&&this.HELIOS.adobe&&this.HELIOS.adobe.tagging&&(c.saveItem(i.properties.adobeTagging,this.HELIOS.adobe.tagging),h.info("Save adobeTagging to localStorage"))},f.prototype.readLocalStorage=function(){this.HELIOS&&this.HELIOS.adobe&&this.HELIOS.adobe.tagging&&(g=c.loadItem(i.properties.adobeTagging),this.HELIOS.adobe.tagging=a.extend({},g,this.HELIOS.adobe.tagging),h.info("Extend HELIOS obj with adobeTagging localStorage"))},f.prototype.trackComponent=function(a){this.updateTaggingObject(a),this.updateGlobalTrackingObject()},f.prototype.emptyHeliosTaggingObject=function(){this.initd&&(this.HELIOS.adobe.tagging=b.pick(this.HELIOS.adobe.tagging,e.persistentProperties))},f.prototype.updateHeliosTaggingObject=function(b){this.initd&&(this.HELIOS.adobe.tagging=a.extend(this.HELIOS.adobe.tagging,b))},f.prototype.submit=function(a,c){var d=!1;if(this.initd)return b.isEmpty(this.taggingObject)||(c&&(this.emptyHeliosTaggingObject(),this.updateHeliosTaggingObject(c)),this.satellite.track(a),this.window.googleDataLayer.push(this.HELIOS.adobe.tagging,{event:a}),h.debug("Satellite.track() "+a),d=!0),d},f.prototype.getTrackingVar=function(a){if(e.trackingVars.hasOwnProperty(a))return a;h.warn("Error. Invalid trackingVar: "+a)},f.prototype.getTrackingObjectProperties=function(a){return b.contains(e.noId,a)||(e.trackingVars[a].componentId="componentId"),e.trackingVars[a]||!1},f.prototype.track=function(c,d,f){var g,i=function(a){var b=document.createElement("a");return b.href=a,b.protocol+"//"+b.host+b.pathname+b.search+b.hash};if(this.initd){if(!d.hasOwnProperty("componentId")&&!b.contains(e.noId,c))return h.warn("Error. The 'componentId' property is missing from the trackingObj for the '"+c+"'"),!1;for(g in d)d.hasOwnProperty(g)&&("string"==typeof d[g]?(d[g]=a.trim(d[g]),"destination"===g&&(d[g]=i(d[g])),-1===e.caseExclusions.indexOf(g)&&"destination"!=g&&(d[g]=d[g].toLowerCase()),-1!==e.hyphenated.indexOf(g)&&(d[g]=d[g].replace(/\s+/g,"-"))):h.warn("Error. TrackingObj property: '"+g+"', used with the trackingVar of '"+c+"' is not of type string"));if(f)for(g in d)this.HELIOS.adobe.tagging[g]=d[g];else this.submit(c,d);return h.table(d),!0}},f.prototype.append=function(a,b){this.tag(a,b,!0)},f.prototype.checkUrlAnchor=function(a){if(void 0!==a&&null!==a&&(0===a.lastIndexOf("#",0)||a.indexOf("#")>-1&&a.indexOf(window.location.href.split("#")[0])>-1))return this.trackingVars.buttonNoCookie},f.prototype.tag=function(b,c,d){var e=this.getTrackingVar(b),f=this.getTrackingObjectProperties(e),g={};e===this.trackingVars.genericClick&&(e=this.checkUrlAnchor(c.destination)||e),this.initd&&(a.each(c,function(a,b){f.hasOwnProperty(a)?g[f[a]]=b:h.warn("Error. Invalid property in trackingObj: "+a)}),this.track(e,g,d))},f.prototype.trackViewPortSize=function(){var a="small";this.initd&&(!window.matchMedia||window.matchMedia(this.HELIOS.config.common.mediaQuery.is.large).matches?a="large":window.matchMedia(this.HELIOS.config.common.mediaQuery.is.medium).matches&&(a="medium"),this.track("breakpoint",{screenSize:a},!0))},f.prototype.trackFormCount=function(){this.getFormCount()&&this.track("formCount",{formCount:this.getFormCount()},!0)},f.prototype.addCustomerId=function(a){this.initd&&(this.HELIOS.adobe.tagging.customerId=a)},f.prototype.removeCustomerId=function(){this.initd&&delete this.HELIOS.adobe.tagging.customerId},f.prototype.storeJourneyData=function(a,b,d){c.saveItem(i.journeyStorageKey,{name:a,id:b,data:d},{mode:i.journeyStorageMode})},f.prototype.getJourneyDataById=function(a){var b=c.loadItem(i.journeyStorageKey,{mode:i.journeyStorageMode});return!(!b||b.id!=a)&&b},f.prototype.getJourneyDataByName=function(a){var b=c.loadItem(i.journeyStorageKey,{mode:i.journeyStorageMode});return!(!b||b.name!==a)&&b},f.prototype.clearJourneyData=function(){return c.deleteItem(i.journeyStorageKey,{mode:i.journeyStorageMode}),!0},f.prototype.getFormCount=function(){var a=c.loadItem(i.formCount,{mode:i.journeyStorageMode});return a||!1},f.prototype.scrollQualified=function(){var a=this.window.googleDataLayer[0].scrollQualified,b=e.eventTypes,c=e.componentIds,d=parseInt(a),f=e.trackingVars,g=this;window.addEventListener("scroll",function(){if(window.scrollY/(document.documentElement.scrollHeight-window.innerHeight)*100>=d&&!this.isScrollEventTriggered){var e=c.scrollQualified,h=f.scrollQualifiedStr.replace("${scrollThreshold}",a),i={scrollPercent:a,componentId:e,action:h};this.isScrollEventTriggered=!0,g.tag(b.scrollQualified,i)}})},f.prototype.timeSpentQualified=function(){function a(){if((new Date).getTime()-i>f&&!this.dataLayerEventTriggered){var a=f/1e3,b=d.timeSpentQualified,e=g.timeSpentQualifiedStr.replace("${timeSpentInSeconds}",a),j={timeSpent:a,componentId:b,action:e};this.dataLayerEventTriggered=!0,h.tag(c.timeSpentQualified,j)}}var b=this.window.googleDataLayer[0].timeSpentQualified,c=e.eventTypes,d=e.componentIds,f=1e3*parseInt(b),g=e.trackingVars,h=this,i=(new Date).getTime();setTimeout(a,f)},f}),function(a){"function"==typeof define&&define.amd?define("datepickerLanguages",["jqueryui"],a):a(jQuery.datepicker)}(function(a){var a=$.datepicker;a.regional.af={closeText:"Selekteer",prevText:"Vorige",nextText:"Volgende",currentText:"Vandag",monthNames:["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember"],monthNamesShort:["Jan","Feb","Mrt","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des"],dayNames:["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"],dayNamesShort:["Son","Maa","Din","Woe","Don","Vry","Sat"],dayNamesMin:["So","Ma","Di","Wo","Do","Vr","Sa"],weekHeader:"Wk",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.af;a.regional["ar-DZ"]={closeText:"إغلاق",prevText:"&#x3C;السابق",nextText:"التالي&#x3E;",currentText:"اليوم",monthNames:["جانفي","فيفري","مارس","أفريل","ماي","جوان","جويلية","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],monthNamesShort:["1","2","3","4","5","6","7","8","9","10","11","12"],dayNames:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],dayNamesShort:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],dayNamesMin:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],weekHeader:"أسبوع",dateFormat:"dd/mm/yy",firstDay:6,isRTL:!0,showMonthAfterYear:!1,yearSuffix:""};a.regional["ar-DZ"];a.regional.ar={closeText:"إغلاق",prevText:"&#x3C;السابق",nextText:"التالي&#x3E;",currentText:"اليوم",monthNames:["كانون الثاني","شباط","آذار","نيسان","مايو","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول"],monthNamesShort:["1","2","3","4","5","6","7","8","9","10","11","12"],dayNames:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],dayNamesShort:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],dayNamesMin:["ح","ن","ث","ر","خ","ج","س"],weekHeader:"أسبوع",dateFormat:"dd/mm/yy",firstDay:6,isRTL:!0,showMonthAfterYear:!1,yearSuffix:""};a.regional.ar;a.regional.az={closeText:"Bağla",prevText:"&#x3C;Geri",nextText:"İrəli&#x3E;",currentText:"Bugün",
51monthNames:["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avqust","Sentyabr","Oktyabr","Noyabr","Dekabr"],monthNamesShort:["Yan","Fev","Mar","Apr","May","İyun","İyul","Avq","Sen","Okt","Noy","Dek"],dayNames:["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"],dayNamesShort:["B","Be","Ça","Ç","Ca","C","Ş"],dayNamesMin:["B","B","Ç","С","Ç","C","Ş"],weekHeader:"Hf",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.az;a.regional.be={closeText:"Зачыніць",prevText:"&larr;Папяр.",nextText:"Наст.&rarr;",currentText:"Сёньня",monthNames:["Студзень","Люты","Сакавік","Красавік","Травень","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лі
51стапад","Сьнежань"],monthNamesShort:["Сту","Лют","Сак","Кра","Тра","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сьн"],dayNames:["нядзеля","панядзелак","аўторак","серада","чацьвер","пятніца","субота"],dayNamesShort:["ндз","пнд","аўт","срд","чцв","птн","сбт"],dayNamesMin:["Нд","Пн","Аў","Ср","Чц","Пт","Сб"],weekHeader:"Тд",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.be;a.regional.bg={closeText:"затвори",prevText:"&#x3C;назад",nextText:"напред&#x3E;",nextBigText:"&#x3E;&#x3E;",currentText:"днес",monthNames:["Януари","Февруари","Март","Април","Май","Юни","Юли","Август","Септември","Октомври","Ноември","Декември"],monthNamesShort:["Яну","Фев","Мар","Апр","Май","Юни","Юли","Авг","Сеп","Окт","Нов","Дек"],dayNames:["Неделя","Понеделник","Вторник","Сряда","Четвъртък","Петък","Събота"],dayNamesShort:["Нед","Пон","Вто","Сря","Чет","Пет","Съб"],dayNamesMin:["Не","По","Вт","Ср","Че","Пе","Съ"],weekHeader:"Wk",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.bg;a.regional.bs={closeText:"Zatvori",prevText:"&#x3C;",nextText:"&#x3E;",currentText:"Danas",monthNames:["Januar","Februar","Mart","April","Maj","Juni","Juli","August","Septembar","Oktobar","Novembar","Decembar"],monthNamesShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],dayNames:["Nedelja","Ponedeljak","Utorak","Srijeda","Četvrtak","Petak","Subota"],dayNamesShort:["Ned","Pon","Uto","Sri","Čet","Pet","Sub"],dayNamesMin:["Ne","Po","Ut","Sr","Če","Pe","Su"],weekHeader:"Wk",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.bs;a.regional.ca={closeText:"Tanca",prevText:"Anterior",nextText:"Següent",currentText:"Avui",monthNames:["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"],monthNamesShort:["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des"],dayNames:["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],dayNamesShort:["dg","dl","dt","dc","dj","dv","ds"],dayNamesMin:["dg","dl","dt","dc","dj","dv","ds"],weekHeader:"Set",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.ca;a.regional.cs={closeText:"Zavřít",prevText:"&#x3C;Dříve",nextText:"Později&#x3E;",currentText:"Nyní",monthNames:["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec"],monthNamesShort:["led","úno","bře","dub","kvě","čer","čvc","srp","zář","říj","lis","pro"],dayNames:["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"],dayNamesShort:["ne","po","út","st","čt","pá","so"],dayNamesMin:["ne","po","út","st","čt","pá","so"],weekHeader:"Týd",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.cs;a.regional["cy-GB"]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr"],monthNamesShort:["Ion","Chw","Maw","Ebr","Mai","Meh","Gor","Aws","Med","Hyd","Tac","Rha"],dayNames:["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"],dayNamesShort:["Sul","Llu","Maw","Mer","Iau","Gwe","Sad"],dayNamesMin:["Su","Ll","Ma","Me","Ia","Gw","Sa"],weekHeader:"Wy",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional["cy-GB"];a.regional.da={closeText:"Luk",prevText:"&#x3C;Forrige",nextText:"Næste&#x3E;",currentText:"Idag",monthNames:["Januar","Februar","Marts","April","Maj","Juni","Juli","August","September","Oktober","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],dayNames:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag"],dayNamesShort:["Søn","Man","Tir","Ons","Tor","Fre","Lør"],dayNamesMin:["Sø","Ma","Ti","On","To","Fr","Lø"],weekHeader:"Uge",dateFormat:"dd-mm-yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.da;a.regional.de={closeText:"Schließen",prevText:"&#x3C;Zurück",nextText:"Vor&#x3E;",currentText:"Heute",monthNames:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],monthNamesShort:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],dayNames:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],dayNamesShort:["So","Mo","Di","Mi","Do","Fr","Sa"],dayNamesMin:["So","Mo","Di","Mi","Do","Fr","Sa"],weekHeader:"KW",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.de;a.regional.el={closeText:"Κλείσιμο",prevText:"Προηγούμενος",nextText:"Επόμενος",currentText:"Τρέχων Μήνας",monthNames:["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος"],monthNamesShort:["Ιαν","Φεβ","Μαρ","Απρ","Μαι","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ"],dayNames:["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"],dayNamesShort:["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"],dayNamesMin:["Κυ","Δε","Τρ","Τε","Πε","Πα","Σα"],weekHeader:"Εβδ",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.el;a.regional["en-GB"]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Frid
51ay","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};var b=a.regional["en-GB"];a.regional["en-IN"]=b;a.regional["en-IN"];a.regional.eo={closeText:"Fermi",prevText:"&#x3C;Anta",nextText:"Sekv&#x3E;",currentText:"Nuna",monthNames:["Januaro","Februaro","Marto","Aprilo","Majo","Junio","Julio","Aŭgusto","Septembro","Oktobro","Novembro","Decembro"],monthNamesShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aŭg","Sep","Okt","Nov","Dec"],dayNames:["Dimanĉo","Lundo","Mardo","Merkredo","Ĵaŭdo","Vendredo","Sabato"],dayNamesShort:["Dim","Lun","Mar","Mer","Ĵaŭ","Ven","Sab"],dayNamesMin:["Di","Lu","Ma","Me","Ĵa","Ve","Sa"],weekHeader:"Sb",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.eo;a.regional.es={closeText:"Cerrar",prevText:"&#x3C;Ant",nextText:"Sig&#x3E;",currentText:"Hoy",monthNames:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],monthNamesShort:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],dayNames:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],dayNamesShort:["dom","lun","mar","mié","jue","vie","sáb"],dayNamesMin:["D","L","M","X","J","V","S"],weekHeader:"Sm",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.es;a.regional.et={closeText:"Sulge",prevText:"Eelnev",nextText:"Järgnev",currentText:"Täna",monthNames:["Jaanuar","Veebruar","Märts","Aprill","Mai","Juuni","Juuli","August","September","Oktoober","November","Detsember"],monthNamesShort:["Jaan","Veebr","Märts","Apr","Mai","Juuni","Juuli","Aug","Sept","Okt","Nov","Dets"],dayNames:["Pühapäev","Esmaspäev","Teisipäev","Kolmapäev","Neljapäev","Reede","Laupäev"],dayNamesShort:["Pühap","Esmasp","Teisip","Kolmap","Neljap","Reede","Laup"],dayNamesMin:["P","E","T","K","N","R","L"],weekHeader:"näd",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.et;a.regional.eu={closeText:"Egina",prevText:"&#x3C;Aur",nextText:"Hur&#x3E;",currentText:"Gaur",monthNames:["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua"],monthNamesShort:["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe."],dayNames:["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"],dayNamesShort:["ig.","al.","ar.","az.","og.","ol.","lr."],dayNamesMin:["ig","al","ar","az","og","ol","lr"],weekHeader:"As",dateFormat:"yy-mm-dd",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.eu;a.regional.fa={closeText:"بستن",prevText:"&#x3C;قبلی",nextText:"بعدی&#x3E;",currentText:"امروز",monthNames:["فروردين","ارديبهشت","خرداد","تير","مرداد","شهريور","مهر","آبان","آذر","دی","بهمن","اسفند"],monthNamesShort:["1","2","3","4","5","6","7","8","9","10","11","12"],dayNames:["يکشنبه","دوشنبه","سه‌شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],dayNamesShort:["ی","د","س","چ","پ","ج","ش"],dayNamesMin:["ی","د","س","چ","پ","ج","ش"],weekHeader:"هف",dateFormat:"yy/mm/dd",firstDay:6,isRTL:!0,showMonthAfterYear:!1,yearSuffix:""};a.regional.fa;a.regional.fi={closeText:"Sulje",prevText:"&#xAB;Edellinen",nextText:"Seuraava&#xBB;",currentText:"Tänään",monthNames:["Tammikuu","Helmikuu","Maaliskuu","Huhtikuu","Toukokuu","Kesäkuu","Heinäkuu","Elokuu","Syyskuu","Lokakuu","Marraskuu","Joulukuu"],monthNamesShort:["Tammi","Helmi","Maalis","Huhti","Touko","Kesä","Heinä","Elo","Syys","Loka","Marras","Joulu"],dayNamesShort:["Su","Ma","Ti","Ke","To","Pe","La"],dayNames:["Sunnuntai","Maanantai","Tiistai","Keskiviikko","Torstai","Perjantai","Lauantai"],dayNamesMin:["Su","Ma","Ti","Ke","To","Pe","La"],weekHeader:"Vk",dateFormat:"d.m.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.fi;a.regional.fo={closeText:"Lat aftur",prevText:"&#x3C;Fyrra",nextText:"Næsta&#x3E;",currentText:"Í dag",monthNames:["Januar","Februar","Mars","Apríl","Mei","Juni","Juli","August","September","Oktober","November","Desember"],monthNamesShort:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des"],dayNames:["Sunnudagur","Mánadagur","Týsdagur","Mikudagur","Hósdagur","Fríggjadagur","Leyardagur"],dayNamesShort:["Sun","Mán","Týs","Mik","Hós","Frí","Ley"],dayNamesMin:["Su","Má","Tý","Mi","Hó","Fr","Le"],weekHeader:"Vk",dateFormat:"dd-mm-yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.fo;a.regional["fr-CA"]={closeText:"Fermer",prevText:"Précédent",nextText:"Suivant",currentText:"Aujourd'hui",monthNames:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],monthNamesShort:["janv.","févr.","mars","avril","mai","juin","juil.","août","sept.","oct.","nov.","déc."],dayNames:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],dayNamesShort:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],dayNamesMin:["D","L","M","M","J","V","S"],weekHeader:"Sem.",dateFormat:"yy-mm-dd",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional["fr-CA"];a.regional["fr-CH"]={closeText:"Fermer",prevText:"&#x3C;Préc",nextText:"Suiv&#x3E;",currentText:"Courant",monthNames:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],monthNamesShort:["janv.","févr.","mars","avril","mai","juin","juil.","août","sept.","oct.","nov.","déc."],dayNames:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],dayNamesShort:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],dayNamesMin:["D","L","M","M","J","V","S"],weekHeader:"Sm",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional["fr-CH"];a.regional.fr={closeText:"Fermer",prevText:"Précédent",nextText:"Suivant",currentText:"Aujourd'hui",monthNames:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],monthNamesShort:["janv.","févr.","mars","avril","mai","juin","juil.","août","sept.","oct.","nov.","déc."],dayNames:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],dayNamesShort:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],dayNamesMin:["D","L","M","M","J","V","S"],weekHeader:"Sem.",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.fr;a.regional.gl={closeText:"Pechar",prevText:"&#x3C;Ant",nextText:"Seg&#x3E;",currentText:"Hoxe",monthNames:["Xaneiro","Febreiro","Marzo","Abril","Maio","Xuño","Xullo","Agosto","Setembro","Outubro","Novembro","Decembro"],monthNamesShort:["Xan","Feb","Mar","Abr","Mai","Xuñ","Xul","Ago","Set","Out","Nov","Dec"],dayNames:["Domingo","Luns","Martes","Mércores","Xoves","Venres","Sábado"],dayNamesShort:["Dom","Lun","Mar","Mér","Xov","Ven","Sáb"],dayNamesMin:["Do","Lu","Ma","Mé","Xo","Ve","Sá"],weekHeader:"Sm",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.gl;a.regional.he={closeText:"סגור",prevText:"&#x3C;הקודם",nextText:"הבא&#x3E;",currentText:"היום",monthNames:["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר"],monthNamesShort:["ינו","פבר","מרץ","אפר","מאי","יוני","יולי","אוג","ספט","אוק","נוב","דצמ"],dayNames:["ראשון","שני","שלישי","רביעי","חמישי","שישי","שבת"],dayNamesShort:["א'","ב'","ג'","ד'","ה'","ו'","שבת"],dayNamesMin:["א'","ב'","ג'","ד'","ה'","ו'","שבת"],weekHeader:"Wk",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!0,showMonthAfterYear:!1,yearSuffix:""};a.regional.he;a.regional.hi={closeText:"बंद",prevText:"पिछला",nextText:"अगला",currentText:"आज",monthNames:["जनवरी ","फरवरी","मार्च","अप्रेल","मई","जून","जूलाई","अगस्त ","सितम्बर","अक्टूबर","नवम्बर","दिसम्बर"],monthNamesShort:["जन","फर","मार्च","अप्रेल","मई","जून","जूलाई","अग","सित","अक्ट","नव","दि"],dayNames:["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"],dayNamesShort:["रवि","सोम","मंगल","बुध","गुरु","शुक्र","शनि"],dayNamesMin:["रवि","सोम","मंगल","बुध","गुरु","शुक्र","शनि"],weekHeader:"हफ्ता",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.hi;a.regional.hr={closeText:"Zatvori",prevText:"&#x3C;",nextText:"&#x3E;",currentText:"Danas",monthNames:["Siječanj","Veljača","Ožujak","Travanj","Svibanj","Lipanj","Srpanj","Kolovoz","Rujan","Listopad","Studeni","Prosinac"],monthNamesShort:["Sij","Velj","Ožu","Tra","Svi","Lip","Srp","Kol","Ruj","Lis","Stu","Pro"],dayNames:["Nedjelja","Ponedjeljak","Utorak","Srijeda","Četvrtak","Petak","Subota"],dayNamesShort:["Ned","Pon","Uto","Sri","Čet","Pet","Sub"],dayNamesMin:["Ne","Po","Ut","Sr","Če","Pe","Su"],weekHeader:"Tje",dateFormat:"dd.mm.yy.",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.hr;a.regional.hu={closeText:"bezár",prevText:"vissza",nextText:"előre",currentText:"ma",monthNames:["Január","Február","Március","Április","Május","Június","Július","Augusztus","Szeptember","Október","November","December"],monthNamesShort:["Jan","Feb","Már","Ápr","Máj","Jún","Júl","Aug","Szep","Okt","Nov","Dec"],dayNames:["Vasárnap","Hétfő","Kedd","Szerda","Csütörtök","Péntek","Szombat"],dayNamesShort:["Vas","Hét","Ked","Sze","Csü","Pén","Szo"],dayNamesMin:["V","H","K","Sze","Cs","P","Szo"],weekHeader:"Hét",dateFormat:"yy.mm.dd.",firstDay:1,isRTL:!1,showMonthAfterYear:!0,yearSuffix:""};a.regional.hu;a.regional.hy={closeText:"Փակել",prevText:"&#x3C;Նախ.",nextText:"Հաջ.&#x3E;",currentText:"Այսօր",monthNames:["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր"],monthNamesShort:["Հունվ","Փետր","Մարտ","Ապր","Մայիս","Հունիս","Հուլ","Օգս","Սեպ","Հոկ","Նոյ","Դեկ"],dayNames:["կիրակի","եկուշաբթի","երեքշաբթի","չորեքշաբթի","հինգշաբթի","ուրբաթ","շաբաթ"],dayNamesShort:["կիր","
51երկ","երք","չրք","հնգ","ուրբ","շբթ"],dayNamesMin:["կիր","երկ","երք","չրք","հնգ","ուրբ","շբթ"],weekHeader:"ՇԲՏ",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.hy;a.regional.id={closeText:"Tutup",prevText:"&#x3C;mundur",nextText:"maju&#x3E;",currentText:"hari ini",monthNames:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember"],monthNamesShort:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agus","Sep","Okt","Nop","Des"],dayNames:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],dayNamesShort:["Min","Sen","Sel","Rab","kam","Jum","Sab"],dayNamesMin:["Mg","Sn","Sl","Rb","Km","jm","Sb"],weekHeader:"Mg",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.id;a.regional.is={closeText:"Loka",prevText:"&#x3C; Fyrri",nextText:"Næsti &#x3E;",currentText:"Í dag",monthNames:["Janúar","Febrúar","Mars","Apríl","Maí","Júní","Júlí","Ágúst","September","Október","Nóvember","Desember"],monthNamesShort:["Jan","Feb","Mar","Apr","Maí","Jún","Júl","Ágú","Sep","Okt","Nóv","Des"],dayNames:["Sunnudagur","Mánudagur","Þriðjudagur","Miðvikudagur","Fimmtudagur","Föstudagur","Laugardagur"],dayNamesShort:["Sun","Mán","Þri","Mið","Fim","Fös","Lau"],dayNamesMin:["Su","Má","Þr","Mi","Fi","Fö","La"],weekHeader:"Vika",dateFormat:"dd.mm.yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.is;a.regional["it-CH"]={closeText:"Chiudi",prevText:"&#x3C;Prec",nextText:"Succ&#x3E;",currentText:"Oggi",monthNames:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],monthNamesShort:["Gen","Feb","Mar","Apr","Mag","Giu","Lug","Ago","Set","Ott","Nov","Dic"],dayNames:["Domenica","Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato"],dayNamesShort:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"],dayNamesMin:["Do","Lu","Ma","Me","Gi","Ve","Sa"],weekHeader:"Sm",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional["it-CH"];a.regional.it={closeText:"Chiudi",prevText:"&#x3C;Prec",nextText:"Succ&#x3E;",currentText:"Oggi",monthNames:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],monthNamesShort:["Gen","Feb","Mar","Apr","Mag","Giu","Lug","Ago","Set","Ott","Nov","Dic"],dayNames:["Domenica","Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato"],dayNamesShort:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"],dayNamesMin:["Do","Lu","Ma","Me","Gi","Ve","Sa"],weekHeader:"Sm",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.it;a.regional.ja={closeText:"閉じる",prevText:"&#x3C;前",nextText:"次&#x3E;",currentText:"今日",monthNames:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],monthNamesShort:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dayNames:["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],dayNamesShort:["日","月","火","水","木","金","土"],dayNamesMin:["日","月","火","水","木","金","土"],weekHeader:"週",dateFormat:"yy/mm/dd",firstDay:0,isRTL:!1,showMonthAfterYear:!0,yearSuffix:"年"};a.regional.ja;a.regional.ka={closeText:"დახურვა",prevText:"&#x3c; წინა",nextText:"შემდეგი &#x3e;",currentText:"დღეს",monthNames:["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი"],monthNamesShort:["იან","თებ","მარ","აპრ","მაი","ივნ","ივლ","აგვ","სექ","ოქტ","ნოე","დეკ"],dayNames:["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"],dayNamesShort:["კვ","ორშ","სამ","ოთხ","ხუთ","პარ","შაბ"],dayNamesMin:["კვ","ორშ","სამ","ოთხ","ხუთ","პარ","შაბ"],weekHeader:"კვირა",dateFormat:"dd-mm-yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.ka;a.regional.kk={closeText:"Жабу",prevText:"&#x3C;Алдыңғы",nextText:"Келесі&#x3E;",currentText:"Бүгін",monthNames:["Қаңтар","Ақпан","Наурыз","Сәуір","Мамыр","Маусым","Шілде","Тамыз","Қыркүйек","Қазан","Қараша","Желтоқсан"],monthNamesShort:["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел"],dayNames:["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"],dayNamesShort:["жкс","дсн","ссн","срс","бсн","жма","снб"],dayNamesMin:["Жк","Дс","Сс","Ср","Бс","Жм","Сн"],weekHeader:"Не",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.kk;a.regional.km={closeText:"ធ្វើ​រួច",prevText:"មុន",nextText:"បន្ទាប់",currentText:"ថ្ងៃ​នេះ",monthNames:["មករា","កុម្ភៈ","មីនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ"],monthNamesShort:["មករា","កុម្ភៈ","មីនា","មេសា","ឧសភា","មិថុនា","កក្កដា","សីហា","កញ្ញា","តុលា","វិច្ឆិកា","ធ្នូ"],dayNames:["អាទិត្យ","ចន្ទ","អង្គារ","ពុធ","ព្រហស្បតិ៍","សុក្រ","សៅរ៍"],dayNamesShort:["អា","ច","អ","ពុ","ព្រហ","សុ","សៅ"],dayNamesMin:["អា","ច","អ","ពុ","ព្រហ","សុ","សៅ"],weekHeader:"សប្ដាហ៍",dateFormat:"dd-mm-yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.km;a.regional.ko={closeText:"닫기",prevText:"이전달",nextText:"다음달",currentText:"오늘",monthNames:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],monthNamesShort:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],dayNames:["일요일","월요일","화요일","수요일","목요일","금요일","토요일"],dayNamesShort:["일","월","화","수","목","금","토"],dayNamesMin:["일","월","화","수","목","금","토"],weekHeader:"Wk",dateFormat:"yy-mm-dd",firstDay:0,isRTL:!1,showMonthAfterYear:!0,yearSuffix:"년"};a.regional.ko;a.regional.ky={closeText:"Жабуу",prevText:"&#x3c;Мур",nextText:"Кий&#x3e;",currentText:"Бүгүн",monthNames:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthNamesShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],dayNames:["жекшемби","дүйшөмбү","шейшемби","шаршемби","бейшемби","жума","ишемби"],dayNamesShort:["жек","дүй","шей","шар","бей","жум","ише"],dayNamesMin:["Жк","Дш","Шш","Шр","Бш","Жм","Иш"],weekHeader:"Жум",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.ky;a.regional.lb={closeText:"Fäerdeg",prevText:"Zréck",nextText:"Weider",currentText:"Haut",monthNames:["Januar","Februar","Mäerz","Abrëll","Mee","Juni","Juli","August","September","Oktober","November","Dezember"],monthNamesShort:["Jan","Feb","Mäe","Abr","Mee","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],dayNames:["Sonndeg","Méindeg","Dënschdeg","Mëttwoch","Donneschdeg","Freideg","Samschdeg"],dayNamesShort:["Son","Méi","Dën","Mët","Don","Fre","Sam"],dayNamesMin:["So","Mé","Dë","Më","Do","Fr","Sa"],weekHeader:"W",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.lb;a.regional.lt={closeText:"Uždaryti",prevText:"&#x3C;Atgal",nextText:"Pirmyn&#x3E;",currentText:"Šiandien",monthNames:["Sausis","Vasaris","Kovas","Balandis","Gegužė","Birželis","Liepa","Rugpjūtis","Rugsėjis","Spalis","
51Lapkritis","Gruodis"],monthNamesShort:["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rugp","Rugs","Spa","Lap","Gru"],dayNames:["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","Å¡eÅ¡tadienis"],dayNamesShort:["sek","pir","ant","tre","ket","pen","Å¡eÅ¡"],dayNamesMin:["Se","Pr","An","Tr","Ke","Pe","Å e"],weekHeader:"SAV",dateFormat:"yy-mm-dd",firstDay:1,isRTL:!1,showMonthAfterYear:!0,yearSuffix:""};a.regional.lt;a.regional.lv={closeText:"Aizvērt",prevText:"Iepr.",nextText:"Nāk.",currentText:"Å odien",monthNames:["Janvāris","Februāris","Marts","AprÄ«lis","Maijs","JÅ«nijs","JÅ«lijs","Augusts","Septembris","Oktobris","Novembris","Decembris"],monthNamesShort:["Jan","Feb","Mar","Apr","Mai","JÅ«n","JÅ«l","Aug","Sep","Okt","Nov","Dec"],dayNames:["svētdiena","pirmdiena","otrdiena","treÅ¡diena","ceturtdiena","piektdiena","sestdiena"],dayNamesShort:["svt","prm","otr","tre","ctr","pkt","sst"],dayNamesMin:["Sv","Pr","Ot","Tr","Ct","Pk","Ss"],weekHeader:"Ned.",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.lv;a.regional.mk={closeText:"Затвори",prevText:"&#x3C;",nextText:"&#x3E;",currentText:"Денес",monthNames:["Јануари","Февруари","Март","Април","Мај","Јуни","Јули","Август","Септември","Октомври","Ноември","Декември"],monthNamesShort:["Јан","Фев","Мар","Апр","Мај","Јун","Јул","Авг","Сеп","Окт","Ное","Дек"],dayNames:["Недела","Понеделник","Вторник","Среда","Четврток","Петок","Сабота"],dayNamesShort:["Нед","Пон","Вто","Сре","Чет","Пет","Саб"],dayNamesMin:["Не","По","Вт","Ср","Че","Пе","Са"],weekHeader:"Сед",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.mk;a.regional.ml={closeText:"à´¶à´°à´¿",prevText:"മുന്നത്തെ",nextText:"അടുത്തത് ",currentText:"ഇന്ന്",monthNames:["ജനുവരി","ഫെബ്രുവരി","മാര്‍ച്ച്","ഏപ്രില്‍","മേയ്","ജൂണ്‍","ജൂലൈ","ആഗസ്റ്റ്","സെപ്റ്റംബര്‍","ഒക്ടോബര്‍","നവംബര്‍","ഡിസംബര്‍"],monthNamesShort:["ജനു","ഫെബ്","മാര്‍","ഏപ്രി","മേയ്","ജൂണ്‍","ജൂലാ","ആഗ","സെപ്","ഒക്ടോ","നവം","à´¡à´¿à´¸"],dayNames:["ഞായര്‍","തിങ്കള്‍","ചൊവ്വ","ബുധന്‍","വ്യാഴം","വെള്ളി","ശനി"],dayNamesShort:["ഞായ","തിങ്ക","ചൊവ്വ","ബുധ","വ്യാഴം","വെള്ളി","ശനി"],dayNamesMin:["ഞാ","തി","ചൊ","ബു","വ്യാ","വെ","à´¶"],weekHeader:"ആ",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.ml;a.regional.ms={closeText:"Tutup",prevText:"&#x3C;Sebelum",nextText:"Selepas&#x3E;",currentText:"hari ini",monthNames:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],monthNamesShort:["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogo","Sep","Okt","Nov","Dis"],dayNames:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],dayNamesShort:["Aha","Isn","Sel","Rab","kha","Jum","Sab"],dayNamesMin:["Ah","Is","Se","Ra","Kh","Ju","Sa"],weekHeader:"Mg",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.ms;a.regional.nb={closeText:"Lukk",prevText:"&#xAB;Forrige",nextText:"Neste&#xBB;",currentText:"I dag",monthNames:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],monthNamesShort:["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des"],dayNamesShort:["søn","man","tir","ons","tor","fre","lør"],dayNames:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],dayNamesMin:["sø","ma","ti","on","to","fr","lø"],weekHeader:"Uke",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.nb;a.regional["nl-BE"]={closeText:"Sluiten",prevText:"←",nextText:"→",currentText:"Vandaag",monthNames:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],monthNamesShort:["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec"],dayNames:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],dayNamesShort:["zon","maa","din","woe","don","vri","zat"],dayNamesMin:["zo","ma","di","wo","do","vr","za"],weekHeader:"Wk",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional["nl-BE"];a.regional.nl={closeText:"Sluiten",prevText:"←",nextText:"→",currentText:"Vandaag",monthNames:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],monthNamesShort:["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec"],dayNames:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],dayNamesShort:["zon","maa","din","woe","don","vri","zat"],dayNamesMin:["zo","ma","di","wo","do","vr","za"],weekHeader:"Wk",dateFormat:"dd-mm-yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.nl;a.regional.nn={closeText:"Lukk",prevText:"&#xAB;Førre",nextText:"Neste&#xBB;",currentText:"I dag",monthNames:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],monthNamesShort:["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des"],dayNamesShort:["sun","mÃ¥n","tys","ons","tor","fre","lau"],dayNames:["sundag","mÃ¥ndag","tysdag","onsdag","torsdag","fredag","laurdag"],dayNamesMin:["su","mÃ¥","ty","on","to","fr","la"],weekHeader:"Veke",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.nn;a.regional.no={closeText:"Lukk",prevText:"&#xAB;Forrige",nextText:"Neste&#xBB;",currentText:"I dag",monthNames:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],monthNamesShort:["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des"],dayNamesShort:["søn","man","tir","ons","tor","fre","lør"],dayNames:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],dayNamesMin:["sø","ma","ti","on","to","fr","lø"],weekHeader:"Uke",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.no;a.regional.pl={closeText:"Zamknij",prevText:"&#x3C;Poprzedni",nextText:"Następny&#x3E;",currentText:"Dziś",monthNames:["Styczeń","Luty","Marzec","KwiecieÅ
51„","Maj","Czerwiec","Lipiec","Sierpień","Wrzesień","Październik","Listopad","Grudzień"],monthNamesShort:["Sty","Lu","Mar","Kw","Maj","Cze","Lip","Sie","Wrz","Pa","Lis","Gru"],dayNames:["Niedziela","Poniedziałek","Wtorek","Środa","Czwartek","Piątek","Sobota"],dayNamesShort:["Nie","Pn","Wt","Śr","Czw","Pt","So"],dayNamesMin:["N","Pn","Wt","Śr","Cz","Pt","So"],weekHeader:"Tydz",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.pl;a.regional["pt-BR"]={closeText:"Fechar",prevText:"&#x3C;Anterior",nextText:"Próximo&#x3E;",currentText:"Hoje",monthNames:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthNamesShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],dayNames:["Domingo","Segunda-feira","Terça-feira","Quarta-feira","Quinta-feira","Sexta-feira","Sábado"],dayNamesShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],dayNamesMin:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],weekHeader:"Sm",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional["pt-BR"];a.regional.pt={closeText:"Fechar",prevText:"Anterior",nextText:"Seguinte",currentText:"Hoje",monthNames:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthNamesShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],dayNames:["Domingo","Segunda-feira","Terça-feira","Quarta-feira","Quinta-feira","Sexta-feira","Sábado"],dayNamesShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],dayNamesMin:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],weekHeader:"Sem",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.pt;a.regional.rm={closeText:"Serrar",prevText:"&#x3C;Suandant",nextText:"Precedent&#x3E;",currentText:"Actual",monthNames:["Schaner","Favrer","Mars","Avrigl","Matg","Zercladur","Fanadur","Avust","Settember","October","November","December"],monthNamesShort:["Scha","Fev","Mar","Avr","Matg","Zer","Fan","Avu","Sett","Oct","Nov","Dec"],dayNames:["Dumengia","Glindesdi","Mardi","Mesemna","Gievgia","Venderdi","Sonda"],dayNamesShort:["Dum","Gli","Mar","Mes","Gie","Ven","Som"],dayNamesMin:["Du","Gl","Ma","Me","Gi","Ve","So"],weekHeader:"emna",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.rm;a.regional.ro={closeText:"Închide",prevText:"&#xAB; Luna precedentă",nextText:"Luna următoare &#xBB;",currentText:"Azi",monthNames:["Ianuarie","Februarie","Martie","Aprilie","Mai","Iunie","Iulie","August","Septembrie","Octombrie","Noiembrie","Decembrie"],
52monthNamesShort:["Ian","Feb","Mar","Apr","Mai","Iun","Iul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Duminică","Luni","Marţi","Miercuri","Joi","Vineri","Sâmbătă"],dayNamesShort:["Dum","Lun","Mar","Mie","Joi","Vin","Sâm"],dayNamesMin:["Du","Lu","Ma","Mi","Jo","Vi","Sâ"],weekHeader:"Săpt",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.ro;a.regional.ru={closeText:"Закрыть",prevText:"&#x3C;Пред",nextText:"След&#x3E;",currentText:"Сегодня",monthNames:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthNamesShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],dayNames:["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],dayNamesShort:["вск","пнд","втр","срд","чтв","птн","сбт"],dayNamesMin:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],weekHeader:"Нед",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.ru;a.regional.sk={closeText:"Zavrieť",prevText:"&#x3C;Predchádzajúci",nextText:"Nasledujúci&#x3E;",currentText:"Dnes",monthNames:["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december"],monthNamesShort:["Jan","Feb","Mar","Apr","Máj","Jún","Júl","Aug","Sep","Okt","Nov","Dec"],dayNames:["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"],dayNamesShort:["Ned","Pon","Uto","Str","Štv","Pia","Sob"],dayNamesMin:["Ne","Po","Ut","St","Št","Pia","So"],weekHeader:"Ty",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.sk;a.regional.sl={closeText:"Zapri",prevText:"&#x3C;Prejšnji",nextText:"Naslednji&#x3E;",currentText:"Trenutni",monthNames:["Januar","Februar","Marec","April","Maj","Junij","Julij","Avgust","September","Oktober","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],dayNames:["Nedelja","Ponedeljek","Torek","Sreda","Četrtek","Petek","Sobota"],dayNamesShort:["Ned","Pon","Tor","Sre","Čet","Pet","Sob"],dayNamesMin:["Ne","Po","To","Sr","Če","Pe","S
52o"],weekHeader:"Teden",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.sl;a.regional.sq={closeText:"mbylle",prevText:"&#x3C;mbrapa",nextText:"Përpara&#x3E;",currentText:"sot",monthNames:["Janar","Shkurt","Mars","Prill","Maj","Qershor","Korrik","Gusht","Shtator","Tetor","Nëntor","Dhjetor"],monthNamesShort:["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gus","Sht","Tet","Nën","Dhj"],dayNames:["E Diel","E Hënë","E Martë","E Mërkurë","E Enjte","E Premte","E Shtune"],dayNamesShort:["Di","Hë","Ma","Më","En","Pr","Sh"],dayNamesMin:["Di","Hë","Ma","Më","En","Pr","Sh"],weekHeader:"Ja",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.sq;a.regional["sr-SR"]={closeText:"Zatvori",prevText:"&#x3C;",nextText:"&#x3E;",currentText:"Danas",monthNames:["Januar","Februar","Mart","April","Maj","Jun","Jul","Avgust","Septembar","Oktobar","Novembar","Decembar"],monthNamesShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],dayNames:["Nedelja","Ponedeljak","Utorak","Sreda","Četvrtak","Petak","Subota"],dayNamesShort:["Ned","Pon","Uto","Sre","Čet","Pet","Sub"],dayNamesMin:["Ne","Po","Ut","Sr","Če","Pe","Su"],weekHeader:"Sed",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional["sr-SR"];a.regional.sr={closeText:"Затвори",prevText:"&#x3C;",nextText:"&#x3E;",currentText:"Данас",monthNames:["Јануар","Фебруар","Март","Април","Мај","Јун","Јул","Август","Септембар","Октобар","Новембар","Децембар"],monthNamesShort:["Јан","Феб","Мар","Апр","Мај","Јун","Јул","Авг","Сеп","Окт","Нов","Дец"],dayNames:["Недеља","Понедељак","Уторак","Среда","Четвртак","Петак","Субота"],dayNamesShort:["Нед","Пон","Уто","Сре","Чет","Пет","Суб"],dayNamesMin:["Не","По","Ут","Ср","Че","Пе","Су"],weekHeader:"Сед",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.sr;a.regional.sv={closeText:"Stäng",prevText:"&#xAB;Förra",nextText:"Nästa&#xBB;",currentText:"Idag",monthNames:["Januari","Februari","Mars","April","Maj","Juni","Juli","Augusti","September","Oktober","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],dayNamesShort:["Sön","Mån","Tis","Ons","Tor","Fre","Lör"],dayNames:["Söndag","Måndag","Tisdag","Onsdag","Torsdag","Fredag","Lördag"],dayNamesMin:["Sö","Må","Ti","On","To","Fr","Lö"],weekHeader:"Ve",dateFormat:"yy-mm-dd",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.sv;a.regional.ta={closeText:"மூடு",prevText:"முன்னையது",nextText:"அடுத்தது",currentText:"இன்று",monthNames:["தை","மாசி","பங்குனி","சித்திரை","வைகாசி","ஆனி","ஆடி","ஆவணி","புரட்டாசி","ஐப்பசி","கார்த்திகை","மார்கழி"],monthNamesShort:["தை","மாசி","பங்","சித்","வைகா","ஆனி","ஆடி","ஆவ","புர","ஐப்","கார்","மார்"],dayNames:["ஞாயிற்றுக்கிழமை","திங்கட்கிழமை","செவ்வாய்க்கிழமை","புதன்கிழமை","வியாழக்கிழமை","வெள்ளிக்கிழமை","சனிக்கிழமை"],dayNamesShort:["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"],dayNamesMin:["ஞா","தி","செ","பு","வி","வெ","ச"],weekHeader:"Не",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.ta;a.regional.th={closeText:"ปิด",prevText:"&#xAB;&#xA0;ย้อน",nextText:"ถัดไป&#xA0;&#xBB;",currentText:"วันนี้",monthNames:["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม"],monthNamesShort:["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค."],dayNames:["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"],dayNamesShort:["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."],dayNamesMin:["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."],weekHeader:"Wk",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.th;a.regional.tj={closeText:"Идома",prevText:"&#x3c;Қафо",nextText:"Пеш&#x3e;",currentText:"Имрӯз",monthNames:["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр"],monthNamesShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],dayNames:["якшанбе","душанбе","сешанбе","чоршанбе","панҷшанбе","ҷумъа","шанбе"],dayNamesShort:["якш","душ","сеш","чор","пан","ҷум","шан"],dayNamesMin:["Як","Дш","Сш","Чш","Пш","Ҷм","Шн"],weekHeader:"Хф",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.tj;a.regional.tr={closeText:"kapat",prevText:"&#x3C;geri",nextText:"ileri&#x3e",currentText:"bugün",monthNames:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],monthNamesShort:["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara"],dayNames:["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"],dayNamesShort:["Pz","Pt","Sa","Ça","Pe","Cu","Ct"],dayNamesMin:["Pz","Pt","Sa","Ça","Pe","Cu","Ct"],weekHeader:"Hf",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.tr;a.regional.uk={closeText:"Закрити",prevText:"&#x3C;",nextText:"&#x3E;",currentText:"Сьогодні",monthNames:["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"],monthNamesShort:["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру"],dayNames:["неділя","понеділок","вівторок","середа","четвер","п’ятниця","субота"],dayNamesShort:["нед","пнд","вів","срд","чтв","птн","сбт"],dayNamesMin:["Нд","Пн","Вт","Ср","Чт","Пт","Сб"],weekHeader:"Тиж",dateFormat:"dd.mm.yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.uk;a.regional.vi={closeText:"Đóng",prevText:"&#x3C;Trước",nextText:"Tiếp&#x3E;",currentText:"Hôm nay",monthNames:["Tháng Một","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai"],monthNamesShort:["Tháng 1","Tháng 2","Tháng 3","Tháng 4","Tháng 5","Tháng 6","Tháng 7","Tháng 8","Tháng 9","Tháng 10","Tháng 11","Tháng 12"],dayNames:["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"],dayNamesShort:["CN","T2","T3","T4","T5","T6","T7"],dayNamesMin:["CN","T2","T3","T4","T5","T6","T7"],weekHeader:"Tu",dateFormat:"dd/mm/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""};a.regional.vi;a.regional["zh-CN"]={closeText:"关闭",prevText:"&#x3C;上月",nextText:"下月&#x3E;",currentText:"今天",monthNames:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthNamesShort:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],dayNames:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayNamesShort:["周日","周一","周二","周三","周四","周五","周六"],dayNamesMin:["日","一","二","三","四","五","六"],weekHeader:"周",dateFormat:"yy-mm-dd",firstDay:1,isRTL:!1,showMonthAfterYear:!0,yearSuffix:"年"};a.regional["zh-CN"];a.regional["zh-HK"]={closeText:"關閉",prevText:"&#x3C;上月",nextText:"下月&#x3E;",currentText:"今天",monthNames:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthNamesShort:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],dayNames:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayNamesShort:["周日","周一","周二","周三","周四","周五","周六"],dayNamesMin:["日","一","二","三","四","五","六"],weekHeader:"周",dateFormat:"dd-mm-yy",firstDay:0,isRTL:!1,showMonthAfterYear:!0,yearSuffix:"年"};a.regional["zh-HK"];a.regional["zh-TW"]={closeText:"關閉",prevText:"&#x3C;上月",nextText:"下月&#x3E;",currentText:"今天",monthNames:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthNamesShort:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],dayNames:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayNamesShort:["周日","周一","周二","周三","周四","周五","周六"],dayNamesMin:["日","一","二","三","四","五","六"],weekHeader:"周",dateFormat:"yy/mm/dd",firstDay:1,isRTL:!1,showMonthAfterYear:!0,yearSuffix:"年"};a.regional["zh-TW"]}),define("app",["backbone","underscore","underscoreContrib","heliosAppContext","customSelect","customTooltip","priceCodes","profileManager","shimLoader","heliosObject","storageManager","storeLastInteraction","storeDealerReferrer","disclaimers","skiplinks","stateStoreFactory","queryStringStore","remoteServices","apigeeAuthoriser","numberFormat","priceManager","financeManager","formbuilder","c_344","c_443","smartLocationContext","analyticsManager","datepickerLanguages"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B){"use strict";return{heliosAppContext:void 0,smartLocationContext:void 0,analyticsManager:void 0,financeManager:void 0,numberFormat:void 0,priceManager:void 0,priceCodes:void 0,eventAggregator:void 0,form:void 0,init:function(){h.init({HELIOS:j}),this.heliosAppContext=new d({HELIOS:j}),window.smartLocationContext?this.smartLocationContext=window.smartLocationContext:(this.smartLocationContext=new z({countryCode:this.heliosAppContext.getCountryCode(),profileManager:h,window:window,heliosObject:j}),window.smartLocationContext=this.smartLocationContext),window.analyticsManager&&window.analyticsManager.HELIOS&&window._satellite?this.analyticsManager=window.analyticsManager:(this.analyticsManager=new A({HELIOS:j,window:window,_satellite:window._satellite}),window.analyticsManager=this.analyticsManager),window.eventAggregator?this.eventAggregator=window.eventAggregator:(this.eventAggregator=b.extend({},a.Events),window.eventAggregator=this.eventAggregator),window.remoteServices=b.create(r),k.init(),this.financeManager=new v({HELIOS:j}),this.numberFormat=new t({HELIOS:j}),this.priceManager=new u({HELIOS:j,remoteServices:window.remoteServices,storageManager:k}
52),e.init(),f.init(),i.init(),l.init(),m.init({window:window,HELIOS:j}),n.init({HELIOS:j}),o.init(),p.create({HELIOS:j}),q.init(),this.priceCodes=new g(j&&j.config&&j.config.common&&j.config.common.pricing&&j.config.common.pricing.priceCodes),this.bindEvents();var c=this;"undefined"!=typeof adobe&&adobe.target&&document.addEventListener(adobe.target.event.CONTENT_RENDERING_SUCCEEDED,function(){var a=document.querySelector('.c_443[data-prompt-triggered="true"]'),b=document.querySelector('.c_344[data-form-triggered="true"]');a&&y.init({window:window,HELIOS:j,analyticsManager:c.analyticsManager,smartLocationContext:c.smartLocationContext}),b&&x.init({window:window,HELIOS:j,analyticsManager:c.analyticsManager,smartLocationContext:c.smartLocationContext,eventAggregator:c.eventAggregator})})},bindEvents:function(){window.addEventListener("initRequestQuoteForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,eventAggregator:window.eventAggregator,smartLocationContext:window.smartLocationContext,analyticsManager:window.analyticsManager,globalFinanceCalculator:b.globalFinanceCalculator})}),window.addEventListener("initBrochuresModalForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,analyticsManager:window.analyticsManager,isInline:b.isInline,brochuresModal:b.brochuresModal,customFormHandler:b.customFormHandler})}),window.addEventListener("initBrochuresModalPostForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,eventAggregator:window.eventAggregator,smartLocationContext:window.smartLocationContext,analyticsManager:window.analyticsManager})}),window.addEventListener("initInventoryContactModalForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,eventAggregator:window.eventAggregator,analyticsManager:window.analyticsManager})}),window.addEventListener("initInventoryContactModalBForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,eventAggregator:window.eventAggregator,analyticsManager:window.analyticsManager})}),window.addEventListener("initSelfInventoryModalForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,eventAggregator:window.eventAggregator,analyticsManager:window.analyticsManager})}),window.addEventListener("initSelfInventoryModalFormbuilder",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,eventAggregator:window.eventAggregator,analyticsManager:window.analyticsManager})}),window.addEventListener("initOffersHubInlineForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,eventAggregator:window.eventAggregator,analyticsManager:window.analyticsManager,offersHubInlineForm:b.offersHubInlineForm,smartLocationContext:window.smartLocationContext})}),window.addEventListener("initBrochuresModalDetailsForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,analyticsManager:window.analyticsManager,isInline:b.isInline,brochuresModal:b.brochuresModal,customFormHandler:b.customFormHandler})}),window.addEventListener("initInlineForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,analyticsManager:window.analyticsManager,smartLocationContext:b.smartLocationContext,eventAggregator:b.eventAggregator,isInline:b.isInline,customFormHandler:b.customFormHandler})}),window.addEventListener("initIsConfiguratorsForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,analyticsManager:b.analyticsManager,isConfigurator:b.isConfigurator,smartLocationContext:b.smartLocationContext,eventAggregator:b.eventAggregator,containerPageType:b.containerPageType,sourceComponentId:b.sourceComponentId,scrollableElement:b.scrollableElement})}),window.addEventListener("initNnaIsConfiguratorsForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,analyticsManager:b.analyticsManager,isConfigurator:b.isConfigurator,smartLocationContext:b.smartLocationContext,eventAggregator:b.eventAggregator,containerPageType:b.containerPageType,sourceComponentId:b.sourceComponentId})}),window.addEventListener("initPSInlineForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,analyticsManager:window.analyticsManager,smartLocationContext:window.smartLocationContext,eventAggregator:window.eventAggregator,personalShowroomInlineForm:b.personalShowroomInlineForm})}.bind(this)),window.addEventListener("initPSForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,analyticsManager:window.analyticsManager,smartLocationContext:window.smartLocationContext,eventAggregator:window.eventAggregator})}.bind(this)),window.addEventListener("initPS_1_InlineForm",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,analyticsManager:window.analyticsManager,smartLocationContext:window.smartLocationContext,eventAggregator:window.eventAggregator,personalShowroomInlineForm:b.personalShowroomInlineForm})}.bind(this)),window.addEventListener("initPS_1_Form",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,analyticsManager:window.analyticsManager,smartLocationContext:window.smartLocationContext,eventAggregator:window.eventAggregator})}.bind(this)),window.addEventListener("initPS_B_Form",function(a){var b=a.detail;w.init({HELIOS:b.HELIOS,window:b.window,$el:b.$el,analyticsManager:window.analyticsManager,smartLocationContext:window.smartLocationContext,eventAggregator:window.eventAggregator})}.bind(this))}}}),define("cmpnts/c_019-25B/main",["app","underscore","heliosObject","c_019_25B"],function(a,b,c,d){"use strict";$(".c_019-25B").each(b.bind(function(b,e){new d($(e),{HELIOS:c,analyticsManager:a.analyticsManager,smartLocationContext:a.smartLocationContext,window:window,eventAggregator:a.eventAggregator})},a)),window.c_019_25B=function(b){new d($(b),{HELIOS:c,analyticsManager:a.analyticsManager,smartLocationContext:a.smartLocationContext,window:window,eventAggregator:a.eventAggregator})}}),define("cmpnts/c_019/main",["app","underscore","heliosObject","c_019"],function(a,b,c,d){"use strict";$(".c_019").each(b.bind(function(b,e){a.form=new d($(e),{HELIOS:c,analyticsManager:a.analyticsManager,smartLocationContext:a.smartLocationContext,window:window,backboneEventAggregator:a.eventAggregator})},a)),window.c_019=function(b){a.form=new d($(b),{HELIOS:c,analyticsManager:a.analyticsManager,smartLocationContext:a.smartLocationContext,window:window,backboneEventAggregator:a.eventAggregator})}}),define("cmpnts/c_019-11C/main",["app","heliosObject","c_019_11C"],function(a,b,c){"use strict";c.init({window:window,HELIOS:b,analyticsManager:a.analyticsManager})}),define("cmpnts/c_019-27/main",["app","underscore","heliosObject","c_019_27"],function(a,b,c,d){"use strict";$(".c_019-27").each(b.bind(function(a,b){new d($(b))},a))}),define("cmpnts/c_019-20/main",["app","underscore","heliosObject","c_019_20"],function(a,b,c,d){"use strict";$(".c_019-20").each(b.bind(function(a,b){new d($(b),{HELIOS:c})},a))}),define("cmpnts/c_019-22/main",["app","underscore","heliosObject","c_019_22"],function(a,b,c,d){"use strict";$(".c_019-22").each(b.bind(function(b,e){new d($(e),{HELIOS:c,analyticsManager:a.analyticsManager,window:window})},a))}),define("cmpnts/c_019-23/main",["app","underscore","heliosObject","c_019_23"],function(a,b,c,d){"use strict";$(".c_019-23").each(b.bind(function(b,e){new d($(e),{HELIOS:c,analyticsManager:a.analyticsManager,window:window})},a))}),define("cmpnts/c_019-26/main",["app","underscore","heliosObject","c_019_26"],function(a,b,c,d){"use strict";$(".c_019-26").each(b.bind(function(b,e){new d($(e),{HELIOS:c,analyticsManager:a.analyticsManager,window:window})},a))}),define("cmpnts/c_019-29/main",["app","underscore","heliosObject","c_019_29"],function(a,b,c,d){"use strict";$(".c_019-29").each(b.bind(function(b,e){new d($(e),{HELIOS:c,analyticsManager:a.analyticsManager,window:window})},a))}),define("cmpnts/c_019-30/main",["app","underscore","heliosObject","c_019_30"],function(a,b,c,d){"use strict";$(".c_019-30").each(b.bind(function(b,e){new d($(e),{HELIOS:c,analyticsManager:a.analyticsManager,window:window})},a))}),define("cmpnts/c_019-31/main",["app","heliosObject","c_019_31"],function(a,b,c){"use strict";c.init({window:window,analyticsManager:a.analyticsManager,HELIOS:b,eventAggregator:a.eventAggregator})}),define("cmpnts/c_019-32/main",["app","heliosObject","c_019_32"],function(a,b,c){"use strict";c.init({window:window,HELIOS:b,analyticsManager:a.analyticsManager,eventAggregator:a.eventAggregator})}),define("cmpnts/c_019-34/main",["app","heliosObject","c_019_34"],function(a,b,c){"use strict";c.init({window:window,analyticsManager:a.analyticsManager,HELIOS:b})}),define("cmpnts/c_019-36/main",["app","heliosObject","c_019_36"],function(a,b,c){"use strict";c.init({window:window,analyticsManager:a.analyticsManager,HELIOS:b})}),define("cmpnts/c_019-38/main",["app","heliosObject","c_019_38"],function(a,b,c){"use strict";c.init({window:window,analyticsManager:a.analyticsManager,HELIOS:b})}),define("cmpnts/c_019-37/main",["app","heliosObject","c_019_37"],function(a,b,c){"use strict";c.init({window:window,analyticsManager:a.analyticsManager,HELIOS:b,eventAggregator:a.eventAggregator})}),define("cmpnts/c_020/main",["app","heliosObject","c_020"],function(a,b,c){"use strict";c.init({HELIOS:b,analyticsManager:a.analyticsManager,eventAggregator:a.eventAggregator})}),define("cmpnts/c_026/main",["app","heliosObject","c_026"],function(a,b,c){"use strict";c.init({HELIOS:b,window:window,analyticsManager:a.analyticsManager})}),define("cmpnts/c_026-1/main",["app","heliosObject","c_026_1"],function(a,b,c){"use strict";c.init({analyticsManager:a.analyticsManager,HELIOS:b,window:window})}),define("c_319",["underscore","modal","keyCodeConstants","storageManager"],function(a,b,c,d){"use strict";function e(e){if(y=$.extend({},x,e),t=$(y.selectors.root),v=$(y.selectors.bookingErrorDialogbox),d.init(),!t.length)return!1;delete c.BACKSPACE,delete c.SPACE,y.datepicker.beforeShow=a.bind(m),y.datepicker.onClose=a.bind(n),u=$(y.selectors.datePicker),l(),t.find(y.selectors.submitFormButton).on(y.events.click,function(){$(y.selectors.submitFormButton).addClass(y.classes.btnLoader),y.analytics.buttonText=$(y.selectors.submitFormButton).text(),g()}),t.find(y.selectors.expiredBookingCta).on(y.events.click,function(){q($(this).text(),$(this).attr(y.attributes.href))}),w=new b({displayType:b.TYPE_CENTERED,customClass:"manage-booking-modal",customOverlayClass:"modal-overlay-dark manage-booking-overlay-modal",closeText:"close",touchMoveEnabled:!0}),t.find(y.selectors.submitFormButtonBeta).on(y.events.click,function(){w.open(y.selectors.modalContentWrapper).then(function(){var b=$(y.selectors.manageBookingModalContent);if(!$(y.selectors.cancelBookingReasonWrapper).hasClass(y.classes.hidden)){var d,e=$(y.selectors.textareaContainer),g=$(y.selectors.cancelBookingReason),h=$(y.selectors.othersTextarea).closest(y.selectors.formGroup).hasClass(y.classes.required);f(!0),$(y.selectors.ctaBtnCancel).addClass(y.classes.btnDisabled).prop(y.attributes.disabled,!0),e.find(y.selectors.textareaMandatoryErrorMessage).text(e.find(y.selectors.othersTextarea).data(y.data.validationMessage)),g.val("")}b.find(y.selectors.cancellationReason).on(y.events.change,function(){var a=$(this).closest(y.selectors.formGroup),b=$(this).find(y.selectors.optionSelected).text(),c=$(this).siblings(y.selectors.selectedValue),h=$(this).find(y.selectors.optionSelected).data(y.data.dataKeyCancellationReason).toLowerCase()===y.constants.others;$(y.selectors.ctaBtnCancel).removeClass(y.classes.btnDisabled).prop(y.attributes.disabled,!1),""!==b?(a.addClass(y.classes.complete),c.text(b),g.val(b)):a.removeClass(y.classes.complete),h?e.slideDown().show():(e.slideUp(),d=!1,f())}),b.find(y.selectors.othersTextarea).on(y.events.keyup,function(b){var f,i=$(this),j=new RegExp(i.data(y.data.customRegexPatternValidation)),k=a.contains(c,b.which);$(y.selectors.othersTextarea).val(b.target.value),f=i.val().trim(),d=!!f&&j.test(f),g.val(f),!k&&e.toggleClass(y.classes.error,!d&&h).toggleClass(y.classes.complete,d)}),$(y.selectors.ctaBtnKeep).off().on(y.events.click,function(){w.close(),s($(this).text())}),$(y.selectors.ctaBtnCancel).off().on(y.events.click,function(){if(e&&e.is(y.states.visible)&&h&&!d)return e.addClass(y.classes.error),!1;$(y.selectors.ctaBtnCancel).addClass(y.classes.btnLoader),$(y.selectors.ctaBtnKeep).addClass(y.classes.btnDisabled),$(y.selectors.modalClose).addClass(y.classes.btnDisabled),i(),s($(this).text())})})}),t.find(y.selectors.getDirectionCta).add(y.selectors.callDealerCta).on(y.events.click,function(){r($(this))}),o()}function f(a){a&&$(y.selectors.textareaContainer).hide(),$(y.selectors.textareaContainer).removeClass(y.classes.complete).removeClass(y.classes.error),$(y.selectors.othersTextarea).val("")}function g(){var a=$(y.selectors.submitForm).data(y.data.reservationIdUrl),b=t.data(y.data.updateSuccessPageUrl),c=t.find(y.selectors.form).serialize();j(),$.ajax({type:"POST",url:a,data:c}).done(function(a){window.location.href=b}).fail(function(){h(),p()})}function h(){var a=v.data(y.data.submitBookingError);v.text(a),v.removeClass(y.classes.hidden),$(y.selectors.submitFormButton+","+y.selectors.ctaBtnCancel).removeClass(y.classes.btnLoader),$(y.selectors.ctaBtnKeep+","+y.selectors.modalClose).removeClass(y.classes.btnDisabled)}function i(){var a=$(y.selectors.ctaBtnCancel).data(y.data.reservationIdUrl),b=t.data(y.data.cancelSuccessPageUrl),c=$(y.selectors.modalContentWrapper).find(y.selectors.form).serialize();$.ajax({type:"POST",url:a,data:c}).done(function(a){window.location.href=b}).fail(function(){w.close(),h()})}function j(){var a=$(y.selectors.vehicleImagePictureSource),b=$(y.selectors.vehicleImagePictureImg),c=$(y.selectors.vehicleName).text(),e={};e.header=c||"",a&&(e.desktopImage=a.length>2?a.eq(2).attr(y.attributes.srcset).split(",")[0]:"",e.tabletImage=a.length>1?a.eq(1).attr(y.attributes.srcset).split(",")[0]:"",e.mobileImage=a.length>0?a.eq(0).attr(y.attributes.srcset).split(",")[0]:""),e.imageAlt=b?b.attr(y.attributes.alt):"",d.saveItem(y.selectedModel,e,y.storageManagerOptions.sessionStorage),$(y.selectors.vehicleSpecs).length&&k()}function k(){var a=$(y.selectors.vehicleSpecs),b={};a.each(function(){for(var a=$(this),c=a.text().trim(),d=a.attr("class").split(" "),e=null,f=0;f<d.length;f++)if("vehicle-spec"!==d[f]){e=d[f];break}1!=d.length||e||(e=y.constants.powertrain),e&&(b[e]=c)}
52),d.saveItem(y.vinDetails,b,y.storageManagerOptions.sessionStorage)}function l(){var a=$("html").attr("lang"),b=$("html").attr("lang").split("-")[0],c=u.data(y.data.placeholder),d=c?c.split("-"):"",e=d?new Date(d[2],parseInt(d[1])-1,d[0]):"";u.datepicker($.extend(y.datepicker,{})),u.datepicker("option",y.attributes.disabled,!0),void 0!==$.datepicker.regional[a]?($.datepicker.setDefaults($.datepicker.regional[a]),u.attr(y.attributes.placeholder,e?$.datepicker.formatDate($.datepicker.regional[a].dateFormat,e):"")):void 0!==$.datepicker.regional[b]?($.datepicker.setDefaults($.datepicker.regional[b]),u.attr(y.attributes.placeholder,e?$.datepicker.formatDate($.datepicker.regional[b].dateFormat,e):"")):($.datepicker.setDefaults($.datepicker.regional[""]),u.attr(y.attributes.placeholder,e?$.datepicker.formatDate($.datepicker.regional[""].dateFormat,e):"")),$(y.selectors.timeSelected).html(u.data(y.data.timeSelected))}function m(a,b){var c,d,e,f,g;$(window).height(),$(window).scrollTop(),g=$("#"+b.id),e=b.dpDiv,c=parseInt(g.css("height"),10),d=g.position(),f=d.top+c,(new Date).getMonth(),setTimeout(function(){e.outerHeight();e.css({position:"absolute",top:f,left:0,"z-index":10})}.bind(this),10),g.before($.datepicker.dpDiv),g.parents(y.selectors.realTimeBookingContainer).addClass(y.classes.rtbCalendarOpen)}function n(a,b){$("#"+b.id).parents(y.selectors.realTimeBookingContainer).removeClass(y.classes.rtbCalendarOpen),$(y.selectors.formGroup).hasClass(y.classes.error)||$(y.selectors.submitFormButton).removeClass(y.classes.btnDisabled).removeAttr(y.attributes.disabled)}function o(){t.find(y.selectors.bookingType).val()===y.bookingTypeHome&&$(y.selectors.body).trigger(y.events.serviceDriveTimeslot,!0)}function p(){var a=y.analyticsManager.trackingVars.buttonNoCookie,b=y.analyticsManager.getTrackingObjectProperties(a),c={};c[b.componentId]=y.analytics.componentId,c[b.locationInPage]=y.analytics.locationInPage,c[b.buttonText]=y.analytics.buttonText,c[b.errorMessage]=y.analytics.errorMessage,y.analyticsManager.track(a,c)}function q(a,b){var c=y.analyticsManager.trackingVars.genericClick,d=y.analyticsManager.getTrackingObjectProperties(c),e={};e[d.componentId]=y.analytics.componentId,e[d.locationInPage]=y.analytics.expiredBookingPage.locationInPage,e[d.buttonText]=a,e[d.destination]=b,y.analyticsManager.track(c,e)}function r(a){var b=y.analyticsManager.trackingVars.buttonNoCookie,c=y.analyticsManager.trackingVars.genericClick,d=a.context.className===y.classes.number,e=d?b:c,f=y.analyticsManager.getTrackingObjectProperties(e),g=a.text(),h={};h[f.componentId]=y.analytics.componentId,h[f.locationInPage]=y.analytics.locationInPage,d?(h[f.contentAction]=y.analytics.callDealer,h[f.buttonText]=y.analytics.callDealer):(h[f.destination]=a.attr(y.attributes.href),h[f.buttonText]=g),y.analyticsManager.track(e,h)}function s(a){var b=y.analyticsManager.trackingVars.buttonNoCookie,c=y.analyticsManager.getTrackingObjectProperties(b),d={};d[c.componentId]=y.analytics.componentId,d[c.locationInPage]=y.analytics.locationInPage,d[c.buttonText]=a,d[c.contentAction]=a,y.analyticsManager.track(b,d)}var t,u,v,w,x={events:{click:"touchstart click",serviceDriveTimeslot:"serviceDriveTimeslot",change:"change",keyup:"keyup"},selectors:{root:".c_319",form:"form",datePicker:".date-picker",realTimeBookingContainer:".c_019-11C",ctaBtnCancel:".cta-btn-cancel",ctaBtnKeep:".cta-btn-keep",modalContentWrapper:"#c_319_modal_content_wrapper",submitForm:".submit-form",submitFormButton:".submit-form-button",submitFormButtonBeta:".submit-form-button-beta",bookingErrorDialogbox:".booking-error-dialogbox",modalClose:".modal-close",formGroup:".form-group",timeSelected:".time-selected",expiredBookingCta:"a.manage-booking-cta",vehicleImagePictureSource:".vehicle-image picture source",vehicleImagePictureImg:".vehicle-image picture img",vehicleName:".vehicle-name",callDealerCta:".phone-number a",getDirectionCta:".get-direction-cta a",bookingType:"input[name='bookingType']",body:"body",vehicleSpecs:".vehicle-specs .vehicle-spec",cancellationReason:"#cancellation-reason",manageBookingModalContent:".manage-booking-modal  .c_319_modal_content",othersTextarea:"textarea.others",optionSelected:"option:selected",selectedValue:".selectedValue",textareaContainer:".form-group.text-area-container",textareaMandatoryErrorMessage:".error-message",cancelBookingReason:"input[type=hidden][name=cancelBookingReason]",cancelBookingReasonWrapper:".cancel-booking-reasons"},classes:{rtbCalendarOpen:"rtb-calendar-open",btnLoader:"btn-loader",btnDisabled:"btn-disabled",hidden:"hidden",error:"error",number:"number",complete:"complete",required:"required"},states:{visible:":visible",checked:":checked"},datepicker:{nextText:"",prevText:"",showOn:"both",buttonText:" ",minDate:null,maxDate:null,yearRange:"-100:+20",beforeShow:"",onClose:"",onSelect:"",changeMonth:!0,changeYear:!0,isRTL:!1},data:{reservationIdUrl:"reservation-id-url",updateBookingUrl:"update-booking-url",submitBookingError:"submit-booking-error",updateSuccessPageUrl:"update-success-page-url",cancelSuccessPageUrl:"cancel-success-page-url",placeholder:"placeholder",timeSelected:"time-selected",dataKeyCancellationReason:"key",validationMessage:"validation-notblank",customRegexPatternValidation:"validation-customregex-pattern"},attributes:{disabled:"disabled",placeholder:"placeholder",href:"href",srcset:"srcset",alt:"alt",value:"value"},analytics:{componentId:"C319_Manage_Booking",locationInPage:"manage-booking",buttonText:"",errorMessage:"server error",expiredBookingPage:{locationInPage:"manage-booking-errorpage-cta"},callDealer:"call dealer"}
52,selectedModel:"modelDetails",vinDetails:"vinDetails",bookingTypeHome:"home",storageManagerOptions:{sessionStorage:{mode:"sessionStorage"}},constants:{others:"others",
53powertrain:"powertrain"}},y=null;return{init:e,datePickerSettings:m,datePickerClose:n,cancelBookingReservationId:i,rescheduleBooking:g,trackFailedBooking:p,trackDealerConnectInteraction:r,trackCancelBookingModalCtas:s}}),define("cmpnts/c_319/main",["app","heliosObject","c_319"],function(a,b,c){"use strict";c.init({window:window,HELIOS:b,analyticsManager:a.analyticsManager})}),define("cmpnts/c_344/main",["app","heliosObject","c_344"],function(a,b,c){"use strict";c.init({window:window,HELIOS:b,analyticsManager:a.analyticsManager,smartLocationContext:a.smartLocationContext,eventAggregator:a.eventAggregator}),"undefined"!=typeof adobe&&adobe.target&&document.addEventListener(adobe.target.event.CONTENT_RENDERING_SUCCEEDED,function(){document.querySelector('[class="c_344"][data-form-triggered="true"]')&&c.init({window:window,HELIOS:b,analyticsManager:a.analyticsManager,smartLocationContext:a.smartLocationContext,eventAggregator:a.eventAggregator})})}),define("cmpnts/c_344B/scripts/c_344B",["jquery","backbone","formbuilder","modal","c_322","c_026","c_020","c_040","storageManager","underscore","cookiesManager","c_026_1"],function(a,b,c,d,e,f,g,h,i,j,k,l){"use strict";function m(b,c){this.settings=a.extend({},s,c),this.root=a(b),this.analyticsManager=c.analyticsManager,this.init()}var n,o,p,q,r,s={classes:{customModalClass:"form-in-popup-custom",loading:"loading",body:"body",btnDisabled:"btn-disabled"},selectors:{root:".c_344B",modal:".c_129",formBuilder:".c_019",modalContentSelector:".form-in-popup-custom.open.animate-in .modal-content",modalFormHeaderSection:".form-in-popup-custom.open.animate-in .modal-content .form.section",modalFormErrorSection:".form-in-popup-custom.open.animate-in .modal-content .form.section .c_019",modalScripts:".modal-scripts-c_344",primarySpinner:".primary-spinner",secondarySpinner:".secondary-spinner",submitFormButton:".submit-form-button",overlayErrorContent:".modal-content .c_019 .error-content",errorContent:".error-content",headerSection:".modal-content .grid-row .col-12",overlayElement:".form-in-popup-custom.open",formsOverlayThankyouPageTracking:"script[data-forms-overlay-tracking]",dynamicThankyouPageRoot:".c_026, .c_026-1"},dataAttribute:{formAsset:"form-asset-href",formConfirmationAsset:"form-confirmation-asset-href",timeDelay:"time-delay",formName:"formName",formCategory:"formCategory",formType:"formType",targetTrigger:"target-trigger",formHeaderAsset:"form-header-href",overlayServerErrorMsg:"data-overlay-servererrortext",rtbEnabled:"rtb-enabled",disableTimeDelay:"disable-time-delay",formTriggered:"form-triggered"},attributes:{disabled:"disabled"},ajaxResponse:{success:"success",failure:"failure",error:"error"},analytics:{componentId:"C344_B_Pop-up-Form_Overlay",popInForm:"pop-in form",formStepNumber:"step-0",enabled:"enabled"},storage:{localStorageKey:"popupFormShown",storageValue:!0,expiryDays:30,activeModalStorageKey:"activeModalSession"}};return m.prototype.init=function(){i.init(),p=i.loadItem(this.settings.storage.localStorageKey)||!1,r=this.root.data(this.settings.dataAttribute.targetTrigger),q=new k("popupFormTrigger");var b=this.root.data(this.settings.dataAttribute.formTriggered),c=this.root.data(this.settings.dataAttribute.disableTimeDelay);b||c?this.initModel(!0):p&&!r||(r&&(j.isUndefined(q.get())||"true"!=q.get())?a(window).scroll(function(){j.isUndefined(q.get())||"true"!=q.get()||this.popupOnScroll||(this.popupOnScroll=!0,this.initModel())}.bind(this)):this.initModel())},m.prototype.initModel=function(b,k){function m(){var a=setInterval(function(){var b=i.loadItem(D.settings.storage.activeModalStorageKey);b&&0!==b.activeModalCount||(p(5e3),clearInterval(a))},1e3)}function p(a){var b=a||C;if(D.root.data(D.settings.dataAttribute.disableTimeDelay))return void q();setTimeout(function(){var a=i.loadItem(D.settings.storage.activeModalStorageKey);a&&0!==a.activeModalCount?m():t()},b)}function q(){var a=D.root.attr("id"),b=D.root[0];document.querySelectorAll('button[data-overlay-id="'+a+'"]').forEach(function(a){a.addEventListener("click",function(){var a=new CustomEvent("openOverlay",{bubbles:!0});b.dispatchEvent(a)})}),b.addEventListener("openOverlay",function(a){t()})}function s(){return D.settings.smartLocationContext}function t(){if(!b){if(document.querySelector('.c_443[data-prompt-triggered="true"]')||document.querySelector('.c_344[data-form-triggered="true"]'))return}n=new d({displayType:d.TYPE_RIGHTSLIDE,customClass:D.settings.classes.customModalClass,customOverlayClass:"modal-overlay-dark form-in-popup-custom-overlay",preventScrollTop:!0}),s()&&s()._storeCustomLocalStorageExpiryDays(D.settings.storage.localStorageKey,D.settings.storage.storageValue,D.settings.storage.expiryDays),n.open().done(function(){var b=document.querySelector(D.settings.selectors.modalContentSelector);a(D.settings.selectors.modalContentSelector).addClass(D.settings.classes.loading),b.innerHTML="",a.ajax({type:"GET",url:A,dataType:"html",success:j.bind(function(a){y=a})}),a.ajax({type:"GET",url:z,dataType:"html",success:j.bind(function(d){var i;a(D.settings.selectors.modalContentSelector).removeClass(D.settings.classes.loading),b.innerHTML=d,a(D.settings.selectors.modalContentSelector).prepend(y),o=D.settings.eventAggregator,i=a(D.settings.selectors.modalContentSelector).find('script[type!="text/x-handlebars-template"]'),a(D.settings.selectors.modalScripts).remove(),a(D.settings.classes.body).append('<div class="modal-scripts-c_344"></div>'),a.each(i,function(b){var c=i[b].outerHTML;a(D.settings.selectors.modalScripts).append(c)}),c.init({HELIOS:D.settings.HELIOS,window:D.settings.window,$el:a(D.settings.selectors.modal),analyticsManager:D.settings.analyticsManager,isInline:!0,eventAggregator:o,smartLocationContext:D.settings.smartLocationContext}),v(),window.eventAggregator.on("formResponse",function(c){if(c&&c.responseData&&(c.responseData.result===D.settings.ajaxResponse.success||c.responseData.success)){var d,e,g,h=c.trackingObject,k=c.trackingVar,m=c.trackingObject;D.settings.HELIOS&&D.settings.HELIOS.components&&D.settings.HELIOS.components.c_019_31?(d=c.isRtbFallback?D.settings.HELIOS.components.c_019_31.fallbackOverlayPath:D.settings.HELIOS.components.c_019_31.successOverlayPath,e=c.isRtbFallback?D.settings.HELIOS.components.c_019_31.fallbackOverlayHeader:D.settings.HELIOS.components.c_019_31.successOverlayHeader):d=B,a.aja
53x({type:"GET",url:d,dataType:"html"}).done(function(c){b.innerHTML=c,i=a(D.settings.selectors.modalContentSelector).find('script[type!="text/x-handlebars-template"]'),a(D.settings.selectors.modalScripts).remove(),a(D.settings.classes.body).append('<div class="modal-scripts-c_344"></div>'),a.each(i,function(b){a(D.settings.selectors.modalScripts).append(i[b].outerHTML)}),l.init({HELIOS:D.settings.HELIOS,window:D.settings.window,analyticsManager:D.settings.analyticsManager,modalWindow:!0,trackingObj:h,trackingVar:k}),f.init({HELIOS:D.settings.HELIOS,window:D.settings.window,analyticsManager:D.settings.analyticsManager,modalWindow:!0,trackingObj:h,trackingVar:k});try{g=a(D.settings.selectors.formsOverlayThankyouPageTracking).length&&JSON.parse(j.unescape(a(D.settings.selectors.formsOverlayThankyouPageTracking).html())),w(g,m)}catch(error){throw new Error("Cannot parse Overlay tracking JSON")}j.isUndefined(e)||a.ajax({type:"GET",url:e,dataType:"html",success:j.bind(function(b){a(D.settings.selectors.headerSection).eq(0).prepend(b)})})})}else if(c&&c.jqXHRResponse&&c.jqXHRResponse.statusText===D.settings.ajaxResponse.error&&409!==c.jqXHRResponse.status||c&&c.responseData&&c.responseData.result===D.settings.ajaxResponse.failure){if(a(D.settings.selectors.overlayErrorContent).length>0&&a(D.settings.selectors.errorContent).remove(),c&&c.responseData)a(D.settings.selectors.modalFormErrorSection).prepend('<div class="error-content error-group-light"><p>'+c.responseData.errorMessage+"</p></div>");else if(c&&c.jqXHRResponse&&c.jqXHRResponse.statusText===D.settings.ajaxResponse.error&&409!==c.jqXHRResponse.status){var n=a(D.settings.selectors.formBuilder).attr(D.settings.dataAttribute.overlayServerErrorMsg);a(D.settings.selectors.modalFormErrorSection).prepend('<div class="error-content error-group-light"><p>'+n+"</p></div>")}a(D.settings.selectors.primarySpinner)[0]&&a(D.settings.selectors.primarySpinner).addClass("hidden"),a(D.settings.selectors.submitFormButton).removeClass(D.settings.classes.btnDisabled).prop(D.settings.attributes.disabled,!1),u()}}),e.init({window:D.settings.window,HELIOS:D.settings.HELIOS,analyticsManager:D.settings.analyticsManager}),g.init({HELIOS:D.settings.HELIOS,window:D.settings.window,analyticsManager:D.settings.analyticsManager,eventAggregator:o}),h.init({window:D.settings.window,HELIOS:D.settings.HELIOS,analyticsManager:D.settings.analyticsManager,smartLocationContext:D.settings.smartLocationContext,eventAggregator:o})})})})}function u(){var b=a(D.settings.selectors.overlayElement),c=b.find(D.settings.selectors.errorContent);b.length>0&&c.length>0&&b.animate({scrollTop:c.offset().top-b.offset().top+b.scrollTop()},700)}function v(){x();var b=a(D.settings.selectors.formBuilder),c=D.settings.analyticsManager.trackingVars.formSteps,d=D.settings.analyticsManager.getTrackingObjectProperties(c),e=D.settings.analytics.componentId,f=D.settings.HELIOS.adobe.tagging.pageName+"|"+D.settings.analytics.popInForm,g=D.settings.HELIOS.adobe.tagging.formName||b.data(D.settings.dataAttribute.formName),h=D.settings.HELIOS.adobe.tagging.formType||b.data(D.settings.dataAttribute.formType),i=D.settings.HELIOS.adobe.tagging.formCategory||b.data(D.settings.dataAttribute.formCategory),j=D.settings.analytics.popInForm,k=D.settings.analytics.formStepNumber,l={};l[d.componentId]=e,l[d.pageName]=f,l[d.formType]=h,l[d.formCategory]=i,l[d.formStepName]=j,l[d.formStepNumber]=k,l[d.formName]=g,HELIOS&&HELIOS.components&&(HELIOS.components.c_019_31&&(l[d.homeTestDrive]=HELIOS.components.c_019_31.homeTestDriveEnabled,HELIOS.components.c_019_31.rtb&&(l[d.realTimePicker]=D.settings.analytics.enabled)),HELIOS.components.c_019_32&&(l[d.extendedTestDrive]=HELIOS.components.c_019_32.extendedTestDrive)),D.settings.analyticsManager.track(c,l)}function w(b,c){var d,e=D.settings.analyticsManager.trackingVars.formSteps,f=D.settings.analyticsManager.getTrackingObjectProperties(e),g={},h=Object.keys(b),i=Object.keys(b.dtmStoreFieldsJson);a.each(h,function(a){d=h[a],j.isUndefined(f[d])||(f[d]==f.pageName||f[d]==f.formName&&HELIOS.components&&!HELIOS.components.c_026?g[f[d]]=b[d]+"|"+D.settings.analytics.popInForm:g[f[d]]=b[d])}),a.each(i,function(a){d=i[a],j.isUndefined(f[d])||g[d]||(g[f[d]]=b.dtmStoreFieldsJson[d])}),Object.keys(c).length&&(g[f.formSubmission]=c.formSubmission,g[f.formSubmissionSuccess]=c.formSubmissionSuccess),g[f.realTimePicker]=!!a(D.settings.selectors.dynamicThankyouPageRoot).data(D.settings.dataAttribute.rtbEnabled),j.isUndefined(HELIOS.adobe.tagging.realTimeBookingSuccess)||(g[f.realTimeBookingSuccess]=HELIOS.adobe.tagging.realTimeBookingSuccess),D.settings.analyticsManager.track(e,g)}function x(){"undefined"!=typeof adobe&&adobe.target&&adobe.target.trackEvent({mbox:"target-global-mbox",params:{c344_popin_displayed:"true"}})}var y,z=this.root.data(this.settings.dataAttribute.formAsset),A=this.root.data(this.settings.dataAttribute.formHeaderAsset),B=this.root.data(this.settings.dataAttribute.formConfirmationAsset),C=1e3*this.root.data(this.settings.dataAttribute.timeDelay),D=this;if(b){if(document.querySelector('.c_443[data-prompt-triggered="true"]')&&!k)return;var E=document.querySelector('.c_344[data-form-triggered="true"]');E&&(z=a(E).data(this.settings.dataAttribute.formAsset),B=a(E).data(this.settings.dataAttribute.formConfirmationAsset),C=1e3*a(E).data(this.settings.dataAttribute.timeDelay))}!k&&(r||C<=0)&&(C=1e3),p()},m}),define("cmpnts/c_344B/main",["app","jquery","heliosObject","cmpnts/c_344B/scripts/c_344B"],function(a,b,c,d){"use strict";b(".c_344B").each(function(e,f){new d(b(f),{window:window,HELIOS:c,analyticsManager:a.analyticsManager,smartLocationContext:a.smartLocationContext,eventAggregator:a.eventAggregator})}),"undefined"!=typeof adobe&&adobe.target&&document.addEventListener(adobe.target.event.CONTENT_RENDERING_SUCCEEDED,function(){var e=b('[class="c_344B"][data-form-triggered="true"]');e.length&&new d(b(e),{window:window,HELIOS:c,analyticsManager:a.analyticsManager,smartLocationContext:a.smartLocationContext,eventAggregator:a.eventAggregator})})}),define("cmpnts/c_344C/scripts/c_344C",["jquery","backbone","formbuilder","modal","c_322","c_026","c_020","c_040","storageManager","underscore","cookiesManager","c_026_1"],function(a,b,c,d,e,f,g,h,i,j,k,l){"use strict";function m(b,c){this.$settings=a.extend({},o,c),this.$root=a(b),this.$formContainer=this.$root.find(".form-container"),this.analyticsManager=c.analyticsManager,this.init()}var n,o={classes:{customModalClass:"form-in-popup-custom",loading:"loading",body:"body",btnDisabled:"btn-disabled"},selectors:{root:".c_344C",modal:".c_129",formBuilder:".c_019",modalContentSelector:".form-in-popup-custom.open.animate-in .modal-content",modalFormHeaderSection:".form-in-popup-custom.open.animate-in .modal-content .form.section",modalFormErrorSection:".form-in-popup-custom.open.animate-in .modal-content .form.section .c_019",modalScripts:".modal
53-scripts-c_344",primarySpinner:".primary-spinner",secondarySpinner:".secondary-spinner",submitFormButton:".submit-form-button",overlayErrorContent:".modal-content .c_019 .error-content",errorContent:".error-content",headerSection:".modal-content .grid-row .col-12",overlayElement:".form-in-popup-custom.open",formsOverlayThankyouPageTracking:"script[data-forms-overlay-tracking]",dynamicThankyouPageRoot:".c_026, .c_026-1"},dataAttribute:{formAsset:"form-asset-href",formConfirmationAsset:"form-confirmation-asset-href",timeDelay:"time-delay",formName:"formName",formCategory:"formCategory",formType:"formType",targetTrigger:"target-trigger",formHeaderAsset:"form-header-href",overlayServerErrorMsg:"data-overlay-servererrortext",rtbEnabled:"rtb-enabled",disableTimeDelay:"disable-time-delay",formTriggered:"form-triggered"},attributes:{disabled:"disabled"},ajaxResponse:{success:"success",failure:"failure",error:"error"},analytics:{componentId:"C344_B_Pop-up-Form_Overlay",popInForm:"pop-in form",formStepNumber:"step-0",enabled:"enabled"},storage:{localStorageKey:"popupFormShown",storageValue:!0,expiryDays:30,activeModalStorageKey:"activeModalSession"}};return m.prototype.init=function(){this.initModel()},m.prototype.initModel=function(){function b(a){a?(C.$root.addClass(C.$settings.classes.loading),C.$formContainer.innerHTML=""):C.$root.removeClass(C.$settings.classes.loading)}function d(b,c){a.ajax({type:"GET",url:b,dataType:"html",success:j.bind(function(a){c(a)})})}function i(a,d){b(!1),C.$formContainer.html(a),C.$formContainer.prepend(d),n=C.$settings.eventAggregator,v(),c.init({HELIOS:C.$settings.HELIOS,window:C.$settings.window,$el:C.$formContainer,analyticsManager:C.$settings.analyticsManager,isInline:!0,eventAggregator:n,smartLocationContext:C.$settings.smartLocationContext})}function k(b,c){window.eventAggregator&&"function"==typeof window.eventAggregator.off&&window.eventAggregator.off("formResponse",o),a("body").off("widgetClosed.c_594",k),p()}function m(c,d,e){b(!1),C.$formContainer.html(c),a("body").on("widgetClosed.c_594",k),l.init({HELIOS:C.$settings.HELIOS,window:C.$settings.window,analyticsManager:C.$settings.analyticsManager,modalWindow:!0,trackingObj:d,trackingVar:e}),f.init({HELIOS:C.$settings.HELIOS,window:C.$settings.window,analyticsManager:C.$settings.analyticsManager,modalWindow:!0,trackingObj:d,trackingVar:e})}function o(b){if(b&&b.responseData&&(b.responseData.result===C.$settings.ajaxResponse.success||b.responseData.success)){var c,d,e,f=b.trackingObject,g=b.trackingVar,h=b.trackingObject;C.$settings.HELIOS&&C.$settings.HELIOS.components&&C.$settings.HELIOS.components.c_019_31?(c=b.isRtbFallback?C.$settings.HELIOS.components.c_019_31.fallbackOverlayPath:C.$settings.HELIOS.components.c_019_31.successOverlayPath,d=b.isRtbFallback?C.$settings.HELIOS.components.c_019_31.fallbackOverlayHeader:C.$settings.HELIOS.components.c_019_31.successOverlayHeader):c=B,a.ajax({type:"GET",url:c,dataType:"html"}).done(function(b){m(b,f,g);try{e=a(C.settings.selectors.formsOverlayThankyouPageTracking).length&&JSON.parse(j.unescape(a(C.settings.selectors.formsOverlayThankyouPageTracking).html())),w(e,h)}catch(error){throw new Error("Cannot parse Overlay tracking JSON")}j.isUndefined(d)||a.ajax({type:"GET",url:d,dataType:"html",success:j.bind(function(b){a(C.$settings.selectors.headerSection).eq(0).prepend(b)})})})}else if(b&&b.jqXHRResponse&&b.jqXHRResponse.statusText===C.$settings.ajaxResponse.error&&409!==b.jqXHRResponse.status||b&&b.responseData&&b.responseData.result===C.$settings.ajaxResponse.failure){if(a(C.$settings.selectors.overlayErrorContent).length>0&&a(C.$settings.selectors.errorContent).remove(),b&&b.responseData)a(C.$settings.selectors.modalFormErrorSection).prepend('<div class="error-content error-group-light"><p>'+b.responseData.errorMessage+"</p></div>");else if(b&&b.jqXHRResponse&&b.jqXHRResponse.statusText===C.$settings.ajaxResponse.error&&409!==b.jqXHRResponse.status){var i=a(C.$settings.selectors.formBuilder).attr(C.$settings.dataAttribute.overlayServerErrorMsg);a(C.$settings.selectors.modalFormErrorSection).prepend('<div class="error-content error-group-light"><p>'+i+"</p></div>")}a(C.$settings.selectors.primarySpinner)[0]&&a(C.$settings.selectors.primarySpinner).addClass("hidden"),a(C.$settings.selectors.submitFormButton).removeClass(C.$settings.classes.btnDisabled).prop(C.$settings.attributes.disabled,!1),q()}}function p(){C.$formContainer.empty(),b(!0),d(A,function(a){y=a}),a.ajax({type:"GET",url:z,dataType:"html",success:j.bind(function(a){i(a,y),r(),window.eventAggregator.on("formResponse",o),e.init({window:C.$settings.window,HELIOS:C.$settings.HELIOS,analyticsManager:C.$settings.analyticsManager}),g.init({HELIOS:C.$settings.HELIOS,window:C.$settings.window,analyticsManager:C.$settings.analyticsManager,eventAggregator:n}),h.init({window:C.$settings.window,HELIOS:C.$settings.HELIOS,analyticsManager:C.$settings.analyticsManager,smartLocationContext:C.$settings.smartLocationContext,eventAggregator:n})})})}function q(){var b=a(C.settings.selectors.overlayElement),c=b.find(C.settings.selectors.errorContent);b.length>0&&c.length>0&&b.animate({scrollTop:c.offset().top-b.offset().top+b.scrollTop()},700)}function r(){x();var b=a(C.$settings.selectors.formBuilder),c=C.$settings.analyticsManager.trackingVars.formSteps,d=C.$settings.analyticsManager.getTrackingObjectProperties(c),e=C.$settings.analytics.componentId,f=C.$settings.HELIOS.adobe.tagging.pageName+"|"+C.$settings.analytics.popInForm,g=C.$settings.HELIOS.adobe.tagging.formName||b.data(C.$settings.dataAttribute.formName),h=C.$settings.HELIOS.adobe.tagging.formType||b.data(C.$settings.dataAttribute.formType),i=C.$settings.HELIOS.adobe.tagging.formCategory||b.data(C.$settings.dataAttribute.formCategory),j=C.$settings.analytics.popInForm,k=C.$settings.analytics.formStepNumber,l={};l[d.componentId]=e,l[d.pageName]=f,l[d.formType]=h,l[d.formCategory]=i,l[d.formStepName]=j,l[d.formStepNumber]=k,l[d.formName]=g,HELIOS&&HELIOS.components&&(HELIOS.components.c_019_31&&(l[d.homeTestDrive]=HELIOS.components.c_019_31.homeTestDriveEnabled,HELIOS.components.c_019_31.rtb&&(l[d.realTimePicker]=C.$settings.analytics.enabled)),HELIOS.components.c_019_32&&(l[d.extendedTestDrive]=HELIOS.components.c_019_32.extendedTestDrive)),C.$settings.analyticsManager.track(c,l)}function s(b){if(!Array.isArray(b))return[];var c=C.$root,d=[];return b.forEach(function(b){if(b.selector){var e=c.find(b.selector);b.onlyAddSubSelectors&&Array.isArray(b.subselectors)?e.each(function(){var c=a(this),e=[];
53b.subselectors.forEach(function(a){e=e.concat(c.find(a).toArray())}),e.length&&d.push({type:"group",elements:e})}):(e.each(function(){d.push({type:"element",element:this})}),Array.isArray(b.subselectors)&&e.each(function(){var c=a(this);b.subselectors.forEach(function(a){c.find(a).each(function(){d.push({type:"element",element:this})})})}))}}),d}function t(a){return a.sort(function(a,b){var c="group"===a.type?a.elements[0]:a.element,d="group"===b.type?b.elements[0]:b.element;if(!c||!d)return 0;if(c===d)return 0;var e=c.compareDocumentPosition(d);return e&Node.DOCUMENT_POSITION_FOLLOWING?-1:e&Node.DOCUMENT_POSITION_PRECEDING?1:0})}function u(a){var b=.25,c=0;a.forEach(function(a){"group"===a.type?(a.elements.forEach(function(a){a.style.setProperty("--stagger-delay",c*b+"s")}),c++):"element"===a.type&&(a.element.style.setProperty("--stagger-delay",c*b+"s"),c++)})}function v(){u(t(s([{selector:".c_023-1 .headline"},{selector:".c_023-1 .content-copy"},{selector:".c_020 .figure-container"},{selector:".c_020 .model-form-group"},{selector:".dealerDropdown .form-group"},{selector:".dateTimePicker",subselectors:[".form-group label",".date-picker",".ui-datepicker-trigger",".datepicker-container"],onlyAddSubSelectors:!0},{selector:".scheduleDropdown .form-group.required"},{selector:".dropdown.section .form-group.required"},{selector:".textfield.section .form-group.required"},{selector:".checkbox.section .form-group.checkbox"},{selector:".submit-form"},{selector:".legend"},{selector:".c_001"}])))}function w(b,c){var d,e=C.$settings.analyticsManager.trackingVars.formSteps,f=C.$settings.analyticsManager.getTrackingObjectProperties(e),g={},h=Object.keys(b),i=Object.keys(b.dtmStoreFieldsJson);a.each(h,function(a){d=h[a],j.isUndefined(f[d])||(f[d]==f.pageName||f[d]==f.formName&&HELIOS.components&&!HELIOS.components.c_026?g[f[d]]=b[d]+"|"+C.$settings.analytics.popInForm:g[f[d]]=b[d])}),a.each(i,function(a){d=i[a],j.isUndefined(f[d])||g[d]||(g[f[d]]=b.dtmStoreFieldsJson[d])}),Object.keys(c).length&&(g[f.formSubmission]=c.formSubmission,g[f.formSubmissionSuccess]=c.formSubmissionSuccess),g[f.realTimePicker]=!!a(C.$settings.selectors.dynamicThankyouPageRoot).data(C.$settings.dataAttribute.rtbEnabled),j.isUndefined(HELIOS.adobe.tagging.realTimeBookingSuccess)||(g[f.realTimeBookingSuccess]=HELIOS.adobe.tagging.realTimeBookingSuccess),C.$settings.analyticsManager.track(e,g)}function x(){"undefined"!=typeof adobe&&adobe.target&&adobe.target.trackEvent({mbox:"target-global-mbox",params:{c344_popin_displayed:"true"}})}var y,z=this.$root.data(this.$settings.dataAttribute.formAsset),A=this.$root.data(this.$settings.dataAttribute.formHeaderAsset),B=this.$root.data(this.$settings.dataAttribute.formConfirmationAsset),C=this;p()},m}),define("cmpnts/c_344C/main",["app","jquery","heliosObject","cmpnts/c_344C/scripts/c_344C"],function(a,b,c,d){"use strict";b(".c_344C").each(function(e,f){new d(b(f),{window:window,HELIOS:c,analyticsManager:a.analyticsManager,smartLocationContext:a.smartLocationContext,eventAggregator:a.eventAggregator})}),"undefined"!=typeof adobe&&adobe.target&&document.addEventListener(adobe.target.event.CONTENT_RENDERING_SUCCEEDED,function(){var e=b('[class="c_344C"][data-form-triggered="true"]');e.length&&new d(b(e),{window:window,HELIOS:c,analyticsManager:a.analyticsManager,smartLocationContext:a.smartLocationContext,eventAggregator:a.eventAggregator})})}),define("c_445",["underscore","modal","keyCodeConstants","storageManager"],function(a,b,c,d){"use strict";function e(a){if(J=$.extend({},I,a),J.analyticsManager=J.analyticsManager,H=$(J.selectors.root),!H.length)return!1;f(),d.init()}function f(){var a=document.querySelector(J.selectors.root),b=a.dataset.recommendationcriteria,c=a.dataset.recommendationType,d=a.dataset.enableRecommendation;if(d==J.constants.recommendationCheck&&c==J.constants.recommendationType){var e=document.querySelector(J.selectors.closeButtonSticky),f=document.querySelector(J.classes.stickyVariant);f&&(f.style.visibility=J.states.visible),e&&e.addEventListener(J.events.click,function(){f&&(f.style.display=J.states.none)});var g=z(),h=document.querySelector(J.classes.promptVariant);h&&g.maxViews>0&&(C(g.maxViews)?c!=J.constants.recommendationType||b!=J.constants.recommendationTypeLastViewed&&b!=J.constants.recommendationTypeMostPopular||setTimeout(function(){h&&(h.style.visibility=J.states.visible,B(),r()
53)},g.delay):h.style.visibility=J.states.hidden);var i=document.querySelector(J.selectors.closeButtonPrompt);i&&i.addEventListener(J.events.click,function(){h&&(h.style.visibility=J.states.hidden,t())});var j=document.querySelectorAll(J.selectors.universalRecommendations);if(j&&j.length)for(var k=0;k<j.length;k++){var l=j[k],n=l.querySelector(J.classes.stickyVariant);n&&(l.style.position=J.globals.stickyPosition,l.style.top=J.constants.stickyTop,l.style.zIndex=J.constants.stickyZIndex)}m()}}function g(a,b,c){return a.replace(J.patterns.promoModel,"$1"+b).replace(J.patterns.promoOffer,"$1"+c)}function h(a){if(!a)return"";var b=a.match(J.patterns.originExtractor);return b&&b.length?b[0]:null}function i(){var a=localStorage.getItem(J.keys.localStorageOfferViewed);return a?JSON.parse(a):null}function j(a,b){return window.adobe.target.getOffers({request:{execute:{mboxes:[{index:0,name:a,parameters:{entityId:b}}]}}})}function k(a){return window.adobe.target.getOffers({request:{execute:{mboxes:[{index:0,name:a}]}}})}function l(a,b,c,d,e,f){if(a&&a.execute&&a.execute.mboxes&&a.execute.mboxes.length&&a.execute.mboxes[0].options){var i=null;S=!0;try{i=a.execute.mboxes[0].options[0].content}catch(t){}if(i){var j=JSON.parse(i);K=j.results,L=K[0],M=L.offerId;var k=x();if(c==J.constants.recommendationTypeLastViewed&&k&&k!==M)y(b);else{N=L.model_code,O=L.model_name;var l=L.additionalCTA1_url,m=h(l);P=E(L.images_detail_smallStdRes,m||window.location.origin),Q=g(b,N,M);var r=document.querySelector(J.selectors.promptTitle),s=r.textContent;R=s.replace(J.constants.titlePlaceholder,O),o(Q),p(R),q(P)}}}else c==J.constants.recommendationTypeLastViewed?y(b):T||(T=!0,n(b,d,e,f));F(),G(),v()}function m(){var a=document.querySelector(J.selectors.root),b=a.dataset.recommendationcriteria,c=a.dataset.enableRecommendation,d=(a.dataset.recommendationType,a.dataset.apiendpoint,a.dataset.defaultofferid),e=a.dataset.offerspageurl,f=a.dataset.mboxid,g=window.HELIOS.config.common.locale.toUpperCase();if(c==J.constants.recommendationCheck){if(b==J.constants.recommendationTypeLastViewed){try{window&&window.adobe&&window.adobe.target&&window.adobe.target.getOffers&&k(f).then(function(a){l(a,e,J.constants.recommendationTypeLastViewed,f,d,g),w(J.constants.recommendationTypeLastViewed)})}catch(error){}u(J.analytics.lastViewedType,g)}if(b==J.constants.recommendationTypeMostPopular)try{if(window&&window.adobe&&window.adobe.target&&window.adobe.target.getOffers){k(D()).then(function(a){l(a,e,J.constants.recommendationTypeMostPopular,f,d,g),w(J.constants.recommendationTypeMostPopular)})}u(J.analytics.PopularType,g)}catch(error){}}}function n(a,b,c,d){if(!S){try{window&&window.adobe&&window.adobe.target&&window.adobe.target.getOffers&&j(b,c).then(function(e){if(e&&e.execute&&e.execute.mboxes&&e.execute.mboxes.length&&e.execute.mboxes[0].options)l(e,a,J.constants.recommendationTypeDefault,b,c,d),w(J.constants.recommendationTypeDefault);else{var f=document.querySelector(J.classes.promptVariant);f&&(f.style.visibility=J.states.hidden)}})}catch(error){}u(J.analytics.PopularType,d)}}function o(a){var b=document.querySelector(J.selectors.promptPrimaryCTA);b&&b.addEventListener(J.events.click,function(){window.open(a,"_blank"),s()})}function p(a){var b=document.querySelector(J.selectors.promptTitle);b&&(b.textContent=a)}function q(a){var b=document.querySelector(J.selectors.promptImage);b&&("img"===b.tagName.toLowerCase()?b.src=a:b.setAttribute("srcset",a))}function r(){window&&window.adobe&&window.adobe.target&&window.adobe.target.trackEvent&&window.adobe.target.trackEvent({mbox:J.globals.targetMboxName,params:{c445_prompt_event:J.analytics.eventLoad}})}function s(){window&&window.adobe&&window.adobe.target&&window.adobe.target.trackEvent&&window.adobe.target.trackEvent({mbox:J.globals.targetMboxName,params:{c445_prompt_event:J.analytics.eventContinue}})}function t(){window&&window.adobe&&window.adobe.target&&window.adobe.target.trackEvent&&window.adobe.target.trackEvent({mbox:J.globals.targetMboxName,params:{c445_prompt_event:J.analytics.eventClose}})}function u(a,b){sessionStorage.setItem("personalisation",b+"|OfferRecommendations|PersonalisedExperience_"+a),window._satellite&&"function"==typeof _satellite.track&&_satellite.track("targetPersonalisation")}function v(){if(window.HELIOS.adobe.tagging&&(window.HELIOS.adobe.tagging.componentId=J.selectors.componentId),J&&J.analyticsManager){var a=J.analyticsManager.trackingVars.contentDisplayed,b=J.anal
53yticsManager.getTrackingObjectProperties(a),c={};c[b.componentId]=J.selectors.componentId,c.offerId=M,c.offerText=O,c.dynamicCtaUrl=Q,c.vehicleImageURL=P,c.bestOfferRecommendation=L,c[b.destination]=window.location.href,c[b.locationInPage]=R,N&&(c[b.vehicleId]=N,c[b.vehicleModel]=O),J.analyticsManager.track(a,c)}}function w(a){sessionStorage.setItem(J.constants.recommendationCriteriaAppliedKey,a)}function x(){var a=i();if(a){return a.offerId.slice(5)}}function y(a){var b=i();if(b){var c=x(),d=b.modelId,e=b.modelName,f=b.imageLinks[b.imageLinks.length-1];P=f,Q=g(a,d,c),N=d,O=e;var h=document.querySelector(J.selectors.promptTitle),j=h.textContent;R=j.replace(J.constants.titlePlaceholder,e),o(Q),p(R),q(P)}}function z(){var a=document.querySelector(J.classes.promptVariant);return a?{delay:1e3*parseInt(a.dataset.promptInitialDelay||J.constants.defaultPromptInitialDelay,10),maxViews:parseInt(a.dataset.promptMaxViewsSession||J.constants.defaultPromptMaxViewsSession,10)}:{delay:1e3*parseInt(J.constants.defaultPromptInitialDelay,10),maxViews:parseInt(J.constants.defaultPromptMaxViewsSession,10)}}function A(){return parseInt(sessionStorage.getItem(J.constants.promptViewCountKey)||J.constants.defaultPromptViewCount,10)}function B(){var a=A();sessionStorage.setItem(J.constants.promptViewCountKey,a+1)}function C(a){return A()<a}function D(){var a=document.querySelector(J.selectors.root),b=a.dataset.mboxid,c=a.dataset.recommendationcriteria||"";if(!b&&!c)return"";var d=b.lastIndexOf("-"),e=b.lastIndexOf("-",d-1);return b.substring(0,e+1)+c.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function E(a,b){return/^https?:\/\//i.test(a)?a:/^\/\//.test(a)?a:b+a}function F(){var a=document.querySelector(J.selectors.root);if(a){var b=a.dataset.imageobjectfit,c=document.querySelector(J.selectors.promptImage);c&&(c.style.objectFit=b)}}function G(){var a=document.querySelector(J.selectors.root);if(a){if(a.dataset.displaytype===J.constants.imageDirection){var b=document.querySelector(J.classes.promptVariant);b&&(b.style.direction="rtl");var c=document.querySelector(J.selectors.closeButtonWrapper);c&&(c.style.right="unset",c.style.left="15px")}}}var H,I={classes:{primaryCtaButton:".c_455 .reserve-online-cta-button",secondaryCtaButton:".c_455 .continue-build-cta-button",closeButton:".c_455 .prompt-close",stickyVariant:".c_445_sticky_variant",promptVariant:".c_445_prompt_variant"},events:{click:"click"},selectors:{root:".c_445_main_wrapper",componentId:"C445_universal_recommendation_component",primaryCTALabelClass:".c_455 .primary-cta-btn",secondaryCTALabelClass:".c_455 .secondary-cta-btn",closeButtonSticky:'[data-id="c_445-prompt-content-close-btn-sticky"]',closeButtonPrompt:'[data-id="c_445-prompt-content-close-btn-prompt"]',promptTitle:'[data-id="c_455-prompt-content-title"]',promptImage:'[data-id="c_455-prompt-content-image"]',promptPrimaryCTA:'[data-id="c_455-prompt-content-primary-cta-btn"]',universalRecommendations:".universalRecommendation.section",closeButtonWrapper:".c_445_main_wrapper .c_445_prompt_variant .prompt-close-wrapper"},dataAttribute:{offersApiURL:"urc-offers-api-url",mBoxID:"urc-mbox-id",analyticsID:"urc-analytics-id",featureFlag:"urc-feature",defaultOfferID:"urc-default-offer-id",offersPageURL:"urc-offers-page-url"},
54states:{visible:"visible",none:"none",hidden:"hidden",checked:":checked"},attributes:{disabled:"disabled",placeholder:"placeholder",href:"href",srcset:"srcset",alt:"alt",value:"value"},patterns:{promoModel:/(model=)[^&]*/,promoOffer:/(offerId=)[^&]*/,originExtractor:/^https?:\/\/[^/]+/},keys:{localStorageOfferViewed:"offerViewed"},globals:{stickyPosition:"sticky",targetMboxName:"target-global-mbox"},analytics:{componentId:"C445_Inventory_Recommendations",locationInPage:"configurator_v3",buttonText:"",errorMessage:"server error",eventLoad:"true",eventContinue:"continue",eventClose:"close",lastViewedType:"LastViewed",PopularType:"MostPopular"},constants:{recommendationCheck:"recommendation",titlePlaceholder:"[x]",stickyTop:"20px",stickyZIndex:"10",defaultPromptInitialDelay:"10",defaultPromptMaxViewsSession:"4",defaultPromptViewCount:"0",promptViewCountKey:"promptViewCount",recommendationCriteriaAppliedKey:"recommendationCriteriaApplied",recommendationTypeLastViewed:"lastViewed",recommendationTypeMostPopular:"mostPopular",recommendationTypeDefault:"default",imageDirection:"rightImage",recommendationType:"offer"}
54,selectedModel:"modelDetails",vinDetails:"vinDetails",bookingTypeHome:"home",storageManagerOptions:{sessionStorage:{mode:"sessionStorage"}}},J=null,K=null,L=null,M=null,N=null,O=null,P=null,Q=null,R=null,S=!1,T=!1;return{init:e}}),define("cmpnts/c_445/main",["app","heliosObject","c_445"],function(a,b,c){"use strict";c.init({window:window,HELIOS:b,analyticsManager:a.analyticsManager})}),define("cmpnts/c_040/main",["app","jquery","heliosObject","c_040"],function(a,b,c,d){"use strict";d.init({window:window,HELIOS:c,analyticsManager:a.analyticsManager,smartLocationContext:a.smartLocationContext})});var require=require||{};require(["app"],function(a){a.init(),require(["cmpnts/c_019-25B/main","cmpnts/c_019/main","cmpnts/c_019-11C/main","cmpnts/c_019-27/main","cmpnts/c_019-20/main","cmpnts/c_019-22/main","cmpnts/c_019-23/main","cmpnts/c_019-26/main","cmpnts/c_019-27/main","cmpnts/c_019-29/main","cmpnts/c_019-30/main","cmpnts/c_019-31/main","cmpnts/c_019-32/main","cmpnts/c_019-34/main","cmpnts/c_019-36/main","cmpnts/c_019-38/main","cmpnts/c_019-37/main","cmpnts/c_020/main","cmpnts/c_026/main","cmpnts/c_026-1/main","cmpnts/c_319/main","cmpnts/c_344/main","cmpnts/c_344B/main","cmpnts/c_344C/main","cmpnts/c_445/main","cmpnts/c_040/main"])}),define("main-forms-nna.js",function(){})}();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.