{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./Content/js/modules/tracking.js","webpack:///./Content/js/modules/classtoggler.js","webpack:///./Content/js/modules/prefetchlinks.js","webpack:///./Content/js/modules/navigation.js","webpack:///./Content/js/modules/scrolling.js","webpack:///./Content/js/modules/forms.js","webpack:///./Content/js/modules/videoplayer.js","webpack:///./Content/js/modules/util.js","webpack:///./Content/js/modules/fracs.js","webpack:///./Content/js/app.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","0","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","Tracking","Init","$","document","on","e","TrackEvent","target","attr","each","TrackAdWordsConversion","TrackPixel","href","undefined","evp","createElement","height","width","style","display","src","body","appendChild","TrackPageView","IsDataLayerAvailable","dataLayer","event","page_path","IsGtagAvailable","gtag","ga","category","action","label","event_category","event_label","sendTo","currency","send_to","ClassToggler","triggers","querySelectorAll","forEach","trigger","addEventListener","querySelector","getAttribute","toggleClass","classList","toggle","hasAttribute","contains","preventDefault","PrefetchLinks","quicklink","ignores","uri","includes","elem","Navigation","path","location","pathname","Go","search","indexOf","print","KeepOpen","MenuOverflow","NavMain","Navbar","$navSiblings","find","this","parents","parent","addClass","url","$currentPath","collapse","fragment","lastIndexOf","substring","filter","click","closest","hide","removeClass","myLevel","$source","$target","html","$parentLevel","removeAttr","$level","$level2","first","$level2Title","text","toLowerCase","$level3","$level3Title","$level4","append","has","navbar","navbarOffset","offsetHeight","navbarHeight","mq","matchMedia","throttle","scrollY","matches","add","dropdown","blur","remove","Scrolling","ZenScroll","StickyFill","ScrollClass","ScrollFade","defaultOffset","edgeOffset","zenScroll","setup","elements","bootstrapElements","Stickyfill","targets","threshold","margin","once","root","toggledClass","observerOptions","rootMargin","JSON","parse","observer","IntersectionObserver","entries","entry","isActive","isIntersecting","intersectionRatio","disconnect","observe","opacity","Forms","Validation","LungCancerEligibilityTool","BMICalculator","AJAXForms","$validationSummary","$inputValidationError","to","focus","AJAXFormsInit","onSuccess","responseText","statusText","xhr","$form","ShowModalResult","onError","onMessages","ShowModalMessages","AddResultToPage","resetForm","selector","options","opts","extend","ajaxForm","beforeSubmit","arr","_options","exc","beforeSerialize","DisableForms","success","Status","EnableForms","reset","error","responseJSON","Route","load","swal","fire","showCloseButton","buttonsStyling","icon","confirmButtonText","customClass","confirmButton","Errors","map","err","ErrorMessage","join","$targetShow","Vue","el","questionsCount","currentQuestion","yearsSmoked","cigsPerDay","packsPerDay","packYears","methods","next","calculate","GA","end","components","VueSlider","bmi","bmiCategory","heightOptions","dotSize","tooltipFormatter","val","Math","floor","weightOptions","calculateBMI","$refs","sliderHeight","getValue","weight","sliderWeight","setCategory","VideoPlayer","VideoModal","flowplayer","cloud","then","triggerPlayer","$bsModal","modalPlayer","modal","$trigger","relatedTarget","pause","videoId","videoLabel","setSrc","toggleFullScreen","setTimeout","play","volume","muted","volumeUp","setInterval","clearInterval","volumeDown","Util","UpdateUrlHash","hash","history","replaceState","replace","UpdateUrlAndTrack","debounce","id","FracTracking","trackAll","allRefs","found","max","min","current","SimpleHashTable","Fracs","Callback","entryId","put","containsKey","keys","ref","reference"],"mappings":"aACE,SAASA,EAAqBC,GAQ7B,IAPA,IAMIC,EAAUC,EANVC,EAAWH,EAAK,GAChBI,EAAcJ,EAAK,GACnBK,EAAiBL,EAAK,GAIHM,EAAI,EAAGC,EAAW,GACpCD,EAAIH,EAASK,OAAQF,IACzBJ,EAAUC,EAASG,GAChBG,OAAOC,UAAUC,eAAeC,KAAKC,EAAiBX,IAAYW,EAAgBX,IACpFK,EAASO,KAAKD,EAAgBX,GAAS,IAExCW,EAAgBX,GAAW,EAE5B,IAAID,KAAYG,EACZK,OAAOC,UAAUC,eAAeC,KAAKR,EAAaH,KACpDc,EAAQd,GAAYG,EAAYH,IAKlC,IAFGe,GAAqBA,EAAoBhB,GAEtCO,EAASC,QACdD,EAASU,OAATV,GAOD,OAHAW,EAAgBJ,KAAKK,MAAMD,EAAiBb,GAAkB,IAGvDe,IAER,SAASA,IAER,IADA,IAAIC,EACIf,EAAI,EAAGA,EAAIY,EAAgBV,OAAQF,IAAK,CAG/C,IAFA,IAAIgB,EAAiBJ,EAAgBZ,GACjCiB,GAAY,EACRC,EAAI,EAAGA,EAAIF,EAAed,OAAQgB,IAAK,CAC9C,IAAIC,EAAQH,EAAeE,GACG,IAA3BX,EAAgBY,KAAcF,GAAY,GAE3CA,IACFL,EAAgBQ,OAAOpB,IAAK,GAC5Be,EAASM,EAAoBA,EAAoBC,EAAIN,EAAe,KAItE,OAAOD,EAIR,IAAIQ,EAAmB,GAKnBhB,EAAkB,CACrBiB,EAAG,GAGAZ,EAAkB,GAGtB,SAASS,EAAoB1B,GAG5B,GAAG4B,EAAiB5B,GACnB,OAAO4B,EAAiB5B,GAAU8B,QAGnC,IAAIC,EAASH,EAAiB5B,GAAY,CACzCK,EAAGL,EACHgC,GAAG,EACHF,QAAS,IAUV,OANAhB,EAAQd,GAAUW,KAAKoB,EAAOD,QAASC,EAAQA,EAAOD,QAASJ,GAG/DK,EAAOC,GAAI,EAGJD,EAAOD,QAKfJ,EAAoBO,EAAInB,EAGxBY,EAAoBQ,EAAIN,EAGxBF,EAAoBS,EAAI,SAASL,EAASM,EAAMC,GAC3CX,EAAoBY,EAAER,EAASM,IAClC5B,OAAO+B,eAAeT,EAASM,EAAM,CAAEI,YAAY,EAAMC,IAAKJ,KAKhEX,EAAoBgB,EAAI,SAASZ,GACX,oBAAXa,QAA0BA,OAAOC,aAC1CpC,OAAO+B,eAAeT,EAASa,OAAOC,YAAa,CAAEC,MAAO,WAE7DrC,OAAO+B,eAAeT,EAAS,aAAc,CAAEe,OAAO,KAQvDnB,EAAoBoB,EAAI,SAASD,EAAOE,GAEvC,GADU,EAAPA,IAAUF,EAAQnB,EAAoBmB,IAC/B,EAAPE,EAAU,OAAOF,EACpB,GAAW,EAAPE,GAA8B,iBAAVF,GAAsBA,GAASA,EAAMG,WAAY,OAAOH,EAChF,IAAII,EAAKzC,OAAO0C,OAAO,MAGvB,GAFAxB,EAAoBgB,EAAEO,GACtBzC,OAAO+B,eAAeU,EAAI,UAAW,CAAET,YAAY,EAAMK,MAAOA,IACtD,EAAPE,GAA4B,iBAATF,EAAmB,IAAI,IAAIM,KAAON,EAAOnB,EAAoBS,EAAEc,EAAIE,EAAK,SAASA,GAAO,OAAON,EAAMM,IAAQC,KAAK,KAAMD,IAC9I,OAAOF,GAIRvB,EAAoB2B,EAAI,SAAStB,GAChC,IAAIM,EAASN,GAAUA,EAAOiB,WAC7B,WAAwB,OAAOjB,EAAgB,SAC/C,WAA8B,OAAOA,GAEtC,OADAL,EAAoBS,EAAEE,EAAQ,IAAKA,GAC5BA,GAIRX,EAAoBY,EAAI,SAASgB,EAAQC,GAAY,OAAO/C,OAAOC,UAAUC,eAAeC,KAAK2C,EAAQC,IAGzG7B,EAAoB8B,EAAI,IAExB,IAAIC,EAAaC,OAAqB,aAAIA,OAAqB,cAAK,GAChEC,EAAmBF,EAAW5C,KAAKuC,KAAKK,GAC5CA,EAAW5C,KAAOf,EAClB2D,EAAaA,EAAWG,QACxB,IAAI,IAAIvD,EAAI,EAAGA,EAAIoD,EAAWlD,OAAQF,IAAKP,EAAqB2D,EAAWpD,IAC3E,IAAIU,EAAsB4C,EAI1B1C,EAAgBJ,KAAK,CAAC,GAAG,IAElBM,I,kCCvJT,YACA,IAAM0C,EAAW,CAChBC,KADgB,WAGfC,EAAEC,UAAUC,GAAG,QAAS,0CAA0C,SAAAC,GACjEL,EAASM,WAAW,aAAc,UAAWJ,EAAEG,EAAEE,QAAQC,KAAK,YAI/DN,EAAEC,UAAUC,GAAG,QAAS,0CAA0C,SAAAC,GACjEL,EAASM,WAAW,aAAc,cAAeJ,EAAEG,EAAEE,QAAQC,KAAK,YAInEN,EAAEC,UAAUC,GAAG,QAAS,6CAA6C,SAAAC,GACpEL,EAASM,WAAW,aAAc,QAASJ,EAAEG,EAAEE,QAAQC,KAAK,YAI7DN,EAAEC,UAAUC,GAAG,QAAS,iDAAiD,SAAAC,GACxEL,EAASM,WAAW,aAAc,WAAYJ,EAAEG,EAAEE,QAAQC,KAAK,YAIhEN,EAAE,2BAA2BO,MAAK,WACjCT,EAASU,uBAAT,UACIR,EAAE,QAAQhE,KAAK,2BADnB,YACiDgE,EAAE,QAAQhE,KAAK,mCAKjEgE,EAAEC,UAAUC,GAAG,QAAS,gCAAgC,SAAAC,GACvDL,EAASW,WAAWT,EAAEG,EAAEE,QAAQrE,KAAK,oBAGvCyE,WAlCgB,SAkCLC,GACV,QAAaC,IAATD,EAAoB,CACvB,IAAME,EAAMX,SAASY,cAAc,OACnCD,EAAIE,OAAS,EACbF,EAAIG,MAAQ,EACZH,EAAII,MAAMC,QAAU,OACpBL,EAAIM,IAAMR,EACVT,SAASkB,KAAKC,YAAYR,KAG5BS,cA5CgB,SA4CFX,GACb,GAAIZ,EAASwB,uBACZ,IACC3B,OAAO4B,UAAUzE,KAAK,CACrB0E,MAAO,kBACPC,UAAWf,IAEX,MAAOP,IAGV,GAAIL,EAAS4B,kBACZ,IAECC,KAAK,SAAU3B,EAAE,QAAQhE,KAAK,+BAAgC,CAAEyF,UAAWf,IAC1E,MAAOP,SAET,IAECyB,GAAG,OAAQ,WAAYlB,GACtB,MAAOP,MAGXC,WAlEgB,SAkELyB,EAAUC,EAAQC,EAAOjD,GACnC,GAAIgB,EAASwB,uBACZ,IACC3B,OAAO4B,UAAUzE,KAAK,CACrB0E,MAAO,QACPK,WACAC,SACAC,QACAjD,UAEA,MAAOqB,IAGV,GAAIL,EAAS4B,kBACZ,IAECC,KAAK,QAASG,EAAQ,CACrBE,eAAgBH,EAChBI,YAAaF,EACbjD,UAEA,MAAOqB,SAET,IAECyB,GAAG,OAAQ,QAASC,EAAUC,EAAQC,EAAOjD,GAC5C,MAAOqB,MAGXK,uBA/FgB,SA+FO0B,EAAQpD,EAAOqD,GACrC,GAAIrC,EAAS4B,kBACZ,SACsB,IAAV5C,EAEV6C,KAAK,QAAS,aAAc,CAC3BS,QAASF,EACTpD,QACAqD,aAIDR,KAAK,QAAS,aAAc,CAC3BS,QAASF,IAGV,MAAO/B,MAGXuB,gBAlHgB,WAmHf,MAAuB,oBAATC,MAEfL,qBArHgB,WAsHf,YAAmC,IAArB3B,OAAO4B,YAIRzB,Q,iDC3Hf,IAAMuC,EAAe,CACpBtC,KADoB,WAEnB,IAAMuC,EAAWrC,SAASsC,iBAAiB,qBAE3CD,EAASE,SAAQ,SAAAC,GAChBA,EAAQC,iBACP,SACA,SAAAvC,GACC,IAAME,EAASJ,SAAS0C,cAAT,WAA2BF,EAAQG,aAAa,mBACzDC,EAAcJ,EAAQG,aAAa,yBAA2B,gBAEpEH,EAAQK,UAAUC,OAAO,iBACzB1C,EAAOyC,UAAUC,OAAOF,GAGxBJ,EAAQO,aAAa,2BACnBP,EAAQK,UAAUG,SAAS,gBAAkB9C,EAAE+C,oBAElD,QAMWb,O,gCCxBf,YAEMc,EAAgB,CACrBpD,KADqB,WAEpBqD,YAAU,CAQTC,QAAS,CACR,WACA,SAAAC,GAAG,OAAIA,EAAIC,SAAS,SACpB,SAAAD,GAAG,OAAIA,EAAIC,SAAS,SACpB,SAAAD,GAAG,OAAIA,EAAIC,SAAS,UACpB,SAAAD,GAAG,OAAIA,EAAIC,SAAS,SACpB,SAAAD,GAAG,OAAIA,EAAIC,SAAS,UACpB,SAAAD,GAAG,OAAIA,EAAIC,SAAS,SACpB,SAAAD,GAAG,OAAIA,EAAIC,SAAS,SACpB,SAAAD,GAAG,OAAIA,EAAIC,SAAS,SACpB,SAAAD,GAAG,OAAIA,EAAIC,SAAS,SACpB,SAAAD,GAAG,OAAIA,EAAIC,SAAS,MACpB,SAACD,EAAKE,GAAN,OAAeA,EAAKR,aAAa,oBAMtBG,O,iCC9Bf,uBAEMM,EAAa,CAClBC,KAAM,GACN3D,KAFkB,WAIjB0D,EAAWC,KAAO/D,OAAOgE,SAASC,SAElCH,EAAWI,GAAGJ,EAAWC,MACzBD,EAAWI,GAAGlE,OAAOgE,SAASG,QAE1BL,EAAWC,KAAKK,QAAQ,eAAiB,GAC5CpE,OAAOqE,QAGRP,EAAWQ,WACXR,EAAWS,eACXT,EAAWU,UACXV,EAAWW,SAEX,IAAMC,EAAerE,EAAE,kBACvBqE,EAIEC,KAAK,YACLpE,GAAG,SAAS,SAAmCC,GAC/CA,EAAE+C,iBACFlD,EAAEuE,MACAC,QAAQ,kBACR3B,YAAY,sBAOd4B,OAAO,MACPC,SAAS,WAEZb,GAtCkB,SAsCfc,GAEF,GAAIA,EAAK,CACR,IAAMC,EAAe5E,EAAE,YAAD,OAAa2E,EAAb,yCACtBC,EAAaJ,QAAQ,aAAajE,MAAK,SAACjE,EAAGuI,GAC1C7E,EAAE6E,GAAUH,SAAS,QACrB1E,EAAE,oBAAD,OAAqBA,EAAE6E,GAAUvE,KAAK,MAAtC,OAAiDA,KAAK,gBAAiB,WAEzEsE,EAAaF,SAAS,UAAUpE,KAAK,eAAgB,QAGrD,IADA,IAAIwE,EAAWH,EACRG,EAASC,YAAY,KAAO,GAClCD,EAAWA,EAASE,UAAU,EAAGF,EAASC,YAAY,MACtD/E,EAAE,mDAAD,OACmD8E,EADnD,iCACoFA,EADpF,sCAC0HA,EAD1H,wCACkKA,EADlK,OAGCJ,SAAS,UACTF,UACAS,OAAO,MACPP,SAAS,YAIdT,SA7DkB,WA8DjBjE,EAAE,uBAAuBE,GAAG,CAC3BgF,MAAO,SAAqB/E,GACvBH,EAAEG,EAAEE,QAAQ8E,QAAQ,oBAAoB3I,OAC3CwD,EAAEuE,MAAMvI,KAAK,YAAY,GAEzBgE,EAAEuE,MAAMvI,KAAK,YAAY,IAG3B,mBAAoB,WACnB,IAAMoJ,EAAOpF,EAAEuE,MAAMvI,KAAK,YAE1B,OADAgE,EAAEuE,MAAMvI,KAAK,YAAY,GAClBoJ,MAIVlB,aA7EkB,WA8EjBlE,EAAE,wBAAwBE,GAAG,oBAAoB,WAChDF,EAAE,QAAQ0E,SAAS,oBAGpB1E,EAAE,wBAAwBE,GAAG,oBAAoB,WAChDF,EAAE,QAAQqF,YAAY,qBAGxBlB,QAtFkB,WAuFjBnE,EAAE,2BAA2BE,GAAG,QAAS,0BAA0B,SAAoBC,GACtF,IAAMmF,EAAUtF,EAAEuE,MAChBC,QAAQ,UACRxI,KAAK,SACDuJ,EAAUvF,EAAEA,EAAEuE,MAAMjE,KAAK,SACzBkF,EAAUxF,EAAE,eAAD,OAAgBsF,EAAU,IAE3CE,EAAQC,KAAKF,EAAQE,QAErB,IAAMC,EAAe1F,EAAEuE,MAAMC,QAAQ,UAErCkB,EAAapB,KAAK,WAAWe,YAAY,UACzCK,EAAapB,KAAK,mBAAmBhE,KAAK,gBAAiB,SAC3DN,EAAEuE,MACAG,SAAS,UACTpE,KAAK,gBAAiB,QAExBkF,EAAQlB,KAAK,4BAA4BqB,WAAW,eACpD3F,EAAE,eAAD,OAAgBsF,EAAhB,8BAAoDhF,KAAK,gBAAiB,SAE3E,IAAK,IAAIhE,EAAIgJ,EAAU,EAAGhJ,GAAK0D,EAAE,UAAUxD,OAAQF,GAAK,EACvD0D,EAAE,eAAD,OAAgB1D,IAAKmJ,KAAK,OAI7BzF,EAAE,+BAA+BO,MAAK,SAAkBjE,EAAGuI,GAC1D,IAAMe,EAAS5F,EAAE,eAAD,OAAgB1D,EAAI,IACpCsJ,EAAOH,KAAKzF,EAAEuE,MAAMkB,QACpBG,EAAOtB,KAAK,4BAA4BqB,WAAW,kBAGpD,IAAIE,EAAU7F,EAAE,2DAA2D8F,QACpD,IAAnBD,EAAQrJ,SACXqJ,EAAU7F,EAAE,4CAA4C8F,SAEzD,IAAMC,EAAe/F,EAAE,qBAAqB8F,QACxCC,EAAavJ,OAAS,GAAKuJ,EAAaC,OAAOC,gBAAkBJ,EAAQG,OAAOC,eACnFjG,EAAE,2BACAgG,KAAKH,EAAQG,QACb1F,KAAK,OAAQuF,EAAQ7J,KAAK,SAG7BgE,EAAE,2BACAgG,KAAKH,EAAQG,QACb1F,KAAK,OAAQuF,EAAQ7J,KAAK,SAE5B,IAAIkK,EAAUlG,EAAE,2DAA2D8F,QACpD,IAAnBI,EAAQ1J,SACX0J,EAAUlG,EAAE,4CAA4C8F,SAEzD,IAAMK,EAAenG,EAAE,qBAAqB8F,QACxCK,EAAa3J,OAAS,GAAK2J,EAAaH,OAAOC,gBAAkBC,EAAQF,OAAOC,eACnFjG,EAAE,2BACAgG,KAAKE,EAAQF,QACb1F,KAAK,OAAQ4F,EAAQlK,KAAK,SAG7B,IAAMoK,EAAUpG,EAAE,sCAAsC8F,QACpDM,EAAQ9B,KAAK,MAAM9H,OAAS,EAC/BwD,EAAE,yBAAyBqG,OAAOD,EAAQX,QAE1CzF,EAAE,yBAAyBqG,OAC1BD,EACE9B,KAAK,MACLgC,IAFF,mBAEkB7C,EAAWC,KAF7B,OAGEoC,QACAL,SAILrB,OA7JkB,WA8JjB,IAAMmC,EAAStG,SAAS0C,cAAc,oBAChC6D,EAAeD,EAAOE,aACtBC,EAA8B,EAAfF,EACfG,EAAKhH,OAAOiH,WAAW,sBAc7BjH,OAAO+C,iBAAiB,SAAUmE,YAAS,KAZ3C,WACKlH,OAAOmH,SAAWJ,GAAgBC,EAAGI,UAAYR,EAAOzD,UAAUG,SAAS,cAC9EsD,EAAOzD,UAAUkE,IAAI,aACrBhH,EAAE,mCACAiH,SAAS,QACT3G,KAAK,gBAAiB,UACtB4G,QACQvH,OAAOmH,QAAUJ,GAAgBH,EAAOzD,UAAUG,SAAS,cACrEsD,EAAOzD,UAAUqE,OAAO,mBAQb1D,Q,iDCrLf,qCAGM2D,EAAY,CACjBrH,KADiB,WAEhBqH,EAAUC,YACVD,EAAUE,aACVF,EAAUG,cACVH,EAAUI,cAEXH,UAPiB,WAQhB,IAAMI,GAAiBxH,SAAS0C,cAAc,kBAAoB1C,SAAS0C,cAAc,qBACvF8D,aAMIiB,EAA6B,QAAhBD,EACnBE,IAAUC,MANc,IAMSF,IAElCJ,WAlBiB,WAmBhB,IAAMO,EAAW5H,SAASsC,iBAAiB,mBACrCuF,EAAoB7H,SAASsC,iBAAiB,eACpDwF,IAAWf,IAAIa,GACfE,IAAWf,IAAIc,IAEhBP,YAxBiB,WAyBhB,IAAMS,EAAU/H,SAASsC,iBAAiB,uBAE1CyF,EAAQxF,SAAQ,SAAAnC,GACf,IAAMoC,EAAUxC,SAAS0C,cAActC,EAAOuC,aAAa,yBAA2BvC,EAChF4H,EAAY5H,EAAOuC,aAAa,yBAChCsF,EAAS7H,EAAOuC,aAAa,sBAC7BuF,EAAO9H,EAAO2C,aAAa,oBAC3BoF,EAAOnI,SAAS0C,cAActC,EAAOuC,aAAa,qBAClDyF,EAAehI,EAAOuC,aAAa,8BAAgC,kBAEnE0F,EAAkB,CACvBF,KAAMA,GAAQ,KACdG,WAAYL,GAAU,MACtBD,UAAWO,KAAKC,MAAMR,IAAc,KAoB/BS,EAAW,IAAIC,sBAjBK,SAAAC,GACzBA,EAAQpG,SAAQ,SAAAqG,GACf,IAAMC,EAAWD,EAAME,gBAAkBF,EAAMG,mBAAqBf,EAEhEa,GACHzI,EAAOyC,UAAUqE,OAAOkB,GAEpBF,GAEHO,EAASO,cAGV5I,EAAOyC,UAAUkE,IAAIqB,QAKqCC,GAC7DI,EAASQ,QAAQzG,OAGnB+E,WA9DiB,WA+DhB,IAAMQ,EAAU/H,SAASsC,iBAAiB,2BAE1CyF,EAAQxF,SAAQ,SAAAnC,GACf,IAAMoC,EAAUxC,SAAS0C,cAActC,EAAOuC,aAAa,yBAA2BvC,EAChF4H,EAAY5H,EAAOuC,aAAa,yBAChCsF,EAAS7H,EAAOuC,aAAa,sBAC7BwF,EAAOnI,SAAS0C,cAActC,EAAOuC,aAAa,qBAElD0F,EAAkB,CACvBF,KAAMA,GAAQ,KACdG,WAAYL,GAAU,MACtBD,UAAWO,KAAKC,MAAMR,IASjBS,EAAW,IAAIC,sBANK,SAAAC,GACzBA,EAAQpG,SAAQ,SAAAqG,GACfxI,EAAOW,MAAMmI,QAAUN,EAAMG,mBAAqB,GAAM,EAAjC,SAAqCH,EAAMG,kBAAqB,QAI5BV,GAC7DI,EAASQ,QAAQzG,QAKL2E,O,iCC5Ff,8GAWMgC,EAAQ,CACbrJ,KADa,WAEZqJ,EAAMC,aACND,EAAME,4BACNF,EAAMG,gBACNH,EAAMI,aAEPH,WAPa,WAQZ,IAAMI,EAAqBzJ,EAAE,8BACvB0J,EAAwB1J,EAAE,2BAE5B0J,EAAsBlN,QACzBmL,IAAUgC,GAAGD,EAAsB,IACnC1J,EAAE0J,GAAuB,GAAGE,SAClBH,EAAmBjN,QAC7BmL,IAAUgC,GAAGF,EAAmB,IAGjCzJ,EAAE0J,GACAvE,QAAQ,eACRT,SAAS,cAEZ8E,UAtBa,WAuBZJ,EAAMS,cAAc,sBAAuB,CAC1CC,UAAW,SAACC,EAAcC,EAAYC,EAAKC,GAC1Cd,EAAMe,gBAAgBJ,EAAcC,EAAYC,EAAKC,GACrDpK,IAASU,uBAAT,UACIR,EAAE,QAAQhE,KAAK,2BADnB,YACiDgE,EAAE,QAAQhE,KAAK,iCAGjEoO,QAAS,SAACL,EAAcC,EAAYC,EAAKC,GACxCd,EAAMe,gBAAgBJ,EAAcC,EAAYC,EAAKC,IAEtDG,WAAY,SAACN,EAAcC,EAAYC,EAAKC,GAC3Cd,EAAMkB,kBAAkBP,EAAcC,EAAYC,EAAKC,MAIzDd,EAAMS,cAAc,qBAAsB,CACzCC,UAAW,SAACC,EAAcC,EAAYC,EAAKC,GAC1Cd,EAAMmB,gBAAgBR,EAAcC,EAAYC,EAAKC,IAEtDE,QAAS,SAACL,EAAcC,EAAYC,EAAKC,GACxCd,EAAMmB,gBAAgBR,EAAcC,EAAYC,EAAKC,IAEtDM,WAAW,KAGbX,cAhDa,SAgDCY,EAAUC,GACvB,IAMMC,EAAO3K,EAAE4K,OAAO,GANL,CAChBd,UAAW,KACXM,QAAS,KACTI,WAAW,GAGwBE,GAEpC1K,EAAEyK,GAAUI,SAAS,CACpBC,aAAc,SAACC,EAAKb,EAAOc,GAC1B,IACClL,IAASW,WAAWyJ,EAAMlO,KAAK,gBAC9B,MAAOiP,MAIVC,gBAAiB,WAChB9B,EAAM+B,gBAEPC,QAAS,SAACrB,EAAcC,EAAYC,EAAKC,GACxC,OAAQH,EAAasB,OAAOpF,eAC3B,IAAK,WACkB,MAAlB0E,EAAKb,WACRa,EAAKb,UAAUC,EAAcC,EAAYC,EAAKC,GAE/C,MACD,IAAK,UACJS,EAAKH,WAAY,EACM,MAAnBG,EAAKN,YACRM,EAAKN,WAAWN,EAAcC,EAAYC,EAAKC,GAEhD,MACD,QACqB,MAAhBS,EAAKP,SACRO,EAAKP,QAAQL,EAAcC,EAAYC,EAAKC,GAI/Cd,EAAMkC,cACFX,EAAKH,WACRN,EAAM,GAAGqB,SAGXC,MAAO,SAACzB,EAAcC,EAAYC,EAAKC,GAClB,MAAhBS,EAAKP,SACRO,EAAKP,QAAQL,EAAcC,EAAYC,EAAKC,GAE7Cd,EAAMkC,kBAITnB,gBApGa,SAoGGJ,EAAcC,EAAYC,EAAKC,GAC9C,IAAMuB,EAAe1B,EACrBjK,IAASuB,cAAcoK,EAAaC,OACpC1L,EAAE,WAAW2L,KAAb,UAAqBF,EAAaC,MAAlC,kBAAwD,WACvDE,IAAKC,KAAK,CACTpG,KAAMzF,EAAEuE,MAAMkB,OACdqG,iBAAiB,EAEjBC,gBAAgB,EAChBC,KAA8B,aAAxBP,EAAaJ,OAAwB,UAAY,QACvDY,kBAAmB/B,EAAMlO,KAAK,4BAC9BkQ,YAAa,CACZC,cAAe,wBAKnB7B,kBArHa,SAqHKP,EAAcC,EAAYC,EAAKC,GAChD0B,IAAKC,KAAK,CACTpG,KAAM,8BAAF,OAAgCsE,EAAaqC,OAAO,GACtDC,KAAI,SAAAC,GAAG,iCAAwBA,EAAIC,aAA5B,YACPC,KAAK,IAFH,SAGJV,iBAAiB,EACjBC,gBAAgB,EAChBC,KAAM,UACNC,kBAAmB/B,EAAMlO,KAAK,4BAC9BkQ,YAAa,CACZC,cAAe,qBAIlB5B,gBAnIa,SAmIGR,EAAcC,EAAYC,EAAKC,GAC9C,IAAMuB,EAAe1B,EACrBjK,IAASuB,cAAcoK,EAAaC,OAEpC,IAAMlG,EAAU0E,EAAMlO,KAAK,UAC3BgE,EAAEwF,GAASmG,KAAX,UAAmBF,EAAaC,MAAhC,kBAAsD,WACrD1L,EAAEwF,GAASd,SAAS,iBACpBiD,IAAUgC,GAAG1J,SAAS0C,cAAc6C,IAEpC,IAAMiH,EAAcvC,EAAMlO,KAAK,eACZ,MAAfyQ,GACHzM,EAAEyM,GAAapH,YAAY,uBAI9B8F,aAlJa,WAmJZnL,EAAE,QACAM,KAAK,WAAY,YACjBoE,SAAS,iBAEZ4G,YAvJa,WAwJZtL,EAAE,QACA2F,WAAW,YACXN,YAAY,iBAEfiE,0BA5Ja,WA8JZ,GAAItJ,EAAE,sCAAsCxD,OACnB,IAAIkQ,UAAI,CAC/BC,GAAI,qCACJ3Q,KAAM,CACL4Q,eAAgB5M,EAAE,gCAAgCxD,OAClDqQ,gBAAiB,EACjBC,YAAa,KACbC,WAAY,KACZC,YAAa,KACbC,UAAW,MAEZC,QAAS,CACR3B,MADQ,WAEPhH,KAAKsI,gBAAkB,EACvBtI,KAAKuI,YAAc,KACnBvI,KAAKwI,WAAa,KAClBxI,KAAKyI,YAAc,KACnBzI,KAAK0I,UAAY,MAElBE,KARQ,WASP5I,KAAKsI,iBAAmB,GAEzBO,UAXQ,WAYiB,MAApB7I,KAAKuI,aAA0C,MAAnBvI,KAAKwI,aACpCxI,KAAKsI,gBAAkB,EACvBtI,KAAKyI,YAAczI,KAAKwI,WAAa,GACrCxI,KAAK0I,UAAY1I,KAAKuI,YAAcvI,KAAKyI,YAErCzI,KAAK0I,WAAa,GACrBI,GAAGhM,cAAH,UAAoBpB,SAAS0D,SAASjD,KAAtC,cAEA2M,GAAGhM,cAAH,UAAoBpB,SAAS0D,SAASjD,KAAtC,oBAIH4M,IAxBQ,WAyBP/I,KAAKsI,gBAAkB,OAO5BtD,cAzMa,WA2MZ,GAAIvJ,EAAE,mBAAmBxD,OACF,IAAIkQ,UAAI,CAC7BC,GAAI,kBACJY,WAAY,CACXC,eAEDxR,KAAM,CACLyR,IAAK,KACLC,YAAa,UACbC,cAAe,CACdC,QAAS,GACT9M,OAAQ,KACR+M,iBAAkB,SAAAC,GAAG,gBAAOC,KAAKC,MAAMF,EAAM,IAAxB,aAAgCA,EAAgC,GAAxBC,KAAKC,MAAMF,EAAM,IAAzD,MACrBhP,MAAO,IAERmP,cAAe,CACdL,QAAS,GACTC,iBAAkB,cAClB/O,MAAO,MAGToO,QAAS,CACRgB,aADQ,WAEP,IAAIpN,EAASyD,KAAK4J,MAAMC,aAAaC,WACjCC,EAAS/J,KAAK4J,MAAMI,aAAaF,WACjCZ,EAAMM,KAAKC,MAAOM,GAAUxN,EAASA,GAAW,KACpDyD,KAAKkJ,IAAMA,EACXlJ,KAAKiK,YAAYf,IAElBe,YARQ,SAQIf,GACX,OACQlJ,KAAKmJ,YADTD,EAAM,KACiB,cAChBA,EAAM,GACU,SAChBA,EAAM,GACU,aAEA,cAoDlBrE,Q,kDC/Sf,gBAAMqF,EAAc,CACnB1O,KADmB,WAElB0O,EAAYC,cAEbA,WAJmB,gBAQQ/N,IAAtBhB,OAAOgP,YAA4B3O,EAAE,qBAAqBxD,QAC7DmS,WAAWC,MAAMC,MAAK,WACrB,IACIC,EADEC,EAAW/O,EAAE,eAGbgP,EAAcL,WAAW,qBAC/BK,EAAY9O,GAAG,kBAAkB,SAAAC,QACAQ,IAA5BoO,EAAS/S,KAAK,WAAuD,SAA5B+S,EAAS/S,KAAK,WAC1D+S,EAASE,MAAM,WAIjBF,EAAS7O,GAAG,iBAAiB,SAAAC,GAC5B,IAAM+O,EAAWlP,EAAEG,EAAEgP,eACrBL,EAAgBH,WAAWO,EAAS5K,KAAK,oBAAoB,IAC7DwK,EAAcM,QACd,IAAMC,EAAUH,EAASlT,KAAK,YACxBsT,EAAaJ,EAASlT,KAAK,SAYjC,QAT0C2E,IAAzCoO,EAAS/S,KAAK,yBAC6C,IAA3D+S,EAAS/S,KAAK,uBAAuB+H,QAAQsL,KAE7CN,EAAS/S,KAAK,sBAAuBqT,GACrCN,EAASzO,KAAK,aAAcgP,GAC5BN,EAAYO,OAAOF,IAIhBrP,EAAEL,QAAQoB,SAAW,IAAK,CAC7BgO,EAAS/S,KAAK,SAAU,QACxB,IACCgT,EAAYQ,mBACX,MAAOvE,GACRwE,YAAW,WACVxP,SAAS0D,SAASjD,KAAOV,EAAE,kCAAkCM,KAAK,OAClEyO,EAASE,MAAM,UACb,WAGJF,EAAS/S,KAAK,SAAU,YAI1B+S,EAAS7O,GAAG,kBAAkB,SAAAC,GAC7B6O,EAAYU,OACZV,EAAYW,OAAS,EACrBX,EAAYY,OAAQ,EACpB,IAAMC,EAAWC,aAAY,WACxBd,EAAYW,QAAU,GACzBI,cAAcF,GAEdb,EAAYW,QAAU,KAErB,OAGJZ,EAAS7O,GAAG,iBAAiB,SAAAC,GAC5B,IAAM6P,EAAaF,aAAY,WAC1Bd,EAAYW,QAAU,IACzBI,cAAcC,GACdhB,EAAYI,SAEZJ,EAAYW,QAAU,KAErB,IACkB,MAAjBb,GACHA,EAAcY,eAQLjB,Q,6ECnFTwB,EAAO,CACZC,cADY,SACEC,QAEO,IAATA,IAENA,EAAKpM,QAAQ,KAAO,IAEvBoM,EAAO,IAAH,OAAOA,IAGRxQ,OAAOyQ,QAAQC,aAClB1Q,OAAOyQ,QAAQC,aAAa,KAAM,KAAMF,GAExCxQ,OAAOgE,SAAS2M,QAAQH,MAMbF,I,OCdTM,EAAoBC,YAAS,KAAM,SAAAC,GACxCR,EAAKC,cAAcO,GACnB3Q,IAASuB,cAAT,UAA0B1B,OAAOgE,SAASC,SAA1C,YAAsD6M,OAGjDC,EAAe,CACpBC,UAAU,EACVC,QAAS3Q,SAASsC,iBAAiB,gBACnCsO,MAAO,KACPC,IAAK,EACLC,IAAK,GACLC,QAAS,IAAIC,IACblR,KAPoB,WAQnB2Q,EAAaQ,SAEdC,SAVoB,SAUXvI,GACR8H,EAAaG,MAAQ,KACrBH,EAAaI,IAAM,EAEnB,IAAIM,EAAU,EACdxI,EAAQpG,SAAQ,SAAAqG,GACfuI,EAAUvI,EAAMxI,OAAOoQ,GACnB5H,EAAME,eACLF,EAAMG,kBAAoB0H,EAAaK,KAC1CL,EAAaM,QAAQK,IAAID,EAASvI,GAEzB6H,EAAaM,QAAQM,YAAYF,IAC3CV,EAAaM,QAAQ7J,OAAOiK,MAI9B,IAAIvI,EAAQ,KAWZ,GAVA6H,EAAaM,QAAQO,OAAO/O,SAAQ,SAAApD,GAC/BsR,EAAaM,QAAQM,YAAYlS,KACpCyJ,EAAQ6H,EAAaM,QAAQtS,IAAIU,GAC7ByJ,EAAME,gBAAkBF,EAAMG,kBAAoB0H,EAAaI,MAClEJ,EAAaI,IAAMjI,EAAMG,kBACzB0H,EAAaG,MAAQhI,OAKE,MAAtB6H,EAAaG,MAAe,CAC/BH,EAAaE,QAAQpO,SAAQ,SAAAgP,GAC5BA,EAAI1O,UAAUqE,OAAO,aAGtB,IAAMsJ,EAAKC,EAAaG,MAAMxQ,OAAOuC,aAAa,MAC5C6O,EAAYxR,SAAS0C,cAAT,8BAA8C8N,EAA9C,OACD,MAAbgB,IACHA,EAAU3O,UAAUkE,IAAI,UACxB0J,EAAaE,QAAQpO,SAAQ,SAAAgP,GAC5BA,EAAItK,YAIFwJ,EAAaC,UAAaD,EAAaG,MAAMxQ,OAAOyC,UAAUG,SAAS,qBAC1EyN,EAAaC,UAAW,EACxBJ,EAAkBE,MAIrBS,MAzDoB,WA0DnB,IAMMxI,EAAW,IAAIC,qBAAqB+H,EAAaS,SAN/B,CACvB/I,KAAM,KACNG,WAAY,MACZN,UAAW,CAAC,EAAG,IAAM,GAAK,IAAM,KAK3B3F,EAAWrC,SAASsC,iBAAiB,SAE3CD,EAASE,SAAQ,SAAAC,GAChBiG,EAASQ,QAAQzG,QAKLiO,O,gCCpFf,sIAwBA1Q,GAAE,WACDA,EAAE,QAAQqF,YAAY,SAGtBhD,IAAatC,OACb0D,IAAW1D,OACX2Q,IAAa3Q,OACbqJ,IAAMrJ,OACNqH,IAAUrH,OACVD,IAASC,OACT0O,IAAY1O,OACZoD,IAAcpD,W","file":"js/app.bundle.min.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t0: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([27,1]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","/* global gtm */\nconst Tracking = {\n\tInit() {\n\t\t// Offsite links\n\t\t$(document).on('click', 'a[href^=\"http\"]:not(.disable-tracking)', e => {\n\t\t\tTracking.TrackEvent('Navigation', 'Offsite', $(e.target).attr('href'));\n\t\t});\n\n\t\t// Tap to call (tel:)\n\t\t$(document).on('click', 'a[href^=\"tel:\"]:not(.disable-tracking)', e => {\n\t\t\tTracking.TrackEvent('Navigation', 'Tap to Call', $(e.target).attr('href'));\n\t\t});\n\n\t\t// Click to email (mailto:)\n\t\t$(document).on('click', 'a[href^=\"mailto:\"]:not(.disable-tracking)', e => {\n\t\t\tTracking.TrackEvent('Navigation', 'Email', $(e.target).attr('href'));\n\t\t});\n\n\t\t// Downloads\n\t\t$(document).on('click', 'a[href^=\"/documents/\"]:not(.disable-tracking)', e => {\n\t\t\tTracking.TrackEvent('Navigation', 'Download', $(e.target).attr('href'));\n\t\t});\n\n\t\t// Conversions (Google Ads)\n\t\t$('[data-track-conversion]').each(() => {\n\t\t\tTracking.TrackAdWordsConversion(\n\t\t\t\t`${$('body').data('google-ads-conversionid')}/${$('body').data('google-ads-conversionlabel')}`\n\t\t\t);\n\t\t});\n\n\t\t// Tracking pixels\n\t\t$(document).on('click', '[data-track-pixel]:not(form)', e => {\n\t\t\tTracking.TrackPixel($(e.target).data('track-pixel'));\n\t\t});\n\t},\n\tTrackPixel(href) {\n\t\tif (href !== undefined) {\n\t\t\tconst evp = document.createElement('img');\n\t\t\tevp.height = 1;\n\t\t\tevp.width = 1;\n\t\t\tevp.style.display = 'none';\n\t\t\tevp.src = href;\n\t\t\tdocument.body.appendChild(evp);\n\t\t}\n\t},\n\tTrackPageView(href) {\n\t\tif (Tracking.IsDataLayerAvailable()) {\n\t\t\ttry {\n\t\t\t\twindow.dataLayer.push({\n\t\t\t\t\tevent: 'VirtualPageView',\n\t\t\t\t\tpage_path: href\n\t\t\t\t});\n\t\t\t} catch (e) { } // eslint-disable-line\n\t\t}\n\n\t\tif (Tracking.IsGtagAvailable()) {\n\t\t\ttry {\n\t\t\t\t/* eslint-disable-next-line no-undef */\n\t\t\t\tgtag('config', $('body').data('google-analytics-propertyid'), { page_path: href });\n\t\t\t} catch (e) { } // eslint-disable-line\n\t\t} else {\n\t\t\ttry {\n\t\t\t\t/* eslint-disable-next-line no-undef */\n\t\t\t\tga('send', 'pageview', href);\n\t\t\t} catch (e) { } // eslint-disable-line\n\t\t}\n\t},\n\tTrackEvent(category, action, label, value) {\n\t\tif (Tracking.IsDataLayerAvailable()) {\n\t\t\ttry {\n\t\t\t\twindow.dataLayer.push({\n\t\t\t\t\tevent: 'Event',\n\t\t\t\t\tcategory,\n\t\t\t\t\taction,\n\t\t\t\t\tlabel,\n\t\t\t\t\tvalue\n\t\t\t\t});\n\t\t\t} catch (e) { } // eslint-disable-line\n\t\t}\n\n\t\tif (Tracking.IsGtagAvailable()) {\n\t\t\ttry {\n\t\t\t\t/* eslint-disable-next-line no-undef */\n\t\t\t\tgtag('event', action, {\n\t\t\t\t\tevent_category: category,\n\t\t\t\t\tevent_label: label,\n\t\t\t\t\tvalue\n\t\t\t\t});\n\t\t\t} catch (e) { } // eslint-disable-line\n\t\t} else {\n\t\t\ttry {\n\t\t\t\t/* eslint-disable-next-line no-undef */\n\t\t\t\tga('send', 'event', category, action, label, value);\n\t\t\t} catch (e) { } // eslint-disable-line\n\t\t}\n\t},\n\tTrackAdWordsConversion(sendTo, value, currency) {\n\t\tif (Tracking.IsGtagAvailable()) {\n\t\t\ttry {\n\t\t\t\tif (typeof value !== 'undefined') {\n\t\t\t\t\t// eslint-disable-next-line no-undef\n\t\t\t\t\tgtag('event', 'conversion', {\n\t\t\t\t\t\tsend_to: sendTo,\n\t\t\t\t\t\tvalue,\n\t\t\t\t\t\tcurrency\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\t// eslint-disable-next-line no-undef\n\t\t\t\t\tgtag('event', 'conversion', {\n\t\t\t\t\t\tsend_to: sendTo\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} catch (e) { } // eslint-disable-line\n\t\t}\n\t},\n\tIsGtagAvailable() {\n\t\treturn typeof gtag !== 'undefined';\n\t},\n\tIsDataLayerAvailable() {\n\t\treturn typeof window.dataLayer !== 'undefined';\n\t}\n};\n\nexport default Tracking;\n","const ClassToggler = {\n\tInit() {\n\t\tconst triggers = document.querySelectorAll('.js--toggle-class');\n\n\t\ttriggers.forEach(trigger => {\n\t\t\ttrigger.addEventListener(\n\t\t\t\t'click',\n\t\t\t\te => {\n\t\t\t\t\tconst target = document.querySelector(`#${trigger.getAttribute('aria-controls')}`);\n\t\t\t\t\tconst toggleClass = trigger.getAttribute('data-class-to-toggle') || 'js--is-active';\n\n\t\t\t\t\ttrigger.classList.toggle('js--is-active');\n\t\t\t\t\ttarget.classList.toggle(toggleClass);\n\n\t\t\t\t\t/* eslint-disable no-unused-expressions */\n\t\t\t\t\ttrigger.hasAttribute('toggle-prevent-default') ||\n\t\t\t\t\t\t(trigger.classList.contains('noZensmooth') && e.preventDefault());\n\t\t\t\t},\n\t\t\t\tfalse\n\t\t\t);\n\t\t});\n\t}\n};\n\nexport default ClassToggler;\n","import quicklink from 'quicklink/dist/quicklink';\n\nconst PrefetchLinks = {\n\tInit() {\n\t\tquicklink({\n\t\t\t// This example will ignore all requests to:\n\t\t\t// - all \"/api/*\" pathnames\n\t\t\t// - all \".zip\" extensions\n\t\t\t// - all \".pdf\" extensions\n\t\t\t// - URLs which contain a URL fragment\n\t\t\t// - all tags with \"noprefetch\" attribute\n\t\t\t//\n\t\t\tignores: [\n\t\t\t\t/\\/api\\/?/,\n\t\t\t\turi => uri.includes('.zip'),\n\t\t\t\turi => uri.includes('.doc'),\n\t\t\t\turi => uri.includes('.docx'),\n\t\t\t\turi => uri.includes('.ppt'),\n\t\t\t\turi => uri.includes('.pptx'),\n\t\t\t\turi => uri.includes('.mp4'),\n\t\t\t\turi => uri.includes('.mov'),\n\t\t\t\turi => uri.includes('.mp3'),\n\t\t\t\turi => uri.includes('.pdf'),\n\t\t\t\turi => uri.includes('#'),\n\t\t\t\t(uri, elem) => elem.hasAttribute('noprefetch')\n\t\t\t]\n\t\t});\n\t}\n};\n\nexport default PrefetchLinks;\n","import { throttle } from 'throttle-debounce';\n\nconst Navigation = {\n\tpath: '',\n\tInit() {\n\t\t// Using the current path (e.g. /Section/Page)\n\t\tNavigation.path = window.location.pathname;\n\n\t\tNavigation.Go(Navigation.path);\n\t\tNavigation.Go(window.location.search);\n\n\t\tif (Navigation.path.indexOf('print=true') >= 0) {\n\t\t\twindow.print();\n\t\t}\n\n\t\tNavigation.KeepOpen();\n\t\tNavigation.MenuOverflow();\n\t\tNavigation.NavMain();\n\t\tNavigation.Navbar();\n\n\t\tconst $navSiblings = $('.nav--siblings');\n\t\t$navSiblings\n\t\t\t// .on('blur', function navSiblingsBlur(e) {\n\t\t\t// \t$(this).removeClass('js--menu-active');\n\t\t\t// })\n\t\t\t.find('a.active')\n\t\t\t.on('click', function activeSiblingNavItemClick(e) {\n\t\t\t\te.preventDefault();\n\t\t\t\t$(this)\n\t\t\t\t\t.parents('.nav--siblings')\n\t\t\t\t\t.toggleClass('js--menu-active');\n\t\t\t})\n\t\t\t// .on('blur', function navSiblingsBlur(e) {\n\t\t\t// \t$(this)\n\t\t\t// \t\t.parents('.nav--siblings')\n\t\t\t// \t\t.removeClass('js--menu-active');\n\t\t\t// })\n\t\t\t.parent('li')\n\t\t\t.addClass('active');\n\t},\n\tGo(url) {\n\t\t// Handle links to the current path\n\t\tif (url) {\n\t\t\tconst $currentPath = $(`a[href$=\"${url}\"]:not(\".alias\"):not([href^=\"http\"])`);\n\t\t\t$currentPath.parents('.collapse').each((i, collapse) => {\n\t\t\t\t$(collapse).addClass('show');\n\t\t\t\t$(`.nav-link[href=\"#${$(collapse).attr('id')}\"]`).attr('aria-expanded', 'true');\n\t\t\t});\n\t\t\t$currentPath.addClass('active').attr('aria-current', 'page');\n\n\t\t\tlet fragment = url;\n\t\t\twhile (fragment.lastIndexOf('/') > 0) {\n\t\t\t\tfragment = fragment.substring(0, fragment.lastIndexOf('/'));\n\t\t\t\t$(\n\t\t\t\t\t`.navbar--main li:not(.breadcrumb-item) a[href$=\"${fragment}\"], .l--main a[href$=\"${fragment}\"], .nav--sitemap a[href$=\"${fragment}\"], .nav--pagetitle a[href$=\"${fragment}\"]`\n\t\t\t\t)\n\t\t\t\t\t.addClass('active')\n\t\t\t\t\t.parents()\n\t\t\t\t\t.filter('li')\n\t\t\t\t\t.addClass('active');\n\t\t\t}\n\t\t}\n\t},\n\tKeepOpen() {\n\t\t$('.dropdown.keep-open').on({\n\t\t\tclick: function handleClick(e) {\n\t\t\t\tif ($(e.target).closest('.dropdown-toggle').length) {\n\t\t\t\t\t$(this).data('closable', true);\n\t\t\t\t} else {\n\t\t\t\t\t$(this).data('closable', false);\n\t\t\t\t}\n\t\t\t},\n\t\t\t'hide.bs.dropdown': function handleBsHide() {\n\t\t\t\tconst hide = $(this).data('closable');\n\t\t\t\t$(this).data('closable', true);\n\t\t\t\treturn hide;\n\t\t\t}\n\t\t});\n\t},\n\tMenuOverflow() {\n\t\t$('.dropdown--main-menu').on('show.bs.dropdown', () => {\n\t\t\t$('body').addClass('js--menu-open');\n\t\t});\n\n\t\t$('.dropdown--main-menu').on('hide.bs.dropdown', () => {\n\t\t\t$('body').removeClass('js--menu-open');\n\t\t});\n\t},\n\tNavMain() {\n\t\t$('.dropdown-menu--desktop').on('click', '.nav-link.toggle-child', function toggleHtml(e) {\n\t\t\tconst myLevel = $(this)\n\t\t\t\t.parents('.level')\n\t\t\t\t.data('level');\n\t\t\tconst $source = $($(this).attr('href'));\n\t\t\tconst $target = $(`.level.level${myLevel + 1}`);\n\n\t\t\t$target.html($source.html());\n\n\t\t\tconst $parentLevel = $(this).parents('.level');\n\n\t\t\t$parentLevel.find('.active').removeClass('active');\n\t\t\t$parentLevel.find('[aria-expanded]').attr('aria-expanded', 'false');\n\t\t\t$(this)\n\t\t\t\t.addClass('active')\n\t\t\t\t.attr('aria-expanded', 'true');\n\n\t\t\t$target.find('[data-toggle=\"collapse\"]').removeAttr('data-toggle');\n\t\t\t$(`.level.level${myLevel} [data-toggle=\"collapse\"]`).attr('aria-expanded', 'false');\n\n\t\t\tfor (let i = myLevel + 2; i <= $('.level').length; i += 1) {\n\t\t\t\t$(`.level.level${i}`).html('');\n\t\t\t}\n\t\t});\n\n\t\t$('#navMainMenu .collapse.show').each(function setLevel(i, collapse) {\n\t\t\tconst $level = $(`.level.level${i + 2}`);\n\t\t\t$level.html($(this).html());\n\t\t\t$level.find('[data-toggle=\"collapse\"]').removeAttr('data-toggle');\n\t\t});\n\n\t\tlet $level2 = $('.dropdown-menu--desktop .level2 a[aria-expanded=\"true\"]').first();\n\t\tif ($level2.length === 0) {\n\t\t\t$level2 = $('.dropdown-menu--desktop .level2 a.active').first();\n\t\t}\n\t\tconst $level2Title = $('.jumbotron--title').first();\n\t\tif ($level2Title.length > 0 && $level2Title.text().toLowerCase() !== $level2.text().toLowerCase()) {\n\t\t\t$('.navbar--main .level2 a')\n\t\t\t\t.text($level2.text())\n\t\t\t\t.attr('href', $level2.data('href'));\n\t\t}\n\n\t\t$('.navbar--main .level2 a')\n\t\t\t.text($level2.text())\n\t\t\t.attr('href', $level2.data('href'));\n\n\t\tlet $level3 = $('.dropdown-menu--desktop .level3 a[aria-expanded=\"true\"]').first();\n\t\tif ($level3.length === 0) {\n\t\t\t$level3 = $('.dropdown-menu--desktop .level3 a.active').first();\n\t\t}\n\t\tconst $level3Title = $('.jumbotron--title').first();\n\t\tif ($level3Title.length > 0 && $level3Title.text().toLowerCase() !== $level3.text().toLowerCase()) {\n\t\t\t$('.navbar--main .level3 a')\n\t\t\t\t.text($level3.text())\n\t\t\t\t.attr('href', $level3.data('href'));\n\t\t}\n\n\t\tconst $level4 = $('.dropdown-menu--desktop .level4 ul').first();\n\t\tif ($level4.find('li').length < 6) {\n\t\t\t$('.navbar--main .level4').append($level4.html());\n\t\t} else {\n\t\t\t$('.navbar--main .level4').append(\n\t\t\t\t$level4\n\t\t\t\t\t.find('li')\n\t\t\t\t\t.has(`a[href^=\"${Navigation.path}\"]`)\n\t\t\t\t\t.first()\n\t\t\t\t\t.html()\n\t\t\t);\n\t\t}\n\t},\n\tNavbar() {\n\t\tconst navbar = document.querySelector('.navbar--primary');\n\t\tconst navbarOffset = navbar.offsetHeight;\n\t\tconst navbarHeight = navbarOffset * 2;\n\t\tconst mq = window.matchMedia('(min-width: 992px)');\n\n\t\tfunction miniNavigation() {\n\t\t\tif (window.scrollY >= navbarHeight && mq.matches && !navbar.classList.contains('nav--mini')) {\n\t\t\t\tnavbar.classList.add('nav--mini');\n\t\t\t\t$('.dropdown--main-menu .btn--menu')\n\t\t\t\t\t.dropdown('hide')\n\t\t\t\t\t.attr('aria-expanded', 'hidden')\n\t\t\t\t\t.blur();\n\t\t\t} else if (window.scrollY < navbarHeight && navbar.classList.contains('nav--mini')) {\n\t\t\t\tnavbar.classList.remove('nav--mini');\n\t\t\t}\n\t\t}\n\n\t\twindow.addEventListener('scroll', throttle(100, miniNavigation));\n\t}\n};\n\nexport default Navigation;\n","import Stickyfill from 'stickyfilljs';\nimport zenScroll from 'zenscroll';\n\nconst Scrolling = {\n\tInit() {\n\t\tScrolling.ZenScroll();\n\t\tScrolling.StickyFill();\n\t\tScrolling.ScrollClass();\n\t\tScrolling.ScrollFade();\n\t},\n\tZenScroll() {\n\t\tconst defaultOffset = (document.querySelector('.navbar--page') || document.querySelector('.navbar--primary'))\n\t\t\t.offsetHeight;\n\t\tconst defaultDuration = 250;\n\n\t\t// Consider using css (scroll-margin-top: 5rem) instead of this\n\t\t// MAKE SURE TO TEST FIRST as it can be a little wonky\n\t\t// https://css-tricks.com/fixed-headers-and-jump-links-the-solution-is-scroll-margin-top/\n\t\tconst edgeOffset = defaultOffset * 1.33333;\n\t\tzenScroll.setup(defaultDuration, edgeOffset);\n\t},\n\tStickyFill() {\n\t\tconst elements = document.querySelectorAll('.sticky-element');\n\t\tconst bootstrapElements = document.querySelectorAll('.sticky-top');\n\t\tStickyfill.add(elements);\n\t\tStickyfill.add(bootstrapElements);\n\t},\n\tScrollClass() {\n\t\tconst targets = document.querySelectorAll('.js--scroll-element');\n\n\t\ttargets.forEach(target => {\n\t\t\tconst trigger = document.querySelector(target.getAttribute('data-scroll-trigger')) || target;\n\t\t\tconst threshold = target.getAttribute('data-scroll-threshold');\n\t\t\tconst margin = target.getAttribute('data-scroll-margin');\n\t\t\tconst once = target.hasAttribute('data-scroll-once');\n\t\t\tconst root = document.querySelector(target.getAttribute('data-scroll-root'));\n\t\t\tconst toggledClass = target.getAttribute('data-scroll-toggled-class') || 'js--is-inactive';\n\n\t\t\tconst observerOptions = {\n\t\t\t\troot: root || null,\n\t\t\t\trootMargin: margin || '0px',\n\t\t\t\tthreshold: JSON.parse(threshold) || 0.25\n\t\t\t};\n\n\t\t\tconst intersectCallback = entries => {\n\t\t\t\tentries.forEach(entry => {\n\t\t\t\t\tconst isActive = entry.isIntersecting && entry.intersectionRatio >= threshold;\n\n\t\t\t\t\tif (isActive) {\n\t\t\t\t\t\ttarget.classList.remove(toggledClass);\n\n\t\t\t\t\t\tif (once) {\n\t\t\t\t\t\t\t/* eslint-disable-next-line no-use-before-define */\n\t\t\t\t\t\t\tobserver.disconnect();\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttarget.classList.add(toggledClass);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t};\n\n\t\t\tconst observer = new IntersectionObserver(intersectCallback, observerOptions);\n\t\t\tobserver.observe(trigger);\n\t\t});\n\t},\n\tScrollFade() {\n\t\tconst targets = document.querySelectorAll('.js--scrollfade-element');\n\n\t\ttargets.forEach(target => {\n\t\t\tconst trigger = document.querySelector(target.getAttribute('data-scroll-trigger')) || target;\n\t\t\tconst threshold = target.getAttribute('data-scroll-threshold');\n\t\t\tconst margin = target.getAttribute('data-scroll-margin');\n\t\t\tconst root = document.querySelector(target.getAttribute('data-scroll-root'));\n\n\t\t\tconst observerOptions = {\n\t\t\t\troot: root || null,\n\t\t\t\trootMargin: margin || '0px',\n\t\t\t\tthreshold: JSON.parse(threshold)\n\t\t\t};\n\n\t\t\tconst intersectCallback = entries => {\n\t\t\t\tentries.forEach(entry => {\n\t\t\t\t\ttarget.style.opacity = entry.intersectionRatio >= 0.7 ? 1 : entry.intersectionRatio ** 4; // eslint-disable-line\n\t\t\t\t});\n\t\t\t};\n\n\t\t\tconst observer = new IntersectionObserver(intersectCallback, observerOptions);\n\t\t\tobserver.observe(trigger);\n\t\t});\n\t}\n};\n\nexport default Scrolling;\n","import 'jquery-validation';\nimport 'jquery-validation-unobtrusive';\nimport 'inputmask/dist/jquery.inputmask.bundle';\nimport 'inputmask/dist/inputmask/bindings/inputmask.binding';\nimport 'jquery-form';\nimport zenScroll from 'zenscroll';\nimport swal from 'sweetalert2';\nimport VueSlider from 'vue-slider-component';\nimport Vue from 'vue';\nimport Tracking from './tracking';\n\nconst Forms = {\n\tInit() {\n\t\tForms.Validation();\n\t\tForms.LungCancerEligibilityTool();\n\t\tForms.BMICalculator();\n\t\tForms.AJAXForms();\n\t},\n\tValidation() {\n\t\tconst $validationSummary = $('.validation-summary-errors');\n\t\tconst $inputValidationError = $('.input-validation-error');\n\n\t\tif ($inputValidationError.length) {\n\t\t\tzenScroll.to($inputValidationError[0]);\n\t\t\t$($inputValidationError)[0].focus();\n\t\t} else if ($validationSummary.length) {\n\t\t\tzenScroll.to($validationSummary[0]);\n\t\t}\n\n\t\t$($inputValidationError)\n\t\t\t.closest('.form-group')\n\t\t\t.addClass('has-error');\n\t},\n\tAJAXForms() {\n\t\tForms.AJAXFormsInit('.form-ajax--default', {\n\t\t\tonSuccess: (responseText, statusText, xhr, $form) => {\n\t\t\t\tForms.ShowModalResult(responseText, statusText, xhr, $form);\n\t\t\t\tTracking.TrackAdWordsConversion(\n\t\t\t\t\t`${$('body').data('google-ads-conversionid')}/${$('body').data('google-ads-conversionlabel')}`\n\t\t\t\t);\n\t\t\t},\n\t\t\tonError: (responseText, statusText, xhr, $form) => {\n\t\t\t\tForms.ShowModalResult(responseText, statusText, xhr, $form);\n\t\t\t},\n\t\t\tonMessages: (responseText, statusText, xhr, $form) => {\n\t\t\t\tForms.ShowModalMessages(responseText, statusText, xhr, $form);\n\t\t\t}\n\t\t});\n\n\t\tForms.AJAXFormsInit('.form-ajax--inpage', {\n\t\t\tonSuccess: (responseText, statusText, xhr, $form) => {\n\t\t\t\tForms.AddResultToPage(responseText, statusText, xhr, $form);\n\t\t\t},\n\t\t\tonError: (responseText, statusText, xhr, $form) => {\n\t\t\t\tForms.AddResultToPage(responseText, statusText, xhr, $form);\n\t\t\t},\n\t\t\tresetForm: false\n\t\t});\n\t},\n\tAJAXFormsInit(selector, options) {\n\t\tconst defaults = {\n\t\t\tonSuccess: null,\n\t\t\tonError: null,\n\t\t\tresetForm: true\n\t\t};\n\n\t\tconst opts = $.extend({}, defaults, options);\n\n\t\t$(selector).ajaxForm({\n\t\t\tbeforeSubmit: (arr, $form, _options) => {\n\t\t\t\ttry {\n\t\t\t\t\tTracking.TrackPixel($form.data('track-pixel'));\n\t\t\t\t} catch (exc) {\n\t\t\t\t\t// nothing to do\n\t\t\t\t}\n\t\t\t},\n\t\t\tbeforeSerialize: () => {\n\t\t\t\tForms.DisableForms();\n\t\t\t},\n\t\t\tsuccess: (responseText, statusText, xhr, $form) => {\n\t\t\t\tswitch (responseText.Status.toLowerCase()) {\n\t\t\t\t\tcase 'complete':\n\t\t\t\t\t\tif (opts.onSuccess != null) {\n\t\t\t\t\t\t\topts.onSuccess(responseText, statusText, xhr, $form);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'message':\n\t\t\t\t\t\topts.resetForm = false;\n\t\t\t\t\t\tif (opts.onMessages != null) {\n\t\t\t\t\t\t\topts.onMessages(responseText, statusText, xhr, $form);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tif (opts.onError != null) {\n\t\t\t\t\t\t\topts.onError(responseText, statusText, xhr, $form);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tForms.EnableForms();\n\t\t\t\tif (opts.resetForm) {\n\t\t\t\t\t$form[0].reset();\n\t\t\t\t}\n\t\t\t},\n\t\t\terror: (responseText, statusText, xhr, $form) => {\n\t\t\t\tif (opts.onError != null) {\n\t\t\t\t\topts.onError(responseText, statusText, xhr, $form);\n\t\t\t\t}\n\t\t\t\tForms.EnableForms();\n\t\t\t}\n\t\t});\n\t},\n\tShowModalResult(responseText, statusText, xhr, $form) {\n\t\tconst responseJSON = responseText;\n\t\tTracking.TrackPageView(responseJSON.Route);\n\t\t$('
').load(`${responseJSON.Route} #form-result`, function buildAlert() {\n\t\t\tswal.fire({\n\t\t\t\thtml: $(this).html(),\n\t\t\t\tshowCloseButton: true,\n\t\t\t\t// type: responseJSON.Type,\n\t\t\t\tbuttonsStyling: false,\n\t\t\t\ticon: responseJSON.Status === 'Complete' ? 'success' : 'error',\n\t\t\t\tconfirmButtonText: $form.data('swal-confirm-button-text'),\n\t\t\t\tcustomClass: {\n\t\t\t\t\tconfirmButton: 'btn btn-indigo'\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t},\n\tShowModalMessages(responseText, statusText, xhr, $form) {\n\t\tswal.fire({\n\t\t\thtml: ``,\n\t\t\tshowCloseButton: true,\n\t\t\tbuttonsStyling: false,\n\t\t\ticon: 'warning',\n\t\t\tconfirmButtonText: $form.data('swal-confirm-button-text'),\n\t\t\tcustomClass: {\n\t\t\t\tconfirmButton: 'btn btn-indigo'\n\t\t\t}\n\t\t});\n\t},\n\tAddResultToPage(responseText, statusText, xhr, $form) {\n\t\tconst responseJSON = responseText;\n\t\tTracking.TrackPageView(responseJSON.Route);\n\n\t\tconst $target = $form.data('target');\n\t\t$($target).load(`${responseJSON.Route} #form-result`, () => {\n\t\t\t$($target).addClass('js--is-active');\n\t\t\tzenScroll.to(document.querySelector($target));\n\n\t\t\tconst $targetShow = $form.data('target-show');\n\t\t\tif ($targetShow != null) {\n\t\t\t\t$($targetShow).removeClass('js--is-inactive');\n\t\t\t}\n\t\t});\n\t},\n\tDisableForms() {\n\t\t$('.btn')\n\t\t\t.attr('disabled', 'disabled')\n\t\t\t.addClass('btn-disabled');\n\t},\n\tEnableForms() {\n\t\t$('.btn')\n\t\t\t.removeAttr('disabled')\n\t\t\t.removeClass('btn-disabled');\n\t},\n\tLungCancerEligibilityTool() {\n\t\t/* eslint-disable */\n\t\tif ($('#form-lung-cancer-eligibility-tool').length) {\n\t\t\tconst eligibilityTool = new Vue({\n\t\t\t\tel: '#form-lung-cancer-eligibility-tool',\n\t\t\t\tdata: {\n\t\t\t\t\tquestionsCount: $('.list--questions .list--item').length,\n\t\t\t\t\tcurrentQuestion: 1,\n\t\t\t\t\tyearsSmoked: null,\n\t\t\t\t\tcigsPerDay: null,\n\t\t\t\t\tpacksPerDay: null,\n\t\t\t\t\tpackYears: null,\n\t\t\t\t},\n\t\t\t\tmethods: {\n\t\t\t\t\treset() {\n\t\t\t\t\t\tthis.currentQuestion = 1;\n\t\t\t\t\t\tthis.yearsSmoked = null,\n\t\t\t\t\t\tthis.cigsPerDay = null,\n\t\t\t\t\t\tthis.packsPerDay = null,\n\t\t\t\t\t\tthis.packYears = null\n\t\t\t\t\t},\n\t\t\t\t\tnext() {\n\t\t\t\t\t\tthis.currentQuestion += 1;\n\t\t\t\t\t},\n\t\t\t\t\tcalculate() {\n\t\t\t\t\t\tif (this.yearsSmoked != null && this.cigsPerDay != null) {\n\t\t\t\t\t\t\tthis.currentQuestion = 0;\n\t\t\t\t\t\t\tthis.packsPerDay = this.cigsPerDay / 20;\n\t\t\t\t\t\t\tthis.packYears = this.yearsSmoked * this.packsPerDay;\n\n\t\t\t\t\t\t\tif (this.packYears >= 30) {\n\t\t\t\t\t\t\t\tGA.TrackPageView(`${document.location.href}#eligible`);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tGA.TrackPageView(`${document.location.href}#not-eligible`);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\tend() {\n\t\t\t\t\t\tthis.currentQuestion = 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\t/* eslint-enable */\n\t},\n\tBMICalculator() {\n\t\t/* eslint-disable */\n\t\tif ($('#bmi_calculator').length) {\n\t\t\tconst bmiCalculator = new Vue({\n\t\t\t\tel: '#bmi_calculator',\n\t\t\t\tcomponents: {\n\t\t\t\t\tVueSlider\n\t\t\t\t},\n\t\t\t\tdata: {\n\t\t\t\t\tbmi: null,\n\t\t\t\t\tbmiCategory: 'default',\n\t\t\t\t\theightOptions: {\n\t\t\t\t\t\tdotSize: 44,\n\t\t\t\t\t\theight: null,\n\t\t\t\t\t\ttooltipFormatter: val => `${Math.floor(val / 12)}' ${val - ((Math.floor(val / 12)) * 12)}\"`,\n\t\t\t\t\t\tvalue: 68\n\t\t\t\t\t},\n\t\t\t\t\tweightOptions: {\n\t\t\t\t\t\tdotSize: 44,\n\t\t\t\t\t\ttooltipFormatter: '{value}lbs.',\n\t\t\t\t\t\tvalue: 150\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tmethods: {\n\t\t\t\t\tcalculateBMI() {\n\t\t\t\t\t\tlet height = this.$refs.sliderHeight.getValue();\n\t\t\t\t\t\tlet weight = this.$refs.sliderWeight.getValue();\n\t\t\t\t\t\tlet bmi = Math.floor((weight / (height * height)) * 703);\n\t\t\t\t\t\tthis.bmi = bmi\n\t\t\t\t\t\tthis.setCategory(bmi);\n\t\t\t\t\t},\n\t\t\t\t\tsetCategory(bmi) {\n\t\t\t\t\t\tif (bmi < 18.5) {\n\t\t\t\t\t\t\treturn this.bmiCategory = 'underweight';\n\t\t\t\t\t\t} else if (bmi < 25) {\n\t\t\t\t\t\t\treturn this.bmiCategory = 'normal';\n\t\t\t\t\t\t} else if (bmi < 30) {\n\t\t\t\t\t\t\treturn this.bmiCategory = 'overweight';\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn this.bmiCategory = 'obese';\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t\t/* eslint-enable */\n\t}\n\t// RangeSliders() {\n\t// \t/* eslint-disable */\n\t// \tconst elements = document.querySelectorAll('.form-control-range-slider');\n\n\t// \telements.forEach(element => {\n\t// \t\tconst orientation = element.getAttribute('data-orientation');\n\t// \t\tconst units = element.getAttribute('data-units');\n\t// \t\tconst val = element.getAttribute('value');\n\n\t// \t\trangeSlider.create(element, {\n\t// \t\t\tpolyfill: true,\n\t// \t\t\tvertical: orientation === 'vertical' ? true : false,\n\t// \t\t\tonInit: function () {\n\t// \t\t\t\telement.nextElementSibling.querySelector('.rangeSlider__handle').innerHTML = Forms.GetHandle(val, units);\n\t// \t\t\t},\n\t// \t\t\tonSlide: function (position, value) {\n\t// \t\t\t\telement.nextElementSibling.querySelector('.rangeSlider__handle').innerHTML = Forms.GetHandle(value, units);\n\t// \t\t\t\t// TODO: Calculate BMI - need to call some function here, perhaps defined via data-attribute on the slider\n\t// \t\t\t},\n\t// \t\t\tonSlideEnd: function (position, value) {\n\t// \t\t\t\t// TODO: Show/hide stuff\n\t// \t\t\t}\n\t// \t\t});\n\t// \t});\n\t// \t/* eslint-enable */\n\t// },\n\t// GetHandle(value, units) {\n\t// \t/* eslint-disable */\n\t// \tlet displayUnits = '';\n\n\t// \tif (units === 'in.') {\n\t// \t\tconst feet = Math.floor(value / 12);\n\t// \t\tconst inches = value - (feet * 12);\n\t// \t\tvalue = `${feet}'${inches}\\\"`;\n\t// \t\t//value = feet + \"' \" + inches + \"\\\"\";\n\t// \t\t// Otherwise, display units are the indicated units\n\t// \t} else {\n\t// \t\tdisplayUnits = units;\n\t// \t}\n\t// \treturn `${value}${displayUnits}`\n\t// \t/* eslint-enable */\n\t// }\n};\n\nexport default Forms;\n","const VideoPlayer = {\n\tInit() {\n\t\tVideoPlayer.VideoModal();\n\t},\n\tVideoModal() {\n\t\t/* eslint-disable no-undef */\n\t\t/* eslint-disable no-unreachable */\n\t\t/* eslint-disable no-constant-condition */\n\t\tif (window.flowplayer !== undefined && $('#modalVideoPlayer').length) {\n\t\t\tflowplayer.cloud.then(() => {\n\t\t\t\tconst $bsModal = $('#videoModal');\n\t\t\t\tlet triggerPlayer;\n\n\t\t\t\tconst modalPlayer = flowplayer('#modalVideoPlayer');\n\t\t\t\tmodalPlayer.on('fullscreenexit', e => {\n\t\t\t\t\tif ($bsModal.data('mobile') !== undefined && $bsModal.data('mobile') === 'true') {\n\t\t\t\t\t\t$bsModal.modal('hide');\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\t$bsModal.on('show.bs.modal', e => {\n\t\t\t\t\tconst $trigger = $(e.relatedTarget);\n\t\t\t\t\ttriggerPlayer = flowplayer($trigger.find('[data-player-id]')[0]);\n\t\t\t\t\ttriggerPlayer.pause();\n\t\t\t\t\tconst videoId = $trigger.data('video-id');\n\t\t\t\t\tconst videoLabel = $trigger.data('label');\n\n\t\t\t\t\tif (\n\t\t\t\t\t\t$bsModal.data('flowplayer-video-id') === undefined ||\n\t\t\t\t\t\t$bsModal.data('flowplayer-video-id').indexOf(videoId) === -1\n\t\t\t\t\t) {\n\t\t\t\t\t\t$bsModal.data('flowplayer-video-id', videoId);\n\t\t\t\t\t\t$bsModal.attr('aria-label', videoLabel);\n\t\t\t\t\t\tmodalPlayer.setSrc(videoId);\n\t\t\t\t\t}\n\n\t\t\t\t\t// If small viewport\n\t\t\t\t\tif ($(window).width() <= 768) {\n\t\t\t\t\t\t$bsModal.data('mobile', 'true');\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tmodalPlayer.toggleFullScreen();\n\t\t\t\t\t\t} catch (exc) {\n\t\t\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t\t\tdocument.location.href = $('#modalVideoPlayer video source').attr('src');\n\t\t\t\t\t\t\t\t$bsModal.modal('hide');\n\t\t\t\t\t\t\t}, 500);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$bsModal.data('mobile', 'false');\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\t$bsModal.on('shown.bs.modal', e => {\n\t\t\t\t\tmodalPlayer.play();\n\t\t\t\t\tmodalPlayer.volume = 0.0;\n\t\t\t\t\tmodalPlayer.muted = false;\n\t\t\t\t\tconst volumeUp = setInterval(() => {\n\t\t\t\t\t\tif (modalPlayer.volume >= 0.8) {\n\t\t\t\t\t\t\tclearInterval(volumeUp);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tmodalPlayer.volume += 0.1;\n\t\t\t\t\t\t}\n\t\t\t\t\t}, 80);\n\t\t\t\t});\n\n\t\t\t\t$bsModal.on('hide.bs.modal', e => {\n\t\t\t\t\tconst volumeDown = setInterval(() => {\n\t\t\t\t\t\tif (modalPlayer.volume <= 0.1) {\n\t\t\t\t\t\t\tclearInterval(volumeDown);\n\t\t\t\t\t\t\tmodalPlayer.pause();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tmodalPlayer.volume -= 0.1;\n\t\t\t\t\t\t}\n\t\t\t\t\t}, 20);\n\t\t\t\t\tif (triggerPlayer != null) {\n\t\t\t\t\t\ttriggerPlayer.play();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t}\n};\n\nexport default VideoPlayer;\n","const Util = {\n\tUpdateUrlHash(hash) {\n\t\t// make sure we're dealing with a good hash\n\t\tif (typeof hash !== 'undefined') {\n\t\t\t// ensure consistency\n\t\t\tif (hash.indexOf('#') < 0) {\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\thash = `#${hash}`;\n\t\t\t}\n\n\t\t\tif (window.history.replaceState) {\n\t\t\t\twindow.history.replaceState(null, null, hash);\n\t\t\t} else {\n\t\t\t\twindow.location.replace(hash);\n\t\t\t}\n\t\t}\n\t}\n};\n\nexport default Util;\n","import { debounce } from 'throttle-debounce';\nimport SimpleHashTable from 'simple-hashtable';\nimport Util from './util';\nimport Tracking from './tracking';\n\nconst UpdateUrlAndTrack = debounce(1000, id => {\n\tUtil.UpdateUrlHash(id);\n\tTracking.TrackPageView(`${window.location.pathname}#${id}`);\n});\n\nconst FracTracking = {\n\ttrackAll: false,\n\tallRefs: document.querySelectorAll('.nav a.fracs'),\n\tfound: null,\n\tmax: 0,\n\tmin: 0.1,\n\tcurrent: new SimpleHashTable(),\n\tInit() {\n\t\tFracTracking.Fracs();\n\t},\n\tCallback(entries) {\n\t\tFracTracking.found = null;\n\t\tFracTracking.max = 0;\n\n\t\tlet entryId = 0;\n\t\tentries.forEach(entry => {\n\t\t\tentryId = entry.target.id;\n\t\t\tif (entry.isIntersecting) {\n\t\t\t\tif (entry.intersectionRatio > FracTracking.min) {\n\t\t\t\t\tFracTracking.current.put(entryId, entry);\n\t\t\t\t}\n\t\t\t} else if (FracTracking.current.containsKey(entryId)) {\n\t\t\t\tFracTracking.current.remove(entryId);\n\t\t\t}\n\t\t});\n\n\t\tlet entry = null;\n\t\tFracTracking.current.keys().forEach(key => {\n\t\t\tif (FracTracking.current.containsKey(key)) {\n\t\t\t\tentry = FracTracking.current.get(key);\n\t\t\t\tif (entry.isIntersecting && entry.intersectionRatio > FracTracking.max) {\n\t\t\t\t\tFracTracking.max = entry.intersectionRatio;\n\t\t\t\t\tFracTracking.found = entry;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tif (FracTracking.found != null) {\n\t\t\tFracTracking.allRefs.forEach(ref => {\n\t\t\t\tref.classList.remove('active');\n\t\t\t});\n\n\t\t\tconst id = FracTracking.found.target.getAttribute('id');\n\t\t\tconst reference = document.querySelector(`.nav a.fracs[href=\"#${id}\"]`);\n\t\t\tif (reference != null) {\n\t\t\t\treference.classList.add('active');\n\t\t\t\tFracTracking.allRefs.forEach(ref => {\n\t\t\t\t\tref.blur();\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tif (FracTracking.trackAll || !FracTracking.found.target.classList.contains('frac-notracking')) {\n\t\t\t\tFracTracking.trackAll = true;\n\t\t\t\tUpdateUrlAndTrack(id);\n\t\t\t}\n\t\t}\n\t},\n\tFracs() {\n\t\tconst observerOptions = {\n\t\t\troot: null,\n\t\t\trootMargin: '0px',\n\t\t\tthreshold: [0, 0.25, 0.5, 0.75, 1]\n\t\t};\n\n\t\tconst observer = new IntersectionObserver(FracTracking.Callback, observerOptions);\n\n\t\tconst triggers = document.querySelectorAll('.frac');\n\n\t\ttriggers.forEach(trigger => {\n\t\t\tobserver.observe(trigger);\n\t\t});\n\t}\n};\n\nexport default FracTracking;\n","import 'lazysizes';\nimport 'svgxuse';\nimport 'flickity';\n\n// Individual Bootstrap components\nimport 'bootstrap/js/dist/collapse';\nimport 'bootstrap/js/dist/dropdown';\nimport 'bootstrap/js/dist/modal';\nimport 'bootstrap/js/dist/tab';\n\n// Site components\nimport ClassToggler from './modules/classtoggler';\nimport PrefetchLinks from './modules/prefetchlinks';\nimport Navigation from './modules/navigation';\nimport Scrolling from './modules/scrolling';\nimport FracTracking from './modules/fracs';\nimport Forms from './modules/forms';\nimport VideoPlayer from './modules/videoplayer';\nimport Tracking from './modules/tracking';\n\n// Site styles\nimport '../css/app.scss';\n\n// DOM ready:\n$(() => {\n\t$('html').removeClass('no-js');\n\n\t// Init common modules\n\tClassToggler.Init();\n\tNavigation.Init();\n\tFracTracking.Init();\n\tForms.Init();\n\tScrolling.Init();\n\tTracking.Init();\n\tVideoPlayer.Init();\n\tPrefetchLinks.Init();\n});\n\n// All assets loaded\n// $(window).on('load', () => { });\n"],"sourceRoot":""}