"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7452],{8580:function(e,t,i){i.d(t,{$g:function(){return p},DV:function(){return r},FT:function(){return d},OE:function(){return c},PO:function(){return o},c8:function(){return _},fK:function(){return u},gg:function(){return l},ik:function(){return v},jZ:function(){return n},kF:function(){return m},mw:function(){return s},zi:function(){return a}});let r=["id","make_year","make","model","car_trim","vin","stock_number","price","car_condition","cpo","exterior_color"],o=["AL","AK","AZ","AR","CA","CO","CT","DE","DC","FL","GA","HI","ID","IL","IN","IA","KS","KY","LA","ME","MD","MA","MI","MN","MS","MO","MT","NE","NV","NH","NJ","NM","NY","NC","ND","OH","OK","OR","PA","RI","SC","SD","TN","TX","UT","VT","VA","WA","WV","WI","WY"].sort(),a={first_name:"",middle_initial:"",last_name:"",suffix:"",phone:"",email:"",apr:{new:4.68,used:6.04},credit_range:"660-720",term:72,trade_value:0,trade_balance:"0",down:"0",finance_completed:!1,trade_completed:!1,updated_at:Date.now(),geolocated_coords:void 0},n=["Ford","Chevrolet","Ram","Acura","Alfa Romeo","Aston Martin","Audi","Bentley","BMW","Buick","Cadillac","Chrysler","Dodge","Ferrari","Fiat","Genesis","GMC","Honda","Hyundai","Infiniti","Jaguar","Jeep","Kia","Lamborghini","Land Rover","Lexus","Lincoln","Lotus","Maserati","Mazda","McLaren","Mercedes-Benz","Mercury","Mini","Mitsubishi","Nissan","Pontiac","Rolls-Royce","Saab","Saturn","Subaru","Suzuki","Tesla","Toyota","Volkswagen","Volvo","Porsche","Smart","Isuzu","Scion"],l=["January","February","March","April","May","June","July","August","September","October","November","December"],c=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],s=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],_=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],d={Genesis:{build:213,build_mobile:213,credit:214,credit_mobile:214,deal_request:215,deal_request_mobile:215,general_inquiry:216,parts:217,parts_mobile:217,photo_request:218,photo_request_mobile:218,qualify:219,request_more_info:220,request_more_info_mobile:220,service:221,service_mobile:221,shipping_request:222,test_drive:223,test_drive_mobile:223,trade_in:224,trade_in_mobile:224},Lexus:{build:496,build_mobile:497,credit:476,credit_mobile:477,deal_request:498,deal_request_mobile:499,general_inquiry:480,parts:500,parts_mobile:501,photo_request:502,photo_request_mobile:503,qualify:483,qualify_mobile:483,request_more_info:484,request_more_info_mobile:485,service:488,service_mobile:489,test_drive:486,test_drive_mobile:487,trade_in:492,trade_in_mobile:493}},u=[{name:"facebook",field:"facebook_link"},{name:"youtube",field:"youtube_link"},{name:"instagram",field:"instagram_link"},{name:"linkedin",field:"linkedin_link"},{name:"snapchat",field:"snapchat_link"},{name:"twitter",field:"twitter_link"},{name:"tiktok",field:"tiktok_link"},{name:"threads",field:"threads_link"}],m=25,v=65,p={record_mask_text_selector:"",record_collect_fonts:!0}},97452:function(e,t,i){i.d(t,{WE:function(){return AppStateProvider},Ix:function(){return useAppStateContext}});var r=i(57437),o=i(2265),a=i(24033),n=i(46467),l=i(17541),c=i(42077),s=i.n(c),_=i(55666),d=i.n(_),u=i(82313),m=i.n(u),v=i(39217),p=i(39671),f=i(8580),h=i(31166),hooks_useChat=()=>{let[e,t]=(0,o.useState)(!1),[i,r]=(0,o.useState)([]),[a,n]=(0,o.useState)([]),[l,c]=(0,o.useState)(null),[s,_]=(0,o.useState)([]),[d,u]=(0,o.useState)(void 0),[m,v]=(0,o.useState)(!1);return(0,o.useEffect)(()=>{let e=sessionStorage.getItem("chatOpen"),i=sessionStorage.getItem("chatMessages"),o=sessionStorage.getItem("chatHistory"),a=sessionStorage.getItem("chatVehicle"),l=sessionStorage.getItem("chatSuggestions"),s=sessionStorage.getItem("conversationId");if(e&&t(JSON.parse(e)),i){let e=JSON.parse(i);e&&r(e.map(e=>({...e,timestamp:new Date(e.timestamp)})))}o&&n(JSON.parse(o)),a&&c(JSON.parse(a)),l&&_(JSON.parse(l)),s&&u(JSON.parse(s)),v(!0)},[]),(0,o.useEffect)(()=>{m&&sessionStorage.setItem("chatOpen",JSON.stringify(e))},[e]),(0,o.useEffect)(()=>{m&&sessionStorage.setItem("chatMessages",JSON.stringify(i))},[i]),(0,o.useEffect)(()=>{m&&sessionStorage.setItem("chatHistory",JSON.stringify(a))},[a]),(0,o.useEffect)(()=>{m&&sessionStorage.setItem("chatVehicle",JSON.stringify(l||""))},[l]),(0,o.useEffect)(()=>{m&&sessionStorage.setItem("chatSuggestions",JSON.stringify(s))},[s]),(0,o.useEffect)(()=>{m&&sessionStorage.setItem("conversationId",JSON.stringify(d||""))},[d]),{chatOpen:e,setChatOpen:t,chatMessages:i,setChatMessages:r,chatHistory:a,setChatHistory:n,chatVehicle:l,setChatVehicle:c,chatSuggestions:s,setChatSuggestions:_,conversationId:d,setConversationId:u}},hooks_useRateSheets=e=>{let{dealer:t,childDealers:i,env:r}=e,[a,n]=(0,o.useState)([]),{get:c,loading:s,response:_,cache:d}=(0,l.ZP)("".concat(null==r?void 0:r.API_URL,"/rate_sheets/group_rate_sheets"));return(0,o.useEffect)(()=>{async function fetchRateSheets(){if(t){let e=(i||[]).map(e=>e.id);e.push(t.id),await c("?dealer_ids[]=".concat(e.join("&dealer_ids[]="))),_.ok&&_.data&&n(_.data.rate_sheets),d.clear()}}(null==t?void 0:t.rate_sheets_enabled)&&fetchRateSheets()},[t,i]),{rateSheets:a,rateSheetsLoading:s}},g=i(64574);let Analytics=class Analytics{event(e,t){let i=this.library[e];if(i){let e=this.paramFormatter(i,t);this.sendEvent(i,e)}}paramFormatter(e,t){this.user=(null==t?void 0:t.user)||this.user;let i=(null==t?void 0:t.vehicle)?this.vehicleFormatter(t.vehicle,t.pricingDealer||this.dealer):{},r=e.conversion?this.leadDealerFormatter((null==t?void 0:t.leadDealer)||this.dealer):{},o=(null==t?void 0:t.params)||{},a=e.params||{},n={...a,...o,...i,...r},l=(null==t?void 0:t.location)&&this.locations[t.location];l&&(n.location=l);let c=(null==t?void 0:t.phoneNumber)?(0,g.ct)(t.phoneNumber,t.pricingDealer||this.dealer):void 0;return c&&(n.phone_type=c),n}leadDealerFormatter(e){return{dealer_name:e.name,dealer_id:e.id}}constructor(e,t,i){this.dealer=e,this.env=t||{},this.analyticsTags=i||[]}};var S=i(18346);let UET=class UET extends Analytics{vehicleFormatter(e,t){return{vehicle_id:e.id,vehicle_dealer_id:e.dealer_id,vehicle_vin:e.vin,vehicle_stock_number:e.stock_number,vehicle_name:(0,v.KJ)(t,e),vehicle_category:e.category,vehicle_year:e.make_year,vehicle_manufacturer:e.make,vehicle_model:e.model,vehicle_trim:e.car_trim,vehicle_price:(0,S.li)(e,t),vehicle_condition:e.car_condition,vehicle_inventory_age:(0,p.Fw)(e.created_time)}}sendEvent(e,t){var i;null===(i=window.uetq)||void 0===i||i.push("event",e.name,t)}constructor(...e){super(...e),this.library={click_phone_number:{name:"click_phone_number"},complete_chat_lead_form_success:{name:"complete_chat_lead_form"},complete_check_availability_form_success:{name:"complete_check_availability_form"},complete_deal_builder_success:{name:"complete_deal_builder"},complete_estimate_shipping_form_success:{name:"complete_estimate_shipping_form"},complete_motive_trade_tool_success:{name:"complete_motive_trade_tool"},complete_offer_form_success:{name:"complete_offer_form"},complete_quick_qualify_form_success:{name:"complete_quick_qualify_form"},complete_vehicle_builder_success:{name:"complete_vehicle_builder"},submit_contact_form_success:{name:"submit_contact_form"},submit_dealer_track_inquiry_success:{name:"submit_dealer_track_inquiry"},submit_parts_inquiry_success:{name:"submit_parts_inquiry"},submit_photo_request_success:{name:"submit_photo_request"},submit_service_inquiry_success:{name:"submit_service_inquiry"},view_valuation_page:{name:"view_valuation_page"}},this.locations={home_cta:"home_cta"}}};let y={params:{submit_status:"success"}},b={params:{submit_status:"failure"}};let GoogleAnalytics=class GoogleAnalytics extends Analytics{vehicleFormatter(e,t){return{vehicle_id:e.id,vehicle_dealer_id:e.dealer_id,vehicle_vin:e.vin,vehicle_stock_number:e.stock_number,vehicle_name:(0,v.KJ)(t,e),vehicle_category:e.category,vehicle_year:e.make_year,vehicle_manufacturer:e.make,vehicle_model:e.model,vehicle_trim:e.car_trim,vehicle_price:(0,S.li)(e,t),vehicle_condition:e.car_condition,vehicle_inventory_age:(0,p.Fw)(e.created_time)}}sendEvent(e,t){window.gtag("event",e.name,t)}constructor(...e){super(...e),this.library={add_contact_trade:{name:"add_contact_trade"},apply_filter:{name:"apply_filter"},apply_showroom_filter:{name:"apply_showroom_filter"},apply_sort:{name:"apply_sort"},chat_agent_message:{name:"chat_agent_message"},chat_opened:{name:"chat_opened"},chat_user_message:{name:"chat_user_message"},click_directions:{name:"click_directions"},click_main_cta:{name:"click_main_cta"},click_manufacturer_logo:{name:"click_manufacturer_logo"},click_phone_number:{name:"click_phone_number"},click_popular_search:{name:"click_popular_search"},click_share:{name:"click_share"},click_share_srp:{name:"click_share_srp"},click_showroom_cta:{name:"click_showroom_cta"},click_srp_cta:{name:"click_srp_cta"},complete_chat_lead_form_failure:{name:"complete_chat_lead_form",...b},complete_chat_lead_form_success:{name:"complete_chat_lead_form",conversion:!0,...y},complete_check_availability_form_failure:{name:"complete_check_availability_form",...b},complete_check_availability_form_success:{name:"complete_check_availability_form",conversion:!0,...y},complete_db_step_1:{name:"complete_db_step_1"},complete_db_step_2:{name:"complete_db_step_2"},complete_db_step_3:{name:"complete_db_step_3"},complete_deal_builder_failure:{name:"complete_deal_builder",...b},complete_deal_builder_success:{name:"complete_deal_builder",conversion:!0,...y},complete_estimate_shipping_form_failure:{name:"complete_estimate_shipping_form",...b},complete_estimate_shipping_form_success:{name:"complete_estimate_shipping_form",conversion:!0,...y},select_location_trade_tool_success:{name:"select_location_trade"},select_make_trade_tool_success:{name:"select_make_trade"},select_model_trade_tool_success:{name:"select_model_trade"},select_trim_trade_tool_success:{name:"select_trim_trade"},select_year_trade_tool_success:{name:"select_year_trade"},select_location:{name:"select_location"},complete_motive_trade_tool_failure:{name:"complete_motive_trade_tool",...b},complete_motive_trade_tool_success:{name:"complete_motive_trade_tool",conversion:!0,...y},complete_non_credit_deal_tool:{name:"complete_non-credit_deal_tool"},complete_offer_form_failure:{name:"complete_offer_form",...b},complete_offer_form_success:{name:"complete_offer_form",conversion:!0,...y},complete_payment_calculation:{name:"complete_payment_calculation"},complete_quick_qualify_form_failure:{name:"complete_quick_qualify_form",...b},complete_quick_qualify_form_success:{name:"complete_quick_qualify_form",conversion:!0,...y},complete_scheduler_contact_form:{name:"complete_scheduler_contact_form",conversion:!0},complete_scheduler_step_1:{name:"complete_scheduler_step_1"},complete_test_drive_scheduler:{name:"complete_test_drive_scheduler",conversion:!0},complete_vehicle_builder_failure:{name:"complete_vehicle_builder",...b},complete_vehicle_builder_success:{name:"complete_vehicle_builder",...y},continue_quick_qualify_form:{name:"continue_quick_qualify_form"},kbb_trade_tool_get_value:{name:"kbb_trade_tool_get_value"},location_card_click:{name:"location_card_click"},open_deal_personalization_form:{name:"open_deal_personalization_form"},open_home_store_selector:{name:"open_home_store_selector"},open_motive_scheduler:{name:"open_motive_scheduler"},open_motive_towing_tool:{name:"open_motive_towing_tool"},open_motive_trade_tool:{name:"open_motive_trade_tool"},open_non_credit_deal_tool:{name:"open_non-credit_deal_tool"},open_offer_tool:{name:"open_offer_tool"},open_quick_qualify_form:{name:"open_quick_qualify_form"},open_vehicle_builder:{name:"open_vehicle_builder"},open_service_modal:{name:"open_service_modal"},page_view:{name:"page_view",params:{page_location:window.location.href,page_path:window.location.pathname,page_title:document.title}},quick_qualify_skip_ssn:{name:"quick_qualify_skip_ssn"},scroll_photos:{name:"scroll_photos"},scroll_more_photos:{name:"scroll_more_photos"},scroll_srp:{name:"scroll_srp"},search:{name:"search"},search_with_ai:{name:"search_with_ai"},search_with_ai_response:{name:"search_with_ai_response"},select_builder_option:{name:"select_builder_option"},select_condition_trade:{name:"select_condition_trade"},select_home_store:{name:"select_home_store"},select_lead_location:{name:"select_lead_location"},select_make_towing:{name:"select_make_towing"},select_miles_trade:{name:"select_miles_trade"},select_model_towing:{name:"select_model_towing"},select_style_towing:{name:"select_style_towing"},select_trade_tool_flow:{name:"select_trade_tool_flow"},select_trade_tool_options:{name:"select_trade_tool_options"},select_trade_tool_trade_or_sell:{name:"select_trade_tool_trade_or_sell"},select_trade_tool_vin:{name:"select_trade_tool_vin"},select_trim_towing:{name:"select_trim_towing"},show_detailed_pricing:{name:"show_detailed_pricing"},start_builder_contact_form:{name:"start_builder_contact_form"},start_check_availability_form:{name:"start_check_availability_form"},start_contact_trade:{name:"start_contact_trade"},start_db:{name:"start_db"},start_offer_form:{name:"start_offer_form"},start_quick_qualify_form:{name:"start_quick_qualify_form"},start_scheduler_contact_form:{name:"start_scheduler_contact_form"},start_search:{name:"start_search"},submit_contact_form_failure:{name:"submit_contact_form",...b},submit_contact_form_success:{name:"submit_contact_form",conversion:!0,...y},submit_dealer_track_inquiry_failure:{name:"submit_dealer_track_inquiry",...b},submit_dealer_track_inquiry_success:{name:"submit_dealer_track_inquiry",conversion:!0,...y},submit_leave_message_form_failure:{name:"submit_leave_message_form",...b},submit_leave_message_form_success:{name:"submit_leave_message_form",conversion:!0,...y},submit_schedule_visit_form_success:{name:"submit_schedule_visit_form",conversion:!0,...y},submit_schedule_visit_form_failure:{name:"submit_schedule_visit_form",...b},submit_transfer_form_failure:{name:"submit_transfer_form",...b},submit_transfer_form_success:{name:"submit_transfer_form",conversion:!0,...y},submit_parts_inquiry_failure:{name:"submit_parts_inquiry",...b},submit_parts_inquiry_success:{name:"submit_parts_inquiry",conversion:!0,...y},submit_photo_request_failure:{name:"submit_photo_request",...b},submit_photo_request_success:{name:"submit_photo_request",conversion:!0,...y},submit_service_inquiry_failure:{name:"submit_service_inquiry",...b},submit_service_inquiry_success:{name:"submit_service_inquiry",conversion:!0,...y},submit_trade_feedback:{name:"submit_trade_feedback"},view_collection:{name:"view_collection"},view_completed_build:{name:"view_completed_build"},view_deal_builder:{name:"view_deal_builder"},view_finished_deal:{name:"view_finished_deal"},view_showroom_page:{name:"view_showroom_page"},view_srp:{name:"view_srp",params:{non_interaction:!0}},view_towing_page:{name:"view_towing_page"},view_valuation_page:{name:"view_valuation_page"},window_sticker_click:{name:"window_sticker_click"}},this.locations={chat:"chat",cms_page:"cms_page",contact_page:"contact_page",custom_page:"custom_page",filters:"filters",footer:"footer",home:"home",home_cta:"home_cta",home_page:"home_page",infobar_dropdown:"infobar_dropdown",location_page:"location_page",map_location_card:"map_location_card",mobile_navbar:"mobile_navbar",nav_bar:"nav_bar",no_results:"no_results",parts_page:"parts_page",pre_qualify_page:"pre_qualify_page",privacy:"privacy",search_results:"search_results",service_page:"service_page",showroom:"showroom",srp:"srp",srp_cta:"srp_cta",srp_estimate_card:"srp_estimate_card",srp_vehicle_card_estimate:"srp_vehicle_card_estimate",start_deal:"start_deal",trade_page:"trade_page",vdp:"vdp",vdp_estimate_card:"vdp_estimate_card",vdp_estimate_modal:"vdp_estimate_modal",vdp_footer:"vdp_footer",vdp_main:"vdp_main",vdp_lead_magnet:"vdp_lead_magnet",vdp_payment_card:"vdp_payment_card",vehicle_builder:"vehicle_builder"}}};var w=i(90718);let E={params:{successful:!0}},k={params:{successful:!1}};let Mixpanel=class Mixpanel extends Analytics{vehicleFormatter(e,t){return{"Vehicle ID":e.id,"Vehicle Dealer ID":e.dealer_id,"Vehicle VIN":e.vin,"Vehicle Stock Number":e.stock_number,"Vehicle Name":(0,v.KJ)(t,e),"Vehicle Category":e.category,"Vehicle Year":e.make_year,"Vehicle Manufacturer":e.make,"Vehicle Model":e.model,"Vehicle Trim":e.car_trim,"Vehicle Price":(0,S.li)(e,t),"Vehicle Condition":e.car_condition,"Vehicle Inventory Age":(0,p.Fw)(e.created_time)}}leadDealerFormatter(e){return{"Dealer Name":e.name,"Dealer ID":e.id}}sendEvent(e,t){e.name&&mixpanelEvent(e.name,this.dealer,this.env.MIXPANEL_KEY,this.env.STACK_NAME,{parameters:t,register:e.register,user:this.user,identify:e.identify,startRecording:e.startRecording})}constructor(...e){super(...e),this.library={add_contact_trade:{name:"Add Contact Trade"},apply_filter:{name:"Apply Filter"},apply_showroom_filter:{name:"Apply Showroom Filter"},apply_sort:{name:"Apply Sort"},chat_agent_message:{name:"Chat Agent Message"},chat_opened:{name:"Chat Opened"},chat_user_message:{name:"Chat User Message"},click_directions:{name:"Click Directions"},click_main_cta:{name:"Click Main CTA"},click_manufacturer_logo:{name:"Click Manufacturer Logo"},click_phone_number:{name:"Click Phone Number"},click_popular_search:{name:"Click Popular Search"},click_share:{name:"Click Share SRP"},click_share_srp:{name:"Click Share SRP"},click_showroom_cta:{name:"Click Showroom CTA"},click_srp_cta:{name:"Click SRP CTA"},complete_chat_lead_form_success:{name:"Complete Chat Lead Form",conversion:!0,...E},complete_chat_lead_form_failure:{name:"Complete Check Availability Form",...k},complete_check_availability_form_failure:{name:"Complete Check Availability Form",...k},complete_check_availability_form_success:{name:"Complete Check Availability Form",conversion:!0,...E},complete_db_step_1:{name:"Complete DB Step 1"},complete_db_step_2:{name:"Complete DB Step 2"},complete_db_step_3:{name:"Complete DB Step 3"},complete_deal_builder_failure:{name:"Complete Deal Builder",...k},complete_deal_builder_success:{name:"Complete Deal Builder",conversion:!0,...E},complete_estimate_shipping_form_failure:{name:"Complete Estimate Shipping Form",...k},complete_estimate_shipping_form_success:{name:"Complete Estimate Shipping Form",conversion:!0,...E},select_location_trade_tool_success:{name:"Select Location Trade"},select_make_trade_tool_success:{name:"Select Make Trade"},select_model_trade_tool_success:{name:"Select Model Trade"},select_trim_trade_tool_success:{name:"Select Trim Trade"},select_year_trade_tool_success:{name:"Select Year Trade"},select_location:{name:"Select Location"},complete_motive_trade_tool_failure:{name:"Complete Motive Trade Tool",...k},complete_motive_trade_tool_success:{name:"Complete Motive Trade Tool",conversion:!0,...E},complete_non_credit_deal_tool:{name:"Complete Non-Credit Deal Tool"},complete_offer_form_failure:{name:"Complete Offer Form",...k},complete_offer_form_success:{name:"Complete Offer Form",conversion:!0,...E},complete_payment_calculation:{name:"Complete Payment Calculation"},complete_quick_qualify_form_failure:{name:"Complete Quick Qualify Form",...k},complete_quick_qualify_form_success:{name:"Complete Quick Qualify Form",conversion:!0,...E},complete_scheduler_contact_form:{name:"Complete Scheduler Contact Form",conversion:!0},complete_scheduler_step_1:{name:"Complete Scheduler Step 1"},complete_test_drive_scheduler:{name:"Complete Test Drive Scheduler",conversion:!0},complete_vehicle_builder_failure:{name:"Complete Vehicle Builder",...k},complete_vehicle_builder_success:{name:"Complete Vehicle Builder",...E},continue_quick_qualify_form:{name:"Continue Quick Qualify Form"},conversion:{name:"Conversion"},kbb_trade_tool_get_value:{name:"kbb_trade_tool_get_value"},location_card_click:{name:"Location Card Click"},open_deal_personalization_form:{name:"Open Deal Personalization Form"},open_home_store_selector:{name:"Open Home Store Selector"},open_motive_scheduler:{name:"Open Motive Scheduler"},open_motive_towing_tool:{name:"Open Motive Towing Tool"},open_motive_trade_tool:{name:"Open Motive Trade Tool"},open_non_credit_deal_tool:{name:"Open Non-Credit Deal Tool"},open_offer_tool:{name:"Open Offer Tool"},open_quick_qualify_form:{name:"Open Quick Qualify Form"},open_vehicle_builder:{name:"Open Vehicle Builder"},open_service_modal:{name:"Open Service Modal"},quick_qualify_skip_ssn:{name:"Quick Qualify Skip SSN"},scroll_photos:{name:"Scroll Photos"},scroll_more_photos:{name:"Scroll More Photos"},scroll_srp:{name:"Scroll SRP"},search:{name:"Search"},search_with_ai:{name:"Search With AI"},search_with_ai_response:{name:"Search With AI Response"},select_builder_option:{name:"Select Builder Option"},select_condition_trade:{name:"Select Condition Trade In"},select_home_store:{name:"Select Home Store"},select_lead_location:{name:"Select Lead Location"},select_make_towing:{name:"Select Make Towing"},select_miles_trade:{name:"Select Miles Trade"},select_model_towing:{name:"Select Model Towing"},select_style_towing:{name:"Select Style Towing"},select_trade_tool_flow:{name:"Select Trade Tool Flow"},select_trade_tool_options:{name:"Select Trade Tool Options"},select_trade_tool_trade_or_sell:{name:"Select Trade Tool Trade or Sell"},select_trade_tool_vin:{name:"Select Trade Tool VIN"},select_trim_towing:{name:"Select Trim Towing"},session_start:{name:"Session Start",register:!0,identify:!0,startRecording:!0},show_detailed_pricing:{name:"Show Detailed Pricing"},start_builder_contact_form:{name:"Start Builder Contact Form"},start_check_availability_form:{name:"Start Check Availability Form"},start_contact_trade:{name:"Start Contact Trade"},start_db:{name:"Start DB"},start_offer_form:{name:"Start Offer Form"},start_quick_qualify_form:{name:"Start Quick Qualify Form"},start_scheduler_contact_form:{name:"Start Scheduler Contact Form"},start_search:{name:"Start Search"},submit_contact_form_failure:{name:"Submit Contact Form",...k},submit_contact_form_success:{name:"Submit Contact Form",conversion:!0,...E},submit_dealer_track_inquiry_failure:{name:"Submit Dealer Track Inquiry",...k},submit_dealer_track_inquiry_success:{name:"Submit Dealer Track Inquiry",conversion:!0,...E},submit_leave_message_form_failure:{name:"Submit Leave Message Form",...k},submit_leave_message_form_success:{name:"Submit Leave Message Form",conversion:!0,...E},submit_schedule_visit_form_success:{name:"Submit Schedule Visit Form",conversion:!0,...E},submit_schedule_visit_form_failure:{name:"Submit Schedule Visit Form",...k},submit_transfer_form_failure:{name:"Submit Transfer Form",...k},submit_transfer_form_success:{name:"Submit Transfer Form",conversion:!0,...E},submit_parts_inquiry_failure:{name:"Submit Parts Inquiry",...k},submit_parts_inquiry_success:{name:"Submit Parts Inquiry",conversion:!0,...E},submit_photo_request_failure:{name:"Submit Photo Request",...k},submit_photo_request_success:{name:"Submit Photo Request",conversion:!0,...E},submit_service_inquiry_failure:{name:"Submit Service Inquiry",...k},submit_service_inquiry_success:{name:"Submit Service Inquiry",conversion:!0,...E},submit_trade_feedback:{name:"Submit Trade Feedback"},view_blog_post_page:{name:"View Blog Post Page"},view_collection:{name:"View Collection"},view_completed_build:{name:"View Completed Build"},view_deal_builder:{name:"View Deal Builder"},view_finance_page:{name:"View Finance Page"},view_finished_deal:{name:"View Finished Deal "},view_pre_qualify_page:{name:"View Pre-Qualify Page"},view_service_specials_page:{name:"View Service Specials Page"},view_oem_offers_page:{name:"View OEM Offers Page"},view_showroom_page:{name:"View Showroom Page"},view_srp:{name:"View SRP"},view_towing_page:{name:"View Towing Page"},view_trade_page:{name:"View Trade Page"},view_valuation_page:{name:"View Valuation Page"},view_vdp:{name:"View VDP"},window_sticker_click:{name:"Window Sticker Click"}},this.locations={chat:"Chat",cms_page:"CMS Page",contact_page:"Contact Page",custom_page:"Custom Page",filters:"Filters",footer:"Footer",home:"Home",home_cta:"Home CTA",home_page:"Home Page",infobar_dropdown:"Infobar Dropdown",location_page:"Location Page",map_location_card:"Map Location Card",mobile_navbar:"Mobile Navbar",nav_bar:"Nav Bar",no_results:"No Results",parts_page:"Parts Page",pre_qualify_page:"Pre-Qualify Page",privacy:"Privacy",search_results:"Search Results",service_page:"Service Page",showroom:"Showroom",srp:"SRP",srp_cta:"SRP CTA",srp_estimate_card:"SRP Estimate Card",srp_vehicle_card_estimate:"SRP Vehicle Card Estimate",start_deal:"Start Deal",trade_page:"Trade Page",vdp:"VDP",vdp_estimate_card:"VDP Estimate Card",vdp_estimate_modal:"VDP Estimate Modal",vdp_footer:"VDP Footer",vdp_main:"VDP Main",vdp_lead_magnet:"VDP Lead Magnet",vdp_payment_card:"VDP Payment Card",vehicle_builder:"Vehicle Builder"}}};let mixpanelEvent=function(e,t,i,r){let{register:o,parameters:a,user:n,identify:l=!1,startRecording:c=!1}=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};if(("test"===r||"baja"===r||"production"===r)&&(null==t?void 0:t.default_mixpanel_enabled)){var s,_,d,u;if(w.Z.init(i,{api_host:"https://omniscience.ridemotive.com",...f.$g}),(null==t?void 0:t.mixpanel_enabled)&&t.mixpanel_key&&w.Z.init(t.mixpanel_key,{api_host:"https://omniscience.ridemotive.com"},"dealer_project"),o&&t&&(w.Z.register({"Dealership Name":null==t?void 0:t.name}),t&&(null===(s=w.Z.dealer_project)||void 0===s||s.register({"Dealership Name":null==t?void 0:t.name}))),l&&(w.Z.identify(),t&&(null===(_=w.Z.dealer_project)||void 0===_||_.identify())),n){let e={};n.full_name&&(e=Object.assign(e,{$name:n.full_name})),n.first_name&&n.last_name&&(e=Object.assign(e,{$name:"".concat(n.first_name," ").concat(n.last_name)})),n.first_name&&(e=Object.assign(e,{"First Name":n.first_name})),n.last_name&&(e=Object.assign(e,{"Last Name":n.last_name})),n.email&&(e=Object.assign(e,{$email:n.email})),n.phone&&(e=Object.assign(e,{"Phone Number":n.phone})),w.Z.people.set(e),t&&(null===(d=w.Z.dealer_project)||void 0===d||d.people.set(e))}!0!==o&&(w.Z.track(e,a),t&&(null===(u=w.Z.dealer_project)||void 0===u||u.track(e,a))),c&&w.Z.start_session_recording()}};let PureInfluencer=class PureInfluencer extends Analytics{vehicleFormatter(){return{}}sendEvent(e){e.name&&window.dispatchEvent(new CustomEvent(e.name))}constructor(...e){super(...e),this.library={conversion:{name:"_pi_rts_natively_converted"},page_view:{name:"_pi_rts_page_loaded"}},this.locations={}}};let Pixall=class Pixall extends Analytics{paramFormatter(){return{}}vehicleFormatter(){return{}}sendEvent(){var e;null===(e=window._pxam)||void 0===e||e.push({type:"event",eventType:"submit",eventSource:"lead"})}constructor(...e){super(...e),this.library={complete_chat_lead_form_success:{},complete_check_availability_form_success:{},complete_deal_builder_success:{},complete_estimate_shipping_form_success:{},complete_vehicle_builder_success:{},submit_contact_form_success:{},submit_dealer_track_inquiry_success:{},complete_offer_form_success:{},complete_quick_qualify_form_success:{},submit_parts_inquiry_success:{},submit_photo_request_success:{},submit_service_inquiry_success:{},view_valuation_page:{}},this.locations={}}};let C={name:"Lead"};let FBQ=class FBQ extends Analytics{paramFormatter(e,t){let i=(null==t?void 0:t.vehicle)?this.vehicleFormatter(t.vehicle,t.pricingDealer||this.dealer):{};return i}vehicleFormatter(e,t){var i;let r=(null==e?void 0:e.cpo)?"CPO":null==e?void 0:e.car_condition,o=e?{content_type:"vehicle",content_ids:[e.vin],vin:e.vin,postal_code:null==t?void 0:t.zipcode,country:"United States",make:e.make,model:e.model,trim:e.car_trim,year:e.make_year,state_of_vehicle:r,exterior_color:null===(i=e.generic_exterior_color)||void 0===i?void 0:i.toLowerCase(),interior_color:e.generic_interior_color,body_style:e.category,fuel_type:e.fuel_type,drivetrain:e.drivetrain,price:e.price,currency:"USD"}:{};return o}sendEvent(e,t){window.fbq&&e.name&&window.fbq("track",e.name,{...t})}constructor(...e){super(...e),this.library={complete_chat_lead_form_success:{...C},complete_check_availability_form_success:{...C},complete_deal_builder_success:{...C},complete_estimate_shipping_form_success:{...C},complete_offer_form_success:{...C},complete_quick_qualify_form_success:{...C},complete_vehicle_builder_success:{name:"CustomizeProduct"},submit_photo_request_success:{...C},view_vdp:{name:"ViewContent",params:{page_type:"vehicle inventory"}}},this.locations={}}};let Algolia=class Algolia extends Analytics{vehicleFormatter(e){return{vehicleId:e.id}}sendEvent(e,t){let i=null==t?void 0:t.vehicleId;i&&m()("convertedObjectIDsAfterSearch",{index:localStorage.getItem("search_index")||"none",eventName:"Vehicle Conversion",queryID:localStorage.getItem("query_id")||"0",objectIDs:["".concat(i)]})}constructor(...e){super(...e),this.library={click_phone_number:{},complete_chat_lead_form_success:{},complete_check_availability_form_success:{},complete_deal_builder_success:{},complete_estimate_shipping_form_success:{},complete_offer_form_success:{},complete_quick_qualify_form_success:{},submit_photo_request_success:{}},this.locations={}}};let I={sd_dealer_info:!0},T={sd_form_vehicle:!0};let ShiftDigital=class ShiftDigital extends Analytics{event(e,t){let i=this.library[e];if(i){if("page_view"===i.name&&!(null==t?void 0:t.sd_page_type))return;let e=this.paramFormatter(i,t);this.sendEvent(i,e)}}paramFormatter(e,t){this.user=(null==t?void 0:t.user)||this.user;let i=(null==t?void 0:t.vehicle)&&this.vehicleFormatter(t.vehicle,t.pricingDealer||this.dealer),r={};(null==e?void 0:e.sd_form_vehicle)?r={formVehicle:i||{}}:(null==e?void 0:e.sd_vehicle_details)&&(r={vehicleDetails:i||{}});let o=(null==t?void 0:t.params)||{},a=e.params||{},n=(null==t?void 0:t.sd_page_type)?{pageType:t.sd_page_type}:{},l=(null==t?void 0:t.sd_form_type)?{formType:t.sd_form_type}:{},c=(null==t?void 0:t.sd_session_id)?{sessionId:t.sd_session_id}:{},s=(null==e?void 0:e.sd_dealer_info)?this.dealerFormatter():{},_=(null==e?void 0:e.sd_user_info)?this.userFormatter():{},d=(null==t?void 0:t.sd_brand_type)?{pageBrand:t.sd_brand_type}:{},u=new Date().toISOString().split("T")[0].replace(/-/g,""),m={...a,...o,...r,...s,...n,...l,...c,..._,...d,siteTechnologyVersion:u},v=(null==t?void 0:t.phoneNumber)?(0,g.ct)(t.phoneNumber,t.pricingDealer||this.dealer):void 0;return v&&(m.clickToCallDepartment=v.charAt(0).toUpperCase()+v.slice(1)),this.removeEmptyParams(m),m}vehicleFormatter(e,t){let i=null==e?void 0:e.car_condition;(null==e?void 0:e.cpo)&&(i="CPO");let r=(null==e?void 0:e.in_transit)?"InTransit":void 0,o={...r&&{stockStatus:r},status:i,year:e.make_year,make:e.make,model:e.model,trim:e.car_trim,engine:e.engine,transmission:e.transmission,drivetrain:e.drivetrain,interiorColor:e.interior_color,exteriorColor:e.exterior_color,vin:e.vin,msrp:e.msrp,displayedPrice:(0,S.li)(e,t),fuelType:this.fuelTypeFormatter(e.fuel_type)};return this.removeEmptyParams(o),o}dealerFormatter(){let e=this.dealer;if(!e)return{};{let t={websiteTier:"Tier 3",language:e.language,dealerBrand:e.oem_type,dealerZipCode:e.zipcode,dealerState:e.state,dealerCity:e.city,dealerName:e.name};return this.removeEmptyParams(t),t}}userFormatter(){let e=this.user,t={userZipCode:e.zipcode||"",userCity:e.city||"",userState:e.state||""};return t}removeEmptyParams(e){let t=["userZipCode","userCity","userState"];Object.keys(e).forEach(i=>{""!==e[i]&&void 0!==e[i]||t.includes(i)||delete e[i]})}fuelTypeFormatter(e){if(e){let t=e.toLowerCase();if(t.includes("electric"))return"Electric";if(t.includes("hybrid"))return"Hybrid";if(t.includes("diesel"))return"Diesel";if(t.includes("gas"))return"Gasoline"}}sendEvent(e,t){window.sd&&(window.sd("dataLayer",{...t,...e.name&&{events:e.name}}),window.sd("send",(null==t?void 0:t.pageType)?"pageview":void 0))}constructor(...e){super(...e),this.library={click_directions:{name:"getDirections"},click_phone_number:{name:"clickToCall"},sd_page_view:{...I,sd_user_info:!0},sd_carousel_click:{name:"carouselClick"},sd_click_service_special:{name:"serviceOfferClick"},sd_filtered_search:{name:"filterSearch"},sd_form_shown:{name:"formShown",...T},sd_form_started:{name:"formInitiation",...T},sd_form_submitted_success:{name:"formSubmission",...T,params:{formOptIn:"in-implicit",leadType:"lead"}},sd_form_submitted_failure:{name:"formSubmissionError",...T},sd_schedule_service:{name:"scheduleServiceClick"},sd_search:{name:"typedSearch"},sd_view_srp:{...I,sd_user_info:!0},sd_view_vdp:{...I,sd_vehicle_details:!0,sd_user_info:!0},window_sticker_click:{name:"linkClick",params:{linkType:"Monroney Label"}},sd_chat_impression:{name:"chatImpression"},sd_chat_click:{name:"chatClick"},sd_chat_message:{name:"chatMessage"},sd_chat_lead_form_submitted:{name:"chatLead"},sd_chat_dr_handoff:{name:"chatDrHandoff"},sd_chat_closed:{name:"chatClosed"},sd_trade_in_impression:{name:"tradeInImpression"},sd_trade_in_started:{name:"tradeInStart"},sd_trade_in_form_started:{name:"tradeInFormInitiated"},sd_trade_in_form_submitted_success:{name:"tradeInFormSubmission"},sd_trade_in_form_submitted_failure:{name:"tradeInFormSubmissionError"},sd_trade_in_appt_scheduled:{name:"tradeInApptSet"},sd_trade_in_vehicle_selected:{name:"tradeInVehicleIndicated"},sd_trade_in_completed:{name:"tradeInComplete"}},this.locations={}}};var A=i(21836);let MNTN=class MNTN extends Analytics{vehicleFormatter(){return{}}mntnConversion(){this.dealer.mntn_id&&(0,A.W)(this.dealer.mntn_id)}sendEvent(){this.dealer.mntn_enabled&&this.mntnConversion()}constructor(...e){super(...e),this.library={conversion:{}},this.locations={}}};let AmazonCognition=class AmazonCognition extends Analytics{vehicleFormatter(e,t){return{vehicle_id:e.id,vehicle_dealer_id:e.dealer_id,vehicle_vin:e.vin,vehicle_stock_number:e.stock_number,vehicle_name:(0,v.KJ)(t,e),vehicle_category:e.category,vehicle_year:e.make_year,vehicle_manufacturer:e.make,vehicle_model:e.model,vehicle_trim:e.car_trim,vehicle_price:(0,S.li)(e,t),vehicle_condition:e.car_condition,vehicle_inventory_age:(0,p.Fw)(e.created_time)}}sendEvent(e){var t;this.dealer.amazon_cognition_enabled&&(null===(t=window)||void 0===t?void 0:t.amzn)&&(window.amzn("setRegion","NA"),window.amzn("addTag",this.dealer.amazon_cognition_id),window.amzn("trackEvent",e.name))}constructor(...e){super(...e),this.library={click_phone_number:{name:"Click Phone"},conversion:{name:"Conversion"},complete_chat_lead_form_success:{name:"CompleteChatLeadFormSuccess"},complete_chat_lead_form_failure:{name:"CompleteChatLeadFormFailure"},complete_check_availability_form_failure:{name:"CompleteCheckAvailabilityFormFailure"},complete_check_availability_form_success:{name:"CompleteCheckAvailabilityFormSuccess"},complete_deal_builder_failure:{name:"CompleteDealBuilderFailure"},complete_deal_builder_success:{name:"CompleteDealBuilderSuccess"},complete_estimate_shipping_form_failure:{name:"CompleteEstimateShippingFormFailure"},complete_estimate_shipping_form_success:{name:"CompleteEstimateShippingFormSuccess"},complete_motive_trade_tool_failure:{name:"CompleteMotiveTradeToolFailure"},complete_motive_trade_tool_success:{name:"CompleteMotiveTradeToolSuccess"},complete_non_credit_deal_tool:{name:"CompleteNonCreditDealTool"},complete_offer_form_failure:{name:"CompleteOfferFormFailure"},complete_offer_form_success:{name:"CompleteOfferFormSuccess"},complete_payment_calculation:{name:"CompletePaymentCalculation"},complete_quick_qualify_form_failure:{name:"CompleteQuickQualifyFormFailure"},complete_quick_qualify_form_success:{name:"CompleteQuickQualifyFormSuccess"},complete_scheduler_contact_form:{name:"CompleteSchedulerContactForm"},complete_scheduler_step_1:{name:"CompleteSchedulerStep1"},complete_test_drive_scheduler:{name:"CompleteTestDriveScheduler"},complete_vehicle_builder_failure:{name:"CompleteVehicleBuilderFailure"},complete_vehicle_builder_success:{name:"CompleteVehicleBuilderSuccess"},page_view:{name:"PageView"},view_collection:{name:"ViewSRP"},view_srp:{name:"ViewSRP"},view_vdp:{name:"VDPView"}},this.locations={}}};let GoogleAds=class GoogleAds extends Analytics{sendEvent(e,t){var i;if("function"!=typeof window.gtag)return;let r=null===(i=this.analyticsTags)||void 0===i?void 0:i.filter(e=>"Google Ads"===e.category&&e.google_id&&e.conversion_id);r&&0!==r.length&&r.forEach(e=>{e.google_id&&e.conversion_id&&window.gtag("event","conversion",{send_to:"".concat(e.google_id,"/").concat(e.conversion_id),...t})})}vehicleFormatter(e,t){return{vehicle_id:e.id,vehicle_dealer_id:e.dealer_id,vehicle_vin:e.vin,vehicle_stock_number:e.stock_number,vehicle_name:(0,v.KJ)(t,e),vehicle_category:e.category,vehicle_year:e.make_year,vehicle_manufacturer:e.make,vehicle_model:e.model,vehicle_trim:e.car_trim,vehicle_price:(0,S.li)(e,t),vehicle_condition:e.car_condition,vehicle_inventory_age:(0,p.Fw)(e.created_time)}}constructor(...e){super(...e),this.library={conversion:{name:"conversion"}},this.locations={}}};var hooks_useAnalytics=(e,t,i)=>({analyticsEvent:(r,o)=>{let a=[{class:Mixpanel,enabled:!!(null==e?void 0:e.default_mixpanel_enabled)},{class:GoogleAnalytics,enabled:!0},{class:UET,enabled:!!(null==e?void 0:e.uet_tag_id)},{class:PureInfluencer,enabled:!!((null==e?void 0:e.pure_influencer_enabled)&&(null==e?void 0:e.pure_influencer_id))},{class:MNTN,enabled:(null==e?void 0:e.mntn_enabled)&&!!(null==e?void 0:e.mntn_id)},{class:AmazonCognition,enabled:(null==e?void 0:e.amazon_cognition_enabled)&&!!(null==e?void 0:e.amazon_cognition_id)},{class:Pixall,enabled:!!((null==e?void 0:e.pixall_enabled)&&(null==e?void 0:e.dr_account_id))},{class:FBQ,enabled:!0},{class:Algolia,enabled:!0},{class:ShiftDigital,enabled:(null==e?void 0:e.program_type)==="Shift Digital"&&!!(null==e?void 0:e.oem_type)},{class:GoogleAds,enabled:i.some(e=>"Google Ads"===e.category&&e.google_id&&e.conversion_id)}];a.forEach(a=>{if(e&&a.enabled){let n=new a.class(e,t,i);n.event(r,o||{})}})}}),P=i(86442),hooks_useGeoLocation=(e,t,i,r)=>{let[a,n]=(0,o.useState)(),[l,c]=(0,o.useState)(void 0),[s,_]=(0,o.useState)([]),saveHomeDealerId=e=>{c(e),e?localStorage.setItem("homeDealerId","".concat(e)):localStorage.removeItem("homeDealerId")};async function updateUserWithCoords(o,a,l){let c=localStorage.getItem("homeDealerId");if(null==e?void 0:e.ip_geolocation_enabled){var s;if(!o.geolocated_coords||!o.distanceFromDealers){let a=await fetch("".concat(null==r?void 0:r.API_URL,"/map_images/geolocate_from_ip")),n=await a.json();if(a.ok&&(null==n?void 0:n.coords)){let r=n.coords;o.geolocated_coords=r,(null==n?void 0:n.continent_code)&&(o.continent_code=n.continent_code);let a=null==i?void 0:i.filter(t=>t.dealer_id!==(null==e?void 0:e.id)),l=null==a?void 0:a.filter(e=>{var i;return null==t?void 0:null===(i=t.find(t=>t.id===e.dealer_id))||void 0===i?void 0:i.show_location}),c=[];null==l||l.forEach(e=>{e.coords&&c.push({dealer_id:e.dealer_id,distance:(0,P.EG)(e.coords,r)})}),o.distanceFromDealers=c}}let _=null==t?void 0:t.find(e=>e.id.toString()===c);if(_){n(_),saveHomeDealerId(null==_?void 0:_.id),localStorage.setItem("user",JSON.stringify(o));return}let d=null===(s=o.distanceFromDealers)||void 0===s?void 0:s.reduce((e,t)=>{var i,r;return(null!==(i=null==e?void 0:e.distance)&&void 0!==i?i:1/0)<(null!==(r=null==t?void 0:t.distance)&&void 0!==r?r:1/0)?e:t}),u=(null==t?void 0:t.find(e=>e.id===(null==d?void 0:d.dealer_id)))||(null==t?void 0:t[0]);n(u),saveHomeDealerId(null==u?void 0:u.id),(null==o?void 0:o.continent_code)==="EU"&&l?l(!0):a&&((null==d?void 0:d.distance)||999)>f.kF&&a(!0)}else o.geolocated_coords=void 0,o.distanceFromDealers=void 0,saveHomeDealerId(void 0),n(void 0);localStorage.setItem("user",JSON.stringify(o))}return(0,o.useEffect)(()=>{if(a){var e;let t=null==i?void 0:null===(e=i.find(e=>e.dealer_id===a.id))||void 0===e?void 0:e.coords;if(t){let e=null==i?void 0:i.map(e=>({dealer_id:e.dealer_id,distance:(0,P.EG)(e.coords,t)}));_(e)}}},[a]),{updateUserWithCoords,homeDealer:a,setHomeDealer:n,homeDealerId:l,saveHomeDealerId,homeDistances:s}};let O=(0,o.createContext)({dealer:void 0,leadDealer:void 0,setLeadDealer:()=>void 0,homeDealer:void 0,setHomeDealer:()=>void 0,homeDealerId:void 0,saveHomeDealerId:()=>void 0,childDealers:void 0,locationDealers:void 0,brands:[],user:void 0,deals:[],setDeals:()=>void 0,saveUser:()=>void 0,creditSubmitted:!1,setCreditSubmitted:()=>void 0,estimateApp:void 0,brandLinks:[],childLinks:[],navLinks:[],navSections:[],navSettings:void 0,quickTags:[],imageOverlays:[],mapImages:[],tagCollections:[],searchIndex:{},globalRule:void 0,menuOpen:!1,setMenuOpen:()=>void 0,tradeOpen:!1,setTradeOpen:()=>void 0,creditOpen:!1,setCreditOpen:()=>void 0,estimateOpen:!1,setEstimateOpen:()=>void 0,fullCreditOpen:!1,setFullCreditOpen:()=>void 0,fullCreditLeadDealer:void 0,setFullCreditLeadDealer:()=>void 0,towingOpen:!1,setTowingOpen:()=>void 0,chatOpen:!1,setChatOpen:()=>void 0,setFsEnabled:()=>void 0,chatMessages:[],setChatMessages:()=>void 0,chatHistory:[],setChatHistory:()=>void 0,chatVehicle:null,setChatVehicle:()=>void 0,chatSuggestions:[],setChatSuggestions:()=>void 0,conversationId:void 0,setConversationId:()=>void 0,shippingAccount:void 0,fullstoryEvent:()=>void 0,vehicleCardSettings:void 0,vehicleCardBadges:[],setVehicleCardBadges:()=>void 0,env:{},dict:{},activeVehicle:void 0,setActiveVehicle:()=>void 0,eventLocation:void 0,setEventLocation:()=>void 0,schedulerOpen:!1,setSchedulerOpen:()=>void 0,dealOpen:!1,setDealOpen:()=>void 0,offerOpen:!1,setOfferOpen:()=>void 0,rebatesOpen:!1,setRebatesOpen:()=>void 0,showNavSearch:!1,setShowNavSearch:()=>void 0,showNavFooter:!1,setShowNavFooter:()=>void 0,hideNavContactSelectors:!1,setHideNavContactSelectors:()=>void 0,convertflowReady:!1,setConvertflowReady:()=>void 0,paymentEstimate:void 0,setPaymentEstimate:()=>void 0,getVdpPage:()=>null,vdpPagesFetched:!1,fetchVdpPages:()=>void 0,aiConfig:void 0,aiResults:[],setAiResults:()=>void 0,rateSheets:[],rateSheetsLoading:!1,creditScore:void 0,setCreditScore:()=>void 0,analyticsEvent:()=>void 0,sdSessionId:void 0,dealerFilters:{},descriptionModal:{},setDescriptionModal:()=>void 0,featureModalOpen:!1,setFeatureModalOpen:()=>void 0,customForm:void 0,setCustomForm:()=>void 0,customFormOpen:!1,setCustomFormOpen:()=>void 0,redirectModal:void 0,setRedirectModal:()=>void 0,redirectModalOpen:!1,setRedirectModalOpen:()=>void 0,setSelectedFeature:()=>void 0,serviceSchedulingOpen:!1,setServiceSchedulingOpen:()=>void 0,serviceSchedulingLeadDealer:void 0,setServiceSchedulingLeadDealer:()=>void 0,customStyles:[],checkEnterprise:()=>!1,checkOem:()=>!1,checkProgram:()=>!1,homeSelectorOpen:!1,setHomeSelectorOpen:()=>void 0,homeDistances:[],analyticsTags:[]}),useAppStateContext=()=>{let e=(0,o.useContext)(O);if(void 0===e)throw Error("use context inside AppStateProvider only");return e};function AppStateProvider(e){let{dealer:t,childDealers:i,brands:c,estimateApp:_,globalRule:u,navLinks:g,navSections:S,navSettings:y,quickTags:b,imageOverlays:w,mapImages:E,tagCollections:k,shippingAccount:C,vehicleCardSettings:I,vehicleCardBadges:T,env:A,test:P=!1,dict:R,defaultFsEnabled:N=!1,children:D,aiConfig:F,customStyles:M,analyticsTags:L}=e,[q,V]=(0,o.useState)({}),G=(null==A?void 0:A.ALGOLIA_APP_ID)&&(null==A?void 0:A.ALGOLIA_API_KEY)?d()(A.ALGOLIA_APP_ID,A.ALGOLIA_API_KEY):void 0,[U,x]=(0,o.useState)(t),[B]=(0,o.useState)(i),[H]=(0,o.useState)(null==i?void 0:i.filter(e=>{var t;return(null==U?void 0:null===(t=U.manual_map_locations)||void 0===t?void 0:t.length)?U.manual_map_locations.includes(e.id)&&e.show_location:e.show_location})),[Y,W]=(0,o.useState)(t),[K]=(0,o.useState)(c||[]),[j]=(0,o.useState)(u),[z]=(0,o.useState)(g),[J]=(0,o.useState)(S),[Q]=(0,o.useState)(y),[Z]=(0,o.useState)(b),[X]=(0,o.useState)(w),[$]=(0,o.useState)(E),[ee]=(0,o.useState)(k),[et,ei]=(0,o.useState)(f.zi),[er,eo]=(0,o.useState)([]),[ea,en]=(0,o.useState)(!1),[el]=(0,o.useState)(_),[ec,es]=(0,o.useState)([]),[e_,ed]=(0,o.useState)([]),[eu,em]=(0,o.useState)(!1),[ev,ep]=(0,o.useState)(!1),[ef,eh]=(0,o.useState)(!1),[eg,eS]=(0,o.useState)(!1),[ey,eb]=(0,o.useState)(!1),[ew,eE]=(0,o.useState)(void 0),[ek,eC]=(0,o.useState)(!1),[eI,eT]=(0,o.useState)(void 0),[eA,eP]=(0,o.useState)(!1),[eO,eR]=(0,o.useState)(""),[eN,eD]=(0,o.useState)(!1),[eF,eM]=(0,o.useState)(),[eL,eq]=(0,o.useState)(!1),[eV,eG]=(0,o.useState)(),[eU,ex]=(0,o.useState)(!1),[eB,eH]=(0,o.useState)(N||.0125>Math.random()),[eY,eW]=(0,o.useState)(!1),[eK]=(0,o.useState)(A||{}),[ej]=(0,o.useState)(R),[ez]=(0,o.useState)(C),[eJ]=(0,o.useState)(I),[eQ,eZ]=(0,o.useState)((null==T?void 0:T.map(e=>({...e,filters:(0,h.gi)(null==e?void 0:e.filters)})))||[]),[eX,e$]=(0,o.useState)(void 0),[e0,e1]=(0,o.useState)(void 0),[e2,e6]=(0,o.useState)(!1),[e4,e8]=(0,o.useState)(!1),[e5,e7]=(0,o.useState)(!1),[e3,e9]=(0,o.useState)(!1),[te,tt]=(0,o.useState)(!1),[ti,tr]=(0,o.useState)(!1),[to,ta]=(0,o.useState)(!1),[tn,tl]=(0,o.useState)(!1),[tc,ts]=(0,o.useState)({}),[t_,td]=(0,o.useState)([]),[tu,tm]=(0,o.useState)(!1),[tv,tp]=(0,o.useState)([]),[tf,th]=(0,o.useState)(void 0),[tg,tS]=(0,o.useState)(void 0),ty=function(e,t){let[i,r]=(0,o.useState)([]),[n,l]=(0,o.useState)(!1),c=(0,a.useSearchParams)();(0,o.useEffect)(()=>{if(!n){var e;l(!0);let t=null==c?void 0:null===(e=c.getAll("dealer_id"))||void 0===e?void 0:e.map(Number),i=sessionStorage.getItem("dealerIds"),o=i?JSON.parse(i):t;r(o),sessionStorage.setItem("dealerIds",JSON.stringify(o))}},[c]);let s=(0,o.useMemo)(()=>{let r=[...e?[e]:[],...t||[]].filter(Boolean),o=r.filter(e=>i.includes(null==e?void 0:e.id)),a={};o.forEach(e=>{a[null==e?void 0:e.name]=!0});let n=Object.keys(a).length?{dealership:{value:a}}:{};return n},[i,t,e]);return s}(U,B),[tb,tw]=(0,o.useState)({open:!1}),[tE,tk]=(0,o.useState)(!1),[tC]=(0,o.useState)(L||[]),{analyticsEvent:tI}=hooks_useAnalytics(U,eK,tC),tT=(0,a.usePathname)(),{rateSheets:tA,rateSheetsLoading:tP}=hooks_useRateSheets({dealer:U,childDealers:B,env:eK}),{chatOpen:tO,setChatOpen:tR,chatMessages:tN,setChatMessages:tD,chatHistory:tF,setChatHistory:tM,chatVehicle:tL,setChatVehicle:tq,chatSuggestions:tV,setChatSuggestions:tG,conversationId:tU,setConversationId:tx}=hooks_useChat(),initFullStorySingleton=()=>{eY||(console.log("Initialze FS"),n.S1({orgId:"Z9MZ1"}),eW(!0))};(0,o.useEffect)(()=>{if(null==U?void 0:U.script_src){let e=document.createElement("script");e.src=null==U?void 0:U.script_src,document.head.appendChild(e)}if((null==U?void 0:U.program_type)==="Shift Digital"){let e=sessionStorage.getItem("sdSessionId");e?tS(e):window.sd&&window.sd("getSessionId",e=>{tS(e),e?sessionStorage.setItem("sdSessionId",e):sessionStorage.removeItem("sdSessionId")})}},[]),(0,o.useEffect)(()=>{if((null==U?void 0:U.comply_auto_enabled)&&(null==U?void 0:U.comply_auto_id)){let e=document.createElement("script");e.src="https://cdn.complyauto.com/cookiebanner/banner/".concat(null==U?void 0:U.comply_auto_id,"/blocker.js"),document.head.appendChild(e)}},[]),(0,o.useEffect)(()=>{eB&&((null==eK?void 0:eK.STACK_NAME)==="test"||(null==eK?void 0:eK.STACK_NAME)==="baja"||(null==eK?void 0:eK.STACK_NAME)==="production")&&initFullStorySingleton()},[eB]),(0,o.useEffect)(()=>{tO&&eH(!0)},[tO]),(0,o.useEffect)(()=>{P&&x(t)},[t]);let{homeDealer:tB,setHomeDealer:tH,homeDealerId:tY,saveHomeDealerId:tW,updateUserWithCoords:tK,homeDistances:tj}=hooks_useGeoLocation(U,B,$,eK);(0,o.useEffect)(()=>{var e;m()("init",{appId:null==A?void 0:A.ALGOLIA_APP_ID,apiKey:null==A?void 0:A.ALGOLIA_API_KEY}),m()("setUserToken",(0,p.kE)());let t=sessionStorage.getItem("started"),i=localStorage.getItem("user"),r=i?JSON.parse(i):void 0;if(r&&(e=r.updated_at,!(Date.now()-e>864e5))){let e={...r};tK(e,checkEnterprise("carshop")?tk:void 0,eP),ei(e);let i=localStorage.getItem("deals");eo(i?JSON.parse(i):[]),t||(tI("session_start",{user:r}),sessionStorage.setItem("started","true"))}else{let e=f.zi;tK(e,checkEnterprise("carshop")?tk:void 0,eP),saveUser(e),localStorage.removeItem("deals"),t||(tI("session_start",{user:et}),sessionStorage.setItem("started","true"))}},[]),(0,o.useEffect)(()=>{let e=localStorage.getItem("deals");s()(er,e?JSON.parse(e):void 0)||localStorage.setItem("deals",JSON.stringify(er))},[er]),(0,o.useEffect)(()=>{if((null==U?void 0:U.trade_pending_enabled)&&(null==U?void 0:U.trade_pending_id)){!0!==window.dataQuickloadListener&&(window.dataQuickloadListener=!0,console.log("quickload added"));let e=new Event("tradepending-route-change");window.dispatchEvent(e)}},[tT]);let filterChildLinks=()=>{let e=[];return(null==U?void 0:U.is_group_or_pseudo_group)&&(null==B?void 0:B.length)&&(e=B.map((e,t)=>({id:t,title:e.name,href:"/locations/".concat((0,v.Cc)(e.name)),parent_type:"default",new_tab:!1}))),e},saveUser=e=>{if(!et||!s()(et,e))return localStorage.setItem("user",JSON.stringify(e)),ei(e),"We've updated your contact info!"},{get:tz,response:tJ,cache:tQ}=(0,l.ib)("".concat(null==eK?void 0:eK.API_URL,"/dealers/").concat(null==U?void 0:U.id,"/vdp_pages"));async function fetchVdpPages(){await tz(""),tJ.ok&&tJ.data&&td(tJ.data.vdp_pages),tm(!0),tQ.clear()}(0,o.useEffect)(()=>{U&&(V((0,p.Lx)(G,null==eK?void 0:eK.ALGOLIA_INVENTORY_INDEX)),ed(filterChildLinks()))},[U]);let manufacturers=()=>{var e;let t=[];return null==U||null===(e=U.brand_ids)||void 0===e||e.forEach(e=>{let i=K.find(t=>t.id.toString()===e);i&&t.push({title:"".concat(i.name,"\xae"),path:"/inventory?filters=".concat((0,v.jH)(U.default_sort,"make",i.name)),logo:i.logo})}),t};(0,o.useEffect)(()=>{U&&U.brand_ids&&K.length>0&&es(manufacturers())},[U,K]);let checkEnterprise=e=>Array.isArray(e)?!!(null==U?void 0:U.enterprise_type)&&e.includes(null==U?void 0:U.enterprise_type):(null==U?void 0:U.enterprise_type)===e;return(0,r.jsx)(O.Provider,{value:{dealer:U,childDealers:B,locationDealers:H,brands:K,user:et,deals:er,setDeals:eo,saveUser,creditSubmitted:ea,setCreditSubmitted:en,estimateApp:el,brandLinks:ec,childLinks:e_,navLinks:z,navSections:J,navSettings:Q,quickTags:Z,imageOverlays:X,mapImages:$,tagCollections:ee,shippingAccount:ez,searchIndex:q,globalRule:j,menuOpen:eu,setMenuOpen:em,tradeOpen:ev,setTradeOpen:ep,creditOpen:ef,setCreditOpen:eh,estimateOpen:eg,setEstimateOpen:eS,featureModalOpen:ey,setFeatureModalOpen:eb,customForm:ew,setCustomForm:eE,customFormOpen:ek,setCustomFormOpen:eC,redirectModal:eI,setRedirectModal:eT,redirectModalOpen:eA,setRedirectModalOpen:eP,selectedFeature:eO,setSelectedFeature:eR,leadDealer:Y,setLeadDealer:W,homeDealer:tB,setHomeDealer:tH,homeDealerId:tY,saveHomeDealerId:tW,fullCreditOpen:eN,setFullCreditOpen:eD,fullCreditLeadDealer:eF,setFullCreditLeadDealer:eM,serviceSchedulingOpen:eL,setServiceSchedulingOpen:eq,serviceSchedulingLeadDealer:eV,setServiceSchedulingLeadDealer:eG,towingOpen:eU,setTowingOpen:ex,chatOpen:tO,setChatOpen:tR,setFsEnabled:eH,chatMessages:tN,setChatMessages:tD,chatHistory:tF,setChatHistory:tM,chatVehicle:tL,setChatVehicle:tq,chatSuggestions:tV,setChatSuggestions:tG,conversationId:tU,setConversationId:tx,fullstoryEvent:(e,t)=>{((null==eK?void 0:eK.STACK_NAME)==="test"||(null==eK?void 0:eK.STACK_NAME)==="baja"||(null==eK?void 0:eK.STACK_NAME)==="production")&&(initFullStorySingleton(),n.B(e,t))},vehicleCardSettings:eJ,vehicleCardBadges:eQ,setVehicleCardBadges:eZ,env:eK,dict:ej,activeVehicle:eX,setActiveVehicle:e$,eventLocation:e0,setEventLocation:e1,schedulerOpen:e2,setSchedulerOpen:e6,dealOpen:e4,setDealOpen:e8,offerOpen:e5,setOfferOpen:e7,rebatesOpen:e3,setRebatesOpen:e9,showNavSearch:te,setShowNavSearch:tt,showNavFooter:ti,setShowNavFooter:tr,hideNavContactSelectors:to,setHideNavContactSelectors:ta,convertflowReady:tn,setConvertflowReady:tl,paymentEstimate:tc,setPaymentEstimate:ts,getVdpPage:function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],findPage=()=>{if(1===t_.length)return t_[0];for(let t of t_)if(e&&t.mobile||!e&&!t.mobile)return t;return null};return tu?findPage():(fetchVdpPages().then(()=>findPage()),null)},vdpPagesFetched:tu,fetchVdpPages,aiConfig:F,aiResults:tv,setAiResults:tp,rateSheets:tA,rateSheetsLoading:tP,creditScore:tf,setCreditScore:th,analyticsEvent:tI,sdSessionId:tg,dealerFilters:ty,descriptionModal:tb,setDescriptionModal:tw,customStyles:M,checkEnterprise,checkOem:e=>Array.isArray(e)?!!(null==U?void 0:U.oem_type)&&e.includes(null==U?void 0:U.oem_type):(null==U?void 0:U.oem_type)===e,checkProgram:e=>Array.isArray(e)?!!(null==U?void 0:U.program_type)&&e.includes(null==U?void 0:U.program_type):(null==U?void 0:U.program_type)===e,homeSelectorOpen:tE,setHomeSelectorOpen:tk,homeDistances:tj,analyticsTags:tC},children:D})}},21836:function(e,t,i){i.d(t,{A:function(){return MntnInit},W:function(){return mntnConversion}});var r=i(2265);let MntnInit=e=>{let{mntn_enabled:t,mntn_id:i}=e;return(0,r.useEffect)(()=>{t&&function(){try{e=""!==top.document.referer?encodeURIComponent(top.document.referrer.substring(0,2048)):""}catch(t){e=null!==document.referrer?document.referrer.toString().substring(0,2048):""}try{t=window&&window.top&&document.location&&window.top.location===document.location?document.location:window&&window.top&&window.top.location&&""!==window.top.location?window.top.location:document.location}catch(e){t=document.location}try{r=""!==parent.location.href?encodeURIComponent(parent.location.href.toString().substring(0,2048)):""}catch(e){try{r=null!==t?encodeURIComponent(t.toString().substring(0,2048)):""}catch(e){r=""}}var e,t,r,o,a=document.createElement("script"),n=null,l=Number(document.getElementsByTagName("script").length)-1,c=document.getElementsByTagName("script")[l];void 0===o&&(o=Math.floor(1e17*Math.random())),n="dx.mountain.com/spx?dxver=4.0.0&shaid="+i+"&tdr="+e+"&plh="+r+"&cb="+o+"term=value",a.type="text/javascript",a.src=("https:"===document.location.protocol?"https://":"http://")+n,c.parentNode.insertBefore(a,c)}()},[]),null},mntnConversion=e=>{!function(){try{t=""!==top.document.referer?encodeURIComponent(top.document.referrer.substring(0,512)):""}catch(e){t=null!==document.referrer?document.referrer.toString().substring(0,512):""}try{i=window&&window.top&&document.location&&window.top.location===document.location?document.location:window&&window.top&&window.top.location&&""!==window.top.location?window.top.location:document.location}catch(e){i=document.location}try{r=""!==parent.location.href?encodeURIComponent(parent.location.href.toString().substring(0,512)):""}catch(e){try{r=null!==i?encodeURIComponent(i.toString().substring(0,512)):""}catch(e){r=""}}var t,i,r,o,a=document.createElement("script"),n=null,l=Number(document.getElementsByTagName("script").length)-1,c=document.getElementsByTagName("script")[l];void 0===o&&(o=Math.floor(1e17*Math.random())),n="dx.mountain.com/spx?conv=1&shaid="+e+"&tdr="+t+"&plh="+r+"&cb="+o+"&shoid=ORDER ID&shoamt=TOTAL ORDER AMOUNT&shocur=&shopid=&shoq=&shoup=&shpil=",a.type="text/javascript",a.src=("https:"===document.location.protocol?"https://":"http://")+n,c.parentNode.insertBefore(a,c)}()}},1825:function(e,t,i){var r,o,a,n,l,c,s,_,d,u,m,v;i.d(t,{FI:function(){return o},h8:function(){return r},iM:function(){return c},kI:function(){return a}}),(s=r||(r={})).PRICE="price",s.YEARS="make_year",s.MAKE="make",s.MODEL="model",s.TRIM="car_trim",s.TYPE="category",s.CONDITION="car_condition",s.ODOMETER="odometer",s.CYLINDER="cylinder",s.DRIVETRAIN="drivetrain",s.DEALERSHIP="dealership",s.ENGINE="engine",s.TRANSMISSION="transmission",s.FUEL="fuel_type",s.QUICK_TAGS="quick_tags",s.FEATURE_TAGS="parsed_features",s.CPO="cpo",s.EXTERIOR_COLOR="generic_exterior_color",s.INTERIOR_COLOR="generic_interior_color",s.COLLECTIONS="collections",s.CITY_MPG="city_mpg",s.BODY_SUBTYPE="body_subtype",s.ROUNDED_PRICE="rounded_price",s.ROUNDED_ODOMETER="rounded_odometer",s.LENGTH="length",s.SLEEPING_CAPACITY="sleeping_capacity",s.AGE="age",s.GROSS_WEIGHT="gross_weight",s.DRY_WEIGHT="dry_weight",s.WEIGHT_CLASS="weight_class",s.RV_TYPE="rv_type",s.EQUIPMENT_GROUPS="equipment_groups",s.IN_TRANSIT="in_transit",s.FLOOR_PLAN_FEATURES="floor_plan_features",s.SAVINGS="savings",s.EV_RANGE="ev_range",s.SLIDEOUTS="slideouts",s.STANDARDIZED_FUEL_TYPE="standardized_fuel_type",s.RAW_EXTERIOR_COLOR="exterior_color",s.RAW_INTERIOR_COLOR="interior_color",s.OEM_CERTIFIED="oem_certified",s.CARFAX_ONE_OWNER="carfax_one_owner",s.TOWING_CAPACITY="towing_capacity",s.CAB_TYPE="cab_type",s.BED_LENGTH="bed_length",s.ON_HOLD="on_hold",(_=o||(o={})).CONDITION="Condition",_.PRICE="Price",_.MAKE="Make",_.MODEL="Model",_.TRIM="Trim",_.TYPE="Type",_.YEARS="Year",_.ODOMETER="Miles",_.CYLINDER="Cylinder",_.DRIVETRAIN="Drivetrain",_.DEALERSHIP="Location",_.ENGINE="Engine",_.TRANSMISSION="Transmission",_.FUEL="Fuel",_.QUICK_TAGS="Quick",_.FEATURE_TAGS="Feature",_.CPO="CPO",_.EXTERIOR_COLOR="Exterior Color",_.INTERIOR_COLOR="Interior Color",_.COLLECTIONS="Collections",_.CITY_MPG="City MPG",_.BODY_SUBTYPE="Body Subtype",_.LENGTH="Length",_.SLEEPING_CAPACITY="Sleeping Capacity",_.AGE="Age",_.GROSS_WEIGHT="Gross Weight",_.WEIGHT_CLASS="Weight Class",_.EQUIPMENT_GROUPS="Equipment Group",_.IN_TRANSIT="In-Transit",_.STANDARDIZED_FUEL_TYPE="Standardized Fuel Type",_.RAW_EXTERIOR_COLOR="Original Exterior Color",_.RAW_INTERIOR_COLOR="Original Interior Color",_.OEM_CERTIFIED="OEM Certified",_.ON_HOLD="Pre-Sold",(d=a||(a={})).CONDITION="filters.condition",d.PRICE="filters.price",d.MAKE="filters.make",d.MODEL="filters.model",d.TRIM="filters.trim",d.TYPE="filters.type",d.YEARS="filters.years",d.ODOMETER="filters.odometer",d.CYLINDER="filters.cylinder",d.DRIVETRAIN="filters.drivetrain",d.DEALERSHIP="filters.dealership",d.ENGINE="filters.engine",d.TRANSMISSION="filters.transmission",d.FUEL="filters.fuel",d.QUICK_TAGS="filters.quick_tags",d.FEATURE_TAGS="filters.feature_tags",d.CPO="filters.cpo",d.EXTERIOR_COLOR="filters.exterior_color",d.INTERIOR_COLOR="filters.interior_color",d.COLLECTIONS="filters.collections",d.CITY_MPG="filters.city_mpg",d.BODY_SUBTYPE="filters.body_subtype",d.LENGTH="filters.length",d.SLEEPING_CAPACITY="filters.sleeping_capacity",d.AGE="filters.age",d.GROSS_WEIGHT="filters.gross_weight",d.DRY_WEIGHT="filters.dry_weight",d.WEIGHT_CLASS="filters.weight_class",d.RV_TYPE="filters.rv_type",d.EQUIPMENT_GROUPS="filters.equipment_groups",d.IN_TRANSIT="filters.in_transit",d.FLOOR_PLAN_FEATURES="filters.floor_plan_features",d.SAVINGS="filters.savings",d.EV_RANGE="filters.ev_range",d.SLIDEOUTS="filters.slideouts",d.STANDARDIZED_FUEL_TYPE="filters.standardized_fuel_type",d.RAW_EXTERIOR_COLOR="filters.raw_exterior_color",d.RAW_INTERIOR_COLOR="filters.raw_interior_color",d.OEM_CERTIFIED="filters.oem_certified",d.TOWING_CAPACITY="filters.towing_capacity",d.CAB_TYPE="filters.cab_type",d.BED_LENGTH="filters.bed_length",d.ON_HOLD="filters.on_hold",(u=n||(n={})).BUDGET="Budget",u.FAMILY="Family",u.LUXURY="Luxury",u.LIKE_NEW="Like-new",u.SPORT="Sport",(m=l||(l={})).LUXURY="Luxurious & comfy",m.FAMILY="Family",m.LIKE_NEW="Like-new",m.SPORT="Sporty & fun",m.BUDGET="Budget friendly",(v=c||(c={})).HEATED_SEATS="Heated Seats",v.HEATED_STEERING="Heated Steering",v.VENTILATED_SEATS="Cooled Seats",v.APPLE="Apple CarPlay",v.ANDROID="Android Auto",v.BACKUP_CAMERA="Backup Camera",v.GPS="GPS Navigation",v.POWER_SEATS="Power Seats",v.THIRD_ROW="3rd Row Seats",v.KEYLESS="Keyless Entry",v.LEATHER="Leather Seats",v.PUSH_BUTTON="Push to Start",v.SUN_ROOF="Sun/Moon Roof",v.AUDIO="Premium Sound",v.DRIVE_ASSIST="Autonomy Features",v.DRW="Dual Rear Wheels",v.TOW_HITCH="Tow Hitch",v.SIDE_ENTRY="Side Entry",v.POWER_RAMP="Power Ramp",v.REMOVABLE_SEATS="Removable Seats",v.KNEELING="Kneeling",v.SIDE_ENTRY_POWER_RAMP="Side Entry Power Ramp",v.REAR_ENTRY_POWER_RAMP="Rear Entry Power Ramp",v.SIDE_ENTRY_MANUAL_RAMP="Side Entry Manual Ramp",v.REAR_ENTRY_MANUAL_RAMP="Rear Entry Manual Ramp"},31166:function(e,t,i){i.d(t,{BT:function(){return createSearchFilterString},M2:function(){return generateCollectionFilters},NQ:function(){return formatShiftDigitalFilters},Ok:function(){return createOptionalFilterString},Qx:function(){return filtersMatchVehicle},dh:function(){return createSortLabel},gi:function(){return consolidateFilters},ko:function(){return createFilterString},tR:function(){return checkAppliedFilters},x2:function(){return sortIsSelected}});var r=i(42077),o=i.n(r),a=i(1825),n=i(8580);let createSearchFilterString=(e,t,i,r,o,a,n,l,c)=>{if((null==e?void 0:e.ip_geolocation_enabled)&&(null==r?void 0:r.length)){if((null==e?void 0:e.enterprise_type)!=="carshop")return createDistanceSortedFilterString(e,t,i,r,n,void 0,c);if("Best Match"===l||"best_match"===l)return createRegionSortedFilterString(e,t,i,o,a,n,void 0,c);{let r=createFilterString(e,t,i,void 0,c);return(null==e?void 0:e.prioritize_inventory)&&(null==n?void 0:n.length)&&(r+=addPriorityFilter(e,n)),r}}{let r=createFilterString(e,t,i,void 0,c);return(null==e?void 0:e.prioritize_inventory)&&(null==n?void 0:n.length)&&(r+=addPriorityFilter(e,n)),r}},addPriorityFilter=(e,t)=>{let i=" AND dealer_id:".concat(e.id,"<score=1>");return t.forEach(t=>{e.id!==t.id&&(i+=" OR dealer_id:".concat(t.id,"<score=0>"))}),i},createFilterString=(e,t,i,r,o)=>{let n="",l=r,c=o||{};if(c.dealership&&t.dealership){var s,_;let e=(null===(s=t.dealership)||void 0===s?void 0:s.value)||{},i=(null===(_=c.dealership)||void 0===_?void 0:_.value)||{};Object.keys(i).forEach(t=>{e[t]||delete i[t]}),c.dealership.value=i}else t.dealership&&(c.dealership=t.dealership);let d={...c,...i};return r&&(null==c?void 0:c[r])&&(d[r]=c[r],l=void 0),Object.keys(d).filter(e=>!l||e!==l).forEach(e=>{var t,i;let r=null===(t=d[e])||void 0===t?void 0:t.value;if(Array.isArray(r)){let[t,r]=d[e].value,[a,l]=d[e].defaultValue||[0,null];t&&void 0!==a&&(n.length&&(n+=" AND "),n+="".concat(e.toLowerCase()," >= ").concat(t||a)),r&&(r!==l||(null==o?void 0:null===(i=o[e])||void 0===i?void 0:i.defaultValue[1]))&&(n.length&&(n+=" AND "),n+="".concat(e.toLowerCase()," <= ").concat(r))}else{let t=!1;Object.keys(r||{}).map(i=>{d[e].value[i]&&(t&&e!==a.h8.FEATURE_TAGS&&e!==a.h8.FLOOR_PLAN_FEATURES?n+=" OR ":n.length>0&&(n+=" AND "),t=!0,n+="".concat(e,':"').concat(i.replace(/"/g,"&quot;"),'"'))})}}),n="".concat(n?"".concat(n," AND "):"",'is_active:true AND dealer_ids:"').concat(null==e?void 0:e.id,'"')},createDistanceSortedFilterString=(e,t,i,r,o,a,n)=>{let l=createFilterString(e,t,i,a,n),c=null==r?void 0:r.sort((e,t)=>(t.distance||0)-(e.distance||0)),s=null==c?void 0:c.map(e=>{var t;return null==o?void 0:null===(t=o.find(t=>t.id===e.dealer_id))||void 0===t?void 0:t.name}).filter(Boolean),_=(null==r?void 0:r.length)&&(null==o?void 0:o.length)?null==o?void 0:o.filter(e=>!r.some(t=>t.dealer_id===e.id)).map(e=>e.name).filter(Boolean):[],d=[..._,...s],u=null==d?void 0:d.map((e,t)=>'dealership:"'.concat(e,'"<score=').concat(t+1,">")).join(" OR ");return u&&(l+=" AND ".concat(u)),l},createRegionSortedFilterString=(e,t,i,r,o,a,l,c)=>{let s=createFilterString(e,t,i,l,c);if(0===r.length)return s;let _=r.filter(e=>e.dealer_id!==(null==o?void 0:o.id)),d=null==a?void 0:a.filter(e=>e.id!==(null==o?void 0:o.id)),u=o?'dealership:"'.concat(null==o?void 0:o.name,'"<score=3>'):void 0,m=null==d?void 0:d.map(e=>{var t,i,r;return'dealership:"'.concat(e.name,'"<score=').concat((null!==(i=null==e?void 0:e.id,t=null===(r=_.find(e=>e.dealer_id===i))||void 0===r?void 0:r.distance)&&void 0!==t?t:9999)<=n.ik?2:1,">")}).join(" OR ");return m&&(s+=" AND ".concat(u?u+" OR ":"").concat(m)),s},createOptionalFilterString=e=>{if((null==e?void 0:e.oem_type)==="Genesis")return"make:Genesis"},isRange=e=>["PRICE","YEARS","ODOMETER","CITY_MPG","LENGTH","SLEEPING_CAPACITY","AGE","GROSS_WEIGHT","DRY_WEIGHT","SAVINGS","EV_RANGE","SLIDEOUTS","TOWING_CAPACITY"].includes(e),checkAppliedFilters=(e,t)=>{var i,r,n,l,c;if(!e)return!1;switch(isRange(t)){case!1:return Object.keys((null===(i=e[a.h8[t]])||void 0===i?void 0:i.value)||{}).reduce((i,r)=>{var o;return i||(null===(o=e[a.h8[t]])||void 0===o?void 0:o.value[r])},!1);case!0:return!!(null===(r=e[a.h8[t]])||void 0===r?void 0:r.value)&&!o()(null==e?void 0:null===(n=e[a.h8[t]])||void 0===n?void 0:n.value,null==e?void 0:null===(l=e[a.h8[t]])||void 0===l?void 0:l.defaultValue);default:return!!(null===(c=e[a.h8[t]])||void 0===c?void 0:c.value)}},formatEqValues=e=>(null==e?void 0:e.split(",").map(e=>null==e?void 0:e.trim()).filter(e=>!!e).filter((e,t,i)=>i.indexOf(e)===t))||[],consolidateFilters=e=>{let t=[...(e||[]).map(e=>({...e}))],i=[];return t.forEach(e=>{let t=i.find(t=>t.field===e.field&&t.comparator===e.comparator);try{t&&e.value?"eq"===e.comparator?t.value="".concat(t.value,",").concat(e.value):"lt"===e.comparator?t.value=t.value&&parseInt(t.value)<parseInt(e.value)?t.value:e.value:"gt"===e.comparator&&(t.value=t.value&&parseInt(t.value)>parseInt(e.value)?t.value:e.value):i.push(e)}catch(t){console.log("Filter consolidation error",e,t)}}),i.forEach(e=>{"eq"===e.comparator&&(e.value=formatEqValues(e.value).join(", "))}),i},generateCollectionFilters=function(e){var t;let i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r={};return null===(t=e.filters)||void 0===t||t.forEach(e=>{let t=e.field;if(t&&e.value){if("eq"===e.comparator){let i=formatEqValues(e.value);i.forEach(e=>{var i,o,a;r={...r,[t]:{value:{...(null===(i=r[t])||void 0===i?void 0:i.value)||{},[e]:!((null===(o=r[t])||void 0===o?void 0:o.value)&&(null===(a=r[t])||void 0===a?void 0:a.value[e]))}}}})}else{var o,a,n,l,c;let s="lt"===e.comparator&&(!(null==r?void 0:null===(o=r[t])||void 0===o?void 0:o.value[1])||(null==r?void 0:null===(a=r[t])||void 0===a?void 0:a.value[1])>parseInt(e.value))?parseInt(e.value):(null==r?void 0:null===(n=r[t])||void 0===n?void 0:n.value[1])||null,_="gt"===e.comparator&&((null==r?void 0:null===(l=r[t])||void 0===l?void 0:l.value[0])||0)<parseInt(e.value)?parseInt(e.value):(null==r?void 0:null===(c=r[t])||void 0===c?void 0:c.value[0])||0;r=i?{...r,[t]:{value:[_,s]}}:{...r,[t]:{value:[_,s],defaultValue:[_,s]}}}}}),r},filtersMatchVehicle=(e,t)=>!!e&&!!t&&e.every(e=>{if(e.field&&e.value){let o=t[e.field],a=e.value;switch(e.comparator){case"eq":var i,r;if(a=e.value.split(", "),Array.isArray(o))return null==a?void 0:null===(i=a.map(e=>e.toLowerCase()))||void 0===i?void 0:i.some(e=>o.map(e=>e.toLowerCase()).includes(e));return null==a?void 0:null===(r=a.map(e=>e.toLowerCase()))||void 0===r?void 0:r.includes("".concat(o).toLowerCase());case"lt":return void 0!==o&&o<=a;case"gt":return void 0!==o&&o>=a}}}),formatShiftDigitalFilters=(e,t,i)=>{var r,o,n,l;let c={...null!=i?i:{},...t},formatStandard=e=>{if(!e)return"All";let t=Object.keys(e.value).filter(t=>e.value[t]);return t.join("|")},s={status:(e=>{let t="Mixed";if(!e)return t;let i=e[a.h8.CONDITION],r=e[a.h8.CPO];return(null==i?void 0:i.New)&&!(null==i?void 0:i.Used)?t="New":!(null==i?void 0:i.New)&&(null==i?void 0:i.Used)&&((null==r?void 0:r.true)&&!(null==r?void 0:r.false)?t="CPO":!(null==r?void 0:r.true)&&(null==r?void 0:r.false)&&(t="Used")),t})(e),year:(e=>{var t,i;if(!e)return"All";let r=e.value[0]||(null===(t=e.defaultValue)||void 0===t?void 0:t[0])||2e3,o=e.value[1]||(null===(i=e.defaultValue)||void 0===i?void 0:i[1])||new Date().getFullYear()+1;return Array.from({length:o-r+1},(e,t)=>t+r).join("|")})(c[a.h8.YEARS]),make:formatStandard(c[a.h8.MAKE]),model:formatStandard(c[a.h8.MODEL]),trim:formatStandard(c[a.h8.TRIM]),drivetrain:formatStandard(c[a.h8.DRIVETRAIN]),bodyStyle:formatStandard(c[a.h8.TYPE]),features:formatStandard(c[a.h8.FEATURE_TAGS]),minPrice:null===(o=c[a.h8.PRICE])||void 0===o?void 0:null===(r=o.value)||void 0===r?void 0:r[0],maxPrice:null===(l=c[a.h8.PRICE])||void 0===l?void 0:null===(n=l.value)||void 0===n?void 0:n[1]};return s},createSortLabel=(e,t)=>{if("Best Match"===e.option.label)return t("filters.sort_best_match");switch(e.option.value){case"price":if("desc"===e.direction)return t("filters.sort_highest_price");return t("filters.sort_lowest_price");case"make_year":if("desc"===e.direction)return t("filters.sort_newest_year");return t("filters.sort_oldest_year");case"odometer":if("desc"===e.direction)return t("filters.sort_highest_mileage");return t("filters.sort_lowest_mileage");case"age":return t("filters.sort_newest");case"savings":if("desc"===e.direction)return t("filters.sort_highest_savings");return t("filters.sort_lowest_savings");case"make":if("desc"===e.direction)return t("filters.sort_a_z");return t("filters.sort_z_a");case"image_count":if("desc"===e.direction)return t("filters.sort_most_images");return t("filters.sort_least_images");default:return t("filters.sort_highest_price")}},sortIsSelected=(e,t,i)=>{var r,o;return"".concat(t.value,"_").concat(t.label,"_").concat(e)==="".concat(null==i?void 0:null===(r=i.option)||void 0===r?void 0:r.value,"_").concat(null==i?void 0:null===(o=i.option)||void 0===o?void 0:o.label,"_").concat(null==i?void 0:i.direction)}},35547:function(e,t,i){i.d(t,{$r:function(){return isEstimateValid},P0:function(){return percentDownFormatter},YH:function(){return findBestRate},fc:function(){return findBestTerm},fp:function(){return calculatePayment},jA:function(){return calculateAPR},qF:function(){return calculateCmsPayment}});var r=i(39217),o=i(31166);let isEstimateValid=(e,t,i)=>{let r=(null==e?void 0:e.car_condition)==="New"?null==t?void 0:t.max_age:null==t?void 0:t.used_max_age,o=(null==e?void 0:e.car_condition)==="New"?null==t?void 0:t.min_price:null==t?void 0:t.used_min_price,a=(null==e?void 0:e.car_condition)==="New"?null==t?void 0:t.max_price:null==t?void 0:t.used_max_price,n=(null==e?void 0:e.car_condition)==="New"?null==t?void 0:t.max_odometer:null==t?void 0:t.used_max_odometer;return!!((null==e?void 0:e.make_year)&&new Date().getFullYear()-parseInt(null==e?void 0:e.make_year)<=(r||9)&&e.price&&e.price>(o||0)&&e.price<(a||1e6)&&(e.odometer||0)<(n||1e6)&&("New"===e.car_condition&&((null==t?void 0:t.include_new)||i)||"Used"===e.car_condition&&((null==t?void 0:t.include_used)||i)))},percentDownFormatter=(e,t,i)=>{let o=null==i?void 0:i.toString().split(".");return(null==e?void 0:e.down_payment_percent_only)?"".concat(("0"===o[1]?o[0]:i)||0,"%"):(0,r.L6)(((null==t?void 0:t.price)||0)*(i||0)/100)},calculatePayment=(e,t,i,r,o,a)=>{let n,l;let c=e-(t||0)-(o||0)+(a||0),s=(i||4.5)/100;return s>0?(n=s/12*c,l=1-Math.pow(1+s/12,-(r||60))):(n=c,l=r||60),n/l},calculateCmsPayment=(e,t,i,r,o,a,n)=>{let l,c;let s=e-(t||0)-(o||0)+(a||0)+(n||0),_=(i||4.5)/100;return _>0?(l=_/12*s,c=1-Math.pow(1+_/12,-(r||60))):(l=s,c=r||60),l/c},calculateAPR=e=>{let t=parseInt(e),i={new:4.68,used:6.04,range:"660-719"};if(!Number.isNaN(t))switch(!0){case t<580:i={new:14.39,used:20.45,range:"300-579"};break;case t<620:i={new:11.92,used:17.74,range:"580-619"};break;case t<660:i={new:8.04,used:10.4,range:"620-659"};break;case t<720:i={new:6.99,used:9.24,range:"660-719"};break;case t<760:i={new:6.64,used:8.79,range:"720-759"};break;case t>761:i={new:5.89,used:7.29,range:"760-850"};break;default:i={new:6.99,used:9.24,range:"660-719"}}return{...i,rawScore:Number.isNaN(t)?void 0:t}};function findBestRate(e,t,i,r){let a=[];return null==e||e.forEach(e=>{var n;let l=function(e,t){if(!e)return;let i=t||660,r=[1,2,3,4,5,6,7,8,9,10].find(t=>{let r=e["t".concat(t,"_min")],o=e["t".concat(t,"_max")];return(void 0!==r||void 0!==o)&&(void 0===r&&o?i<=o:void 0===o&&r?i>=r:r&&o&&i>=r&&i<=o)});return r}(e,t),c=null===(n=e.rate_categories)||void 0===n?void 0:n.filter(e=>{var t;return(0,o.Qx)(null==e?void 0:null===(t=e.collection)||void 0===t?void 0:t.filters,r)}),s=[];null==c||c.forEach(e=>{s.push(...function(e,t){let i=t||48,r=null==e?void 0:e.filter(e=>i>=e.term_min&&i<=e.term_max);return r||[]}((null==e?void 0:e.rates)||[],i))}),s.forEach(e=>{let t=function(e,t){if(void 0!==e&&void 0!==t)return t["t".concat(e,"_rate")]}(l,e);t&&a.push(t)})}),a.length>0?Math.min(...a):void 0}function findBestTerm(e,t){let i=[];return null==e||e.forEach(e=>{var r;let a=null===(r=e.rate_categories)||void 0===r?void 0:r.filter(e=>{var i;return(0,o.Qx)(null==e?void 0:null===(i=e.collection)||void 0===i?void 0:i.filters,t)});null==a||a.forEach(e=>{(null==e?void 0:e.default_term)&&i.push(e.default_term)})}),i.length>0?Math.max(...i):void 0}},39217:function(e,t,i){i.d(t,{$x:function(){return formatTimeSince},BW:function(){return sortByOption},Cc:function(){return nameToSlug},ES:function(){return modelSlug},Fr:function(){return brandsFormatter},Gn:function(){return addressParser},KJ:function(){return vehicleTitle},L6:function(){return priceFormatter},LQ:function(){return vdpSlug},Mt:function(){return addressFormatter},Nm:function(){return srpCondition},O0:function(){return displayCaseMake},Q2:function(){return modelImage},SI:function(){return dealershipKey},TS:function(){return shortTransmission},Tb:function(){return filtersFormatter},Tg:function(){return longPriceFormatter},Tu:function(){return formatFullDate},V2:function(){return numberFormatter},Xz:function(){return inputPhoneFormatter},Zb:function(){return dealerKey},_q:function(){return colorLastPunctuation},cH:function(){return carKey},fB:function(){return vehicleTrim},gh:function(){return blogSubtext},jH:function(){return filterFormatter},k1:function(){return shortBodyType},mr:function(){return formatTime},ni:function(){return phoneNumberFormatter},rO:function(){return fullAddress},sH:function(){return vehicleTitleWithoutTrim}});var r=i(8580),o=i(31082);let priceFormatter=e=>{let t=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"});return t.format(e).split(".")[0]},longPriceFormatter=e=>{let t=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"});return t.format(e)},phoneNumberFormatter=e=>e&&10===e.length&&!isNaN(e)?"(".concat(e.slice(0,3),") ").concat(e.slice(3,6),"-").concat(e.slice(6,10)):e||"",inputPhoneFormatter=e=>e?(e=e.toString()).includes("(")&&!e.includes(")")?e.replace("(",""):new o.R("US").input(e):"",vehicleTitle=(e,t)=>{let i=(null==t?void 0:t.make_year)?"".concat(null==t?void 0:t.make_year," "):"";return t&&"".concat(i).concat(t.make||"").concat((null==e?void 0:e.copyright_symbol_enabled)?"\xae":""," ").concat(t.model||""," ").concat(t.car_trim||""," ").concat(t.series_detail||"")||""},vehicleTitleWithoutTrim=(e,t)=>{let i=(null==t?void 0:t.make_year)?"".concat(null==t?void 0:t.make_year," "):"";return t&&"".concat(i).concat(t.make||"").concat((null==e?void 0:e.copyright_symbol_enabled)?"\xae":""," ").concat(t.model||"")||""},vehicleTrim=(e,t)=>t&&"".concat(t.car_trim||""," ").concat(t.series_detail||"")||"",displayCaseMake=e=>{switch(e.toLocaleLowerCase()){case"bmw":return"BMW";case"alfa romeo":return"Alfa Romeo";case"aston martin":return"Aston Martin";case"mercedes-benz":return"Mercedes-Benz";default:return e.charAt(0).toUpperCase()+e.slice(1)}},brandsFormatter=e=>{if(!(null==e?void 0:e.length))return"";{if(1===e.length)return e[0];let t="";for(let i=0;i<e.length;i++)t+=e[i],i<e.length-2?t+=", ":i===e.length-2&&(t+=" or ");return t}},pad=e=>("0"+e).slice(-2),formatTimeSince=e=>{if(!e)return"Never";let t=new Date,i=new Date(e),r=Math.floor((t.getTime()-i.getTime())/6e4);if(r<60)return"< 1hr ago";let o=Math.floor(r/60);return"".concat(o," ").concat(1===o?"hour":"hours"," ago")},formatTime=e=>{let t=e.getHours(),i=e.getMinutes(),r=t>=12?"pm":"am";t%=12,t=t||12,i=i<10?"0"+i:i;let o=t+":"+i+r;return o},formatFullDate=(e,t)=>{if(!e)return"";let i=new Date(e);return t?"".concat(pad(i.getMonth()+1),"/").concat(pad(i.getDate()),"/").concat(i.getFullYear()):"".concat(i.getMonth()+1,"/").concat(i.getDate(),"/").concat(i.getFullYear())},numberFormatter=e=>e||0===e?e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","):"",addressFormatter=e=>e?"".concat(e.address_1,",").concat(e.address_2?" ".concat(e.address_2,","):""," ").concat(e.city,", ").concat(e.state," ").concat(e.zipcode):"",addressParser=e=>{let t={address:"",city:"",state:"",zipcode:""},i="",r="";return e.address_components.forEach(e=>{e.types.includes("street_number")?i=e.short_name:e.types.includes("route")?r=e.short_name:e.types.includes("locality")?t={...t,city:e.long_name}:e.types.includes("administrative_area_level_1")?t={...t,state:e.short_name}:e.types.includes("postal_code")&&(t={...t,zipcode:e.short_name})}),t={...t,address:"".concat(i," ").concat(r).trim()}},fullAddress=e=>{if(!e)return"";let t=e.address_1+" "+(e.address_2||"");return"".concat(t.trim(),", ").concat(e.city,", ").concat(e.state," ").concat(e.zipcode)},sortByOption=e=>{let t="Price",i="price",r="desc";return(null==e?void 0:e.includes("make_year"))?(t="Year",i="make_year"):(null==e?void 0:e.includes("odometer"))?(t="Mileage",i="odometer"):(null==e?void 0:e.includes("age"))?(t="Age",i="age"):(null==e?void 0:e.includes("savings"))?(t="Savings",i="savings"):(null==e?void 0:e.includes("make"))?(t="Make",i="make"):(null==e?void 0:e.includes("image_count"))?(t="Image Count",i="image_count"):(null==e?void 0:e.includes("best_match"))&&(t="Best Match",i="make"),(null==e?void 0:e.includes("asc"))&&(r="asc"),{option:{label:t,value:i,type:"value"},direction:r}},filterFormatter=(e,t,i)=>{let r=sortByOption(e),o={};return t&&i&&(o={[t]:{value:{[i]:!0}}}),encodeURIComponent(JSON.stringify({sortBy:r,appliedFilters:o}))},filtersFormatter=(e,t)=>{let i=sortByOption(e),r={};return(null==t?void 0:t.length)&&t.forEach(e=>{e.filterType&&e.filterValue&&(r[e.filterType]={value:{[e.filterValue]:!0}})}),encodeURIComponent(JSON.stringify({sortBy:i,appliedFilters:r}))},srpCondition=e=>{let t={};if(e)try{let i=decodeURI(e);t=JSON.parse(i).appliedFilters}catch(t){console.log(t.message,e)}t||(t={});let i="All";if(1==Object.keys(t).length){let{car_condition:e}=t;if(e&&e.value){var r,o;(null===(r=e.value)||void 0===r?void 0:r.Used)===!0?i="Used":(null===(o=e.value)||void 0===o?void 0:o.New)===!0&&(i="New")}}else Object.keys(t).length>1&&(i="Other");return i},nameToSlug=e=>e?e.toLowerCase().replace(/['.]/g,"").replace(/ /g,"-"):"",vdpSlug=(e,t)=>{var i;if(!e)return"";if(!(null==e?void 0:e.vin)||!/^[A-HJ-NPR-Z0-9]{17}$/.test(null==e?void 0:e.vin))return(null==t?void 0:t.dealer_slugs)?"".concat(null==e?void 0:e.id,"-").concat(e.dealer_id):null==e?void 0:null===(i=e.id)||void 0===i?void 0:i.toString();let r=[e.car_condition,e.make_year,e.make,e.model,e.car_trim,e.vin].filter(Boolean).join("-"),o=encodeURIComponent(r.replace(/[^a-zA-Z0-9-]/g,"_"));return(null==t?void 0:t.dealer_slugs)?"".concat(o,"-").concat(e.dealer_id):o},blogSubtext=e=>{let t=e.published_at?new Date(e.published_at):new Date;return"Published on ".concat(r.OE[t.getMonth()]," ").concat(t.getDate(),", ").concat(t.getFullYear()," by ").concat(e.author)},modelSlug=e=>(null==e?void 0:e.toLowerCase().replace(/ /g,"_"))||"",modelImage=e=>{var t,i;let r=(null==e?void 0:e.year)&&e.make&&e.model?null===(i=a[e.year])||void 0===i?void 0:null===(t=i[e.make])||void 0===t?void 0:t[e.model]:void 0,o=(null==e?void 0:e.images.image_provider_2)&&e.images.image_provider_2[0].href;return r||o||"/ford-truck.png"},a={2024:{Genesis:{"Electrified G80":"/e_g80_2024.webp","Electrified GV70":"/e_gv70_2024.webp",G70:"/g70_2024.webp",G80:"/g80_2024.webp",G90:"/g90_2024.webp",GV60:"/gv60_2024.webp",GV70:"/gv70_2024.webp",GV80:"/gv80_2024.webp"}},2025:{Genesis:{GV70:"/gv70_2025.webp",GV80:"/gv80_2025.webp"}}},carKey=e=>(null==e?void 0:e.oem_type)==="Genesis"?"vehicle":"car",dealershipKey=e=>(null==e?void 0:e.oem_type)==="Genesis"?"retailer":"dealership",dealerKey=e=>(null==e?void 0:e.oem_type)==="Genesis"?"retailer":"dealer",colorLastPunctuation=(e,t,i)=>{if(!t)return e;let r=e.trimEnd(),o=r.slice(-1);if([".","!","?"].includes(o)){let t=r.slice(0,-1)+'<span style="color: '.concat(i,';">').concat(o,"</span>");return t+e.slice(r.length)}return e};function shortBodyType(e){switch(e){case"Sport Utility":return"SU";case"Pickup":return"TK";case"Hatchback":return"HB";case"Wagon":return"WG";case"Sedan":return"SD";case"Minivan":return"MV";case"Convertible":return"CV";case"Coupe":return"CP";default:if(e.toLowerCase().includes("4dr"))return"SD";if(e.toLowerCase().includes("2dr"))return"CP";if(e.toLowerCase().includes("pickup"))return"TK";if(e.toLowerCase().includes("wagon"))return"WG";else if(e.toLowerCase().includes("van"))return"MV";return e}}function shortTransmission(e){let t=e.toLowerCase();return t.includes("auto")?"AUTO":t.includes("man")?"MAN":t.includes("cvt")?"CVT":e}},86442:function(e,t,i){i.d(t,{EG:function(){return calculateExactDistance},aZ:function(){return isDeliveryAvailable},o_:function(){return isTransferRequired}});var r=i(8580);let dealerInDeliveryRange=(e,t)=>{var i;return((null===(i=t.find(t=>t.dealer_id===e))||void 0===i?void 0:i.distance)||999)<r.ik},isTransferRequired=(e,t,i,r)=>{var o;return!!(e&&(null==e?void 0:e.dealer_id)!==r&&(null==t?void 0:null===(o=t.distanceFromDealers)||void 0===o?void 0:o.length)&&!dealerInDeliveryRange(e.dealer_id,null!=i?i:t.distanceFromDealers))},isDeliveryAvailable=(e,t,i,r)=>{var o;return!!(e&&(null==e?void 0:e.dealer_id)!==r&&(null==t?void 0:null===(o=t.distanceFromDealers)||void 0===o?void 0:o.length)&&dealerInDeliveryRange(e.dealer_id,null!=i?i:t.distanceFromDealers))},calculateExactDistance=(e,t)=>{try{var i,r,o;let a,n,l,c,s,_,d,u,m;let v=1/298.257223563,p=(1-v)*6378137,toRadians=e=>e*Math.PI/180,[f,h]=e.map(toRadians),[g,S]=t.map(toRadians),y=g-f,b=Math.atan((1-v)*Math.tan(h)),w=Math.atan((1-v)*Math.tan(S)),E=Math.sin(b),k=Math.cos(b),C=Math.sin(w),I=Math.cos(w),T=y,A=100;do{if(a=Math.sin(T),n=Math.cos(T),l=Math.sqrt((I*a)**2+(k*C-E*I*n)**2),0===l)return 0;c=E*C+k*I*n,s=Math.atan2(l,c),_=k*I*a/l,d=1-_**2,u=c-2*E*C/d,isNaN(u)&&(u=0),m=v/16*d*(4+v*(4-3*d));let e=T;if(T=y+(1-m)*v*_*(s+m*l*(u+m*c*(-1+2*u**2))),1e-12>Math.abs(T-e))break}while(--A>0);if(0===A)return NaN;let P=d*(40680631590769-p**2)/p**2,O=P/1024*(256+P*(-128+P*(74-47*P))),R=O*l*(u+O/4*(c*(-1+2*u**2)-O/6*u*(-3+4*l**2)*(-3+4*u**2))),N=p*(1+P/16384*(4096+P*(-768+P*(320-175*P))))*(s-R);return parseFloat(((o=621371e-9*N,void 0===o)?void 0:null===(r=o.toString())||void 0===r?void 0:null===(i=r.match(/^-?\d+(?:\.\d{0,2})?/))||void 0===i?void 0:i[0])||"0")}catch(e){return NaN}}},64574:function(e,t,i){i.d(t,{Hi:function(){return getLeadSourceMappings},ct:function(){return getPhoneType},pP:function(){return findLeadDealer}});var r=i(8580);function getLeadSourceMappings(e,t,i,o){let a=r.FT[e];if(!a)return;let n=t;n=o?t+"_mobile":t;let l=a[n];l&&i.append("lead_source_id",l.toString())}function getPhoneType(e,t){let i=null==e?void 0:e.replace(/\D/g,"");return i===(null==t?void 0:t.sales_phone)?"sales":i===(null==t?void 0:t.service_phone)?"service":i===(null==t?void 0:t.parts_phone)?"parts":"other"}function findLeadDealer(e,t,i){let r=null==t?void 0:t.find(t=>t.id===(null==e?void 0:e.dealer_id));return(null==i?void 0:i.send_leads_to_child)&&r?r:i}},18346:function(e,t,i){i.d(t,{EQ:function(){return rebatePrice},Ov:function(){return documentFee},PQ:function(){return generateSRPPrices},Ql:function(){return generateVDPPrices},T4:function(){return showUsedPricing},V1:function(){return listPriceLabel},VV:function(){return showPrices},e2:function(){return getPricingDealer},li:function(){return getVehiclePrice},t$:function(){return showNewPricing}});var r=i(39217);let getVehiclePrice=(e,t)=>(null==t?void 0:t.use_list_price_for_calculations)?(((null==e?void 0:e.car_condition)==="Used"?null==e?void 0:e.price:(null==e?void 0:e.discount_price)||(null==e?void 0:e.price))||0)-rebatePrice(e)+((null==e?void 0:e.equipment_price)||0)+((null==e?void 0:e.car_condition)==="Used"?0:(null==e?void 0:e.total_fees)||0):(null==e?void 0:e.price)||0,getPricingDealer=(e,t,i)=>{let r=null==i?void 0:i.find(t=>t.id===(null==e?void 0:e.dealer_id));return(null==t?void 0:t.inherit_prices)&&r||t};function rebatePrice(e){return(null==e?void 0:e.car_condition)==="Used"?0:((null==e?void 0:e.manual_incentives)?null==e?void 0:e.manual_rebate_price:null==e?void 0:e.rebate_price)||0}function showPrices(e,t){return getVehiclePrice(e,t)>0||!!(null==t?void 0:t.show_msrp_without_price)&&(null==e?void 0:e.car_condition)==="New"&&((null==e?void 0:e.msrp)||0)>0}function listPriceLabel(e,t,i){if("srp"===e){if((null==t?void 0:t.car_condition)==="New")return(null==i?void 0:i.srp_price_copy)||"Our Price";if((null==t?void 0:t.car_condition)==="Used")return(null==i?void 0:i.used_srp_price_copy)||"Our Price"}else if("vdp"===e){if((null==t?void 0:t.car_condition)==="New")return(null==i?void 0:i.total_price_copy)||"Our Price";if((null==t?void 0:t.car_condition)==="Used")return(null==i?void 0:i.used_total_price_copy)||"Our Price"}return"Our Price"}function generateVDPPrices(e,t){let i=showPrices(e,t),o=[];if(i){let i=getVehiclePrice(e,t);(null==e?void 0:e.car_condition)==="New"?(e.msrp&&o.push({label:(null==t?void 0:t.msrp_price_copy)||"MSRP",value:(0,r.L6)(e.msrp),strikethrough:!1}),getVehiclePrice(e,t)>0&&o.push({label:listPriceLabel("vdp",e,t),value:i&&i>0?(0,r.L6)(i):(null==t?void 0:t.no_price_copy)||""})):((null==e?void 0:e.retail_price)&&o.push({label:null==t?void 0:t.compare_price_copy,value:(0,r.L6)(e.retail_price)}),o.push({label:listPriceLabel("vdp",e,t),value:i&&i>0?(0,r.L6)(i):(null==t?void 0:t.no_price_copy)||""}))}return(null==t?void 0:t.vdp_price_order)==="rtl"&&o.reverse(),o}function generateSRPPrices(e,t){let i=[],o=getVehiclePrice(e,t);return(null==e?void 0:e.car_condition)==="New"?e.msrp&&i.push({label:(null==t?void 0:t.msrp_price_copy)||"MSRP",value:(0,r.L6)(e.msrp)}):(null==e?void 0:e.retail_price)&&i.push({label:(null==t?void 0:t.compare_price_copy)||"Retail Price",value:(0,r.L6)(e.retail_price)}),i.push({label:listPriceLabel("srp",e,t),value:o&&o>0?(0,r.L6)(o):(null==t?void 0:t.no_price_copy)||""}),i[1]&&(i[0].grey=!0,(null==t?void 0:t.comparison_strikethrough)&&(i[0].strikethrough=!0)),(null==t?void 0:t.srp_price_order)==="rtl"&&i.reverse(),i}let showNewPricing=(e,t)=>!!(null==t?void 0:t.rebate_details_enabled)&&(null==e?void 0:e.car_condition)==="New"&&getVehiclePrice(e,t)>0,showUsedPricing=(e,t)=>!!(null==t?void 0:t.show_detailed_used_pricing)&&(null==e?void 0:e.car_condition)==="Used"&&getVehiclePrice(e,t)>0,documentFee=(e,t)=>(null==e?void 0:e.car_condition)==="New"?{showFee:(null==t?void 0:t.document_fee)!==null,fee:(null==t?void 0:t.document_fee)&&parseInt(null==t?void 0:t.document_fee)||0,copy:(null==t?void 0:t.document_fee_copy)||"",tip:(null==t?void 0:t.document_fee_tooltip_copy)||"",showFee2:(null==t?void 0:t.document_fee_2)!==null,fee2:(null==t?void 0:t.document_fee_2)&&parseInt(null==t?void 0:t.document_fee_2)||0,copy2:(null==t?void 0:t.document_fee_copy_2)||"",tip2:(null==t?void 0:t.document_fee_tooltip_copy_2)||"",useInCalculation:!!(null==t?void 0:t.doc_fee_calculation)}:{showFee:(null==t?void 0:t.used_document_fee)!==null,fee:(null==t?void 0:t.used_document_fee)&&parseInt(null==t?void 0:t.used_document_fee)||0,copy:(null==t?void 0:t.used_document_fee_copy)||"",tip:(null==t?void 0:t.used_document_fee_tooltip_copy)||"",showFee2:!1,fee2:0,copy2:"",tip2:"",useInCalculation:!!(null==t?void 0:t.used_doc_fee_calculation)}},39671:function(e,t,i){i.d(t,{Fw:function(){return calculateAge},H3:function(){return metricMode},Lx:function(){return createAlgoliaIndices},X:function(){return getVehicleDealer},ZL:function(){return clearLocalStorage},hw:function(){return getSrpCtaCount},hy:function(){return getVehicleCardHeights},kE:function(){return userToken},rM:function(){return mixpanelPageView},tn:function(){return algoliaIndexName},ts:function(){return getCarshopSortDealers}});var r=i(90718),o=i(35547),a=i(8580);let clearLocalStorage=()=>{localStorage.removeItem("vehicle_list_scroll_position"),localStorage.removeItem("results_per_page"),localStorage.removeItem("vehicle_list_current_page"),localStorage.removeItem("search_value"),localStorage.removeItem("filter_value")},userToken=()=>{let e=localStorage.getItem("user_token");return e||(e=((e,t)=>{let i="";for(let e=12;e>0;--e)i+=t[Math.floor(Math.random()*t.length)];return i})(0,"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"),localStorage.setItem("user_token",e)),e},mixpanelPageView=(e,t,i)=>{if(("test"===i||"baja"===i||"production"===i)&&(null==e?void 0:e.default_mixpanel_enabled)){var o;r.Z.init(t,{api_host:"https://omniscience.ridemotive.com",...a.$g}),(null==e?void 0:e.mixpanel_enabled)&&e.mixpanel_key&&r.Z.init(e.mixpanel_key,{api_host:"https://omniscience.ridemotive.com"},"dealer_project"),r.Z.track_pageview(),e&&(null===(o=r.Z.dealer_project)||void 0===o||o.track_pageview())}},calculateAge=e=>{let t=Math.floor(Date.now()/1e3);return"".concat(Math.floor((t-(e||t))/86400)," Days")},metricMode=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"long",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];switch(t){case"long":if((null==e?void 0:e.distance_unit)==="km")return i?"Kilometres":"kilometres";return i?"Miles":"miles";case"short":if((null==e?void 0:e.distance_unit)==="km")return i?"KM":"km";return i?"MI":"mi";case"odometer":if((null==e?void 0:e.distance_unit)==="km")return i?"Kilometres":"kilometres";return i?"Mileage":"mileage";case"per-gallon":if((null==e?void 0:e.mileage_unit)==="L/100km")return"L/100km";return i?"MPG":"mpg";case"long-per-gallon":if((null==e?void 0:e.mileage_unit)==="L/100km")return i?"Liters Per 100km":"liters per 100km";return i?"Miles Per Gallon":"miles per gallon"}},getVehicleDealer=(e,t,i)=>{let r=null==i?void 0:i.find(t=>t.id===(null==e?void 0:e.dealer_id));return r||t},getSrpCtaCount=e=>{let t=0;return(null==e?void 0:e.cta_enabled)&&t++,(null==e?void 0:e.cta2_enabled)&&t++,(null==e?void 0:e.cta3_enabled)&&t++,(null==e?void 0:e.cta4_enabled)&&t++,t},getVehicleCardHeights=(e,t,i,r,o,a,n)=>{if(null==i?void 0:i.carshop_enabled)return{top:136,prices:74};let l=(null==r?void 0:r.length)?110:86,c=(null==t?void 0:t.pricing_labels)?56:42;(null==r?void 0:r.length)||(c+=12),((null==i?void 0:i.hide_price)||(null==i?void 0:i.detailed_pricing_enabled))&&(c=0);let s=(null==i?void 0:i.show_description)?69:0,_=(null==i?void 0:i.show_description)?12:0,d=getSrpCtaCount(i),u=getDetailedPricingHeights(e,i,o,a,n),m=(null==i?void 0:i.detailed_pricing_enabled)?40:0;return{infoCtn:l,priceBadges:c,description:s,descriptionMargin:_,ctaCtn:d?d>1?112:56:0,savingsHeight:m,...u}},getDetailedPricingHeights=(e,t,i,r,a)=>{var n;let l=(0,o.$r)(e,r),c=(null==a?void 0:a.lease_pricing_enabled)&&(null==e?void 0:e.car_condition)==="New"&&!!(null==e?void 0:e.lease_payment),s=(null==i?void 0:i.showPriceBeforeDocFees)?39:0;if(!(null==t?void 0:t.detailed_pricing_enabled))return{defaultHeight:0};if(0>=((null==i?void 0:i.displayPrice)||0)&&!((null==e?void 0:e.car_condition)==="New"&&(null==a?void 0:a.show_msrp_without_price)))return{callForPriceHeight:66};let _=(null==i?void 0:i.startingPrice)&&(null==i?void 0:i.showStartingPrice)?39:0;(null==i?void 0:i.startingPrice)&&0>=((null==i?void 0:i.displayPrice)||0)&&(_-=4);let d=(null==i?void 0:i.displayPrice)?35:0,u=0;(null==i?void 0:null===(n=i.cashPrograms)||void 0===n?void 0:n.length)&&(u+=20.5*i.cashPrograms.length),(null==i?void 0:i.genericRebate)&&(u+=20.5),(null==i?void 0:i.marketAdjustment)&&(i.displayPrice||0)>0&&(u+=20.5),(null==e?void 0:e.equipment_price)&&(u+=20.5),(null==i?void 0:i.docFeeResult.showFee)&&(u+=20.5),(null==i?void 0:i.docFeeResult.showFee2)&&(u+=20.5);let m={cardPadding:24,containerPadding:12,toggleHeight:l||c?51.2:0,startingPriceHeight:_,totalPriceHeight:d,totalLineItemHeight:u,priceBeforeDocFeesHeight:s};return m},getCarshopSortDealers=e=>{switch(e){case"production":return[429];case"test":return[26];case"baja":return[];default:return[3]}},createAlgoliaIndices=(e,t)=>{let i={};return["price_desc","price_asc","make_year_desc","make_year_asc","age_asc","odometer_desc","odometer_asc","savings_desc","savings_asc","image_count_desc","image_count_asc","make_desc","make_asc"].forEach(r=>{i[r]=null==e?void 0:e.initIndex(algoliaIndexName(t,r))}),i},algoliaIndexName=(e,t)=>"".concat(e,"global_").concat(t)}}]);